- Timestamp:
- 07/17/12 16:07:52 (12 years ago)
- Location:
- sandbox/2.4.2-expresso1
- Files:
-
- 3 added
- 14 edited
Legend:
- Unmodified
- Added
- Removed
-
sandbox/2.4.2-expresso1/expressoCalendar/setup/setup.inc.php
r6255 r6797 13 13 $setup_info['expressoCalendar']['title'] = 'Expresso Calendar'; 14 14 /* Ao incrementar versão, não esquecer de declarar função do tables_update.inc.php*/ 15 $setup_info['expressoCalendar']['version'] = '1.00 7';15 $setup_info['expressoCalendar']['version'] = '1.008'; 16 16 $setup_info['expressoCalendar']['app_order'] = 10; 17 17 -
sandbox/2.4.2-expresso1/expressoCalendar/setup/tables_update.inc.php
r6255 r6797 120 120 }; 121 121 122 $test[] = '1.007'; 123 function expressoCalendar_upgrade1_007() { 124 $oProc = $GLOBALS['phpgw_setup']->oProc; 125 126 $oProc->query("ALTER TABLE calendar_object ADD COLUMN priority smallint DEFAULT 0;"); 127 $oProc->query("ALTER TABLE calendar_object ADD COLUMN percentage smallint DEFAULT 0;"); 128 $oProc->query("ALTER TABLE calendar_object ADD COLUMN status smallint DEFAULT 0;"); 129 130 $oProc->query("ALTER TABLE calendar ADD COLUMN type smallint DEFAULT 0;"); 131 132 $oProc->query("ALTER TABLE calendar_signature ADD COLUMN type smallint DEFAULT 0;"); 133 134 $GLOBALS['setup_info']['expressoCalendar']['currentver'] = '1.008'; 135 return $GLOBALS['setup_info']['expressoCalendar']['currentver']; 136 }; 137 122 138 ?> -
sandbox/2.4.2-expresso1/prototype/config/calendar.ini
r5592 r6797 19 19 id = "id" 20 20 name = "name" 21 type = "type" 21 22 location = "location" 22 23 timezone = "tzid" -
sandbox/2.4.2-expresso1/prototype/config/calendarSignature.ini
r5514 r6797 22 22 calendar = calendar_id 23 23 isOwner = is_owner 24 type = type 24 25 msgAdd = msg_add 25 26 msgCancel = msg_cancel -
sandbox/2.4.2-expresso1/prototype/config/schedulable.ini
r6190 r6797 56 56 sequence = sequence 57 57 timezone = tzid 58 priority = priority 59 percentage = percentage 60 status = status -
sandbox/2.4.2-expresso1/prototype/modules/calendar/constants.php
r6295 r6797 2 2 3 3 define('EVENT_ID', 1); 4 define('TASK_ID', 2); 5 6 define('SIGNATURE_TYPE_NORMAL', 0); 7 define('SIGNATURE_TYPE_DEFAULT', 1); 8 9 define('CALENDAR_TYPE_EVENT', 0); 10 define('CALENDAR_TYPE_TASK_GROUP', 1); 4 11 5 12 define('STATUS_CONFIRMED', 1); -
sandbox/2.4.2-expresso1/prototype/modules/calendar/css/layout.css
r6476 r6797 404 404 /* -- calendar list styles -- */ 405 405 406 .my-calendars .button.new 406 .my-calendars .button.new, .my-groups-task .button.new{ 407 407 float:right; 408 408 width: 15px; … … 410 410 } 411 411 412 .my-calendars .status-list {412 .my-calendars .status-list, .my-groups-task .status-list { 413 413 display: inline-block; 414 414 margin: 0px 0pc -4px -5px; … … 416 416 } 417 417 418 .my-calendars .list-calendars-item, .signed-calendars .list-calendars-item {418 .my-calendars .list-calendars-item, .signed-calendars .list-calendars-item, .my-groups-task .list-calendars-item{ 419 419 position: relative; 420 420 overflow: hidden; 421 421 } 422 .my-calendars .list-calendars-item div, .signed-calendars .list-calendars-item div {422 .my-calendars .list-calendars-item div, .signed-calendars .list-calendars-item div, .my-groups-task .list-calendars-item div{ 423 423 overflow:hidden; 424 424 width:6000px; … … 426 426 } 427 427 428 .my-calendars .cal-list-options-btn, .signed-calendars .cal-list-options-btn {428 .my-calendars .cal-list-options-btn, .signed-calendars .cal-list-options-btn, .my-groups-task .cal-list-options-btn { 429 429 position: absolute; 430 430 top: 2px; -
sandbox/2.4.2-expresso1/prototype/modules/calendar/css/style.css
r6301 r6797 223 223 .block-vertical-toolbox .button.add { 224 224 width:190px; 225 } 225 margin-bottom: 5px; 226 } 227 228 div.qtip div.add-simple-task input{width: 188px} 229 div.qtip div.add-simple-task textarea{width: 184px} 230 226 231 227 232 .fc-header .fc-state-active, .fc-header .ui-state-active { -
sandbox/2.4.2-expresso1/prototype/modules/calendar/interceptors/DBMapping.php
r6788 r6797 10 10 class DBMapping extends Helpers { 11 11 12 static function encodeCreateSchedulable(&$uri, &$params, &$criteria, $original) { 13 $params['type_id'] = EVENT_ID; 12 static function encodeCreateSchedulable(&$uri, &$params, &$criteria, $original) 13 { 14 15 if(isset($params['summary']) && $params['summary'] == '') 16 $params['summary'] = 'Evento sem título'; 14 17 15 18 if (!is_numeric($params['startTime'])) … … 30 33 $params['dtstamp'] = (isset($params['dtstamp'])) ? $params['dtstamp'] : time() . '000'; 31 34 $params['lastUpdate'] = (isset($params['lastUpdate'])) ? $params['lastUpdate'] : time() . '000'; 32 $params['type'] = EVENT_ID;33 35 $params['uid'] = isset($params['uid']) ? $params['uid'] : self::_makeUid(); 34 36 } -
sandbox/2.4.2-expresso1/prototype/modules/calendar/js/calendar.codecs.js
r6768 r6797 728 728 id: form.idEvent, 729 729 location: form.location, 730 type: 1, 730 731 category: form.category, 731 732 summary: form.summary, … … 953 954 attendee = DataLayer.get('participant', evt.participants[i]); 954 955 if(attendee.user == User.me.id) 955 return (attendee.acl.indexOf('w') >= 0 || attendee.acl.indexOf('o') >= 0 ) ? { 956 return (attendee.acl.indexOf('w') >= 0 || attendee.acl.indexOf('o') >= 0 ) ? 957 { 956 958 selectable: true, 957 959 className: 'fullcalendar-context-menu event-id-'+idEvent+' calendar-id-'+calendar.id+ (isRecurrence ? ' isRecurrence Recurrence-id-'+Recurrence : '') … … 979 981 return returns; 980 982 } 981 return DataLayer.merge({ 983 return DataLayer.merge( 984 { 982 985 editable: aclSignature.acl['write'] && !isRecurrence, 983 986 disableResizing : (((aclSignature.acl['busy'] && !aclSignature.acl['write']) || (!aclSignature.acl['write'] && aclSignature.acl['read'])) ? true : false), 984 987 disableDragging : (((aclSignature.acl['busy'] && !aclSignature.acl['write']) || (!aclSignature.acl['write'] && aclSignature.acl['read'])) ? true: false), 985 988 className: mountClass(aclSignature.acl) 986 }, aclSignature.acl['busy'] ? { 987 title: 'Ocupado', 988 selectable: false 989 } : { 990 selectable: true 991 }); 989 }, aclSignature.acl['busy'] ? 990 { 991 title: 'Ocupado', 992 selectable: false 993 } : { 994 selectable: true 995 }); 992 996 } 993 994 997 } 995 998 … … 1008 1011 1009 1012 for( var i = 0; i < occurrences.length; i++ ) 1010 grouped[ evt.calendar ].push( DataLayer.merge({ 1013 grouped[ evt.calendar ].push( DataLayer.merge( 1014 { 1011 1015 id: evt.URI || evt.id+ '-' + i, 1012 1016 title: Encoder.htmlDecode(evt.summary), … … 1016 1020 isRepeat: isRepeat, 1017 1021 occurrence: i, 1022 type: evt.type, 1018 1023 calendar: evt.calendar 1019 1024 }, eventEditable(evt.id, isRepeat, i ) ) ); -
sandbox/2.4.2-expresso1/prototype/modules/calendar/js/helpers.js
r6718 r6797 2091 2091 }); 2092 2092 } 2093 2093 2094 doMenu(); 2095 2094 2096 $('#divAppbox').on('scroll',function(){ 2095 2097 if ($('.cal-list-options-btn.fg-menu-open.ui-state-active')){ … … 2099 2101 } 2100 2102 }); 2103 2101 2104 $('ul.list-calendars .cal-list-options-btn').on('click',function(){doMenu();}); 2102 2105 … … 2204 2207 2205 2208 $('.qtip-active').keydown(function(event) { 2206 if (event.keyCode == '27') {2209 if (event.keyCode == '27') 2207 2210 meu_container.find(".button.new").qtip('destroy'); 2208 }2209 2211 }); 2210 2212 -
sandbox/2.4.2-expresso1/prototype/modules/calendar/js/init.js
r6768 r6797 1 1 $(document).ready(function() { 2 3 2 //Remove o icone de configuraçõe padrão antigo do expresso 4 3 $('#sideboxdragarea').addClass('hidden'); … … 148 147 }, true ); 149 148 }); 149 /* Quick add task 150 -----------------------------------------------------------------*/ 151 $(".button.add.add-task").click(function(event){ 152 var componente = $(this); 153 154 $(componente).qtip({ 155 show: { 156 ready: true, 157 solo: true, 158 when: { 159 event: 'click' 160 } 161 }, 162 hide: false, 163 content: { 164 text: $('<div></div>').html( DataLayer.render( 'templates/task_quick_add.ejs', {} ) ), 165 title: { 166 text:'Nova tarefa', 167 button: '<a class="button close" href="#">close</a>' 168 } 169 }, 170 style: { 171 name: 'blue', 172 tip: { 173 corner: 'leftMiddle' 174 }, 175 border: { 176 width: 4, 177 radius: 8 178 }, 179 width: { 180 min: 225, 181 max:225 182 } 183 }, 184 position: { 185 corner: { 186 target: 'rightMiddle', 187 tooltip: 'leftMiddle' 188 }, 189 adjust: { 190 x:0, 191 y:0 192 } 193 } 194 }) 195 .qtip("api").onShow = function(arg0) { 196 197 /*------------------------------------------------------------------------*/ 198 /* Seta os valores padrões nos inputs do qtip */ 199 $('div.qtip div.add-simple-task input.task').Watermark("Tarefa sem título"); 200 $('div.qtip div.add-simple-task textarea').Watermark("Descrição"); 201 /*------------------------------------------------------------------------*/ 202 203 $('.qtip-active .button.close').button({ 204 icons: { 205 primary: "ui-icon-close" 206 }, 207 text: false 208 }) 209 .click(function(){ 210 $(componente).qtip('destroy'); 211 }); 212 213 $('.qtip-active .button.save').button().click(function(){ 214 215 var title = $('div.qtip div.add-simple-task input.task').val(); 216 var description = $('div.qtip div.add-simple-task textarea').val(); 217 218 var calendar, timezone = ''; 219 220 for (var i = 0; i < Calendar.signatures.length; i++){ 221 if(Calendar.signatures[i].type == 1 && Calendar.signatures[i].calendar.type == 1){ 222 calendar = Calendar.signatures[i].calendar.id; 223 timezone = Calendar.signatures[i].calendar.timezone; 224 break; 225 } 226 } 227 228 229 DataLayer.put('schedulable', 230 { 231 summary: title, 232 description: description, 233 type: '2', 234 calendar: calendar, 235 timezone: timezone, 236 startTime: new Date().toString('yyyy-MM-dd 00:00:00'), 237 endTime: new Date().toString('yyyy-MM-dd 00:00:00'), 238 allDay: '1' 239 }); 240 //DataLayer.commit(); 241 242 $(componente).qtip('destroy'); 243 }); 244 245 $('.qtip-active .button.advanced').button().click(function(){ 246 $(componente).qtip('destroy'); 247 alert('Nova Tela de criação tarefas'); 248 }); 249 250 $('.qtip-active .button.cancel').button().click(function(){ 251 $(componente).qtip('destroy'); 252 }); 253 254 $('.button').button(); 255 256 }; 257 }); 150 258 151 259 var calendar = $('#calendar').fullCalendar(DataLayer.merge({ … … 190 298 year: 'ano' 191 299 }, 300 301 eventRender: function( event, element, view ){ 192 302 /* 193 eventRender: function( event, element, view ){ 194 $(element).attr( 'event-id', event.id ); 195 }, 196 */ 303 * TODO - Encontrar icones mais filé 304 */ 305 element.find(".fc-event-inner.fc-event-skin").prepend($('<img class="" src="../prototype/modules/calendar/img/' + ( (event.type == 1) ? "event" : "task" ) + '.png"></img>')); 306 }, 307 197 308 select: function( start, end, allDay, event, view ){ 198 309 if (view.name == "month") { … … 286 397 eventClick: function( evt, event, view ){ 287 398 evt.id = evt.id.split('-')[0]; 399 400 if(evt.type == 1){ 401 288 402 if(evt.selectable){ 289 403 if(evt.isRepeat){ … … 309 423 } 310 424 }); 311 312 425 }else{ 313 426 var schedulable = DataLayer.get( "schedulable", evt.id); 314 427 schedulable.calendar = evt.calendar; 315 428 eventDetails( schedulable, true); 316 317 429 } 318 319 430 } 431 }else 432 alert('Editar Tarefa'); 320 433 }, 321 434 -
sandbox/2.4.2-expresso1/prototype/modules/calendar/templates/calendar_list.ejs
r5927 r6797 1 <% 2 var signatures = {'calendar': [], 'taskGroup': [], 'sharedCalendar': []}; 3 for(var i = 0; i < data.signatures.length; i++) 4 { 5 if(data.signatures[i].calendar.type == 1){ 6 signatures['taskGroup'].push(data.signatures[i]); 7 }else{ 8 signatures[data.signatures[i].isOwner == 1 ? 'calendar' : 'sharedCalendar'].push(data.signatures[i]); 9 } 10 } 11 %> 12 1 13 <div class="all-list-calendars"> 2 <% var signature = data.signatures %> 3 <% var external = false %> 14 15 <div class="my-groups-task"> 16 <a title='Grupos de tarefas' class="title-my-calendars" aria-expanded='false' role='button' tabindex='0'>Grupos de tarefas</a> 17 <span class="status-list ui-icon ui-icon-triangle-1-s"></span> 18 <a href="#" class="button new new-calendar">Novo Grupo</a> 19 <ul class="list-calendars my-list-calendars"> 20 <% for (var i=0; i < signatures['taskGroup'].length; i++) {%> 21 <li class="list-calendars-item list-calendars-item-<%= signatures['taskGroup'][i].calendar.id %>" title="<%= signatures['taskGroup'][i].calendar.name %>"> 22 23 <div> 24 <input class="calendar-view" type="checkbox" name="" value="<%= signatures['taskGroup'][i].calendar.id %>" checked="checked"/> 25 <label><%= signatures['taskGroup'][i].calendar.name %></label> 26 27 </div> 28 <a class="cal-list-options-btn my-cal-list-options-btn-<%= signatures['taskGroup'][i].calendar.id %>" style="background-color:#<%=signatures['taskGroup'][i].backgroundColor%>; border-color:#<%= signatures['taskGroup'][i].borderColor%>;"> 29 <img src="../prototype/modules/calendar/img/arrow_down.png" width="10" height="10" class="cal-list-img"/> 30 </a> 31 32 33 <div class="cal-list-options my-cal-list-options-<%= signatures['taskGroup'][i].calendar.id %> hidden"> 34 <ul> 35 <li><a href="#" onclick="add_tab_configure_calendar(<%= signatures['taskGroup'][i].calendar.id%>);">Configurações</a></li> 36 <li><a href="#" onclick="show_modal_import_export(0, <%= signatures['taskGroup'][i].calendar.id%>);">Importar</a></li> 37 <li><a href="#" onclick="show_modal_import_export(1, <%= signatures['taskGroup'][i].calendar.id%>);">Exportar</a></li> 38 <li><a href="#" onclick="show_modal_shared(<%= signatures['taskGroup'][i].calendar.id%>);">Compartilhar agenda</a></li> 39 <li><a href="#" onclick="remove_calendar();">Remover agenda</a></li> 40 </ul> 41 42 </div> 43 </li> 44 <%}%> 45 46 </ul> 47 </div> 48 4 49 <div class="my-calendars"> 5 50 <a title='Minhas agendas' class="title-my-calendars" aria-expanded='false' role='button' tabindex='0'>Minhas agendas</a> … … 7 52 <a href="#" class="button new new-calendar">Nova Agenda</a> 8 53 <ul class="list-calendars my-list-calendars"> 9 <% for (var i=0; i < signature.length; i++) { 10 if(signature[i].isOwner == 1){ 11 %> 12 <li class="list-calendars-item list-calendars-item-<%= signature[i].calendar.id %>" title="<%= signature[i].calendar.name %>"> 54 <% for (var i=0; i < signatures.calendar.length; i++) {%> 55 <li class="list-calendars-item list-calendars-item-<%= signatures['calendar'][i].calendar.id %>" title="<%= signatures['calendar'][i].calendar.name %>"> 13 56 14 57 <div> 15 <input class="calendar-view" type="checkbox" name="" value="<%= signature [i].calendar.id %>" checked="checked"/>16 <label><%= signature [i].calendar.name %></label>58 <input class="calendar-view" type="checkbox" name="" value="<%= signatures['calendar'][i].calendar.id %>" checked="checked"/> 59 <label><%= signatures['calendar'][i].calendar.name %></label> 17 60 18 61 </div> 19 <a class="cal-list-options-btn my-cal-list-options-btn-<%= signature [i].calendar.id %>" style="background-color:#<%=signature[i].backgroundColor%>; border-color:#<%= signature[i].borderColor%>;">62 <a class="cal-list-options-btn my-cal-list-options-btn-<%= signatures['calendar'][i].calendar.id %>" style="background-color:#<%=signatures['calendar'][i].backgroundColor%>; border-color:#<%= signatures['calendar'][i].borderColor%>;"> 20 63 <img src="../prototype/modules/calendar/img/arrow_down.png" width="10" height="10" class="cal-list-img"/> 21 64 </a> 22 65 23 66 24 <div class="cal-list-options my-cal-list-options-<%= signature [i].calendar.id %> hidden">67 <div class="cal-list-options my-cal-list-options-<%= signatures['calendar'][i].calendar.id %> hidden"> 25 68 <ul> 26 <li><a href="#" onclick="add_tab_configure_calendar(<%= signature [i].calendar.id%>);">Configurações</a></li>27 <li><a href="#" onclick="show_modal_import_export(0, <%= signature [i].calendar.id%>);">Importar</a></li>28 <li><a href="#" onclick="show_modal_import_export(1, <%= signature [i].calendar.id%>);">Exportar</a></li>29 <li><a href="#" onclick="show_modal_shared(<%= signature [i].calendar.id%>);">Compartilhar agenda</a></li>69 <li><a href="#" onclick="add_tab_configure_calendar(<%= signatures['calendar'][i].calendar.id%>);">Configurações</a></li> 70 <li><a href="#" onclick="show_modal_import_export(0, <%= signatures['calendar'][i].calendar.id%>);">Importar</a></li> 71 <li><a href="#" onclick="show_modal_import_export(1, <%= signatures['calendar'][i].calendar.id%>);">Exportar</a></li> 72 <li><a href="#" onclick="show_modal_shared(<%= signatures['calendar'][i].calendar.id%>);">Compartilhar agenda</a></li> 30 73 <li><a href="#" onclick="remove_calendar();">Remover agenda</a></li> 31 74 </ul> … … 33 76 </div> 34 77 </li> 35 <% 36 }else 37 external = true; 38 } 39 %> 78 <%}%> 40 79 41 80 </ul> … … 47 86 <a href="#" class="button new new-calendar-shared tiny">Nova Agenda</a> 48 87 49 <% if (external) { %>50 88 <ul class="list-calendars signed-list-calendars"> 51 <% for (var i=0; i < signature.length; i++) { 52 if(signature[i].isOwner == 0){ 53 %> 54 <li class="list-calendars-item list-calendars-item-<%= signature[i].calendar.id %>" title="<%= signature[i].calendar.name %>"> 89 <% for (var i=0; i < signatures['sharedCalendar'].length; i++) {%> 90 <li class="list-calendars-item list-calendars-item-<%= signatures['sharedCalendar'][i].calendar.id %>" title="<%= signatures['sharedCalendar'][i].calendar.name %>"> 55 91 <div> 56 <input class="calendar-view" type="checkbox" name="" value="<%= signature[i].calendar.id %>" checked="checked"/>57 <label><%= signature[i].calendar.name %></label>58 </div>59 <a class="cal-list-options-btn my-cal-list-options-btn-<%= signature [i].calendar.id %>" style="background-color:#<%=signature[i].backgroundColor%>; border-color:#<%= signature[i].borderColor%>;">92 <input class="calendar-view" type="checkbox" name="" value="<%= signatures['sharedCalendar'][i].calendar.id %>" checked="checked"/> 93 <label><%= signatures['sharedCalendar'][i].calendar.name %></label> 94 </div> 95 <a class="cal-list-options-btn my-cal-list-options-btn-<%= signatures['sharedCalendar'][i].calendar.id %>" style="background-color:#<%=signatures['sharedCalendar'][i].backgroundColor%>; border-color:#<%= signatures['sharedCalendar'][i].borderColor%>;"> 60 96 <img src="../prototype/modules/calendar/img/arrow_down.png" width="10" height="10" class="cal-list-img"/></a> 61 <div class="cal-list-options my-cal-list-options-<%= signature [i].calendar.id %> hidden">97 <div class="cal-list-options my-cal-list-options-<%= signatures['sharedCalendar'][i].calendar.id %> hidden"> 62 98 <ul> 63 <li><a href="#" onclick="add_tab_configure_calendar(<%= signature [i].calendar.id %>);">Configurações</a></li>64 <li><a href="#" onclick="show_modal_import_export(0, <%= signature [i].calendar.id %>);">Importar</a></li>65 <li><a href="#" onclick="show_modal_import_export(1, <%= signature [i].calendar.id %>);">Exportar</a></li>66 <%if(!signature [i].permission.acl['required']){%>67 <li><a href="#" onclick="cancel_signature (<%= signature[i].id %>);">Cancelar assinatura</a></li>99 <li><a href="#" onclick="add_tab_configure_calendar(<%= signatures['sharedCalendar'][i].calendar.id %>);">Configurações</a></li> 100 <li><a href="#" onclick="show_modal_import_export(0, <%= signatures['sharedCalendar'][i].calendar.id %>);">Importar</a></li> 101 <li><a href="#" onclick="show_modal_import_export(1, <%= signatures['sharedCalendar'][i].calendar.id %>);">Exportar</a></li> 102 <%if(!signatures['sharedCalendar'][i].permission.acl['required']){%> 103 <li><a href="#" onclick="cancel_signatures['sharedCalendar'](<%= signatures['sharedCalendar'][i].id %>);">Cancelar assinatura</a></li> 68 104 <%}%> 69 105 </ul> … … 72 108 73 109 </li> 74 <% 75 } 76 } 77 %> 110 <%}%> 78 111 </ul> 79 <% } %>80 112 </div> 81 113 </div> -
sandbox/2.4.2-expresso1/prototype/modules/calendar/templates/index.ejs
r6768 r6797 122 122 <div class="block-vertical-toolbox"> 123 123 <a class="button add add-event" href="#">Adicionar evento</a> 124 <a class="button add add-task" href="#">Adicionar tarefa</a> 124 125 <!--<a class="button add" href="#" onclick="add_events_list();">Lista de Eventos</a>--> 125 126 <div class="mini-calendar"></div>
Note: See TracChangeset
for help on using the changeset viewer.