# HG changeset patch # User Matti Hamalainen # Date 1386179543 -7200 # Node ID 357b81e39ab34a2d4ef064744c73a01530e35239 # Parent 2c61dc1e659d1078545f55edc1306ceb03a573cf Rename majax.php -> majax.inc.php. diff -r 2c61dc1e659d -r 357b81e39ab3 admin.php --- a/admin.php Wed Dec 04 19:48:55 2013 +0200 +++ b/admin.php Wed Dec 04 19:52:23 2013 +0200 @@ -8,7 +8,7 @@ require_once "mconfig.inc.php"; require_once "msite.inc.php"; require_once "msession.inc.php"; -require_once "majax.php"; +require_once "majax.inc.php"; function stCreateSettingsData() { diff -r 2c61dc1e659d -r 357b81e39ab3 majax.inc.php --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/majax.inc.php Wed Dec 04 19:52:23 2013 +0200 @@ -0,0 +1,205 @@ +\n"; + +?> +function closeMessageBox(callback, cb_data) +{ + var nitem = document.getElementById("messageBox"); + if (nitem && nitem.style.display != "none") + { + nitem.style.display = "none"; + + if (callback && typeof(callback) === "function") + callback(cb_data); + } +} + + +function jsMessageBox(msg) +{ + var nitem = document.getElementById("messageBox"); + if (nitem) + { + nitem.innerHTML = "
"+ msg + + "
"+ + ""+ + "
"; + + document.getElementById("msgBoxConfirmClose").onclick = function () { closeMessageBox(0, 0); } + + nitem.style.display = "block"; + } +} + + +function jsConfirmBox(msg, cb_ok, cb_cancel, cb_data) +{ + var nitem = document.getElementById("messageBox"); + if (nitem) + { + nitem.innerHTML = "

Confirmation

"+ msg +"

"+ + "
"+ + ""+ + ""+ + "
"; + + document.getElementById("msgBoxConfirmCancel").onclick = function () { closeMessageBox(cb_cancel, cb_data); } + document.getElementById("msgBoxConfirmOK").onclick = function () { closeMessageBox(cb_ok, cb_data); } + + nitem.style.display = "block"; + } +} + + +function statusMsg(msg) +{ + var nitem = document.getElementById("nstatus"); + if (nitem) nstatus.innerHTML = msg; +} + + +function strtrim(str) +{ + if (!str || str == null) + return ""; + return str.replace(/^\s+|\s+$/g,'') +} + + +function strencode(str) +{ + return encodeURIComponent(str); +} + + +function jsCreateXMLRequest() +{ + var req; + if (window.XMLHttpRequest) + { + // Modern browsers + req = new XMLHttpRequest(); + } + else + { + // Old IE versions + req = new ActiveXObject("Microsoft.XMLHTTP"); + } + return req; +} + + +function jsSendPOSTRequest(params, success, failure) +{ + + var req = jsCreateXMLRequest(); + req.open("POST", "", true); + req.setRequestHeader("Content-type", "application/x-www-form-urlencoded"); + req.setRequestHeader("Content-length", params.length); + req.setRequestHeader("Connection", "close"); + + req.onreadystatechange = function() + { + if (req.readyState == 4) + { + if (req.status == 404) + { + window.location = ""; + } + else + if (req.status == 902) + { + statusMsg(req.statusText); + jsMessageBox(req.responseText); + } + else + if (req.status == 200) + { + if (success) + { + success(req.responseText); + } + statusMsg(req.statusText); + } + else + { + if (failure) + { + failure(req.status, req.statusText, req.responseText); + } + else + { + statusMsg("["+req.status+" - "+req.statusText+"] "+ req.responseText); + } + } + } + } + req.send(params); +} + + +// +// Function for creating AJAX POST request arguments list based +// on fields and giving them specified types. Also basic check +// for validity can be performed (e.g. field empty or not) +// +var lastPostArgs = Object(); +function jsMakePostArgs(fields, fprefix, fsuffix) +{ + var res = []; + lastPostArgs = Object(); + + for (var id in fields) + { + var elname = fprefix + id + fsuffix; + var elem = document.getElementById(elname); + if (!elem) + { + jsMessageBox("No such DOM element '"+ elname +"'."); + return ""; + } + + switch (fields[id]) + { + case 1: + var vstr = strtrim(elem.value); + res.push(id+"="+strencode(vstr)); + lastPostArgs[id] = vstr; + break; + + case 2: + var vint = parseInt(strtrim(elem.value)); + res.push(id+"="+vint); + lastPostArgs[id] = vint; + break; + + case 3: + res.push(id+"="+(elem.checked ? "1" : "0")); + lastPostArgs[id] = elem.checked; + break; + + default: + jsMessageBox("Unsupported field type in "+ elname); + return ""; + } + } + return res.join("&"); +} +\n"; +} +?> \ No newline at end of file diff -r 2c61dc1e659d -r 357b81e39ab3 majax.php --- a/majax.php Wed Dec 04 19:48:55 2013 +0200 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,205 +0,0 @@ -\n"; - -?> -function closeMessageBox(callback, cb_data) -{ - var nitem = document.getElementById("messageBox"); - if (nitem && nitem.style.display != "none") - { - nitem.style.display = "none"; - - if (callback && typeof(callback) === "function") - callback(cb_data); - } -} - - -function jsMessageBox(msg) -{ - var nitem = document.getElementById("messageBox"); - if (nitem) - { - nitem.innerHTML = "
"+ msg + - "
"+ - ""+ - "
"; - - document.getElementById("msgBoxConfirmClose").onclick = function () { closeMessageBox(0, 0); } - - nitem.style.display = "block"; - } -} - - -function jsConfirmBox(msg, cb_ok, cb_cancel, cb_data) -{ - var nitem = document.getElementById("messageBox"); - if (nitem) - { - nitem.innerHTML = "

