mirror of
https://github.com/phpbb/phpbb.git
synced 2025-06-07 20:08:53 +00:00
[ticket/10271] Started using .call for javascript callbacks.
Previously, they were just being called by appending parentheses and functions. Now, they're being called and the element is being set as the context instead of a parameter. It's a lot cleaner. PHPBB3-10271
This commit is contained in:
parent
e0d6814772
commit
03d4ae20d1
3 changed files with 25 additions and 26 deletions
|
@ -7,8 +7,8 @@
|
|||
* a forum is moved up. It moves the row up or down, and deactivates /
|
||||
* activates any up / down icons that require it (the ones at the top or bottom).
|
||||
*/
|
||||
phpbb.add_ajax_callback('forum_down', function(el) {
|
||||
el = $(el);
|
||||
phpbb.add_ajax_callback('forum_down', function() {
|
||||
el = $(this);
|
||||
var tr = el.parents('tr');
|
||||
if (tr.is(':first-child'))
|
||||
{
|
||||
|
@ -23,8 +23,8 @@ phpbb.add_ajax_callback('forum_down', function(el) {
|
|||
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');
|
||||
}
|
||||
}).add_ajax_callback('forum_up', function(el) {
|
||||
el = $(el);
|
||||
}).add_ajax_callback('forum_up', function() {
|
||||
el = $(this);
|
||||
var tr = el.parents('tr');
|
||||
if (tr.is(':last-child'))
|
||||
{
|
||||
|
@ -46,8 +46,8 @@ phpbb.add_ajax_callback('forum_down', function(el) {
|
|||
* It does this by replacing the text, and replacing all instances of "activate"
|
||||
* in the href with "deactivate", and vice versa.
|
||||
*/
|
||||
phpbb.add_ajax_callback('act_deact', function(el, res) {
|
||||
el = $(el);
|
||||
phpbb.add_ajax_callback('act_deact', function(res) {
|
||||
el = $(this);
|
||||
el.text(res.text);
|
||||
var new_href = el.attr('href');
|
||||
if (new_href.indexOf('deactivate') !== -1)
|
||||
|
@ -65,9 +65,8 @@ phpbb.add_ajax_callback('act_deact', function(el, res) {
|
|||
* The removes the parent row of the link or form that triggered the callback,
|
||||
* and is good for stuff like the removal of forums.
|
||||
*/
|
||||
phpbb.add_ajax_callback('row_delete', function(el) {
|
||||
var tr = $(el).parents('tr');
|
||||
tr.remove();
|
||||
phpbb.add_ajax_callback('row_delete', function() {
|
||||
$(this).parents('tr').remove();
|
||||
});
|
||||
|
||||
|
||||
|
|
|
@ -265,7 +265,7 @@ phpbb.ajaxify = function(options, refresh, callback) {
|
|||
|
||||
if (typeof phpbb.ajax_callbacks[callback] === 'function')
|
||||
{
|
||||
phpbb.ajax_callbacks[callback](that, res, (is_form) ? act : null);
|
||||
phpbb.ajax_callbacks[callback].call(that, res, (is_form) ? act : null);
|
||||
}
|
||||
|
||||
if (res.REFRESH_DATA)
|
||||
|
@ -322,7 +322,7 @@ phpbb.ajaxify = function(options, refresh, callback) {
|
|||
data += '&' + this.name + '=' + this.value;
|
||||
}
|
||||
|
||||
if (run_exception && options.exception($this.parents('form'), action, data))
|
||||
if (run_exception && options.exception.call($this.parents('form')[0], action, data))
|
||||
{
|
||||
return true;
|
||||
}
|
||||
|
@ -331,7 +331,7 @@ phpbb.ajaxify = function(options, refresh, callback) {
|
|||
}
|
||||
else
|
||||
{
|
||||
if (run_exception && options.exception($this))
|
||||
if (run_exception && options.exception.call(this))
|
||||
{
|
||||
return true;
|
||||
}
|
||||
|
|
|
@ -2,38 +2,38 @@
|
|||
|
||||
|
||||
//This callback finds the post from the delete link, and removes it.
|
||||
phpbb.add_ajax_callback('post_delete', function(el) {
|
||||
if ($(this).data('refresh') === undefined)
|
||||
phpbb.add_ajax_callback('post_delete', function() {
|
||||
var el = $(this);
|
||||
if (el.data('refresh') === undefined)
|
||||
{
|
||||
var pid = el.href.split('&p=')[1];
|
||||
$(el).parents('div #p' + pid).fadeOut(function() {
|
||||
var pid = el[0].href.split('&p=')[1];
|
||||
el.parents('div #p' + pid).fadeOut(function() {
|
||||
$(this).remove();
|
||||
});
|
||||
}
|
||||
});
|
||||
|
||||
// This callback removes the approve / disapprove div or link.
|
||||
phpbb.add_ajax_callback('post_approve', function(el, res, act) {
|
||||
$(el).parents((act === 'approve') ? '.rules' : '.post').fadeOut(function() {
|
||||
phpbb.add_ajax_callback('post_approve', function(res, act) {
|
||||
$(this).parents((act === 'approve') ? '.rules' : '.post').fadeOut(function() {
|
||||
$(this).remove();
|
||||
});
|
||||
});
|
||||
|
||||
// This callback handles the removal of the quick reply form.
|
||||
phpbb.add_ajax_callback('qr-submit', function(el) {
|
||||
$(el).parents('form').fadeOut(function() {
|
||||
phpbb.add_ajax_callback('qr-submit', function() {
|
||||
$(this).parents('form').fadeOut(function() {
|
||||
$(this).remove();
|
||||
});
|
||||
});
|
||||
|
||||
// This removes the parent row of the link or form that fired the callback.
|
||||
phpbb.add_ajax_callback('row_delete', function(el) {
|
||||
var tr = $(el).parents('tr');
|
||||
tr.remove();
|
||||
phpbb.add_ajax_callback('row_delete', function() {
|
||||
$(this).parents('tr').remove();
|
||||
});
|
||||
|
||||
// This handles friend / foe additions removals.
|
||||
phpbb.add_ajax_callback('zebra', function(el, res) {
|
||||
phpbb.add_ajax_callback('zebra', function(res) {
|
||||
if (res.success) {
|
||||
var zebra = $('.zebra');
|
||||
zebra.html(res.MESSAGE_TEXT);
|
||||
|
@ -61,11 +61,11 @@ $('[data-ajax]').each(function() {
|
|||
*/
|
||||
phpbb.ajaxify({
|
||||
selector: '#quickmodform',
|
||||
exception: function(el, act, data) {
|
||||
exception: function(act, data) {
|
||||
var action = phpbb.parse_querystring(data).action;
|
||||
if (action === 'make_normal')
|
||||
{
|
||||
return !(el.find('select option[value="make_global"]').length);
|
||||
return !($(this).find('select option[value="make_global"]').length);
|
||||
}
|
||||
else if (action.slice(-4) === 'lock')
|
||||
{
|
||||
|
|
Loading…
Add table
Reference in a new issue