Server IP : 180.180.241.3 / Your IP : 216.73.216.252 Web Server : Microsoft-IIS/7.5 System : Windows NT NETWORK-NHRC 6.1 build 7601 (Windows Server 2008 R2 Standard Edition Service Pack 1) i586 User : IUSR ( 0) PHP Version : 5.3.28 Disable Function : NONE MySQL : ON | cURL : ON | WGET : OFF | Perl : OFF | Python : OFF | Sudo : OFF | Pkexec : OFF Directory : C:/AppServ/www/app/webroot/news/administrator/components/com_jevents/assets/js/ |
Upload File : |
/** * JEvents Component for Joomla 1.5.x * * @version $Id: editical.js 1464 2009-06-09 14:34:22Z geraint $ * @package JEvents * @copyright Copyright (C) 2008-2009 GWE Systems Ltd, 2006-2008 JEvents Project Group * @license GNU/GPLv2, see http://www.gnu.org/licenses/gpl-2.0.html * @link http://www.jevents.net */ Date.prototype.getYMD = function() { month = "0"+(temp.getMonth()+1); day = "0"+temp.getDate(); // MSIE 7 still doesn't support negative num1 in substr!! var result = temp.getFullYear()+"-"+month.substr(month.length-2)+"-"+day.substr(day.length-2); //alert(result); return result; }; Date.prototype.addDays = function(days) { return new Date(this.getTime() + days*24*60*60*1000); }; Date.prototype.dateFromYMD = function(ymd){ parts = ymd.split("-"); //alert(parts[0]+" "+parts[1]+" "+parts[2]); temp = new Date(parts[0],parts[1]-1,parts[2],0,0,0,0); return temp; }; function highlightElem(elem){ elem.style.color="red"; elem.style.fontWeight="bold"; document.getElementById("valid_dates").value=0; } function normaliseElem(elem) { elem.style.color=""; elem.style.fontWeight=""; document.getElementById("valid_dates").value=1; } function checkTimeFormat(time){ if (time.value.indexOf(":")>0){ normaliseElem(time); return true; } else if (time.value.indexOf("-")>0 || time.value.indexOf(".")>0 || time.value.indexOf(",")>0){ time.value = time.value.replace(/-/g,":"); time.value = time.value.replace(/\./g,":"); time.value = time.value.replace(/,/g,":"); normaliseElem(time); return true; } else if (time.value.length>2 && time.value.length<5){ temp = time.value.substr(0,time.value.length-2); time.value = temp + ":"+ time.value.substr(time.value.length-2); normaliseElem(time); return true; } else { alert(handm); highlightElem(time); return false; } } function checkValidTime(time){ parts = time.value.split(":"); if (parts.length!=2) { return false; } if (parseInt(parts[0],10)<0 || parseInt(parts[0],10)>=24){ return false } if (parseInt(parts[1],10)<0 || parseInt(parts[1],10)>=60 ){ return false; } return true; } function checkTime(time){ if (!checkTimeFormat(time)){ return false; } set12hTime(time); if (!checkValidTime(time)){ alert(invalidtime); highlightElem(time); return false; } else normaliseElem(time); checkEndTime(); } /* * Does nothing at this stage */ function checkInterval() { } function set12hTime(time24h){ if (time24h.id=="end_time"){ var time = document.getElementById("end_12h"); pm = document.getElementById("endPM"); am = document.getElementById("endAM"); } else { var time = document.getElementById("start_12h"); pm = document.getElementById("startPM"); am = document.getElementById("startAM"); } parts = time24h.value.split(":"); hour = parseInt(parts[0], 10); min = parseInt(parts[1], 10); if ((hour >= 12) ){ ampm = pm; } else { ampm = am; } if (hour > 12){ hour = hour - 12; } if (hour == 0) hour = 12; if (hour < 10) hour = "0"+hour; if (min < 10) min = "0"+min; time.value = hour+":"+min; ampm.checked = true; } function set24hTime(time12h){ if (time12h.id=="end_12h"){ time = document.getElementById("end_time"); pm = document.getElementById("endPM"); } else { time = document.getElementById("start_time"); pm = document.getElementById("startPM"); } if (!checkValidTime(time12h)){ alert(invalidtime); highlightElem(time12h); return false; } else { normaliseElem(time12h); parts = time12h.value.split(":"); hour = parseInt(parts[0],10); if (pm.checked) { if (hour < 12) { time.value = (hour+12)+":"+parts[1]; } else { time.value = time12h.value; } } else { if (hour == 0) { time.value = "12:"+parts[1]; } else { time.value = time12h.value; } } } if (!checkValidTime(time)){ alert(invalidtime); highlightElem(time12h); return false; } else { normaliseElem(time12h); return true; } } function checkEndTime() { var noendchecked = document.adminForm.noendtime.checked; start_time = document.getElementById("start_time"); end_time = document.getElementById("end_time"); if (noendchecked){ end_time.value=start_time.value; normaliseElem(endfield); normaliseElem(end_date); } starttimeparts = start_time.value.split(":"); start_date = document.getElementById("publish_up"); startdateparts = start_date.value.split("-"); startDate = new Date(startdateparts[0],parseInt(startdateparts[1],10)-1,startdateparts[2],starttimeparts[0],starttimeparts[1],0); endtimeparts = end_time.value.split(":"); end_date = document.getElementById("publish_down"); enddateparts = end_date.value.split("-"); endDate = new Date(enddateparts[0],parseInt(enddateparts[1],10)-1,enddateparts[2],endtimeparts[0],endtimeparts[1],0); //alert(endDate +" vs "+startDate); endfield = (document.adminForm.view12Hour.checked) ? document.getElementById("end_12h") : end_time; var jevmultiday = document.getElementById('jevmultiday'); if (end_date.value>start_date.value){ jevmultiday.style.display='block'; } else { jevmultiday.style.display='none'; } if (endDate>=startDate){ normaliseElem(endfield); normaliseElem(end_date); return true; } else { highlightElem(end_date); highlightElem(endfield); //alert("end date and time must be after start date and time"); return false; } } function check12hTime(time12h){ if (!checkTimeFormat(time12h)){ return false; } set24hTime(time12h); checkEndTime(); } function checkDates(elem){ forceValidDate(elem); setEndDateWhenNotRepeating(); checkEndTime(); } function setEndDateWhenNotRepeating(){ var norepeat = document.getElementById("NONE"); start_date = document.getElementById("publish_up"); end_date = document.getElementById("publish_down"); startdateparts = start_date.value.split("-"); startDate = new Date(startdateparts[0],parseInt(startdateparts[1],10)-1,startdateparts[2],1,1,0); enddateparts = end_date.value.split("-"); endDate = new Date(enddateparts[0],parseInt(enddateparts[1],10)-1,enddateparts[2],1,1,0); if (startDate>endDate){ end_date.value = start_date.value; normaliseElem(end_date); } } function forceValidDate(elem){ oldDate = new Date(); oldDate = oldDate.dateFromYMD(elem.value); newDate = oldDate.getYMD(); if (newDate!=elem.value) { elem.value = newDate; alert(invalidcorrected); } } function toggleView12Hour(){ if (document.adminForm.view12Hour.checked) { document.getElementById('start_24h_area').style.display="none"; document.getElementById('end_24h_area').style.display="none"; document.getElementById('start_12h_area').style.display="inline"; document.getElementById('end_12h_area').style.display="inline"; } else { document.getElementById('start_24h_area').style.display="inline"; document.getElementById('end_24h_area').style.display="inline"; document.getElementById('start_12h_area').style.display="none"; document.getElementById('end_12h_area').style.display="none"; } } function toggleAMPM(elem) { if (elem=="startAM" || elem=="startPM"){ time12h = document.getElementById("start_12h"); } else { time12h = document.getElementById("end_12h"); } set24hTime(time12h); checkEndTime(); } function toggleAllDayEvent() { var checked = document.adminForm.allDayEvent.checked; if (checked) document.adminForm.noendtime.checked = false; var noendchecked = document.adminForm.noendtime.checked; var starttime = document.adminForm.start_time; var startdate = document.adminForm.publish_up; var endtime = document.adminForm.end_time; var enddate = document.adminForm.publish_down; var spm = document.getElementById("startPM"); var sam = document.getElementById("startAM"); var epm = document.getElementById("endPM"); document.adminForm.noendtime.checked var eam = document.getElementById("endAM"); if (document.adminForm.view12Hour.checked){ hide_start = document.adminForm.start_12h; hide_end = document.adminForm.end_12h; } else { hide_start = starttime; hide_end = endtime; } hide_start12 = document.adminForm.start_12h; hide_end12 = document.adminForm.end_12h; hide_start = starttime; hide_end = endtime; if (checked){ // set 24h fields temp = new Date(); temp = temp.dateFromYMD(startdate.value); //temp = temp.addDays(1); starttime.value="00:00"; starttime.disabled=true; hide_start.disabled=true; hide_start12.disabled=true; sam.disabled=true; spm.disabled=true; var sd = temp.getYMD(); temp = temp.dateFromYMD(enddate.value); var ed = temp.getYMD(); if (ed<sd) { enddate.value = temp.getYMD(); } endtime.value="23:59"; if (!noendchecked){ endtime.disabled=true; hide_end.disabled=true; hide_end12.disabled=true; eam.disabled=true; epm.disabled=true; } } else { // set 24h fields hide_start.disabled=false; hide_start12.disabled=false; starttime.value="08:00"; starttime.disabled=false; sam.disabled=false; spm.disabled=false; if (!noendchecked){ hide_end.disabled=false; hide_end12.disabled=false; endtime.value="17:00"; endtime.disabled=false; var sd = temp.getYMD(); temp = temp.dateFromYMD(enddate.value); var ed = temp.getYMD(); if (ed<sd) { enddate.value = temp.getYMD(); } eam.disabled=false; epm.disabled=false; } else { endtime.value=starttime.value; } } if (document.adminForm.start_12h){ // move to 12h fields set12hTime(starttime); set12hTime(endtime); } } function toggleNoEndTime(){ var checked = document.adminForm.noendtime.checked; if (checked && document.adminForm.allDayEvent.checked) { document.adminForm.allDayEvent.checked = false; toggleAllDayEvent(); } var alldaychecked = document.adminForm.allDayEvent.checked; var endtime = document.adminForm.end_time; var enddate = document.adminForm.publish_down; var starttime = document.adminForm.start_time; var epm = document.getElementById("endPM"); var eam = document.getElementById("endAM"); if (document.adminForm.view12Hour.checked){ hide_end = document.adminForm.end_12h; } else { hide_end = endtime; } hide_end12 = document.adminForm.end_12h; hide_end = endtime; if (checked || alldaychecked){ // set 24h fields endtime.value=starttime.value; endtime.disabled=true; hide_end.disabled=true; hide_end12.disabled=true; eam.disabled=true; epm.disabled=true; checkTime(endtime); } else { // set 24h fields hide_end.disabled=false; hide_end12.disabled=false; //endtime.value="17:00"; endtime.disabled=false; eam.disabled=false; epm.disabled=false; } if (document.adminForm.start_12h){ // move to 12h fields set12hTime(endtime); } } function toggleCountUntil(cu){ inputtypes = new Array("cu_count","cu_until"); for (var i=0;i<inputtypes.length;i++) { inputtype = inputtypes[i]; elem = document.getElementById(inputtype); inputs = elem.getElementsByTagName('input'); for (var e=0;e<inputs.length;e++){ inputelem = inputs[e]; if (inputelem.name!="countuntil"){ if (inputtype==cu){ inputelem.disabled = false; inputelem.parentNode.style.backgroundColor="#ffffff"; } else { inputelem.disabled = true; inputelem.parentNode.style.backgroundColor="#dddddd"; } } } } } function toggleWhichBy(wb) { inputtypes = new Array("byyearday","byweekno","bymonthday","bymonth","byday"); for (var i=0;i<inputtypes.length;i++) { inputtype = inputtypes[i]; elem = document.getElementById(inputtype); inputs = elem.getElementsByTagName('input'); for (var e=0;e<inputs.length;e++){ inputelem = inputs[e]; if (inputelem.name!="whichby"){ if (inputtype==wb){ inputelem.disabled = false; inputelem.parentNode.style.backgroundColor="#ffffff"; } else { inputelem.disabled = true; inputelem.parentNode.style.backgroundColor="#dddddd"; } } } } } function toggleFreq(freq , setup) { var myDiv = document.getElementById('interval_div'); var byyearday = document.getElementById('byyearday'); var byweekno = document.getElementById('byweekno'); var bymonthday = document.getElementById('bymonthday'); var bymonth = document.getElementById('bymonth'); var byday = document.getElementById('byday'); var weekofmonth = document.getElementById('weekofmonth'); var intervalLabel = document.getElementById('interval_label'); switch (freq) { case "NONE": { myDiv.style.display="none"; byyearday.style.display="none"; bymonth.style.display="none"; byweekno.style.display="none"; bymonthday.style.display="none"; byday.style.display="none"; } break; case "YEARLY": { intervalLabel.innerHTML=jevyears; myDiv.style.display="block"; byyearday.style.display="block"; document.getElementById('jevbyd').checked="checked"; toggleWhichBy("byyearday"); bymonth.style.display="none"; byweekno.style.display="none"; bymonthday.style.display="none"; byday.style.display="none"; } break; case "MONTHLY": { intervalLabel.innerHTML=jevmonths; myDiv.style.display="block"; byyearday.style.display="none"; bymonth.style.display="none"; byweekno.style.display="none"; bymonthday.style.display="block"; document.getElementById('jevbmd').checked="checked"; toggleWhichBy("bymonthday"); byday.style.display="block"; weekofmonth.style.display="block"; if (!setup) toggleWeekNums(true); } break; case "WEEKLY": { intervalLabel.innerHTML=jevweeks; myDiv.style.display="block"; byyearday.style.display="none"; bymonth.style.display="none"; byweekno.style.display="none"; bymonthday.style.display="none"; byday.style.display="block"; document.getElementById('jevbd').checked="checked"; toggleWhichBy("byday"); weekofmonth.style.display="none"; // always set week nums false for weekly events toggleWeekNums(false); } break; case "DAILY": { intervalLabel.innerHTML=jevdays; myDiv.style.display="block"; byyearday.style.display="none"; bymonth.style.display="none"; byweekno.style.display="none"; bymonthday.style.display="none"; byday.style.display="none"; document.getElementById('jevbd').checked="checked"; //toggleWhichBy("byday"); weekofmonth.style.display="none"; } break; } } function fixRepeatDates(){ start_time = document.getElementById("start_time"); starttimeparts = start_time.value.split(":"); start_date = document.getElementById("publish_up"); startdateparts = start_date.value.split("-"); startDate = new Date(startdateparts[0],parseInt(startdateparts[1],10)-1,startdateparts[2],0,0,0,0); //alert(startDate); bmd = document.adminForm.bymonthday; if (bmd.value.indexOf(",")<=0) { bmd.value = parseInt(startdateparts[2],10); } byd = document.adminForm.byyearday; byddir = document.adminForm.byd_direction; if (byd.value.indexOf(",")<=0) { yearStart = new Date(startdateparts[0],0,0,0,0,0,0); // count back from jan 1 yearEnd = new Date(Math.round(startdateparts[0])+1,0,1,0,0,0,0); if (byddir.checked){ days = ((yearEnd-startDate)/(24*60*60*1000)); byd.value = parseInt(days,10); } else { days = ((startDate-yearStart)/(24*60*60*1000)); byd.value = parseInt(days,10); } } bmd = document.adminForm.bymonthday; bmddir = document.adminForm.bmd_direction; if (bmd.value.indexOf(",")<=0) { monthStart = new Date(startdateparts[0],parseInt(startdateparts[1],10)-1,0,0,0,0,0); monthEnd = new Date(startdateparts[0],parseInt(startdateparts[1],10),0,0,0,0,0); if (bmddir.checked){ days = 1+monthEnd.getDate()-startDate.getDate(); bmd.value = parseInt(days,10); } else { days = startDate.getDate(); bmd.value = parseInt(days,10); } } bd = document.adminForm["weekdays[]"]; for(var day=0;day<bd.length;day++){ bd[day].checked=false; } bd[startDate.getDay()].checked=true; unt = document.getElementById('until'); unt.value = start_date.value; } function toggleWeekNums(newstate){ wn = document.adminForm["weeknums[]"]; for(var w=0;w<wn.length;w++){ wn[w].checked=newstate; } } /* function setupIE6(){ if (window.ie6) { var adminForm = document.getElementById('jevadminform'); adminForm.style.border="none"; adminForm.style.borderSpacing="0px"; var editor = document.getElementById('jeveditor'); editor.style.overflow = 'auto'; editor.style.width="550px"; } } window.addEvent('domready',function(){setupIE6();}); */ if (window.webkit) { window.addEvent('domready', function(){ setTimeout("fixTabbedWebkit()",100); }); } function fixTabbedWebkit(){ if (typeof(tinyMCE)!="undefined"){ tinyMCE.execCommand('mceRemoveControl', false, "jevcontent"); tinyMCE.execCommand('mceAddControl', false, "jevcontent"); } }