extensions/net.sf.basedb.reggie/trunk/resources/sampleproc/rnaqc_extra_aliquot.js

Code
Comments
Other
Rev Date Author Line
3558 21 Oct 15 nicklas 1 var ExtraAliquot = function()
3558 21 Oct 15 nicklas 2 {
3558 21 Oct 15 nicklas 3   var aliquot = {};
3558 21 Oct 15 nicklas 4   var debug = 0;
3558 21 Oct 15 nicklas 5   var well;
3558 21 Oct 15 nicklas 6   
3558 21 Oct 15 nicklas 7   // Page initialization
3558 21 Oct 15 nicklas 8   aliquot.initPage = function()
3558 21 Oct 15 nicklas 9   {
3558 21 Oct 15 nicklas 10     Buttons.addClickHandler('close', App.closeWindow);
3558 21 Oct 15 nicklas 11     Buttons.addClickHandler('btnSave', aliquot.saveDetails);
3558 21 Oct 15 nicklas 12     
3558 21 Oct 15 nicklas 13     Events.addEventHandler('volume', 'keypress', Events.numberOnly);
3558 21 Oct 15 nicklas 14     Events.doOnEnter('volume', aliquot.saveDetails);
3558 21 Oct 15 nicklas 15     
3558 21 Oct 15 nicklas 16     var wellId = Data.int('page-data', 'well-id');
3558 21 Oct 15 nicklas 17     var frm = document.forms['details'];
3558 21 Oct 15 nicklas 18     well = window.opener.RnaQcImport.getBioWellById(wellId);
3558 21 Oct 15 nicklas 19
3558 21 Oct 15 nicklas 20     frm.volume.value = well.extraVolume || 0;
3558 21 Oct 15 nicklas 21     frm.comment.value = well.comment || '';
3558 21 Oct 15 nicklas 22
3558 21 Oct 15 nicklas 23     frm.volume.focus();
3558 21 Oct 15 nicklas 24     frm.volume.select();
3558 21 Oct 15 nicklas 25     setTimeout(aliquot.checkForm, 100);
3558 21 Oct 15 nicklas 26   }
3558 21 Oct 15 nicklas 27   
3558 21 Oct 15 nicklas 28   aliquot.checkForm = function()
3558 21 Oct 15 nicklas 29   {
3558 21 Oct 15 nicklas 30     var frm = document.forms['details'];
3558 21 Oct 15 nicklas 31
3558 21 Oct 15 nicklas 32     var volume = frm.volume.value;
3558 21 Oct 15 nicklas 33     if (volume && !(parseFloat(volume) >= 0))
3558 21 Oct 15 nicklas 34     {
3558 21 Oct 15 nicklas 35       Forms.showNotification('volume', 'Invalid value for volume.');
3558 21 Oct 15 nicklas 36       return false;
3558 21 Oct 15 nicklas 37     }
3558 21 Oct 15 nicklas 38     return true;
3558 21 Oct 15 nicklas 39   }
3558 21 Oct 15 nicklas 40
3558 21 Oct 15 nicklas 41   aliquot.saveDetails = function()
3558 21 Oct 15 nicklas 42   {
3558 21 Oct 15 nicklas 43     if (!aliquot.checkForm()) return;
3558 21 Oct 15 nicklas 44     var frm = document.forms['details'];
3558 21 Oct 15 nicklas 45     
3558 21 Oct 15 nicklas 46     var volume = parseFloat(frm.volume.value) || 0;
3558 21 Oct 15 nicklas 47     well.extraVolume = volume;
3558 21 Oct 15 nicklas 48     well.comment = frm.comment.value;
3558 21 Oct 15 nicklas 49     window.opener.Events.sendChangeEvent('well-'+well.id);
3558 21 Oct 15 nicklas 50     window.close();
3558 21 Oct 15 nicklas 51   }
3558 21 Oct 15 nicklas 52
3558 21 Oct 15 nicklas 53   
3558 21 Oct 15 nicklas 54   return aliquot;
3558 21 Oct 15 nicklas 55 }();
3558 21 Oct 15 nicklas 56
3558 21 Oct 15 nicklas 57 Doc.onLoad(ExtraAliquot.initPage);
3558 21 Oct 15 nicklas 58