Changeset 583
- Timestamp:
- 02/04/09 14:52:03 (15 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/web2/addons/job_monarch/js/jobgrid.js
r581 r583 5 5 var JobProxy; 6 6 var SearchField; 7 var filterButton; 7 8 var myfilters = { }; 8 9 var myparams = { }; … … 11 12 12 13 var filterfields = [ "jid", "queue", "name", "owner" ]; 14 15 var filterMenu = new Ext.menu.Menu({ 16 id: 'filterMenu', 17 items: [ new Ext.menu.Item({ text: 'Clear all', handler: clearFilters }) ] 18 }); 19 20 var filterButton = new Ext.MenuButton({ 21 id: 'filtermenuknop', 22 text: 'Filters', 23 menu: filterMenu 24 }); 13 25 14 26 Ext.namespace('Ext.ux'); … … 56 68 Ext.namespace( 'Ext' ); 57 69 70 function clearFilters() 71 { 72 if( inMyArrayKeys( myfilters, 'host' ) ) 73 { 74 delete myfilters['host']; 75 delete myparams['host']; 76 } 77 if( inMyArrayKeys( myfilters, 'jid' ) ) 78 { 79 delete myfilters['jid']; 80 delete myparams['jid']; 81 } 82 if( inMyArrayKeys( myfilters, 'queue' ) ) 83 { 84 delete myfilters['queue']; 85 delete myparams['queue']; 86 } 87 if( inMyArrayKeys( myfilters, 'owner' ) ) 88 { 89 delete myfilters['owner']; 90 delete myparams['owner']; 91 } 92 if( inMyArrayKeys( myfilters, 'status' ) ) 93 { 94 delete myfilters['status']; 95 delete myparams['status']; 96 } 97 reloadJobStore(); 98 } 99 58 100 function makeArrayURL( somearr ) 59 101 { … … 94 136 } 95 137 return false; 138 } 139 140 function ArraySize( arr ) 141 { 142 count = 0; 143 144 for( arkey in arr ) 145 { 146 count = count + 1; 147 } 148 149 return count; 96 150 } 97 151 … … 236 290 ci_x = (window.innerWidth - ClusterImageWindow.getSize()['width'] - 20); 237 291 ClusterImageWindow.setPosition( ci_x, 10 ); 292 } 293 294 function deselectFilterMenu( menuItem, event ) 295 { 296 filterValue = menuItem.text; 297 298 for( arkey in myfilters ) 299 { 300 if( myfilters[arkey] == filterValue ) 301 { 302 delete myfilters[arkey]; 303 delete myparams[arkey]; 304 } 305 } 306 reloadJobStore(); 307 } 308 309 function makeFilterMenu() 310 { 311 var filterMenu = new Ext.menu.Menu({ 312 id: 'filterMenu', 313 items: [ new Ext.menu.Item({ text: 'Clear all', handler: clearFilters }) ] 314 }); 315 316 if( ArraySize( myfilters ) > 0 ) 317 { 318 filterMenu.addSeparator(); 319 } 320 321 for( arkey in myfilters ) 322 { 323 filterMenu.add( new Ext.menu.CheckItem({ text: myfilters[arkey], handler: deselectFilterMenu, checked: true }) ); 324 } 325 326 if( filterButton ) 327 { 328 filterButton.menu = filterMenu; 329 } 238 330 } 239 331 … … 431 523 delete myparams['query']; 432 524 } 433 } 434 } 435 }, 436 'load': 437 { 438 scope: this, 439 fn: function() 440 { 441 if( SearchField ) 442 { 443 search_value = SearchField.getEl().dom.value; 444 445 if( search_value != '' ) 525 else 446 526 { 447 527 myfilters['query'] = search_value; 448 528 } 449 529 530 makeFilterMenu(); 450 531 reloadClusterImage(); 451 532 452 533 filter_str = myparams.c + ' Jobs Overview' + makeFilterString(); 453 534 JobListingWindow.setTitle( filter_str ); 454 455 if( search_value != '' )456 {457 delete myfilters['query'];458 }459 535 } 460 536 } 461 } 537 } //, 538 //'load': 539 //{ 540 // scope: this, 541 // fn: function() 542 // { 543 // if( SearchField ) 544 // { 545 // search_value = SearchField.getEl().dom.value; 546 547 // if( search_value != '' ) 548 // { 549 // myfilters['query'] = search_value; 550 // } 551 552 // reloadClusterImage(); 553 554 // filter_str = myparams.c + ' Jobs Overview' + makeFilterString(); 555 // JobListingWindow.setTitle( filter_str ); 556 557 // if( search_value != '' ) 558 // { 559 // delete myfilters['query']; 560 // } 561 // } 562 // } 563 //} 462 564 } 463 565 }); … … 698 800 } 699 801 802 700 803 JobListingEditorGrid = new Ext.grid.EditorGridPanel({ 701 804 id: 'JobListingEditorGrid', … … 728 831 } 729 832 }), 730 new Ext.Button({ 731 text: 'Clear filters', 732 tooltip: 'Clear all jobs filters', 733 iconCls: 'remove', 734 listeners: { 735 'click': { 736 scope: this, 737 fn: function() 738 { 739 if( inMyArrayKeys( myfilters, 'host' ) ) 740 { 741 delete myfilters['host']; 742 delete myparams['host']; 743 } 744 if( inMyArrayKeys( myfilters, 'jid' ) ) 745 { 746 delete myfilters['jid']; 747 delete myparams['jid']; 748 } 749 if( inMyArrayKeys( myfilters, 'queue' ) ) 750 { 751 delete myfilters['queue']; 752 delete myparams['queue']; 753 } 754 if( inMyArrayKeys( myfilters, 'owner' ) ) 755 { 756 delete myfilters['owner']; 757 delete myparams['owner']; 758 } 759 if( inMyArrayKeys( myfilters, 'status' ) ) 760 { 761 delete myfilters['status']; 762 delete myparams['status']; 763 } 764 reloadJobStore(); 765 } 766 } 767 } 768 }) ] 833 filterButton ] 769 834 }); 770 835
Note: See TracChangeset
for help on using the changeset viewer.