[open-ils-commits] r8862 - in branches/rel_1_2/Open-ILS/web/opac: locale/en-US skin/default/js skin/default/xml/common skin/default/xml/myopac

svn at svn.open-ils.org svn at svn.open-ils.org
Tue Mar 4 16:11:26 EST 2008


Author: erickson
Date: 2008-03-04 15:39:11 -0500 (Tue, 04 Mar 2008)
New Revision: 8862

Modified:
   branches/rel_1_2/Open-ILS/web/opac/locale/en-US/opac.dtd
   branches/rel_1_2/Open-ILS/web/opac/skin/default/js/myopac.js
   branches/rel_1_2/Open-ILS/web/opac/skin/default/xml/common/holds.xml
   branches/rel_1_2/Open-ILS/web/opac/skin/default/xml/myopac/myopac_holds.xml
Log:
changed checks and Xs to yes/no to make IE happy. moved thaw date from prompt to form.  added calendar widget to thaw date form.  change UI terminology from freeze/thaw to activate/suspend

Modified: branches/rel_1_2/Open-ILS/web/opac/locale/en-US/opac.dtd
===================================================================
--- branches/rel_1_2/Open-ILS/web/opac/locale/en-US/opac.dtd	2008-03-04 20:37:23 UTC (rev 8861)
+++ branches/rel_1_2/Open-ILS/web/opac/locale/en-US/opac.dtd	2008-03-04 20:39:11 UTC (rev 8862)
@@ -209,23 +209,22 @@
 <!ENTITY myopac.holds.edit "Edit">
 <!ENTITY myopac.holds.cancel "Cancel">
 <!ENTITY myopac.holds.verify "If you wish to cancel the selected hold, click OK, otherwise click Cancel.">
-<!ENTITY myopac.holds.freeze_selected "Freeze">
-<!ENTITY myopac.holds.thaw_selected "Un-freeze">
-<!ENTITY myopac.holds.thaw_date_selected "Set Un-freeze date">
+<!ENTITY myopac.holds.freeze_selected "Suspend">
+<!ENTITY myopac.holds.thaw_selected "Activate">
+<!ENTITY myopac.holds.thaw_date_selected "Set Active Date">
 <!ENTITY myopac.holds.cancel_selected "Cancel">
 <!ENTITY myopac.holds.processing "Processing holds... This may take a moment.">
 <!ENTITY myopac.holds.actions 'Actions for selected holds'>
 <!ENTITY myopac.holds.cancel.confirm 'Are you sure you wish to cancel the selected holds?'>
-<!ENTITY myopac.holds.freeze.confirm 'Are you sure you wish to freeze the selected holds?
-Note that if an item has already been selected to fulfill the hold, it will not be frozen'>
-<!ENTITY myopac.holds.thaw.confirm 'Are you sure you wish to un-freeze the selected holds?'>
-<!ENTITY myopac.holds.thaw_date.confirm 'Are you sure you wish to change the un-freeze date for the selected holds?'>
-<!ENTITY myopac.holds.freeze.select_thaw "Select an 'Un-Freeze' date.  This is the date at which the holds will become active again.
-If no date is chosen, the holds will remain frozen until they are manually un-frozen.">
+<!ENTITY myopac.holds.freeze.confirm 'Are you sure you wish to suspend the selected holds?
+If an item has already been selected to fulfill the hold, it will not be suspended'>
+<!ENTITY myopac.holds.thaw.confirm 'Are you sure you wish to activate the selected holds?'>
+<!ENTITY myopac.holds.thaw_date.confirm 'Are you sure you wish to change the activate date for the selected holds?'>
+<!ENTITY myopac.holds.freeze.select_thaw "Select a 'Suspend' date.  This is the date at which the holds will become active again.  If no date is chosen, the holds will remain suspended until they are manually activated.">
 
-<!ENTITY opac.holds.freeze "Freeze this hold">
-<!ENTITY opac.holds.freeze.help "A 'frozen' will retain its place in the queue, but will not be fulfilled until it has been unfrozen.">
-<!ENTITY opac.holds.freeze.thaw_date "Automatically un-freeze hold on:">
+<!ENTITY opac.holds.freeze "Suspend this hold">
+<!ENTITY opac.holds.freeze.help "A suspended hold will retain its place in the queue, but will not be fulfilled until it has been activated.">
+<!ENTITY opac.holds.freeze.thaw_date "Automatically activate hold on:">
 <!ENTITY opac.holds.freeze.thaw_date.format "YYYY-MM-DD">
 
 <!--	================================================================= 
