/**
* @version $Id: scriptaculous.js,v 1.21 2006/08/05 22:02:54 mikedeboer Exp $
*/
var Zoom = {
Version: '1.5_pre4',
libs: new Array(),
folded: new Array(),
connector: null,
method: 'post',
state: 'new',
treenode: null,
treeObj: null,
req_uri: window.location.protocol + "//" + window.location.host + window.location.pathname.replace(/\/(administrator\/)?index(.*)\.php$/i, '') + "/components/com_zoom/www/ajaxcallback.php",
site_uri: '',
uid: '0',
activeCat: '0',
activeSubcat: '0',
lightboxActive: false,
votingActive: false,
votingMedium: null,
require :
function(libraryName) {
// inserting via DOM fails in Safari 2.0, so brute force approach
document.write('');
},
load :
function() {
if((typeof Prototype=='undefined') ||
parseFloat(Prototype.Version.split(".")[0] + "." +
Prototype.Version.split(".")[1]) < 1.4)
throw("script.aculo.us requires the Prototype JavaScript framework >= 1.4.0");
var scriptTags = document.getElementsByTagName("script");
for(var i=0;i 0)
for (var i = 0; i < arguments.length; i++)
this.libs.push(arguments[i]);
},
checkLibraries :
function() {
var i, j, libNumber = 7, libCnt = 0;
var required = ['util', 'button', 'effects', 'dtree', 'dragdrop', 'mm', 'tjpzoom'];
for (i = 0; i < this.libs.length; i++)
for (j = 0; j < required.length; j++)
if (this.libs[i] == required[j]) libCnt++;
if (libCnt == libNumber)
return true;
return false;
},
buildMembersButtons:
function(node, src, dst) {
new Zoom.Button('members_add', '', node, {
width: 22,
height: 22,
group: 'members_actions',
classEnter: 'zmg_nav_btn_right_hover',
classLeave: 'zmg_nav_btn_right',
actionData: [src, dst],
onEnter: function(button) {
overlib('Add selected group or user to list');
},
onLeave : function(button) {
nd();
},
onLeftClick: function(button) {
Zoom.rebuildMembersList(button.getId(), button.options.actionData[0], button.options.actionData[1]);
}
});
new Zoom.Button('members_remove', '', node, {
width: 22,
height: 22,
group: 'members_actions',
classEnter: 'zmg_nav_btn_left_hover',
classLeave: 'zmg_nav_btn_left',
actionData: [src, dst],
onEnter: function(button) {
overlib('Remove selected group or user from list');
},
onLeave : function(button) {
nd();
},
onLeftClick: function(button) {
Zoom.rebuildMembersList(button.getId(), button.options.actionData[0], button.options.actionData[1]);
}
});
},
rebuildMembersList :
function(button, src, dst) {
var i;
var oSrc = $(src);
var oDst = $(dst);
if (button.indexOf('add') >= 0) {
for (i = 0; i < oSrc.childNodes.length; i++) {
if (oSrc.childNodes[i].selected && oSrc.childNodes[i].value != "0" && !this.hasOption(oDst, oSrc.childNodes[i].value)) {
oDst.appendChild(oSrc.childNodes[i].cloneNode(true));
}
}
} else {
for (i = 0; i < oDst.childNodes.length; i++) {
if (oDst.childNodes[i].selected) {
oDst.removeChild(oDst.childNodes[i]);
}
}
}
},
buildMembersList :
function(members, src, dst) {
var i, j;
if (typeof members == "string") members = members.split(',');
var oSrc = $(src);
var oDst = $(dst);
// First, clear the destination