From 1d36c52cb3fd4f144b3346df9a70d8877322bad2 Mon Sep 17 00:00:00 2001 From: phasefx Date: Thu, 16 Mar 2006 21:44:05 +0000 Subject: [PATCH] indent and disable some menu options git-svn-id: svn://svn.open-ils.org/ILS/trunk@3382 dcc99617-32d9-48b4-a31d-7c20da2025e4 --- .../chrome/content/util/widgets.js | 14 ++++++++++++-- .../xul/staff_client/server/main/ws_info.xul | 18 ++++++++++++++++-- 2 files changed, 28 insertions(+), 4 deletions(-) diff --git a/Open-ILS/xul/staff_client/chrome/content/util/widgets.js b/Open-ILS/xul/staff_client/chrome/content/util/widgets.js index 39a674d26c..09c07a35f4 100644 --- a/Open-ILS/xul/staff_client/chrome/content/util/widgets.js +++ b/Open-ILS/xul/staff_client/chrome/content/util/widgets.js @@ -68,9 +68,19 @@ util.widgets.make_menulist = function( items, dvalue ) { var menulist = document.createElement('menulist'); var menupopup = document.createElement('menupopup'); menulist.appendChild(menupopup); for (var i = 0; i < items.length; i++) { + var label = items[i][0]; var value = items[i][1]; var disabled = items[i][2]; var indent = items[i][3]; + if (indent) { + for (var j = 0; j < Number(indent); j++) { + label = ' ' + label; + } + } var menuitem = document.createElement('menuitem'); menupopup.appendChild(menuitem); - menuitem.setAttribute('label',items[i][0]); - menuitem.setAttribute('value',items[i][1]); + menuitem.setAttribute('label',label); + menuitem.setAttribute('value',value); + if (disabled) { + menuitem.disabled = true; + menuitem.setAttribute('disabled','true'); + } } menulist.setAttribute('value',dvalue); return menulist; diff --git a/Open-ILS/xul/staff_client/server/main/ws_info.xul b/Open-ILS/xul/staff_client/server/main/ws_info.xul index 9d11e90fef..75266e64f9 100644 --- a/Open-ILS/xul/staff_client/server/main/ws_info.xul +++ b/Open-ILS/xul/staff_client/server/main/ws_info.xul @@ -52,6 +52,15 @@ JSAN.use('util.widgets'); JSAN.use('util.functional'); + g.aout_list = g.network.simple_request( + 'FM_AOUT_RETRIEVE', + [ ] + ); + g.aout_hash = {}; + for (var i = 0; i < g.aout_list.length; i++) { + g.aout_hash[ g.aout_list[i].id() ] = g.aout_list[i]; + } + g.my_libs = g.network.simple_request( 'FM_AOU_RETRIEVE_RELATED_VIA_SESSION', [ xulG.auth.session.key ] @@ -82,8 +91,13 @@ g.ml = util.widgets.make_menulist( util.functional.map_list( g.my_libs, - function(obj) { return [ obj.shortname(), obj.id() ]; } - ).sort(), + function(obj) { return [ + obj.shortname(), + obj.id(), + ( g.aout_hash[ obj.ou_type() ].can_have_users() == 0), + ( g.aout_hash[ obj.ou_type() ].depth() ), + ]; } + ), g.my_lib ); -- 2.43.2