[open-ils-commits] r14391 - in trunk/Open-ILS/xul/staff_client: chrome/content/util server/circ server/patron server/skin (phasefx)

svn at svn.open-ils.org svn at svn.open-ils.org
Tue Oct 13 01:23:49 EDT 2009


Author: phasefx
Date: 2009-10-13 01:23:45 -0400 (Tue, 13 Oct 2009)
New Revision: 14391

Modified:
   trunk/Open-ILS/xul/staff_client/chrome/content/util/list.js
   trunk/Open-ILS/xul/staff_client/server/circ/util.js
   trunk/Open-ILS/xul/staff_client/server/patron/util.js
   trunk/Open-ILS/xul/staff_client/server/skin/global.css
Log:
Support editable trees, which is needed if we want a usable checkbox column in a tree.
And, support checkbox columns in trees.

An example:

<tree id="my_list" editable="true" />

JSAN.use('util.list');
var list = new util.list('my_list');
list.init( {
	'columns' : [
		{
			'id' : 'select',
			'type' : 'checkbox',
			'editable' : true,
			'label' : '',
			'render' : function(my) { return true; } // Checked by default
                }
	]
} );

But once a tree is editable, all tree cells are editable unless explicitly made otherwise, so you need 'editable' : false in the column definitions for such trees if you don't want cells in those columns to be editable.

Modified: trunk/Open-ILS/xul/staff_client/chrome/content/util/list.js
===================================================================
--- trunk/Open-ILS/xul/staff_client/chrome/content/util/list.js	2009-10-13 05:23:44 UTC (rev 14390)
+++ trunk/Open-ILS/xul/staff_client/chrome/content/util/list.js	2009-10-13 05:23:45 UTC (rev 14391)
@@ -875,6 +875,7 @@
 
 			for (var i = 0; i < this.columns.length; i++) {
 				var treecell = document.createElement('treecell');
+                if ( this.columns[i].editable == false ) { treecell.setAttribute('editable','false'); }
 				var label = '';
 				if (params.skip_columns && (params.skip_columns.indexOf(i) != -1)) {
 					treecell.setAttribute('label',label);
@@ -898,7 +899,7 @@
 					label = this.map_row_to_column(params.row,this.columns[i]);
 	
 				}
-				treecell.setAttribute('label',label ? label : '');
+				if (this.columns[i].type == 'checkbox') { treecell.setAttribute('value',label); } else { treecell.setAttribute('label',label ? label : ''); }
 				treerow.appendChild( treecell );
 				s += ('treecell = ' + treecell + ' with label = ' + label + '\n');
 			}
@@ -917,7 +918,12 @@
 			}
 			for (var i = 0; i < labels.length; i++) {
 				var treecell = document.createElement('treecell');
-				treecell.setAttribute('label',typeof labels[i] == 'string' || typeof labels[i] == 'number' ? labels[i] : '');
+                if ( this.columns[i].editable == false ) { treecell.setAttribute('editable','false'); }
+                if ( this.columns[i].type == 'checkbox') {
+                    treecell.setAttribute('value', labels[i]);
+                } else {
+				    treecell.setAttribute('label',typeof labels[i] == 'string' || typeof labels[i] == 'number' ? labels[i] : '');
+                }
 				treerow.appendChild( treecell );
 				s += ('treecell = ' + treecell + ' with label = ' + labels[i] + '\n');
 			}

Modified: trunk/Open-ILS/xul/staff_client/server/circ/util.js
===================================================================
--- trunk/Open-ILS/xul/staff_client/server/circ/util.js	2009-10-13 05:23:44 UTC (rev 14390)
+++ trunk/Open-ILS/xul/staff_client/server/circ/util.js	2009-10-13 05:23:45 UTC (rev 14391)
@@ -166,7 +166,7 @@
 			'flex' : 1,
 			'primary' : false,
 			'hidden' : true,
-			'render' : function(my) { return my.timestamp; }
+			'editable' : false, 'render' : function(my) { return my.timestamp; }
 		},
 		{
 			'id' : 'checkout_time',
@@ -174,7 +174,7 @@
 			'flex' : 1,
 			'primary' : false,
 			'hidden' : true,
-			'render' : function(my) { return my.checkout_time; }
+			'editable' : false, 'render' : function(my) { return my.checkout_time; }
 		},
 		{
 			'id' : 'type',
@@ -182,7 +182,7 @@
 			'flex' : 1,
 			'primary' : false,
 			'hidden' : true,
-			'render' : function(my) { return my.type; }
+			'editable' : false, 'render' : function(my) { return my.type; }
 		},
 		{
 			'id' : 'noncat',
@@ -190,7 +190,7 @@
 			'flex' : 1,
 			'primary' : false,
 			'hidden' : true,
-			'render' : function(my) { return my.noncat; }
+			'editable' : false, 'render' : function(my) { return my.noncat; }
 		},
 		{
 			'id' : 'noncat_type',
@@ -198,7 +198,7 @@
 			'flex' : 1,
 			'primary' : false,
 			'hidden' : true,
-			'render' : function(my) { return my.noncat_type; }
+			'editable' : false, 'render' : function(my) { return my.noncat_type; }
 		},
 		{
 			'id' : 'noncat_count',
@@ -207,7 +207,7 @@
 			'flex' : 1,
 			'primary' : false,
 			'hidden' : false,
-			'render' : function(my) { return my.noncat_count; }
+			'editable' : false, 'render' : function(my) { return my.noncat_count; }
 		},
 		{
 			'id' : 'patron_barcode',
@@ -215,7 +215,7 @@
 			'flex' : 1,
 			'primary' : false,
 			'hidden' : true,
-			'render' : function(my) { return my.patron_barcode; }
+			'editable' : false, 'render' : function(my) { return my.patron_barcode; }
 		},
 		{
 			'id' : 'barcode',
@@ -223,7 +223,7 @@
 			'flex' : 2,
 			'primary' : true,
 			'hidden' : false,
-			'render' : function(my) { return my.barcode; }
+			'editable' : false, 'render' : function(my) { return my.barcode; }
 		},
 		{
 			'id' : 'due_date',
@@ -231,7 +231,7 @@
 			'flex' : 1,
 			'primary' : false,
 			'hidden' : false,
-			'render' : function(my) { return my.due_date; }
+			'editable' : false, 'render' : function(my) { return my.due_date; }
 		},
 		{
 			'id' : 'due_time',
@@ -239,7 +239,7 @@
 			'flex' : 1,
 			'primary' : false,
 			'hidden' : false,
-			'render' : function(my) { return my.due_time; }
+			'editable' : false, 'render' : function(my) { return my.due_time; }
 		}
 
 	];
@@ -283,7 +283,7 @@
 			'flex' : 1,
 			'primary' : false,
 			'hidden' : true,
