extensions/net.sf.basedb.reggie/trunk/resources/outtake/delivery_export.js

Code
Comments
Other
Rev Date Author Line
4173 24 Oct 16 nicklas 1 var Delivery = function()
4173 24 Oct 16 nicklas 2 {
4173 24 Oct 16 nicklas 3   var delivery = {};
4173 24 Oct 16 nicklas 4   var debug = 0;
4173 24 Oct 16 nicklas 5   
4173 24 Oct 16 nicklas 6   // Page initialization
4173 24 Oct 16 nicklas 7   delivery.initPage = function()
4173 24 Oct 16 nicklas 8   {
4173 24 Oct 16 nicklas 9     // Step 1
4173 24 Oct 16 nicklas 10     Events.addEventHandler('step-1', 'wizard-validate', delivery.validateStep1);
4173 24 Oct 16 nicklas 11     Events.addEventHandler('workList', 'change', delivery.worklistOnChange);
4173 24 Oct 16 nicklas 12     Events.addEventHandler('deliveredDate', 'change', Wizard.validateDate);
4173 24 Oct 16 nicklas 13
4173 24 Oct 16 nicklas 14     // Navigation
4173 24 Oct 16 nicklas 15     Buttons.addClickHandler('gocancel', Wizard.cancelWizard);
4173 24 Oct 16 nicklas 16     Buttons.addClickHandler('gorestart', Wizard.restartWizard);
4173 24 Oct 16 nicklas 17     Buttons.addClickHandler('godownload', delivery.downloadDelivery);
4173 24 Oct 16 nicklas 18     Buttons.addClickHandler('goregister', Wizard.goRegister);
4173 24 Oct 16 nicklas 19     
4173 24 Oct 16 nicklas 20     // Final registration
4173 24 Oct 16 nicklas 21     Events.addEventHandler('wizard', 'wizard-submit', delivery.submit);
4173 24 Oct 16 nicklas 22     
4173 24 Oct 16 nicklas 23     var url = '../Outtake.servlet?ID='+App.getSessionId();
4173 24 Oct 16 nicklas 24     url += '&cmd=GetOuttakeWorklists&forDelivery=1';
4173 24 Oct 16 nicklas 25     Wizard.showLoadingAnimation('Loading outtake work lists...');
4173 24 Oct 16 nicklas 26     Wizard.asyncJsonRequest(url, delivery.initializeStep1);
4173 24 Oct 16 nicklas 27   }
4173 24 Oct 16 nicklas 28
4173 24 Oct 16 nicklas 29   delivery.initializeStep1 = function(response)
4173 24 Oct 16 nicklas 30   {
4173 24 Oct 16 nicklas 31     var frm = document.forms['reggie'];
4173 24 Oct 16 nicklas 32     var workLists = response.workLists;
4173 24 Oct 16 nicklas 33     
4173 24 Oct 16 nicklas 34     var workList = frm.workList;
4173 24 Oct 16 nicklas 35     if (workLists.length > 0)
4173 24 Oct 16 nicklas 36     {
4173 24 Oct 16 nicklas 37       for (var i=0; i < workLists.length; i++)
4173 24 Oct 16 nicklas 38       {
4173 24 Oct 16 nicklas 39         var list = workLists[i];
6326 14 Jun 21 nicklas 40         var name = list.name + ' (' + list.size+(list.parentType?' '+list.parentType : '') + ')';
4173 24 Oct 16 nicklas 41         var option = new Option(name, list.id);
4173 24 Oct 16 nicklas 42         option.workList = list;
4173 24 Oct 16 nicklas 43         workList.options[workList.length] = option;
4173 24 Oct 16 nicklas 44       }
4173 24 Oct 16 nicklas 45       Events.sendChangeEvent(workList);
4173 24 Oct 16 nicklas 46     }
4173 24 Oct 16 nicklas 47     else
4173 24 Oct 16 nicklas 48     {
4173 24 Oct 16 nicklas 49       Wizard.setFatalError('No outtake works lists available for processing.');
4173 24 Oct 16 nicklas 50       return;
4173 24 Oct 16 nicklas 51     }
4173 24 Oct 16 nicklas 52     
4173 24 Oct 16 nicklas 53     Doc.show('step-1');
4173 24 Oct 16 nicklas 54     Doc.show('godownload');
4173 24 Oct 16 nicklas 55     Doc.show('goregister');
4173 24 Oct 16 nicklas 56   }
4173 24 Oct 16 nicklas 57   
4173 24 Oct 16 nicklas 58   delivery.worklistOnChange = function()
4173 24 Oct 16 nicklas 59   {
4173 24 Oct 16 nicklas 60     var frm = document.forms['reggie'];
4173 24 Oct 16 nicklas 61     var workList = frm.workList[frm.workList.selectedIndex].workList;
4173 24 Oct 16 nicklas 62     frm.comments.value = workList.comments;
4173 24 Oct 16 nicklas 63   }
4173 24 Oct 16 nicklas 64
4173 24 Oct 16 nicklas 65   
4173 24 Oct 16 nicklas 66   delivery.validateStep1 = function(event)
4173 24 Oct 16 nicklas 67   {
4173 24 Oct 16 nicklas 68     var frm = document.forms['reggie'];
4173 24 Oct 16 nicklas 69     
4173 24 Oct 16 nicklas 70     var valid = true;
4173 24 Oct 16 nicklas 71     valid &= frm.workList.selectedIndex >= 0;
4173 24 Oct 16 nicklas 72     valid &= Wizard.isValid('deliveredDate');
4173 24 Oct 16 nicklas 73
4173 24 Oct 16 nicklas 74     if (!valid)  event.preventDefault();
4173 24 Oct 16 nicklas 75   }
4173 24 Oct 16 nicklas 76   
6824 30 Aug 22 nicklas 77   delivery.downloadDelivery = function()
4173 24 Oct 16 nicklas 78   {
4173 24 Oct 16 nicklas 79     var frm = document.forms['reggie'];
4173 24 Oct 16 nicklas 80
4173 24 Oct 16 nicklas 81     var url = '../Outtake.servlet?ID='+App.getSessionId();
4173 24 Oct 16 nicklas 82     url += '&cmd=DownloadDeliveryFile';
4173 24 Oct 16 nicklas 83     url += '&workListId='+frm.workList.value;
4173 24 Oct 16 nicklas 84     if (frm.useExternalId.checked)
4173 24 Oct 16 nicklas 85     {
4173 24 Oct 16 nicklas 86       url += '&useExternalId=1';
4173 24 Oct 16 nicklas 87     }
4173 24 Oct 16 nicklas 88     location.href = url;
4173 24 Oct 16 nicklas 89   }
4173 24 Oct 16 nicklas 90
4173 24 Oct 16 nicklas 91   delivery.submit = function()
4173 24 Oct 16 nicklas 92   {
4173 24 Oct 16 nicklas 93     var frm = document.forms['reggie'];
4173 24 Oct 16 nicklas 94
4173 24 Oct 16 nicklas 95     var submitInfo = {};
4173 24 Oct 16 nicklas 96     submitInfo.workList = parseInt(frm.workList.value, 10);
4173 24 Oct 16 nicklas 97
4173 24 Oct 16 nicklas 98 //    var failed = Doc.element('outcomeFailed').checked;
4173 24 Oct 16 nicklas 99 //    submitInfo.failed = failed;
4173 24 Oct 16 nicklas 100     
4173 24 Oct 16 nicklas 101     submitInfo.deliveredDate = frm.deliveredDate.value;
4173 24 Oct 16 nicklas 102     submitInfo.comments = frm.comments.value;
4173 24 Oct 16 nicklas 103     
4173 24 Oct 16 nicklas 104     var  url = '../Outtake.servlet?ID='+App.getSessionId();
4173 24 Oct 16 nicklas 105     url += '&cmd=RegisterOuttakeDelivered';
4173 24 Oct 16 nicklas 106     Wizard.showLoadingAnimation('Performing registration...');
4173 24 Oct 16 nicklas 107     Wizard.asyncJsonRequest(url, delivery.submissionResults, 'POST', JSON.stringify(submitInfo));
4173 24 Oct 16 nicklas 108
4173 24 Oct 16 nicklas 109   }
4173 24 Oct 16 nicklas 110   
4173 24 Oct 16 nicklas 111   delivery.submissionResults = function(response)
4173 24 Oct 16 nicklas 112   {
4173 24 Oct 16 nicklas 113     Wizard.showFinalMessage(response.messages);
4173 24 Oct 16 nicklas 114     Doc.show('gorestart');
4173 24 Oct 16 nicklas 115   }
4173 24 Oct 16 nicklas 116
4173 24 Oct 16 nicklas 117   return delivery;
4173 24 Oct 16 nicklas 118 }();
4173 24 Oct 16 nicklas 119
4173 24 Oct 16 nicklas 120 Doc.onLoad(Delivery.initPage);
4173 24 Oct 16 nicklas 121