Confirmation

"+ msg +"

"+ - "
"+ - ""+ - ""+ - "
"; - - document.getElementById("msgBoxConfirmCancel").onclick = function () { closeMessageBox(cb_cancel, cb_data); } - document.getElementById("msgBoxConfirmOK").onclick = function () { closeMessageBox(cb_ok, cb_data); } - - nitem.style.display = "block"; - } -} - - -function statusMsg(msg) -{ - var nitem = document.getElementById("nstatus"); - if (nitem) nstatus.innerHTML = msg; -} - - -function strtrim(str) -{ - if (!str || str == null) - return ""; - return str.replace(/^\s+|\s+$/g,'') -} - - -function strencode(str) -{ - return encodeURIComponent(str); -} - - -function jsCreateXMLRequest() -{ - var req; - if (window.XMLHttpRequest) - { - // Modern browsers - req = new XMLHttpRequest(); - } - else - { - // Old IE versions - req = new ActiveXObject("Microsoft.XMLHTTP"); - } - return req; -} - - -function jsSendPOSTRequest(params, success, failure) -{ - - var req = jsCreateXMLRequest(); - req.open("POST", "", true); - req.setRequestHeader("Content-type", "application/x-www-form-urlencoded"); - req.setRequestHeader("Content-length", params.length); - req.setRequestHeader("Connection", "close"); - - req.onreadystatechange = function() - { - if (req.readyState == 4) - { - if (req.status == 404) - { - window.location = ""; - } - else - if (req.status == 902) - { - statusMsg(req.statusText); - jsMessageBox(req.responseText); - } - else - if (req.status == 200) - { - if (success) - { - success(req.responseText); - } - statusMsg(req.statusText); - } - else - { - if (failure) - { - failure(req.status, req.statusText, req.responseText); - } - else - { - statusMsg("["+req.status+" - "+req.statusText+"] "+ req.responseText); - } - } - } - } - req.send(params); -} - - -// -// Function for creating AJAX POST request arguments list based -// on fields and giving them specified types. Also basic check -// for validity can be performed (e.g. field empty or not) -// -var lastPostArgs = Object(); -function jsMakePostArgs(fields, fprefix, fsuffix) -{ - var res = []; - lastPostArgs = Object(); - - for (var id in fields) - { - var elname = fprefix + id + fsuffix; - var elem = document.getElementById(elname); - if (!elem) - { - jsMessageBox("No such DOM element '"+ elname +"'."); - return ""; - } - - switch (fields[id]) - { - case 1: - var vstr = strtrim(elem.value); - res.push(id+"="+strencode(vstr)); - lastPostArgs[id] = vstr; - break; - - case 2: - var vint = parseInt(strtrim(elem.value)); - res.push(id+"="+vint); - lastPostArgs[id] = vint; - break; - - case 3: - res.push(id+"="+(elem.checked ? "1" : "0")); - lastPostArgs[id] = elem.checked; - break; - - default: - jsMessageBox("Unsupported field type in "+ elname); - return ""; - } - } - return res.join("&"); -} -\n"; -} -?> \ No newline at end of file diff -r 2c61dc1e659d -r 357b81e39ab3 show.php --- a/show.php Wed Dec 04 19:48:55 2013 +0200 +++ b/show.php Wed Dec 04 19:52:23 2013 +0200 @@ -7,7 +7,7 @@ require_once "mconfig.inc.php"; require_once "msite.inc.php"; require_once "msession.inc.php"; -require_once "majax.php"; +require_once "majax.inc.php"; $pageCSS["show.css"] = ""; diff -r 2c61dc1e659d -r 357b81e39ab3 vote.inc.php --- a/vote.inc.php Wed Dec 04 19:48:55 2013 +0200 +++ b/vote.inc.php Wed Dec 04 19:52:23 2013 +0200 @@ -5,7 +5,7 @@ // (C) Copyright 2012-2013 Tecnic Software productions (TNSP) // $sessionType = "user"; -require_once "majax.php"; +require_once "majax.inc.php"; function stGetVoteButton()