Skip to content
Extraits de code Groupes Projets
Valider fd18ea20 rédigé par sgiehl's avatar sgiehl
Parcourir les fichiers

fixes #4151 removed _js hack

parent aa6bef27
Aucune branche associée trouvée
Aucune étiquette associée trouvée
Aucune requête de fusion associée trouvée
...@@ -163,10 +163,6 @@ class Translate ...@@ -163,10 +163,6 @@ class Translate
{ {
$translations = &$GLOBALS['Piwik_translations']; $translations = &$GLOBALS['Piwik_translations'];
// Hack: common translations used in JS but not only, force them to be defined in JS
$translations['General']['Save_js'] = $translations['General']['Save'];
$translations['General']['OrCancel_js'] = $translations['General']['OrCancel'];
$clientSideTranslations = array(); $clientSideTranslations = array();
foreach ($this->getClientSideTranslationKeys() as $key) { foreach ($this->getClientSideTranslationKeys() as $key) {
list($plugin, $stringName) = explode("_", $key, 2); list($plugin, $stringName) = explode("_", $key, 2);
...@@ -178,7 +174,7 @@ class Translate ...@@ -178,7 +174,7 @@ class Translate
'for(var i in translations) { piwik_translations[i] = translations[i];} '; 'for(var i in translations) { piwik_translations[i] = translations[i];} ';
$js .= 'function _pk_translate(translationStringId) { ' . $js .= 'function _pk_translate(translationStringId) { ' .
'if( typeof(piwik_translations[translationStringId]) != \'undefined\' ){ return piwik_translations[translationStringId]; }' . 'if( typeof(piwik_translations[translationStringId]) != \'undefined\' ){ return piwik_translations[translationStringId]; }' .
'return "The string "+translationStringId+" was not loaded in javascript. Make sure it is suffixed with _js.";}'; 'return "The string "+translationStringId+" was not loaded in javascript. Make sure it is added in the Translate.getClientSideTranslationKeys hook.";}';
return $js; return $js;
} }
...@@ -194,15 +190,7 @@ class Translate ...@@ -194,15 +190,7 @@ class Translate
Piwik_PostEvent(self::GET_CLIENT_SIDE_TRANSLATION_KEYS_EVENT, array(&$result)); Piwik_PostEvent(self::GET_CLIENT_SIDE_TRANSLATION_KEYS_EVENT, array(&$result));
$translations = $GLOBALS['Piwik_translations']; $result = array_unique($result);
foreach ($translations as $module => $keys) {
foreach($keys as $key => $value) {
// Find keys ending with _js
if (preg_match($moduleRegex, $key)) {
$result[] = $module . '_' . $key;
}
}
}
return $result; return $result;
} }
......
...@@ -123,8 +123,7 @@ class Controller extends \Piwik\Controller ...@@ -123,8 +123,7 @@ class Controller extends \Piwik\Controller
$out .= '<h3>i18n internationalization</h3>'; $out .= '<h3>i18n internationalization</h3>';
$out .= 'In order to translate strings within Javascript code, you can use the javascript function _pk_translate( token );. $out .= 'In order to translate strings within Javascript code, you can use the javascript function _pk_translate( token );.
<ul><li>The "token" parameter is the string unique key found in the translation file. For this token string to be available in Javascript, you must <ul><li>The "token" parameter is the string unique key found in the translation file. For this token string to be available in Javascript, you must
suffix your token by "_js" in the language file. For example, you can add <code>\'Goals_AddGoal_js\' => \'Add Goal\',</code> in the lang/en.php file</li> load it using the Translate.getClientSideTranslationKeys hook.
<li>You can then print this string from your JS code by doing <code>_pk_translate(\'Goals_AddGoal_js\');</code>.
</li></ul>'; </li></ul>';
$out .= '<h3>Reload a widget in the dashboard</h3>'; $out .= '<h3>Reload a widget in the dashboard</h3>';
......
...@@ -210,6 +210,8 @@ class SitesManager extends \Piwik\Plugin ...@@ -210,6 +210,8 @@ class SitesManager extends \Piwik\Plugin
public function getClientSideTranslationKeys(&$translationKeys) public function getClientSideTranslationKeys(&$translationKeys)
{ {
$translationKeys[] = "General_Save";
$translationKeys[] = "General_OrCancel";
$translationKeys[] = "SitesManager_OnlyOneSiteAtTime"; $translationKeys[] = "SitesManager_OnlyOneSiteAtTime";
$translationKeys[] = "SitesManager_DeleteConfirm"; $translationKeys[] = "SitesManager_DeleteConfirm";
} }
......
...@@ -166,7 +166,7 @@ function SitesManager(_timezones, _currencies, _defaultTimezone, _defaultCurrenc ...@@ -166,7 +166,7 @@ function SitesManager(_timezones, _currencies, _defaultTimezone, _defaultCurrenc
var numberOfRows = $('table#editSites')[0].rows.length; var numberOfRows = $('table#editSites')[0].rows.length;
var newRowId = 'rowNew' + numberOfRows; var newRowId = 'rowNew' + numberOfRows;
var submitButtonHtml = '<input type="submit" class="addsite submit" value="' + _pk_translate('General_Save_js') + '" />'; var submitButtonHtml = '<input type="submit" class="addsite submit" value="' + _pk_translate('General_Save') + '" />';
$($.parseHTML(' <tr id="' + newRowId + '">\ $($.parseHTML(' <tr id="' + newRowId + '">\
<td>&nbsp;</td>\ <td>&nbsp;</td>\
<td><input id="name" value="Name" size="15" /><br/><br/><br/>' + submitButtonHtml + '</td>\ <td><input id="name" value="Name" size="15" /><br/><br/><br/>' + submitButtonHtml + '</td>\
...@@ -179,7 +179,7 @@ function SitesManager(_timezones, _currencies, _defaultTimezone, _defaultCurrenc ...@@ -179,7 +179,7 @@ function SitesManager(_timezones, _currencies, _defaultTimezone, _defaultCurrenc
<td>' + getCurrencySelector(defaultCurrency) + '<br />' + currencyHelp + '</td>\ <td>' + getCurrencySelector(defaultCurrency) + '<br />' + currencyHelp + '</td>\
<td>' + getEcommerceSelector(0) + '<br />' + ecommerceHelp + '</td>\ <td>' + getEcommerceSelector(0) + '<br />' + ecommerceHelp + '</td>\
<td>' + submitButtonHtml + '</td>\ <td>' + submitButtonHtml + '</td>\
<td><span class="cancel link_but">' + sprintf(_pk_translate('General_OrCancel_js'), "", "") + '</span></td>\ <td><span class="cancel link_but">' + sprintf(_pk_translate('General_OrCancel'), "", "") + '</span></td>\
</tr>')) </tr>'))
.appendTo('#editSites') .appendTo('#editSites')
; ;
...@@ -237,9 +237,9 @@ function SitesManager(_timezones, _currencies, _defaultTimezone, _defaultCurrenc ...@@ -237,9 +237,9 @@ function SitesManager(_timezones, _currencies, _defaultTimezone, _defaultCurrenc
siteBeingEditedName = contentBefore; siteBeingEditedName = contentBefore;
var contentAfter = '<input id="' + idName + '" value="' + contentBefore + '" size="15" />'; var contentAfter = '<input id="' + idName + '" value="' + contentBefore + '" size="15" />';
var inputSave = $('<br/><input style="margin-top:50px" type="submit" class="submit" value="' + _pk_translate('General_Save_js') + '" />') var inputSave = $('<br/><input style="margin-top:50px" type="submit" class="submit" value="' + _pk_translate('General_Save') + '" />')
.click(function () { submitUpdateSite($(this).parent()); }); .click(function () { submitUpdateSite($(this).parent()); });
var spanCancel = $('<div><br/>' + sprintf(_pk_translate('General_OrCancel_js'), "", "") + '</div>') var spanCancel = $('<div><br/>' + sprintf(_pk_translate('General_OrCancel'), "", "") + '</div>')
.click(function () { piwikHelper.refreshAfter(0); }); .click(function () { piwikHelper.refreshAfter(0); });
$(n) $(n)
.html(contentAfter) .html(contentAfter)
...@@ -293,7 +293,7 @@ function SitesManager(_timezones, _currencies, _defaultTimezone, _defaultCurrenc ...@@ -293,7 +293,7 @@ function SitesManager(_timezones, _currencies, _defaultTimezone, _defaultCurrenc
$(this) $(this)
.toggle() .toggle()
.parent() .parent()
.prepend($('<input type="submit" class="updateSite submit" value="' + _pk_translate('General_Save_js') + '" />') .prepend($('<input type="submit" class="updateSite submit" value="' + _pk_translate('General_Save') + '" />')
.click(function () { sendUpdateSiteAJAX($('tr#' + idRow)); }) .click(function () { sendUpdateSiteAJAX($('tr#' + idRow)); })
); );
}); });
......
...@@ -137,6 +137,8 @@ class UsersManager extends \Piwik\Plugin ...@@ -137,6 +137,8 @@ class UsersManager extends \Piwik\Plugin
public function getClientSideTranslationKeys(&$translationKeys) public function getClientSideTranslationKeys(&$translationKeys)
{ {
$translationKeys[] = "General_OrCancel";
$translationKeys[] = "General_Save";
$translationKeys[] = "UsersManager_DeleteConfirm"; $translationKeys[] = "UsersManager_DeleteConfirm";
} }
} }
...@@ -171,7 +171,7 @@ $(document).ready(function () { ...@@ -171,7 +171,7 @@ $(document).ready(function () {
$(this) $(this)
.toggle() .toggle()
.parent() .parent()
.prepend($('<input type="submit" class="submit updateuser" value="' + _pk_translate('General_Save_js') + '" />') .prepend($('<input type="submit" class="submit updateuser" value="' + _pk_translate('General_Save') + '" />')
.click(function () { .click(function () {
var onValidate = function () { var onValidate = function () {
sendUpdateUserAJAX($('tr#' + idRow)); sendUpdateUserAJAX($('tr#' + idRow));
...@@ -215,8 +215,8 @@ $(document).ready(function () { ...@@ -215,8 +215,8 @@ $(document).ready(function () {
<td><input id="useradd_email" value="email@domain.com" size="15" /></td>\ <td><input id="useradd_email" value="email@domain.com" size="15" /></td>\
<td><input id="useradd_alias" value="alias" size="15" /></td>\ <td><input id="useradd_alias" value="alias" size="15" /></td>\
<td>-</td>\ <td>-</td>\
<td><input type="submit" class="submit adduser" value="' + _pk_translate('General_Save_js') + '" /></td>\ <td><input type="submit" class="submit adduser" value="' + _pk_translate('General_Save') + '" /></td>\
<td><span class="cancel">' + sprintf(_pk_translate('General_OrCancel_js'), "", "") + '</span></td>\ <td><span class="cancel">' + sprintf(_pk_translate('General_OrCancel'), "", "") + '</span></td>\
</tr>')) </tr>'))
.appendTo('#users') .appendTo('#users')
; ;
......
0% Chargement en cours ou .
You are about to add 0 people to the discussion. Proceed with caution.
Terminez d'abord l'édition de ce message.
Veuillez vous inscrire ou vous pour commenter