-			'render' : function(my) { return my.timestamp; }
+			'editable' : false, 'render' : function(my) { return my.timestamp; }
 		},
 		{
 			'id' : 'backdate',
@@ -291,7 +291,7 @@
 			'flex' : 1,
 			'primary' : false,
 			'hidden' : true,
-			'render' : function(my) { return my.backdate; }
+			'editable' : false, 'render' : function(my) { return my.backdate; }
 		},
 		{
 			'id' : 'type',
@@ -299,7 +299,7 @@
 			'flex' : 1,
 			'primary' : false,
 			'hidden' : true,
-			'render' : function(my) { return my.type; }
+			'editable' : false, 'render' : function(my) { return my.type; }
 		},
 		{
 			'id' : 'barcode',
@@ -307,7 +307,7 @@
 			'flex' : 2,
 			'primary' : true,
 			'hidden' : false,
-			'render' : function(my) { return my.barcode; }
+			'editable' : false, 'render' : function(my) { return my.barcode; }
 		}
 	];
 	if (modify) for (var i = 0; i < c.length; i++) {
@@ -350,7 +350,7 @@
 			'flex' : 1,
 			'primary' : false,
 			'hidden' : true,
-			'render' : function(my) { return my.timestamp; }
+			'editable' : false, 'render' : function(my) { return my.timestamp; }
 		},
 		{
 			'id' : 'checkout_time',
@@ -358,7 +358,7 @@
 			'flex' : 1,
 			'primary' : false,
 			'hidden' : true,
-			'render' : function(my) { return my.checkout_time; }
+			'editable' : false, 'render' : function(my) { return my.checkout_time; }
 		},
 		{
 			'id' : 'type',
@@ -366,7 +366,7 @@
 			'flex' : 1,
 			'primary' : false,
 			'hidden' : true,
-			'render' : function(my) { return my.type; }
+			'editable' : false, 'render' : function(my) { return my.type; }
 		},
 		{
 			'id' : 'patron_barcode',
@@ -374,7 +374,7 @@
 			'flex' : 1,
 			'primary' : false,
 			'hidden' : true,
-			'render' : function(my) { return my.patron_barcode; }
+			'editable' : false, 'render' : function(my) { return my.patron_barcode; }
 		},
 		{
 			'id' : 'barcode',
@@ -382,7 +382,7 @@
 			'flex' : 2,
 			'primary' : true,
 			'hidden' : false,
-			'render' : function(my) { return my.barcode; }
+			'editable' : false, 'render' : function(my) { return my.barcode; }
 		},
 		{
 			'id' : 'due_date',
@@ -390,7 +390,7 @@
 			'flex' : 1,
 			'primary' : false,
 			'hidden' : false,
-			'render' : function(my) { return my.due_date; }
+			'editable' : false, 'render' : function(my) { return my.due_date; }
 		},
 		{
 			'id' : 'due_time',
@@ -398,7 +398,7 @@
 			'flex' : 1,
 			'primary' : false,
 			'hidden' : false,
-			'render' : function(my) { return my.due_time; }
+			'editable' : false, 'render' : function(my) { return my.due_time; }
 		}
 	];
 	if (modify) for (var i = 0; i < c.length; i++) {
@@ -441,7 +441,7 @@
 			'flex' : 1,
 			'primary' : false,
 			'hidden' : true,
-			'render' : function(my) { return my.timestamp; }
+			'editable' : false, 'render' : function(my) { return my.timestamp; }
 		},
 		{
 			'id' : 'use_time',
@@ -449,7 +449,7 @@
 			'flex' : 1,
 			'primary' : false,
 			'hidden' : true,
-			'render' : function(my) { return my.use_time; }
+			'editable' : false, 'render' : function(my) { return my.use_time; }
 		},
 		{
 			'id' : 'type',
@@ -457,7 +457,7 @@
 			'flex' : 1,
 			'primary' : false,
 			'hidden' : true,
-			'render' : function(my) { return my.type; }
+			'editable' : false, 'render' : function(my) { return my.type; }
 		},
 		{
 			'id' : 'count',
@@ -466,7 +466,7 @@
 			'flex' : 1,
 			'primary' : false,
 			'hidden' : false,
-			'render' : function(my) { return my.count; }
+			'editable' : false, 'render' : function(my) { return my.count; }
 		},
 		{
 			'id' : 'barcode',
@@ -474,7 +474,7 @@
 			'flex' : 2,
 			'primary' : true,
 			'hidden' : false,
-			'render' : function(my) { return my.barcode; }
+			'editable' : false, 'render' : function(my) { return my.barcode; }
 		}
 	];
 	if (modify) for (var i = 0; i < c.length; i++) {
@@ -522,7 +522,7 @@
 			'flex' : 1,
 			'primary' : false,
 			'hidden' : true,
-			'render' : function(my) { return my.acp.id(); },
+			'editable' : false, 'render' : function(my) { return my.acp.id(); },
 			'persist' : 'hidden width ordinal'
 		},
 		{
@@ -532,7 +532,7 @@
 			'flex' : 1,
 			'primary' : false,
 			'hidden' : true,
-			'render' : function(my) { return my.circ ? my.circ.id() : ( my.acp.circulations() ? my.acp.circulations()[0].id() : ""); },
+			'editable' : false, 'render' : function(my) { return my.circ ? my.circ.id() : ( my.acp.circulations() ? my.acp.circulations()[0].id() : ""); },
 			'persist' : 'hidden width ordinal'
 		},
 		{
@@ -542,7 +542,7 @@
 			'flex' : 1,
 			'primary' : false,
 			'hidden' : true,
-			'render' : function(my) { return my.mvr.doc_id(); },
+			'editable' : false, 'render' : function(my) { return my.mvr.doc_id(); },
 			'persist' : 'hidden width ordinal'
 		},
         {
@@ -552,7 +552,7 @@
 			'flex' : 1,
 			'primary' : false,
 			'hidden' : true,
-			'render' : function(my) { return my.service; }
+			'editable' : false, 'render' : function(my) { return my.service; }
         },
 		{
 			'id' : 'barcode',
@@ -561,7 +561,7 @@
 			'flex' : 1,
 			'primary' : false,
 			'hidden' : true,
-			'render' : function(my) { return my.acp.barcode(); },
+			'editable' : false, 'render' : function(my) { return my.acp.barcode(); },
 			'persist' : 'hidden width ordinal'
 		},
 		{
@@ -571,7 +571,7 @@
 			'flex' : 1,
 			'primary' : false,
 			'hidden' : true,
-			'render' : function(my) {
+			'editable' : false, 'render' : function(my) {
 				if (my.acp && my.acp.call_number() == -1) {
 					return document.getElementById('circStrings').getString('staff.circ.utils.not_cataloged');
 				} else if (my.acp && my.acp.call_number() == -2) {
@@ -598,7 +598,7 @@
 			'flex' : 1,
 			'primary' : false,
 			'hidden' : true,
-			'render' : function(my) {
+			'editable' : false, 'render' : function(my) {
 				if (Number(my.acn.owning_lib())>=0) {
 					return data.hash.aou[ my.acn.owning_lib() ].shortname();
 				} else {
@@ -615,7 +615,7 @@
 			'sort_type' : 'number',
 			'primary' : false,
 			'hidden' : true,
-			'render' : function(my) { return my.acp.copy_number(); },
+			'editable' : false, 'render' : function(my) { return my.acp.copy_number(); },
 			'persist' : 'hidden width ordinal'
 		},
 		{
@@ -625,7 +625,7 @@
 			'flex' : 1,
 			'primary' : false,
 			'hidden' : true,
-			'render' : function(my) {
+			'editable' : false, 'render' : function(my) {
 				if (Number(my.acp.location())>=0) {
 					return data.lookup("acpl", my.acp.location() ).name();
 				} else {
@@ -641,7 +641,7 @@
 			'flex' : 1,
 			'primary' : false,
 			'hidden' : true,
-			'render' : function(my) {
+			'editable' : false, 'render' : function(my) {
 				switch(Number(my.acp.loan_duration())) {
 					case 1:
 						return document.getElementById('circStrings').getString('staff.circ.utils.loan_duration.short');
@@ -663,7 +663,7 @@
 			'flex' : 1,
 			'primary' : false,
 			'hidden' : true,
-			'render' : function(my) {
+			'editable' : false, 'render' : function(my) {
 				if (Number(my.acp.circ_lib())>=0) {
 					return data.hash.aou[ my.acp.circ_lib() ].shortname();
 				} else {
@@ -679,7 +679,7 @@
 			'flex' : 1,
 			'primary' : false,
 			'hidden' : true,
-			'render' : function(my) {
+			'editable' : false, 'render' : function(my) {
 				switch(Number(my.acp.fine_level())) {
 					case 1:
 						return document.getElementById('circStrings').getString('staff.circ.utils.fine_level.low');
@@ -701,7 +701,7 @@
 			'flex' : 1,
 			'primary' : false,
 			'hidden' : true,
-			'render' : function(my) {
+			'editable' : false, 'render' : function(my) {
 				if (get_bool( my.acp.circulate() )) {
 					return document.getElementById('circStrings').getString('staff.circ.utils.yes');
 				} else {
@@ -717,7 +717,7 @@
 			'flex' : 1,
 			'primary' : false,
 			'hidden' : true,
-			'render' : function(my) {
+			'editable' : false, 'render' : function(my) {
 				if (get_bool( my.acp.deleted() )) {
 					return document.getElementById('circStrings').getString('staff.circ.utils.yes');
 				} else {
@@ -733,7 +733,7 @@
 			'flex' : 1,
 			'primary' : false,
 			'hidden' : true,
-			'render' : function(my) {
+			'editable' : false, 'render' : function(my) {
 				if (get_bool( my.acp.holdable() )) {
 					return document.getElementById('circStrings').getString('staff.circ.utils.yes');
 				} else {
@@ -749,7 +749,7 @@
 			'flex' : 1,
 			'primary' : false,
 			'hidden' : true,
-			'render' : function(my) {
+			'editable' : false, 'render' : function(my) {
 				if (get_bool( my.acp.opac_visible() )) {
 					return document.getElementById('circStrings').getString('staff.circ.utils.yes');
 				} else {
@@ -766,7 +766,7 @@
 			'flex' : 1,
 			'primary' : false,
 			'hidden' : true,
-			'render' : function(my) {
+			'editable' : false, 'render' : function(my) {
 				if (get_bool( my.acp.ref() )) {
 					return document.getElementById('circStrings').getString('staff.circ.utils.yes');
 				} else {
@@ -782,7 +782,7 @@
 			'flex' : 1,
 			'primary' : false,
 			'hidden' : true,
-			'render' : function(my) {
+			'editable' : false, 'render' : function(my) {
 				if (get_bool( my.acp.deposit() )) {
 					return document.getElementById('circStrings').getString('staff.circ.utils.yes');
 				} else {
@@ -798,7 +798,7 @@
 			'flex' : 1,
 			'primary' : false,
 			'hidden' : true,
-			'render' : function(my) {
+			'editable' : false, 'render' : function(my) {
 				if (my.acp.price() == null) {
 					return document.getElementById('circStrings').getString('staff.circ.utils.unset');
 				} else {
@@ -815,7 +815,7 @@
 			'flex' : 1,
 			'primary' : false,
 			'hidden' : true,
-			'render' : function(my) {
+			'editable' : false, 'render' : function(my) {
 				if (my.acp.price() == null) {
 					return document.getElementById('circStrings').getString('staff.circ.utils.unset');
 				} else {
@@ -832,7 +832,7 @@
 			'flex' : 1,
 			'primary' : false,
 			'hidden' : true,
-			'render' : function(my) { return my.acp.circ_as_type(); }
+			'editable' : false, 'render' : function(my) { return my.acp.circ_as_type(); }
 		},
 		{
 			'persist' : 'hidden width ordinal',
@@ -842,7 +842,7 @@
 			'flex' : 1,
 			'primary' : false,
 			'hidden' : true,
-			'render' : function(my) { return my.acp.circ_modifier(); }
+			'editable' : false, 'render' : function(my) { return my.acp.circ_modifier(); }
 		},
 		{
 			'persist' : 'hidden width ordinal',
@@ -852,7 +852,7 @@
 			'flex' : 1,
 			'primary' : false,
 			'hidden' : true,
-			'render' : function(my) {
+			'editable' : false, 'render' : function(my) {
 				if (my.circ) {
 					return data.hash.aou[ my.circ.circ_lib() ].shortname();
 				} else {
@@ -872,7 +872,7 @@
 			'flex' : 1,
 			'primary' : false,
 			'hidden' : true,
-			'render' : function(my) {
+			'editable' : false, 'render' : function(my) {
 				if (my.circ) {
 					return my.circ.xact_start();
 				} else {
@@ -893,7 +893,7 @@
 			'flex' : 1,
 			'primary' : false,
 			'hidden' : true,
-			'render' : function(my) {
+			'editable' : false, 'render' : function(my) {
 				if (my.circ) {
 					return my.circ.checkin_time();
 				} else {
@@ -913,7 +913,7 @@
 			'flex' : 1,
 			'primary' : false,
 			'hidden' : true,
-			'render' : function(my) {
+			'editable' : false, 'render' : function(my) {
 				if (my.circ) {
 					return my.circ.xact_start().substr(0,10);
 				} else {
@@ -933,7 +933,7 @@
 			'flex' : 1,
 			'primary' : false,
 			'hidden' : true,
-			'render' : function(my) {
+			'editable' : false, 'render' : function(my) {
 				if (my.circ) {
 					return my.circ.checkin_time().substr(0,10);
 				} else {
@@ -953,7 +953,7 @@
 			'flex' : 1,
 			'primary' : false,
 			'hidden' : true,
-			'render' : function(my) { return my.circ ? my.circ.xact_finish() : ( my.acp.circulations() ? my.acp.circulations()[0].xact_finish() : ""); },
+			'editable' : false, 'render' : function(my) { return my.circ ? my.circ.xact_finish() : ( my.acp.circulations() ? my.acp.circulations()[0].xact_finish() : ""); },
 		},
 		{
 			'persist' : 'hidden width ordinal',
@@ -963,7 +963,7 @@
 			'flex' : 1,
 			'primary' : false,
 			'hidden' : true,
-			'render' : function(my) {
+			'editable' : false, 'render' : function(my) {
 				if (my.circ) {
 					return my.circ.due_date().substr(0,10);
 				} else {
@@ -983,7 +983,7 @@
 			'flex' : 1,
 			'primary' : false,
 			'hidden' : true,
-			'render' : function(my) {
+			'editable' : false, 'render' : function(my) {
 				if (my.circ) {
 					return my.circ.due_date().substr(11,8);
 				} else {
@@ -1003,7 +1003,7 @@
 			'flex' : 1,
 			'primary' : false,
 			'hidden' : true,
-			'render' : function(my) { return my.acp.create_date().substr(0,10); }
+			'editable' : false, 'render' : function(my) { return my.acp.create_date().substr(0,10); }
 		},
 		{
 			'persist' : 'hidden width ordinal',
@@ -1013,7 +1013,7 @@
 			'flex' : 1,
 			'primary' : false,
 			'hidden' : true,
-			'render' : function(my) { return my.acp.edit_date().substr(0,10); }
+			'editable' : false, 'render' : function(my) { return my.acp.edit_date().substr(0,10); }
 		},
 		{
 			'persist' : 'hidden width ordinal',
@@ -1024,7 +1024,7 @@
 			'sort_type' : 'title',
 			'primary' : false,
 			'hidden' : true,
-			'render' : function(my) {
+			'editable' : false, 'render' : function(my) {
 				try {  return my.mvr.title(); }
 				catch(E) { return my.acp.dummy_title(); }
 			}
@@ -1037,7 +1037,7 @@
 			'flex' : 1,
 			'primary' : false,
 			'hidden' : true,
-			'render' : function(my) {
+			'editable' : false, 'render' : function(my) {
 				try { return my.mvr.author(); }
 				catch(E) { return my.acp.dummy_author(); }
 			}
@@ -1050,7 +1050,7 @@
 			'flex' : 1,
 			'primary' : false,
 			'hidden' : true,
-			'render' : function(my) { return my.mvr.edition(); }
+			'editable' : false, 'render' : function(my) { return my.mvr.edition(); }
 		},
 		{
 			'persist' : 'hidden width ordinal',
@@ -1060,7 +1060,7 @@
 			'flex' : 1,
 			'primary' : false,
 			'hidden' : true,
-			'render' : function(my) { 
+			'editable' : false, 'render' : function(my) { 
                 try { return my.mvr.isbn(); }
                 catch(E) { return my.acp.dummy_isbn(); }
             }
@@ -1073,7 +1073,7 @@
 			'flex' : 1,
 			'primary' : false,
 			'hidden' : true,
-			'render' : function(my) { return my.mvr.pubdate(); }
+			'editable' : false, 'render' : function(my) { return my.mvr.pubdate(); }
 		},
 		{
 			'persist' : 'hidden width ordinal',
@@ -1083,7 +1083,7 @@
 			'flex' : 1,
 			'primary' : false,
 			'hidden' : true,
-			'render' : function(my) { return my.mvr.publisher(); }
+			'editable' : false, 'render' : function(my) { return my.mvr.publisher(); }
 		},
 		{
 			'persist' : 'hidden width ordinal',
@@ -1093,7 +1093,7 @@
 			'flex' : 1,
 			'primary' : false,
 			'hidden' : true,
-			'render' : function(my) { return my.mvr.tcn(); }
+			'editable' : false, 'render' : function(my) { return my.mvr.tcn(); }
 		},
 		{
 			'persist' : 'hidden width ordinal',
@@ -1103,7 +1103,7 @@
 			'flex' : 0,
 			'primary' : false,
 			'hidden' : true,
-			'render' : function(my) {
+			'editable' : false, 'render' : function(my) {
 				if (my.circ) {
 					return my.circ.renewal_remaining();
 				} else {
@@ -1124,7 +1124,7 @@
 			'flex' : 0,
 			'primary' : false,
 			'hidden' : true,
-			'render' : function(my) {
+			'editable' : false, 'render' : function(my) {
 				if (my.circ) {
 					return my.circ.stop_fines();
 				} else {
@@ -1144,7 +1144,7 @@
 			'flex' : 0,
 			'primary' : false,
 			'hidden' : true,
-			'render' : function(my) {
+			'editable' : false, 'render' : function(my) {
 				if (my.circ) {
 					return my.circ.stop_fines_time();
 				} else {
@@ -1164,7 +1164,7 @@
 			'flex' : 1,
 			'primary' : false,
 			'hidden' : true,
-			'render' : function(my) {
+			'editable' : false, 'render' : function(my) {
 				if (Number(my.acp.status())>=0) {
 					return data.hash.ccs[ my.acp.status() ].name();
 				} else {
@@ -1179,7 +1179,7 @@
 			'flex' : 1,
 			'primary' : false,
 			'hidden' : true,
-			'render' : function(my) { return my.route_to.toString(); }
+			'editable' : false, 'render' : function(my) { return my.route_to.toString(); }
 		},
 		{
 			'persist' : 'hidden width ordinal',
@@ -1188,7 +1188,7 @@
 			'flex' : 1,
 			'primary' : false,
 			'hidden' : true,
-			'render' : function(my) { return my.message.toString(); }
+			'editable' : false, 'render' : function(my) { return my.message.toString(); }
 		},
 		{
 			'persist' : 'hidden width ordinal',
@@ -1197,7 +1197,7 @@
 			'flex' : 1,
 			'primary' : false,
 			'hidden' : true,
-			'render' : function(my) { return my.uses; },
+			'editable' : false, 'render' : function(my) { return my.uses; },
 			'sort_type' : 'number'
 		},
 		{
@@ -1208,7 +1208,7 @@
 			'flex' : 1,
 			'primary' : false,
 			'hidden' : true,
-			'render' : function(my) { return my.acp.alert_message(); }
+			'editable' : false, 'render' : function(my) { return my.acp.alert_message(); }
 		},
         {
             'persist' : 'hidden width ordinal',
@@ -1218,7 +1218,7 @@
             'flex' : 1,
             'primary' : false,
             'hidden' : true,
-			'render' : function(my) { return my.circ ? ( typeof my.circ.checkin_workstation() == 'object' ? my.circ.checkin_workstation().name() : my.circ.checkin_workstation() ) : ( my.acp.circulations() ? ( typeof my.acp.circulations()[0].checkin_workstation() == 'object' ? my.acp.circulations().checkin_workstation().name() : my.acp.circulations().checkin_workstation() ) : ""); },
+			'editable' : false, 'render' : function(my) { return my.circ ? ( typeof my.circ.checkin_workstation() == 'object' ? my.circ.checkin_workstation().name() : my.circ.checkin_workstation() ) : ( my.acp.circulations() ? ( typeof my.acp.circulations()[0].checkin_workstation() == 'object' ? my.acp.circulations().checkin_workstation().name() : my.acp.circulations().checkin_workstation() ) : ""); },
         },
         {
             'persist' : 'hidden width ordinal',
@@ -1228,7 +1228,7 @@
             'flex' : 1,
             'primary' : false,
             'hidden' : true,
-			'render' : function(my) { return my.circ ? my.circ.checkin_scan_time().substr(0,10) : ( my.acp.circulations() ? my.acp.circulations()[0].checkin_scan_time().substr(0,10) : ""); },
+			'editable' : false, 'render' : function(my) { return my.circ ? my.circ.checkin_scan_time().substr(0,10) : ( my.acp.circulations() ? my.acp.circulations()[0].checkin_scan_time().substr(0,10) : ""); },
         },
         {
             'persist' : 'hidden width ordinal',
@@ -1238,7 +1238,7 @@
             'flex' : 1,
             'primary' : false,
             'hidden' : true,
-			'render' : function(my) { return my.circ ? my.circ.checkin_scan_time() : ( my.acp.circulations() ? my.acp.circulations()[0].checkin_scan_time() : ""); },
+			'editable' : false, 'render' : function(my) { return my.circ ? my.circ.checkin_scan_time() : ( my.acp.circulations() ? my.acp.circulations()[0].checkin_scan_time() : ""); },
         },
         {
             'persist' : 'hidden width ordinal',
@@ -1248,7 +1248,7 @@
             'flex' : 1,
             'primary' : false,
             'hidden' : true,
-            'render' : function(my) { return my.bre ? (typeof my.bre.creator() == 'object' ? my.bre.creator().usrname() : '#' + my.bre.creator() ) : ''; }
+            'editable' : false, 'render' : function(my) { return my.bre ? (typeof my.bre.creator() == 'object' ? my.bre.creator().usrname() : '#' + my.bre.creator() ) : ''; }
         },
         {
             'persist' : 'hidden width ordinal',
@@ -1258,7 +1258,7 @@
             'flex' : 1,
             'primary' : false,
             'hidden' : true,
-            'render' : function(my) { return my.bre ? (typeof my.bre.editor() == 'object' ? my.bre.editor().usrname() : '#' + my.bre.editor() ) : ''; }
+            'editable' : false, 'render' : function(my) { return my.bre ? (typeof my.bre.editor() == 'object' ? my.bre.editor().usrname() : '#' + my.bre.editor() ) : ''; }
         },
         {
             'persist' : 'hidden width ordinal',
@@ -1268,7 +1268,7 @@
             'flex' : 1,
             'primary' : false,
             'hidden' : true,
-            'render' : function(my) { return my.bre ? my.bre.create_date() : ''; }
+            'editable' : false, 'render' : function(my) { return my.bre ? my.bre.create_date() : ''; }
         },
         {
             'persist' : 'hidden width ordinal',
@@ -1278,7 +1278,7 @@
             'flex' : 1,
             'primary' : false,
             'hidden' : true,
-            'render' : function(my) { return my.bre ? my.bre.edit_date() : ''; }
+            'editable' : false, 'render' : function(my) { return my.bre ? my.bre.edit_date() : ''; }
         },
         {
             'persist' : 'hidden width ordinal',
@@ -1288,7 +1288,7 @@
             'flex' : 1,
             'primary' : false,
             'hidden' : true,
-            'render' : function(my) { return my.bre ? my.bre.tcn_value() : ''; }
+            'editable' : false, 'render' : function(my) { return my.bre ? my.bre.tcn_value() : ''; }
         },
         {
             'persist' : 'hidden width ordinal',
@@ -1298,7 +1298,7 @@
             'flex' : 1,
             'primary' : false,
             'hidden' : true,
-            'render' : function(my) { return my.bre ? my.bre.tcn_source() : ''; }
+            'editable' : false, 'render' : function(my) { return my.bre ? my.bre.tcn_source() : ''; }
         }
 
 	];
@@ -1344,7 +1344,7 @@
 			'flex' : 3,
 			'primary' : true,
 			'hidden' : false,
-			'render' : function(my) { return my.message; }
+			'editable' : false, 'render' : function(my) { return my.message; }
 		},
 		{
 			'persist' : 'hidden width ordinal',
@@ -1353,7 +1353,7 @@
 			'flex' : 1,
 			'primary' : false,
 			'hidden' : false,
-			'render' : function(my) { return String( my.when ); }
+			'editable' : false, 'render' : function(my) { return String( my.when ); }
 		}
 
 	];
@@ -1400,7 +1400,7 @@
 			'flex' : 1,
 			'primary' : false,
 			'hidden' : true,
-			'render' : function(my) { return my.acp.barcode(); }
+			'editable' : false, 'render' : function(my) { return my.acp.barcode(); }
 		},
 		{
 			'persist' : 'hidden width ordinal',
@@ -1409,7 +1409,7 @@
 			'flex' : 1,
 			'primary' : false,
 			'hidden' : true,
-			'render' : function(my) {
+			'editable' : false, 'render' : function(my) {
 				try { return my.mvr.title(); }
 				catch(E) { return my.acp.dummy_title(); }
 			}
@@ -1421,7 +1421,7 @@
 			'flex' : 1,
 			'primary' : false,
 			'hidden' : true,
-			'render' : function(my) {
+			'editable' : false, 'render' : function(my) {
 				try { return my.mvr.author(); }
 				catch(E) { return my.acp.dummy_author(); }
 			}
@@ -1433,7 +1433,7 @@
 			'flex' : 1,
 			'primary' : false,
 			'hidden' : true,
-			'render' : function(my) { return my.acn.label(); }
+			'editable' : false, 'render' : function(my) { return my.acn.label(); }
 		},
 		{
 			'persist' : 'hidden width ordinal',
@@ -1442,7 +1442,7 @@
 			'flex' : 1,
 			'primary' : false,
 			'hidden' : true,
-			'render' : function(my) { return my.atc.id(); }
+			'editable' : false, 'render' : function(my) { return my.atc.id(); }
 		},
 		{
 			'persist' : 'hidden width ordinal',
@@ -1451,7 +1451,7 @@
 			'flex' : 1,
 			'primary' : false,
 			'hidden' : false,
-			'render' : function(my) {
+			'editable' : false, 'render' : function(my) {
 				if (typeof my.atc.source() == "object") {
 					return my.atc.source().shortname();
 				} else {
@@ -1466,7 +1466,7 @@
 			'flex' : 1,
 			'primary' : false,
 			'hidden' : false,
-			'render' : function(my) { return my.atc.source_send_time(); }
+			'editable' : false, 'render' : function(my) { return my.atc.source_send_time(); }
 		},
 		{
 			'persist' : 'hidden width ordinal',
@@ -1475,7 +1475,7 @@
 			'flex' : 1,
 			'primary' : false,
 			'hidden' : false,
-			'render' : function(my) {
+			'editable' : false, 'render' : function(my) {
 				if (typeof my.atc.dest() == "object") {
 					return my.atc.dest().shortname();
 				} else {
@@ -1490,7 +1490,7 @@
 			'flex' : 1,
 			'primary' : false,
 			'hidden' : false,
-			'render' : function(my) { return my.atc.dest_recv_time(); }
+			'editable' : false, 'render' : function(my) { return my.atc.dest_recv_time(); }
 		},
 		{
 			'persist' : 'hidden width ordinal',
@@ -1499,7 +1499,7 @@
 			'flex' : 1,
 			'primary' : false,
 			'hidden' : true,
-			'render' : function(my) { return my.atc.target_copy(); }
+			'editable' : false, 'render' : function(my) { return my.atc.target_copy(); }
 		},
 	];
 	for (var i = 0; i < c.length; i++) {
@@ -1545,7 +1545,7 @@
 			'flex' : 1,
 			'primary' : false,
 			'hidden' : true,
-			'render' : function(my) {
+			'editable' : false, 'render' : function(my) {
 				if (Number(my.ahr.request_lib())>=0) {
 					return data.hash.aou[ my.ahr.request_lib() ].name();
 				} else {
@@ -1560,7 +1560,7 @@
 			'flex' : 0,
 			'primary' : false,
 			'hidden' : true,
-			'render' : function(my) {
+			'editable' : false, 'render' : function(my) {
 				if (Number(my.ahr.request_lib())>=0) {
 					return data.hash.aou[ my.ahr.request_lib() ].shortname();
 				} else {
@@ -1576,7 +1576,7 @@
 			'flex' : 0,
 			'primary' : false,
 			'hidden' : true,
-			'render' : function(my) { return my.ahr.request_time().toString(); }
+			'editable' : false, 'render' : function(my) { return my.ahr.request_time().toString(); }
 		},
 		{
 			'persist' : 'hidden width ordinal',
@@ -1585,7 +1585,7 @@
 			'flex' : 0,
 			'primary' : false,
 			'hidden' : true,
-			'render' : function(my) { return my.ahr.request_time().toString().substr(0,10); }
+			'editable' : false, 'render' : function(my) { return my.ahr.request_time().toString().substr(0,10); }
 		},
 		{
 			'persist' : 'hidden width ordinal',
@@ -1594,7 +1594,7 @@
 			'flex' : 1,
 			'primary' : false,
 			'hidden' : true,
-			'render' : function(my) {
+			'editable' : false, 'render' : function(my) {
 				if (my.ahr.transit() && my.ahr.transit().dest_recv_time()) {
 					return my.ahr.transit().dest_recv_time().toString();
 				}
@@ -1611,7 +1611,7 @@
 			'flex' : 1,
 			'primary' : false,
 			'hidden' : false,
-			'render' : function(my) {
+			'editable' : false, 'render' : function(my) {
 				if (my.ahr.transit() && my.ahr.transit().dest_recv_time()) {
 					return my.ahr.transit().dest_recv_time().toString().substr(0,10);
 				}
@@ -1628,7 +1628,7 @@
 			'flex' : 1,
 			'primary' : false,
 			'hidden' : true,
-			'render' : function(my) { return my.ahr.capture_time() ? my.ahr.capture_time().toString() : ""; }
+			'editable' : false, 'render' : function(my) { return my.ahr.capture_time() ? my.ahr.capture_time().toString() : ""; }
 		},
 		{
 			'persist' : 'hidden width ordinal',
@@ -1637,7 +1637,7 @@
 			'flex' : 1,
 			'primary' : false,
 			'hidden' : true,
-			'render' : function(my) { return my.ahr.capture_time() ? my.ahr.capture_time().toString().substr(0,10) : ""; }
+			'editable' : false, 'render' : function(my) { return my.ahr.capture_time() ? my.ahr.capture_time().toString().substr(0,10) : ""; }
 		},
 		{
 			'persist' : 'hidden width ordinal',
@@ -1646,7 +1646,7 @@
 			'flex' : 1,
 			'primary' : false,
 			'hidden' : false,
-			'render' : function(my) {
+			'editable' : false, 'render' : function(my) {
 				switch (Number(my.status)) {
 					case 1:
 						return document.getElementById('circStrings').getString('staff.circ.utils.hold_status.1');
@@ -1676,7 +1676,7 @@
 			'flex' : 0,
 			'primary' : false,
 			'hidden' : true,
-			'render' : function(my) { return my.ahr.hold_type(); }
+			'editable' : false, 'render' : function(my) { return my.ahr.hold_type(); }
 		},
         {
 			'persist' : 'hidden width ordinal',
@@ -1685,7 +1685,7 @@
 			'flex' : 0,
 			'primary' : false,
 			'hidden' : true,
-			'render' : function(my) {
+			'editable' : false, 'render' : function(my) {
 				if (!get_bool( my.ahr.frozen() )) {
 					return document.getElementById('circStrings').getString('staff.circ.utils.yes');
 				} else {
@@ -1700,7 +1700,7 @@
 			'flex' : 0,
 			'primary' : false,
 			'hidden' : true,
-			'render' : function(my) {
+			'editable' : false, 'render' : function(my) {
 				if (my.ahr.thaw_date() == null) {
 					return document.getElementById('circStrings').getString('staff.circ.utils.thaw_date.none');
 				} else {
@@ -1715,7 +1715,7 @@
 			'flex' : 1,
 			'primary' : false,
 			'hidden' : true,
-			'render' : function(my) {
+			'editable' : false, 'render' : function(my) {
 				if (Number(my.ahr.pickup_lib())>=0) {
 					return data.hash.aou[ my.ahr.pickup_lib() ].name();
 				} else {
@@ -1730,7 +1730,7 @@
 			'flex' : 0,
 			'primary' : false,
 			'hidden' : true,
-			'render' : function(my) {
+			'editable' : false, 'render' : function(my) {
 				if (Number(my.ahr.pickup_lib())>=0) {
 					return data.hash.aou[ my.ahr.pickup_lib() ].shortname();
 				} else {
@@ -1745,7 +1745,7 @@
 			'flex' : 1,
 			'primary' : false,
 			'hidden' : true,
-			'render' : function(my) {
+			'editable' : false, 'render' : function(my) {
 				if (my.acp) {
 					return my.acp.barcode();
 				} else {
@@ -1760,7 +1760,7 @@
             'flex' : 1,
 			'primary' : false,
             'hidden' : true,
-            'render' : function(my) {
+            'editable' : false, 'render' : function(my) {
                 if (!my.acp) { return ""; } else { if (Number(my.acp.location())>=0) return data.lookup("acpl", my.acp.location() ).name(); else return my.acp.location().name(); }
             }
 		},
@@ -1771,7 +1771,7 @@
 			'flex' : 1,
 			'primary' : false,
 			'hidden' : true,
-			'render' : function(my) {
+			'editable' : false, 'render' : function(my) {
 				if (get_bool(my.ahr.email_notify())) {
 					return document.getElementById('circStrings').getString('staff.circ.utils.yes');
 				} else {
@@ -1786,7 +1786,7 @@
 			'flex' : 1,
 			'primary' : false,
 			'hidden' : true,
-			'render' : function(my) { return my.ahr.expire_time(); }
+			'editable' : false, 'render' : function(my) { return my.ahr.expire_time(); }
 		},
 		{
 			'persist' : 'hidden width ordinal',
@@ -1795,7 +1795,7 @@
 			'flex' : 1,
 			'primary' : false,
 			'hidden' : true,
-			'render' : function(my) { return my.ahr.expire_time() ? my.ahr.expire_time().toString().substr(0,10) : ''; }
+			'editable' : false, 'render' : function(my) { return my.ahr.expire_time() ? my.ahr.expire_time().toString().substr(0,10) : ''; }
 		},
 		{
 			'persist' : 'hidden width ordinal',
@@ -1804,7 +1804,7 @@
 			'flex' : 1,
 			'primary' : false,
 			'hidden' : true,
-			'render' : function(my) { return my.ahr.fulfillment_time(); }
+			'editable' : false, 'render' : function(my) { return my.ahr.fulfillment_time(); }
 		},
 		{
 			'persist' : 'hidden width ordinal',
@@ -1813,7 +1813,7 @@
 			'flex' : 1,
 			'primary' : false,
 			'hidden' : true,
-			'render' : function(my) { return my.ahr.holdable_formats(); }
+			'editable' : false, 'render' : function(my) { return my.ahr.holdable_formats(); }
 		},
 		{
 			'persist' : 'hidden width ordinal',
@@ -1822,7 +1822,7 @@
 			'flex' : 1,
 			'primary' : false,
 			'hidden' : true,
-			'render' : function(my) { return my.ahr.id(); }
+			'editable' : false, 'render' : function(my) { return my.ahr.id(); }
 		},
 		{
 			'persist' : 'hidden width ordinal',
@@ -1831,7 +1831,7 @@
 			'flex' : 1,
 			'primary' : false,
 			'hidden' : true,
-			'render' : function(my) { return my.ahr.phone_notify(); }
+			'editable' : false, 'render' : function(my) { return my.ahr.phone_notify(); }
 		},
 		{
 			'persist' : 'hidden width ordinal',
@@ -1840,7 +1840,7 @@
 			'flex' : 1,
 			'primary' : false,
 			'hidden' : true,
-			'render' : function(my) { return my.ahr.prev_check_time(); }
+			'editable' : false, 'render' : function(my) { return my.ahr.prev_check_time(); }
 		},
 		{
 			'persist' : 'hidden width ordinal',
@@ -1849,7 +1849,7 @@
 			'flex' : 1,
 			'primary' : false,
 			'hidden' : true,
-			'render' : function(my) { return my.ahr.requestor(); }
+			'editable' : false, 'render' : function(my) { return my.ahr.requestor(); }
 		},
 		{
 			'persist' : 'hidden width ordinal',
@@ -1858,7 +1858,7 @@
 			'flex' : 1,
 			'primary' : false,
 			'hidden' : true,
-			'render' : function(my) { return my.ahr.selection_depth(); }
+			'editable' : false, 'render' : function(my) { return my.ahr.selection_depth(); }
 		},
 		{
 			'persist' : 'hidden width ordinal',
@@ -1867,7 +1867,7 @@
 			'flex' : 1,
 			'primary' : false,
 			'hidden' : true,
-			'render' : function(my) { return my.ahr.target(); }
+			'editable' : false, 'render' : function(my) { return my.ahr.target(); }
 		},
 		{
 			'persist' : 'hidden width ordinal',
@@ -1876,7 +1876,7 @@
 			'flex' : 1,
 			'primary' : false,
 			'hidden' : true,
-			'render' : function(my) { return my.ahr.usr(); }
+			'editable' : false, 'render' : function(my) { return my.ahr.usr(); }
 		},
 		{
 			'persist' : 'hidden width ordinal',
@@ -1886,7 +1886,7 @@
 			'sort_type' : 'title',
 			'primary' : false,
 			'hidden' : true,
-			'render' : function(my) {
+			'editable' : false, 'render' : function(my) {
 				if (my.mvr) {
 					return my.mvr.title();
 				} else {
@@ -1901,7 +1901,7 @@
 			'flex' : 1,
 			'primary' : false,
 			'hidden' : true,
-			'render' : function(my) {
+			'editable' : false, 'render' : function(my) {
 				if (my.mvr) {
 					return my.mvr.author();
 				} else {
@@ -1916,7 +1916,7 @@
 			'flex' : 1,
 			'primary' : false,
 			'hidden' : true,
-			'render' : function(my) { return my.mvr.edition(); }
+			'editable' : false, 'render' : function(my) { return my.mvr.edition(); }
 		},
 		{
 			'persist' : 'hidden width ordinal',
@@ -1925,7 +1925,7 @@
 			'flex' : 1,
 			'primary' : false,
 			'hidden' : true,
-			'render' : function(my) { return my.mvr.isbn(); }
+			'editable' : false, 'render' : function(my) { return my.mvr.isbn(); }
 		},
 		{
 			'persist' : 'hidden width ordinal',
@@ -1934,7 +1934,7 @@
 			'flex' : 1,
 			'primary' : false,
 			'hidden' : true,
-			'render' : function(my) { return my.mvr.pubdate(); }
+			'editable' : false, 'render' : function(my) { return my.mvr.pubdate(); }
 		},
 		{
 			'persist' : 'hidden width ordinal',
@@ -1943,7 +1943,7 @@
 			'flex' : 1,
 			'primary' : false,
 			'hidden' : true,
-			'render' : function(my) { return my.mvr.publisher(); }
+			'editable' : false, 'render' : function(my) { return my.mvr.publisher(); }
 		},
 		{
 			'persist' : 'hidden width ordinal',
@@ -1952,7 +1952,7 @@
 			'flex' : 1,
 			'primary' : false,
 			'hidden' : true,
-			'render' : function(my) { return my.mvr.tcn(); }
+			'editable' : false, 'render' : function(my) { return my.mvr.tcn(); }
 		},
 		{
 			'persist' : 'hidden width ordinal',
@@ -1961,7 +1961,7 @@
 			'flex' : 1,
 			'primary' : false,
 			'hidden' : true,
-			'render' : function(my) { return my.ahr.notify_time(); }
+			'editable' : false, 'render' : function(my) { return my.ahr.notify_time(); }
 		},
 		{
 			'persist' : 'hidden width ordinal',
@@ -1970,7 +1970,7 @@
 			'flex' : 1,
 			'primary' : false,
 			'hidden' : true,
-			'render' : function(my) { return my.ahr.notify_count(); }
+			'editable' : false, 'render' : function(my) { return my.ahr.notify_count(); }
 		},
 		{
 			'persist' : 'hidden width ordinal',
@@ -1979,7 +1979,7 @@
 			'flex' : 1,
 			'primary' : false,
 			'hidden' : true,
-			'render' : function(my) {
+			'editable' : false, 'render' : function(my) {
 				if (my.ahr.transit()) {
 					return data.hash.aou[ my.ahr.transit().source() ].shortname();
 				} else {
@@ -1994,7 +1994,7 @@
 			'flex' : 1,
 			'primary' : false,
 			'hidden' : true,
-			'render' : function(my) { return my.ahr.transit() ?  my.ahr.transit().source_send_time() : ""; }
+			'editable' : false, 'render' : function(my) { return my.ahr.transit() ?  my.ahr.transit().source_send_time() : ""; }
 		},
 		{
 			'persist' : 'hidden width ordinal',
@@ -2003,7 +2003,7 @@
 			'flex' : 1,
 			'primary' : false,
 			'hidden' : true,
-			'render' : function(my) { return my.ahr.transit() ?  data.hash.aou[ my.ahr.transit().dest() ].shortname() : ""; }
+			'editable' : false, 'render' : function(my) { return my.ahr.transit() ?  data.hash.aou[ my.ahr.transit().dest() ].shortname() : ""; }
 		},
 		{
 			'persist' : 'hidden width ordinal',
@@ -2012,7 +2012,7 @@
 			'flex' : 1,
 			'primary' : false,
 			'hidden' : true,
-			'render' : function(my) { return my.ahr.transit() ?  my.ahr.transit().dest_recv_time() : ""; }
+			'editable' : false, 'render' : function(my) { return my.ahr.transit() ?  my.ahr.transit().dest_recv_time() : ""; }
 		},
 		{
 			'persist' : 'hidden width ordinal',
@@ -2021,7 +2021,7 @@
 			'flex' : 1,
 			'primary' : false,
 			'hidden' : true,
-			'render' : function(my) { return my.patron_barcode ? my.patron_barcode : ""; }
+			'editable' : false, 'render' : function(my) { return my.patron_barcode ? my.patron_barcode : ""; }
 		},
 		{
 			'persist' : 'hidden width ordinal',
@@ -2030,7 +2030,7 @@
 			'flex' : 1,
 			'primary' : false,
 			'hidden' : true,
-			'render' : function(my) { return my.patron_family_name ? my.patron_family_name : ""; }
+			'editable' : false, 'render' : function(my) { return my.patron_family_name ? my.patron_family_name : ""; }
 		},
 		{
 			'persist' : 'hidden width ordinal',
@@ -2039,7 +2039,7 @@
 			'flex' : 1,
 			'primary' : false,
 			'hidden' : true,
-			'render' : function(my) { return my.patron_first_given_name ? my.patron_first_given_name : ""; }
+			'editable' : false, 'render' : function(my) { return my.patron_first_given_name ? my.patron_first_given_name : ""; }
 		},
 		{
 			'persist' : 'hidden width ordinal',
@@ -2048,7 +2048,7 @@
 			'flex' : 1,
 			'primary' : false,
 			'hidden' : true,
-			'render' : function(my) { return my.acn.label(); }
+			'editable' : false, 'render' : function(my) { return my.acn.label(); }
 		},
                 {
 			'persist' : 'hidden width ordinal',
@@ -2057,7 +2057,7 @@
 			'flex' : 1,
 			'primary' : false,
 			'hidden' : true,
-			'render' : function(my) { return my.total_holds; }
+			'editable' : false, 'render' : function(my) { return my.total_holds; }
 		},
                 {
 			'persist' : 'hidden width ordinal',
@@ -2066,7 +2066,7 @@
 			'flex' : 1,
 			'primary' : false,
 			'hidden' : true,
-			'render' : function(my) { return my.queue_position; }
+			'editable' : false, 'render' : function(my) { return my.queue_position; }
 		},
                 {
 			'persist' : 'hidden width ordinal',
@@ -2075,7 +2075,7 @@
 			'flex' : 1,
 			'primary' : false,
 			'hidden' : true,
-			'render' : function(my) { return my.potential_copies; }
+			'editable' : false, 'render' : function(my) { return my.potential_copies; }
 		},
                 {
 			'persist' : 'hidden width ordinal',
@@ -2084,34 +2084,34 @@
 			'flex' : 1,
 			'primary' : false,
 			'hidden' : true,
-			'render' : function(my) { return my.estimated_wait; }
+			'editable' : false, 'render' : function(my) { return my.estimated_wait; }
 		},
-{
+        {
 			'persist' : 'hidden width ordinal',
 			'id' : 'hold_note',
 			'label' : document.getElementById('circStrings').getString('staff.circ.utils.hold_note'),
 			'flex' : 1,
 			'primary' : false,
 			'hidden' : true,
-			'render' : function(my) { return my.ahrn_count; }
-              },
-              {
+			'editable' : false, 'render' : function(my) { return my.ahrn_count; }
+        },
+        {
 			'persist' : 'hidden width ordinal',
 			'id' : 'staff_hold',
 			'label' : document.getElementById('circStrings').getString('staff.circ.utils.staff_hold'),
 			'flex' : 1,
 			'primary' : false,
-	                'hidden' : true,
-	                'render' : function(my) {
-
-                        if (my.ahr.usr() != my.ahr.requestor()){
-                            return document.getElementById('circStrings').getString('staff.circ.utils.yes');
-                        }else {
-                            return document.getElementById('circStrings').getString('staff.circ.utils.no');
-		            }
-                        }
-                  }
-	      ];
+            'hidden' : true,
+            'editable' : false, 
+            'render' : function(my) {
+                if (my.ahr.usr() != my.ahr.requestor()){
+                    return document.getElementById('circStrings').getString('staff.circ.utils.yes');
+                } else {
+                    return document.getElementById('circStrings').getString('staff.circ.utils.no');
+                }
+            }
+        }
+    ];
 	for (var i = 0; i < c.length; i++) {
 		if (modify[ c[i].id ]) {
 			for (var j in modify[ c[i].id ]) {

Modified: trunk/Open-ILS/xul/staff_client/server/patron/util.js
===================================================================
--- trunk/Open-ILS/xul/staff_client/server/patron/util.js	2009-10-13 05:23:44 UTC (rev 14390)
+++ trunk/Open-ILS/xul/staff_client/server/patron/util.js	2009-10-13 05:23:45 UTC (rev 14391)
@@ -20,62 +20,62 @@
 	var c = [
 		{
 			'persist' : 'hidden width ordinal', 'id' : 'mbts_id', 'label' : commonStrings.getString('staff.mbts_id_label'), 'flex' : 1,
-			'primary' : false, 'hidden' : false, 'render' : function(my) { return my.mbts.id(); }
+			'primary' : false, 'hidden' : false, 'editable' : false, 'render' : function(my) { return my.mbts.id(); }
 		},
 		{
 			'persist' : 'hidden width ordinal', 'id' : 'usr', 'label' : commonStrings.getString('staff.mbts_usr_label'), 'flex' : 1,
-			'primary' : false, 'hidden' : true, 'render' : function(my) { return my.mbts.usr() ? "Id = " + my.mbts.usr() : ""; }
+			'primary' : false, 'hidden' : true, 'editable' : false, 'render' : function(my) { return my.mbts.usr() ? "Id = " + my.mbts.usr() : ""; }
 		},
 		{
 			'persist' : 'hidden width ordinal', 'id' : 'xact_type', 'label' : commonStrings.getString('staff.mbts_xact_type_label'), 'flex' : 1,
-			'primary' : false, 'hidden' : false, 'render' : function(my) { return my.mbts.xact_type(); }
+			'primary' : false, 'hidden' : false, 'editable' : false, 'render' : function(my) { return my.mbts.xact_type(); }
 		},
 		{
 			'persist' : 'hidden width ordinal', 'id' : 'balance_owed', 'label' : commonStrings.getString('staff.mbts_balance_owed_label'), 'flex' : 1,
-			'primary' : false, 'hidden' : false, 'render' : function(my) { return util.money.sanitize( my.mbts.balance_owed() ); },
+			'primary' : false, 'hidden' : false, 'editable' : false, 'render' : function(my) { return util.money.sanitize( my.mbts.balance_owed() ); },
 			'sort_type' : 'money'
 		},
 		{
 			'persist' : 'hidden width ordinal', 'id' : 'total_owed', 'label' : commonStrings.getString('staff.mbts_total_owed_label'), 'flex' : 1,
-			'primary' : false, 'hidden' : false, 'render' : function(my) { return util.money.sanitize( my.mbts.total_owed() ); },
+			'primary' : false, 'hidden' : false, 'editable' : false, 'render' : function(my) { return util.money.sanitize( my.mbts.total_owed() ); },
 			'sort_type' : 'money'
 		},
 		{
 			'persist' : 'hidden width ordinal', 'id' : 'total_paid', 'label' : commonStrings.getString('staff.mbts_total_paid_label'), 'flex' : 1,
-			'primary' : false, 'hidden' : false, 'render' : function(my) { return util.money.sanitize( my.mbts.total_paid() ); },
+			'primary' : false, 'hidden' : false, 'editable' : false, 'render' : function(my) { return util.money.sanitize( my.mbts.total_paid() ); },
 			'sort_type' : 'money'
 		},
 		{
 			'persist' : 'hidden width ordinal', 'id' : 'last_billing_note', 'label' : commonStrings.getString('staff.mbts_last_billing_note_label'), 'flex' : 2,
-			'primary' : false, 'hidden' : true, 'render' : function(my) { return my.mbts.last_billing_note(); }
+			'primary' : false, 'hidden' : true, 'editable' : false, 'render' : function(my) { return my.mbts.last_billing_note(); }
 		},
 		{
 			'persist' : 'hidden width ordinal', 'id' : 'last_billing_type', 'label' : commonStrings.getString('staff.mbts_last_billing_type_label'), 'flex' : 1,
-			'primary' : false, 'hidden' : true, 'render' : function(my) { return my.mbts.last_billing_type(); }
+			'primary' : false, 'hidden' : true, 'editable' : false, 'render' : function(my) { return my.mbts.last_billing_type(); }
 		},
 		{
 			'persist' : 'hidden width ordinal', 'id' : 'last_billing_ts', 'label' : commonStrings.getString('staff.mbts_last_billing_timestamp_label'), 'flex' : 1,
-			'primary' : false, 'hidden' : true, 'render' : function(my) { return util.date.formatted_date( my.mbts.last_billing_ts(), "" ); }
+			'primary' : false, 'hidden' : true, 'editable' : false, 'render' : function(my) { return util.date.formatted_date( my.mbts.last_billing_ts(), "" ); }
 		},
 		{
 			'persist' : 'hidden width ordinal', 'id' : 'last_payment_note', 'label' : commonStrings.getString('staff.mbts_last_payment_note_label'), 'flex' : 2,
-			'primary' : false, 'hidden' : true, 'render' : function(my) { return my.mbts.last_payment_note(); }
+			'primary' : false, 'hidden' : true, 'editable' : false, 'render' : function(my) { return my.mbts.last_payment_note(); }
 		},
 		{
 			'persist' : 'hidden width ordinal', 'id' : 'last_payment_type', 'label' : commonStrings.getString('staff.mbts_last_payment_type_label'), 'flex' : 1,
-			'primary' : false, 'hidden' : true, 'render' : function(my) { return my.mbts.last_payment_type(); }
+			'primary' : false, 'hidden' : true, 'editable' : false, 'render' : function(my) { return my.mbts.last_payment_type(); }
 		},
 		{
 			'persist' : 'hidden width ordinal', 'id' : 'last_payment_ts', 'label' : commonStrings.getString('staff.mbts_last_payment_timestamp_label'), 'flex' : 1,
-			'primary' : false, 'hidden' : true, 'render' : function(my) { return util.date.formatted_date( my.mbts.last_payment_ts(), "" ); }
+			'primary' : false, 'hidden' : true, 'editable' : false, 'render' : function(my) { return util.date.formatted_date( my.mbts.last_payment_ts(), "" ); }
 		},
 		{
 			'persist' : 'hidden width ordinal', 'id' : 'xact_start', 'label' : commonStrings.getString('staff.mbts_xact_start_label'), 'flex' : 1,
-			'primary' : false, 'hidden' : false, 'render' : function(my) { return my.mbts.xact_start() ? my.mbts.xact_start().toString().substr(0,10) : ""; }
+			'primary' : false, 'hidden' : false, 'editable' : false, 'render' : function(my) { return my.mbts.xact_start() ? my.mbts.xact_start().toString().substr(0,10) : ""; }
 		},
 		{
 			'persist' : 'hidden width ordinal', 'id' : 'xact_finish', 'label' : commonStrings.getString('staff.mbts_xact_finish_label'), 'flex' : 1,
-			'primary' : false, 'hidden' : false, 'render' : function(my) { return my.mbts.xact_finish() ? my.mbts.xact_finish().toString().substr(0,10) : ""; }
+			'primary' : false, 'hidden' : false, 'editable' : false, 'render' : function(my) { return my.mbts.xact_finish() ? my.mbts.xact_finish().toString().substr(0,10) : ""; }
 		},
 	];
 	for (var i = 0; i < c.length; i++) {
@@ -118,40 +118,40 @@
 	var c = [
 		{
 			'persist' : 'hidden width ordinal', 'id' : 'mb_id', 'label' : commonStrings.getString('staff.mb_id_label'), 'flex' : 1,
-			'primary' : false, 'hidden' : true, 'render' : function(my) { return my.mb.id(); }
+			'primary' : false, 'hidden' : true, 'editable' : false, 'render' : function(my) { return my.mb.id(); }
 		},
 		{
 			'persist' : 'hidden width ordinal', 'id' : 'voided', 'label' : commonStrings.getString('staff.mb_voided_label'), 'flex' : 1,
-			'primary' : false, 'hidden' : false, 'render' : function(my) { return get_bool( my.mb.voided() ) ? "Yes" : "No"; }
+			'primary' : false, 'hidden' : false, 'editable' : false, 'render' : function(my) { return get_bool( my.mb.voided() ) ? "Yes" : "No"; }
 		},
 		{
 			'persist' : 'hidden width ordinal', 'id' : 'voider', 'label' : commonStrings.getString('staff.mb_voider_label'), 'flex' : 1,
-			'primary' : false, 'hidden' : true, 'render' : function(my) { return my.mb.voider() ? "Id = " + my.mb.voider() : ""; }
+			'primary' : false, 'hidden' : true, 'editable' : false, 'render' : function(my) { return my.mb.voider() ? "Id = " + my.mb.voider() : ""; }
 		},
 		{
 			'persist' : 'hidden width ordinal', 'id' : 'void_time', 'label' : commonStrings.getString('staff.mb_void_time_label'), 'flex' : 1,
-			'primary' : false, 'hidden' : true, 'render' : function(my) { return my.mb.void_time(); }
+			'primary' : false, 'hidden' : true, 'editable' : false, 'render' : function(my) { return my.mb.void_time(); }
 		},
 		{
 			'persist' : 'hidden width ordinal', 'id' : 'amount', 'label' : commonStrings.getString('staff.mb_amount_label'), 'flex' : 1,
-			'primary' : false, 'hidden' : false, 'render' : function(my) { return util.money.sanitize( my.mb.amount() ); },
+			'primary' : false, 'hidden' : false, 'editable' : false, 'render' : function(my) { return util.money.sanitize( my.mb.amount() ); },
 			'sort_type' : 'money'
 		},
 		{
 			'persist' : 'hidden width ordinal', 'id' : 'billing_type', 'label' : commonStrings.getString('staff.mb_billing_type_label'), 'flex' : 1,
-			'primary' : false, 'hidden' : false, 'render' : function(my) { return my.mb.billing_type(); }
+			'primary' : false, 'hidden' : false, 'editable' : false, 'render' : function(my) { return my.mb.billing_type(); }
 		},
 		{
 			'persist' : 'hidden width ordinal', 'id' : 'billing_ts', 'label' : commonStrings.getString('staff.mb_billing_ts_label'), 'flex' : 1,
-			'primary' : false, 'hidden' : false, 'render' : function(my) { return util.date.formatted_date( my.mb.billing_ts(), "" ); }
+			'primary' : false, 'hidden' : false, 'editable' : false, 'render' : function(my) { return util.date.formatted_date( my.mb.billing_ts(), "" ); }
 		},
 		{
 			'persist' : 'hidden width ordinal', 'id' : 'note', 'label' : commonStrings.getString('staff.mb_note_label'), 'flex' : 2,
-			'primary' : false, 'hidden' : false, 'render' : function(my) { return my.mb.note(); }
+			'primary' : false, 'hidden' : false, 'editable' : false, 'render' : function(my) { return my.mb.note(); }
 		},
 		{
 			'persist' : 'hidden width ordinal', 'id' : 'xact', 'label' : commonStrings.getString('staff.mb_xact_label'), 'flex' : 1,
-			'primary' : false, 'hidden' : true, 'render' : function(my) { return my.mb.xact(); }
+			'primary' : false, 'hidden' : true, 'editable' : false, 'render' : function(my) { return my.mb.xact(); }
 		},
 	];
 	for (var i = 0; i < c.length; i++) {
@@ -195,36 +195,36 @@
 	var c = [
 		{
 			'persist' : 'hidden width ordinal', 'id' : 'mp_id', 'label' : commonStrings.getString('staff.mp_id_label'), 'flex' : 1,
-			'primary' : false, 'hidden' : true, 'render' : function(my) { return my.mp.id(); }
+			'primary' : false, 'hidden' : true, 'editable' : false, 'render' : function(my) { return my.mp.id(); }
 		},
 		{
 			'persist' : 'hidden width ordinal', 'id' : 'mp_amount', 'label' : commonStrings.getString('staff.mp_amount_label'), 'flex' : 1,
-			'primary' : false, 'hidden' : false, 'render' : function(my) { return util.money.sanitize( my.mp.amount() ); },
+			'primary' : false, 'hidden' : false, 'editable' : false, 'render' : function(my) { return util.money.sanitize( my.mp.amount() ); },
 			'sort_type' : 'money'
 		},
 		{
 			'persist' : 'hidden width ordinal', 'id' : 'mp_payment_type', 'label' : commonStrings.getString('staff.mp_payment_type_label'), 'flex' : 1,
-			'primary' : false, 'hidden' : false, 'render' : function(my) { return my.mp.payment_type(); }
+			'primary' : false, 'hidden' : false, 'editable' : false, 'render' : function(my) { return my.mp.payment_type(); }
 		},
 		{
 			'persist' : 'hidden width ordinal', 'id' : 'mp_payment_ts', 'label' : commonStrings.getString('staff.mp_payment_timestamp_label'), 'flex' : 1,
-			'primary' : false, 'hidden' : false, 'render' : function(my) { return util.date.formatted_date( my.mp.payment_ts(), "" ); }
+			'primary' : false, 'hidden' : false, 'editable' : false, 'render' : function(my) { return util.date.formatted_date( my.mp.payment_ts(), "" ); }
 		},
 		{
 			'persist' : 'hidden width ordinal', 'id' : 'mp_note', 'label' : commonStrings.getString('staff.mp_note_label'), 'flex' : 2,
-			'primary' : false, 'hidden' : false, 'render' : function(my) { return my.mp.note(); }
+			'primary' : false, 'hidden' : false, 'editable' : false, 'render' : function(my) { return my.mp.note(); }
 		},
 		{
 			'persist' : 'hidden width ordinal', 'id' : 'mp_ws', 'label' : commonStrings.getString('staff.mp_cash_drawer_label'), 'flex' : 1,
-			'primary' : false, 'hidden' : false, 'render' : function(my) { return my.mp.cash_drawer().name(); }
+			'primary' : false, 'hidden' : false, 'editable' : false, 'render' : function(my) { return my.mp.cash_drawer().name(); }
 		},
 		{
 			'persist' : 'hidden width ordinal', 'id' : 'mp_staff', 'label' : commonStrings.getString('staff.mp_accepting_usr_label'), 'flex' : 1,
-			'primary' : false, 'hidden' : false, 'render' : function(my) { var s = my.mp.accepting_usr(); if (s && typeof s != "object") s = patron.util.retrieve_fleshed_au_via_id(ses(),s); return s.family_name() + " (" + s.card().barcode() + ") @ " + data.hash.aou[ s.home_ou() ].shortname(); }
+			'primary' : false, 'hidden' : false, 'editable' : false, 'render' : function(my) { var s = my.mp.accepting_usr(); if (s && typeof s != "object") s = patron.util.retrieve_fleshed_au_via_id(ses(),s); return s.family_name() + " (" + s.card().barcode() + ") @ " + data.hash.aou[ s.home_ou() ].shortname(); }
 		},
 		{
 			'persist' : 'hidden width ordinal', 'id' : 'mp_xact', 'label' : commonStrings.getString('staff.mp_xact_label'), 'flex' : 1,
-			'primary' : false, 'hidden' : true, 'render' : function(my) { return my.mp.xact(); }
+			'primary' : false, 'hidden' : true, 'editable' : false, 'render' : function(my) { return my.mp.xact(); }
 		},
 	];
 	for (var i = 0; i < c.length; i++) {
@@ -268,30 +268,30 @@
 	var c = [
 		{
 			'persist' : 'hidden width ordinal', 'id' : 'csp_id', 'label' : commonStrings.getString('staff.csp_id_label'), 'flex' : 1,
-			'primary' : false, 'hidden' : true, 'render' : function(my) { return typeof my.csp == 'object' ? my.csp.id() : my.csp; }
+			'primary' : false, 'hidden' : true, 'editable' : false, 'render' : function(my) { return typeof my.csp == 'object' ? my.csp.id() : my.csp; }
 		},
 		{
 			'persist' : 'hidden width ordinal', 'id' : 'csp_name', 'label' : commonStrings.getString('staff.csp_name_label'), 'flex' : 1,
-			'primary' : false, 'hidden' : true, 'render' : function(my) { return typeof my.csp == 'object' ? my.csp.name() : data.hash.csp[ my.csp ].name(); }
+			'primary' : false, 'hidden' : true, 'editable' : false, 'render' : function(my) { return typeof my.csp == 'object' ? my.csp.name() : data.hash.csp[ my.csp ].name(); }
 		},
 		{
 			'persist' : 'hidden width ordinal', 'id' : 'csp_label', 'label' : commonStrings.getString('staff.csp_label_label'), 'flex' : 1,
-			'primary' : false, 'hidden' : false, 'render' : function(my) { return typeof my.csp == 'object' ? my.csp.label() : data.hash.csp[ my.csp ].label(); }
+			'primary' : false, 'hidden' : false, 'editable' : false, 'render' : function(my) { return typeof my.csp == 'object' ? my.csp.label() : data.hash.csp[ my.csp ].label(); }
 		},
 		{
 			'persist' : 'hidden width ordinal', 'id' : 'csp_block_list', 'label' : commonStrings.getString('staff.csp_block_list_label'), 'flex' : 1,
-			'primary' : false, 'hidden' : true, 'render' : function(my) { return typeof my.csp == 'object' ? my.csp.block_list() : data.hash.csp[ my.csp ].block_list(); }
+			'primary' : false, 'hidden' : true, 'editable' : false, 'render' : function(my) { return typeof my.csp == 'object' ? my.csp.block_list() : data.hash.csp[ my.csp ].block_list(); }
 		},
 		{
 			'persist' : 'hidden width ordinal', 'id' : 'csp_block_circ', 'label' : commonStrings.getString('staff.csp_block_circ_label'), 'flex' : 1,
-			'primary' : false, 'hidden' : true, 'render' : function(my) { 
+			'primary' : false, 'hidden' : true, 'editable' : false, 'render' : function(my) { 
                 var my_csp = typeof my.csp == 'object' ? my.csp : data.hash.csp[ my.csp ];
                 return String( my_csp.block_list() ).match('CIRC') ? commonStrings.getString('staff.csp_block_circ_yes') : commonStrings.getString('staff.csp_block_circ_no'); 
             }
 		},
 		{
 			'persist' : 'hidden width ordinal', 'id' : 'csp_block_renew', 'label' : commonStrings.getString('staff.csp_block_renew_label'), 'flex' : 1,
-			'primary' : false, 'hidden' : true, 'render' : function(my) { 
+			'primary' : false, 'hidden' : true, 'editable' : false, 'render' : function(my) { 
                 var my_csp = typeof my.csp == 'object' ? my.csp : data.hash.csp[ my.csp ];
                 return String( my_csp.block_list() ).match('RENEW') ? commonStrings.getString('staff.csp_block_renew_yes') : commonStrings.getString('staff.csp_block_renew_no'); 
 
@@ -299,36 +299,36 @@
 		},
 		{
 			'persist' : 'hidden width ordinal', 'id' : 'csp_block_hold', 'label' : commonStrings.getString('staff.csp_block_hold_label'), 'flex' : 1,
-			'primary' : false, 'hidden' : true, 'render' : function(my) { 
+			'primary' : false, 'hidden' : true, 'editable' : false, 'render' : function(my) { 
                 var my_csp = typeof my.csp == 'object' ? my.csp : data.hash.csp[ my.csp ];
                 return String( my_csp.block_list() ).match('HOLD') ?  commonStrings.getString('staff.csp_block_hold_yes') : commonStrings.getString('staff.csp_block_hold_no'); 
             }
 		},
 		{
 			'persist' : 'hidden width ordinal', 'id' : 'ausp_id', 'label' : commonStrings.getString('staff.ausp_id_label'), 'flex' : 1,
-			'primary' : false, 'hidden' : true, 'render' : function(my) { return my.ausp ? my.ausp.id() : ''; }
+			'primary' : false, 'hidden' : true, 'editable' : false, 'render' : function(my) { return my.ausp ? my.ausp.id() : ''; }
 		},
 		{
 			'persist' : 'hidden width ordinal', 'id' : 'ausp_staff', 'label' : commonStrings.getString('staff.ausp_staff_label'), 'flex' : 1,
-			'primary' : false, 'hidden' : true, 'render' : function(my) { 
+			'primary' : false, 'hidden' : true, 'editable' : false, 'render' : function(my) { 
                 return my.ausp ? my.ausp.staff() : '';
             }
         },
 		{
 			'persist' : 'hidden width ordinal', 'id' : 'ausp_set_date', 'label' : commonStrings.getString('staff.ausp_set_date_label'), 'flex' : 1,
-			'primary' : false, 'hidden' : false, 'render' : function(my) { 
+			'primary' : false, 'hidden' : false, 'editable' : false, 'render' : function(my) { 
                 return my.ausp ? my.ausp.set_date() : '';
             }
         },
 		{
 			'persist' : 'hidden width ordinal', 'id' : 'ausp_note', 'label' : commonStrings.getString('staff.ausp_note_label'), 'flex' : 1,
-			'primary' : false, 'hidden' : false, 'render' : function(my) { 
+			'primary' : false, 'hidden' : false, 'editable' : false, 'render' : function(my) { 
                 return my.ausp ? my.ausp.note() : '';
             }
         },
 		{
 			'persist' : 'hidden width ordinal', 'id' : 'ausp_org_unit', 'label' : commonStrings.getString('staff.ausp_org_unit_label'), 'flex' : 1,
-			'primary' : false, 'hidden' : false, 'render' : function(my) { 
+			'primary' : false, 'hidden' : false, 'editable' : false, 'render' : function(my) { 
                 return my.ausp ? data.hash.aou[ my.ausp.org_unit() ].shortname() : '';
             }
         }
@@ -372,129 +372,129 @@
 	var c = [
 		{
 			'persist' : 'hidden width ordinal', 'id' : 'barcode', 'label' : commonStrings.getString('staff.card_barcode_label'), 'flex' : 1, 
-			'primary' : false, 'hidden' : true, 'render' : function(my) { return my.au.card().barcode(); }
+			'primary' : false, 'hidden' : true, 'editable' : false, 'render' : function(my) { return my.au.card().barcode(); }
 		},
 		{ 
 			'persist' : 'hidden width ordinal', 'id' : 'usrname', 'label' : commonStrings.getString('staff.au_usrname_label'), 'flex' : 1, 
-			'primary' : false, 'hidden' : true, 'render' : function(my) { return my.au.usrname(); }
+			'primary' : false, 'hidden' : true, 'editable' : false, 'render' : function(my) { return my.au.usrname(); }
 		},
 		{ 
 			'persist' : 'hidden width ordinal', 'id' : 'profile', 'label' : commonStrings.getString('staff.au_profile_label'), 'flex' : 1, 
-			'primary' : false, 'hidden' : true, 'render' : function(my) { return data.hash.pgt[ my.au.profile() ].name(); }
+			'primary' : false, 'hidden' : true, 'editable' : false, 'render' : function(my) { return data.hash.pgt[ my.au.profile() ].name(); }
 		},
 		{ 
 			'persist' : 'hidden width ordinal', 'id' : 'active', 'label' : commonStrings.getString('staff.au_active_label'), 'flex' : 1, 
-			'primary' : false, 'hidden' : true, 'render' : function(my) { return get_bool( my.au.active() ) ? "Yes" : "No"; }
+			'primary' : false, 'hidden' : true, 'editable' : false, 'render' : function(my) { return get_bool( my.au.active() ) ? "Yes" : "No"; }
 		},
 		{
 			'persist' : 'hidden width ordinal', 'id' : 'barred', 'label' : commonStrings.getString('staff.au_barred_label'), 'flex' : 1,
-			'primary' : false, 'hidden' : true, 'render' : function(my) { return get_bool( my.au.barred() ) ? "Yes" : "No"; }
+			'primary' : false, 'hidden' : true, 'editable' : false, 'render' : function(my) { return get_bool( my.au.barred() ) ? "Yes" : "No"; }
 		},
 		{ 
 			'persist' : 'hidden width ordinal', 'id' : 'au_id', 'label' : document.getElementById('commonStrings').getString('staff.au_id_label'), 'flex' : 1, 
-			'primary' : false, 'hidden' : true, 'render' : function(my) { return my.au.id(); }
+			'primary' : false, 'hidden' : true, 'editable' : false, 'render' : function(my) { return my.au.id(); }
 		},
 		{ 
 			'persist' : 'hidden width ordinal', 'id' : 'prefix', 'label' : document.getElementById('commonStrings').getString('staff.au_name_prefix_label'), 'flex' : 1, 
-			'primary' : false, 'hidden' : true, 'render' : function(my) { return my.au.prefix(); }
+			'primary' : false, 'hidden' : true, 'editable' : false, 'render' : function(my) { return my.au.prefix(); }
 		},
 		{ 
 			'persist' : 'hidden width ordinal', 'id' : 'family_name', 'label' : document.getElementById('commonStrings').getString('staff.au_family_name_label'), 'flex' : 1, 
-			'primary' : false, 'hidden' : true, 'render' : function(my) { return my.au.family_name(); }
+			'primary' : false, 'hidden' : true, 'editable' : false, 'render' : function(my) { return my.au.family_name(); }
 		},
 		{ 
 			'persist' : 'hidden width ordinal', 'id' : 'first_given_name', 'label' : document.getElementById('commonStrings').getString('staff.au_first_given_name_label'), 'flex' : 1, 
-			'primary' : false, 'hidden' : true, 'render' : function(my) { return my.au.first_given_name(); }
+			'primary' : false, 'hidden' : true, 'editable' : false, 'render' : function(my) { return my.au.first_given_name(); }
 		},
 		{ 
 			'persist' : 'hidden width ordinal', 'id' : 'second_given_name', 'label' : document.getElementById('commonStrings').getString('staff.au_second_given_name_label'), 'flex' : 1, 
-			'primary' : false, 'hidden' : true, 'render' : function(my) { return my.au.second_given_name(); }
+			'primary' : false, 'hidden' : true, 'editable' : false, 'render' : function(my) { return my.au.second_given_name(); }
 		},
 		{ 
 			'persist' : 'hidden width ordinal', 'id' : 'suffix', 'label' : document.getElementById('commonStrings').getString('staff.au_name_suffix_label'), 'flex' : 1, 
-			'primary' : false, 'hidden' : true, 'render' : function(my) { return my.au.suffix(); }
+			'primary' : false, 'hidden' : true, 'editable' : false, 'render' : function(my) { return my.au.suffix(); }
 		},
 		{ 
 			'persist' : 'hidden width ordinal', 'id' : 'alert_message', 'label' : commonStrings.getString('staff.au_alert_message_label'), 'flex' : 1, 
-			'primary' : false, 'hidden' : true, 'render' : function(my) { return my.au.alert_message(); }
+			'primary' : false, 'hidden' : true, 'editable' : false, 'render' : function(my) { return my.au.alert_message(); }
 		},
 		{ 
 			'persist' : 'hidden width ordinal', 'id' : 'claims_returned_count', 'label' : commonStrings.getString('staff.au_claims_returned_count_label'), 'flex' : 1, 
-			'primary' : false, 'hidden' : true, 'render' : function(my) { return my.au.claims_returned_count(); },
+			'primary' : false, 'hidden' : true, 'editable' : false, 'render' : function(my) { return my.au.claims_returned_count(); },
 			'sort_type' : 'number'
 		},
 		{ 
 			'persist' : 'hidden width ordinal', 'id' : 'create_date', 'label' : commonStrings.getString('staff.au_create_date_label'), 'flex' : 1, 
-			'primary' : false, 'hidden' : true, 'render' : function(my) { return my.au.create_date(); }
+			'primary' : false, 'hidden' : true, 'editable' : false, 'render' : function(my) { return my.au.create_date(); }
 		},
 		{ 
 			'persist' : 'hidden width ordinal', 'id' : 'expire_date', 'label' : commonStrings.getString('staff.au_expire_date_label'), 'flex' : 1, 
-			'primary' : false, 'hidden' : true, 'render' : function(my) { return my.au.expire_date().substr(0,10); }
+			'primary' : false, 'hidden' : true, 'editable' : false, 'render' : function(my) { return my.au.expire_date().substr(0,10); }
 		},
 		{ 
 			'persist' : 'hidden width ordinal', 'id' : 'home_ou', 'label' : commonStrings.getString('staff.au_home_library_label'), 'flex' : 1, 
-			'primary' : false, 'hidden' : true, 'render' : function(my) { return data.hash.aou[ my.au.home_ou() ].shortname(); }
+			'primary' : false, 'hidden' : true, 'editable' : false, 'render' : function(my) { return data.hash.aou[ my.au.home_ou() ].shortname(); }
 		},
 		{ 
 			'persist' : 'hidden width ordinal', 'id' : 'home_ou_fullname', 'label' : commonStrings.getString('staff.au_home_library_fullname_label'), 'flex' : 1, 
-			'primary' : false, 'hidden' : true, 'render' : function(my) { return data.hash.aou[ my.au.home_ou() ].name(); }
+			'primary' : false, 'hidden' : true, 'editable' : false, 'render' : function(my) { return data.hash.aou[ my.au.home_ou() ].name(); }
 		},
 		{ 
 			'persist' : 'hidden width ordinal', 'id' : 'credit_forward_balance', 'label' : commonStrings.getString('staff.au_credit_forward_balance_label'), 'flex' : 1, 
-			'primary' : false, 'hidden' : true, 'render' : function(my) { return my.au.credit_forward_balance(); },
+			'primary' : false, 'hidden' : true, 'editable' : false, 'render' : function(my) { return my.au.credit_forward_balance(); },
 			'sort_type' : 'money'
 		},
 		{ 
 			'persist' : 'hidden width ordinal', 'id' : 'day_phone', 'label' : commonStrings.getString('staff.au_day_phone_label'), 'flex' : 1, 
-			'primary' : false, 'hidden' : true, 'render' : function(my) { return my.au.day_phone(); }
+			'primary' : false, 'hidden' : true, 'editable' : false, 'render' : function(my) { return my.au.day_phone(); }
 		},
 		{ 
 			'persist' : 'hidden width ordinal', 'id' : 'evening_phone', 'label' : commonStrings.getString('staff.au_evening_phone_label'), 'flex' : 1, 
-			'primary' : false, 'hidden' : true, 'render' : function(my) { return my.au.evening_phone(); }
+			'primary' : false, 'hidden' : true, 'editable' : false, 'render' : function(my) { return my.au.evening_phone(); }
 		},
 		{ 
 			'persist' : 'hidden width ordinal', 'id' : 'other_phone', 'label' : commonStrings.getString('staff.au_other_phone_label'), 'flex' : 1, 
-			'primary' : false, 'hidden' : true, 'render' : function(my) { return my.au.other_phone(); }
+			'primary' : false, 'hidden' : true, 'editable' : false, 'render' : function(my) { return my.au.other_phone(); }
 		},
 		{ 
 			'persist' : 'hidden width ordinal', 'id' : 'email', 'label' : commonStrings.getString('staff.au_email_label'), 'flex' : 1, 
-			'primary' : false, 'hidden' : true, 'render' : function(my) { return my.au.email(); }
+			'primary' : false, 'hidden' : true, 'editable' : false, 'render' : function(my) { return my.au.email(); }
 		},
 		{ 
 			'persist' : 'hidden width ordinal', 'id' : 'alias', 'label' : commonStrings.getString('staff.au_alias_label'), 'flex' : 1, 
-			'primary' : false, 'hidden' : true, 'render' : function(my) { return my.au.alias(); }
+			'primary' : false, 'hidden' : true, 'editable' : false, 'render' : function(my) { return my.au.alias(); }
 		},
 		{ 
 			'persist' : 'hidden width ordinal', 'id' : 'dob', 'label' : commonStrings.getString('staff.au_birth_date_label'), 'flex' : 1, 
-			'primary' : false, 'hidden' : true, 'render' : function(my) { return my.au.dob().substr(0,10); }
+			'primary' : false, 'hidden' : true, 'editable' : false, 'render' : function(my) { return my.au.dob().substr(0,10); }
 		},
 		{ 
 			'persist' : 'hidden width ordinal', 'id' : 'ident_type', 'label' : commonStrings.getString('staff.au_ident_type_label'), 'flex' : 1, 
-			'primary' : false, 'hidden' : true, 'render' : function(my) { return data.hash.cit[ my.au.ident_type() ].name(); }
+			'primary' : false, 'hidden' : true, 'editable' : false, 'render' : function(my) { return data.hash.cit[ my.au.ident_type() ].name(); }
 		},
 		{ 
 			'persist' : 'hidden width ordinal', 'id' : 'ident_value', 'label' : commonStrings.getString('staff.au_ident_value_label'), 'flex' : 1, 
-			'primary' : false, 'hidden' : true, 'render' : function(my) { return my.au.ident_value(); }
+			'primary' : false, 'hidden' : true, 'editable' : false, 'render' : function(my) { return my.au.ident_value(); }
 		},
 		{ 
 			'persist' : 'hidden width ordinal', 'id' : 'ident_type2', 'label' : commonStrings.getString('staff.au_ident_type2_label'), 'flex' : 1, 
-			'primary' : false, 'hidden' : true, 'render' : function(my) { return data.hash.cit[ my.au.ident_type2() ].name(); }
+			'primary' : false, 'hidden' : true, 'editable' : false, 'render' : function(my) { return data.hash.cit[ my.au.ident_type2() ].name(); }
 		},
 		{ 
 			'persist' : 'hidden width ordinal', 'id' : 'ident_value2', 'label' : commonStrings.getString('staff.au_ident_value2_label'), 'flex' : 1, 
-			'primary' : false, 'hidden' : true, 'render' : function(my) { return my.au.ident_value2(); }
+			'primary' : false, 'hidden' : true, 'editable' : false, 'render' : function(my) { return my.au.ident_value2(); }
 		},
 		{ 
 			'persist' : 'hidden width ordinal', 'id' : 'net_access_level', 'label' : commonStrings.getString('staff.au_net_access_level_label'), 'flex' : 1, 
-			'primary' : false, 'hidden' : true, 'render' : function(my) { return my.au.net_access_level(); }
+			'primary' : false, 'hidden' : true, 'editable' : false, 'render' : function(my) { return my.au.net_access_level(); }
 		},
 		{ 
 			'persist' : 'hidden width ordinal', 'id' : 'master_account', 'label' : commonStrings.getString('staff.au_master_account_label'), 'flex' : 1, 
-			'primary' : false, 'hidden' : true, 'render' : function(my) { return get_bool( my.au.master_account() ) ? "Yes" : "No"; }
+			'primary' : false, 'hidden' : true, 'editable' : false, 'render' : function(my) { return get_bool( my.au.master_account() ) ? "Yes" : "No"; }
 		},
 		{ 
 			'persist' : 'hidden width ordinal', 'id' : 'usrgroup', 'label' : commonStrings.getString('staff.au_group_id_label'), 'flex' : 1, 
-			'primary' : false, 'hidden' : true, 'render' : function(my) { return my.au.usrgroup(); }
+			'primary' : false, 'hidden' : true, 'editable' : false, 'render' : function(my) { return my.au.usrgroup(); }
 		},
 	];
 	for (var i = 0; i < c.length; i++) {

Modified: trunk/Open-ILS/xul/staff_client/server/skin/global.css
===================================================================
--- trunk/Open-ILS/xul/staff_client/server/skin/global.css	2009-10-13 05:23:44 UTC (rev 14390)
+++ trunk/Open-ILS/xul/staff_client/server/skin/global.css	2009-10-13 05:23:45 UTC (rev 14391)
@@ -6,6 +6,11 @@
 messagecatalog { -moz-binding: url('/xul/server/main/bindings.xml#messagecatalog'); }
 .shrinkable_groupbox { font-weight: bold; -moz-binding: url('/xul/server/main/bindings.xml#caption'); }
 
+treechildren::-moz-tree-checkbox(checked) {
+    /* css for checked cells */
+    list-style-image: url("chrome://global/skin/checkbox/cbox-check.gif");
+}
+
 /*
 * { font-size-adjust: .5; }
 */



More information about the open-ils-commits mailing list