/* CalDavZAP - the open source CalDAV Web Client Copyright (C) 2011-2015 Jan Mate <jan.mate@inf-it.com> Andrej Lezo <andrej.lezo@inf-it.com> Matej Mihalik <matej.mihalik@inf-it.com> This program is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for more details. You should have received a copy of the GNU Affero General Public License along with this program. If not, see <http://www.gnu.org/licenses/>. */ function updateTodoFormDimensions(setHeight) { $('#CATodo').css('width',''); $('#CATodo').css('width',$('#todo_details_template').css('width')); if(setHeight) { $('#CATodo').css('height',''); $('#CATodo').css('height',$('#todo_details_template').css('height')); } } function updateEventFormDimensions(setHeight) { $('#CAEvent').css('width',''); $('#CAEvent').css('width',$('#event_details_template').css('width')); if(setHeight) { $('#CAEvent').css('height',''); $('#CAEvent').css('height',$('#event_details_template').css('height')); } } function setFormPosition(jsEvent, confirmRepeat) { var position_x, position_y, dist_x, dist_y; $('#event_details_template').css('max-height',''); if(jsEvent) { if(jsEvent.pageX<=($('#main').width()/2)) { position_v='left'; dist_x=jsEvent.pageX; } else { position_v='right'; dist_x=$('body').width()-jsEvent.pageX; } /*if(jsEvent.pageY<=($('#main').height()/2)) { position_h='top'; dist_y=jsEvent.pageY; } else { position_h='top'; dist_y=jsEvent.pageY-$('#event_details_template').height(); }*/ position_h='top'; dist_y=Math.max(29, jsEvent.pageY-(confirmRepeat ? $('#CAEvent').height() : $('#event_details_template').height())); } else { position_v='right'; position_h='top'; dist_x=25; dist_y=29; } $('#CAEvent').css('left',''); $('#CAEvent').css('right',''); $('#CAEvent').css('top',''); $('#CAEvent').css('bottom',''); $('#CAEvent').css(position_v, dist_x); $('#CAEvent').css(position_h, dist_y); $('#event_details_template').css('max-height', $('#main').height()-dist_y+20+'px'); $('#CAEvent').css('max-height', $('#main').height()-dist_y+20+'px'); } function setTodoPosition(jsEvent) { var dist, pointY=0; $('#todo_details_template').css('max-height',''); $('#CATodo').css('max-height',''); if(jsEvent!=undefined) { if(jsEvent.pageY!=undefined) pointY=jsEvent.pageY; else pointY=jsEvent.clientY; } if(jsEvent) { /*if((pointY)+$('#todo_details_template').height()<$(window).height()) dist=jsEvent.pageY; else dist=pointY-$('#todo_details_template').height();*/ dist=Math.max(25, jsEvent.pageY-$('#todo_details_template').height()); } else dist=25; $('#CATodo').css('left',''); $('#CATodo').css('right',''); $('#CATodo').css('top',''); $('#CATodo').css('bottom',''); $('#CATodo').css('top', dist); $('#todo_details_template').css('right', 0); $('#CATodo').css('right', 25); $('#todo_details_template').css('max-height', $('#main').height()-dist+20+'px'); $('#CATodo').css('max-height', $('#main').height()-dist+20+'px'); } function showTimezones(selTimezone, todoSelector) { if(!globalSettings.timezonesupport.value) return false; var select=$('#timezone'+todoSelector); select.empty(); var isFirst=false; for(var izone in timezoneKeys) { if(timeZonesEnabled.indexOf(timezoneKeys[izone])==-1) continue; if(!isNaN(izone)) { var tmp=null; if(!isFirst) { tmp=$('<option>'); tmp.attr('data-type','local'); isFirst=true; if(!(selTimezone in timezones) && selTimezone!= '' && selTimezone!= 'local' && (globalSettings.removeunknowntimezone.value == null || !globalSettings.removeunknowntimezone.value)) { tmp.text(localization[globalInterfaceLanguage].customTimezone); tmp.attr('value','custom'); if((todoSelector=='PickerTODO' || todoSelector=='Picker') && globalSettings.timezone.value != null) tmp.attr('value',globalSettings.timezone.value); select.append(tmp); } } tmp=$('<option>'); tmp.attr('data-type',timezoneKeys[izone]); if(izone==0) { tmp.text(localization[globalInterfaceLanguage].localTime); tmp.attr('value','local'); select.append(tmp); } else { tmp.text(timezoneKeys[izone]); tmp.attr('value',timezoneKeys[izone]); select.append(tmp); } } } if(!selTimezone && typeof globalSessionTimeZone!='undefined' && globalSessionTimeZone) selTimezone=globalSessionTimeZone; if(selTimezone in timezones) select.val(selTimezone); else { if((globalSettings.removeunknowntimezone.value != null && globalSettings.removeunknowntimezone.value) || selTimezone == 'local') select.val('local'); else select.val('custom'); } } function showTodoForm(todo, mod, repeatOne, confirmRepeat) { $('#CATodo').css('display','none'); $('#todo_details_template').remove(); $('#CATodo').html(cleanVtodoTemplate); setFirstDayTodo(); bindTodoForm(); $('#noteTODO').autosize({defaultStyles: {height: '64', overflow: '', 'overflow-y': '', 'word-wrap': '', resize: 'none'}, callback: function(){checkTodoFormScrollBar();}}); $("#showTODO").val(''); $("#uidTODO").val(''); $("#etagTODO").val(''); $("#vcalendarUIDTODO").val(''); globalPrevDate=''; globalObjectLoading=true; var color=''; if(todo==null) { var activeCollection = $('#ResourceCalDAVTODOList').find('.resourceCalDAVTODO_item.resourceCalDAV_item_selected'); if(activeCollection.length>0 && !globalResourceCalDAVList.getTodoCollectionByUID(activeCollection.attr('data-id')).permissions.read_only) color=rgbToHex(activeCollection.children('.resourceCalDAVColor').css('background-color')); } else color=globalResourceCalDAVList.getTodoCollectionByUID(todo.res_id).ecolor; if(confirmRepeat) { $('#showTODO').val(todo.id); $('#repeatTodo').val(true); $('#CATodo').show(); $('#repeatConfirmBoxTODO').css('visibility', 'visible'); if(todo.repeatCount!='' && todo.repeatCount == 1 || globalSettings.appleremindersmode.value) { $('#editFutureTODO').css('display','none'); if($('#editFutureTODO').next('br').length>0) $('#editFutureTODO').next().remove(); } else if($('#editFutureTODO').css('display')=='none') { $('#editFutureTODO').css('display','block'); if($('#editFutureTODO').next('br').length==0) $('#editFutureTODO').after('<br/>') } $('#editAllTODO, #editOnlyOneTODO, #editFutureTODO').click(function(){ if(globalCalTodo) { if($(this).attr('id')=='editOnlyOneTODO') showTodoForm(globalCalTodo, 'show', 'editOnly'); else if($(this).attr('id')=='editAllTODO') showTodoForm(globalCalTodo, 'show', ''); else if($(this).attr('id')=='editFutureTODO') showTodoForm(globalCalTodo, 'show', 'futureOnly'); $('#repeatConfirmBoxContentTODO').html(''); $('#repeatConfirmBoxTODO').css('visibility', 'hidden'); $('#todo_details_template').css('visibility', 'visible'); $('#AlertDisabler').fadeOut(globalEditorFadeAnimation); } }); $('#repeatConfirmBoxContentTODO').html('<b>'+todo.title+"</b> "+localization[globalInterfaceLanguage].repeatBoxContentTODO); $('#repeatConfirmBoxQuestionTODO').html(localization[globalInterfaceLanguage].repeatBoxQuestionTODO); $('#todo_details_template').css('visibility', 'hidden'); globalObjectLoading=false; $('#CATodo').show(200, function(){ $('#todoColor').css('background-color',color); checkTodoFormScrollBar(); $('#todoForm').scrollTop(0); }); return true; } if(mod=='show' && repeatOne=='futureOnly') { if(todo.start!=null) $('#futureStartTODO').val(todo.realRepeatCount+';'+todo.start); else if(todo.end!=null) $('#futureStartTODO').val(todo.realRepeatCount+';'+todo.end); } if(mod=='show') { var checkDataStart=''; if(todo.start) checkDataStart=$.fullCalendar.formatDate(todo.start, "yyyyMMdd'T'HHmmss'Z'"); if($('.fc-event-selected').length>0 && $('.fc-event-selected').attr("data-start")!=checkDataStart) $('.fc-view-todo').addClass('fc-view-trans'); else $('.fc-view-todo').removeClass('fc-view-trans'); } if(repeatOne=='editOnly') if(todo!=null && (todo.type || todo.rec_id)) { var eventsSorted=jQuery.grep(globalEventList.displayTodosArray[todo.res_id],function(e){if(e.id==todo.id)return true}).sort(repeatStartCompare); if(eventsSorted.indexOf(todo)!=-1) { if(eventsSorted.indexOf(todo)<(eventsSorted.length-1)) showTodoNextNav(); if(eventsSorted.indexOf(todo)!=0) showTodoPrevNav(); var uncomplete=0; for(var ij=(eventsSorted.indexOf(todo)+1); ij<eventsSorted.length; ij++) if(eventsSorted[ij].status!='COMPLETED') uncomplete++; if(uncomplete>0 && eventsSorted.indexOf(todo)<(eventsSorted.length-1)) showTodoNextNav(true); var uncomplete=0; for(var ij=(eventsSorted.indexOf(todo)-1); ij>=0; ij--) if(eventsSorted[ij].status!='COMPLETED') uncomplete++; if(uncomplete>0 && eventsSorted.indexOf(todo)!=0) showTodoPrevNav(true); } } if(todo!=null) { var prior=parseInt(todo.priority,10); if(prior==5) $('#priority_TODO').val(5); else if(prior>5 && prior<10) { $('#priority_TODO [data-type="priority_TODO_low"]').attr('value',prior) $('#priority_TODO').val(prior); } else if(prior<5 && prior>0) { $('#priority_TODO [data-type="priority_TODO_high"]').attr('value',prior) $('#priority_TODO').val(prior); } else $('#priority_TODO').val(0); } if(todo!=null) var sliderValue=todo.percent; else sliderValue=0; var cals=globalResourceCalDAVList.sortedTodoCollections; var todoCalendarObj = $('#todo_calendar'); var calSelected = $('.resourceCalDAVTODO_item.resourceCalDAV_item_selected').attr('data-id'); for(var i=0;i<cals.length;i++) { if( cals[i].uid!=undefined && ((todo!=null && todo.res_id==cals[i].uid) || (cals[i].makeLoaded && !cals[i].permissions_read_only))) { todoCalendarObj.append(new Option(cals[i].displayValue,cals[i].uid)); } } if(mod!='new') fullVcalendarToTodoData(todo,true); else CalDAVeditor_cleanup('form'); if(mod=='new') { $('#todoInEdit').val('true'); $('#deleteTODO').hide(); $('#resetTODO').hide(); $('#editTODO').hide(); $('#duplicateTODO').hide(); $('#editOptionsButtonTODO').hide(); $('#showTODO').val(''); if($('#ResourceCalDAVTODOList').find('.resourceCalDAVTODO_item.resourceCalDAV_item_selected').length>0 && $('#todo_calendar').find('option[value="'+$('#ResourceCalDAVTODOList').find('.resourceCalDAVTODO_item.resourceCalDAV_item_selected').attr("data-id")+'"]').length>0) $('#todo_calendar').val($('#ResourceCalDAVTODOList').find('.resourceCalDAVTODO_item.resourceCalDAV_item_selected').attr("data-id")); else $('#todo_calendar').val('choose'); //$('[data-type="name_TODO"]').attr('placeholder', localization[globalInterfaceLanguage].pholderNewTODO); showTimezones('', 'TODO'); $('.timezone_rowTODO').css('display','none') } $('#CATodo').show(); $('#todo_details_template').show(); if(globalSettings.appleremindersmode.value) { $('[data-type="todo_type_start"], [data-type="todo_type_both"]').remove(); if(typeof globalSettings.appleremindersmode.value == 'string' && globalSettings.appleremindersmode.value.toLowerCase()=='ios6') { $('#url_trTODO').hide(); $('#location_row_TODO').hide(); } $('[data-type="STATUS_CANCELLED_TODO"],[data-type="STATUS_IN-PROCESS_TODO"]').remove(); } if(mod=='show') { $('#showTODO').val(todo.id); $('#todoDetailsTable :input[type!="button"]').prop('disabled', true); if(todo.timeZone) showTimezones(todo.timeZone,'TODO'); else showTimezones('local','TODO'); if(todo.etag!='') $('#todo_calendar').val(todo.res_id); $('#nameTODO').val(todo.title); if(todo.status=='CANCELLED') $('#nameTODO').addClass('title_cancelled'); if(todo.start!=null || todo.end!=null) { if((!globalSettings.appleremindersmode.value) && ((todo.start!=null && todo.end!=null && repeatOne!='') || (!todo.type && todo.realStart!='' && todo.realEnd!='' && repeatOne=='') || (todo.type && todo.repeatStart!='' && todo.repeatEnd!='' && repeatOne==''))) $('#todo_type').val('both'); else if((!globalSettings.appleremindersmode.value) && ((todo.start!=null && todo.end==null && repeatOne!='') || (!todo.type && todo.realStart!='' && todo.realEnd=='' && repeatOne=='') || (todo.type && todo.repeatStart!='' && todo.repeatEnd=='' && repeatOne==''))) $('#todo_type').val('start'); else $('#todo_type').val('due'); if(globalSettings.timezonesupport.value) $('.timezone_rowTODO').show(); } else { $('#todo_type').val('none'); $('.timezone_rowTODO').css('display','none'); } if(todo.start!='' && todo.start!=null) { var date, year, month, day, hour, minute; if(todo.realStart) date=$.fullCalendar.parseDate(todo.realStart); else date=$.fullCalendar.parseDate(todo.start); if($('#showTODO').val()!='' && todo.repeatStart!='' && repeatOne=='') date=todo.repeatStart; else if($('#showTODO').val()!='' && todo.repeatStart=='' && repeatOne=='' && todo.type) date=''; if(date) { (date.getHours())<10 ? (hour='0'+(date.getHours())) : (hour=date.getHours()); (date.getMinutes())<10 ? (minute='0'+(date.getMinutes())) : (minute=date.getMinutes()); var formattedDate=$.datepicker.formatDate(globalSettings.datepickerformat.value, date); $('#date_fromTODO').val(formattedDate); if($('#todo_type').val=='both') globalPrevDate = new Date(date.getTime()); $('#time_fromTODO').val($.fullCalendar.formatDate(date, (globalSettings.ampmformat.value ? 'hh:mm TT' : 'HH:mm'))); } } if(todo.end!='' && todo.end!=null) { if(todo.realEnd) date=$.fullCalendar.parseDate(todo.realEnd); else date=$.fullCalendar.parseDate(todo.end); if($('#showTODO').val()!='' && todo.repeatEnd!='' && repeatOne=='') date=todo.repeatEnd; else if($('#showTODO').val()!='' && todo.repeatEnd=='' && repeatOne=='' && todo.type) date=''; if(date) { (date.getHours())<10 ? (hour='0'+(date.getHours())) : (hour=date.getHours()); (date.getMinutes())<10 ? (minute='0'+(date.getMinutes())) : (minute=date.getMinutes()); var formattedDate_to=$.datepicker.formatDate(globalSettings.datepickerformat.value, date); $('#date_toTODO').val(formattedDate_to); $('#time_toTODO').val($.fullCalendar.formatDate(date, (globalSettings.ampmformat.value ? 'hh:mm TT' : 'HH:mm'))); } } if(repeatOne=='editOnly' && todo.rec_id=='') { if(todo.repeatStart!='' && todo.start) { if(typeof todo.realStart=='object') $('#recurrenceIDTODO').val($.fullCalendar.formatDate(todo.realStart, "yyyyMMdd'T'HHmmss")); else if(typeof todo.realStart =='string') $('#recurrenceIDTODO').val($.fullCalendar.formatDate($.fullCalendar.parseDate(todo.realStart), "yyyyMMdd'T'HHmmss")); } else if(todo.repeatEnd!='' && todo.end) { if(typeof todo.realEnd =='object') $('#recurrenceIDTODO').val($.fullCalendar.formatDate(todo.realEnd, "yyyyMMdd'T'HHmmss")); else if(typeof todo.realEnd =='string') $('#recurrenceIDTODO').val($.fullCalendar.formatDate($.fullCalendar.parseDate(todo.realEnd), "yyyyMMdd'T'HHmmss")); } } else $('#recurrenceIDTODO').val(todo.rec_id); if(todo.rec_id || repeatOne=='editOnly' || repeatOne=='futureOnly') { var savedEvs=jQuery.grep(globalEventList.displayTodosArray[todo.res_id],function(e){if(e.id==todo.id && (e.repeatCount<2 || !e.repeatCount))return true}); if(savedEvs.length>1 || (repeatOne=='futureOnly' && todo.repeatCount>1) || (repeatOne=='editOnly' && todo.type!='')) { $('#deleteTODO').attr('onclick',"$('#todoInEdit').val('false');updateEventFormDimensions(true);$('#todoLoader').show();saveTodo(true);"); } } if(todo.completedOn!='' && todo.completedOn!=null) { var date, year, month, day, hour, minute; // (todo.completedOn.getHours())<10 ? (hour='0'+(todo.completedOn.getHours())) : (hour=todo.completedOn.getHours()); // (todo.completedOn.getMinutes())<10 ? (minute='0'+(todo.completedOn.getMinutes())) : (minute=todo.completedOn.getMinutes()); if(typeof todo.completedOn=='string') date = $.fullCalendar.parseDate(todo.completedOn); else if(typeof todo.completedOn=='object') date=new Date(todo.completedOn.getTime()); var formattedDate=$.datepicker.formatDate(globalSettings.datepickerformat.value, date); $('#completedOnDate').val(formattedDate); $('#completedOnTime').val($.fullCalendar.formatDate(date, (globalSettings.ampmformat.value ? 'hh:mm TT' : 'HH:mm'))); $('.completedOnTr').show(); } var alarmDate=''; var alarmIterator=0; for(alarmIterator=0;alarmIterator<todo.alertTime.length;alarmIterator++) { if(alarmIterator>0) todo_alert_add(alarmIterator); $(".alertTODO[data-id="+(alarmIterator+1)+"]").val("message"); if(todo.alertTime[alarmIterator].charAt(0)=='-' || todo.alertTime[alarmIterator].charAt(0)=='+') { var alVal=parseInt(todo.alertTime[alarmIterator].substring(1, todo.alertTime[alarmIterator].length-1)); var alString=''; if(todo.alertTime[alarmIterator].charAt(todo.alertTime[alarmIterator].length-1)=="W") { alVal=alVal/1000/60/60/24/7; alString='weeks'; } else if(todo.alertTime[alarmIterator].charAt(todo.alertTime[alarmIterator].length-1)=="D") { alVal=alVal/1000/60/60/24; alString='days'; } else if(todo.alertTime[alarmIterator].charAt(todo.alertTime[alarmIterator].length-1)=="H") { alVal=alVal/1000/60/60; alString='hours'; } else if(todo.alertTime[alarmIterator].charAt(todo.alertTime[alarmIterator].length-1)=="M") { alVal=alVal/1000/60; alString='minutes'; } else if(todo.alertTime[alarmIterator].charAt(todo.alertTime[alarmIterator].length-1)=="S") { alVal=alVal/1000; alString='seconds'; } if(todo.alertTime[alarmIterator].charAt(0)=='-') alString+="_before"; else alString+="_after" $(".alert_message_detailsTODO[data-id="+(alarmIterator+1)+"]").val(alString); $(".before_after_inputTODO[data-id="+(alarmIterator+1)+"]").val(alVal); $('.alert_detailsTODO[data-id="'+(alarmIterator+1)+'"]').show(); $('.alert_message_dateTODO[data-id="'+(alarmIterator+1)+'"]').show(); $('.before_after_inputTODO[data-id="'+(alarmIterator+1)+'"]').show(); $(".message_date_inputTODO[data-id="+(alarmIterator+1)+"]").hide(); $(".message_time_inputTODO[data-id="+(alarmIterator+1)+"]").hide(); } else { alarmDate=$.fullCalendar.parseDate(todo.alertTime[alarmIterator]); (alarmDate.getHours())<10 ? (hour='0'+(alarmDate.getHours())) : (hour=alarmDate.getHours()); (alarmDate.getMinutes())<10 ? (minute='0'+(alarmDate.getMinutes())) : (minute=alarmDate.getMinutes()); $(".alert_message_detailsTODO[data-id="+(alarmIterator+1)+"]").val('on_date'); var formattedAlarmDate=$.datepicker.formatDate(globalSettings.datepickerformat.value, alarmDate); $(".message_date_inputTODO[data-id="+(alarmIterator+1)+"]").val(formattedAlarmDate); $(".message_time_inputTODO[data-id="+(alarmIterator+1)+"]").val($.fullCalendar.formatDate(alarmDate, (globalSettings.ampmformat.value ? 'hh:mm TT' : 'HH:mm'))); $('.alert_detailsTODO[data-id="'+(alarmIterator+1)+'"]').show(); $('.alert_message_dateTODO[data-id="'+(alarmIterator+1)+'"]').show(); } } if(alarmIterator>0) todo_alert_add(alarmIterator); if(todo.type!='' && repeatOne!='editOnly' && todo.ruleString.match(vCalendar.re['recurCaldav'])!=null) { var ruleString=todo.vcalendar.match(vCalendar.pre['contentline_RRULE2'])[0].match(vCalendar.pre['contentline_parse'])[4]; if(ruleString.indexOf('BYMONTH=')!=-1 || ruleString.indexOf('BYMONTHDAY=')!=-1 || ruleString.indexOf('BYDAY=')!=-1) { var pars=ruleString.split(';'); if(pars.indexElementOf('BYMONTH=')!=-1 && pars.indexElementOf('BYMONTHDAY=')==-1 && pars.indexElementOf('BYDAY=')==-1) pars[pars.length] = "BYMONTHDAY="+todo.start.getDate(); if(todo.type=="DAILY") { $("#repeat_TODO option[value='DAILY']").prop('selected', true); $('#repeat_interval_TODO [data-type="txt_interval"]').text(localization[globalInterfaceLanguage].repeatDays); } else if(todo.type=="WEEKLY") { $("#repeat_TODO option[value='CUSTOM_WEEKLY']").prop('selected', true); $('#repeat_interval_TODO [data-type="txt_interval"]').text(localization[globalInterfaceLanguage].repeatWeeks); for(var ri=0;ri<pars.length;ri++) { if(pars[ri].indexOf("BYDAY=")!=-1) { var byDay=pars[ri].split('=')[1]; byDay=byDay.replace(/\d*MO/,1).replace(/\d*TU/,2).replace(/\d*WE/,3).replace(/\d*TH/,4).replace(/\d*FR/,5).replace(/\d*SA/,6).replace(/\d*SU/,0).split(','); for(var rj=0;rj<byDay.length;rj++) { if(!isNaN(parseInt(byDay[rj],10))) $('#week_custom_TODO .customTable td[data-type="'+byDay[rj]+'"]').addClass('selected'); } } } $('#week_custom_TODO').show(); } else if(todo.type=="MONTHLY") { $("#repeat_TODO option[value='CUSTOM_MONTHLY']").prop('selected', true).change(); $('#repeat_interval_TODO [data-type="txt_interval"]').text(localization[globalInterfaceLanguage].repeatMonths); for(var ri=0;ri<pars.length;ri++) { if(pars[ri].indexOf("BYDAY=")!=-1) { var byDay=pars[ri].split('=')[1]; byDay=byDay.split(','); for(var rj=0;rj<byDay.length;rj++) { var checkString = byDay[rj].match(vCalendar.pre['+/-number']); byDay[rj] = byDay[rj].replace(checkString[0],''); if(!isNaN(parseInt(checkString[0],10))) { switch(parseInt(checkString[0],10)) { case 1: $('#repeat_month_custom_select_TODO').val('first'); break; case 2: $('#repeat_month_custom_select_TODO').val('second'); break; case 3: $('#repeat_month_custom_select_TODO').val('third'); break; case 4: $('#repeat_month_custom_select_TODO').val('fourth'); break; case 5: $('#repeat_month_custom_select_TODO').val('fifth'); break; case -1: $('#repeat_month_custom_select_TODO').val('last'); break; default: $('#repeat_month_custom_select_TODO').val('every'); break; } $('#repeat_month_custom_select2_TODO').val(byDay[rj]); } } } else if(pars[ri].indexOf("BYMONTHDAY=")!=-1) { $('#repeat_month_custom_select_TODO').val('custom').change(); var byMonthDay=pars[ri].split('=')[1]; byMonthDay=byMonthDay.split(','); for(var rj=0; rj<byMonthDay.length;rj++) { if(parseInt(byMonthDay[rj],10)==-1) { $('#repeat_month_custom_select_TODO').val('last').change(); $('#repeat_month_custom_select2_TODO').val("DAY"); } else $('#month_custom2_TODO .customTable td[data-type="'+(parseInt(byMonthDay[rj],10))+'"]').addClass('selected'); } } } } else if(todo.type=="YEARLY") { $("#repeat_TODO option[value='CUSTOM_YEARLY']").prop('selected', true).change(); $('#repeat_interval_TODO [data-type="txt_interval"]').text(localization[globalInterfaceLanguage].repeatYears); var isMonthDay=false; for(var ri=0;ri<pars.length;ri++) { if(pars[ri].indexOf("BYDAY=")!=-1) { var byDay=pars[ri].split('=')[1]; byDay=byDay.split(','); for(var rj=0;rj<byDay.length;rj++) { var checkString = byDay[rj].match(vCalendar.pre['+/-number']); byDay[rj] = byDay[rj].replace(checkString[0],''); if(!isNaN(parseInt(checkString[0],10))) { switch(parseInt(checkString[0],10)) { case 1: $('#repeat_year_custom_select1_TODO').val('first'); break; case 2: $('#repeat_year_custom_select1_TODO').val('second'); break; case 3: $('#repeat_year_custom_select1_TODO').val('third'); break; case 4: $('#repeat_year_custom_select1_TODO').val('fourth'); break; case 5: $('#repeat_year_custom_select1_TODO').val('fifth'); break; case -1: $('#repeat_year_custom_select1_TODO').val('last'); break; default: $('#repeat_year_custom_select1_TODO').val('every'); break; } $('#repeat_year_custom_select2_TODO').val(byDay[rj]); } } } else if(pars[ri].indexOf("BYMONTHDAY=")!=-1) { $('#repeat_year_custom_select1_TODO').val('custom').change() var byMonthDay=pars[ri].split('=')[1]; byMonthDay=byMonthDay.split(','); for(var rj=0; rj<byMonthDay.length;rj++) { if(parseInt(byMonthDay[rj],10)==-1) { $('#repeat_year_custom_select1_TODO').val('last').change(); $('#repeat_year_custom_select2_TODO').val("DAY"); } else $('#year_custom1_TODO .customTable td[data-type="'+(parseInt(byMonthDay[rj],10))+'"]').addClass('selected'); } isMonthDay=true; } else if(pars[ri].indexOf("BYMONTH=")!=-1) { var byMonth=pars[ri].split('=')[1]; byMonth=byMonth.split(','); for(var rj=0; rj<byMonth.length;rj++) $('#year_custom3_TODO .customTable td[data-type="'+(parseInt(byMonth[rj],10)-1)+'"]').addClass('selected'); } } } if(todo.after=='' && todo.untilDate=='') $("#repeat_end_details_TODO option[value='never']").prop('selected', true); else if(todo.after!='') { $("#repeat_end_details_TODO option[value='after']").prop('selected', true); $('#repeat_end_after_TODO').val(todo.after); } else if(todo.untilDate!='') { date=$.fullCalendar.parseDate(todo.untilDate); $("#repeat_end_details_TODO option[value='on_date']").prop('selected', true); var formattedRepeatDate=$.datepicker.formatDate(globalSettings.datepickerformat.value, date); $('#repeat_end_date_TODO').val(formattedRepeatDate); } $('#repeat_interval_detail_TODO').val(todo.interval); $('#repeat_interval_TODO').show(); if(todo.byDay.length>0) { var businessArray=new Array(); if(globalSettings.weekenddays.value.length>0) for(var i=0;i<7;i++) if(globalSettings.weekenddays.value.indexOf(i)==-1) businessArray[businessArray.length]=i+''; var businessCount=0; var weekendCount=0; for(var i=0;i<byDay.length;i++) { if(businessArray.indexOf(byDay[i])!=-1) businessCount++; if(globalSettings.weekenddays.value.indexOf(parseInt(byDay[i],10))!=-1) weekendCount++; } if(businessArray.length>0 && businessArray.length==businessCount) { $("#repeat_TODO option[value='BUSINESS']").prop('selected', true); $('#repeat_interval_TODO').hide(); $('#week_custom_TODO').hide(); } else if(globalSettings.weekenddays.value.length>0 && globalSettings.weekenddays.value.length==weekendCount) { $("#repeat_TODO option[value='WEEKEND']").prop('selected', true); $('#repeat_interval_TODO').hide(); $('#week_custom_TODO').hide(); } } } else { if(todo.type=="DAILY") { $("#repeat_TODO option[value='DAILY']").prop('selected', true); $('#repeat_interval_TODO [data-type="txt_interval"]').text(localization[globalInterfaceLanguage].repeatDays); } else if(todo.type=="WEEKLY") { $("#repeat_TODO option[value='WEEKLY']").prop('selected', true); $('#repeat_interval_TODO [data-type="txt_interval"]').text(localization[globalInterfaceLanguage].repeatWeeks); } else if(todo.type=="MONTHLY") { $("#repeat_TODO option[value='MONTHLY']").prop('selected', true); $('#repeat_interval_TODO [data-type="txt_interval"]').text(localization[globalInterfaceLanguage].repeatMonths); } else if(todo.type=="YEARLY") { $("#repeat_TODO option[value='YEARLY']").prop('selected', true); $('#repeat_interval_TODO [data-type="txt_interval"]').text(localization[globalInterfaceLanguage].repeatYears); } if(todo.after=='' && todo.untilDate=='') $("#repeat_end_details_TODO option[value='never']").prop('selected', true); else if(todo.after!='') { $("#repeat_end_details_TODO option[value='after']").prop('selected', true); $('#repeat_end_after_TODO').val(todo.after); } else if(todo.untilDate!='') { date=$.fullCalendar.parseDate(todo.untilDate); $("#repeat_end_details_TODO option[value='on_date']").prop('selected', true); var formattedRepeatDate=$.datepicker.formatDate(globalSettings.datepickerformat.value, date); $('#repeat_end_date_TODO').val(formattedRepeatDate); } $('#repeat_interval_detail_TODO').val(todo.interval); $('#repeat_interval_TODO').show(); $('#repeatTodo').val(true); } } else if(todo.type!='' && repeatOne!='editOnly') { var cu_opt = new Option(localization[globalInterfaceLanguage].customRepeat, todo.ruleString, false, true); cu_opt.attr('data-type','custom_repeat'); $('#repeat_TODO').append(cu_opt); } else $('#repeatTodo').val(false); if(todo.start!=null || todo.end!=null) { if(globalSettings.timezonesupport.value) $('.timezone_rowTODO').show() } else $('.timezone_rowTODO').css('display', 'none'); if(todo.status!='') $('#statusTODO').find('option[value='+todo.status+']').prop('selected', true); $('#noteTODO').val(todo.note).trigger('autosize.resize'); if(todo.classType!='') $('#typeTODO').val(todo.classType.toLowerCase()); else $('#typeTODO').val('public'); if(todo!=null && mod!='new') { var uidArray = todo.id.match(vCalendar.pre['uidParts']); if(decodeURIComponent(uidArray[4]).indexOf(uidArray[2])==-1) $('.row_typeTODO').css('display','none'); } $('#uidTODO').val(todo.id); $('#url_TODO').val(todo.url); $('#location_TODO').val(todo.location); $('#etagTODO').val(todo.etag); $('#vcalendarHashTODO').val(hex_sha256(todo.vcalendar)); var stringUIDcurrent=todo.vcalendar.match(vCalendar.pre['contentline_UID']); if(stringUIDcurrent!=null) stringUIDcurrent=stringUIDcurrent[0].match(vCalendar.pre['contentline_parse'])[4]; if(stringUIDcurrent) $('#vcalendarUIDTODO').val(stringUIDcurrent); } if($('#todo_type').val()=='start') { $('.dateTrFromTODO').show(); $('.dateTrToTODO').hide(); } else if($('#todo_type').val()=='due') { $('.dateTrToTODO').show(); $('.dateTrFromTODO').hide(); } else if($('#todo_type').val()=='both') { $('.dateTrToTODO').show(); $('.dateTrFromTODO').show(); } else { $('.dateTrToTODO').hide(); $('.dateTrFromTODO').hide(); $('#repeat_row_TODO').hide(); } if($('#repeat_TODO option:selected').attr('data-type')!="repeat_no-repeat" && $('#repeat_TODO option:selected').attr('data-type')!="custom_repeat") $('#repeat_details_TODO').show(); if($('#repeat_end_details_TODO option:selected').attr('data-type')=="repeat_details_on_date") { $('#repeat_end_after_TODO').hide(); $('#repeat_end_date_TODO').show(); } if($('#repeat_end_details_TODO option:selected').attr('data-type')=="repeat_details_after") { $('#repeat_end_after_TODO').show(); $('#repeat_end_date_TODO').hide(); } if($('#repeat_end_details_TODO option:selected').attr('data-type')=="repeat_details_never") { $('#repeat_end_after_TODO').hide(); $('#repeat_end_date_TODO').hide(); } if(mod=='show') { if($('#ResourceCalDAVTODOList').find('[data-id="'+todo.res_id+'"]').hasClass("resourceCalDAV_item_ro")) { $('#editTODO').hide(); $('#duplicateTODO').hide(); $('#editOptionsButtonTODO').hide(); } $('#saveTODO').hide(); $('#resetTODO').hide(); $('#deleteTODO').hide(); $('#todoDetailsTable :input[type!="button"]').prop('disabled', true); $('#todoDetailsTable :input[type="text"]').prop('readonly', true); $('#todoDetailsTable textarea').prop('readonly', true); $('#percentageSlider').slider({disabled: true}); /*************************** BAD HACKS SECTION ***************************/ // here we fix the cross OS/cross broser problems (unfixable in pure CSS) if($.browser.webkit && !!window.chrome) /* Chrome */ { if(navigator.platform.toLowerCase().indexOf('win')==0) /* Windows version */ { $('#todo_details_template').find('input').css('text-indent', '2px'); $('#todo_details_template').find('select').css({'padding-left': '0px', 'padding-right': '13px'}); } else /* non-Windows version */ $('#todo_details_template').find('input').css('text-indent', '1px'); } else if($.browser.safari) { $('#todo_details_template').find('textarea').addClass('safari_hack'); $('#todo_details_template').find('input').addClass('safari_hack'); } else if($.browser.msie) /* IE */ { if(parseInt($.browser.version, 10)==10) /* IE 10 (because there are no more conditional comments) */ { $('#todo_details_template').find('select').css({'padding-top': '1px', 'padding-left': '0px', 'padding-right': '0px'}); $('#todo_details_template').find('textarea').css('padding-top', '3px'); $('#todo_details_template').find('input[type=button]').css('padding-top', '2px'); } } if($.browser.msie || $.browser.mozilla) { var newSVG=$(SVG_select_dis).attr('data-type', 'select_icon').css({'pointer-events': 'none', 'z-index': '1', 'display': 'inline', 'margin-left': '-22px', 'vertical-align': 'top', 'background-color': '#ffffff'}); // background-color = stupid IE9 bug $('#todo_details_template').find('svg[data-type="select_icon"]').replaceWith($('<div>').append($(newSVG).clone()).html()); } /*************************** END OF BAD HACKS SECTION ***************************/ } if(repeatOne=='editOnly' || $('#recurrenceIDTODO').val()!='') { $('#repeat_TODO').parent().parent().css('display', 'none'); $('#week_custom_TODO').css('display', 'none'); $('#month_custom1_TODO').css('display', 'none'); $('#month_custom2_TODO').css('display', 'none'); $('#year_custom1_TODO').css('display', 'none'); $('#year_custom2_TODO').css('display', 'none'); $('#year_custom3_TODO').css('display', 'none'); $('#repeat_details_TODO').css('display', 'none'); } if(todo==null || todo.type=='' || (globalSettings.appleremindersmode.value && (todo.status=='COMPLETED' || todo.status== 'CANCELLED')) || (globalSettings.appleremindersmode.value && typeof globalAppleSupport.nextDates[todo.id] == 'undefined')) $('#editOptionsButtonTODO').hide(); else $('#editOptionsButtonTODO').click(function(){ showTodoForm(globalCalTodo, 'show', '', true); }); if(repeatOne=='editOnly' || repeatOne=='futureOnly' || $('#recurrenceIDTODO').val()) $('#calendarLineTODO').hide(); if(todo && todo.after && repeatOne=='futureOnly') $('#repeat_end_after_TODO').val(todo.after - todo.realRepeatCount + 1); $('#percenteCompleteValue').val(sliderValue); $('#percentageSlider').slider({ animate: true, range: "min", value: sliderValue, min: 0, max: 100, step: 1, //this gets a live reading of the value and prints it on the page slide: function(event, ui) { $("#percenteCompleteValue").val(ui.value); $(this).parent().parent().find('img').css('display', 'none'); }, //this updates the hidden form field so we can submit the data using a form change: function(event, ui) { var status; if (ui.value>99 && $('#statusTODO').val()==='CANCELLED') status='CANCELLED'; else if(ui.value>99) status='COMPLETED'; else if(ui.value>0 && !globalSettings.appleremindersmode.value) status='IN-PROCESS'; else status='NEEDS-ACTION'; $('#statusTODO').val(status); todoStatusChanged(status); } }); if(!globalSettings.timezonesupport.value) $('.timezone_rowTODO').css('display', 'none'); //updateTodoFormDimensions(); //if(window.event!=undefined) // setTodoPosition(window.event); //else // setTodoPosition(event); if($('#todo_type').val()=='none') stripTodoAlerts(); if(mod!='new') $('#closeTODO').hide(); globalObjectLoading=false; $('#CATodo').show(200, function(){ $('#todoColor').css('background-color',color); checkTodoFormScrollBar(); $('#todoForm').scrollTop(0); }); } function bindTodoForm() { initCalDavDatepicker($('#todo_details_template')); initCalDavTimepicker($('#todo_details_template')); $('#todo_details_template .alert_message_detailsTODO').change(function(){ var data_id=$(this).attr("data-id"); $('.before_after_inputTODO[data-id="'+data_id+'"]').parent().parent().find('img').css('display','none'); if($('.alert_message_detailsTODO[data-id="'+data_id+'"] option:selected').attr('data-type')=="on_dateTODO") { var myDate=new Date(); myDate.setDate(myDate.getDate()+7); if($('.dateTrToTODO').is(':visible') && $('.dateTrToTODO img:visible').length==0) { var dateTo=$.datepicker.parseDate(globalSettings.datepickerformat.value,$("#date_toTODO").val()); var datetime_to=$.fullCalendar.formatDate(dateTo, 'MM/dd/yyyy, '); myDate=new Date(Date.parse(datetime_to +$("#time_toTODO").val())); myDate.setHours(myDate.getHours()-1); } else if($('.dateTrFromTODO').is(':visible') && $('.dateTrFromTODO img:visible').length==0) { var dateTo=$.datepicker.parseDate(globalSettings.datepickerformat.value,$("#date_fromTODO").val()); var datetime_to=$.fullCalendar.formatDate(dateTo, 'MM/dd/yyyy, '); myDate=new Date(Date.parse(datetime_to +$("#time_fromTODO").val())); myDate.setHours(myDate.getHours()-1); } $('.message_date_inputTODO[data-id="'+data_id+'"]').val($.datepicker.formatDate(globalSettings.datepickerformat.value, myDate)); $('.message_date_inputTODO[data-id="'+data_id+'"]').show(); $('.message_time_inputTODO[data-id="'+data_id+'"]').val($.fullCalendar.formatDate(myDate, (globalSettings.ampmformat.value ? 'hh:mm TT' : 'HH:mm'))); $('.message_time_inputTODO[data-id="'+data_id+'"]').show(); $('.before_after_inputTODO[data-id="'+data_id+'"]').hide(); } else { $('.message_date_inputTODO[data-id="'+data_id+'"]').hide(); $('.message_time_inputTODO[data-id="'+data_id+'"]').hide(); $('.before_after_inputTODO[data-id="'+data_id+'"]').show(); $('.before_after_inputTODO[data-id="'+data_id+'"]').val('15'); } }); $('#todo_details_template .before_after_inputTODO').bind('keyup change', function(){ if($(this).val()=='') { $(this).parent().find('img').css('display', 'inline'); //$(this).parent().find('img').css('visibility','visible'); } else { if($(this).val().match("^[0-9]+$")==null) { $(this).parent().find('img').css('display', 'inline'); //$(this).parent().find('img').css('visibility','visible'); } else $(this).parent().find('img').css('display', 'none'); } }); $('#todo_details_template .alertTODO').change(function(){ var data_id=$(this).attr("data-id"); if($(this).val()!='none') { $('.alert_detailsTODO[data-id="'+data_id+'"]').show(); $('.alert_message_dateTODO[data-id="'+data_id+'"]').show(); if($('#todo_type').val()!='none') expandTodoAlerts(); var myDate=new Date(); myDate.setDate(myDate.getDate()+7); if($('.dateTrToTODO').is(':visible') && $('.dateTrToTODO img:visible').length==0) { var dateTo=$.datepicker.parseDate(globalSettings.datepickerformat.value,$("#date_toTODO").val()); var datetime_to=$.fullCalendar.formatDate(dateTo, 'MM/dd/yyyy, '); myDate=new Date(Date.parse(datetime_to +$("#time_toTODO").val())); myDate.setHours(myDate.getHours()-1); } else if($('.dateTrFromTODO').is(':visible') && $('.dateTrFromTODO img:visible').length==0) { var dateTo=$.datepicker.parseDate(globalSettings.datepickerformat.value,$("#date_fromTODO").val()); var datetime_to=$.fullCalendar.formatDate(dateTo, 'MM/dd/yyyy, '); myDate=new Date(Date.parse(datetime_to +$("#time_fromTODO").val())); myDate.setHours(myDate.getHours()-1); } $('.message_date_inputTODO[data-id="'+data_id+'"]').val($.datepicker.formatDate(globalSettings.datepickerformat.value, myDate)); $('.message_time_inputTODO[data-id="'+data_id+'"]').val($.fullCalendar.formatDate(myDate, (globalSettings.ampmformat.value ? 'hh:mm TT' : 'HH:mm'))); todo_alert_add(data_id); } else { $('.alert_detailsTODO[data-id="'+data_id+'"]').hide(); $('.alert_message_dateTODO[data-id="'+data_id+'"]').hide(); checkForTodo(data_id); var data_id=$(this).attr("data-id"); $('#todo_details_template tr[data-id="'+data_id+'"]').remove(); } checkTodoFormScrollBar(); }); $('#repeat_end_after_TODO, #repeat_interval_detail_TODO').bind('keyup change',function(){ if($(this).val()=='') { $(this).parent().find('img').css('display', 'inline'); //$(this).parent().find('img').css('visibility','visible'); } else { if($(this).val().match("^[0-9]+$")==null || parseInt($(this).val(),10)<1) { $(this).parent().find('img').css('display', 'inline'); //$(this).parent().find('img').css('visibility','visible'); } else $(this).parent().find('img').css('display', 'none'); } }); $('#repeat_month_custom_select_TODO').change(function(){ if($(this).val()=="custom") { $('#month_custom2_TODO').show(); $('#repeat_month_custom_select2_TODO').parent().hide(); } else { $('#month_custom2_TODO').hide(); $('#repeat_month_custom_select2_TODO').parent().show(); } checkTodoFormScrollBar(); }); $('#repeat_year_custom_select1_TODO').change(function(){ if($(this).val()=="custom") { $('#year_custom1_TODO').show(); $('#repeat_year_custom_select2_TODO').parent().hide(); } else { $('#year_custom1_TODO').hide(); $('#repeat_year_custom_select2_TODO').parent().show(); } checkTodoFormScrollBar(); }); $('#repeat_end_details_TODO').change(function(){ $('#repeat_end_date_TODO').parent().find('img').css('display', 'none'); if($('#repeat_end_details_TODO option:selected').attr('data-type')=="repeat_details_on_date") { $('#repeat_end_after_TODO').hide(); $('#repeat_end_date_TODO').show(); var today; if($('#date_fromTODO').val()!='') { today=$.datepicker.parseDate(globalSettings.datepickerformat.value, $('#date_fromTODO').val()); if(today==null) today=new Date(); } else today=new Date(); var date=new Date(today.getFullYear(), today.getMonth(), today.getDate()+2); $('#repeat_end_date_TODO').val($.datepicker.formatDate(globalSettings.datepickerformat.value, date)); } if($('#repeat_end_details_TODO option:selected').attr('data-type')=="repeat_details_after") { $('#repeat_end_after_TODO').show(); $('#repeat_end_after_TODO').val('2'); $('#repeat_end_date_TODO').hide(); } if($('#repeat_end_details_TODO option:selected').attr('data-type')=="repeat_details_never") { $('#repeat_end_after_TODO').hide(); $('#repeat_end_date_TODO').hide(); } checkTodoFormScrollBar(); }); $('#todo_details_template .customTable td').click(function(){ if($(this).hasClass('disabled')) return true; else if($(this).hasClass('selected')) $(this).removeClass('selected'); else $(this).addClass('selected'); }); $('#closeTODO').click(function() { $('#todoInEdit').val('false'); if($('#uidTODO').val()!='') { var uid=$('#uidTODO').val(); var calUID=uid.substring(0, uid.lastIndexOf('/')+1); var color=$('#ResourceCalDAVTODOList').find("[data-id='"+calUID+"']").find('.resourceCalDAVColor').css('background-color'); $('.event_item[data-id="'+uid+'"]').children('.fc-event-handle').css({'background-color': rgbToRgba(color,0.9), 'border-color': color}); } $('#TodoDisabler').fadeOut(globalEditorFadeAnimation, function(){ $('#timezonePickerTODO').prop('disabled', false); }); if(typeof globalCalTodo!= 'undefined' && globalCalTodo!=null && globalVisibleCalDAVTODOCollections.indexOf(globalCalTodo.res_id)!=-1) { $('#todoList').fullCalendar('selectEvent'); } else $('#CATodo').attr('style','display:none'); }); $('#resetTODO').click(function(){ $('#todo_details_template').find('img[data-type=invalidSlider],img[data-type=invalidSmall]').css('display','none'); if($('#uidTODO').val()!='') { var uid=$('#uidTODO').val(); var calUID=uid.substring(0, uid.lastIndexOf('/')+1); var color=$('#ResourceCalDAVTODOList').find("[data-id='"+calUID+"']").find('.resourceCalDAVColor').css('background-color'); $('.event_item[data-id="'+uid+'"]').children('.fc-event-handle').css({'background-color': rgbToRgba(color,0.9), 'border-color': color}); if($('#recurrenceIDTODO').val()!='') showTodoForm(globalCalTodo, 'show','editOnly'); else showTodoForm(globalCalTodo, 'show'); startEditModeTodo(); } }); $('#todo_calendar').change(function(){ var color = ''; if($(this).val()=='choose') color = 'rgb(240,240,240)'; else color=$('#ResourceCalDAVTODOList').find("[data-id='"+$(this).val()+"']").find('.resourceCalDAVColor').css('background-color'); var uid='fooUID'; if($('#uidTODO').val()!='') uid=$('#uidTODO').val(); $('#todoColor').css('background-color',color); $('.event_item[data-id="'+uid+'"]').find('.fc-event-handle').css({'background-color': rgbToRgba(color,0.9), 'border-color': color}); }); $('#repeat_TODO').change(function(){ if($('#repeat_TODO option:selected').attr('data-type')=='repeat_no-repeat' || $('#repeat_TODO option:selected').attr('data-type')=="custom_repeat") { $('#repeat_details_TODO').hide(); $('#repeat_interval_TODO').hide(); $('#week_custom_TODO').hide(); $('#month_custom1_TODO').hide(); $('#month_custom2_TODO').hide(); $('#year_custom1_TODO').hide(); $('#year_custom2_TODO').hide(); $('#year_custom3_TODO').hide(); } else { $('#repeat_details_TODO').show(); if($(this).val()!='BUSINESS' && $(this).val()!='TWO_WEEKLY' && $(this).val()!='WEEKEND') { $('#repeat_interval_TODO').show(); $("#repeat_interval_detail_TODO").val('1'); $('#repeat_interval_TODO').find('img').css('display','none'); } else $('#repeat_interval_TODO').hide(); if($(this).val()=='DAILY') $('#repeat_interval_TODO [data-type="txt_interval"]').text(localization[globalInterfaceLanguage].repeatDays); if($(this).val()=='WEEKLY') $('#repeat_interval_TODO [data-type="txt_interval"]').text(localization[globalInterfaceLanguage].repeatWeeks); if($(this).val()=='MONTHLY') $('#repeat_interval_TODO [data-type="txt_interval"]').text(localization[globalInterfaceLanguage].repeatMonths); if($(this).val()=='YEARLY') $('#repeat_interval_TODO [data-type="txt_interval"]').text(localization[globalInterfaceLanguage].repeatYears); if($(this).val()=='CUSTOM_WEEKLY') { $('#repeat_interval_TODO [data-type="txt_interval"]').text(localization[globalInterfaceLanguage].repeatWeeks); $('#week_custom_TODO').show(); } else $('#week_custom_TODO').hide(); if($(this).val()=='CUSTOM_MONTHLY') { $('#repeat_interval_TODO [data-type="txt_interval"]').text(localization[globalInterfaceLanguage].repeatMonths); $('#month_custom1_TODO').show(); if($('#repeat_month_custom_select_TODO').val() == "custom") $('#repeat_month_custom_select_TODO').trigger('change'); } else { $('#month_custom1_TODO').hide(); $('#month_custom2_TODO').hide(); } if($(this).val()=='CUSTOM_YEARLY') { $('#repeat_interval_TODO [data-type="txt_interval"]').text(localization[globalInterfaceLanguage].repeatYears); $('#year_custom2_TODO').show(); $('#year_custom3_TODO').show(); if($('#repeat_year_custom_select1_TODO').val() == "custom") $('#repeat_year_custom_select1_TODO').trigger('change'); } else { $('#year_custom1_TODO').hide(); $('#year_custom2_TODO').hide(); $('#year_custom3_TODO').hide(); } var today; if($('#date_fromTODO').val()!='') { today=$.datepicker.parseDate(globalSettings.datepickerformat.value, $('#date_fromTODO').val()); if(today==null) today=new Date(); } else today=new Date(); var date=new Date(today.getFullYear(),today.getMonth(),today.getDate()+2); $('#repeat_end_date_TODO').val($.datepicker.formatDate(globalSettings.datepickerformat.value, date)); } checkTodoFormScrollBar(); }); $('#statusTODO').change(function(){ var status = $(this).val(); switch(status) { case 'NEEDS-ACTION': $('#percenteCompleteValue').val(0); $('#percentageSlider').slider({value: 0}); $('#nameTODO').removeClass('title_cancelled'); break; case 'IN-PROCESS': var value = 50; var id = $('.fc-event-selected').attr('data-repeat-hash'); if(typeof globalTodolistStatusArray[id]!='undefined' && typeof globalTodolistStatusArray[id].percent!='undefined') value=globalTodolistStatusArray[id].percent; $('#percenteCompleteValue').val(value); $('#percentageSlider').slider({value: value}); $('#nameTODO').removeClass('title_cancelled'); break; case 'CANCELLED': $('#percenteCompleteValue').val(100); $('#percentageSlider').slider({value: 100}); $('#nameTODO').addClass('title_cancelled'); break; case 'COMPLETED': $('#percenteCompleteValue').val(100); $('#percentageSlider').slider({value: 100}); $('#nameTODO').removeClass('title_cancelled'); break; default: break; } todoStatusChanged(status); }); $('#todo_type').change(function(){ if($(this).val()=='none') { $('#timezoneTODO').val('local'); $('#repeat_row_TODO').hide(); $('#date_fromTODO, #time_fromTODO, #date_toTODO, #time_toTODO').parent().find('img').css('display','none'); $('.dateTrFromTODO, .dateTrToTODO, .timezone_rowTODO').hide(); stripTodoAlerts(); } else if($(this).val()=='start') { var myDate=new Date(); $('#date_fromTODO').val($.datepicker.formatDate(globalSettings.datepickerformat.value, myDate)); $('#time_fromTODO').val($.fullCalendar.formatDate(myDate, (globalSettings.ampmformat.value ? 'hh:mm TT' : 'HH:mm'))); $('#repeat_row_TODO').show(); $('#date_toTODO, #time_toTODO').parent().find('img').css('display','none'); $('.dateTrToTODO').hide(); $('.dateTrFromTODO').show(); if(globalSettings.timezonesupport.value) { $('.timezone_rowTODO').show(); $('#timezoneTODO').val(globalSessionTimeZone); } $('#date_fromTODO, #time_fromTODO').trigger('change'); } else if($(this).val()=='due') { var myDate=new Date($('#todoList').fullCalendar('getView').start.getTime()); myDate.setHours(globalSettings.calendarendofbusiness.value); myDate.setMinutes((globalSettings.calendarendofbusiness.value%1)*60); $('#date_toTODO').val($.datepicker.formatDate(globalSettings.datepickerformat.value, myDate)); $('#time_toTODO').val($.fullCalendar.formatDate(myDate, (globalSettings.ampmformat.value ? 'hh:mm TT' : 'HH:mm'))); $('#repeat_row_TODO').show(); $('#date_fromTODO, #time_fromTODO').parent().find('img').css('display','none'); $('.dateTrFromTODO').hide(); $('.dateTrToTODO').show(); if(globalSettings.timezonesupport.value) { $('.timezone_rowTODO').show(); $('#timezoneTODO').val(globalSessionTimeZone); } $('#date_toTODO, #time_toTODO').trigger('change'); } else if($(this).val()=='both') { var myDate=''; var myDateStart= new Date(); if($('#date_toTODO').val()!='') { var dateFrom=$.datepicker.parseDate(globalSettings.datepickerformat.value, $('#date_toTODO').val()); var datetime_to=$.fullCalendar.formatDate(dateFrom, 'yyyy-MM-dd'); var aDate=new Date(Date.parse("01/02/1990, "+$('#time_toTODO').val())); var time_from=$.fullCalendar.formatDate(aDate, 'HH:mm:ss'); var myDate=$.fullCalendar.parseDate(datetime_to+'T'+time_from); } else { myDate=new Date($('#todoList').fullCalendar('getView').start.getTime()); $('#repeat_row_TODO').show(); myDate.setHours(globalSettings.calendarendofbusiness.value); myDate.setMinutes((globalSettings.calendarendofbusiness.value%1)*60); if($('#date_toTODO').val()=='') $('#date_toTODO').val($.datepicker.formatDate(globalSettings.datepickerformat.value, myDate)); if($('#time_toTODO').val()=='') $('#time_toTODO').val($.fullCalendar.formatDate(myDate, (globalSettings.ampmformat.value ? 'hh:mm TT' : 'HH:mm'))); } if(myDateStart>myDate) myDateStart= new Date(myDate.getTime()); globalPrevDate = new Date(myDateStart.getTime()); if($('#date_fromTODO').val()=='') $('#date_fromTODO').val($.datepicker.formatDate(globalSettings.datepickerformat.value, myDateStart)); if($('#time_fromTODO').val()=='') $('#time_fromTODO').val($.fullCalendar.formatDate(myDateStart, (globalSettings.ampmformat.value ? 'hh:mm TT' : 'HH:mm'))); $('.dateTrFromTODO, .dateTrToTODO').show(); if(globalSettings.timezonesupport.value) { $('.timezone_rowTODO').show(); $('#timezoneTODO').val(globalSessionTimeZone); } $('#date_fromTODO, #time_fromTODO, #date_toTODO, #time_toTODO').trigger('change'); } if($('#todo_type').val()!='none') expandTodoAlerts(); checkTodoFormScrollBar(); }); $('#percenteCompleteValue').bind('keyup change',function(){ if($(this).val()=='') { $(this).parent().find('img').css('display', 'inline'); } else { if($(this).val().match('^(([0-9])|([1-9][0-9])|(100))$')==null) $(this).parent().find('img').css('display', 'inline'); else { $(this).parent().find('img').css('display', 'none'); $( "#percentageSlider" ).slider({value: $(this).val()}); } } }); } function showEventForm(date, allDay, calEvent, jsEvent, mod, repeatOne, confirmRepeat) { $('#event_details_template').remove(); $('#CAEvent').html(cleanVcalendarTemplate); setFirstDayEvent(); bindEventForm(); $('#note').autosize({defaultStyles: {height: '64', overflow: '', 'overflow-y': '', 'word-wrap': '', resize: 'none'}, callback: function(){checkEventFormScrollBar();}}); $("#show").val(''); $("#uid").val(''); $("#etag").val(''); $("#repeatCount").val(''); $("#repeatEvent").val(''); $("#recurrenceID").val(''); $("#futureStart").val(''); $("#vcalendarHash").val(''); $("#vcalendarUID").val(''); globalPrevDate=''; var color=''; if(mod=='new') { var activeCollection = $('#ResourceCalDAVList').find('.resourceCalDAV_item.resourceCalDAV_item_selected'); if(activeCollection.length>0 && !globalResourceCalDAVList.getEventCollectionByUID(activeCollection.attr('data-id')).permissions.read_only) color=rgbToHex(activeCollection.children('.resourceCalDAVColor').css('background-color')); } else color=globalResourceCalDAVList.getEventCollectionByUID(calEvent.res_id).ecolor; if(confirmRepeat) { $('#show').val(calEvent.id); $('#repeatEvent').val(true); $('#CAEvent').show(); $('#repeatConfirmBox').css('visibility', 'visible'); if(calEvent.repeatCount!='' && calEvent.repeatCount == 1) { $('#editFuture').css('display','none'); if($('#editFuture').next('br').length>0) $('#editFuture').next().remove(); } else if($('#editFuture').css('display')=='none') { $('#editFuture').css('display','block'); if($('#editFuture').next('br').length==0) $('#editFuture').after('<br/>') } $('#repeatConfirmBoxContent').html('<b>'+calEvent.title+"</b> "+localization[globalInterfaceLanguage].repeatBoxContent); $('#repeatConfirmBoxQuestion').html(localization[globalInterfaceLanguage].repeatBoxQuestion); $('#editAll, #editOnlyOne, #editFuture').click(function(){ if(globalCalEvent) { if($(this).attr('id')=='editOnlyOne') showEventForm(null, globalCalEvent.allDay, globalCalEvent, globalJsEvent, 'show', 'editOnly'); else if($(this).attr('id')=='editAll') showEventForm(null, globalCalEvent.allDay, globalCalEvent, globalJsEvent, 'show', ''); else if($(this).attr('id')=='editFuture') showEventForm(null, globalCalEvent.allDay, globalCalEvent, globalJsEvent, 'show', 'futureOnly'); $('#repeatConfirmBoxContent').html(''); $('#repeatConfirmBox').css('visibility', 'hidden'); $('#AlertDisabler').fadeOut(globalEditorFadeAnimation); } }); $('#CAEvent').height($('#repeatConfirmBox').height()); $('#eventColor').css('background-color',color); updateEventFormDimensions(); setFormPosition(jsEvent, true); $('#event_details_template').scrollTop(0); return true; } if(mod=='show' && repeatOne=='futureOnly') { $('#futureStart').val(calEvent.realRepeatCount+';'+calEvent.start); } if(mod!='new') fullVcalendarToData(calEvent); else CalDAVeditor_cleanup(); if(calEvent!=null && ((repeatOne=='editOnly'&&calEvent.type) || calEvent.rec_id)) { var eventsSorted=jQuery.grep(globalEventList.displayEventsArray[calEvent.res_id],function(e){if(e.id==calEvent.id)return true}).sort(repeatStartCompare); if(eventsSorted.indexOf(calEvent)!=-1) { if(eventsSorted.indexOf(calEvent)<(eventsSorted.length-1)) showEventNextNav(); if(eventsSorted.indexOf(calEvent)!=0) showEventPrevNav(); } } var cals=globalResourceCalDAVList.sortedCollections; var calendarObj = $('#event_calendar'); var calSelected = $('.resourceCalDAV_item.resourceCalDAV_item_selected').attr('data-id'); for(var i=0;i<cals.length;i++) { if(cals[i].uid!=undefined && ((calEvent!=null && calEvent.res_id==cals[i].uid) || (cals[i].makeLoaded && !cals[i].permissions_read_only ))) { calendarObj.append(new Option(cals[i].displayValue,cals[i].uid)); } } if(mod=='new') { $('#show').val(''); $('#editButton').hide(); $('#duplicateButton').hide(); $('#editOptionsButton').hide(); $('#resetButton').hide(); $('#deleteButton').hide(); if($('#ResourceCalDAVList').find('.resourceCalDAV_item.resourceCalDAV_item_selected').length>0 && $('#event_calendar').find('option[value="'+$('#ResourceCalDAVList').find('.resourceCalDAV_item.resourceCalDAV_item_selected').attr("data-id")+'"]').length>0) $('.R_calendar').val($('#ResourceCalDAVList').find('.resourceCalDAV_item.resourceCalDAV_item_selected').attr("data-id")); else $('#event_calendar').val('choose'); } if(mod=='drop') { if(calEvent.etag!='') $('#event_calendar').val(calEvent.res_id); } if(mod=='new') { //$('[data-type="name"]').attr('placeholder', localization[globalInterfaceLanguage].pholderNewEvent); var date_to = null; if(calEvent!==null) { if(calEvent.realStart) date=calEvent.realStart; else date=calEvent.start; if(calEvent.realEnd) date_to=new Date(calEvent.realEnd.getTime()); else date_to=new Date(calEvent.end.getTime()); } if(!allDay && ((date_to==null) || ((date_to-date)==0))) { date_to = new Date(date.getTime()); if(globalSettings.defaulteventduration.value!==null) date_to.setMinutes(date_to.getMinutes()+globalSettings.defaulteventduration.value); else { date_to.setHours(globalSettings.calendarendofbusiness.value); date_to.setMinutes((globalSettings.calendarendofbusiness.value%1)*60); } if(date_to.getTime()<date.getTime()) date_to.setDate(date_to.getDate()+1); } var beforeScroll = $('#main').width()-$('#calendar').width(); $('#calendar').fullCalendar('renderEvent', $.extend(new items('',date,date_to,localization[globalInterfaceLanguage].pholderNewEvent, allDay, 'fooUID', '', '', '', '', '', '', '', '', '', '', '', '', '','', '', '', '', '', '', '', '', '','', '', '', '', '', '', '', ''),{backgroundColor:hexToRgba(color,0.9),borderColor:color,textColor:checkFontColor(color)})); var afterScroll = $('#main').width()-$('#calendar').width(); rerenderCalendar(beforeScroll!=afterScroll); if(allDay) { $('#allday').prop('checked', true); $('#time_from_cell').css('visibility', 'hidden'); $('#time_to_cell').css('visibility', 'hidden'); $('.timezone_row').css('display', 'none'); } showTimezones('', ''); } if(mod=='show' || mod=='drop') { if(calEvent.status=='CANCELLED') $('#name').addClass('title_cancelled'); $('#name').val(calEvent.title); $('#location').val(calEvent.location); if(calEvent.allDay==true) { $('#allday').prop('checked', true); $('#time_from_cell').css('visibility', 'hidden'); $('#time_to_cell').css('visibility', 'hidden'); $('.timezone_row').css('display', 'none'); } if(calEvent.end) if(calEvent.realEnd && (mod!='drop' || repeatOne!='editOnly')) date_to=new Date(calEvent.realEnd.getTime()); else date_to=new Date(calEvent.end.getTime()); $('#note').val(calEvent.note).trigger('autosize.resize'); if(typeof calEvent.classType!='undefined' && calEvent.classType!=null && calEvent.classType!='') $('#type').val(calEvent.classType.toLowerCase()); else $('#type').val('public'); if(calEvent.status!='') $('#status').val(calEvent.status); else $('#status').val('NONE'); if(calEvent!=null && mod!='new') { var uidArray = calEvent.id.match(vCalendar.pre['uidParts']); if(decodeURIComponent(uidArray[4]).indexOf(uidArray[2])==-1) $('.row_type').css('display','none'); } if(calEvent.avail == 'OPAQUE') $('#avail').val('busy'); else $('#avail').val('free'); if(calEvent!=null) { var prior=parseInt(calEvent.priority,10); if(prior==5) $('#priority').val(5); else if(prior>5 && prior<10) { $('#priority [data-type="priority_low"]').attr('value',prior) $('#priority').val(prior); } else if(prior<5 && prior>0) { $('#priority [data-type="priority_high"]').attr('value',prior) $('#priority').val(prior); } else $('#priority').val(0); } $('#uid').val(calEvent.id); $('#url_EVENT').val(calEvent.hrefUrl+''); $('#vcalendarHash').val(hex_sha256(calEvent.vcalendar)); $('#etag').val(calEvent.etag); var stringUIDcurrent=calEvent.vcalendar.match(vCalendar.pre['contentline_UID']); if(stringUIDcurrent!=null) stringUIDcurrent=stringUIDcurrent[0].match(vCalendar.pre['contentline_parse'])[4]; if(stringUIDcurrent) $('#vcalendarUID').val(stringUIDcurrent); var alarmDate=''; for(var alarmIterator=0;alarmIterator<calEvent.alertTime.length;alarmIterator++) { if(alarmIterator>0) event_alert_add(alarmIterator); $(".alert[data-id="+(alarmIterator+1)+"]").val("message"); if(calEvent.alertTime[alarmIterator].charAt(0)=='-' || calEvent.alertTime[alarmIterator].charAt(0)=='+') { var alVal=parseInt(calEvent.alertTime[alarmIterator].substring(1, calEvent.alertTime[alarmIterator].length-1)); var alString=''; if(calEvent.alertTime[alarmIterator].charAt(calEvent.alertTime[alarmIterator].length-1)=="W") { alVal=alVal/1000/60/60/24/7; alString='weeks'; } else if(calEvent.alertTime[alarmIterator].charAt(calEvent.alertTime[alarmIterator].length-1)=="D") { alVal=alVal/1000/60/60/24; alString='days'; } else if(calEvent.alertTime[alarmIterator].charAt(calEvent.alertTime[alarmIterator].length-1)=="H") { alVal=alVal/1000/60/60; alString='hours'; } else if(calEvent.alertTime[alarmIterator].charAt(calEvent.alertTime[alarmIterator].length-1)=="M") { alVal=alVal/1000/60; alString='minutes'; } else if(calEvent.alertTime[alarmIterator].charAt(calEvent.alertTime[alarmIterator].length-1)=="S") { alVal=alVal/1000; alString='seconds'; } if(calEvent.alertTime[alarmIterator].charAt(0)=='-') alString+="_before"; else alString+="_after" $(".alert_message_details[data-id="+(alarmIterator+1)+"]").val(alString); $(".before_after_input[data-id="+(alarmIterator+1)+"]").val(alVal); $('.alert_details[data-id="'+(alarmIterator+1)+'"]').show(); $('.alert_message_date[data-id="'+(alarmIterator+1)+'"]').show(); $('.before_after_input[data-id="'+(alarmIterator+1)+'"]').show(); $(".message_date_input[data-id="+(alarmIterator+1)+"]").hide(); $(".message_time_input[data-id="+(alarmIterator+1)+"]").hide(); } else { alarmDate=$.fullCalendar.parseDate(calEvent.alertTime[alarmIterator]); (alarmDate.getHours())<10 ? (hour='0'+(alarmDate.getHours())) : (hour=alarmDate.getHours()); (alarmDate.getMinutes())<10 ? (minute='0'+(alarmDate.getMinutes())) : (minute=alarmDate.getMinutes()); $(".alert_message_details[data-id="+(alarmIterator+1)+"]").val('on_date'); var formattedAlarmDate=$.datepicker.formatDate(globalSettings.datepickerformat.value, alarmDate); $(".message_date_input[data-id="+(alarmIterator+1)+"]").val(formattedAlarmDate); $(".message_time_input[data-id="+(alarmIterator+1)+"]").val($.fullCalendar.formatDate(alarmDate, (globalSettings.ampmformat.value ? 'hh:mm TT' : 'HH:mm'))); $('.alert_details[data-id="'+(alarmIterator+1)+'"]').show(); $('.alert_message_date[data-id="'+(alarmIterator+1)+'"]').show(); } } if(alarmIterator>0) event_alert_add(alarmIterator+2); if(calEvent.type!='' && repeatOne!='editOnly' && calEvent.ruleString.match(vCalendar.re['recurCaldav'])!=null) { var ruleString=calEvent.vcalendar.match(vCalendar.pre['contentline_RRULE2'])[0].match(vCalendar.pre['contentline_parse'])[4]; if(ruleString.indexOf('BYMONTH=')!=-1 || ruleString.indexOf('BYMONTHDAY=')!=-1 || ruleString.indexOf('BYDAY=')!=-1) { var pars=ruleString.split(';'); if(pars.indexElementOf('BYMONTH=')!=-1 && pars.indexElementOf('BYMONTHDAY=')==-1 && pars.indexElementOf('BYDAY=')==-1) pars[pars.length] = "BYMONTHDAY="+calEvent.start.getDate(); if(calEvent.type=="DAILY") { $("#repeat option[value='DAILY']").prop('selected', true); $('#repeat_interval [data-type="txt_interval"]').text(localization[globalInterfaceLanguage].repeatDays); } else if(calEvent.type=="WEEKLY") { $("#repeat option[value='CUSTOM_WEEKLY']").prop('selected', true); $('#repeat_interval [data-type="txt_interval"]').text(localization[globalInterfaceLanguage].repeatWeeks); for(var ri=0;ri<pars.length;ri++) { if(pars[ri].indexOf("BYDAY=")!=-1) { var byDay=pars[ri].split('=')[1]; byDay=byDay.replace(/\d*MO/,1).replace(/\d*TU/,2).replace(/\d*WE/,3).replace(/\d*TH/,4).replace(/\d*FR/,5).replace(/\d*SA/,6).replace(/\d*SU/,0).split(','); for(var rj=0;rj<byDay.length;rj++) { if(!isNaN(parseInt(byDay[rj],10))) $('#week_custom .customTable td[data-type="'+byDay[rj]+'"]').addClass('selected'); } } } $('#week_custom').show(); } else if(calEvent.type=="MONTHLY") { $("#repeat option[value='CUSTOM_MONTHLY']").prop('selected', true).change(); $('#repeat_interval [data-type="txt_interval"]').text(localization[globalInterfaceLanguage].repeatMonths); for(var ri=0;ri<pars.length;ri++) { if(pars[ri].indexOf("BYDAY=")!=-1) { var byDay=pars[ri].split('=')[1]; byDay=byDay.split(','); for(var rj=0;rj<byDay.length;rj++) { var checkString = byDay[rj].match(vCalendar.pre['+/-number']); byDay[rj] = byDay[rj].replace(checkString[0],''); if(!isNaN(parseInt(checkString[0],10))) { switch(parseInt(checkString[0],10)) { case 1: $('#repeat_month_custom_select').val('first'); break; case 2: $('#repeat_month_custom_select').val('second'); break; case 3: $('#repeat_month_custom_select').val('third'); break; case 4: $('#repeat_month_custom_select').val('fourth'); break; case 5: $('#repeat_month_custom_select').val('fifth'); break; case -1: $('#repeat_month_custom_select').val('last'); break; default: $('#repeat_month_custom_select').val('every'); break; } $('#repeat_month_custom_select2').val(byDay[rj]); } } } else if(pars[ri].indexOf("BYMONTHDAY=")!=-1) { $('#repeat_month_custom_select').val('custom').change(); var byMonthDay=pars[ri].split('=')[1]; byMonthDay=byMonthDay.split(','); for(var rj=0; rj<byMonthDay.length;rj++) { if(parseInt(byMonthDay[rj],10)==-1) { $('#repeat_month_custom_select').val('last').change(); $('#repeat_month_custom_select2').val("DAY"); } else $('#month_custom2 .customTable td[data-type="'+(parseInt(byMonthDay[rj],10))+'"]').addClass('selected'); } } } } else if(calEvent.type=="YEARLY") { $("#repeat option[value='CUSTOM_YEARLY']").prop('selected', true).change(); $('#repeat_interval [data-type="txt_interval"]').text(localization[globalInterfaceLanguage].repeatYears); var isMonthDay=false; for(var ri=0;ri<pars.length;ri++) { if(pars[ri].indexOf("BYDAY=")!=-1) { var byDay=pars[ri].split('=')[1]; byDay=byDay.split(','); for(var rj=0;rj<byDay.length;rj++) { var checkString = byDay[rj].match(vCalendar.pre['+/-number']); byDay[rj] = byDay[rj].replace(checkString[0],''); if(!isNaN(parseInt(checkString[0],10))) { switch(parseInt(checkString[0],10)) { case 1: $('#repeat_year_custom_select1').val('first'); break; case 2: $('#repeat_year_custom_select1').val('second'); break; case 3: $('#repeat_year_custom_select1').val('third'); break; case 4: $('#repeat_year_custom_select1').val('fourth'); break; case 5: $('#repeat_year_custom_select1').val('fifth'); break; case -1: $('#repeat_year_custom_select1').val('last'); break; default: $('#repeat_year_custom_select1').val('every'); break; } $('#repeat_year_custom_select2').val(byDay[rj]); } } } else if(pars[ri].indexOf("BYMONTHDAY=")!=-1) { $('#repeat_year_custom_select1').val('custom').change() var byMonthDay=pars[ri].split('=')[1]; byMonthDay=byMonthDay.split(','); for(var rj=0; rj<byMonthDay.length;rj++) { if(parseInt(byMonthDay[rj],10)==-1) { $('#repeat_year_custom_select1').val('last').change(); $('#repeat_year_custom_select2').val("DAY"); } else $('#year_custom1 .customTable td[data-type="'+(parseInt(byMonthDay[rj],10))+'"]').addClass('selected'); } isMonthDay=true; } else if(pars[ri].indexOf("BYMONTH=")!=-1) { var byMonth=pars[ri].split('=')[1]; byMonth=byMonth.split(','); for(var rj=0; rj<byMonth.length;rj++) $('#year_custom3 .customTable td[data-type="'+(parseInt(byMonth[rj],10)-1)+'"]').addClass('selected'); } } } if(calEvent.after=='' && calEvent.untilDate=='') $("#repeat_end_details option[value='never']").prop('selected', true); else if(calEvent.after!='') { $("#repeat_end_details option[value='after']").prop('selected', true); $('#repeat_end_after').val(calEvent.after); } else if(calEvent.untilDate!='') { date=$.fullCalendar.parseDate(calEvent.untilDate); $("#repeat_end_details option[value='on_date']").prop('selected', true); var formattedRepeatDate=$.datepicker.formatDate(globalSettings.datepickerformat.value, date); $('#repeat_end_date').val(formattedRepeatDate); } $('#repeat_interval_detail').val(calEvent.interval); $('#repeat_interval').show(); if(calEvent.byDay.length>0) { var businessArray=new Array(); if(globalSettings.weekenddays.value.length>0) for(var i=0;i<7;i++) if(globalSettings.weekenddays.value.indexOf(i)==-1) businessArray[businessArray.length]=i+''; var businessCount=0; var weekendCount=0; for(var i=0;i<byDay.length;i++) { if(businessArray.indexOf(byDay[i])!=-1) businessCount++; if(globalSettings.weekenddays.value.indexOf(parseInt(byDay[i],10))!=-1) weekendCount++; } if(businessArray.length>0 && businessArray.length==businessCount) { $("#repeat option[value='BUSINESS']").prop('selected', true); $('#repeat_interval').hide(); $('#week_custom').hide(); } else if(globalSettings.weekenddays.value.length>0 && globalSettings.weekenddays.value.length==weekendCount) { $("#repeat option[value='WEEKEND']").prop('selected', true); $('#repeat_interval').hide(); $('#week_custom').hide(); } } } else { if(calEvent.type=="DAILY") { $("#repeat option[value='DAILY']").prop('selected', true); $('#repeat_interval [data-type="txt_interval"]').text(localization[globalInterfaceLanguage].repeatDays); } else if(calEvent.type=="WEEKLY") { $("#repeat option[value='WEEKLY']").prop('selected', true); $('#repeat_interval [data-type="txt_interval"]').text(localization[globalInterfaceLanguage].repeatWeeks); } else if(calEvent.type=="MONTHLY") { $("#repeat option[value='MONTHLY']").prop('selected', true); $('#repeat_interval [data-type="txt_interval"]').text(localization[globalInterfaceLanguage].repeatMonths); } else if(calEvent.type=="YEARLY") { $("#repeat option[value='YEARLY']").prop('selected', true); $('#repeat_interval [data-type="txt_interval"]').text(localization[globalInterfaceLanguage].repeatYears); } if(calEvent.after=='' && calEvent.untilDate=='') $("#repeat_end_details option[value='never']").prop('selected', true); else if(calEvent.after!='') { $("#repeat_end_details option[value='after']").prop('selected', true); $('#repeat_end_after').val(calEvent.after); } else if(calEvent.untilDate!='') { date=$.fullCalendar.parseDate(calEvent.untilDate); $("#repeat_end_details option[value='on_date']").prop('selected', true); var formattedRepeatDate=$.datepicker.formatDate(globalSettings.datepickerformat.value, date); $('#repeat_end_date').val(formattedRepeatDate); } $('#repeat_interval_detail').val(calEvent.interval); $('#repeat_interval').show(); if(calEvent.byDay.length>0) { if(calEvent.byDay.indexOf('1')!=-1 && calEvent.byDay.indexOf('2')!=-1 && calEvent.byDay.indexOf('3')!=-1 && calEvent.byDay.indexOf('4')!=-1 && calEvent.byDay.indexOf('5')!=-1 && calEvent.byDay.indexOf('6')==-1 && calEvent.byDay.indexOf('0')==-1) { $("#repeat option[value='BUSINESS']").prop('selected', true); $('#repeat_interval').hide(); } else if(calEvent.byDay.indexOf('1')==-1 && calEvent.byDay.indexOf('2')==-1 && calEvent.byDay.indexOf('3')==-1 && calEvent.byDay.indexOf('4')==-1 && calEvent.byDay.indexOf('5')==-1 && calEvent.byDay.indexOf('6')!=-1 && calEvent.byDay.indexOf('0')!=-1) { $("#repeat option[value='WEEKEND']").prop('selected', true); $('#repeat_interval').hide(); } } $('#repeatEvent').val(true); } } else if(calEvent.type!='' && repeatOne!='editOnly') { var cu_opt = new Option(localization[globalInterfaceLanguage].customRepeat, calEvent.ruleString, false, true); $(cu_opt).attr('data-type','custom_repeat'); $('#repeat').append(cu_opt); } else $('#repeatEvent').val(false); if(calEvent.timeZone) showTimezones(calEvent.timeZone,''); else showTimezones('local',''); } var year, month, day, hour, minute; if(mod=='show') $('#show').val(calEvent.id); if(mod=='show' || mod=='drop') { $('#repeatCount').val(calEvent.repeatCount); if(calEvent.realStart && (mod!='drop' || repeatOne!='editOnly')) date=calEvent.realStart; else date=calEvent.start; if($('#show').val()) { if(calEvent.repeatStart && repeatOne=='') date=new Date(calEvent.repeatStart.getTime()); if(calEvent.repeatEnd && repeatOne=='') date_to=new Date(calEvent.repeatEnd.getTime()); } if(repeatOne=='editOnly') { if((mod=='drop' && globalPrevDragEventAllDay) || (mod!='drop' && calEvent.allDay)) { if(calEvent.realStart) $('#recurrenceID').val($.fullCalendar.formatDate($.fullCalendar.parseDate(calEvent.realStart), "yyyyMMdd")); else $('#recurrenceID').val($.fullCalendar.formatDate(date, "yyyyMMdd")); } else { if(calEvent.realStart) $('#recurrenceID').val($.fullCalendar.formatDate(calEvent.realStart, "yyyyMMdd'T'HHmmss")); else $('#recurrenceID').val($.fullCalendar.formatDate(date, "yyyyMMdd'T'HHmmss")); } } else $('#recurrenceID').val(calEvent.rec_id); if(calEvent.rec_id || repeatOne=='editOnly' || repeatOne=='futureOnly') { var savedEvs=jQuery.grep(globalEventList.displayEventsArray[calEvent.res_id],function(e){if(e.id==calEvent.id && (e.repeatCount<2 || !e.repeatCount))return true}); if(savedEvs.length>1 || (repeatOne=='futureOnly' && calEvent.repeatCount>1) || (repeatOne=='editOnly' && calEvent.type!='')) $('#deleteButton').attr('onclick',"updateEventFormDimensions(true);$('#CAEvent .saveLoader').show();save(false, true);"); } } var today = new Date(); var todayClear = new Date(today.getTime()); todayClear.setHours(0); todayClear.setMinutes(0); todayClear.setSeconds(0); todayClear.setMilliseconds(0); var dateClear = new Date(date.getTime()); dateClear.setHours(0); dateClear.setMinutes(0); dateClear.setSeconds(0); dateClear.setMilliseconds(0); if(allDay) { if(globalSettings.defaulteventduration.value!==null && todayClear.getTime()===dateClear.getTime()) { if(today.getMinutes()>0) { date.setHours(today.getHours()+1); date.setMinutes(0); } else { date.setHours(today.getHours()); date.setMinutes(today.setMinutes()); } } else { date.setHours(globalSettings.calendarstartofbusiness.value); date.setMinutes((globalSettings.calendarstartofbusiness.value%1)*60); } } $('#date_from').val($.datepicker.formatDate(globalSettings.datepickerformat.value, date)); $('#time_from').val($.fullCalendar.formatDate(date, (globalSettings.ampmformat.value ? 'hh:mm TT' : 'HH:mm'))); globalPrevDate=new Date(date.getTime()); if(typeof date_to==='undefined' || date_to===null) date_to = new Date(date.getTime()); if(allDay) { if(globalSettings.defaulteventduration.value!==null) { date_to.setHours(date.getHours()); date_to.setMinutes(date.getMinutes()+globalSettings.defaulteventduration.value); } else { date_to.setHours(globalSettings.calendarendofbusiness.value); date_to.setMinutes((globalSettings.calendarendofbusiness.value%1)*60); } } if(date_to.getTime()<date.getTime()) date_to.setDate(date_to.getDate()+1); $('#date_to').val($.datepicker.formatDate(globalSettings.datepickerformat.value, date_to)); $('#time_to').val($.fullCalendar.formatDate(date_to, (globalSettings.ampmformat.value ? 'hh:mm TT' : 'HH:mm'))); if($('#repeat option:selected').attr('data-type')!="repeat_no-repeat" && $('#repeat option:selected').attr('data-type')!="custom_repeat") $('#repeat_details').show(); if($('#repeat_end_details option:selected').attr('data-type')=="repeat_details_on_date") { $('#repeat_end_after').hide(); $('#repeat_end_date').show(); } if($('#repeat_end_details option:selected').attr('data-type')=="repeat_details_after") { $('#repeat_end_after').show(); $('#repeat_end_date').hide(); } if($('#repeat_end_details option:selected').attr('data-type')=="repeat_details_never") { $('#repeat_end_after').hide(); $('#repeat_end_date').hide(); } if(mod=='show') { $('#saveButton').hide(); $('#resetButton').hide(); $('#deleteButton').hide(); if($('#ResourceCalDAVList').find('[data-id="'+calEvent.res_id+'"]').hasClass("resourceCalDAV_item_ro")) { $('#editButton').hide(); $('#duplicateButton').hide(); $('#editOptionsButton').hide(); } $('#eventDetailsTable :input[type!="button"]').prop('disabled', true); $('#eventDetailsTable :input[type="text"]').prop('readonly', true); $('#eventDetailsTable .customTable td').addClass('disabled'); $('#eventDetailsTable textarea').prop('readonly', true); /*************************** BAD HACKS SECTION ***************************/ // here we fix the cross OS/cross broser problems (unfixable in pure CSS) if($.browser.webkit && !!window.chrome) /* Chrome */ { if(navigator.platform.toLowerCase().indexOf('win')==0) /* Windows version */ { $('#event_details_template').find('input').css('text-indent', '2px'); $('#event_details_template').find('select').css({'padding-left': '0px', 'padding-right': '13px'}); } else /* non-Windows version */ $('#event_details_template').find('input').css('text-indent', '1px'); } else if($.browser.safari) { $('#event_details_template').find('textarea').addClass('safari_hack'); $('#event_details_template').find('input').addClass('safari_hack'); } else if($.browser.msie) /* IE */ { if(parseInt($.browser.version, 10)==10) /* IE 10 (because there are no more conditional comments) */ { $('#event_details_template').find('select').css({'padding-top': '1px', 'padding-left': '0px', 'padding-right': '0px'}); $('#event_details_template').find('textarea').css('padding-top', '3px'); $('#event_details_template').find('input[type=button]').css('padding-top', '2px'); } } if($.browser.msie || $.browser.mozilla) { var newSVG=$(SVG_select_dis).attr('data-type', 'select_icon').css({'pointer-events': 'none', 'z-index': '1', 'display': 'inline', 'margin-left': '-22px', 'vertical-align': 'top', 'background-color': '#ffffff'}); // background-color = stupid IE9 bug $('#event_details_template').find('svg[data-type="select_icon"]').replaceWith($('<div>').append($(newSVG).clone()).html()); } /*************************** END OF BAD HACKS SECTION ***************************/ if(calEvent.etag!='') $('#event_calendar').val(calEvent.res_id); } if(repeatOne=='editOnly' || $('#recurrenceID').val()!='') { $('#repeat').parent().parent().css('display', 'none'); $('#week_custom').css('display', 'none'); $('#month_custom1').css('display', 'none'); $('#month_custom2').css('display', 'none'); $('#year_custom1').css('display', 'none'); $('#year_custom2').css('display', 'none'); $('#year_custom3').css('display', 'none'); $('#repeat_details').css('display', 'none'); } if(repeatOne=='editOnly' || repeatOne=='futureOnly' || $('#recurrenceID').val()) $('#calendarLine').hide(); if(calEvent==null || calEvent.type=='') $('#editOptionsButton').hide(); else $('#editOptionsButton').click(function(){ showEventForm(null, globalCalEvent.allDay, globalCalEvent, globalJsEvent, 'show', '', true); }); if(calEvent && calEvent.after && repeatOne=='futureOnly') $('#repeat_end_after').val(calEvent.after - calEvent.realRepeatCount + 1); if(!globalSettings.timezonesupport.value) $('.timezone_row').css('display', 'none'); if($('#allday').prop('checked')) stripEventAlerts(); if(mod!='drop') { $('#CAEvent').show(); $('#event_details_template').show(); $('#eventColor').css('background-color',color); updateEventFormDimensions(); setFormPosition(jsEvent); } checkEventFormScrollBar(); $('#event_details_template').scrollTop(0); } function bindEventForm() { initCalDavDatepicker($('#event_details_template')); initCalDavTimepicker($('#event_details_template')); $('#event_details_template .alert_message_details').change(function(){ var data_id=$(this).attr("data-id"); $('.before_after_input[data-id="'+data_id+'"]').parent().parent().find('img').css('display','none'); if($('.alert_message_details[data-id="'+data_id+'"] option:selected').attr('data-type')=="on_date") { var myDate=new Date(); myDate.setDate(myDate.getDate()+7); if($('#date_from').parent().parent().find('img:visible').length==0) { var dateTo=$.datepicker.parseDate(globalSettings.datepickerformat.value,$("#date_from").val()); var datetime_to=$.fullCalendar.formatDate(dateTo, 'MM/dd/yyyy, '); myDate=new Date(Date.parse(datetime_to + (!$("#allday").prop('checked')?$("#time_from").val():''))); myDate.setHours(myDate.getHours()-1); } else if($('#date_to').parent().parent().find('img:visible').length==0) { var dateTo=$.datepicker.parseDate(globalSettings.datepickerformat.value,$("#date_to").val()); var datetime_to=$.fullCalendar.formatDate(dateTo, 'MM/dd/yyyy, '); myDate=new Date(Date.parse(datetime_to + (!$("#allday").prop('checked')?$("#time_to").val():''))); myDate.setHours(myDate.getHours()-1); } $('.message_date_input[data-id="'+data_id+'"]').val($.datepicker.formatDate(globalSettings.datepickerformat.value, myDate)); $('.message_date_input[data-id="'+data_id+'"]').show(); $('.message_time_input[data-id="'+data_id+'"]').val($.fullCalendar.formatDate(myDate, (globalSettings.ampmformat.value ? 'hh:mm TT' : 'HH:mm'))); $('.message_time_input[data-id="'+data_id+'"]').show(); $('.before_after_input[data-id="'+data_id+'"]').hide(); } else { $('.message_date_input[data-id="'+data_id+'"]').hide(); $('.message_time_input[data-id="'+data_id+'"]').hide(); $('.before_after_input[data-id="'+data_id+'"]').show(); $('.before_after_input[data-id="'+data_id+'"]').val('15'); } }); $('#event_details_template .before_after_input').bind('keyup change', function(){ if($(this).val()=='') { $(this).parent().find('img').css('display', 'inline'); //$(this).parent().find('img').css('visibility','visible'); } else { if($(this).val().match("^(\d*[0-9])*$")==null) { $(this).parent().find('img').css('display', 'inline'); //$(this).parent().find('img').css('visibility','visible'); } else $(this).parent().find('img').css('display', 'none'); } }); $('#event_details_template .alert').change(function(){ var data_id=$(this).attr("data-id"); if($(this).val()!='none') { $('.alert_details[data-id="'+data_id+'"]').show(); $('.alert_message_date[data-id="'+data_id+'"]').show(); var myDate=new Date(); myDate.setDate(myDate.getDate()+7); if($('#date_from').parent().parent().find('img:visible').length==0) { var dateTo=$.datepicker.parseDate(globalSettings.datepickerformat.value,$("#date_from").val()); var datetime_to=$.fullCalendar.formatDate(dateTo, 'MM/dd/yyyy, '); myDate=new Date(Date.parse(datetime_to + (!$("#allday").prop('checked')?$("#time_from").val():''))); myDate.setHours(myDate.getHours()-1); } else if($('#date_to').parent().parent().find('img:visible').length==0) { var dateTo=$.datepicker.parseDate(globalSettings.datepickerformat.value,$("#date_to").val()); var datetime_to=$.fullCalendar.formatDate(dateTo, 'MM/dd/yyyy, '); myDate=new Date(Date.parse(datetime_to + (!$("#allday").prop('checked')?$("#time_to").val():''))); myDate.setHours(myDate.getHours()-1); } $('.message_date_input[data-id="'+data_id+'"]').val($.datepicker.formatDate(globalSettings.datepickerformat.value, myDate)); $('.message_time_input[data-id="'+data_id+'"]').val($.fullCalendar.formatDate(myDate, (globalSettings.ampmformat.value ? 'hh:mm TT' : 'HH:mm'))); event_alert_add(data_id); } else { $('.alert_details[data-id="'+data_id+'"]').hide(); $('.alert_message_date[data-id="'+data_id+'"]').hide(); checkFor(data_id); var data_id=$(this).attr("data-id"); $('#event_details_template tr[data-id="'+data_id+'"]').remove(); } checkEventFormScrollBar(); }); $('#repeat_end_after, #repeat_interval_detail').bind('keyup change',function(){ if($(this).val()=='') { $(this).parent().find('img').css('display', 'inline'); //$(this).parent().find('img').css('visibility','visible'); } else { if($(this).val().match("^[0-9]+$")==null || parseInt($(this).val(),10)<1) { $(this).parent().find('img').css('display', 'inline'); //$(this).parent().find('img').css('visibility','visible'); } else $(this).parent().find('img').css('display', 'none'); } }); $('#repeat_month_custom_select').change(function(){ if($(this).val()=="custom") { $('#month_custom2').show(); $('#repeat_month_custom_select2').parent().hide(); } else { $('#month_custom2').hide(); $('#repeat_month_custom_select2').parent().show(); } checkEventFormScrollBar(); }); $('#repeat_year_custom_select1').change(function(){ if($(this).val()=="custom") { $('#year_custom1').show(); $('#repeat_year_custom_select2').parent().hide(); } else { $('#year_custom1').hide(); $('#repeat_year_custom_select2').parent().show(); } checkEventFormScrollBar(); }); $('#repeat_end_details').change(function(){ $('#repeat_end_date').parent().find('img').css('display', 'none'); if($('#repeat_end_details option:selected').attr('data-type')=="repeat_details_on_date") { $('#repeat_end_after').hide(); $('#repeat_end_date').show(); var today; if($('#date_from').val()!='') { today=$.datepicker.parseDate(globalSettings.datepickerformat.value, $('#date_from').val()); if(today==null) today=new Date(); } else today=new Date(); var date=new Date(today.getFullYear(), today.getMonth(), today.getDate()+2); $('#repeat_end_date').val($.datepicker.formatDate(globalSettings.datepickerformat.value, date)); } if($('#repeat_end_details option:selected').attr('data-type')=="repeat_details_after") { $('#repeat_end_after').show(); $('#repeat_end_after').val('2'); $('#repeat_end_date').hide(); } if($('#repeat_end_details option:selected').attr('data-type')=="repeat_details_never") { $('#repeat_end_after').hide(); $('#repeat_end_date').hide(); } checkEventFormScrollBar(); }); $('#closeButton').click(function(){ if($('#uid').val()!='') { var uid=$('#uid').val(); var calUID=uid.substring(0, uid.lastIndexOf('/')+1); var events=$('.event_item[data-id="'+uid+'"]'); var color=$('#ResourceCalDAVList').find("[data-id='"+calUID+"']").find('.resourceCalDAVColor').css('background-color'); $.each(events, function(index, event){ if(event.nodeName.toLowerCase()!='tr') { $(event).find('.fc-event-inner, .fc-event-head').addBack().css({'background-color': rgbToRgba(color,0.9), 'border-color': color}); $(event).find('.fc-event-title, .fc-event-title-strict, .fc-event-time').css('color',checkFontColor(rgbToHex(color))); } else { $(event).children('.fc-event-handle').css({'background-color': rgbToRgba(color,0.9), 'border-color': color}); } }); } else { var beforeScroll = $('#main').width()-$('#calendar').width(); $('#calendar').fullCalendar('unselect'); $('#calendar').fullCalendar('removeEvents', 'fooUID'); var afterScroll = $('#main').width()-$('#calendar').width(); rerenderCalendar(beforeScroll!=afterScroll); } $('#show').val(''); $('#CAEvent').hide(); $('#EventDisabler').fadeOut(globalEditorFadeAnimation, function(){ $('#timezonePicker').prop('disabled', false); }); }); $('#resetButton').click(function(){ $('#event_details_template').find('img[data-type=invalidSmall]').css('display','none'); var uid=$('#uid').val(); if(uid!='') { var calUID=uid.substring(0, uid.lastIndexOf('/')+1); var events=$('.event_item[data-id="'+uid+'"]'); var color=$('#ResourceCalDAVList').find("[data-id='"+calUID+"']").find('.resourceCalDAVColor').css('background-color'); $.each(events, function(index, event){ if(event.nodeName.toLowerCase()!='tr') { $(event).find('.fc-event-inner, .fc-event-head').addBack().css({'background-color': rgbToRgba(color,0.9), 'border-color': color}); $(event).find('.fc-event-title, .fc-event-title-strict, .fc-event-time').css('color',checkFontColor(rgbToHex(color))); } else { $(event).children('.fc-event-handle').css({'background-color': rgbToRgba(color,0.9), 'border-color': color}) } }); if($('#recurrenceID').val()!='' && $('#repeatCount').val()!='') showEventForm(null, globalCalEvent.allDay, globalCalEvent, globalJsEvent, 'show', 'editOnly'); else if($('#futureStart').val()!='') showEventForm(null, globalCalEvent.allDay, globalCalEvent, globalJsEvent, 'show', 'futureOnly'); else showEventForm(null, globalCalEvent.allDay, globalCalEvent, globalJsEvent, 'show', ''); startEditModeEvent(); } }); $('#allday').click(function(){ if($('#allday').prop('checked')) { $('#timezone').val('local'); $('#time_from_cell').css('visibility','hidden'); $('#time_to_cell').css('visibility','hidden'); $('#time_to_cell').find('img').css('display','none'); $('#time_from_cell').find('img').css('display','none'); $('.timezone_row').css('display', 'none'); stripEventAlerts(); } else { $('#time_from_cell').css('visibility','visible'); $('#time_to_cell').css('visibility','visible'); $('#time_from').trigger('change'); $('#time_to').trigger('change'); if(globalSettings.timezonesupport.value) { $('.timezone_row').show(); $('#timezone').val(globalSessionTimeZone); } expandEventAlerts(); } checkEventFormScrollBar(); }); $('#event_details_template .customTable td').click(function(){ if($(this).hasClass('disabled')) return true; else if($(this).hasClass('selected')) $(this).removeClass('selected'); else $(this).addClass('selected'); }); $('#event_calendar').change(function(){ var color = ''; if($(this).val()=='choose') color = 'rgb(240,240,240)'; else color=$('#ResourceCalDAVList').find("[data-id='"+$(this).val()+"']").find('.resourceCalDAVColor').css('background-color'); var uid='fooUID'; if($('#uid').val()!='') uid=$('#uid').val(); var events=$('.event_item[data-id="'+uid+'"]'); $('#eventColor').css('background-color',color); $.each(events, function(index, event){ if(event.nodeName.toLowerCase()!='tr') { $(event).find('.fc-event-inner, .fc-event-head').addBack().css({'background-color': rgbToRgba(color,0.9), 'border-color': color}); $(event).find('.fc-event-title, .fc-event-title-strict, .fc-event-time').css('color', checkFontColor(rgbToHex(color))); } else { $(event).find('.fc-event-handle').css({'background-color': rgbToRgba(color,0.9), 'border-color': color}); } }); }); $('#repeat').change(function(){ if($('#repeat option:selected').attr('data-type')=='repeat_no-repeat' || $('#repeat option:selected').attr('data-type')=="custom_repeat") { $('#repeat_details').hide(); $('#repeat_interval').hide(); $('#week_custom').hide(); $('#month_custom1').hide(); $('#month_custom2').hide(); $('#year_custom1').hide(); $('#year_custom2').hide(); $('#year_custom3').hide(); } else { $('#repeat_details').show(); if($(this).val()!='BUSINESS' && $(this).val()!='TWO_WEEKLY' && $(this).val()!='WEEKEND') { $('#repeat_interval').show(); $("#repeat_interval_detail").val('1'); $('#repeat_interval').find('img').css('display','none'); } else $('#repeat_interval').hide(); if($(this).val()=='DAILY') $('#repeat_interval [data-type="txt_interval"]').text(localization[globalInterfaceLanguage].repeatDays); if($(this).val()=='WEEKLY') $('#repeat_interval [data-type="txt_interval"]').text(localization[globalInterfaceLanguage].repeatWeeks); if($(this).val()=='MONTHLY') $('#repeat_interval [data-type="txt_interval"]').text(localization[globalInterfaceLanguage].repeatMonths); if($(this).val()=='YEARLY') $('#repeat_interval [data-type="txt_interval"]').text(localization[globalInterfaceLanguage].repeatYears); if($(this).val()=='CUSTOM_WEEKLY') { $('#repeat_interval [data-type="txt_interval"]').text(localization[globalInterfaceLanguage].repeatWeeks); $('#week_custom').show(); } else $('#week_custom').hide(); if($(this).val()=='CUSTOM_MONTHLY') { $('#repeat_interval [data-type="txt_interval"]').text(localization[globalInterfaceLanguage].repeatMonths); $('#month_custom1').show(); if($('#repeat_month_custom_select').val() == "custom") $('#repeat_month_custom_select').trigger('change'); } else { $('#month_custom1').hide(); $('#month_custom2').hide(); } if($(this).val()=='CUSTOM_YEARLY') { $('#repeat_interval [data-type="txt_interval"]').text(localization[globalInterfaceLanguage].repeatYears); $('#year_custom2').show(); $('#year_custom3').show(); if($('#repeat_year_custom_select1').val() == "custom") $('#repeat_year_custom_select1').trigger('change'); } else { $('#year_custom1').hide(); $('#year_custom2').hide(); $('#year_custom3').hide(); } var today; if($('#date_from').val()!='') { today=$.datepicker.parseDate(globalSettings.datepickerformat.value, $('#date_from').val()); if(today==null) today=new Date(); } else today=new Date(); var date=new Date(today.getFullYear(),today.getMonth(),today.getDate()+2); $('#repeat_end_date').val($.datepicker.formatDate(globalSettings.datepickerformat.value, date)); } checkEventFormScrollBar(); }); $('#status').change(function(){ var status = $(this).val(); if(status=='CANCELLED') $('#name').addClass('title_cancelled'); else $('#name').removeClass('title_cancelled'); todoStatusChanged(status); }); } function startEditModeEvent() { $('#timezonePicker').prop('disabled', true); $('#EventDisabler').fadeIn(globalEditorFadeAnimation); $('#CAEvent .formNav').css('display', 'none'); $('#CAEvent textarea.header').removeClass('leftspace rightspace'); $('#editButton').hide(); $('#duplicateButton').hide(); $('#editOptionsButton').hide(); $('#saveButton').show(); $('#resetButton').show(); $('#deleteButton').show(); $('#show').val(''); $('#eventDetailsTable :input[disabled]').prop('disabled', false); $('#eventDetailsTable :input[type="text"]').prop('readonly', false); $('#eventDetailsTable .customTable td').removeClass('disabled'); $('#eventDetailsTable textarea').prop('readonly', false); /*************************** BAD HACKS SECTION ***************************/ if($.browser.msie || $.browser.mozilla) { var newSVG=$(SVG_select).attr('data-type', 'select_icon').css({'pointer-events': 'none', 'z-index': '1', 'display': 'inline', 'margin-left': '-19px', 'vertical-align': 'top', 'background-color': '#ffffff'}); // background-color = stupid IE9 bug $('#event_details_template').find('svg[data-type="select_icon"]').replaceWith($('<div>').append($(newSVG).clone()).html()); } /*************************** END OF BAD HACKS SECTION ***************************/ $('#name').focus(); } function startEditModeTodo() { $('#todoInEdit').val('true'); $('#timezonePickerTODO').prop('disabled', true); $('#TodoDisabler').fadeIn(globalEditorFadeAnimation); $('#CATodo .formNav').css('display', 'none'); $('#CATodo textarea.header').removeClass('leftspace rightspace'); $('#editTODO').hide(); $('#duplicateTODO').hide(); $('#editOptionsButtonTODO').hide(); $('#closeTODO').show(); $('#saveTODO').show(); $('#resetTODO').show(); $('#deleteTODO').show(); $('#showTODO').val(''); $('#todoDetailsTable :input[disabled]').prop('disabled', false); $('#todoDetailsTable :input[type="text"]').prop('readonly', false); $('#todoDetailsTable textarea').prop('readonly', false); /*************************** BAD HACKS SECTION ***************************/ if($.browser.msie || $.browser.mozilla) { var newSVG=$(SVG_select).attr('data-type', 'select_icon').css({'pointer-events': 'none', 'z-index': '1', 'display': 'inline', 'margin-left': '-19px', 'vertical-align': 'top', 'background-color': '#ffffff'}); // background-color = stupid IE9 bug $('#todo_details_template').find('svg[data-type="select_icon"]').replaceWith($('<div>').append($(newSVG).clone()).html()); } /*************************** END OF BAD HACKS SECTION ***************************/ $('#percentageSlider').slider({ disabled: false }); $('#nameTODO').focus(); } function todo_alert_add(data_id) { data_id++; var newTr1, newTr2, newTr3; newTr1='<tr data-id="'+data_id+'">'+ '<td><label data-type="alert_TODO" for="alertTODO">alert: </label></td>'+ '<td data-size="full" colspan="2">'+ '<select class="long alertTODO" name="alert_typeTODO" data-id="'+data_id+'">'+ '<option data-type="alert_none_TODO" value="none">none</option>'+ '<option data-type="alert_message_TODO" value="message">message</option>'+ '</select>'+ '</td>'+ '</tr>'; newTr2='<tr class="alert_detailsTODO" style="display:none;" data-id="'+data_id+'">'+ '<td></td>'+ '<td data-size="full" colspan="2">'+ '<select class="long alert_message_detailsTODO" name="alert_detailsTODO" data-id="'+data_id+'">'+ '<option data-type="on_dateTODO" class="todoTimeOptions" value="on_date">On date</option>'+ ($('#todo_type').val()=='none' ? '' : '<option data-type="weeks_beforeTODO" value="weeks_before">weeks before</option>'+ '<option data-type="days_beforeTODO" value="days_before">days before</option>'+ '<option data-type="hours_beforeTODO" value="hours_before">hours before</option>'+ '<option data-type="minutes_beforeTODO" value="minutes_before">minutes before</option>'+ '<option data-type="seconds_beforeTODO" value="seconds_before">seconds before</option>'+ '<option data-type="weeks_afterTODO" value="weeks_after">weeks after</option>'+ '<option data-type="days_afterTODO" value="days_after">days after</option>'+ '<option data-type="hours_afterTODO" value="hours_after">hours after</option>'+ '<option data-type="minutes_afterTODO" value="minutes_after">minutes after</option>'+ '<option data-type="seconds_afterTODO" value="seconds_after">seconds after</option>')+ '</select>'+ '</td>'+ '</tr>'; newTr3='<tr data-id="'+data_id+'" class="alert_message_dateTODO" style="display:none;">'+ '<td></td>'+ '<td><input data-id="'+data_id+'" data-type="PH_before_after_alert_TODO" class="small before_after_inputTODO" type="text" style="display:none;" />'+ '<input data-id="'+data_id+'" class="date small message_date_inputTODO" data-type="PH_alarm_date_TODO" type="text" name="message_dateTODO" /><div class="invalidWrapper"><img data-type="invalidSmall" data-id="'+data_id+'" style="display: none;" src="images/error_b.svg" alt="invalid" /></div></td>'+ '<td><input data-id="'+data_id+'" data-type="PH_alarm_time_TODO" class="time small message_time_inputTODO" type="text" name="message_timeTODO" /><div class="invalidWrapper"><img data-type="invalidSmall" data-id="'+data_id+'" style="display: none;" src="images/error_b.svg" alt="invalid" /></div></td>'+ '<tr>'; $('#url_trTODO').before(newTr1); $('#url_trTODO').before(newTr2); $('#url_trTODO').before(newTr3); translateTodoAlerts(); $('#todo_details_template').find('input[placeholder],textarea[placeholder]').placeholder(); $('#todo_details_template .alert_message_detailsTODO[data-id="'+data_id+'"]').change(function(){ var data_id=$(this).attr("data-id"); $('.before_after_inputTODO[data-id="'+data_id+'"]').parent().parent().find('img').css('display','none'); if($('.alert_message_detailsTODO[data-id="'+data_id+'"] option:selected').attr('data-type')=="on_dateTODO") { var myDate=new Date(); myDate.setDate(myDate.getDate()+7); if($('.dateTrToTODO').is(':visible') && $('.dateTrToTODO img:visible').length==0) { var dateTo=$.datepicker.parseDate(globalSettings.datepickerformat.value,$("#date_toTODO").val()); var datetime_to=$.fullCalendar.formatDate(dateTo, 'MM/dd/yyyy, '); myDate=new Date(Date.parse(datetime_to +$("#time_toTODO").val())); myDate.setHours(myDate.getHours()-1); } else if($('.dateTrFromTODO').is(':visible') && $('.dateTrFromTODO img:visible').length==0) { var dateTo=$.datepicker.parseDate(globalSettings.datepickerformat.value,$("#date_fromTODO").val()); var datetime_to=$.fullCalendar.formatDate(dateTo, 'MM/dd/yyyy, '); myDate=new Date(Date.parse(datetime_to +$("#time_fromTODO").val())); myDate.setHours(myDate.getHours()-1); } $('.message_date_inputTODO[data-id="'+data_id+'"]').val($.datepicker.formatDate(globalSettings.datepickerformat.value, myDate)); $('.message_date_inputTODO[data-id="'+data_id+'"]').show(); $('.message_time_inputTODO[data-id="'+data_id+'"]').val($.fullCalendar.formatDate(myDate, (globalSettings.ampmformat.value ? 'hh:mm TT' : 'HH:mm'))); $('.message_time_inputTODO[data-id="'+data_id+'"]').show(); $('.before_after_inputTODO[data-id="'+data_id+'"]').hide(); } else { $('.message_date_inputTODO[data-id="'+data_id+'"]').hide(); $('.message_time_inputTODO[data-id="'+data_id+'"]').hide(); $('.before_after_inputTODO[data-id="'+data_id+'"]').show(); $('.before_after_inputTODO[data-id="'+data_id+'"]').val('15'); } }); $('#todo_details_template .before_after_inputTODO[data-id="'+data_id+'"]').bind('keyup change', function(){ if($(this).val()=='') { $(this).parent().find('img').css('display', 'inline'); //$(this).parent().find('img').css('visibility','visible'); } else { if($(this).val().match("^[0-9]+$")==null) { $(this).parent().find('img').css('display', 'inline'); //$(this).parent().find('img').css('visibility','visible'); } else $(this).parent().find('img').css('display', 'none'); } }); $('#todo_details_template .alertTODO[data-id="'+data_id+'"]').change(function(){ var data_id=$(this).attr("data-id"); if($(this).val()!='none') { $('.alert_detailsTODO[data-id="'+data_id+'"]').show(); $('.alert_message_dateTODO[data-id="'+data_id+'"]').show(); if($('#todo_type').val()!='none') expandTodoAlerts(); var myDate=new Date(); myDate.setDate(myDate.getDate()+7); if($('.dateTrToTODO').is(':visible') && $('.dateTrToTODO img:visible').length==0) { var dateTo=$.datepicker.parseDate(globalSettings.datepickerformat.value,$("#date_toTODO").val()); var datetime_to=$.fullCalendar.formatDate(dateTo, 'MM/dd/yyyy, '); myDate=new Date(Date.parse(datetime_to +$("#time_toTODO").val())); myDate.setHours(myDate.getHours()-1); } else if($('.dateTrFromTODO').is(':visible') && $('.dateTrFromTODO img:visible').length==0) { var dateTo=$.datepicker.parseDate(globalSettings.datepickerformat.value,$("#date_fromTODO").val()); var datetime_to=$.fullCalendar.formatDate(dateTo, 'MM/dd/yyyy, '); myDate=new Date(Date.parse(datetime_to +$("#time_fromTODO").val())); myDate.setHours(myDate.getHours()-1); } $('.message_date_inputTODO[data-id="'+data_id+'"]').val($.datepicker.formatDate(globalSettings.datepickerformat.value, myDate)); $('.message_time_inputTODO[data-id="'+data_id+'"]').val($.fullCalendar.formatDate(myDate, (globalSettings.ampmformat.value ? 'hh:mm TT' : 'HH:mm'))); todo_alert_add(data_id); } else { $('.alert_detailsTODO[data-id="'+data_id+'"]').hide(); $('.alert_message_dateTODO[data-id="'+data_id+'"]').hide(); checkForTodo(data_id); var data_id=$(this).attr("data-id"); $('#todo_details_template tr[data-id="'+data_id+'"]').remove(); } checkTodoFormScrollBar(); }); initCalDavDatepicker($('#todo_details_template .alert_message_dateTODO[data-id="'+data_id+'"]')); initCalDavTimepicker($('#todo_details_template .alert_message_dateTODO[data-id="'+data_id+'"]')); /*************************** BAD HACKS SECTION ***************************/ // here we fix the cross OS/cross broser problems (unfixable in pure CSS) if($.browser.webkit && !!window.chrome) /* Chrome */ { if(navigator.platform.toLowerCase().indexOf('win')==0) /* Windows version */ { $('#todo_details_template').find('input').css('text-indent', '2px'); $('#todo_details_template').find('select').css({'padding-left': '0px', 'padding-right': '13px'}); } else /* non-Windows version */ $('#todo_details_template').find('input').css('text-indent', '1px'); } else if($.browser.safari) { $('#todo_details_template').find('textarea').addClass('safari_hack'); $('#todo_details_template').find('input').addClass('safari_hack'); } else if($.browser.msie) /* IE */ { if(parseInt($.browser.version, 10)==10) /* IE 10 (because there are no more conditional comments) */ { $('#todo_details_template').find('select').css({'padding-top': '1px', 'padding-left': '0px', 'padding-right': '0px'}); $('#todo_details_template').find('textarea').css('padding-top', '3px'); $('#todo_details_template').find('input[type=button]').css('padding-top', '2px'); } } /* IE or FF */ if($.browser.msie || $.browser.mozilla) { // ADD empty SVG to interface (we will replace it later) $('<svg data-type="select_icon"></svg>').css('display', 'none').insertAfter($('#todo_details_template tr[data-id="'+data_id+'"]').find('select')); } if($.browser.msie || $.browser.mozilla) { var newSVG=$(SVG_select).attr('data-type', 'select_icon').css({'pointer-events': 'none', 'z-index': '1', 'display': 'inline', 'margin-left': '-19px', 'vertical-align': 'top', 'background-color': '#ffffff'}); // background-color = stupid IE9 bug $('#todo_details_template tr[data-id="'+data_id+'"]').find('svg[data-type="select_icon"]').replaceWith($('<div>').append($(newSVG).clone()).html()); } /*************************** END OF BAD HACKS SECTION ***************************/ } function event_alert_add(data_id) { data_id++; var newTr1, newTr2, newTr3; newTr1='<tr data-id="'+data_id+'">'+ '<td><label data-type="alert" for="alert">alert: </label></td>'+ '<td data-size="full" colspan="2">'+ '<select class="long alert" name="alert_type" data-id="'+data_id+'">'+ '<option data-type="alert_none" value="none">none</option>'+ '<option data-type="alert_message" value="message">message</option>'+ '</select>'+ '</td>'+ '</tr>'; newTr2='<tr data-id="'+data_id+'" class="alert_details" style="display:none;">'+ '<td></td>'+ '<td data-size="full" colspan="2">'+ '<select class="long alert_message_details" name="alert_details" data-id="'+data_id+'">'+ '<option data-type="on_date" value="on_date">On date</option>'+ ($('#allday').prop('checked') ? '' : '<option data-type="weeks_before" value="weeks_before">weeks before</option>'+ '<option data-type="days_before" value="days_before">days before</option>'+ '<option data-type="hours_before" value="hours_before">hours before</option>'+ '<option data-type="minutes_before" value="minutes_before">minutes before</option>'+ '<option data-type="seconds_before" value="seconds_before">seconds before</option>'+ '<option data-type="weeks_after" value="weeks_after">weeks after</option>'+ '<option data-type="days_after" value="days_after">days after</option>'+ '<option data-type="hours_after" value="hours_after">hours after</option>'+ '<option data-type="minutes_after" value="minutes_after">minutes after</option>'+ '<option data-type="seconds_after" value="seconds_after">seconds after</option>') + '</select>'+ '</td>'+ '</tr>'; newTr3='<tr data-id="'+data_id+'" class="alert_message_date" style="display:none;">'+ '<td></td>'+ '<td><input class="small before_after_input" data-type="PH_before_after_alert" type="text" data-id="'+data_id+'" style="display:none;" />'+ '<input class="date small message_date_input" data-type="PH_alarm_date" type="text" data-id="'+data_id+'" /><div class="invalidWrapper"><img data-type="invalidSmall" data-id="'+data_id+'" style="display: none;" src="images/error_b.svg" alt="invalid" /></div></td>'+ '<td><input class="time small message_time_input" data-type="PH_alarm_time" type="text" data-id="'+data_id+'" /><div class="invalidWrapper"><img data-type="invalidSmall" data-id="'+data_id+'" style="display: none;" src="images/error_b.svg" alt="invalid" /></div></td>'+ '<tr>'; $('#url_tr').before(newTr1); $('#url_tr').before(newTr2); $('#url_tr').before(newTr3); translateEventAlerts(); $('#event_details_template').find('input[placeholder],textarea[placeholder]').placeholder(); $('#event_details_template .before_after_input[data-id="'+data_id+'"]').bind('keyup change', function(){ if($(this).val()=='') { $(this).parent().find('img').css('display', 'inline'); //$(this).parent().find('img').css('visibility','visible'); } else { if($(this).val().match("^(\d*[0-9])*$")==null) { $(this).parent().find('img').css('display', 'inline'); //$(this).parent().find('img').css('visibility','visible'); } else $(this).parent().find('img').css('display', 'none'); } }); $('#event_details_template .alert[data-id="'+data_id+'"]').change(function(){ var data_id=$(this).attr("data-id"); if($(this).val()!='none') { $('.alert_details[data-id="'+data_id+'"]').show(); $('.alert_message_date[data-id="'+data_id+'"]').show(); if(!$('#allday').prop('checked')) expandEventAlerts(); var myDate=new Date(); myDate.setDate(myDate.getDate()+7); if($('#date_from').parent().parent().find('img:visible').length==0) { var dateTo=$.datepicker.parseDate(globalSettings.datepickerformat.value,$("#date_from").val()); var datetime_to=$.fullCalendar.formatDate(dateTo, 'MM/dd/yyyy, '); myDate=new Date(Date.parse(datetime_to + (!$("#allday").prop('checked')?$("#time_from").val():''))); myDate.setHours(myDate.getHours()-1); } else if($('#date_to').parent().parent().find('img:visible').length==0) { var dateTo=$.datepicker.parseDate(globalSettings.datepickerformat.value,$("#date_to").val()); var datetime_to=$.fullCalendar.formatDate(dateTo, 'MM/dd/yyyy, '); myDate=new Date(Date.parse(datetime_to + (!$("#allday").prop('checked')?$("#time_to").val():''))); myDate.setHours(myDate.getHours()-1); } $('.message_date_input[data-id="'+data_id+'"]').val($.datepicker.formatDate(globalSettings.datepickerformat.value, myDate)); $('.message_time_input[data-id="'+data_id+'"]').val($.fullCalendar.formatDate(myDate, (globalSettings.ampmformat.value ? 'hh:mm TT' : 'HH:mm'))); event_alert_add(data_id); } else { $('.alert_details[data-id="'+data_id+'"]').hide(); $('.alert_message_date[data-id="'+data_id+'"]').hide(); checkFor(data_id); var data_id=$(this).attr("data-id"); $('#event_details_template tr[data-id="'+data_id+'"]').remove(); } checkEventFormScrollBar(); }); $('#event_details_template .alert_message_details[data-id="'+data_id+'"]').change(function(){ var data_id=$(this).attr("data-id"); $('.before_after_input[data-id="'+data_id+'"]').parent().parent().find('img').css('display','none'); if($('.alert_message_details[data-id="'+data_id+'"] option:selected').attr('data-type')=="on_date") { var myDate=new Date(); myDate.setDate(myDate.getDate()+7); if($('#date_from').parent().parent().find('img:visible').length==0) { var dateTo=$.datepicker.parseDate(globalSettings.datepickerformat.value,$("#date_from").val()); var datetime_to=$.fullCalendar.formatDate(dateTo, 'MM/dd/yyyy, '); myDate=new Date(Date.parse(datetime_to + (!$("#allday").prop('checked')?$("#time_from").val():''))); myDate.setHours(myDate.getHours()-1); } else if($('#date_to').parent().parent().find('img:visible').length==0) { var dateTo=$.datepicker.parseDate(globalSettings.datepickerformat.value,$("#date_to").val()); var datetime_to=$.fullCalendar.formatDate(dateTo, 'MM/dd/yyyy, '); myDate=new Date(Date.parse(datetime_to + (!$("#allday").prop('checked')?$("#time_to").val():''))); myDate.setHours(myDate.getHours()-1); } $('.message_date_input[data-id="'+data_id+'"]').val($.datepicker.formatDate(globalSettings.datepickerformat.value, myDate)); $('.message_date_input[data-id="'+data_id+'"]').show(); $('.message_time_input[data-id="'+data_id+'"]').val($.fullCalendar.formatDate(myDate, (globalSettings.ampmformat.value ? 'hh:mm TT' : 'HH:mm'))); $('.message_time_input[data-id="'+data_id+'"]').show(); $('.before_after_input[data-id="'+data_id+'"]').hide(); } else { $('.message_date_input[data-id="'+data_id+'"]').hide(); $('.message_time_input[data-id="'+data_id+'"]').hide(); $('.before_after_input[data-id="'+data_id+'"]').show(); $('.before_after_input[data-id="'+data_id+'"]').val('15'); } }); initCalDavDatepicker($('#event_details_template .alert_message_date[data-id="'+data_id+'"]')); initCalDavTimepicker($('#event_details_template .alert_message_date[data-id="'+data_id+'"]')); /*************************** BAD HACKS SECTION ***************************/ // here we fix the cross OS/cross broser problems (unfixable in pure CSS) if($.browser.webkit && !!window.chrome) /* Chrome */ { if(navigator.platform.toLowerCase().indexOf('win')==0) /* Windows version */ { $('#event_details_template').find('input').css('text-indent', '2px'); $('#event_details_template').find('select').css({'padding-left': '0px', 'padding-right': '13px'}); } else /* non-Windows version */ $('#event_details_template').find('input').css('text-indent', '1px'); } else if($.browser.safari) { $('#event_details_template').find('textarea').addClass('safari_hack'); $('#event_details_template').find('input').addClass('safari_hack'); } else if($.browser.msie) /* IE */ { if(parseInt($.browser.version, 10)==10) /* IE 10 (because there are no more conditional comments) */ { $('#event_details_template').find('select').css({'padding-top': '1px', 'padding-left': '0px', 'padding-right': '0px'}); $('#event_details_template').find('textarea').css('padding-top', '3px'); $('#event_details_template').find('input[type=button]').css('padding-top', '2px'); } } /* IE or FF */ if($.browser.msie || $.browser.mozilla) { // ADD empty SVG to interface (we will replace it later) $('<svg data-type="select_icon"></svg>').css('display', 'none').insertAfter($('#event_details_template tr[data-id="'+data_id+'"]').find('select')); } if($.browser.msie || $.browser.mozilla) { var newSVG=$(SVG_select).attr('data-type', 'select_icon').css({'pointer-events': 'none', 'z-index': '1', 'display': 'inline', 'margin-left': '-19px', 'vertical-align': 'top', 'background-color': '#ffffff'}); // background-color = stupid IE9 bug $('#event_details_template tr[data-id="'+data_id+'"]').find('svg[data-type="select_icon"]').replaceWith($('<div>').append($(newSVG).clone()).html()); } /*************************** END OF BAD HACKS SECTION ***************************/ } function stripEventAlerts() { $('.alert_message_details').each(function(){ if($(this).val()=='on_date') $(this).find('option').not(':selected').remove(); else { var dataID=$(this).parent().parent().attr('data-id'); $('#event_details_template').find('tr[data-id="'+dataID+'"]').remove(); } }); } function expandEventAlerts() { $('.alert_message_details').each(function(){ var value=$(this).val(); $(this).html('<option data-type="on_date" value="on_date">on date</option>'+ '<option data-type="weeks_before" value="weeks_before">weeks before</option>'+ '<option data-type="days_before" value="days_before">days before</option>'+ '<option data-type="hours_before" value="hours_before">hours before</option>'+ '<option data-type="minutes_before" value="minutes_before">minutes before</option>'+ '<option data-type="seconds_before" value="seconds_before">seconds before</option>'+ '<option data-type="weeks_after" value="weeks_after">weeks after</option>'+ '<option data-type="days_after" value="days_after">days after</option>'+ '<option data-type="hours_after" value="hours_after">hours after</option>'+ '<option data-type="minutes_after" value="minutes_after">minutes after</option>'+ '<option data-type="seconds_after" value="seconds_after">seconds after</option>'); $(this).val(value); }); translateEventAlerts(); } function stripTodoAlerts() { $('.alert_message_detailsTODO').each(function(){ if($(this).val()=='on_date') $(this).find('option').not(':selected').remove(); else { var dataID=$(this).parent().parent().attr('data-id'); $('#todo_details_template').find('tr[data-id="'+dataID+'"]').remove(); } }); } function expandTodoAlerts() { $('.alert_message_detailsTODO').each(function(){ var value=$(this).val(); $(this).html('<option data-type="on_dateTODO" value="on_date">On date</option>'+ '<option data-type="weeks_beforeTODO" value="weeks_before">weeks before</option>'+ '<option data-type="days_beforeTODO" value="days_before">days before</option>'+ '<option data-type="hours_beforeTODO" value="hours_before">hours before</option>'+ '<option data-type="minutes_beforeTODO" value="minutes_before">minutes before</option>'+ '<option data-type="seconds_beforeTODO" value="seconds_before">seconds before</option>'+ '<option data-type="weeks_afterTODO" value="weeks_after">weeks after</option>'+ '<option data-type="days_afterTODO" value="days_after">days after</option>'+ '<option data-type="hours_afterTODO" value="hours_after">hours after</option>'+ '<option data-type="minutes_afterTODO" value="minutes_after">minutes after</option>'+ '<option data-type="seconds_afterTODO" value="seconds_after">seconds after</option>'); $(this).val(value); }); translateTodoAlerts(); }