if (navigator.platform == "Win32" && navigator.appName == "Microsoft Internet Explorer" && window.attachEvent) { window.attachEvent("onload", alphaBackgrounds); window.attachEvent("onload", antiFlickeringOn); window.attachEvent("onunload", antiFlickeringOut); } // XMLHTTP IMPLEMENTATION --------------------------------------------------------------------------------------------------- // used to find the Automation server name function getDomDocumentPrefix() { if (getDomDocumentPrefix.prefix) return getDomDocumentPrefix.prefix; var prefixes = ["MSXML2", "Microsoft", "MSXML", "MSXML3"]; var o; for (var i = 0; i < prefixes.length; i++) { try { // try to create the objects o = new ActiveXObject(prefixes[i] + ".DomDocument"); return getDomDocumentPrefix.prefix = prefixes[i]; } catch (ex) {}; } throw new Error("Could not find an installed XML parser"); } function getXmlHttpPrefix() { if (getXmlHttpPrefix.prefix) return getXmlHttpPrefix.prefix; var prefixes = ["MSXML2", "Microsoft", "MSXML", "MSXML3"]; var o; for (var i = 0; i < prefixes.length; i++) { try { // try to create the objects o = new ActiveXObject(prefixes[i] + ".XmlHttp"); return getXmlHttpPrefix.prefix = prefixes[i]; } catch (ex) {}; } throw new Error("Could not find an installed XML parser"); } ////////////////////////// // Start the Real stuff // ////////////////////////// // XmlHttp factory function XmlHttp() {} XmlHttp.create = function () { try { if (window.XMLHttpRequest) { var req = new XMLHttpRequest(); // some versions of Moz do not support the readyState property // and the onreadystate event so we patch it! if (req.readyState == null) { req.readyState = 1; req.addEventListener("load", function () { req.readyState = 4; if (typeof req.onreadystatechange == "function") req.onreadystatechange(); }, false); } return req; } if (window.ActiveXObject) { return new ActiveXObject(getXmlHttpPrefix() + ".XmlHttp"); } } catch (ex) {} // fell through throw new Error("Your browser does not support XmlHttp objects"); }; // XmlDocument factory function XmlDocument() {} XmlDocument.create = function () { try { // DOM2 if (document.implementation && document.implementation.createDocument) { var doc = document.implementation.createDocument("", "", null); // some versions of Moz do not support the readyState property // and the onreadystate event so we patch it! if (doc.readyState == null) { doc.readyState = 1; doc.addEventListener("load", function () { doc.readyState = 4; if (typeof doc.onreadystatechange == "function") doc.onreadystatechange(); }, false); } return doc; } if (window.ActiveXObject) return new ActiveXObject(getDomDocumentPrefix() + ".DomDocument"); } catch (ex) {} throw new Error("Your browser does not support XmlDocument objects"); }; // Create the loadXML method and xml getter for Mozilla if (window.DOMParser && window.XMLSerializer && window.Node && Node.prototype && Node.prototype.__defineGetter__) { // XMLDocument did not extend the Document interface in some versions // of Mozilla. Extend both! XMLDocument.prototype.loadXML = Document.prototype.loadXML = function (s) { // parse the string to a new doc var doc2 = (new DOMParser()).parseFromString(s, "text/xml"); // remove all initial children while (this.hasChildNodes()) { this.removeChild(this.lastChild); } // insert and import nodes for (var i = 0; i < doc2.childNodes.length; i++) { this.appendChild(this.importNode(doc2.childNodes[i], true)); } }; // // xml getter // // This serializes the DOM tree to an XML String // // Usage: var sXml = oNode.xml // // XMLDocument did not extend the Document interface in some versions // of Mozilla. Extend both! XMLDocument.prototype.__defineGetter__("xml", function () { return (new XMLSerializer()).serializeToString(this); }); Document.prototype.__defineGetter__("xml", function () { return (new XMLSerializer()).serializeToString(this); }); } // ^^^^^ XMLHTTP IMPLEMENTATION --------------------------------------------------------------------------------------------------- // XMLHTTP REQUEST MANAGEMENT ----------------------------------------------------------------------------------------------------- var requestPool = Array(); function isArray(obj) { if (obj.constructor.toString().indexOf("Array") == -1) return false; else return true; } /**/ function addRequest(requestURL, callBack, postParams, callbackParams, name) { Aitia.Ajax.addRequest({ requestURL: requestURL, callBack: callBack, postParams: postParams, callbackParams:callbackParams, name:name}); } /**/ // xmlhttp kérést ad a sorba // param: URL, ?a visszah?nd??ggv? neve, aminek egy argumentumja a visszat?si ??(string) legyen function addRequest0(requestURL, callBack, postParams, callbackParams, name) { //debugWriteLn(requestURL+' '+callBack); if (!postParams) { postParams = Array(); } if (!callbackParams) { callbackParams = Array(); } if (name) { for (var i = 0; i < requestPool.length; i++) { if(requestPool[i][4] == name) { requestPool[i][4] = "webra_deactivated"; } } } else { name = ''; } requestPool.push(Array(requestURL, callBack, postParams, callbackParams, name)); if (requestPool.length == 1) { processRequest(); } } /** * Elmenti a legutóbb használt objetumok közé a megadott objektumot. * * @author Kocsis Róbert * * ChangeLog: * - 2007.09.10, Szabó Csaba * Ellenőrzi, hogy létezik e a callback függvény és csak akkor hívja meg. */ function processRequest() { var xmlHttp2 = XmlHttp.create(); if (requestPool.length > 0 && requestPool[0][4] != "webra_deactivated") { if (!requestPool[0][0]) { requestPool.shift(); processRequest(); return; } xmlHttp2.open("POST", requestPool[0][0], true); xmlHttp2.onreadystatechange = function () { if (xmlHttp2.readyState == 4) { var request = requestPool[0]; if (request[1] && request[1].length>0) { var callbackParams = request[3]; //Ellenőrzi, hogy létezik e a callBack függvény var callbackExists = false; if (request[1] && request[1] != "" && request[4]!="webra_deactivated") { eval("callbackExists = (window." + request[1] + ");"); } // Ha létezik a callback fv if (callbackExists && request[4]!="webra_deactivated") { var s = request[1] + "('" + escape(xmlHttp2.responseText) + "', callbackParams);"; eval(s); } } loadingIndicator(0); xmlHttp2.abort(); requestPool.shift(); processRequest(); } } var postData = '&webraRequestType=xmlhttp'; for (var i = 0; i < requestPool[0][2].length; i++) { if (requestPool[0][2][i][0]) { postData += '&' + requestPool[0][2][i][0] + '=' + encodeURIComponent(requestPool[0][2][i][1]); } } var contentlength = postData.length - 1; if (contentlength < 0) { contentlength = 0; } postData = postData.replace(/^&/, '?&'); _postData = postData xmlHttp2.setRequestHeader("Accept", "text/html"); xmlHttp2.setRequestHeader("Accept-charset", "utf-8"); xmlHttp2.setRequestHeader("Content-Type","application/x-www-form-urlencoded; charset=UTF-8"); xmlHttp2.setRequestHeader("Content-Length",contentlength); xmlHttp2.setRequestHeader("Content-Disposition","form-data; name=W3"); xmlHttp2.setRequestHeader("Connection","close"); //alert(requestPool[0][0] + " - " + postData + " - " + requestPool[0][1]); loadingIndicator(1); xmlHttp2.send(postData); } else if (requestPool.length > 0) { requestPool.shift(); processRequest(); } } //processRequest /** * Direkt xmlHttp kérés (a W3 kjút megkerülve) * * @author Szabó Csaba * @date 2007.12.13 */ function processXmlHttpRequest(requestUrl, callBack, postParams, callbackParams, async) { var xmlHttp2 = XmlHttp.create(); xmlHttp2.open("POST", requestUrl, async == 1 ? true : false); xmlHttp2.setRequestHeader("Content-Type","application/x-www-form-urlencoded; charset=UTF-8"); xmlHttp2.setRequestHeader("Accept", "text/html"); xmlHttp2.setRequestHeader("Accept-charset", "utf-8"); if (async == 1) { xmlHttp2.onreadystatechange = function () { if (xmlHttp2.readyState == 4) { //Ellenőrzi, hogy létezik e a callBack függvény var callbackExists = false; if (callBack && callBack != "") { eval("callbackExists = (window." + callBack + ");"); } // Ha létezik a callback fv if (callbackExists) { var s = request[1]+"('"+escape(xmlHttp2.responseText)+"', callbackParams);"; eval(s); } } xmlHttp2.abort(); } } var postData = '&webraRequestType=xmlhttp'; for (var i = 0; i < postParams.length; i++) { if (postParams[i][0]) { postData += '&' + postParams[i][0] + '=' + encodeURIComponent(postParams[i][1]); } } xmlHttp2.send(postData); if (!async) { return xmlHttp2.responseText; } } // end processXmlHttpRequest // ^^^^^ XMLHTTP REQUEST MANAGEMENT ----------------------------------------------------------------------------------------------- var divTimer = null; var divTimer2 = null; var openDiv = ''; var openDiv2 = ''; var messageTimer = null; var lastSearchString = ''; var lastSendSearchString = ''; var searchTimer = null; function showDiv(divId, subdiv) { if (subdiv == 1) { clearDivCloseTimer(); if (document.getElementById(divId)) { hideDiv(openDiv2,1) document.getElementById(divId).style.display = 'block'; openDiv2 = divId; } } else { clearDivCloseTimer(); hideDiv(openDiv); if (document.getElementById(divId)) { document.getElementById(divId).style.display = 'block'; openDiv = divId; } } } function hideDiv(divId,subdiv) { if (!divId) { return null; } if (subdiv == 1) { if (document.getElementById(divId)) { document.getElementById(divId).style.display = 'none'; openDiv2 = ''; } } else { if (document.getElementById(divId)) { document.getElementById(divId).style.display = 'none'; openDiv = ''; } } } function setDivCloseTimer(divId, subdiv) { clearDivCloseTimer(subdiv); if (subdiv) { divTimer2 = setTimeout("hideDiv('" + divId + "')", 1000); } else { divTimer = setTimeout("hideDiv('" + divId + "')", 1000); } } function setDivCloseTimerLong(divId) { clearDivCloseTimer(); divTimer = setTimeout("hideDiv('" + divId + "')", 3000); } function clearDivCloseTimer(subdiv) { if (subdiv == 1) { if (divTimer2) { clearTimeout(divTimer2); } } else { if (divTimer) { clearTimeout(divTimer); } } } // Elemelrejtő és láthatóvá tevő függvények -------------------------- // a fentiek globális változóit használják, de nincs subdiv, és display helyett visibility-vel manipulál function showElement(divId) { clearHideElementTimer(); hideElement(openDiv); if (document.getElementById(divId)) { document.getElementById(divId).style.visibility = 'visible'; openDiv = divId; } } function hideElement(divId) { var collapse = 0; var argv = hideElement.arguments; if (argv) { var argc = argv.length; if (1 <= argc) { collapse = argv[1]; } } if (document.getElementById(divId)) { if (collapse) { document.getElementById(divId).style.display = 'none'; } document.getElementById(divId).style.visibility = 'hidden'; openDiv = ''; } } function hideElementTimer(divId) { var delay = 1000; var collapse = 0; var argv = hideElementTimer.arguments; if (argv) { var argc = argv.length; if (1 <= argc) { delay = argv[1]; } var argc = argv.length; if (2 <= argc) { collapse = argv[2]; } } divTimer = setTimeout("hideElement('" + divId + "', '" + collapse + "')", delay); } function clearMakeHiddenTimer() { if (divTimer) { clearTimeout(divTimer); } } // Elemelrejtő és láthatóvá tevő függvények vége --------------------- function refreshMessages(answerXML) { var answer = unescape(answerXML); if (document.getElementById('messageBoxContainer')) { document.getElementById('messageBoxContainer').innerHTML = answer; evalJS(answer); } initMessageTimer(); } function evalGlobal(str) { if ( window.execScript ) { window.execScript(str); } else { window.eval( str ); //eval.call( window, str ); } } function evalJS(responsetext, global, encode) { if (!global) { global = false; } if (!encode) { encode = false; } var evalJSresult = false; // tartalomban levő js scriptek kivágása // 0. lépés: mivel js-ben nincs 's' modifier (amitől a '.' illeszkedik a newline-ra), ezért a sortöréseket elimináljuk temporálisan //responsetext=responsetext.replace(/[\r\n]/gi,'WeBrAnEwLiNeToKeN'); // 1. lépés: textarea-ban levő scriptek (pl cikk attribpanel szerkerszthető módban) /g nem volt jó (mert először a legnagyobb előfordulást cserélte) úgyhogy 5x cserélünk responsetext = responsetext.replace(/]*>[\s\S]*?<\/textarea>/ig, ''); // 3. lépés: sortörés vissza, hogy a js commentek ne öljék meg a kódokat //responsetext=responsetext.replace(/WeBrAnEwLiNeToKeN/g,'\n'); //re = "/]*>/i"; //re = eval(re); var re = new RegExp("]*>", "i") //rre = "/<.script>/i"; //rre = eval(rre); var rre = new RegExp("<.script[^>]*>", "i") var a = responsetext.search(re); while (a > -1) { var b = responsetext.search(rre); var js = responsetext.substring(a, b + 9); var c = js.indexOf('>'); js = js.substring(c + 1, js.length - 9); if (encode) { js = htmlSpecialCharsDecode(js); } if (global) { evalGlobal(js); } else { eval(js); } responsetext = responsetext.substring(0, a) + responsetext.substring(b + 9); a = responsetext.search(re); evalJSresult = true; } //ha futtatott JS-t, akkor true, egyébként false return evalJSresult; } function fastSearchManage() { if (window.event && window.event.keyCode == 13) { if (searchTimer) { clearTimeout(searchTimer); searchTimer = null; } if (document.getElementById('searchtext')) { lastSendSearchString = document.getElementById('searchtext').value; } sendSearchRequest(); } else { if (document.getElementById('searchtext') && document.getElementById('searchtext').value.length > 1 && lastSearchString != document.getElementById('searchtext').value) { if (searchTimer) { clearTimeout(searchTimer); } searchTimer = setTimeout("fastSearchManageSend()", 1000); } } if (document.getElementById('searchtext')) { lastSearchString = document.getElementById('searchtext').value; } } function fastSearchManageSend() { if (document.getElementById('searchtext') && document.getElementById('searchtext').value.length > 1 && lastSearchString == document.getElementById('searchtext').value) { lastSendSearchString = document.getElementById('searchtext').value; sendSearchRequest(); fastSearchManage(); } } function refreshSearchResult(answerXML) { var answer = unescape(answerXML); if (document.getElementById('searchtext') && lastSendSearchString == document.getElementById('searchtext').value && document.getElementById('searchresult')) { document.getElementById('searchresult').innerHTML = answer; alphaBackgrounds(); } } function antiFlickeringOn() { var rslt = navigator.appVersion.match(/MSIE (\d+\.\d+)/, ''); var itsAllGood = (rslt != null && Number(rslt[1]) >= 4); if (navigator.appName == "Microsoft Internet Explorer" && itsAllGood) { //Csak akkor kell alkalmazni, ha IE4 vagy újabb try { document.execCommand('BackgroundImageCache', false, true); } catch(e) {} } } function antiFlickeringOut() { var rslt = navigator.appVersion.match(/MSIE (\d+\.\d+)/, ''); var itsAllGood = (rslt != null && Number(rslt[1]) >= 4); if (navigator.appName == "Microsoft Internet Explorer" && itsAllGood ) { //Csak akkor kell alkalmazni, ha IE4 vagy újabb try { document.execCommand('BackgroundImageCache', false, false); } catch(e) {} } } function alphaBackgrounds() { /* var ie5 = (navigator.userAgent.indexOf('MSIE 5') > 0) ? true : false; var ie6 = (navigator.userAgent.indexOf('MSIE 6') > 0) ? true : false; if ( ie5 || ie6 ) { */ var rslt = navigator.appVersion.match(/MSIE (\d+\.\d+)/, ''); var itsAllGood = (rslt != null && Number(rslt[1]) >= 5.5); if (navigator.platform == "Win32" && navigator.appName == "Microsoft Internet Explorer" && itsAllGood ) { //Csak akkor kell alkalmazni, ha IE5.5 vagy ujabb. Mozillán nem kell, mert alapbol tudja. var argv = alphaBackgrounds.arguments; if (argv) { var argc = argv.length; var elements = new Array('td', 'div'); var root; if (1<=argc && argv[0].nodeName ) { root = argv[0]; } else { root = document; } for (var x in elements) { var tdList = root.getElementsByTagName(elements[x]); //var regE = /\.png/i; var regE = /img\/shadow\/[^\"\']*\.png/i; for (var i = 0; i < tdList.length && i < 5000; i++) { var bg = tdList[i].currentStyle.backgroundImage; if (bg) { //if ( bg.indexOf('.png') != -1 ) { if (bg.search(regE) != -1) { var pngbg = bg.substring(5, bg.length - 2); //if (tdList[i].hasChildNodes() == false || (tdList[i].childNodes.length == 1 && tdList[i].firstChild.nodeType == 3)) { if (tdList[i].className.indexOf("shadow") != -1) { tdList[i].style.filter = "progid:DXImageTransform.Microsoft.AlphaImageLoader(src='"+pngbg+"', sizingMethod='scale')"; tdList[i].style.backgroundImage = "url('')"; } } } } } } } } /** * Eseménykezelők */ var webra_eventlisteners = new Array(); var WebraEventListener = {}; WebraEventListener.add = function(eventType, handler) { webra_eventlisteners.push({'eventType':eventType, 'handler':handler}); } /** * Üzenet kezelés a komponensek közt */ //komponensek nyilvántartása var webra_components = new Object(); function msg_addComponent(compName, callbackFunction, callbackParams) { if (compName) { webra_components[compName] = new Object(); webra_components[compName]['compName'] = compName; webra_components[compName]['callbackFunction'] = callbackFunction; webra_components[compName]['callbackParams'] = callbackParams; } } function msg_removeComponent(compName) { webra_components[compName] = null; } function msg_send(msgSender, msgParams) { // a toolbart futtatjuk utoljára, ezért kétszer fut a ciklus for (i in webra_components) { if (webra_components[i]['callbackParams'] && (webra_components[i]['callbackFunction'] != 'msgCallback_toolbar')) { var c = "var r = " + webra_components[i]['callbackFunction'] + "(msgSender, msgParams, webra_components['" + i + "']['callbackParams']);"; eval(c); } } for (i in webra_components) { if (webra_components[i]['callbackParams'] && (webra_components[i]['callbackFunction'] == 'msgCallback_toolbar')) { var c = "var r = " + webra_components[i]['callbackFunction'] + "(msgSender, msgParams, webra_components['" + i + "']['callbackParams']);"; eval(c); } } } //-----toolbar komponent-------- function msgCallback_toolbar(msgSender, msgParams, callbackParams) { if (typeof msgSender == "object") { // ST-ben elem kijelölés esemény történt if (msgSender.type == "sorttable" && (msgSender.event=="selectItem" || msgSender.event=="loadEmptyTable")) { // Üzenet paraméterek var i = callbackParams.length; for (var j=0; j * @date 2007.09.10 * * @param integer Az objektum azonosítója * @param integer Az objektum típus azonosítója * * @todo> Átgondolni: kliens oldalról nem kell módosítani, mert csak azok az objektumok kerülhetnek be, melyeket a DB-ben módosított. */ function profilePushMostRecentObject(metadataID, objectID, objectTypeID) { // Vagy metadata azonosító vagy objektum és objektumtípus azonosító szükséges if (parseInt(metadataID) > 0 || (parseInt(objectID) > 0 && parseInt(objectTypeID) > 0)) { addRequest(profileURL, "", Array(Array("webra_action", "profileSetMostRecentObject"), Array("objectID", objectID), Array("objectTypeID", objectTypeID))); } } /** * Beállítja az aktuálisan használt rovatot (linuxos hasonlattal élve pwd-t) * Ezt lehet használni új objektum létrehozáskor default rovatnak. * * @author Szabó Csaba * @date 2007.09.10 * * @param integer Az objektum azonosítója * @param integer Az objektum típus azonosítója */ function profileSetActiveFolder(objectID) { // Rovat azonosító szükséges if (parseInt(objectID) > 0) { addRequest(profileURL, "", Array(Array("webra_action", "profileSetActiveFolder"), Array("objectID", objectID))); } } /** * Visszaad várost zip alapján. * * @author Kocsis Róbert * @date 2007.11.08. * * @param integer zip * @param string célpont html control */ function getWebraCityByZip(zipcode,settlementControl) { if (zipcode.length == 4) { var params = setParamValue(params, "nodoctype", 1); params = setParamValue(params, "webra_action", 'getWebraCityByZip'); params = setParamValue(params, "vch_zipcode", zipcode); params = setParamValue(params, "settlementControl", settlementControl); addRequest(profileURL, "getWebraCityByZip_callback", params); } } function getWebraCityByZip_callback(result, callbackParams) { var result=unescape(result); evalJS(result); } /** * Visszaad várost zip alapján. * * @author Kocsis Róbert * @date 2007.11.08. * * @param integer zip * @param string célpont html control */ function getWebraCityByZip_public(zipcode,settlementControl) { if (zipcode.length == 4) { var params = setParamValue(params, "nodoctype", 1); params = setParamValue(params, "webra_action", 'getWebraCityByZip'); params = setParamValue(params, "vch_zipcode", zipcode); params = setParamValue(params, "settlementControl", settlementControl); addRequest(profilePublicURL, "getWebraCityByZip_callback", params); } } function getWebraCityByZip_public_callback(result, callbackParams) { var result=unescape(result); evalJS(result); } /** * Általános ajax url check * * @author Kocsis Róbert * @date 2007.11.26. * * @param string url */ function checkWebraURL(url) { if (url!='') { var params = setParamValue(params, "nodoctype", 1); params = setParamValue(params, "webra_action", 'checkURL'); params = setParamValue(params, "url", url); addRequest(profileURL, "checkWebraURL_callback", params); } } function checkWebraURL_callback(result) { var result=unescape(result); if (result==1) { alert('Az URL létezik és elérhető.'); } else { alert('Az URL nem létezik, vagy nem elérhető a szerverről.'); } } var monthlengths = new Array(31,28,31,30,31,30,31,31,30,31,30,31); /* format: YYYY*MM*DD */ function checkDateSimple(dateobject) { if (dateobject.value.match(/^\d{4}[^0-9]\d{2}[^0-9]\d{2}$/)) { var thisyear = dateobject.value.substr(0,4); var thismonth = dateobject.value.substr(5,2); var thisday = dateobject.value.substr(8,2); if ((parseInt(thisyear) > 0) && (parseInt(thismonth) > 0) && (parseInt(thisday) > 0)) { monthlengths[1] = 28; if ((parseInt(thisyear/4) == (thisyear/4))) { monthlengths[1] = 29; } if ((parseInt(thismonth) <= 12) && (parseInt(thisday) <= monthlengths[parseInt(thismonth)-1])) { return true; } } } dateobject.focus(); return false; } // --- Webra, Admin About Box --- function webraAboutPopup(webraInstance) { newAdminPopup('admin_gui::webraAboutBoxPopup', Array(Array('webraInstance', webraInstance), Array('alma', 1))); } // --- begin - eventcalendar --------------------------- function event_findPosX(obj) { var curleft = 0; if (obj.offsetParent) { while (obj.offsetParent) { curleft += obj.offsetLeft; obj = obj.offsetParent; } } else if (obj.x) { curleft += obj.x; } return curleft; } function event_findPosY(obj) { var curtop = 0; if (obj.offsetParent) { while (obj.offsetParent) { curtop += obj.offsetTop; obj = obj.offsetParent; } } else if (obj.y) { curtop += obj.y; } return curtop; } function EventCalendarDay(i, type, node) { this.num = i; this.type = type; this.node = node; } function EventCalendar() { var _self = this; this.year = null; this.month = null; this.day = null; this.days = new Array(); this.selectedDay = null; this.rootNode = null; this.yearSelect = null; this.monthSelect = null; this.timer = null; this.webraInstance = null; this.selectDay = function(d) { if (this.selectedDay != null) { this.days[this.selectedDay].node.className = this.days[this.selectedDay].node.className.replace('selectedDay', ''); } this.selectedDay = d; if (this.selectedDay != null) { this.days[this.selectedDay].node.className = this.days[this.selectedDay].node.className+' selectedDay '; } var params=Array(); setParamValue(params, 'webra_action', 'getDayInfo'); setParamValue(params, 'nodoctype', '1'); setParamValue(params, 'year', this.year); setParamValue(params, 'month', this.month); setParamValue(params, 'day', this.selectedDay); setParamValue(params, 'webraInstance', this.webraInstance); if (document.getElementById('naptar_kulso')) { this.setTimer(params); } else { addRequest(mainURL+'main.php', 'cal.selectDayResponse', params, params); } } this.selectDay_pointer = function(d) { if (this.selectedDay != null) { this.days[this.selectedDay].node.className = this.days[this.selectedDay].node.className.replace('selectedDay', ''); } this.selectedDay = d; if (this.selectedDay != null) { this.days[this.selectedDay].node.className = this.days[this.selectedDay].node.className+' selectedDay '; } } this.setTimer = function(params) { this.clearTimer(); var paramStr = ""; if (typeof params == "array" || typeof params == "object") { for (var i=0; i"+day+""; } var rest = 6 - (days-1) % 7; for (var i=0; ii;i++) { if (inside==1) { if (i>rate) { document.getElementById('votestars'+i).src='/img/stars2.png'; } else { document.getElementById('votestars'+i).src='/img/stars1.png'; } } else { if (i>document.getElementById('articlevotenr').value) { document.getElementById('votestars'+i).src='/img/stars2.png'; } else { document.getElementById('votestars'+i).src='/img/stars1.png'; } } } }