reproduce some summary information directly under pertinent patron nav buttons. ...
authorphasefx <phasefx@dcc99617-32d9-48b4-a31d-7c20da2025e4>
Thu, 19 Feb 2009 06:37:48 +0000 (06:37 +0000)
committerphasefx <phasefx@dcc99617-32d9-48b4-a31d-7c20da2025e4>
Thu, 19 Feb 2009 06:37:48 +0000 (06:37 +0000)
git-svn-id: svn://svn.open-ils.org/ILS/branches/staff-client-experiment@12230 dcc99617-32d9-48b4-a31d-7c20da2025e4

Open-ILS/web/opac/locale/en-US/lang.dtd
Open-ILS/xul/staff_client/server/patron/display.js
Open-ILS/xul/staff_client/server/patron/display_overlay.xul
Open-ILS/xul/staff_client/server/patron/summary.js

index 6332296..78c9492 100644 (file)
 <!ENTITY staff.patron_navbar.edit.accesskey 'E'>
 <!ENTITY staff.patron_navbar.holds 'Holds'>
 <!ENTITY staff.patron_navbar.holds.accesskey 'H'>
-<!ENTITY staff.patron_navbar.info 'Info'>
+<!ENTITY staff.patron_navbar.info 'Display Info'>
 <!ENTITY staff.patron_navbar.info.accesskey 'o'>
+<!ENTITY staff.patron_navbar.other 'Other'>
+<!ENTITY staff.patron_navbar.other.accesskey 'o'>
 <!ENTITY staff.patron_navbar.items 'Items Out'>
 <!ENTITY staff.patron_navbar.items.accesskey 'I'>
 <!ENTITY staff.patron_navbar.items.problem_items.caption 'Lost, Claimed Returned, Long Overdue, Has Unpaid Billings'>
