Changeset 5863


Ignore:
Timestamp:
04/02/12 18:07:04 (12 years ago)
Author:
acoutinho
Message:

Ticket #2587 - Bugs encontrados na nova agenga(expressoCalendar)

Location:
trunk/prototype
Files:
11 edited

Legend:

Unmodified
Added
Removed
  • trunk/prototype/modules/calendar/css/layout.css

    r5835 r5863  
    449449} 
    450450 
     451.shared-calendar .user-list li.user-list{ 
     452        height: 17px; 
     453        overflow: hidden; 
     454} 
     455 
     456.shared-calendar dd.user-list{ overflow: auto;} 
     457 
    451458.user-list .hover-user { background-color: #DFEFFC;} 
     459 
     460.shared-calendar ul.search-result-list{ 
     461    overflow-x: hidden !important; 
     462    overflow-y: auto !important;  
     463} 
    452464 
    453465.user-acls-shared-calendar{ 
    454466        width: 130px; 
    455467        float: right; 
    456         margin-right: 20px; 
     468        margin-right: 2px; 
    457469} 
    458470 
  • trunk/prototype/modules/calendar/export.php

    r5715 r5863  
    2727    $eventLinks = Controller::find(array('concept' => 'calendarToSchedulable') , array('schedulable') , array('filter' => array( '=' , 'calendar' , $params['calendar']))); 
    2828    $calendar = Controller::read(array('concept' => 'calendar' , 'id' => $params['calendar'])); 
     29 
    2930    $eventsIds = array(); 
    3031    foreach ($eventLinks as &$eventLink) 
    3132       $eventsIds[] = $eventLink['schedulable']; 
    3233 
    33     $events = Controller::find(array('concept' => 'schedulable') , false , array('filter' => array('IN','id',$eventsIds) , 'deepness' => '2' ));         
     34    $events = Controller::find(array('concept' => 'schedulable') , false , array('filter' => array('IN','id',$eventsIds) , 'deepness' => '2', 'timezones' => array($calendar['id'] => $calendar['timezone']) ));         
    3435    $ics = Controller::format( array( 'service' => 'iCal' ) , $events , array('defaultTZI' => $calendar['timezone']) ); 
    3536 
  • trunk/prototype/modules/calendar/interceptors/DBMapping.php

    r5850 r5863  
    108108    public function findSchedulable( &$uri , &$params , &$criteria , $original ) 
    109109   { 
    110          
    111         ob_start(); 
    112         print_r($criteria); 
    113          
    114         $output = ob_get_clean(); 
    115         file_put_contents( "/tmp/acoutinho.log",  $output , FILE_APPEND); 
    116          
    117          
    118110       if(isset($criteria['filter'][3][1]) && $criteria['filter'][3][1] == 'calendar') 
    119111       { 
     
    787779        $permission = Controller::read($uri, array('user','calendar')); 
    788780 
    789         $calendarSignature = Controller::find( array( 'concept' => 'calendarSignature' ) , array('id') ,array( 'filter' => array('AND', array('=','calendar', $permission['calendar']), array('=','user',$permission['user']))));  
     781        $calendarSignature = Controller::find( array( 'concept' => 'calendarSignature' ) , array('id') ,array( 'filter' => array('AND', array('=','calendar', $permission['calendar']), array('=','user',$permission['user']), array('=','isOwner','0'))));  
    790782 
    791783        if($calendarSignature) 
     
    820812 
    821813    public function createDefaultSignature( &$uri , &$result , &$criteria , $original ){ 
    822                       
    823     //Caso uma busca não retorne nenhum resultado e foi buscado pelas assinaturas do usuario logado apenas 
    824     if(count($result) <= 0 &&  
    825             ( $original['criteria']['filter'][0] == '=' && 
    826               $original['criteria']['filter'][1] == 'user' && 
    827               $original['criteria']['filter'][2] == $_SESSION['phpgw_session']['account_id'] 
     814 
     815        //Caso uma busca não retorne nenhum resultado e foi buscado pelas assinaturas do usuario logado apenas 
     816        $isValidSignature = false; 
     817                 
     818        //Veirifica pois o usuário pode ter varias assinaturas mas não ser dona de nenhuma 
     819        if(count($result) > 0){ 
     820            foreach($result as $key){    
     821                if($key['isOwner'] != 0) 
     822                    $isValidSignature = true; 
     823            } 
     824        } 
     825 
     826    if(!$isValidSignature &&  
     827            ( $original['criteria']['filter'][1][0] == '=' && 
     828              $original['criteria']['filter'][1][1] == 'user' && 
     829              $original['criteria']['filter'][1][2] == $_SESSION['phpgw_session']['account_id'] 
    828830            )) 
    829831    {         
  • trunk/prototype/modules/calendar/js/calendar.contentMenu.js

    r5746 r5863  
    2424                var schedulable = DataLayer.get('schedulable', idEvent); 
    2525                 
     26                var isRecurrence = DataLayer.get('repeat', schedulable.repeat).frequency; 
     27                 
    2628                var template = DataLayer.render( 'templates/menu_context_event.ejs', {event: schedulable.id , 
    2729                    top: (event.clientY - 135), left: (event.clientX - 445),  
    2830                    signature: Calendar.signatureOf[schedulable.calendar], 
    29                     calendars: Calendar.calendars, isRecurrence: (!!parseInt(schedulable.repeat)), 
     31                    calendars: Calendar.calendars, isRecurrence: isRecurrence == 'none' ? false : true, 
    3032                    idRecurrence: idRecurrence 
    3133                }); 
  • trunk/prototype/modules/calendar/js/calendar.shared.js

    r5812 r5863  
    7373                                }else{ 
    7474                                        //TODO - remover quando for implementado remove com criteria 
    75                                         var permission = DataLayer.get('calendarPermission', {filter: [AND, ['=', 'calendar', calendarId], ['=', 'user', '0']]}, true); 
     75                                        var permission = DataLayer.get('calendarToPermission', {filter: ['AND', ['=', 'calendar', calendarId], ['=', 'user', '0']]}, true); 
     76                                        if($.isArray(permission)) 
     77                                                permission = permission[0]; 
     78 
    7679                                        DataLayer.remove('calendarToPermission', permission.id); 
    7780                                } 
  • trunk/prototype/modules/calendar/js/helpers.js

    r5835 r5863  
    19271927function mountTitleList(page_index ,view){ 
    19281928        switch (view){ 
    1929                 case 'day': 
     1929                case 'agendaDay': 
    19301930                case 'basicDay': 
    19311931                        var date = new Date().add({days: page_index}); 
    19321932                        return (dateCalendar.dayNames[date.getDay()])+", "+(date.toString('dd MMM yyyy')); 
    19331933                case 'agendaWeek': 
    1934                 case 'week': 
    19351934                        var dateStart = new Date().moveToDayOfWeek(dateCalendar.dayOfWeek[User.preferences.weekStart]); 
    19361935                        dateStart.add({days: (7 * page_index)}); 
     
    19531952                $(currentView+' .events-list.events-list-win.active .header-paginator .fc-header-right .fc-button').removeClass('fc-state-active') 
    19541953                if(view == 'basicDay') 
    1955                         $(currentView+' .events-list.events-list-win.active .header-paginator .fc-header-right .fc-button-agendaday').addClass('fc-state-active'); 
     1954                        $(currentView+' .events-list.events-list-win.active .header-paginator .fc-header-right .fc-button-agendaDay').addClass('fc-state-active'); 
    19561955                else 
    1957                         $(currentView+' .events-list.events-list-win.active .header-paginator .fc-header-right .fc-button-'+((view == 'day' || view == 'week') ? 'agenda'+view : view )).addClass('fc-state-active'); 
     1956                        $(currentView+' .events-list.events-list-win.active .header-paginator .fc-header-right .fc-button-'+view).addClass('fc-state-active'); 
    19581957                $(currentView+' .events-list.events-list-win.active .header-paginator .fc-header-right').addClass('list-right'); 
    19591958                 
     
    19701969                                var goView = $(this).attr('class'); 
    19711970                                if(goView.indexOf('agendaDay') > 0) 
    1972                                         pageselectCallback($(currentView+' [name = keyword]').val(), 0, '', 'day'); 
     1971                                        pageselectCallback($(currentView+' [name = keyword]').val(), 0, '', 'agendaDay'); 
    19731972                                else if(goView.indexOf('month') > 0) 
    19741973                                        pageselectCallback($(currentView+' [name = keyword]').val(), 0, '', 'month'); 
     
    19761975                                        pageselectCallback($(currentView+' [name = keyword]').val(), 0, '', 'year'); 
    19771976                                else if(goView.indexOf('agendaWeek') > 0) 
    1978                                         pageselectCallback($(currentView+' [name = keyword]').val(), 0, '', 'week'); 
     1977                                        pageselectCallback($(currentView+' [name = keyword]').val(), 0, '', 'agendaWeek'); 
    19791978 
    19801979                        }); 
     
    20292028        switch (view){ 
    20302029                case 'basicDay': 
    2031                 case 'day': 
     2030                case 'agendaDay': 
    20322031                        rangeStart = new Date().add({days: page_index}).getTime(); 
    20332032                        rangeEnd = rangeStart; 
    20342033                         break; 
    20352034                case 'agendaWeek': 
    2036                 case 'week': 
    20372035                        var dateStart = new Date().moveToDayOfWeek(dateCalendar.dayOfWeek[User.preferences.weekStart]);  
    20382036                        var dateEnd = new Date().moveToDayOfWeek(dateCalendar.dayOfWeek[User.preferences.weekStart]);  
     
    21662164        UI.dialogs.importCalendar.find(".menu-import-event")         
    21672165            .children(".import").click(function(data){ 
     2166                        $('.import-event-form fieldset.import-calendar', UI.dialogs.importCalendar).append( 
     2167                            '<input type="hidden" name="params[calendar_timezone]" value="'+   
     2168                            Calendar.signatureOf[$('.import-event-form option:selected').val()].calendar.timezone 
     2169                            +'"/>') 
     2170 
    21682171                        $('.import-event-form', UI.dialogs.importCalendar).submit();                     
    21692172                        UI.dialogs.importCalendar.dialog("close"); 
  • trunk/prototype/modules/calendar/js/init.js

    r5752 r5863  
    11$(document).ready(function() { 
     2        //Remove o icone de configuraçõe padrão antigo do expresso 
     3        $('#sideboxdragarea').addClass('hidden'); 
     4 
    25        refresh_calendars(); 
    36        $tabs = $('#tabs').tabs({ 
  • trunk/prototype/modules/calendar/templates/event_list.ejs

    r5835 r5863  
    132132                                                                        <span class="large" ><%= _event.description %></span> 
    133133                                                                </p> 
    134                                                                 <p class="input-group"> 
     134                                                                <!--<p class="input-group"> 
    135135                                                                        <label>Privacidade</label> 
    136136                                                                        <span><%= _event.privacy %></span> 
    137                                                                 </p> 
     137                                                                </p>--> 
    138138                                                                <p class="input-group"> 
    139139                                                                        <label>Organizador</label> 
  • trunk/prototype/modules/calendar/templates/shared_calendar.ejs

    r5592 r5863  
    5858                                                 
    5959                                        </fieldset> 
    60                                         <ul class="search-result-list ui-corner-all"> 
    61  
    62                                         </ul> 
     60                                        <ul class="search-result-list"></ul> 
    6361                                </fieldset> 
    6462                        </dd> 
  • trunk/prototype/modules/calendar/templates/user_shared_add_itemlist.ejs

    r5812 r5863  
    66                        </div> 
    77                         
    8                         <input type="checkbox" name="idPermission" value="<%=data[0].idPermission%>"> 
     8                        <input type="checkbox" class="hidden" name="idPermission" value="<%=data[0].idPermission%>"> 
    99                        <input type="hidden" name="calendar[]" value="<%=data[0].id%>"> 
    1010                        <input type="hidden" name="type[]" value="<%=data[0].type%>"> 
     
    1919                                        <a class="button close new">Remover</a> 
    2020                        </div> 
    21                  
     21 
    2222                <input type="checkbox" value="<%=data[0].current ? data[0].idPermission : data[0].id%>"> 
    23                  
    2423                <input type="hidden" name="user[]" value="<%=data[0].id%>"> 
    2524                <input type="hidden" name="attendeeAcl[]" value="<%=data[0].aclValue%>"> 
  • trunk/prototype/services/iCal.php

    r5835 r5863  
    718718            /* Data de Inicio*/ 
    719719                $startTime = $component->getProperty( 'dtstart', false , true ); 
    720                                  
     720 
    721721            /* Tiem zone do evento*/     
    722722               if(isset($startTime['params']['TZID'])) 
     
    734734                elseif(isset($startTime['params']['TZID']) && !isset($startTime['value']['tz'])){/* Caso não tenha um tz na data mais exista um parametro TZID deve ser aplicado o timezone do TZID a data */ 
    735735                    $schedulable['startTime'] = self::date2timestamp($startTime['value']) - self::_getTzOffset('UTC',$startTime['params']['TZID'],'@'.self::date2timestamp($startTime['value'])) . '000';       
    736                                         $schedulable['allDay'] = 0; 
    737                                 } 
    738                                 else 
     736                    $schedulable['allDay'] = 0; 
     737                } 
     738                else 
    739739                { 
    740740                    $schedulable['startTime'] = self::date2timestamp($startTime['value']) . '000'; 
Note: See TracChangeset for help on using the changeset viewer.