Ignore:
Timestamp:
03/13/12 18:23:02 (12 years ago)
Author:
natan
Message:

Ticket #2434 - Implementacao da repeticao de eventos na agenda e adicao de suporte a relacionamentos 1x1 na API

Location:
trunk/prototype/modules/calendar/js
Files:
2 edited

Legend:

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

    • Property svn:ignore
      •  

        old new  
        22._init.js 
        33._calendar.date.js 
         4.calendar.codecs.js.kate-swp 
  • trunk/prototype/modules/calendar/js/helpers.js

    r5641 r5715  
    361361                         
    362362                } 
    363                  
     363 
     364            DataLayer.render( 'templates/event_repeat.ejs', {event:objEvent}, function( repeatHtml ){ 
     365 
     366                        UI.dialogs.addEvent.find('#calendar_addevent_details3').html(repeatHtml); 
     367                        $(".date").datepicker(); 
     368                   
     369                        if(objEvent.repeat)  
     370                        { 
     371                             if( objEvent.repeat['id'] ) 
     372                             { 
     373                                $("[name='repeatId']:last").val( objEvent.repeat['id'] ); 
     374                             } 
     375 
     376                             if( objEvent.repeat['frequency'] !== 'none' ) 
     377                             { 
     378                                if( objEvent.repeat['startTime'] && objEvent.repeat['startTime'] !== "0" ) 
     379                                { 
     380                                      $("[name='startOptions'] [value='customDate']:last").attr( 'selected', 'selected' ); 
     381                                      $("[name='start']:last").val(new Date( parseInt(objEvent.repeat['startTime']) ).toString( User.preferences.dateFormat ) ); 
     382                                } 
     383                                else 
     384                                { 
     385                                      $("[name='start']:last").val($("[name='startDate']:last").val());      
     386                                      $("[name='start']:last").readOnly=true; 
     387                                      $("[name='start']:last").datepicker("disable"); 
     388                                } 
     389                               
     390                                $(".finish_event").removeClass("hidden"); 
     391 
     392                                if(objEvent.repeat['endTime'] && objEvent.repeat['endTime'] !== "0" )  
     393                                { 
     394                                        //$("[name='occurrences']").addClass("hidden"); 
     395                                        $(".customDateEnd").removeClass("hidden"); 
     396                                                        $(".endRepeat option[value='customDate']").attr('selected', 'selected')                                          
     397                                        $(".customDateEnd").val( new Date( parseInt(objEvent.repeat['endTime']) )/*.setTimezoneOffset( Timezone.timezone( objEvent.timezone ) )*/.toString( User.preferences.dateFormat ) );   
     398                                } 
     399                                else if (objEvent.repeat['count'] && objEvent.repeat['count'] !== "0" ) { 
     400                                        $(".endRepeat option[value='occurrences']").attr('selected', 'selected');                                                
     401                                        $(".occurrencesEnd").removeClass("hidden"); 
     402                                        $(".occurrencesEnd").val(objEvent.repeat['count']);                                              
     403                                } 
     404                               
     405                                switch ( objEvent.repeat['frequency'] ) 
     406                                { 
     407                                    case "daily": 
     408                                            $(".event-repeat-container:last").find(".repeat-in").find(".interval").html("Dia(s)"); 
     409                                            $(".frequency option[value='daily']").attr('selected', 'selected'); 
     410                                            break; 
     411                                    case "weekly": 
     412                                            $(".event-repeat-container:last").find(".repeat-in").find(".interval").html("Semana(s)"); 
     413                                            $(".frequency option[value='weekly']").attr('selected', 'selected'); 
     414                                            objEvent.repeat['interval'] ? $(".event-repeat-container:last").find(".repeat-in").find(".eventInterval").val(objEvent.repeat['interval']) : $(".event-repeat-container:last").find(".repeat-in").find(".eventInterval").val("0"); 
     415                                             
     416                                            $(".event-repeat-weekly").removeClass("hidden"); 
     417                                             
     418                                            var day = []; 
     419                                             
     420                                            if( objEvent.repeat.byday ) 
     421                                                day = objEvent.repeat.byday.split(','); 
     422                                             
     423                                            for(i=0; i<day.length; i++)  
     424                                                    $(".event-repeat-weekly [value='" + day[i] + "']").attr("checked","checked"); 
     425                                             
     426                                            break; 
     427                                    case "monthly": 
     428                                            $(".event-repeat-container:last").find(".repeat-in").find(".interval").html("Mes(s)"); 
     429                                            $(".frequency option[value='monthly']").attr('selected', 'selected') 
     430                                            $(".event-repeat-monthly:last").removeClass("hidden").find("input[type=radio][name=repeatmonthyType]").click(function(){ 
     431                                                    if($("input[type=radio][name=repeatmonthyType]:checked").val() == "1") 
     432                                                            $(".event-repeat-weekly:last").removeClass("hidden"); 
     433                                                    else 
     434                                                            $(".event-repeat-weekly:last").addClass("hidden"); 
     435                                            }); 
     436                                            if($("input[type=radio][name=repeatmonthyType]:checked").val() == "1") 
     437                                                    $(".event-repeat-weekly:last").removeClass("hidden"); 
     438                                            else 
     439                                                    $(".event-repeat-weekly:last").addClass("hidden"); 
     440                                            break; 
     441                                    case "yearly": 
     442                                            $(".event-repeat-container:last").find(".repeat-in").find(".interval").html("Ano(s)"); 
     443                                            $(".frequency option[value='yearly']").attr('selected', 'selected') 
     444                                            break;       
     445                                } 
     446                            } 
     447                        } 
     448                        else { 
     449                                $(".endRepeat option[value='never']").attr('selected', 'selected'); 
     450                        } 
     451 
     452 
     453                        $(".event-repeat-container:last").find(".repeat-in").find("[name=startOptions]").change(function(){                                        
     454 
     455            if($(this).find("option:selected").val() == "Today"){ 
     456                                $("[name='start']:last").val($("[name='startDate']:last").val()); 
     457                                $("[name='start']:last").readOnly=true; 
     458                                $("[name='start']:last").datepicker("disable"); 
     459                            } 
     460                            else{ 
     461                                $("[name='start']:last").readOnly=false; 
     462                                $("[name='start']:last").datepicker("enable"); 
     463                            } 
     464                        }); 
     465                        $(".event-repeat-container:last").find(".repeat-in").find("[name=endOptions]").change(function(){                                        
     466                            if($(this).find("option:selected").val() == "never"){ 
     467                                $("[name='occurrences']").addClass("hidden"); 
     468                                $("[name='end']:last").addClass("hidden"); 
     469                            } 
     470                            else if($(this).find("option:selected").val() == "customDate"){ 
     471                                $("[name='occurrences']").addClass("hidden"); 
     472                                $("[name='end']:last").removeClass("hidden");     
     473                            } 
     474                            else{ 
     475                                $("[name='end']:last").addClass("hidden"); 
     476                                $("[name='occurrences']").removeClass("hidden");                                         
     477                            } 
     478                        }); 
     479                         
     480                        $("[name='frequency']:last").change(function () { 
     481                                $(".frequency-option").addClass("hidden"); 
     482                                if($(this).val() == "none"){ 
     483                                        $(".repeat-in").addClass("hidden"); 
     484                                        return; 
     485                                }else{ 
     486                                    $(".repeat-in").removeClass("hidden"); 
     487                                    $("[name='start']:last").val($("[name='startDate']:last").val()); 
     488                                } 
     489                  
     490                                  
     491                                switch($(this).val()){ 
     492                    case "daily": 
     493                        $(".event-repeat-container:last").find(".repeat-in").find(".interval").html("Dia(s)"); 
     494                        break; 
     495                                        case "weekly": 
     496                        $(".event-repeat-container:last").find(".repeat-in").find(".interval").html("Semana(s)"); 
     497                                                $(".event-repeat-weekly:last").removeClass("hidden"); 
     498                                                break; 
     499                                        case "monthly": 
     500                        $(".event-repeat-container:last").find(".repeat-in").find(".interval").html("Mes(s)"); 
     501                                                $(".event-repeat-monthly:last").removeClass("hidden").find("input[type=radio][name=repeatmonthyType]").click(function(){ 
     502                                                        if($("input[type=radio][name=repeatmonthyType]:checked").val() == "1") 
     503                                                                $(".event-repeat-weekly:last").removeClass("hidden"); 
     504                                                        else 
     505                                                                $(".event-repeat-weekly:last").addClass("hidden"); 
     506                                                }); 
     507                        if($("input[type=radio][name=repeatmonthyType]:checked").val() == "1") 
     508                            $(".event-repeat-weekly:last").removeClass("hidden"); 
     509                                                else 
     510                            $(".event-repeat-weekly:last").addClass("hidden"); 
     511                                            break; 
     512                    default: 
     513                        $(".event-repeat-container:last").find(".repeat-in").find(".interval").html("Ano(s)"); 
     514                        break; 
     515                                } 
     516                                 
     517                        }); 
     518                }); 
     519 
    364520            UI.dialogs.addEvent.find('.calendar_addevent_details_lnk_timezone').click(function(e){ 
    365521                    $(this).addClass('hidden'); 
     
    627783                                        var user = DataLayer.get('user', ["=", "mail", $(this).val()]); 
    628784                                        if(!!user && user[0].id) 
    629                                                 attendees[user[0].id].name  = user[0].name; 
     785                                                attendees[user[0].id] = { name: user[0].name }; 
    630786                                         
    631787                                        /** 
Note: See TracChangeset for help on using the changeset viewer.