Changeset 7702 for trunk/prototype/modules/calendar/js/helpers.js
- Timestamp:
- 01/03/13 08:46:17 (11 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/prototype/modules/calendar/js/helpers.js
r7661 r7702 1964 1964 if(clicked == 'Sim'){ 1965 1965 1966 var schedulable = DataLayer.get('schedulable', ''+eventId);1966 var schedulable = getSchedulable( eventId, ''); 1967 1967 schedulable.calendar = ''+idCalendar; 1968 1968 var schudableDecode = DataLayer.encode( "schedulable:preview", schedulable); … … 1982 1982 1983 1983 function mount_exception(eventID, idException){ 1984 1985 var schedulable = DataLayer.get('schedulable', ''+eventID); 1986 var edit = { 1987 repeat: (DataLayer.get('repeat', schedulable.repeat)) 1988 }; 1984 1985 getSchedulable( eventID.toString() , ''); 1986 var schedulable = DataLayer.get('schedulable', eventID.toString() ) 1987 var edit = { repeat: (DataLayer.get('repeat', schedulable.repeat)) }; 1989 1988 1990 1989 edit.repeat.startTime = new Date(parseInt(edit.repeat.startTime)).toString('yyyy-MM-dd HH:mm:00'); … … 2502 2501 case 'basicDay': 2503 2502 case 'agendaDay': 2504 rangeStart = new Date.today().add({ 2505 days: page_index 2506 }).getTime(); 2503 rangeStart = new Date.today().add({ days: page_index }).getTime(); 2507 2504 rangeEnd = rangeStart + 86400000; 2508 2505 break; … … 2510 2507 var dateStart = new Date().moveToDayOfWeek(dateCalendar.dayOfWeek[User.preferences.weekStart]); 2511 2508 var dateEnd = new Date().moveToDayOfWeek(dateCalendar.dayOfWeek[User.preferences.weekStart]); 2512 rangeStart = dateStart.add({ 2513 days: (7 * page_index) 2514 }).getTime(); 2515 rangeEnd = dateEnd.add({ 2516 days: (7 * page_index)+7 2517 }).getTime(); 2509 rangeStart = dateStart.add({ days: (7 * page_index) }).getTime(); 2510 rangeEnd = dateEnd.add({ days: (7 * page_index)+7 }).getTime(); 2518 2511 break; 2519 2512 case 'month': 2520 var date = Date.today().add({ 2521 months: page_index 2522 }) 2513 var date = Date.today().add({ months: page_index }) 2523 2514 rangeStart = date.moveToFirstDayOfMonth().getTime(); 2524 2515 rangeEnd = date.moveToLastDayOfMonth().getTime(); 2525 2516 break; 2526 2517 case 'year': 2527 var dateStart = new Date().add({ 2528 years: page_index 2529 }); 2530 var dateEnd = new Date().add({ 2531 years: page_index 2532 }); 2518 var dateStart = new Date().add({ years: page_index }); 2519 var dateEnd = new Date().add({ years: page_index }); 2533 2520 if(dateStart.getMonth() != 0) 2534 dateStart.moveToMonth(0, -1)2521 dateStart.moveToMonth(0, -1) 2535 2522 if(dateEnd.getMonth() != 11) 2536 dateEnd.moveToMonth(11) 2537 rangeStart = dateStart.moveToFirstDayOfMonth().getTime(); 2538 rangeEnd = dateEnd.moveToLastDayOfMonth().getTime(); 2523 dateEnd.moveToMonth(11) 2524 2525 rangeStart = dateStart.moveToFirstDayOfMonth().getTime(); 2526 rangeEnd = dateEnd.moveToLastDayOfMonth().getTime(); 2539 2527 break; 2540 2528 } … … 2542 2530 var timezone = {}; 2543 2531 for(var i in Calendar.signatureOf) 2544 timezone[i] = Calendar.signatureOf[i].calendar.timezone; 2545 2546 return { 2547 filter: ['AND', 2548 ['OR', 2549 ['AND', 2550 ['>=', 'rangeEnd', rangeStart], 2551 ['<=', 'rangeEnd', rangeEnd] 2552 ], 2553 ['AND', 2554 ['>=', 'rangeStart', rangeStart], 2555 ['<=', 'rangeStart', rangeEnd] 2556 ], 2557 ['AND', 2558 ['<=', 'rangeStart', rangeStart], 2559 ['>=', 'rangeEnd', rangeEnd] 2560 ] 2561 ], 2562 ['IN', 'calendar', calerdars_selecteds] 2563 ], 2564 criteria: { 2565 deepness: 2, 2532 timezone[i] = Calendar.signatureOf[i].calendar.timezone; 2533 2534 return { 2535 rangeStart: rangeStart, 2536 rangeEnd: rangeEnd, 2566 2537 order: 'startTime', 2567 timezones: timezone 2568 } 2569 }; 2570 2538 timezones: timezone, 2539 calendar: calerdars_selecteds 2540 }; 2571 2541 } 2572 2542 … … 2581 2551 2582 2552 if(!selecteds && (keyword != '' && keyword != null)){ 2583 2584 2585 2586 2587 2553 jQuery('#'+tab_selector[type] + ((Base64.encode(keyword)).replace(/[^\w\s]/gi, "")|| '')).html( 2554 '<div title="'+tab_title[type]+'" class="events-list events-list-win active empty">' + 2555 '<label>'+label_noselect_calendar[type]+'</label>' + 2556 '</div>' 2557 ); 2588 2558 }else{ 2589 var criteria = null; 2590 if(keyword == '' || keyword == null) 2591 criteria = mountCriteriaList(!!view ? view : User.preferences.defaultCalView, page_index, selecteds) 2592 else 2593 criteria = { 2594 filter: ['AND', ['OR', ["i*", "summary", keyword], ["i*", "description", keyword]], ['IN', 'calendar', selecteds]], 2595 criteria: { 2596 searchEvent: true, 2597 order: 'startTime', 2598 offset: (25 * page_index), 2599 limit: (((25 * page_index) + 25) + 1), 2600 deepness: 2 2601 } 2602 }; 2603 var results = DataLayer.get('schedulable:detail', criteria); 2604 keyword = ( keyword || '' ).replace( /\s+/g, "_" ); 2559 var criteria = null; 2560 if(keyword == '' || keyword == null){ 2561 2562 criteria = mountCriteriaList(!!view ? view : User.preferences.defaultCalView, page_index, selecteds); 2563 2564 }else{ 2565 2566 var timezone = {}; 2567 for(var i in Calendar.signatureOf) 2568 timezone[i] = Calendar.signatureOf[i].calendar.timezone; 2569 2570 criteria = { 2571 2572 searchEvent: true, 2573 order: 'startTime', 2574 offset: (25 * page_index), 2575 limit: (((25 * page_index) + 25) + 1), 2576 summary: keyword, 2577 description: keyword, 2578 calendar: selecteds, 2579 timezones: timezone 2580 2581 }; 2582 } 2583 2584 var results = DataLayer.encode('schedulable:list', DataLayer.dispatch('modules/calendar/schedules', criteria)); 2585 //var results = DataLayer.get('schedulable:detail', criteria); 2586 keyword = ( keyword || '' ).replace( /\s+/g, "_" ); 2605 2587 } 2606 2588 // não há resultados … … 2627 2609 $(".event-details-item").parent().click(function(event){ 2628 2610 event.stopImmediatePropagation(); 2629 $(this).siblings("div.details-event-list").toggleClass("hidden") 2611 var container = $(this).siblings("div.details-event-list"); 2612 2613 2614 //lazy data 2615 if( container.hasClass('hidden') ){ 2616 2617 //only first click 2618 if(!container.find('fieldset').length){ 2619 2620 $(this).append( '<span style="width: 20px;" class="load-event-detail"><img style="width: 20px;" src="'+DataLayer.dispatchPath+'/modules/calendar/img/loading.gif"></img></span>'); 2621 2622 var schedulable = container.find('input[name="eventid"]').val(); 2623 schedulable = DataLayer.encode('schedulable:detail', [getSchedulable( schedulable, '' )]); 2624 2625 schedulable = $.isArray( schedulable ) ? schedulable[0] : schedulable; 2626 2627 container.prepend( DataLayer.render( 'templates/event_detail_list.ejs', {'_event': schedulable})); 2628 2629 $(this).find('span.load-event-detail').remove(); 2630 } 2631 } 2632 2633 container.toggleClass("hidden") 2630 2634 .find('.button.delete').click(function(event){ 2631 2635 var eventId = $(this).siblings('[name="eventid"]').val(); … … 2635 2639 }) 2636 2640 .end().find('.button.edit').click(function(event){ 2641 2642 var schedulable = $(this).siblings('[name="eventid"]').val(); 2637 2643 switch($(this).siblings('[name="eventtype"]').val()){ 2644 2638 2645 case '1': 2639 eventDetails( DataLayer.get( "schedulable", $(this).siblings('[name="eventid"]').val()), true );2646 eventDetails( getSchedulable( schedulable, '' ), true ); 2640 2647 break; 2641 2648 case '2': 2642 taskDetails( DataLayer.get( "schedulable", $(this).siblings('[name="eventid"]').val()), true );2649 taskDetails( getSchedulable( schedulable, '' ), true ); 2643 2650 break; 2644 2651 case '3': 2645 activityDetails( DataLayer.get( "schedulable", $(this).siblings('[name="eventid"]').val()), true );2652 activityDetails( getSchedulable( schedulable, '' ), true ); 2646 2653 break; 2647 2654 } … … 2829 2836 type = $('.calendar-copy-move input[name="typeEvent"]').val(); 2830 2837 2831 var schedulable = DataLayer.get('schedulable', event+''); 2838 getSchedulable(event,''); 2839 var schedulable = DataLayer.get('schedulable', event.toString()); 2832 2840 schedulable['class'] = '1'; 2833 2841 … … 2843 2851 2844 2852 schedulable.lastCalendar = schedulable.calendar; 2845 schedulable.calendar = calendar;2853 schedulable.calendar = calendar; 2846 2854 DataLayer.put('schedulable', schedulable); 2847 2855 … … 2868 2876 delete repeat.schedulable; 2869 2877 delete repeat.id; 2870 repeat.startTime = new Date(parseInt(repeat.startTime)).toString('yyyy-MM-dd HH:mm:00');2871 repeat.endTime = new Date(parseInt(repeat.endTime)).toString('yyyy-MM-dd HH:mm:00');2878 repeat.startTime = repeat.startTime == '' ? '' : new Date(parseInt(repeat.startTime)).toString('yyyy-MM-dd HH:mm:00'); 2879 repeat.endTime = repeat.endTime == '' ? '' : new Date(parseInt(repeat.endTime)).toString('yyyy-MM-dd HH:mm:00'); 2872 2880 2873 2881 var exceptions = DataLayer.get('repeatOccurrence', { … … 2892 2900 delete schedulable.occurrences; 2893 2901 2894 schedulable.calendar = DataLayer.copy(calendar); 2902 schedulable.calendar = DataLayer.copy(calendar); 2895 2903 2896 2904 var participants = DataLayer.copy(schedulable.participants); … … 2925 2933 return newSchedulable; 2926 2934 } 2927 newSchedulable.endTime = new Date(parseInt(newSchedulable.endTime) - ( newSchedulable.allDay ? 86400000 : 0)).toString('yyyy-MM-dd hh:mm:00');2928 newSchedulable.startTime = new Date(parseInt(newSchedulable.startTime)).toString('yyyy-MM-dd hh:mm:00');2935 newSchedulable.endTime = new Date(parseInt(newSchedulable.endTime) - (parseInt(newSchedulable.allDay) ? 86400000 : 0)).toString('yyyy-MM-dd HH:mm:00'); 2936 newSchedulable.startTime = new Date(parseInt(newSchedulable.startTime)).toString('yyyy-MM-dd HH:mm:00'); 2929 2937 2930 2938 DataLayer.put('schedulable', newSchedulable);
Note: See TracChangeset
for help on using the changeset viewer.