- Timestamp:
- 08/06/12 14:59:39 (12 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
sandbox/2.4.2-expresso1/prototype/modules/calendar/js/task.helpers.js
r6876 r6946 1 function validDateTask(){ 2 3 var errors = { 4 'emptyInitData': 'Por favor, informe uma data inicial', 5 'emptyEndData': 'Por favor, informe uma data final', 6 'emptyInitHour': 'Por favor, informe uma hora inicial', 7 'emptyEndHour': 'Por favor, informe uma hora final', 8 9 'invalidInitData' : 'Data inicial inválida', 10 'invalidEndData' : 'Data final inválida', 11 12 'equalData' : 'Hora inicial igual a final', 13 'theirData' : 'Data final menor que a inicial', 14 'theirHour' : 'Hora final menor que a inicial', 15 16 'dueInitDate' : 'Previsão de término menor que a data inicial', 17 'dueEndDate' : 'Previsão de término menor que a data final', 18 'dueTime' : 'Deve ser definido a hora da Previsão de Término', 19 'dueDate' : 'Deve ser definido a Previsão de Término', 20 'invalidDueData' : 'Data de Previsão de Término inválida' 21 }; 22 23 var start_date = $(".new-task-win.active .start-date").val(); 24 var end_date = $(".new-task-win.active .end-date").val(); 25 var start_time = $(".new-task-win.active .start-time").val(); 26 var end_time = $(".new-task-win.active .end-time").val(); 27 var due_date = $(".new-task-win.active .date-previsao").val(); 28 var due_time = $.trim($(".new-task-win.active .time-previsao").val()); 29 var isAllDay = $('.new-task-win.active input[name="allDay"]').is(':checked'); 30 var customDate = $(".endRepeat").val() == "customDate"; 31 var occurrences = $(".endRepeat").val() == "occurrences"; 32 var taskInterval = $('.taskInterval').val(); 33 34 if(start_date == "") 35 return errors['emptyInitData']; 36 else if(end_date == "") 37 return errors['emptyEndData']; 38 else if(!isAllDay && start_time == "") 39 return errors['emptyInitHour']; 40 else if(!isAllDay && end_time == "") 41 return errors['emptyEndHour']; 42 else if(due_date != "" && due_time == "") 43 return errors['dueTime']; 44 else if(due_date == "" && due_time != "") 45 return errors['dueDate']; 46 47 var formatString = User.preferences.dateFormat + " " + User.preferences.hourFormat; 48 49 var startDate = Date.parseExact( start_date + " " + $.trim(start_time) , formatString ); 50 var endDate = Date.parseExact( end_date + " " + $.trim(end_time) , formatString ); 51 var dueDate = Date.parseExact( due_date + " " + $.trim(due_time) , formatString ); 52 53 if(startDate == null || startDate.getTime() < 0 ) 54 return errors['invalidInitData']; 55 if(endDate == null || endDate.getTime() < 0) 56 return errors['invalidEndData']; 57 if(dueDate == null && due_time != "") 58 return errors['invalidDueData']; 59 60 if(isAllDay){ 61 startDate.clearTime(); 62 endDate.clearTime(); 63 if(endDate.compareTo(startDate) == -1) 64 return errors['theirData']; 65 }else{ 66 var condition = endDate.compareTo(startDate); 67 if(condition != 1){ 68 if(condition < 0){ 69 startDate.clearTime(); 70 endDate.clearTime(); 71 condition = endDate.compareTo(startDate); 72 return (errors[ condition == 0 ? 'theirHour' : 'theirData'] ); 73 } 74 else 75 return errors['equalData']; 76 } 77 78 if (dueDate != null && dueDate.compareTo(startDate) == -1) 79 return errors['dueInitDate']; 80 } 81 82 if (customDate) 83 if ( !($('.new-task-win.active .customDateEnd').val().length) ) 84 return errors['emptyEndData']; 85 86 return false; 87 } 88 function taskStatus(status){ 89 if (status == "1"){ 90 UI.dialogs.addTask.find('.subitem .span_done').removeClass('finished noAction inProcess canceled').addClass('noAction'); 91 }else if (status == "2"){ 92 UI.dialogs.addTask.find('.subitem .span_done').removeClass('finished noAction inProcess canceled').addClass('inProcess'); 93 }else if (status == "3"){ 94 UI.dialogs.addTask.find('.subitem .span_done').removeClass('finished noAction inProcess canceled').addClass('finished'); 95 }else if (status == "4"){ 96 UI.dialogs.addTask.find('.subitem .span_done').removeClass('finished noAction inProcess canceled').addClass('canceled'); 97 } 98 } 99 1 100 function taskDetails(objTask, decoded, path, isMail, repeat) { 2 101 … … 260 359 /*Seleciona a agenda padrão para visualização edição de um task*/ 261 360 if (objTask.id) UI.dialogs.addTask.find('option[value="' + objTask.group + '"]').attr('selected', 'selected').trigger('change'); 361 362 UI.dialogs.addTask.find(':input').change(function(event){ 363 if (event.keyCode != '27' && event.keyCode != '13') 364 canDiscardTaskDialog = false; 365 }).keydown(function(event){ 366 if (event.keyCode != '27' && event.keyCode != '13') 367 canDiscardTaskDialog = false; 368 }); 262 369 263 370 /* Checkbox allday */ … … 266 373 updateMap(true); 267 374 }); 268 375 376 if (objTask.taskStatus == "1" || objTask.taskStatus == undefined){ 377 taskStatus(1); 378 }else if (objTask.taskStatus == "2"){ 379 taskStatus(2); 380 }else if (objTask.taskStatus == "3"){ 381 taskStatus(3); 382 }else if (objTask.taskStatus == "4"){ 383 taskStatus(4); 384 } 385 386 //Concluão das Tarefas 387 var conclusionTask = function(e){ 388 var percentageTask = UI.dialogs.addTask.find('input[name="percentage"]'); 389 if( percentageTask.val() == "") 390 percentageTask.val(0); 391 percentageTask.blur().focus(); 392 393 var percentageValue = parseInt(percentageTask.val()); 394 var statusTask = UI.dialogs.addTask.find('select[name=taskStatus]'); 395 396 if(percentageValue <= 0){ 397 statusTask.find('option.taskStatus-noAction').attr('selected', 'selected'); 398 taskStatus(1); 399 }else if(percentageValue == 100){ 400 statusTask.find('option.taskStatus-finished').attr('selected', 'selected'); 401 taskStatus(3); 402 }else{ 403 statusTask.find('option.taskStatus-inProcess').attr('selected', 'selected'); 404 taskStatus(2); 405 } 406 setTimeout(function(){ 407 percentageTask[0].selectionStart = percentageTask.val().length; 408 percentageTask[0].selectionEnd = percentageTask.val().length; 409 }, 10) 410 } 411 UI.dialogs.addTask.find('input[name="percentage"]').spinner({ min: 0, max: 100 }).keyup(conclusionTask).next().find(".ui-spinner-button").click(conclusionTask); 412 413 //Status das Tarefas 414 UI.dialogs.addTask.find('select[name=taskStatus]').change(function(){ 415 var statusSelected = $('select[name=taskStatus] option:selected').val(); 416 var percentageTask = UI.dialogs.addTask.find('input[name="percentage"]'); 417 if (statusSelected == "1"){ 418 percentageTask.val(0); 419 taskStatus(1); 420 }else if(statusSelected == "2"){ 421 percentageTask.val(percentageTask.val() != 0 ? (percentageTask.val() == 100 ? 99: percentageTask.val()) : 1); 422 taskStatus(2); 423 }else if(statusSelected == "3"){ 424 percentageTask.val(100); 425 taskStatus(3); 426 }else if(statusSelected == "4"){ 427 percentageTask.val(percentageTask.val() != 100 ? percentageTask.val() : 99); 428 taskStatus(4); 429 } 430 }); 431 269 432 UI.dialogs.addTask.find('.button').button(); 270 433 UI.dialogs.addTask.find('.button.add').button({ … … 331 494 332 495 .children(".save").click(function () { /* Validação */ 333 /*if (msg = validDateTask()) { 496 UI.dialogs.addTask.find('input[name="summary"]').focus(); 497 498 if (msg = validDateTask()) { 334 499 $(".new-task-win.active").find('.messages-validation').removeClass('hidden').find('.message label').html(msg); 335 500 return false; 336 }*/ 501 } 502 canDiscardTaskDialog = true; 337 503 338 504 UI.dialogs.addTask.children().find('form.form-addtask').submit(); … … 441 607 isExternal: old_item.find('.isExternal').html(), 442 608 notEvent: true, 443 isDirty: !! !objTask.id 609 isDirty: !! !objTask.id, 610 isDelegate: !!(objTask.me.id != objTask.organizer.id) 444 611 }])).scrollTo('max'); 445 612 /**
Note: See TracChangeset
for help on using the changeset viewer.