9330d8df50
individually. The icon doesn't fit with roma theme currently. git-svn-id: http://piwigo.org/svn/branches/2.0@3009 68402e56-0260-453c-a942-63ccdbb3a9ee
194 lines
4.3 KiB
JavaScript
194 lines
4.3 KiB
JavaScript
function SelectAll( formulaire )
|
|
{
|
|
var len = formulaire.elements.length;
|
|
var i=0;
|
|
for( i = 0; i < len; i++)
|
|
{
|
|
if ( formulaire.elements[i].type=='checkbox'
|
|
&& formulaire.elements[i].name != 'copie')
|
|
{
|
|
formulaire.elements[i].checked = true;
|
|
}
|
|
}
|
|
}
|
|
|
|
function DeselectAll( formulaire )
|
|
{
|
|
var len = formulaire.elements.length;
|
|
var i=0;
|
|
for( i = 0; i < len; i++)
|
|
{
|
|
if ( formulaire.elements[i].type=='checkbox'
|
|
&& formulaire.elements[i].name != 'copie')
|
|
{
|
|
formulaire.elements[i].checked = false;
|
|
}
|
|
}
|
|
}
|
|
|
|
function Inverser( formulaire )
|
|
{
|
|
var len = formulaire.elements.length;
|
|
var i=0;
|
|
for( i=0; i<len; i++)
|
|
{
|
|
if ( formulaire.elements[i].type=='checkbox'
|
|
&& formulaire.elements[i].name != 'copie')
|
|
{
|
|
formulaire.elements[i].checked = !formulaire.elements[i].checked;
|
|
}
|
|
}
|
|
}
|
|
|
|
function phpWGOpenWindow(theURL,winName,features)
|
|
{
|
|
img = new Image();
|
|
img.src = theURL;
|
|
if (img.complete)
|
|
{
|
|
var width=img.width +40;
|
|
var height=img.height +40;
|
|
}
|
|
else
|
|
{
|
|
var width=640;
|
|
var height=480;
|
|
img.onload = resizeWindowToFit;
|
|
}
|
|
newWin = window.open(theURL,winName,features+',left=2,top=1,width=' + width + ',height=' + height);
|
|
}
|
|
|
|
function resizeWindowToFit()
|
|
{
|
|
newWin.resizeTo( img.width+50, img.height+100);
|
|
}
|
|
|
|
function popuphelp(url)
|
|
{
|
|
window.open( url, 'dc_popup',
|
|
'alwaysRaised=yes,dependent=yes,toolbar=no,height=420,width=500,menubar=no,resizable=yes,scrollbars=yes,status=no'
|
|
);
|
|
}
|
|
|
|
|
|
|
|
Function.prototype.pwgBind = function() {
|
|
var __method = this, object = arguments[0], args = new Array();
|
|
for (var i=1; i<arguments.length; i++)
|
|
args[i-1] = arguments[i];
|
|
return function() { return __method.apply(object, args); }
|
|
}
|
|
|
|
function PwgWS(urlRoot)
|
|
{
|
|
this.urlRoot = urlRoot;
|
|
this.options = {
|
|
method: "GET",
|
|
async: true,
|
|
onFailure: null,
|
|
onSuccess: null
|
|
};
|
|
};
|
|
|
|
function blockToggleDisplay(headerId, contentId)
|
|
{
|
|
var revHeader = document.getElementById(headerId);
|
|
var revContent = document.getElementById(contentId);
|
|
|
|
if (revContent.style.display == 'none')
|
|
{
|
|
revContent.style.display = 'block';
|
|
revHeader.className = 'instructionBlockHeaderExpanded';
|
|
}
|
|
else
|
|
{
|
|
revContent.style.display = 'none';
|
|
revHeader.className = 'instructionBlockHeaderCollapsed';
|
|
}
|
|
}
|
|
|
|
|
|
PwgWS.prototype = {
|
|
|
|
callService : function(method, parameters, options)
|
|
{
|
|
if (options)
|
|
{
|
|
for (var property in options)
|
|
this.options[property] = options[property];
|
|
}
|
|
try { this.transport = new XMLHttpRequest();}
|
|
catch(e) {
|
|
try { this.transport = new ActiveXObject('Msxml2.XMLHTTP'); }
|
|
catch(e) {
|
|
try { this.transport = new ActiveXObject('Microsoft.XMLHTTP'); }
|
|
catch (e){
|
|
dispatchError(0, "Cannot create request object");
|
|
}
|
|
}
|
|
}
|
|
this.transport.onreadystatechange = this.onStateChange.pwgBind(this);
|
|
|
|
var url = this.urlRoot;
|
|
url += "ws.php?format=json&method="+method;
|
|
if (parameters)
|
|
{
|
|
for (var property in parameters)
|
|
{
|
|
if ( typeof parameters[property] == 'object' && parameters[property])
|
|
{
|
|
for (var i=0; i<parameters[property].length; i++)
|
|
url += "&"+property+"[]="+encodeURIComponent(parameters[property][i]);
|
|
}
|
|
else
|
|
url += "&"+property+"="+encodeURIComponent(parameters[property]);
|
|
}
|
|
}
|
|
this.transport.open(this.options.method, url, this.options.async);
|
|
this.transport.send(null);
|
|
},
|
|
|
|
onStateChange: function() {
|
|
var readyState = this.transport.readyState;
|
|
if (readyState == 4)
|
|
this.respondToReadyState(this.transport.readyState);
|
|
},
|
|
|
|
dispatchError: function( httpCode, text )
|
|
{
|
|
!this.options.onFailure || this.options.onFailure( httpCode, text);
|
|
},
|
|
|
|
respondToReadyState: function(readyState)
|
|
{
|
|
var transport = this.transport;
|
|
if (readyState==4 && transport.status == 200)
|
|
{
|
|
var resp;
|
|
try {
|
|
eval('resp = ' + transport.responseText);
|
|
}
|
|
catch (e) {
|
|
this.dispatchError( 200, e.message + '\n' + transport.responseText.substr(0,512) );
|
|
}
|
|
if (resp!=null)
|
|
{
|
|
if (resp.stat==null)
|
|
this.dispatchError( 200, "Invalid response" );
|
|
else if (resp.stat=='ok')
|
|
{
|
|
if (this.options.onSuccess) this.options.onSuccess( resp.result );
|
|
}
|
|
else
|
|
this.dispatchError( 200, resp.err + " " + resp.message);
|
|
}
|
|
}
|
|
if (readyState==4 && transport.status != 200)
|
|
this.dispatchError( transport.status, transport.statusText );
|
|
},
|
|
|
|
|
|
transport: null,
|
|
urlRoot: null,
|
|
options: {}
|
|
}
|