diff --git a/fields/vmordernumbercounters.php b/fields/vmordernumbercounters.php index 2c1dbf1c5ce58349fe25644e98d38e059626d808..bec25186d6870737c0472f2af6f67a8198864e5f 100644 --- a/fields/vmordernumbercounters.php +++ b/fields/vmordernumbercounters.php @@ -60,13 +60,21 @@ class JFormFieldVmOrdernumberCounters extends JFormField { } protected function makeJSTranslationsAvailable() { - JText::script('PLG_ORDERNUMBER_COUNTER_QUERY_NAME'); + JText::script('PLG_ORDERNUMBER_JS_NOT_AUTHORIZED'); + JText::script('PLG_ORDERNUMBER_JS_NEWCOUNTER'); + JText::script('PLG_ORDERNUMBER_JS_EDITCOUNTER'); + JText::script('PLG_ORDERNUMBER_JS_INVALID_COUNTERVALUE'); + JText::script('PLG_ORDERNUMBER_JS_MODIFY_FAILED'); + JText::script('PLG_ORDERNUMBER_JS_DELETECOUNTER'); + JText::script('PLG_ORDERNUMBER_JS_DELETE_FAILED'); + JText::script('PLG_ORDERNUMBER_JS_ADD_FAILED'); } protected function getInput() { $pluginpath = '/plugins/vmshopper/ordernumber/ordernumber/'; $doc = JFactory::getDocument()->addStyleSheet(JURI::root(true) . $pluginpath . 'assets/css/ordernumber.css'); $doc->addScript(JURI::root(true).$pluginpath . 'assets/js/ordernumber.js'); vmJsApi::jQuery(); + $this->makeJSTranslationsAvailable(); // Look up the current counters $db = JFactory::getDBO(); diff --git a/language/en-GB/en-GB.plg_vmshopper_ordernumber.ini b/language/en-GB/en-GB.plg_vmshopper_ordernumber.ini index b4218138eb9b4d81d3fc896bbcb312493d0c0f89..0eb4e45ed3016518681501c3a30af30515dcb509 100644 --- a/language/en-GB/en-GB.plg_vmshopper_ordernumber.ini +++ b/language/en-GB/en-GB.plg_vmshopper_ordernumber.ini @@ -55,3 +55,14 @@ PLG_ORDERNUMBER_COUNTERLIST_EXISTS="Counter '%s' already exists." PLG_ORDERNUMBER_FIELDSET_ORDERNUMBER="Order Numbers" PLG_ORDERNUMBER_FIELDSET_INVOICENUMBER="Invoice Numbers" PLG_ORDERNUMBER_FIELDSET_CUSTOMERNUMBER="Customer Numbers" + +PLG_ORDERNUMBER_JS_NOT_AUTHORIZED="You are not authorized to modify order number counters." +PLG_ORDERNUMBER_JS_NEWCOUNTER="Please enter the format/name of the new counter:" +PLG_ORDERNUMBER_JS_DELETECOUNTER="Really delete counter '{0}' with value '{1}'?" +PLG_ORDERNUMBER_JS_EDITCOUNTER="{0}Please enter the new value for the counter '{1}' (current value: {2}):" +PLG_ORDERNUMBER_JS_INVALID_COUNTERVALUE="You entered an invalid value for the counter.\n\n" +PLG_ORDERNUMBER_JS_MODIFY_FAILED="Failed modifying counter {0}" +PLG_ORDERNUMBER_JS_DELETE_FAILED="Failed deleting counter {0}" +PLG_ORDERNUMBER_JS_ADD_FAILED="Failed adding counter {0}" + + diff --git a/language/en-GB/en-GB.plg_vmshopper_ordernumber.sys.ini b/language/en-GB/en-GB.plg_vmshopper_ordernumber.sys.ini index b4218138eb9b4d81d3fc896bbcb312493d0c0f89..0eb4e45ed3016518681501c3a30af30515dcb509 100644 --- a/language/en-GB/en-GB.plg_vmshopper_ordernumber.sys.ini +++ b/language/en-GB/en-GB.plg_vmshopper_ordernumber.sys.ini @@ -55,3 +55,14 @@ PLG_ORDERNUMBER_COUNTERLIST_EXISTS="Counter '%s' already exists." PLG_ORDERNUMBER_FIELDSET_ORDERNUMBER="Order Numbers" PLG_ORDERNUMBER_FIELDSET_INVOICENUMBER="Invoice Numbers" PLG_ORDERNUMBER_FIELDSET_CUSTOMERNUMBER="Customer Numbers" + +PLG_ORDERNUMBER_JS_NOT_AUTHORIZED="You are not authorized to modify order number counters." +PLG_ORDERNUMBER_JS_NEWCOUNTER="Please enter the format/name of the new counter:" +PLG_ORDERNUMBER_JS_DELETECOUNTER="Really delete counter '{0}' with value '{1}'?" +PLG_ORDERNUMBER_JS_EDITCOUNTER="{0}Please enter the new value for the counter '{1}' (current value: {2}):" +PLG_ORDERNUMBER_JS_INVALID_COUNTERVALUE="You entered an invalid value for the counter.\n\n" +PLG_ORDERNUMBER_JS_MODIFY_FAILED="Failed modifying counter {0}" +PLG_ORDERNUMBER_JS_DELETE_FAILED="Failed deleting counter {0}" +PLG_ORDERNUMBER_JS_ADD_FAILED="Failed adding counter {0}" + + diff --git a/ordernumber/assets/js/ordernumber.js b/ordernumber/assets/js/ordernumber.js index 7ef87b76349f7fa09c0723c0d8f7c8d07fa4798c..9ef759b15e47226fdb70c31324ede991b166b46f 100644 --- a/ordernumber/assets/js/ordernumber.js +++ b/ordernumber/assets/js/ordernumber.js @@ -13,6 +13,15 @@ var updateMessages = function(messages, area) { } newmessages.appendTo( "#system-message-container #system-message"); } +String.Format = function() { + var s = arguments[0]; + for (var i = 0; i < arguments.length - 1; i++) { + var reg = new RegExp("\\{" + i + "\\}", "gm"); + s = s.replace(reg, arguments[i + 1]); + } + return s; +} + var getCounterData = function (btn) { var row=jQuery(btn).parents("tr.counter_row"); return { row: row }; @@ -20,7 +29,7 @@ var getCounterData = function (btn) { var handleJSONResponse = function (json, counter) { updateMessages(json['messages'], "ordernumber"); if (!json.authorized) { - alert("You are not authorized to modify order number counters."); + alert(Joomla.JText._('PLG_ORDERNUMBER_JS_NOT_AUTHORIZED', "You are not authorized to modify order number counters.")); } else if (json.error) { alert(json.error); } else { @@ -35,11 +44,12 @@ var ajaxEditCounter = function (btn, nrtype, ctr, value) { var value = NaN; var msgprefix = ""; while (isNaN(value) && (value != null)) { - value = prompt (msgprefix+"Please enter the new value for the counter '" + counter.counter + "' (current value: " + counter.value + "):", counter.value); + var editprompt = Joomla.JText._('PLG_ORDERNUMBER_JS_EDITCOUNTER', "{0}Please enter the new value for the counter '{1}' (current value: {2}):"); + value = prompt (String.Format(editprompt, msgprefix, counter.counter, counter.value), counter.value); if (value != null) value = parseInt(value); if (isNaN(value)) - msgprefix = "You entered an invalid value for the counter.\n\n"; + msgprefix = Joomla.JText._('PLG_ORDERNUMBER_JS_INVALID_COUNTERVALUE', "You entered an invalid value for the counter.\n\n"); } if (value != null) { var loading = jQuery("img.vm-ordernumber-loading").first().clone().insertAfter(btn).show(); @@ -55,10 +65,10 @@ var ajaxEditCounter = function (btn, nrtype, ctr, value) { if (json.success>0) { jQuery(counter.row).children(".counter_value").text(value); } else { - alert ("Failed modifying counter "+counter.counter); + alert (String.Format(Joomla.JText._('PLG_ORDERNUMBER_JS_MODIFY_FAILED', "Failed modifying counter {0}"), counter.counter)); } }, - error: function() { alert ("ERROR: Failed modifying counter "+counter.counter); }, + error: function() { alert (String.Format(Joomla.JText._('PLG_ORDERNUMBER_JS_MODIFY_FAILED', "Failed modifying counter {0}"), counter.counter)); }, complete: function() { jQuery(loading).remove(); }, }); } @@ -68,7 +78,7 @@ var ajaxDeleteCounter = function (btn, nrtype, ctr, value) { counter.type=nrtype; counter.counter=ctr; counter.value=value; - var proceed = confirm ("Really delete counter '"+counter.counter+"' with value '"+counter.value+"'?"); + var proceed = confirm (String.Format(Joomla.JText._('PLG_ORDERNUMBER_JS_DELETECOUNTER', "Really delete counter '{0}' with value '{1}'?"), counter.counter, counter.value)); if (proceed == true) { var loading = jQuery("img.vm-ordernumber-loading").first().clone().insertAfter(btn).show(); jQuery.ajax({ @@ -83,17 +93,17 @@ var ajaxDeleteCounter = function (btn, nrtype, ctr, value) { if (json.success>0) { jQuery(counter.row).fadeOut(1500, function() { $(this).remove(); }); } else { - alert ("Failed modifying counter "+counter.counter); + alert (String.Format(Joomla.JText._('PLG_ORDERNUMBER_JS_DELETE_FAILED', "Failed deleting counter {0}"), counter.counter)); } }, - error: function() { alert ("ERROR: Failed modifying counter "+counter.counter); }, + error: function() { alert (String.Format(Joomla.JText._('PLG_ORDERNUMBER_JS_DELETE_FAILED', "Failed deleting counter {0}"), counter.counter)); }, complete: function() { jQuery(loading).remove(); }, }); } } var ajaxAddCounter = function (btn, nrtype) { var row = jQuery(btn).parents("tr.addcounter_row"); - var countername = prompt ("Please enter the format/name of the new counter:"); + var countername = prompt (Joomla.JText._('PLG_ORDERNUMBER_JS_NEWCOUNTER', "Please enter the format/name of the new counter:")); if (countername != null) { var loading = jQuery("img.vm-ordernumber-loading").first().clone().insertAfter(jQuery(btn).find("img.vmordernumber-counter-addbtn")).show(); jQuery.ajax({ @@ -109,9 +119,11 @@ var ajaxAddCounter = function (btn, nrtype) { if (json.newrow) { jQuery(row).before(jQuery(json.newrow)); } + } else { + alert (String.Format(Joomla.JText._('PLG_ORDERNUMBER_JS_ADD_FAILED', "Failed adding counter {0}"), counter.counter)); } }, - error: function() { alert ("ERROR: Failed adding counter "+countername); }, + error: function() { alert (String.Format(Joomla.JText._('PLG_ORDERNUMBER_JS_ADD_FAILED', "Failed adding counter {0}"), counter.counter)); }, complete: function() { jQuery(loading).remove(); }, }); }