@@ -249,8 +248,8 @@
 <!ENTITY myopac.prefs.help "This setting defines how you will be notified of holds that are ready to be picked up from the library.
 By default, holds will use the notification style you choose here.  
 However, you will still have the option to change individual holds regardless of this setting.">
-<!ENTITY myopac.holds.unfrozen "Un-Frozen">
-<!ENTITY myopac.holds.frozen.until "Frozen Until">
+<!ENTITY myopac.holds.unfrozen "Active">
+<!ENTITY myopac.holds.frozen.until "Suspend Until...">
 
 <!--	================================================================= 
 	 MyOPAC Summary page

Modified: branches/rel_1_2/Open-ILS/web/opac/skin/default/js/myopac.js
===================================================================
--- branches/rel_1_2/Open-ILS/web/opac/skin/default/js/myopac.js	2008-03-04 20:37:23 UTC (rev 8861)
+++ branches/rel_1_2/Open-ILS/web/opac/skin/default/js/myopac.js	2008-03-04 20:39:11 UTC (rev 8862)
@@ -1334,7 +1334,7 @@
 }
 
 var myopacProcessedHolds = 0;
-var myopacTotalHoldsToProcess = 0;
+var myopacHoldsToProcess = 0;
 function myopacDoHoldAction() {
 
     var selectedRows = myopacSelectedHoldsRows();
@@ -1345,7 +1345,6 @@
     myopacProcessedHolds = 0;
 
     if(!confirmId('myopac.holds.'+action+'.confirm')) return;
-
     myopacSelectNoneHolds(); /* clear the selection */
 
 
@@ -1370,17 +1369,23 @@
                 break;
         }
     }
-    myopacTotalHoldsToProcess = holds.length;
-    if(myopacTotalHoldsToProcess == 0) return;
-    myopacShowHoldProcessing();
+    myopacHoldsToProcess = holds;
+    if(myopacHoldsToProcess.length == 0) return;
 
-    var thawDate = null;
-    var thawDateSet = false;
+    if(action == 'thaw_date' || action == 'freeze') 
+        myopacDrawHoldThawDateForm();
+    else
+    myopacProcessHolds(action);
+}
 
