Changeset 7556


Ignore:
Timestamp:
11/23/12 11:29:18 (11 years ago)
Author:
eduardow
Message:

Ticket #3193 - Excluir atividade não possibilita excluir tarefas.

Location:
branches/2.4/prototype/modules/calendar
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • branches/2.4/prototype/modules/calendar/interceptors/DBMapping.php

    r7416 r7556  
    11741174            $uri['id'] = $idSchedulable; 
    11751175             
    1176             if(isset($criteria['filter']) && isset($criteria['filter'][4]) && isset($criteria['filter'][4][2])){ 
    1177                 Controller::deleteALL(array('concept' => 'taskToActivity'), null, array('filter' => array('=', 'activity', $idSchedulable))); 
    1178             } 
     1176          
     1177 
     1178                        if(isset($criteria['type']) && $criteria['type'] == '2'){  
     1179                  
     1180                $tasks = Controller::find(array('concept' => 'taskToActivity'), array('task'), array('filter' => array('=', 'activity', $idSchedulable)));  
     1181  
     1182                if(is_array( $tasks ) and count( $tasks ) > 0){  
     1183                    Controller::delete(array('concept' => 'taskToActivity'), null, array('filter' => array('=', 'activity', $idSchedulable)));  
     1184                }  
     1185  
     1186                if(isset($criteria['removeTaskToActivity']) && $criteria['removeTaskToActivity']){  
     1187                    if(is_array( $tasks ) and count( $tasks ) > 0){  
     1188  
     1189                        $ids = array();  
     1190                        foreach($tasks as $v){  
     1191                            $ids[] = $v['task'];  
     1192                        }  
     1193  
     1194                        Controller::delete(array('concept' => 'schedulable'), false, array('filter' => array('IN','id', $ids )));  
     1195                    }  
     1196                }  
     1197            }  
    11791198        } 
    11801199         
  • branches/2.4/prototype/modules/calendar/js/activity.helpers.js

    r7416 r7556  
    187187UI.dialogs.addActivity.find(".menu-addactivity") 
    188188.children(".delete").click(function(){ 
    189     $.Zebra_Dialog('Tem certeza que deseja excluir a atividade?', { 
     189    $.Zebra_Dialog('A exclusão desta atividade também traz a opção de excluir suas tarefas adicionadas. O que deseja excluir?', { 
    190190        'type':     'question', 
     191    'width': '400', 
    191192        'overlay_opacity': '0.5', 
    192         'buttons':  ['Sim', 'Não'], 
     193        'buttons':  ['Atividade e Tarefas', 'Apenas Atividade', 'Cancelar'], 
    193194        'onClose':  function(clicked) { 
    194             if(clicked == 'Sim'){ 
    195                 canDiscardActivityDialog = true; 
    196                 /* Remove por filtro */ 
    197                 DataLayer.removeFilter('schedulable', {filter: ['AND', ['=', 'id', objActivity.id], ['=', 'calendar', objActivity.group], ['=','user',(objActivity.me.user ? objActivity.me.user.id : objActivity.me.id)], ['=', 'type', '2']]}); 
    198                 Calendar.rerenderView(true); 
    199                 /********************/ 
    200                 UI.dialogs.addActivity.dialog("close"); 
    201             } 
     195            if(clicked == 'Apenas Atividade'){  
     196             canDiscardActivityDialog = true;  
     197             /* Remove por filtro */  
     198             DataLayer.removeFilter('schedulable', {filter: ['AND', ['=', 'id', objActivity.id], ['=', 'calendar', objActivity.group], ['=','user',(objActivity.me.user ? objActivity.me.user.id : objActivity.me.id)], ['=', 'type', '2']],criteria:{type:2}});  
     199             Calendar.rerenderView(true);  
     200             /********************/  
     201             UI.dialogs.addActivity.dialog("close");  
     202             }else if(clicked == 'Atividade e Tarefas'){  
     203             canDiscardActivityDialog = true;  
     204             DataLayer.removeFilter('schedulable', {filter: ['AND', ['=', 'id', objActivity.id], ['=', 'calendar', objActivity.group], ['=','user',(objActivity.me.user ? objActivity.me.user.id : objActivity.me.id)], ['=', 'type', '2']],criteria:{removeTaskToActivity: true, type:2}});  
     205             Calendar.rerenderView(true);  
     206             UI.dialogs.addActivity.dialog("close");  
     207         } 
    202208        } 
    203209    }); 
Note: See TracChangeset for help on using the changeset viewer.