source: trunk/prototype/modules/calendar/js/activity.helpers.js @ 7075

Revision 7075, 25.0 KB checked in by marcieli, 12 years ago (diff)

Ticket #3058 - Exibir mais detalhes da tarefa na atividade vinculada.

  • Property svn:executable set to *
RevLine 
[6945]1function activityDetails( objActivity, decoded, path, isMail, repeat){
[6881]2
[6945]3    tasks = {length: 0};
[6881]4       
5    if(path == undefined)
6        path = "";
7               
8    if( !decoded )
[6945]9        objActivity = DataLayer.decode( "schedulable:group", objActivity );
[6881]10
11    if(!isMail)
[6945]12        objActivity = DataLayer.encode( "schedulable:activity", objActivity );
13
14    /**
[6977]15    * canDiscardActivityDialog deve ser true se não houver alterações no evento
16    */
[6951]17    canDiscardActivityDialog = true;
[6945]18    /**
[6974]19         * zebraDiscardActivityDialog é uma flag indicando que uma janela de confirmação (Zebra_Dialog)
20         * já está aberta na tela, uma vez que não é possivel acessar o evento ESC utilizado para fechá-la
[6945]21         */
[6951]22    zebraDiscardActivityDialog = false;
[6881]23       
24        var html = DataLayer.render( path+'templates/activity_add.ejs', {
[6945]25            activity:objActivity
[6881]26        });     
27                       
28        if (!UI.dialogs.addActivity) {
29
30            UI.dialogs.addActivity = jQuery('#sandbox').append('<div title="Criar Atividade" class="new-activity-win active"> <div>').find('.new-activity-win.active').html(html).dialog({
[6945]31                resizable: false,
32                modal:true,
33                autoOpen: false,
[6959]34                width:735,
[6945]35                position: 'center',
36                close: function(event, ui) {
37                        /**
38                         * Remove tooltip possivelmente existente
39                         */
40                        if ($('.qtip.qtip-blue.qtip-active').length)
41                                $('.qtip.qtip-blue.qtip-active').qtip('destroy');                                               
42                       
43                attendees  = {};
44                },
45                beforeClose: function(event, ui) {
46               
[6951]47                    if (!canDiscardActivityDialog && !zebraDiscardActivityDialog) {
48                                zebraDiscardActivityDialog = true;
[6945]49                                window.setTimeout(function() {
[6951]50                                    $.Zebra_Dialog('Suas alterações na atividade não foram salvas. Deseja descartar as alterações?', {
[6945]51                                        'type':     'question',
52                                        'overlay_opacity': '0.5',
[6951]53                                        'buttons':  ['Descartar alterações', 'Continuar editando'],
[6945]54                                        'onClose':  function(clicked) {
[6951]55                                            if(clicked == 'Descartar alterações') {
56                                                canDiscardActivityDialog = true;
[6945]57                                                /**
[6951]58                                                *Remoção dos anexos do eventos caso seja cancelado a edição
[6945]59                                                */
60                                                DataLayer.rollback();
[6881]61
[6945]62                                                var ids = false;
63                                                $.each($('.attachment-list input'), function (i, input) {
64                                                    DataLayer.put('attachment', {id: ''+input.value});
65                                                    DataLayer.remove('attachment', ''+input.value);
66                                                        ids = true;
67                                                });
68                                                if(ids)
69                                                        DataLayer.commit();
[6881]70
[6945]71                                                UI.dialogs.addActivity.dialog('close');
72                                            }else{
[6951]73                                                   zebraDiscardActivityDialog = false;
[6945]74                                            }
75                                                                                       
76                                            /**
[6951]77                                            * Uma vez aberta uma janela de confirmação (Zebra_Dialog), ao fechá-la
78                                            * com ESC, para que o evento ESC não seja propagado para fechamento da
79                                            * janela de edição de eventos, deve ser setada uma flag indicando que
80                                            * já existe uma janela de confirmação aberta.
[6945]81                                            */
82                                            if (!clicked) {
83                                                window.setTimeout(function() {
[6951]84                                                    zebraDiscardActivityDialog = false;
[6945]85                                                }, 200);
86                                            }
87                                        }
88                            });
89                                                                       
90                        }, 300);
91            }
92            //DataLayer.rollback();
[6951]93            return canDiscardActivityDialog;
[6945]94        },
95        dragStart: function(event, ui) {
[6974]96            if ($('.qtip.qtip-blue.qtip-active').length)
97                $('.qtip.qtip-blue.qtip-active').qtip('destroy');
[6945]98       }
99    });
[6881]100                               
101        } else {
102            UI.dialogs.addActivity.html(html);
103        }
104               
105var tabs = UI.dialogs.addActivity.children('.content').tabs({
106        select: function(event, ui) {
107                if ($('.qtip.qtip-blue.qtip-active').length)
108                        $('.qtip.qtip-blue.qtip-active').qtip('destroy');
109        }       
110        });
[6945]111
112var group = DataLayer.get('calendar', objActivity.group);
[6881]113                               
[6945]114if (group.timezone != objActivity.timezone){
115    UI.dialogs.addActivity.find('.group_addactivity_details_lnk_timezone').find('option[value="'+objActivity.timezone+'"]').attr('selected','selected').trigger('change');
116    UI.dialogs.addActivity.find('.group_addactivity_details_lnk_timezone').addClass('hidden');
117    $('.group-addevent-details-txt-timezone').removeClass('hidden');
[6881]118                       
119}
120
[6945]121UI.dialogs.addActivity.find('.group_addactivity_details_lnk_timezone').click(function(e){
[6881]122    $(this).addClass('hidden');
[6945]123    $('.group-addactivity-details-txt-timezone').removeClass('hidden');
[6881]124    e.preventDefault();
125});
126
[6945]127UI.dialogs.addActivity.find('.button.remove').button({
128    text:false,
129    icons:{
130        primary:'ui-icon-close'
131    }
132}).click(function(el){
133    var id;
134    if( id = $(this).parent().find('input[name="alarmId[]"]').val())
135        DataLayer.remove('alarm', id);
136    $(this).parent().remove().find('li').is(':empty');
137});
[6881]138
[6945]139UI.dialogs.addActivity.find('.button-add-alarms').click(function(){
140            DataLayer.render( 'templates/alarms_add_itemlist.ejs', {type: 0}, function( template ){                     
141            jQuery('.activity-alarms-list').append(template)
142            .find('li:last label:eq(0)').remove().end()
143            .find('.number').numeric().end()
144            .find('.button.remove').button({
145                text:false,
146                icons:{
147                    primary:'ui-icon-close'
148                }
149            }).click(function(el) {
150                $(this).parent().remove();
151            });   
152            });
153        });
[6881]154
[6951]155/*Seleciona a agenda padrão para visualização/edição de um evento*/
[6945]156if(objActivity.id)
[6954]157    UI.dialogs.addActivity.find('select[name="group"] option[value="'+objActivity.group+'"]').attr('selected','selected').trigger('change');
[6881]158
159UI.dialogs.addActivity.find('.button').button();
[6945]160    UI.dialogs.addActivity.find('.button.add').button({
161        icons: {
162           secondary: "ui-icon-plus"
163        }
[6881]164});
165
[6954]166todoStatus('addActivity', (objActivity.activityStatus != undefined) ? objActivity.activityStatus : 1);
167
[6958]168UI.dialogs.addActivity.find('select[name="activityStatus"]').attr('disabled', 'disabled');
169
[6881]170// ==== validation events ====
[6958]171UI.dialogs.addActivity.find(".input-group .h1").Watermark("Atividade sem título");
[6945]172
[6881]173UI.dialogs.addActivity.find(".number").numeric();
[6945]174
[6881]175User.preferences.dateFormat.indexOf('-') > 0 ?
176UI.dialogs.addActivity.find(".date").mask("99-99-9999", {
177    completed:function(){
178        updateMap();
179    }
180}) :
[6945]181
[6881]182UI.dialogs.addActivity.find(".date").mask("99/99/9999", {
183    completed:function(){
184        updateMap();
185    }
186});
187
[6945]188UI.dialogs.addActivity.find(".menu-addactivity")
[6881]189.children(".delete").click(function(){
190    $.Zebra_Dialog('Tem certeza que deseja excluir a atividade?', {
191        'type':     'question',
192        'overlay_opacity': '0.5',
[6951]193        'buttons':  ['Sim', 'Não'],
[6881]194        'onClose':  function(clicked) {
195            if(clicked == 'Sim'){
[6951]196                canDiscardActivityDialog = true;
[6881]197                /* Remove por filtro */
[6974]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']]});
[6881]199                Calendar.rerenderView(true);
200                /********************/
201                UI.dialogs.addActivity.dialog("close");
202            }
203        }
204    });
205}).end()
206           
207.children(".cancel").click(function(){
208    UI.dialogs.addActivity.dialog("close");
209}).end()
210           
211.children(".save").click(function(){
[6951]212    /* Validação
[6881]213    var msg = false;                   
214    if(msg = validDateEvent()){
[6945]215        $(".new-activity-win.active").find('.messages-validation').removeClass('hidden').find('.message label').html(msg);
216        return false;
[6881]217    }
[6945]218    */
[7011]219        UI.dialogs.addActivity.find('select[name="activityStatus"], input[name="allDay"]').removeAttr('disabled');
[6951]220    canDiscardActivityDialog = true;
[7008]221       
[6945]222        UI.dialogs.addActivity.children().find('form.form-addactivity').submit();
223        UI.dialogs.addActivity.dialog("close");
[6881]224
225}).end()
226               
227.children(".export").click(function(){
228    UI.dialogs.addActivity.children().find(".form-export").submit();
229});
230
[6945]231var task_activityHtml = DataLayer.render( path+'templates/task_activity_add.ejs', {     activity: objActivity});
232var blkAddTask = UI.dialogs.addActivity.find('#group_addactivity_details8').append(task_activityHtml);
[6881]233
234var dates = UI.dialogs.addActivity.find('input.date').datepicker({
235    dateFormat: User.preferences.dateFormat.replace(/M/g, 'm').replace(/yyyy/g, 'yy'),
236    onSelect : function( selectedDate ){
237        updateMap();
238    }
239});
240
[6945]241blkAddTask.find('.add-activity-search .ui-icon-search').click(function(event) {
242    blkAddTask.find('.add-activity-search input').keydown();
[6881]243});
244                       
245                       
[6945]246blkAddTask.find('.add-activity-search input').keydown(function(event) {
[6881]247
248    if(event.keyCode == '13' || typeof(event.keyCode) == 'undefined') {
249    // Fazer get das tarefas   
[6945]250        var filter =
251        {
252            filter:
253                ['AND',
254                    ['=', 'type', '2'],
255                    ['>=','startTime', $.now()],
256                    ['in', 'calendar',
257                        [$('div.new-activity-win.active select[name="groupFilter"]').val()]
258                    ]
259                ], criteria: {'filterTasks': true}
260        };
261    if($(this).val() != ''){
262        filter['filter'].push(['OR',
263                            ["i*", "summary", $(this).val()],
264                            ["i*", "description", $(this).val()]
265                           ]);
266    }
[6881]267
[6945]268    var result = DataLayer.get('schedulable:taskSearch', filter, true)
[6881]269        /**
[6951]270        * TODO: trocar por template
271        */
[6945]272        blkAddTask.find('ul.search-result-list').empty().css('overflow', 'hidden');
[6881]273        if (!result) {
[6945]274            blkAddTask.find('ul.search-result-list').append('<li><label class="empty">Nenhum resultado encontrado.</label></li>');
275        }else{
276        for(i=0; i<result.length; i++)
277            result[i].enabled = (blkAddTask.find('dd.task-activity-list ul.task-activity-list input[value="' +  result[i].id + '"]').length) ? false : true;
278                                                                                       
279        blkAddTask.find('ul.search-result-list').append(DataLayer.render( path+'templates/task_search_itemlist.ejs', result));
[6881]280
[6945]281        /* TODO - Verificar id da aitividade*/
282        blkAddTask.find('ul.search-result-list li').click(function(event, ui){
283            if ($(event.target).is('input')) {
284                old_item = $(event.target).parents('li');
[6881]285
[6945]286                tasks[old_item.find('[name="id"]').val()] = {
287                    startDate: old_item.find('[name="taskStartDate"]').val(),
288                    startHour: old_item.find('[name="taskStartHour"]').val(),
289                    endDate: old_item.find('[name="taskEndDate"]').val(),
290                    endHour: old_item.find('[name="taskEndHour"]').val(),
291                    dueDate: old_item.find('[name="taskDueDate"]').val(),
292                    dueTime: old_item.find('[name="taskDueTime"]').val(),
293                    allDay: old_item.find('[name="taskAllDay"]').val(),
[6954]294                    percentage: old_item.find('[name="taskPercentage"]').val(),
295                    status: old_item.find('[name="taskStatus"]').val()
[6945]296                };
[6881]297
[6945]298                tasks.length += 1;
299                                                               
[6951]300                blkAddTask.find('dd.task-activity-list ul.task-activity-list')
301                    .append(DataLayer.render(path+'templates/task_add_itemlist.ejs', [{
[7075]302                                idTask: old_item.find('[name="id"]').val(),
303                                description: old_item.find('.description').html(),
304                                isWrite: false,
305                                summary: old_item.find('[name="taskSummary"]').val(),
306                                dueDate: old_item.find('[name="taskDueDate"]').val(),
307                                dueTime: old_item.find('[name="taskDueTime"]').val(),
308                                startDate: old_item.find('[name="taskStartDate"]').val(),
309                                startHour: old_item.find('[name="taskStartHour"]').val(),
310                                percentage: old_item.find('[name="taskPercentage"]').val(),
311                                priority: old_item.find('[name="taskPriority"]').val()
[6951]312                        }]))
[6945]313                        .scrollTo('max');
[7008]314                callbackTask(false, path);
[6945]315                registerStatus();
316                blkAddTask.find('.not-activity').addClass('hidden');
317                old_item.remove();
318            }
319        });
320    }
[6951]321    event.preventDefault();
[6881]322    }
323});
324
[6951]325/*Carrega as tarefas já existentes em uma atividade*/
[6945]326if(objActivity.tasks.length){
327    tasks = objActivity.tasks;
328
329    for(var i in objActivity.tasks){
330        if(i != 'length')
331            blkAddTask.find('dd.task-activity-list ul.task-activity-list')
332                .append(DataLayer.render(path+'templates/task_add_itemlist.ejs', [{
333                    idTask: i,
334                    description: tasks[i].description,
[6977]335                    idTaskToActivity: tasks[i].taskToActivity,
[7075]336                                        isWrite: true,
337                                        summary: tasks[i].summary,
338                                        dueDate: tasks[i].dueDate,
339                                        dueTime: tasks[i].dueTime,
340                                        startDate: tasks[i].startDate,
341                                        startHour: tasks[i].startHour,
342                                        percentage: tasks[i].percentage,
343                                        priority: tasks[i].priority
[6945]344                 }]))
345            .scrollTo('max');
346    }
347
[7008]348    callbackTask(false, path);
[6945]349    registerStatus();
350    blkAddTask.find('.not-activity').addClass('hidden');
351}
352
353UI.dialogs.addActivity.find('.row.fileupload-buttonbar-activity .button').filter('.delete').button({
[6881]354    icons: {
[6945]355           primary: "ui-icon-close"
[6881]356    },
357    text: 'Excluir'
358}).click(function () {
359    $.Zebra_Dialog('Tem certeza que deseja excluir todos anexos?', {
360        'type':     'question',
361        'overlay_opacity': '0.5',
[6951]362        'buttons':  ['Sim', 'Não'],
[6881]363        'onClose':  function(clicked) {
364            if(clicked == 'Sim'){
365               
366                var ids = [];
367                $.each($('.attachment-list input'), function (i, input) {
368                     DataLayer.remove('schedulableToAttachment', {
369                        filter: ['=', 'id', ''+input.value]
370                        });
371                });
[6981]372                $('div.new-activity-win .attachment-list input').remove();
373                $('div.new-activity-win .row.fileupload-buttonbar-activity .attachments-list p').remove();
374                $('div.new-activity-win .btn-danger.delete').addClass('hidden');
[6881]375            }
376        }});
377}).end()
378.filter('.close').button({
379    icons: {
[6945]380           primary: "ui-icon-close"
[6881]381    },
382    text: false
383}).click(function () {
384    DataLayer.remove('schedulableToAttachment', $(this).parents('p').find('input[name="fileId[]"]').val());
385    $(this).parents('p').remove();
386}).end()
387.filter('.downlaod-archive').button({
388    icons: {
[6945]389           primary: "ui-icon-arrowthickstop-1-s"
[6881]390    },
391    text: false
392});
393
[6981]394extendsFileupload('activity', path);
[6881]395
[6951]396UI.dialogs.addActivity.find(':input').change(function(event){
397    if (event.keyCode != '27' && event.keyCode != '13')
398        canDiscardActivityDialog = false;
399}).keydown(function(event){
400    if (event.keyCode != '27' && event.keyCode != '13')
401        canDiscardActivityDialog = false;
402});
403
[6881]404UI.dialogs.addActivity.dialog('open');
[6977]405}
406
407function refreshTaskActivity(){
408    updateActivity = false;
409
410    var objActivity = DataLayer.get('schedulable:activity', UI.dialogs.addActivity.find('input[name="idActivity"]').val());
411    var blkAddTask = UI.dialogs.addActivity.find('#group_addactivity_details8');
412    var blkAuto = UI.dialogs.addActivity.find('#group_addactivity_details1');
413   
414   tasks = objActivity.tasks;
415   blkAddTask.find('dd.task-activity-list ul.task-activity-list').html('');
416   
417   for(var i in tasks)
418       DataLayer.remove('schedulable', i, false);
419
420    for(var i in objActivity.tasks){
421        if(i != 'length')
422            blkAddTask.find('dd.task-activity-list ul.task-activity-list')
423                .append(DataLayer.render('templates/task_add_itemlist.ejs', [{
424                    idTask: i,
425                    description: tasks[i].description,
426                    idTaskToActivity: tasks[i].taskToActivity,
[7075]427                                        isWrite: true,
428                                        summary: tasks[i].summary,
429                                        dueDate: tasks[i].dueDate,
430                                        dueTime: tasks[i].dueTime,
431                                        startDate: tasks[i].startDate,
432                                        startHour: tasks[i].startHour,
433                                        percentage: tasks[i].percentage,
434                                        priority: tasks[i].priority
[6977]435                 }]))
436            .scrollTo('max');
437    }
438
439    callbackTask(blkAddTask);
440    registerStatus(blkAuto);
441}
442
443function registerStatus(blkAuto){
444    if(!blkAuto)
445        blkAuto = UI.dialogs.addActivity.find('#group_addactivity_details1');
446
447    var startDate = false;
448    var endDate = new Date;
449    var dueDate = new Date;
450    var percentage = 0;         
451            var statusTasks = {1: 0, 2: 0, 3: 0, 4: 0};
452            var allDay = true;
453
454    var formatString =  User.preferences.dateFormat + " " +  User.preferences.hourFormat;
455
456    if(tasks.length == 0){
457
458        startDate = new Date();
459        var configData = (startDate.toString('mm') < 30)  ? {minutes: (30 - parseInt(startDate.toString('mm')))} : {hours: 1, minutes: '-'+startDate.toString('mm')};
460        startDate.add(configData);
461
462        endDate = new Date(dateCalendar.decodeRange(startDate, (!!User.preferences.defaultCalendar ? (   !!Calendar.signatureOf[User.preferences.defaultCalendar].calendar.defaultDuration ?  (Calendar.signatureOf[User.preferences.defaultCalendar].calendar.defaultDuration) : (User.preferences.defaultDuration)) : (User.preferences.defaultDuration))));
463
464        blkAuto.find('input[name="startDate"]').val(startDate.toString(User.preferences.dateFormat ));
465        blkAuto.find('input[name="startHour"]').val(startDate.toString(User.preferences.hourFormat ));
466
467        blkAuto.find('input[name="endDate"]').val(endDate.toString(User.preferences.dateFormat ));
468        blkAuto.find('input[name="endHour"]').val(endDate.toString(User.preferences.hourFormat ));
469
470        blkAuto.find('input[name="dueDate"]').val('');
471        blkAuto.find('input[name="dueHour"]').val('');
472
473        blkAuto.find('input[name="percentage"]').val(percentage);
474
475        todoStatus('addActivity', 1);
476
477        UI.dialogs.addActivity.find('select[name="activityStatus"] option[value="'+1+'"]').attr('selected','selected');
478
479        blkAuto.find('input[name="allDay"]').attr('checked', false);
480
481        return true;
482    }
483
484    for (var i in tasks){
485
[7012]486        if(i == 'length')
487            continue;
[6977]488
[7012]489        statusTasks[tasks[i].status]++;
[6977]490
[7012]491        var stTime = Date.parseExact( tasks[i].startDate + " "+$.trim( tasks[i].startHour) , formatString);
492        var enTime = Date.parseExact( tasks[i].endDate + " "+$.trim( tasks[i].endHour), formatString );
[6977]493
[7012]494        startDate = (startDate && startDate.compareTo(stTime) == -1) ? startDate : stTime;
495        endDate = endDate.compareTo(enTime) == -1 ? enTime : endDate;
[6977]496
[7012]497        if(tasks[i].dueDate != ''){
498            var pvTime = Date.parseExact( tasks[i].dueDate + " "+$.trim( tasks[i].dueTime), formatString );
499            dueDate = dueDate.compareTo(pvTime) == -1 ? pvTime : dueDate;
500        }
[6977]501
[7012]502        percentage += parseInt(tasks[i].percentage);
[6977]503    }
[7012]504
505
506    if((percentage > 0) && (tasks.length > 0))
507        percentage = parseInt(percentage / tasks.length);
508   
[6977]509    var statusActivity = 1;
510
511    if(statusTasks[4] != 0)
512        statusActivity = 4;
513    else if(statusTasks[2] != 0)
514        statusActivity = 2;
515    else if(statusTasks[3] == tasks.length)
516        statusActivity = 3;
517    else if(statusTasks[1] == tasks.length)
518        statusActivity = 1;
519    else
520        statusActivity = 2;                     
521
522    todoStatus('addActivity', statusActivity);
523
524    UI.dialogs.addActivity.find('select[name="activityStatus"] option[value="'+statusActivity+'"]').attr('selected','selected');
525
526    dueDate = dueDate.compareTo(endDate) == -1 ? endDate : dueDate;
527
528    blkAuto.find('input[name="startDate"]').val(startDate.toString(User.preferences.dateFormat ));
529    blkAuto.find('input[name="startHour"]').val(startDate.toString(User.preferences.hourFormat ));
530
531    blkAuto.find('input[name="endDate"]').val(endDate.toString(User.preferences.dateFormat ));
532    blkAuto.find('input[name="endHour"]').val(endDate.toString(User.preferences.hourFormat ));
533
534    blkAuto.find('input[name="dueDate"]').val(dueDate.toString(User.preferences.dateFormat ));
535    blkAuto.find('input[name="dueHour"]').val(dueDate.toString(User.preferences.hourFormat ));
536
537    blkAuto.find('input[name="percentage"]').val(percentage);
538
539    blkAuto.find('input[name="allDay"]').attr('checked', (!!(startDate.compareTo(endDate) == 0) || (startDate.toString('HH:mm') == endDate.toString('HH:mm')) ? true : false));
540}
541
[7008]542function callbackTask(blkAddTask, path){
543
544    path = path ? path : '';
545
[6977]546        if(!blkAddTask)
547            blkAddTask = UI.dialogs.addActivity.find('#group_addactivity_details8');
548
549        blkAddTask.find("li .button").filter(".close.new").button({
550            icons: {
551            primary: "ui-icon-close"
552            },
553            text: false
554        }).click(function () {
555
556            delete tasks[$(this).parents('li').find('input[name="idtask[]"]').val()]
557            tasks.length +=  -1;
558
559            idTaskToActivity = $(this).parents('li').find('input[name="idTaskToActivity[]"]').val()
560
561            if(idTaskToActivity != '')
562                DataLayer.remove('taskToActivity', idTaskToActivity);
563           
564            $(this).parents('li').remove();
565               
566            if(blkAddTask.find(".task-activity-list li").length == 1)
567                blkAddTask.find("li.not-activity    ").removeClass('hidden');
568
569            registerStatus();
570        })
571        .addClass('tiny disable ui-button-disabled ui-state-disabled')
572        .removeClass('new').end()
573
574        .filter(".info.new").button({
575            icons: {
576                primary:  "ui-icon-notice"
577            },
578            text: false
579        }).click(function () {
580            var positionY = $(this).parents("li").offset().top;
581             
[7075]582            var summary = $(this).parents('li').find("div").find(".summary").val();
583                        var startDate = $(this).parents('li').find("div").find(".startDate").val();
584            var startHour = $(this).parents('li').find("div").find(".startHour").val();
585                        var dueDate = $(this).parents('li').find("div").find(".dueDate").val();
586                        var dueTime = $(this).parents('li').find("div").find(".dueTime").val();
587                        var percentage = $(this).parents('li').find("div").find(".percentage").val();
588                        var priority = $(this).parents('li').find("div").find(".priority").val();
[6977]589            var email = $(this).parents('li').find("div").find(".mail").text()
590                       
591            if( $('.qtip.qtip-blue.qtip-active').val() !== ''){
592                $(this).qtip({
593                    show: {
594                        ready: true,
595                        solo: true,
596                        when: {
597                            event: 'click'
598                        }
599                    },
600                    hide: false,
601                    content: {
602                        text: $('<div></div>').html( DataLayer.render( path + 'templates/activity_information_task.ejs', {
[7075]603                            'summary' : summary,
604                                                        'startDate' : startDate,
605                                                        'startHour' : startHour,
606                                                        'dueDate' : dueDate,
607                                                        'dueTime' : dueTime,
608                                                        'percentage' : percentage,
609                                                        'priority' : priority
[6977]610                        } ) ),
611                        title: {
612                            text:'Informações',
613                            button: '<a class="button close" href="#">close</a>'
614                        }
615                    },
616                style: {
617                    name: 'blue',
618                        tip: {
619                             },
620                        border: {
621                            width: 4,
622                            radius: 8
623                        },
624                        width: {
625                            min: 230,
626                            max:230
627                        }
628                },
629                position: {
630                    corner: {
631                        target: 'rightMiddle',
632                        tooltip: 'leftMiddle'
633                    },
634                    adjust: {
635                        x: 30,
636                        y: 0
637                    }
638                }
639            })
640            .qtip("api").onShow = function(arg0) {
641                $('.qtip-active .button.close').button({
642                    icons: {
643                        primary: "ui-icon-close"
644                    },
645                    text: false
646                })
647                .click(function(){
648                    blkAddAtendee.find('dd.task-activity-list').qtip('destroy');
649                });
650                                       
651                $('.qtip-active .button.cancel').button().click(function(){
652                    blkAddAtendee.find('dd.activity-list [type=checkbox]').attr('checked', false);
653                    blkAddAtendee.find('dd.activity-list').qtip('destroy');
654                });
655
656                $('.qtip .button').button();
657                                       
658            };
659         }             
660     })
661 .addClass('tiny disable ui-button-disabled ui-state-disabled')
662 .removeClass('new').end()
663 .filter(".edit.new").button({
664            icons: {
665            primary: "ui-icon-pencil"
666            },
667            text: false
668        }).click(function () {
669            var task = DataLayer.get('schedulable:task', $(this).parents('li').find('input[name="idtask[]"]').val());
670            taskDetails(task, true, '',true, null, true);           
671        })
672        .addClass('tiny disable ui-button-disabled ui-state-disabled')
673        .removeClass('new').end()
674
675        UI.dialogs.addActivity.find('.task-activity-list li').hover(
676            function () {
677                $(this).addClass("hover-attendee");
678                $(this).find('.button').removeClass('disable ui-button-disabled ui-state-disabled').end()
679                .find('.activity-options').addClass('hover-attendee');
680            },
681            function () {
682                $(this).removeClass("hover-attendee");
683                $(this).find('.button').addClass('disable ui-button-disabled ui-state-disabled').end()
684                .find('.activity-options').removeClass('hover-attendee');
685            }
686        );       
[7075]687    }
Note: See TracBrowser for help on using the repository browser.