Created
June 2, 2011 16:45
-
-
Save jmazzi/1004779 to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
var SALister; | |
SALister = (function() { | |
function SALister() {} | |
SALister.prototype.loadList = function(what, o) { | |
var callParams, success, _o; | |
what = what.toLowerCase(); | |
_o = { | |
regex: null, | |
container: what + 'List', | |
pagStart: null, | |
pagSize: null, | |
confirmDelete: true, | |
deleteOptions: {}, | |
editCallback: null | |
}; | |
Object.extend(_o, o || {}); | |
Object.extend(_o.deleteOptions, { | |
onComplete: this.delListItem.bind(this) | |
}); | |
callParams = { | |
module: null, | |
func: null, | |
version: 2, | |
parameters: { | |
regex: _o.regex || null, | |
api2_paginate: _o.pagStart || (_o.pagStart === 0 ? 1 : 0), | |
api2_paginate_start: _o.pagStart || (_o.pagStart === 0 ? _o.pagStart : null), | |
api2_paginate_size: _o.pagSize || null | |
} | |
}; | |
switch (what) { | |
case 'addondomain': | |
callParams.module = 'AddonDomain'; | |
callParams.func = 'listaddondomains'; | |
break; | |
} | |
Object.extend(callParams, success = { | |
onSuccess: function(t) { | |
var list, returned; | |
returned = t.responseText.evalJSON().cpanelresult; | |
this.listData = {}; | |
switch (what) { | |
case 'addondomain': | |
this.listData[what] = returned.data; | |
} | |
list = this.listData[what].each(function(data) { | |
_o.deleteOptions = this.getDeleteParams(what, data); | |
data.element(this.buildAddonDomainItem(data, _o)); | |
return this.insertListItem(_o.container, data.element); | |
}); | |
return list.bind(this); | |
} | |
}, success.bind(this)); | |
this.callCpanel(callParams); | |
return this; | |
}; | |
return SALister; | |
})(); |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
class SALister | |
loadList: (what, o) -> | |
what = what.toLowerCase() | |
_o = | |
regex: null # regex filter | |
container: what + 'List' # id of list container | |
pagStart: null | |
pagSize: null | |
confirmDelete: true # Display delete confirmation? | |
deleteOptions: {} # Options for SA#callCpanel | |
editCallback: null | |
Object.extend _o, o || {} | |
# Remove the list item onComplete | |
Object.extend _o.deleteOptions, | |
onComplete: @delListItem.bind this | |
callParams = | |
module: null, func: null, version: 2 | |
parameters: | |
regex: _o.regex || null | |
api2_paginate: _o.pagStart || if _o.pagStart is 0 then 1 else 0 | |
api2_paginate_start: _o.pagStart || if _o.pagStart is 0 then _o.pagStart else null | |
api2_paginate_size: _o.pagSize || null | |
switch what | |
when 'addondomain' | |
callParams.module = 'AddonDomain' | |
callParams.func = 'listaddondomains' | |
break | |
Object.extend callParams, | |
success = onSuccess: (t) -> | |
returned = t.responseText.evalJSON().cpanelresult | |
@listData = {} | |
# Set up in a switch() because adjustments may be necessary | |
# depending on the list retrieved | |
switch(what) | |
when 'addondomain' | |
@listData[what] = returned.data | |
list = @listData[what].each (data) -> | |
# Get Delete params | |
_o.deleteOptions = @getDeleteParams what, data | |
# Pass _o for deleteOptions/editCallback | |
data.element @buildAddonDomainItem data, _o | |
@insertListItem _o.container, data.element | |
list.bind this | |
success.bind this | |
@callCpanel callParams | |
return this |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment