Skip to content

Commit

Permalink
BUGFIX Fixed createtranslation action (broken after moving to extension)
Browse files Browse the repository at this point in the history
  • Loading branch information
chillu committed Mar 22, 2011
1 parent e40b5f9 commit 181bb07
Show file tree
Hide file tree
Showing 2 changed files with 18 additions and 30 deletions.
13 changes: 4 additions & 9 deletions code/controller/TranslatableCMSMainExtension.php
Original file line number Diff line number Diff line change
Expand Up @@ -4,16 +4,11 @@
*/
class TranslatableCMSMainExtension extends Extension {

function extraStatics() {
return array(
'allowed_actions' => array(
'createtranslation',
)
);
}
static $allowed_actions = array(
'createtranslation',
);

function init() {

// Locale" attribute is either explicitly added by LeftAndMain Javascript logic,
// or implied on a translated record (see {@link Translatable->updateCMSFields()}).
// $Lang serves as a "context" which can be inspected by Translatable - hence it
Expand Down Expand Up @@ -76,7 +71,7 @@ function createtranslation($request) {
$translatedRecord->ID,
$langCode
);

return Director::redirect($url);
}

Expand Down
35 changes: 14 additions & 21 deletions javascript/CMSMain.Translatable.js
Original file line number Diff line number Diff line change
Expand Up @@ -48,29 +48,22 @@
* Requires:
* jquery.metadata
*/
$('.CMSMain .createTranslation').entwine({
$('.CMSMain :input[name=action_createtranslation]').entwine({

/**
* Constructor: onmatch
*/
onmatch: function() {
var self = this;

this.find(':input[name=action_createtranslation]').bind('click', function(e) {
var form = self.parents('form');
// redirect to new URL
// TODO This should really be a POST request

document.location.href = $('base').attr('href') +
jQuery(self).metadata().url +
'?ID=' + form.find(':input[name=ID]').val() +
'&newlang=' + self.find(':input[name=NewTransLang]').val() +
'&locale=' + form.find(':input[name=Locale]').val();
onclick: function() {
var form = this.parents('form'), locale = form.find(':input[name=NewTransLang]').val();
var params = {
'ID': form.find(':input[name=ID]').val(),
'newlang': locale,
'locale': locale,
'SecurityID': form.find(':input[name=SecurityID]').val()
};
// redirect to new URL
// TODO This should really be a POST request
// TODO Fix hardcode URL
document.location.href = $('base').attr('href') + 'admin/createtranslation?' + $.param(params);

return false;
});

this._super();
return false;
}
});
});
Expand Down

0 comments on commit 181bb07

Please sign in to comment.