<%@language="JScript" @codepage="65001"%> <% Response.AddHeader("Content-Type", "text/html; charset=UTF-8"); var _previous_page = null; var _index_page = null; var _next_page = null; var _previous_page_caption = null; var _index_page_caption = null; var _next_page_caption = null; var show_save = true; var show_contact = true; var show_toc = false; var isPlain = (Request("_plain") == "true"); var isPre = (Request("_pre") == "true"); var pre_count = 0; var structDOM = Server.CreateObject("Microsoft.XMLDom"); structDOM.async = false; structDOM.load(Request.ServerVariables("APPL_PHYSICAL_PATH") + "\\structure.xml"); function getNewsCountForYear(year, type){ var v = 0; var x = new ActiveXObject("Microsoft.XMLDom"); x.async = false; x.load(Request.ServerVariables("APPL_PHYSICAL_PATH") + "\\news\\news.xml"); for(var i=1; i<=12; i++) v += getNewsCountForMonth(i, year, type, x); return v; } function getNewsCountForMonth(month, year, type, x){ var d = new Date(); if(d.getYear() == Number(year) && d.getMonth() + 1 == Number(month)){ var x = getActiveNewsXMLForDate(Number(year), Number(month)); return x.selectNodes("news/news[@category=\""+type+"\"]").length; } if(x == null){ x = new ActiveXObject("Microsoft.XMLDom"); x.async = false; x.load(Request.ServerVariables("APPL_PHYSICAL_PATH") + "\\news\\news.xml"); } var sn = x.selectNodes("news/data/news[@year=\""+year+"\" && @month=\""+month+"\"]/count[@type=\""+type+"\"]/@value"); if(sn.length == 0) return 0; else return Number(sn[0].text); } function getActiveNewsXML(){ var d = new Date(); return getActiveNewsXMLForDate(d.getYear(), d.getMonth() + 1); } function fallback_non_empty(x, year, month, news_type){ if(month <= 0){ month = 12; year--; } if(year < 2004) return x; var fso = new ActiveXObject("Scripting.FileSystemObject"); var x2 = new ActiveXObject("Microsoft.XMLDom"); x2.async = false; if( !fso.FileExists(Request.ServerVariables("APPL_PHYSICAL_PATH") + "\\news\\news_ro\\news_"+year+"_"+month+".xml") || !x2.load(Request.ServerVariables("APPL_PHYSICAL_PATH") + "\\news\\news_ro\\news_"+year+"_"+month+".xml") || x2.selectNodes("news/news[@category=\"" + news_type + "\"]").length == 0 ){ return fallback_non_empty(x, year, month - 1, news_type); } return x2; } function getActiveNewsXMLForDate(year, month){ if(isNaN(year) || isNaN(month)) return null; var fso = new ActiveXObject("Scripting.FileSystemObject"); var x2 = new ActiveXObject("Microsoft.XMLDom"); x2.async = false; if(!fso.FileExists(Request.ServerVariables("APPL_PHYSICAL_PATH") + "\\news\\news_ro\\news_"+year+"_"+month+".xml")){ x2.load(Request.ServerVariables("APPL_PHYSICAL_PATH") + "\\news\\header.xml"); x2.save(Request.ServerVariables("APPL_PHYSICAL_PATH") + "\\news\\news_ro\\news_"+year+"_"+month+".xml"); buildNewsIndex(); }else{ x2.load(Request.ServerVariables("APPL_PHYSICAL_PATH") + "\\news\\news_ro\\news_"+year+"_"+month+".xml"); } return x2; } function buildNewsIndex(){ var x3 = new ActiveXObject("Microsoft.XMLDom"); x3.async = false; var d = new Date(); x3.load(Request.ServerVariables("APPL_PHYSICAL_PATH") + "\\news\\news.xml"); var fm = Number(x3.selectSingleNode("news/settings/first_date/month").text); var fy = Number(x3.selectSingleNode("news/settings/first_date/year").text); var cm = fm; var cy = fy; var dest = x3.selectSingleNode("news/data"); x3.documentElement.removeChild(dest); var dest = x3.createNode(1, "data", ""); while(cy < d.getYear() || cm <= d.getMonth()){ var n = x3.createNode(1, "news", ""); var n1 = x3.createAttribute("year"); var n2 = x3.createAttribute("month"); n1.text = cy; n2.text = cm; var n3 = x3.createNode(1, "count", ""); var n31 = x3.createAttribute("type"); var n32 = x3.createAttribute("value"); var n4 = x3.createNode(1, "count", ""); var n41 = x3.createAttribute("type"); var n42 = x3.createAttribute("value"); var n5 = x3.createNode(1, "count", ""); var n51 = x3.createAttribute("type"); var n52 = x3.createAttribute("value"); var x = getActiveNewsXMLForDate(cy, cm); n31.text = "Noutati"; n41.text = "Stiri"; n51.text = "Editoriale"; n32.text = x.selectNodes("news/news[@category=\"Noutati\"]").length; n42.text = x.selectNodes("news/news[@category=\"Stiri\"]").length; n52.text = x.selectNodes("news/news[@category=\"Editoriale\"]").length; n3.attributes.setNamedItem(n31); n3.attributes.setNamedItem(n32); n4.attributes.setNamedItem(n41); n4.attributes.setNamedItem(n42); n5.attributes.setNamedItem(n51); n5.attributes.setNamedItem(n52); n.attributes.setNamedItem(n1); n.attributes.setNamedItem(n2); n.appendChild(n3); n.appendChild(n4); n.appendChild(n5); dest.appendChild(n); cm++; if(cm > 12){ cm = 1; cy++; } } x3.documentElement.appendChild(dest); x3.save(Request.ServerVariables("APPL_PHYSICAL_PATH") + "\\news\\news.xml"); } function reloadI18nBundle(){ try{ var langDOM = Server.CreateObject("Microsoft.XMLDom"); langDOM.async = false; langDOM.load(Request.ServerVariables("APPL_PHYSICAL_PATH") + "\\language_" + Session("SessionLanguage") + ".xml"); var labels = langDOM.selectNodes("i18n/labels/label") for(i=0; i-1) prw = prw.replace("\\", "/"); var file = structDOM.selectSingleNode("structure/file[@path=\""+new String(prw.toLowerCase())+"\" || languages/language/@path=\""+new String(prw.toLowerCase())+"\"]"); if(file != null){ var ls = file.selectSingleNode("languages/language[@id=\"" + Session("SessionLanguage") + "\"]/@path"); if(ls!=null){ if(ls.text != new String(prw).toLowerCase()){ var prw2 = prw; var cntr = 0; while(prw2.indexOf("/")>-1){ cntr++; prw2 = prw2.replace("/", ""); } var app_p = ""; for(var i=0; iPDF"; } var fs = null; function createFSO(){ if(fs == null) fs = new ActiveXObject("Scripting.FileSystemObject"); return fs; } function getSize(path){ var fso = createFSO(); var fl; try{ fl = fso.getFile(Server.MapPath(path)); }catch(e){ fl = fso.getFolder(Server.MapPath(path)); } var sz = fl.Size; sz = sz / 1000; sz = Math.floor(sz); mg = sz / 1000; mg = Math.floor(mg); return (mg>0?String(mg) + ".":"") + Math.abs(mg*1000 - sz) + " KB"; } var opth = ""; var orpth = ""; function getPathForCurrentLanguage(path){ return getPathForLanguage(path, Session("SessionLanguage")); } function getPathForLanguage(path, language){ var app = new String(Request.ServerVariables("APPL_PHYSICAL_PATH")); var pt = new String(Request.ServerVariables("PATH_TRANSLATED")); if(opth != path){ var prw22 = pt.replace(app, ""); while(prw22.indexOf("\\")>-1) prw22 = prw22.replace("\\", "/"); prw22 = "/" + prw22; prw = new String(Server.MapPath(path)).replace(Request.ServerVariables("APPL_PHYSICAL_PATH"), ""); while(prw.indexOf("\\")>-1) prw = prw.replace("\\", "/"); orpth = new String("/" + prw).toLowerCase(); opth = path; } prw = orpth; var file = structDOM.selectSingleNode("structure/file[@path=\""+new String(prw.toLowerCase())+"\" || languages/language/@path=\""+new String(prw.toLowerCase())+"\"]"); var langs; var clng = null; if(file!=null && file.selectNodes("languages/language").length>0) clng = file.selectSingleNode("languages/language"); if(file!=null && (langs=file.selectNodes("languages/language")).length>0){ var sOut = ""; for(var j=0; j0) clng = langs[0]; } if(clng!=null) return app_p + clng.selectSingleNode("@path").text.substring(1); return path; } var fopth = ""; var forpth = ""; function getLanguages(path){ if(path != fopth){ var app = new String(Request.ServerVariables("APPL_PHYSICAL_PATH")); var pt = new String(Request.ServerVariables("PATH_TRANSLATED")); var prw22 = pt.replace(app, ""); while(prw22.indexOf("\\")>-1) prw22 = prw22.replace("\\", "/"); prw22 = "/" + prw22; prw = new String(Server.MapPath(path)).replace(Request.ServerVariables("APPL_PHYSICAL_PATH"), ""); while(prw.indexOf("\\")>-1) prw = prw.replace("\\", "/"); forpth = new String("/" + prw).toLowerCase(); fopth = path; } prw = forpth; var file = structDOM.selectSingleNode("structure/file[@path=\""+new String(prw.toLowerCase())+"\" || languages/language/@path=\""+new String(prw.toLowerCase())+"\"]"); var langs; if(file!=null && (langs=file.selectNodes("languages/language")).length>0){ var sOut = ""; for(var j=0; j-1){ cntr++; prw2 = prw2.replace("/", ""); } var app_p = ""; for(var i=0; i0) sOut += "    "; sOut += ""; sOut += ls.selectSingleNode("@id").text; sOut += ""; } } return "   " + sOut; }else{ return "   ro"; } return ""; } var app = new String(Request.ServerVariables("APPL_PHYSICAL_PATH")); var pt = new String(Request.ServerVariables("PATH_TRANSLATED")); var prw = pt.replace(app, ""); while(prw.indexOf("\\")>-1) prw = prw.replace("\\", "/"); var prwo = prw.toLowerCase(); prw = new String("/" + prw).toLowerCase(); var prw2 = prw; var cntr = 0; while(prw2.indexOf("/")>-1){ cntr++; prw2 = prw2.replace("/", ""); } var app_p = ""; for(var i=0; i-1?prws.lastIndexOf("_pageLanguage")-1:prws.length-1)) var current_menu = menuDOM.selectSingleNode("//menu[@path=\""+pp_rws.substring(0, (pp_rws.lastIndexOf("?")>-1?pp_rws.lastIndexOf("?"):pp_rws.length))+"\"]"); function addPageLanguageInfo2(ad, ha){ return ad;// TODO if(ad.lastIndexOf("?")==-1) return ad + "?_pageLanguage=" + ha; else return ad.substring(0, ad.lastIndexOf("?")+1) + addPageLanguageInfo(ad.substring(ad.lastIndexOf("?")+1), ha); } function addPageLanguageInfo(qs, ha){ return qs; // TODO ha = "_pageLanguage=" + ha; qs = new String(qs); if(qs==null || qs==""){ qs = ha; }else{ if(qs.indexOf("_pageLanguage")>-1){ var i = qs.indexOf("_pageLanguage"); // _pageLanguage=xx var j = i + new String("_pageLanguage").length + 3; var ho = qs.substring(i, j); qs = qs.replace(ho, ha); }else qs += "&" + ha; } return qs; } function getPlainVersion(){ var qs = new String(Request.QueryString); if(qs.length>0) return prwo.substring(prwo.lastIndexOf("/") + 1) + "?" + qs + "&_plain=true"; else return prwo.substring(prwo.lastIndexOf("/") + 1) + "?_plain=true"; } function getPreVersion(){ var qs = new String(Request.QueryString); if(qs.length>0) return prwo.substring(prwo.lastIndexOf("/") + 1) + "?" + qs + "&_pre=true"; else return prwo.substring(prwo.lastIndexOf("/") + 1) + "?_pre=true"; } %> <% if(isPre) Response.Write("