XSP.partialRefreshGet(id1, {
onComplete: function() {
XSP.partialRefreshGet(id2, {
onComplete: function() { XSP.partialRefreshGet(id3); }
}
}
}
XSP.partialRefreshGet(id, |
onStart: function() { doSomething; },
onComplete: function() { doSomething; },
onError: function() { doSomething; }
}
function hijackAndPublishPartialRefresh(){
// Hijack the partial refresh
XSP._inheritedPartialRefresh = XSP._partialRefresh;
XSP._partialRefresh = function( method, form, refreshId, options ){
// Publish init
dojo.publish( 'partialrefresh-init', [ method, form, refreshId, options ]);
this._inheritedPartialRefresh( method, form, refreshId, options );
}
// Publish start, complete and error states
dojo.subscribe( 'partialrefresh-init', function( method, form,
refreshId, options ){
if( options ){
options.onStart = function(){
dojo.publish( 'partialrefresh-start', [method, form, refreshId, options]);
};
options.onComplete = function(){
dojo.publish( 'partialrefresh-complete',
[method, form, refreshId, options]);
};
options.onError = function(){
dojo.publish( 'partialrefresh-error', [ method, form, refreshId, options]);
};
}
});
}
dojo.subscribe( 'partialrefresh-init', null, function( method, form, refreshId ){
alert('Partial refresh for ' + refreshId + ' initiated.' );
} );
dojo.subscribe( 'partialrefresh-start', null, function( method, form, refreshId ){
alert('Partial refresh for ' + refreshId + ' started.' );
} );
dojo.subscribe( 'partialrefresh-complete', null, function( method, form, refreshId ){
alert('Partial refresh for ' + refreshId + ' complete.' );
} );
dojo.subscribe( 'partialrefresh-error', null, function( method, form, refreshId ){
alert('An error occured during partial refresh of ' + refreshId + '.' );
} );