- Timestamp:
- 06/18/12 02:47:37 (12 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
sandbox/expressoServiceImap/prototype/modules/filters/filters.js
r6486 r6529 1 keys = function( object ){ 2 3 var array = []; 4 5 for( var key in object ) 6 array[ array.length ] = key; 7 8 return( array ); 9 10 } 11 1 12 /* Verifica se a regra fora de escritório está ativa */ 2 13 function outOfficeVerify() { … … 112 123 } 113 124 114 bytes2Size = function(bytes) { 115 var sizes = ['B', 'KB', 'MB', 'GB', 'TB']; 116 if (bytes === 0) return 'n/a'; 117 var i = parseInt(Math.floor(Math.log(bytes) / Math.log(1024))); 118 var size = (i<2) ? Math.round((bytes / Math.pow(1024, i))) : Math.round((bytes / Math.pow(1024, i)) * 100)/100; 119 return size + ' ' + sizes[i]; 120 }; 121 122 flags2Class = function(cellvalue) { 123 var flags_enum = cellvalue.split(','); 124 var classes = ''; 125 for (var i=0; i<flags_enum.length; i++){ 126 classes += '<span class="icon-'+flags_enum[i].toLowerCase()+'"> </span>'; 127 } 128 return classes; 129 }; 130 131 date2Time = function (timestamp) { 132 var date = new Date(); 133 if( typeof timestamp === "string" ) 134 timestamp = parseInt( timestamp, 10 ); 135 if ((date.getTime() - timestamp) < (24*60*60*1000)) { 136 return '<span class="timable" title="'+timestamp+'"> </span>'; 137 } else { 138 date = new Date(timestamp); 139 var b = date.toISOString().split("T")[0].split("-"); 140 var c = b[2] + "/" + b[1] + "/" + b[0]; 141 return '<span class="datable">' + c + '</span>'; 142 } 143 }; 144 145 keys = function( object ){ 146 147 var array = []; 148 149 for( var key in object ) 150 array[ array.length ] = key; 151 152 return( array ); 153 154 } 125 // bytes2Size = function(bytes) { 126 // var sizes = ['B', 'KB', 'MB', 'GB', 'TB']; 127 // if (bytes === 0) return 'n/a'; 128 // var i = parseInt(Math.floor(Math.log(bytes) / Math.log(1024))); 129 // var size = (i<2) ? Math.round((bytes / Math.pow(1024, i))) : Math.round((bytes / Math.pow(1024, i)) * 100)/100; 130 // return size + ' ' + sizes[i]; 131 // }; 132 133 // flags2Class2 = function(cellvalue) { 134 // var flags_enum = cellvalue.split(','); 135 // var classes = ''; 136 // for (var i=0; i<flags_enum.length; i++){ 137 // classes += '<span class="icon-'+flags_enum[i].toLowerCase()+'"> </span>'; 138 // } 139 // return classes; 140 // }; 141 142 // date2Time = function (timestamp) { 143 // var date = new Date(); 144 // if( typeof timestamp === "string" ) 145 // timestamp = parseInt( timestamp, 10 ); 146 // if ((date.getTime() - timestamp) < (24*60*60*1000)) { 147 // return '<span class="timable" title="'+timestamp+'"> </span>'; 148 // } else { 149 // date = new Date(timestamp); 150 // var b = date.toISOString().split("T")[0].split("-"); 151 // var c = b[2] + "/" + b[1] + "/" + b[0]; 152 // return '<span class="datable">' + c + '</span>'; 153 // } 154 // }; 155 155 156 156 /* Mostra os detalhes do filtro para edição */ … … 348 348 } 349 349 350 351 DataLayer.codec( 'message', 'jqGrid', {352 353 encoder: function( data ){354 355 return( data );356 357 }358 });359 360 350 /* Gerencia o grid das mensagens da caixa de entrada */ 361 351 function showGridMessages(thiss) { … … 407 397 var total = data.length ? Math.ceil( data.length / numRows ) : 0; 408 398 409 delete DataLayer.criterias['message:jqGrid']; 410 DataLayer.register( 'criterias', 'message:jqGrid', function( crit ){ 411 412 if( crit.page > total ) 413 crit.page = total; 414 415 var start = crit.rows * ( crit.page - 1 ); 416 417 var msgNumber = []; 418 419 for( var i = start; i < start + crit.rows && !!data[i]; i++ ) 420 msgNumber.push( data[i] ); 421 422 if( !msgNumber.length ) 423 return( false ); 424 425 return { filter: [ "msgNumber", "IN", msgNumber ], criteria: { properties: { context: { folder: 'INBOX' }, order: crit.sidx } } }; 426 }); 399 delete DataLayer.criterias['message:inboxSearch']; 400 delete DataLayer.encoders['message:inboxSearch']; 401 402 DataLayer.codec( 'message', 'inboxSearch', { 403 404 encoder: function( dt, crit ){ 405 406 return({"rows": dt, 407 "records": data.length, 408 "page": crit.criteria.properties.context.page, 409 "total": total}); 410 411 }, 412 criteria: function( crit ){ 413 414 if( crit.page > total ) 415 crit.page = total; 416 417 var start = crit.rows * ( crit.page - 1 ); 418 419 start / crit.rows + 1 420 421 var msgNumber = []; 422 423 for( var i = start; i < start + crit.rows && !!data[i]; i++ ) 424 msgNumber.push( data[i] ); 425 426 if( !msgNumber.length ) 427 return( false ); 428 429 return { filter: [ "msgNumber", "IN", msgNumber ], criteria: { properties: { context: { folder: 'INBOX', page: crit.page }, order: crit.sidx } } }; 430 431 } 432 }); 427 433 428 434 allMessages = data; 429 435 430 436 if (typeof grid !== "undefined") { 431 grid .jqGrid( 'setGridParam', { url: 'message:jqGrid', postData: data } ).trigger( 'reloadGrid' );437 grid/*.jqGrid( 'setGridParam', { url: 'message:inboxSearch', postData: data } )*/.trigger( 'reloadGrid' ); 432 438 //return; 433 439 } … … 435 441 .html('<table class="hidden fields-search-messages-grid" id="fields-search-messages-grid"><tr><td/></tr></table><div class="hidden fields-search-messages-grid-pager" id="fields-search-messages-grid-pager"></div>') 436 442 .children(".fields-search-messages-grid, .fields-search-messages-grid-pager").removeClass('hidden').filter(".fields-search-messages-grid").trigger( 'reloadGrid' ).jqGrid({ 437 url: 'message: jqGrid',443 url: 'message:inboxSearch', 438 444 datatype: "json", 439 445 mtype: 'GET',
Note: See TracChangeset
for help on using the changeset viewer.