mirror of
https://github.com/silverstripe/silverstripe-translatable
synced 2024-10-22 09:05:59 +00:00
BUGFIX Fixed createtranslation action (broken after moving to extension)
This commit is contained in:
parent
e40b5f909b
commit
181bb07f4c
@ -4,16 +4,11 @@
|
|||||||
*/
|
*/
|
||||||
class TranslatableCMSMainExtension extends Extension {
|
class TranslatableCMSMainExtension extends Extension {
|
||||||
|
|
||||||
function extraStatics() {
|
static $allowed_actions = array(
|
||||||
return array(
|
'createtranslation',
|
||||||
'allowed_actions' => array(
|
);
|
||||||
'createtranslation',
|
|
||||||
)
|
|
||||||
);
|
|
||||||
}
|
|
||||||
|
|
||||||
function init() {
|
function init() {
|
||||||
|
|
||||||
// Locale" attribute is either explicitly added by LeftAndMain Javascript logic,
|
// Locale" attribute is either explicitly added by LeftAndMain Javascript logic,
|
||||||
// or implied on a translated record (see {@link Translatable->updateCMSFields()}).
|
// or implied on a translated record (see {@link Translatable->updateCMSFields()}).
|
||||||
// $Lang serves as a "context" which can be inspected by Translatable - hence it
|
// $Lang serves as a "context" which can be inspected by Translatable - hence it
|
||||||
@ -76,7 +71,7 @@ class TranslatableCMSMainExtension extends Extension {
|
|||||||
$translatedRecord->ID,
|
$translatedRecord->ID,
|
||||||
$langCode
|
$langCode
|
||||||
);
|
);
|
||||||
|
|
||||||
return Director::redirect($url);
|
return Director::redirect($url);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -48,29 +48,22 @@
|
|||||||
* Requires:
|
* Requires:
|
||||||
* jquery.metadata
|
* jquery.metadata
|
||||||
*/
|
*/
|
||||||
$('.CMSMain .createTranslation').entwine({
|
$('.CMSMain :input[name=action_createtranslation]').entwine({
|
||||||
|
|
||||||
/**
|
onclick: function() {
|
||||||
* Constructor: onmatch
|
var form = this.parents('form'), locale = form.find(':input[name=NewTransLang]').val();
|
||||||
*/
|
var params = {
|
||||||
onmatch: function() {
|
'ID': form.find(':input[name=ID]').val(),
|
||||||
var self = this;
|
'newlang': locale,
|
||||||
|
'locale': locale,
|
||||||
this.find(':input[name=action_createtranslation]').bind('click', function(e) {
|
'SecurityID': form.find(':input[name=SecurityID]').val()
|
||||||
var form = self.parents('form');
|
};
|
||||||
// redirect to new URL
|
// redirect to new URL
|
||||||
// TODO This should really be a POST request
|
// TODO This should really be a POST request
|
||||||
|
// TODO Fix hardcode URL
|
||||||
document.location.href = $('base').attr('href') +
|
document.location.href = $('base').attr('href') + 'admin/createtranslation?' + $.param(params);
|
||||||
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();
|
|
||||||
|
|
||||||
return false;
|
return false;
|
||||||
});
|
|
||||||
|
|
||||||
this._super();
|
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
Loading…
x
Reference in New Issue
Block a user