extensions/net.sf.basedb.reggie/trunk/resources/analysis/select_libs.js

Code
Comments
Other
Rev Date Author Line
6281 09 Jun 21 nicklas 1 var SelectLibs = function()
6281 09 Jun 21 nicklas 2 {
6281 09 Jun 21 nicklas 3   var select = {}
6281 09 Jun 21 nicklas 4   var debug = 0;
6281 09 Jun 21 nicklas 5   
6281 09 Jun 21 nicklas 6   select.initPage = function()
6281 09 Jun 21 nicklas 7   {
6281 09 Jun 21 nicklas 8     Buttons.addClickHandler('close', App.closeWindow);
6281 09 Jun 21 nicklas 9     Buttons.addClickHandler('btnOk', select.saveSelectedLibs);
6281 09 Jun 21 nicklas 10   
6281 09 Jun 21 nicklas 11     var libs = window.opener.Demux.getAllLibraries();
6281 09 Jun 21 nicklas 12     
6281 09 Jun 21 nicklas 13     var html = '<table id="library-list">';
6281 09 Jun 21 nicklas 14     html += '<tr>';
6281 09 Jun 21 nicklas 15     html += '<th></th>';
6281 09 Jun 21 nicklas 16     html += '<th id="libheader">Library</th>';
6281 09 Jun 21 nicklas 17     html += '<th>Barcode</th>';
6281 09 Jun 21 nicklas 18     html += '<th>DoNotUse</th>';
6281 09 Jun 21 nicklas 19     html += '</tr>';
6281 09 Jun 21 nicklas 20     for (var libNo = 0; libNo < libs.length; libNo++)
6281 09 Jun 21 nicklas 21     {
6281 09 Jun 21 nicklas 22       var lib = libs[libNo];
6281 09 Jun 21 nicklas 23
6281 09 Jun 21 nicklas 24       html += '<tr class="lib highlight">';
6281 09 Jun 21 nicklas 25       html += '<td>'+(libNo+1)+'<input type="checkbox" id="c'+libNo+'" value="'+lib.id+'" '+(lib.selected?'checked':'')+'></td>';
6281 09 Jun 21 nicklas 26       html += '<td class="lib-name"><label for="c'+libNo+'">'+Strings.encodeTags(lib.name)+'</label></td>';
6281 09 Jun 21 nicklas 27       html += '<td>'+Strings.encodeTags(lib.barcode.name)+'</td>';
6281 09 Jun 21 nicklas 28       html += '<td>';
6281 09 Jun 21 nicklas 29       if (lib.DO_NOT_USE)
6281 09 Jun 21 nicklas 30       {
6281 09 Jun 21 nicklas 31         html += Strings.encodeTags(lib.DO_NOT_USE+': '+lib.DO_NOT_USE_COMMENT);
6281 09 Jun 21 nicklas 32       }
6281 09 Jun 21 nicklas 33       html += '</td>';
6281 09 Jun 21 nicklas 34       html += '</tr>';
6281 09 Jun 21 nicklas 35     }
6281 09 Jun 21 nicklas 36     html += '</table>';
6281 09 Jun 21 nicklas 37     Doc.element('libraries').innerHTML = html;
6281 09 Jun 21 nicklas 38   }
6281 09 Jun 21 nicklas 39   
6281 09 Jun 21 nicklas 40   select.saveSelectedLibs = function()
6281 09 Jun 21 nicklas 41   {
6281 09 Jun 21 nicklas 42     var frm = document.forms['reggie'];
6281 09 Jun 21 nicklas 43     var libs = window.opener.Demux.getAllLibraries();
6281 09 Jun 21 nicklas 44     var numSelected = 0;
6281 09 Jun 21 nicklas 45     for (var libNo = 0; libNo < libs.length; libNo++)
6281 09 Jun 21 nicklas 46     {
6281 09 Jun 21 nicklas 47       var lib = libs[libNo];
6281 09 Jun 21 nicklas 48       lib.selected = frm['c'+libNo].checked;
6281 09 Jun 21 nicklas 49       if (lib.selected) numSelected++;
6281 09 Jun 21 nicklas 50     }
6281 09 Jun 21 nicklas 51     
6281 09 Jun 21 nicklas 52     if (numSelected == 0)
6281 09 Jun 21 nicklas 53     {
6281 09 Jun 21 nicklas 54       Forms.showNotification('c0', 'Please select at least one library', null, 'pointer-below');
6281 09 Jun 21 nicklas 55       return;
6281 09 Jun 21 nicklas 56     }
6281 09 Jun 21 nicklas 57     
6281 09 Jun 21 nicklas 58     window.opener.Doc.element('libsSelectedLabel').innerHTML = '('+numSelected+' selected)';
6281 09 Jun 21 nicklas 59     App.closeWindow();
6281 09 Jun 21 nicklas 60   }
6281 09 Jun 21 nicklas 61
6281 09 Jun 21 nicklas 62   return select;
6281 09 Jun 21 nicklas 63 }();
6281 09 Jun 21 nicklas 64
6281 09 Jun 21 nicklas 65 Doc.onLoad(SelectLibs.initPage);