Changeset 8018 for trunk


Ignore:
Timestamp:
03/15/13 10:51:32 (11 years ago)
Author:
thiago
Message:

Ticket #3383 - Melhorias ao alterar data e hora de eventos

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/prototype/modules/calendar/js/helpers.js

    r7999 r8018  
    178178function eventDetails( objEvent, decoded, path, isMail, repeat) 
    179179{ 
    180  
    181180    $('.qtip.qtip-blue').remove(); 
    182181 
     
    563562dateSameValue = function(){ 
    564563    UI.dialogs.addEvent.find('input.start-date').datepicker({ 
     564        dateFormat: User.preferences.dateFormat.replace(/M/g, 'm').replace(/yyyy/g, 'yy'), 
    565565        onSelect : function (selectedDate){ 
    566             $(".end-date").val(selectedDate); 
     566            endDate = $(".end-date").val(); 
     567            storeSelectedDate = selectedDate; 
     568 
     569            if ( User.preferences.dateFormat == "dd/MM/yyyy" || User.preferences.dateFormat == "dd-MM-yyyy" ) { 
     570                if ( User.preferences.dateFormat == "dd/MM/yyyy" ) { 
     571                    selectedDate = selectedDate.split("/"); 
     572                    endDate = endDate.split("/"); 
     573                } else if( User.preferences.dateFormat == "dd-MM-yyyy" ){ 
     574                    selectedDate = selectedDate.split("-"); 
     575                    endDate = endDate.split("-"); 
     576                } 
     577 
     578                newDt = new Date(selectedDate[2],selectedDate[1], selectedDate[0]); 
     579                endDate = new Date(endDate[2],endDate[1], endDate[0]); 
     580 
     581            } else if ( User.preferences.dateFormat == "MM/dd/yyyy" ) { 
     582                selectedDate = selectedDate.split("/"); 
     583                endDate = endDate.split("/"); 
     584 
     585                newDt = new Date(selectedDate[2],selectedDate[0], selectedDate[1]); 
     586                endDate = new Date(endDate[2],endDate[0], endDate[1]); 
     587            } 
     588 
     589            if( newDt > endDate ) 
     590                $(".end-date").val(storeSelectedDate); 
    567591        } 
    568592    }); 
     
    581605 
    582606 
    583                    
    584607    if(objEvent.repeat)  
    585608    { 
     
    9771000}); 
    9781001 
    979  
    980  
    981  
    9821002dateSameValue(); 
    9831003 
    984 var dates = UI.dialogs.addEvent.find('input.date').datepicker({ 
    985     dateFormat: User.preferences.dateFormat.replace(/M/g, 'm').replace(/yyyy/g, 'yy'), 
    986     onSelect : function( selectedDate ){ 
    987            updateMap(); 
    988     } 
     1004 
     1005var setTime = function( selectedDateTime ) { 
     1006    if ((selectedDateTime.value == '__:__') || (selectedDateTime.value == '__:__ __')) 
     1007          selectedDateTime.value = ""; 
     1008    if(!(User.preferences.hourFormat.length == 5)) 
     1009        $(this).val(selectedDateTime.replace(/[\.]/gi, ""));                                 
     1010    updateMap(); 
     1011 
     1012    if( Date.parse(selectedDateTime) < Date.parse(oldTime) ) return true; 
     1013 
     1014    var time = selectedDateTime.split(":"); 
     1015 
     1016    var hh = time[0]; 
     1017    var mm = time[1].substring(0, 2); 
     1018    
     1019      
     1020    dt = new Date(); 
     1021    dt.setHours(hh, mm); 
     1022    var startHours = dt.getHours(); 
     1023    add = parseInt(User.preferences.defaultDuration) + parseInt($("input.end-time").val().split(":")[1].substring(0,2)); 
     1024    dt.addMinutes(add); 
     1025     
     1026 
     1027    var minutes = dt.getMinutes().toString(); 
     1028    var hours = dt.getHours(); 
     1029 
     1030    if (time[1].indexOf("p.m.") != -1 ) { 
     1031        var startHours = startHours == 12 ? 12 : startHours; 
     1032        var startHours = startHours == 1 ? 13 : startHours; 
     1033        var startHours = startHours == 2 ? 14 : startHours; 
     1034        var startHours = startHours == 3 ? 15 : startHours; 
     1035        var startHours = startHours == 4 ? 16 : startHours; 
     1036        var startHours = startHours == 5 ? 17 : startHours; 
     1037        var startHours = startHours == 6 ? 18 : startHours; 
     1038        var startHours = startHours == 7 ? 19 : startHours; 
     1039        var startHours = startHours == 8 ? 20 : startHours; 
     1040        var startHours = startHours == 9 ? 21 : startHours; 
     1041        var startHours = startHours == 10 ? 22 : startHours; 
     1042        var startHours = startHours == 11 ? 23 : startHours; 
     1043    } else if (time[1].indexOf("a.m.") ) { 
     1044        var startHours = startHours == 12 ? 00 : startHours; 
     1045    } 
     1046    dtFormat = (time[1].indexOf("p.m.") != -1 || time[1].indexOf("a.m.") != -1) ? ((((User.preferences.defaultDuration / 60) + startHours) >= 12 && (startHours + 4) < 24) ? " pm" : " am") : ""; 
     1047        
     1048    var newHours = ""; 
     1049    if(dtFormat){ 
     1050        hours = hours == 13 ? 01 : hours; 
     1051        hours = hours == 14 ? 02 : hours; 
     1052        hours = hours == 15 ? 03 : hours; 
     1053        hours = hours == 16 ? 04 : hours; 
     1054        hours = hours == 17 ? 05 : hours; 
     1055        hours = hours == 18 ? 06 : hours; 
     1056        hours = hours == 19 ? 07 : hours; 
     1057        hours = hours == 20 ? 08 : hours; 
     1058        hours = hours == 21 ? 09 : hours; 
     1059        hours = hours == 22 ? 10 : hours; 
     1060        hours = hours == 23 ? 11 : hours; 
     1061        hours = hours == 24 ? 12 : hours; 
     1062    } else { 
     1063        newHours = hours <= 9 ? "0" : ""; 
     1064    } 
     1065 
     1066    minutes = minutes.length == 1 ? "0"+minutes+dtFormat : minutes+dtFormat; 
     1067    newHours +=  hours.toString() + ":" +minutes; 
     1068    UI.dialogs.addEvent.find("input.end-time").val(newHours); 
     1069 
     1070} 
     1071 
     1072$(".start-date").focusout(function(data){  
     1073    $(".end-date").val($(this).val()); 
    9891074}); 
    9901075 
    991  
    992  
    9931076if($("#calendar").fullCalendar('getView').name == "month"){ 
     1077 
    9941078    var oldTime = UI.dialogs.addEvent.find('input.start-time').val(); 
    995      
     1079    $(".start-time").focusout(function(data){ 
     1080        setTime( $(this).val() ); 
     1081    }); 
     1082 
    9961083    UI.dialogs.addEvent.find('input.start-time').timepicker({ 
    997         onSelect: function(selectedDateTime){ 
    998  
    999             if( Date.parse(selectedDateTime) < Date.parse(oldTime) ) return true; 
    1000  
    1001             var time = selectedDateTime.split(":"); 
    1002             var hh = time[0]; 
    1003             var mm = time[1]; 
    1004             
    1005             dt = new Date(); 
    1006             dt.setHours(hh, mm); 
    1007             dt.addMinutes(parseInt(User.preferences.defaultDuration)); 
    1008  
    1009             var minutes = dt.getMinutes().toString(); 
    1010             var hours = dt.getHours().toString(); 
    1011             minutes = minutes.length == 1 ? "0"+minutes : minutes; 
    1012             var newHours =  hours + ":" +minutes; 
    1013             UI.dialogs.addEvent.find("input.end-time").val(newHours); 
    1014         } 
     1084        ampm : ((User.preferences.hourFormat.length > 5) ? true: false), 
     1085        timeFormat: "hh:mm tt", 
     1086        onSelect: function( selectedDateTime ){ 
     1087            setTime( selectedDateTime ); 
     1088        }    
    10151089    }); 
    10161090 
Note: See TracChangeset for help on using the changeset viewer.