+
+function myopacProcessHolds(action, thawDate) {
+
+    myopacShowHoldProcessing();
     /* now we process them */
-    for(var i = 0; i < holds.length; i++) {
+    for(var i = 0; i < myopacHoldsToProcess.length; i++) {
 
-        hold = holds[i];
+        hold = myopacHoldsToProcess[i];
         
         var req;
         switch(action) { 
@@ -1396,23 +1401,12 @@
                 break;
 
             case 'thaw_date':
-                if(!thawDateSet)
-                    thawDate = prompt($('myopac.holds.freeze.select_thaw').innerHTML) || null;
-                thawDateSet = true;
-                hold.thaw_date(thawDate);
-                req = new Request(UPDATE_HOLD, G.user.session, hold);
-                break;
-
-
             case 'freeze':
-                if(!thawDateSet)
-                    thawDate = prompt($('myopac.holds.freeze.select_thaw').innerHTML);
-                thawDateSet = true;
                 hold.frozen('t');
-                if(thawDate) 
-                    hold.thaw_date(thawDate); 
+                hold.thaw_date(thawDate); 
                 req = new Request(UPDATE_HOLD, G.user.session, hold);
                 break;
+                //thawDate = prompt($('myopac.holds.freeze.select_thaw').innerHTML);
 
         }
 
@@ -1422,6 +1416,25 @@
     }
 }
 
+function myopacDrawHoldThawDateForm() {
+    hideMe($('myopac_holds_main_table'));
+    unHideMe($('myopac_holds_thaw_date_form'));
+    $('myopac_holds_thaw_date_input').focus();
+    Calendar.setup({
+        inputField  : "myopac_holds_thaw_date_input",
+        ifFormat    : "%Y-%m-%d",
+        button      : "myopac_holds_thaw_date_img",
+        align       : "Tl",
+        singleClick : true
+    });
+}
+
+function myopacApplyThawDate() {
+    var dateString = $('myopac_holds_thaw_date_input').value;
+    dateString = (dateString == null) ? null : Date.parseIso8601(dateString).iso8601Format('YMDHM', false, false, true);
+    myopacProcessHolds('freeze', dateString);
+}
+
 function myopacHoldIDFromRow(row) {
     return row.id.replace(/.*_(\d+)$/, '$1');
 }
@@ -1434,11 +1447,13 @@
 function myopacHideHoldProcessing() {
     hideMe($('myopac_holds_processing'));
     unHideMe($('myopac_holds_main_table'));
+    hideMe($('myopac_holds_thaw_date_form'));
 }
 
 function myopacBatchHoldCallback(r) {
-    r.getResultObject();
-    if(++myopacProcessedHolds >= myopacTotalHoldsToProcess) {
+    if(r) /* force load any exceptions */
+        r.getResultObject();
+    if(++myopacProcessedHolds >= myopacHoldsToProcess.length) {
         myopacHideHoldProcessing();
         holdCache = {};
         holdStatusCache = {};

Modified: branches/rel_1_2/Open-ILS/web/opac/skin/default/xml/common/holds.xml
===================================================================
--- branches/rel_1_2/Open-ILS/web/opac/skin/default/xml/common/holds.xml	2008-03-04 20:37:23 UTC (rev 8861)
+++ branches/rel_1_2/Open-ILS/web/opac/skin/default/xml/common/holds.xml	2008-03-04 20:39:11 UTC (rev 8862)
@@ -130,7 +130,7 @@
                 <tr>
                     <td class='holds_cell'>
                         &opac.holds.freeze;
-                        (<a class='classic_link' href='javascript:alert("&opac.holds.freeze.help;");'>&common.help;</a>)
+                        <a class='classic_link' href='javascript:alert("&opac.holds.freeze.help;");'>&common.help;</a>
                         </td>
                     <td class='holds_cell'>
                         <input type='checkbox' id='holds_frozen_chkbox' 

Modified: branches/rel_1_2/Open-ILS/web/opac/skin/default/xml/myopac/myopac_holds.xml
===================================================================
--- branches/rel_1_2/Open-ILS/web/opac/skin/default/xml/myopac/myopac_holds.xml	2008-03-04 20:37:23 UTC (rev 8861)
+++ branches/rel_1_2/Open-ILS/web/opac/skin/default/xml/myopac/myopac_holds.xml	2008-03-04 20:39:11 UTC (rev 8862)
@@ -26,6 +26,18 @@
         <tr><td>&myopac.holds.processing;</td></tr>
     </table>
 
+    <div id='myopac_holds_thaw_date_form' class='hide_me'>
+        <p>&myopac.holds.freeze.select_thaw;</p>
+        <p>
+            <input type='text' id='myopac_holds_thaw_date_input'/> 
+            <img src="<!--#echo var='OILS_OPAC_JS_HOST'-->/common/js/jscalendar/img.gif"  id='myopac_holds_thaw_date_img' class='cal_img'/>
+            (&opac.holds.freeze.thaw_date.format;)
+        </p>
+        <p>
+            <button onclick='myopacApplyThawDate();'>&common.submit;</button>
+        </p>
+    </div>
+
 	<table width='100%' class='light_border data_grid data_grid_center' id='myopac_holds_main_table'>
 
 		<thead class='color_3'>
@@ -78,8 +90,12 @@
 				</td>
 
                 <td>
+                    <!-- These characaters do not display in Internet Exploror, *sigh*
                     <span name='myopac_hold_unfrozen_false' class='x_mark'>&#x2717;</span>
                     <span name='myopac_hold_unfrozen_true' class='hide_me check_mark'>&#x2713;</span>
+                    -->
+                    <span name='myopac_hold_unfrozen_false' class='x_mark'>&common.no;</span>
+                    <span name='myopac_hold_unfrozen_true' class='hide_me check_mark'>&common.yes;</span>
                 </td>
 
                 <td name='myopac_holds_frozen_until'></td>



More information about the open-ils-commits mailing list