Skip to content

Commit

Permalink
removing useless function wrapper
Browse files Browse the repository at this point in the history
  • Loading branch information
anutron committed Aug 14, 2012
1 parent 71b3d02 commit 043dd19
Showing 1 changed file with 60 additions and 66 deletions.
126 changes: 60 additions & 66 deletions Source/Delegators/Delegator.Ajax.js
Original file line number Original file line Diff line number Diff line change
Expand Up @@ -8,75 +8,69 @@ name: Delegator.Ajax
... ...
*/ */


(function(){ Delegator.register('click', 'Ajax', {

require: ['target'],
Delegator.register('click', 'Ajax', { defaults: {
require: ['target'], action: 'injectBottom'
defaults: { },
action: 'injectBottom' handler: function(event, link, api){
}, var target,
handler: function(event, link, api){ action = api.get('action'),
var target, selector = api.get('target');
action = api.get('action'), if (selector) {
selector = api.get('target'); if (selector == "self") {
if (selector) { target = link;
if (selector == "self") { } else {
target = link; target = link.getElement(selector);
} else {
target = link.getElement(selector);
}
} }
}


if (!target) api.fail('ajax trigger error: element matching selector %s was not found', selector); if (!target) api.fail('ajax trigger error: element matching selector %s was not found', selector);


var requestTarget = new Element('div'); var requestTarget = new Element('div');


var spinnerTarget = api.get('spinner-target'); var spinnerTarget = api.get('spinner-target');
if (spinnerTarget) spinnerTarget = link.getElement(spinnerTarget); if (spinnerTarget) spinnerTarget = link.getElement(spinnerTarget);


event.preventDefault(); event.preventDefault();
new Request.HTML( new Request.HTML(
Object.cleanValues({ Object.cleanValues({
method: 'get', method: 'get',
evalScripts: api.get('evalScripts'), evalScripts: api.get('evalScripts'),
url: api.get('href') || link.get('href'), url: api.get('href') || link.get('href'),
spinnerTarget: spinnerTarget || target, spinnerTarget: spinnerTarget || target,
useSpinner: api.getAs(Boolean, 'useSpinner'), useSpinner: api.getAs(Boolean, 'useSpinner'),
update: requestTarget, update: requestTarget,
onSuccess: function(){ onSuccess: function(){
//reverse the elements and inject them //reverse the elements and inject them
//reversal is required since it injects each after the target //reversal is required since it injects each after the target
//pushing down the previously added element //pushing down the previously added element
var elements = requestTarget.getChildren(); var elements = requestTarget.getChildren();
if (api.get('filter')){ if (api.get('filter')){
elements = new Element('div').adopt(elements).getElements(api.get('filter')); elements = new Element('div').adopt(elements).getElements(api.get('filter'));
}
switch(action){
case 'replace':
var container = target.getParent();
elements.reverse().injectAfter(target);
api.fireEvent('destroyDom', target);
target.destroy();
api.fireEvent('ammendDom', [container, elements]);
break;
case 'update':
api.fireEvent('destroyDom', target.getChildren());
target.empty();
elements.inject(target);
api.fireEvent('ammendDom', [target, elements]);
break;
default:
//injectTop, injectBottom, injectBefore, injectAfter
if (action == "injectTop" || action == "injectAfter") elements.reverse();
elements[action](target);
api.fireEvent('ammendDom', [target, elements]);
}
} }
}) switch(action){
).send(); case 'replace':
} var container = target.getParent();
}); elements.reverse().injectAfter(target);

api.fireEvent('destroyDom', target);
})(); target.destroy();

api.fireEvent('ammendDom', [container, elements]);

break;
case 'update':
api.fireEvent('destroyDom', target.getChildren());
target.empty();
elements.inject(target);
api.fireEvent('ammendDom', [target, elements]);
break;
default:
//injectTop, injectBottom, injectBefore, injectAfter
if (action == "injectTop" || action == "injectAfter") elements.reverse();
elements[action](target);
api.fireEvent('ammendDom', [target, elements]);
}
}
})
).send();
}
});

0 comments on commit 043dd19

Please sign in to comment.