[ticket/10271] Reduced calls to $ in the AJAX JavaScript.

PHPBB3-10271
This commit is contained in:
Callum Macrae 2011-10-22 16:31:52 +01:00 committed by Igor Wiedler
parent 1c5b1ede1c
commit 95659ba92c
3 changed files with 27 additions and 20 deletions

View file

@ -8,32 +8,34 @@
* activates any up / down icons that require it (the ones at the top or bottom). * activates any up / down icons that require it (the ones at the top or bottom).
*/ */
phpbb.add_ajax_callback('forum_down', function(el) { phpbb.add_ajax_callback('forum_down', function(el) {
var tr = $(el).parents('tr'); el = $(el);
var tr = el.parents('tr');
if (tr.is(':first-child')) if (tr.is(':first-child'))
{ {
$(el).parents('span').siblings('.up').html('<a href="' + tr.data('up') + '"><img src="./images/icon_up.gif" alt="Move up" title="Move up" /></a>'); el.parents('span').siblings('.up').html('<a href="' + tr.data('up') + '"><img src="./images/icon_up.gif" alt="Move up" title="Move up" /></a>');
tr.next().find('.up').html('<img src="./images/icon_up_disabled.gif" alt="Move up" title="Move up" />'); tr.next().find('.up').html('<img src="./images/icon_up_disabled.gif" alt="Move up" title="Move up" />');
phpbb.ajaxify({selector: $(el).parents('span').siblings('.up').children('a')}, false, 'forum_up'); phpbb.ajaxify({selector: el.parents('span').siblings('.up').children('a')}, false, 'forum_up');
} }
tr.insertAfter(tr.next()); tr.insertAfter(tr.next());
if (tr.is(':last-child')) if (tr.is(':last-child'))
{ {
$(el).html('<img src="./images/icon_down_disabled.gif" alt="Move down" title="Move down" />'); el.html('<img src="./images/icon_down_disabled.gif" alt="Move down" title="Move down" />');
tr.prev().find('.down').html('<a href="' + tr.data('down') + '"><img src="./images/icon_down.gif" alt="Move down" title="Move down" /></a>'); tr.prev().find('.down').html('<a href="' + tr.data('down') + '"><img src="./images/icon_down.gif" alt="Move down" title="Move down" /></a>');
phpbb.ajaxify({selector: tr.prev().find('.down').children('a')}, false, 'forum_down'); phpbb.ajaxify({selector: tr.prev().find('.down').children('a')}, false, 'forum_down');
} }
}).add_ajax_callback('forum_up', function(el) { }).add_ajax_callback('forum_up', function(el) {
var tr = $(el).parents('tr'); el = $(el);
var tr = el.parents('tr');
if (tr.is(':last-child')) if (tr.is(':last-child'))
{ {
$(el).parents('span').siblings('.down').html('<a href="' + tr.data('down') + '"><img src="./images/icon_down.gif" alt="Move down" title="Move down" /></a>'); el.parents('span').siblings('.down').html('<a href="' + tr.data('down') + '"><img src="./images/icon_down.gif" alt="Move down" title="Move down" /></a>');
tr.prev().find('.down').html('<img src="./images/icon_down_disabled.gif" alt="Move down" title="Move down" />'); tr.prev().find('.down').html('<img src="./images/icon_down_disabled.gif" alt="Move down" title="Move down" />');
phpbb.ajaxify({selector: $(el).parents('span').siblings('.down').children('a')}, false, 'forum_down'); phpbb.ajaxify({selector: el.parents('span').siblings('.down').children('a')}, false, 'forum_down');
} }
tr.insertBefore(tr.prev()); tr.insertBefore(tr.prev());
if (tr.is(':first-child')) if (tr.is(':first-child'))
{ {
$(el).html('<img src="./images/icon_up_disabled.gif" alt="Move up" title="Move up" />'); el.html('<img src="./images/icon_up_disabled.gif" alt="Move up" title="Move up" />');
tr.next().find('.up').html('<a href="' + tr.data('up') + '"><img src="./images/icon_up.gif" alt="Move up" title="Move up" /></a>'); tr.next().find('.up').html('<a href="' + tr.data('up') + '"><img src="./images/icon_up.gif" alt="Move up" title="Move up" /></a>');
phpbb.ajaxify({selector: tr.next().find('.up').children('a')}, false, 'forum_up'); phpbb.ajaxify({selector: tr.next().find('.up').children('a')}, false, 'forum_up');
} }
@ -45,8 +47,9 @@ phpbb.add_ajax_callback('forum_down', function(el) {
* in the href with "deactivate", and vice versa. * in the href with "deactivate", and vice versa.
*/ */
phpbb.add_ajax_callback('act_deact', function(el, res) { phpbb.add_ajax_callback('act_deact', function(el, res) {
$(el).text(res.text); el = $(el);
var new_href = $(el).attr('href'); el.text(res.text);
var new_href = el.attr('href');
if (new_href.indexOf('deactivate') !== -1) if (new_href.indexOf('deactivate') !== -1)
{ {
new_href = new_href.replace('deactivate', 'activate') new_href = new_href.replace('deactivate', 'activate')
@ -55,7 +58,7 @@ phpbb.add_ajax_callback('act_deact', function(el, res) {
{ {
new_href = new_href.replace('activate', 'deactivate') new_href = new_href.replace('activate', 'deactivate')
} }
$(el).attr('href', new_href); el.attr('href', new_href);
}); });
/** /**
@ -70,8 +73,9 @@ phpbb.add_ajax_callback('row_delete', function(el) {
$('[data-ajax]').each(function() { $('[data-ajax]').each(function() {
var fn = ($(this).data('ajax') !== 'true') ? $(this).data('ajax') : null; var $this = $(this);
phpbb.ajaxify({selector: this}, $(this).data('refresh') !== undefined, fn); var fn = ($this.data('ajax') !== 'true') ? $this.data('ajax') : null;
phpbb.ajaxify({selector: this}, $this.data('refresh') !== undefined, fn);
}); });

View file

@ -359,9 +359,10 @@ phpbb.add_ajax_callback = function(id, callback)
* current text so that the process can be repeated. * current text so that the process can be repeated.
*/ */
phpbb.add_ajax_callback('alt_text', function(el) { phpbb.add_ajax_callback('alt_text', function(el) {
var alt_text = $(el).data('alt-text'); el = $(el);
$(el).data('alt-text', $(el).text()); var alt_text = el.data('alt-text');
$(el).text(el.title = alt_text); el.data('alt-text', el.text());
el.text(el[0].title = alt_text);
}); });

View file

@ -35,16 +35,18 @@ phpbb.add_ajax_callback('row_delete', function(el) {
// This handles friend / foe additions removals. // This handles friend / foe additions removals.
phpbb.add_ajax_callback('zebra', function(el, res) { phpbb.add_ajax_callback('zebra', function(el, res) {
if (res.success) { if (res.success) {
$('.zebra').html(res.MESSAGE_TEXT); var zebra = $('.zebra');
$($('.zebra').get(1)).remove(); zebra.html(res.MESSAGE_TEXT);
$(zebra.get(1)).remove();
} }
});; });;
$('[data-ajax]').each(function() { $('[data-ajax]').each(function() {
var fn = ($(this).data('ajax') !== 'true') ? $(this).data('ajax') : null; var $this = $(this);
phpbb.ajaxify({selector: this}, $(this).data('refresh') !== undefined, fn); var fn = ($this.data('ajax') !== 'true') ? $this.data('ajax') : null;
phpbb.ajaxify({selector: this}, $this.data('refresh') !== undefined, fn);
}); });