[open-ils-commits] r15648 - in trunk/Open-ILS/web: js/ui/default/acq/po templates/default/acq/po (phasefx)

svn at svn.open-ils.org svn at svn.open-ils.org
Mon Mar 1 17:18:22 EST 2010


Author: phasefx
Date: 2010-03-01 17:18:16 -0500 (Mon, 01 Mar 2010)
New Revision: 15648

Modified:
   trunk/Open-ILS/web/js/ui/default/acq/po/events.js
   trunk/Open-ILS/web/templates/default/acq/po/events.tt2
Log:
In PO Events UI, change Target ID column into a Purchase Order column linking to the PO View.  Change deprecated dojo .getValue and .setValue to .attr in places

Modified: trunk/Open-ILS/web/js/ui/default/acq/po/events.js
===================================================================
--- trunk/Open-ILS/web/js/ui/default/acq/po/events.js	2010-03-01 20:01:42 UTC (rev 15647)
+++ trunk/Open-ILS/web/js/ui/default/acq/po/events.js	2010-03-01 22:18:16 UTC (rev 15648)
@@ -9,12 +9,14 @@
 var eventList;
 var eventStartDateRange;
 var eventEndDateRange;
+var po_map = {};
 
 function eventInit() {
     try {
         buildStateSelector();
         buildOrgSelector();
         buildDatePickers();
+        eventGrid.resetStore();
         buildEventGrid();
 
         eventGrid.cancelSelected = function() { doSelected('open-ils.acq.purchase_order.event.cancel.batch') };
@@ -33,22 +35,22 @@
     var today = new Date(); 
     var yesterday = new Date( today.getFullYear(), today.getMonth(), today.getDate() - 1);
     eventStartDatePicker.constraints.max = today;
-    eventStartDatePicker.setValue( yesterday );
-    eventStartDateRange = eventStartDatePicker.getValue();
+    eventStartDatePicker.attr( 'value', yesterday );
+    eventStartDateRange = eventStartDatePicker.attr('value');
     eventEndDatePicker.constraints.max = today;
-    eventEndDatePicker.setValue( today );
-    eventEndDateRange = eventEndDatePicker.getValue();
+    eventEndDatePicker.attr( 'value', today );
+    eventEndDateRange = eventEndDatePicker.attr('value');
     dojo.connect(
         eventStartDatePicker,
         'onChange',
         function() {
             var new_date = arguments[0];
-            if (new_date > eventEndDatePicker.getValue()) {
-                var swap = eventEndDatePicker.getValue();
-                eventEndDatePicker.setValue( new_date );
-                this.setValue( swap );
+            if (new_date > eventEndDatePicker.attr('value')) {
+                var swap = eventEndDatePicker.attr('value');
+                eventEndDatePicker.attr( 'value', new_date );
+                this.attr( 'value', swap );
             }
-            eventStartDateRange = this.getValue();
+            eventStartDateRange = this.attr('value');
         }
     );
     dojo.connect(
@@ -56,12 +58,12 @@
         'onChange',
         function() {
             var new_date = arguments[0];
-            if (new_date < eventStartDatePicker.getValue()) {
-                var swap = eventStartDatePicker.getValue();
-                eventStartDatePicker.setValue( new_date );
-                this.setValue( swap );
+            if (new_date < eventStartDatePicker.attr('value')) {
+                var swap = eventStartDatePicker.attr('value');
+                eventStartDatePicker.attr( 'value', new_date );
+                this.attr( 'value', swap );
             }
-            eventEndDateRange = this.getValue();
+            eventEndDateRange = this.attr('value');
         }
     );
 
@@ -81,13 +83,13 @@
                 ]
             }
         });
-        eventStateSelect.setValue('pending');
+        eventStateSelect.attr( 'value','pending' );
         dojo.connect(
             eventStateSelect, 
             'onChange',
             function() {
                 try {
-                     eventState = this.getValue();
+                     eventState = this.attr('value');
                 } catch(E) {
                     //dump('Error in acq/events.js, eventInit, connect, onChange: ' + E);
                     throw(E);
@@ -110,7 +112,7 @@
                     'onChange',
                     function() {
                         try {
-                             eventContextOrg = this.getValue();
+                             eventContextOrg = this.attr('value');
                         } catch(E) {
                             //dump('Error in acq/events.js, eventInit, connect, onChange: ' + E);
                             throw(E);
@@ -196,6 +198,7 @@
             ]
         }
     }
+    po_map = {};
     fieldmapper.standardRequest(
         ['open-ils.acq', 'open-ils.acq.purchase_order.events.ordering_agency'],
         {   async: true,
@@ -203,6 +206,8 @@
             onresponse: function(r) {
                 try {
                     if(eventObject = openils.Util.readResponse(r)) {
+                        po_map[ eventObject.target().id() ] = eventObject.target();
+                        eventObject.target( eventObject.target().id() );
                         eventGrid.store.newItem(atev.toStoreItem(eventObject));
                     }
                 } catch(E) {
@@ -214,6 +219,13 @@
     );
 }
 
+function format_po_link(value) {
+    if (value) {
+        // FIXME -- how do you escape the value from .name() ?
+        return '<a href="/eg/acq/po/view/' + value + '">' + po_map[ value ].name() + '</a>';
+    }
+}
+
 openils.Util.addOnLoad(eventInit);
 
 

Modified: trunk/Open-ILS/web/templates/default/acq/po/events.tt2
===================================================================
--- trunk/Open-ILS/web/templates/default/acq/po/events.tt2	2010-03-01 20:01:42 UTC (rev 15647)
+++ trunk/Open-ILS/web/templates/default/acq/po/events.tt2	2010-03-01 22:18:16 UTC (rev 15648)
@@ -51,6 +51,11 @@
                 suppressFields="['update_process','user_data','template_output','error_output','async_output','event_def']"
                 defaultCellWidth="'auto'"
                 editOnEnter="false">
+            <thead>
+                <tr>
+                    <th field="target" formatter="format_po_link">Purchase Order</th>
+                </tr>
+            </thead>
         </table>
     </div>
 </div>



More information about the open-ils-commits mailing list