equal
deleted
inserted
replaced
429 return result; |
429 return result; |
430 } |
430 } |
431 } |
431 } |
432 |
432 |
433 //============= higher level AJAX functions using remote calls ===============// |
433 //============= higher level AJAX functions using remote calls ===============// |
|
434 |
|
435 var _i18ncache = {}; |
|
436 |
434 /** |
437 /** |
435 * .. function:: _(message) |
438 * .. function:: _(message) |
436 * |
439 * |
437 * emulation of gettext's _ shortcut |
440 * emulation of gettext's _ shortcut |
438 */ |
441 */ |
439 function _(message) { |
442 function _(message) { |
440 return loadRemote(AJAX_BASE_URL, ajaxFuncArgs('i18n', null, [message]), 'GET', true)[0]; |
443 var form; |
|
444 if (!(message in _i18ncache)) { |
|
445 form = ajaxFuncArgs('i18n', null, [message]); |
|
446 _i18ncache[message] = loadRemote(AJAX_BASE_URL, form, 'GET', true)[0]; |
|
447 } |
|
448 return _i18ncache[message]; |
441 } |
449 } |
442 |
450 |
443 /** |
451 /** |
444 * .. function:: _loadDynamicFragments(node) |
452 * .. function:: _loadDynamicFragments(node) |
445 * |
453 * |