index 45bc831..a229182 100644 (file)
@@ -441,6 +441,7 @@ patron.display.prototype = {
                                urls.XUL_PATRON_SUMMARY,
                                {},
                                {
+                    'display_window' : window,
                                        'barcode' : obj.barcode,
                                        'id' : obj.id,
                     'refresh' : function() { obj.refresh_all(); },
index 2e9665d..276e49d 100644 (file)
             <spacer flex="1"/>
             <arrowscrollbox id="PatronNavBarScrollbox" orient="horizontal" flex="1">
                 <spacer flex="1"/>
-                <button id="PatronNavBar_refresh" command="cmd_patron_refresh" class="nav"
-                    label="&staff.patron_navbar.refresh;" accesskey="&staff.patron_navbar.refresh.accesskey;"/>
-                <button id="PatronNavBar_checkout" command="cmd_patron_checkout" class="nav"
-                    label="&staff.patron_navbar.checkout;" accesskey="&staff.patron_navbar.checkout.accesskey;"/>
-                <button id="PatronNavBar_items" command="cmd_patron_items" class="nav"
-                    label="&staff.patron_navbar.items;" accesskey="&staff.patron_navbar.items.accesskey;"/>
-                <button id="PatronNavBar_holds" command="cmd_patron_holds" class="nav"
-                    label="&staff.patron_navbar.holds;" accesskey="&staff.patron_navbar.holds.accesskey;"/>
-                <button id="PatronNavBar_bills" command="cmd_patron_bills" class="nav"
-                    label="&staff.patron_navbar.bills;" accesskey="&staff.patron_navbar.bills.accesskey;"/>
-                <button id="PatronNavBar_edit" command="cmd_patron_edit" class="nav"
-                    label="&staff.patron_navbar.edit;" accesskey="&staff.patron_navbar.edit.accesskey;"/>
-                <button id="PatronNavBar_info" command="cmd_patron_info" class="nav"
-                    label="&staff.patron_navbar.info;" accesskey="&staff.patron_navbar.info.accesskey;"/>
-                <button id="PatronNavBar_exit" command="cmd_patron_exit" class="nav"
-                    label="&staff.patron.display_overlay.exit.label;" accesskey="&staff.patron.display_overlay.exit.accesskey;"/>
+                <grid>
+                    <columns>
+                        <column/>
+                        <column/>
+                        <column/>
+                        <column/>
+                        <column/>
+                        <column/>
+                        <column/>
+                        <column/>
+                    </columns>
+                    <rows>
+                        <row>
+                            <button id="PatronNavBar_refresh" command="cmd_patron_refresh" class="nav"
+                                label="&staff.patron_navbar.refresh;" accesskey="&staff.patron_navbar.refresh.accesskey;"/>
+                            <button id="PatronNavBar_checkout" command="cmd_patron_checkout" class="nav"
+                                label="&staff.patron_navbar.checkout;" accesskey="&staff.patron_navbar.checkout.accesskey;"/>
+                            <button id="PatronNavBar_items" command="cmd_patron_items" class="nav"
+                                label="&staff.patron_navbar.items;" accesskey="&staff.patron_navbar.items.accesskey;"/>
+                            <button id="PatronNavBar_holds" command="cmd_patron_holds" class="nav"
+                                label="&staff.patron_navbar.holds;" accesskey="&staff.patron_navbar.holds.accesskey;"/>
+                            <button id="PatronNavBar_bills" command="cmd_patron_bills" class="nav"
+                                label="&staff.patron_navbar.bills;" accesskey="&staff.patron_navbar.bills.accesskey;"/>
+                            <button id="PatronNavBar_edit" command="cmd_patron_edit" class="nav"
+                                label="&staff.patron_navbar.edit;" accesskey="&staff.patron_navbar.edit.accesskey;"/>
+                            <button id="PatronNavBar_info" class="nav" label="&staff.patron_navbar.other;" accesskey="&staff.patron_navbar.other.accesskey;" type="menu">
+                                <menupopup>
+                                    <menuitem label="&staff.patron_navbar.info;" accesskey="&staff.patron_navbar.info.accesskey;" command="cmd_patron_info"/>
+                                    <menuitem label="&staff.patron_display.verify_password.label;" accesskey="&staff.patron_display.verify_password.accesskey;" command="cmd_verify_credentials"/>
+                                    <menuitem label="&staff.main.menu.admin.user_edit.label;" accesskey="&staff.main.menu.admin.user_edit.accesskey;" command="cmd_perm_editor"/>
+                                    <menuitem label="&staff.patron_navbar.actions.menu.standing_penalties.label;" accesskey="&staff.patron_navbar.actions.menu.standing_penalties.accesskey;" 
+                                        command="cmd_standing_penalties"/>
+                                </menupopup>
+                            </button>
+                            <button id="PatronNavBar_exit" command="cmd_patron_exit" class="nav"
+                                label="&staff.patron.display_overlay.exit.label;" accesskey="&staff.patron.display_overlay.exit.accesskey;"/>
+                        </row>
+                        <row>
+                            <label id="under_refresh"/>
+                            <label id="under_checkout"/>
+                            <label id="under_items"/>
+                            <label id="under_holds"/>
+                            <label id="under_bills"/>
+                            <label id="under_edit"/>
+                            <label id="under_info"/>
+                            <label id="under_edit"/>
+                        </row>
+                    </rows>
+                </grid>
             </arrowscrollbox>
         </hbox>
-        <hbox>
-            <spacer flex="1"/>
-            <menubar>
-                <menu label="&staff.patron_navbar.actions.menu.label;" accesskey="&staff.patron_navbar.actions.menu.accesskey;">
-                    <menupopup>
-                        <menuitem label="&staff.patron_display.verify_password.label;" accesskey="&staff.patron_display.verify_password.accesskey;" command="cmd_verify_credentials"/>
-                        <menuitem label="&staff.main.menu.admin.user_edit.label;" accesskey="&staff.main.menu.admin.user_edit.accesskey;" command="cmd_perm_editor"/>
-                        <menuitem label="&staff.patron_navbar.actions.menu.standing_penalties.label;" accesskey="&staff.patron_navbar.actions.menu.standing_penalties.accesskey;" 
-                            command="cmd_standing_penalties"/>
-                    </menupopup>
-                </menu>
-            </menubar>
-        </hbox>
     </vbox>
 </hbox>
 
index 04f33d7..7f84681 100644 (file)
@@ -188,6 +188,13 @@ patron.summary.prototype = {
                                                function(e) {
                                                        return function() { 
                                                                e.setAttribute('value','...');
+                                var under_btn; 
+                                if (xulG) {
+                                    if (xulG.display_window) {
+                                        under_btn = xulG.display_window.document.getElementById('under_bills');
+                                        if (under_btn) under_btn.setAttribute('value','...');
+                                    }
+                                }
                                                                obj.network.simple_request(
                                                                        'FM_MOUS_RETRIEVE.authoritative',
                                                                        [ ses(), obj.patron.id() ],
@@ -195,6 +202,8 @@ patron.summary.prototype = {
                                                                                JSAN.use('util.money');
                                                                                var robj = req.getResultObject();
                                                                                e.setAttribute('value', patronStrings.getFormattedString('staff.patron.summary.patron_bill.money', [util.money.sanitize( robj.balance_owed() )]));
+                                                                               if (under_btn) under_btn.setAttribute('value', 
+                                            patronStrings.getFormattedString('staff.patron.summary.patron_bill.money', [util.money.sanitize( robj.balance_owed() )]));
                                                                        }
                                                                );
                                                                /*
@@ -232,6 +241,13 @@ patron.summary.prototype = {
                                                                var e4 = document.getElementById( 'patron_long_overdue' ); if (e4) e4.setAttribute('value','...');
                                                                var e5 = document.getElementById( 'patron_lost' ); if (e5) e5.setAttribute('value','...');
                                                                var e6 = document.getElementById( 'patron_noncat' ); if (e6) e6.setAttribute('value','...');
+                                var under_btn; 
+                                if (xulG) {
+                                    if (xulG.display_window) {
+                                        under_btn = xulG.display_window.document.getElementById('under_items');
+                                        if (under_btn) under_btn.setAttribute('value','...');
+                                    }
+                                }
                                                                obj.network.simple_request(
                                                                        'FM_CIRC_COUNT_RETRIEVE_VIA_USER.authoritative',
                                                                        [ ses(), obj.patron.id() ],
@@ -243,6 +259,10 @@ patron.summary.prototype = {
                                                                                        if (e3) e3.setAttribute('value', robj.claims_returned   );
                                                                                        if (e4) e4.setAttribute('value', robj.long_overdue      );
                                                                                        if (e5) e5.setAttribute('value', robj.lost      );
+                                            if (under_btn) under_btn.setAttribute('value', 
+                                                String( robj.out + robj.overdue + robj.claims_returned + robj.long_overdue) + 
+                                                ( robj.overdue > 0 || robj.claims_returned > 0 || robj.long_overdue > 0 ? '*' : '' )
+                                            );
                                                                                } catch(E) {
                                                                                        alert(E);
                                                                                }
@@ -274,6 +294,13 @@ patron.summary.prototype = {
                                                                e.setAttribute('value','...');
                                                                var e2 = document.getElementById('patron_holds_available');
                                                                if (e2) e2.setAttribute('value','...');
+                                var under_btn; 
+                                if (xulG) {
+                                    if (xulG.display_window) {
+                                        under_btn = xulG.display_window.document.getElementById('under_holds');
+                                        if (under_btn) under_btn.setAttribute('value','...');
+                                    }
+                                }
                                                                obj.network.simple_request(
                                                                        'FM_AHR_COUNT_RETRIEVE.authoritative',
                                                                        [ ses(), obj.patron.id() ],
@@ -284,6 +311,7 @@ patron.summary.prototype = {
                                                                                if (e2) e2.setAttribute('value',
                                                                                        req.getResultObject().ready
                                                                                );
+                                        if (under_btn) under_btn.setAttribute( 'value', req.getResultObject().ready + '/' + req.getResultObject().total );
                                                                        }
                                                                );
                                                        };