Believe these have been replaced by ue.xhtml and family
authorphasefx <phasefx@dcc99617-32d9-48b4-a31d-7c20da2025e4>
Fri, 7 Mar 2008 21:44:59 +0000 (21:44 +0000)
committerphasefx <phasefx@dcc99617-32d9-48b4-a31d-7c20da2025e4>
Fri, 7 Mar 2008 21:44:59 +0000 (21:44 +0000)
git-svn-id: svn://svn.open-ils.org/ILS/trunk@8909 dcc99617-32d9-48b4-a31d-7c20da2025e4

Open-ILS/xul/staff_client/server/patron/user_editor.js [deleted file]
Open-ILS/xul/staff_client/server/patron/user_editor.xhtml [deleted file]

diff --git a/Open-ILS/xul/staff_client/server/patron/user_editor.js b/Open-ILS/xul/staff_client/server/patron/user_editor.js
deleted file mode 100644 (file)
index 8127b32..0000000
+++ /dev/null
@@ -1,1170 +0,0 @@
-
-var cgi                                                        = null;
-var patron                                             = null;
-var advanced                                   = false;
-var SC_FETCH_ALL                               = 'open-ils.circ:open-ils.circ.stat_cat.actor.retrieve.all';
-var SC_CREATE_MAP                              = 'open-ils.circ:open-ils.circ.stat_cat.actor.user_map.create';
-var SV_FETCH_ALL                               = 'open-ils.circ:open-ils.circ.survey.retrieve.all';
-var FETCH_ID_TYPES                     = 'open-ils.actor:open-ils.actor.user.ident_types.retrieve';
-var FETCH_GROUPS                               = 'open-ils.actor:open-ils.actor.groups.tree.retrieve';
-var UPDATE_PATRON                              = 'open-ils.actor:open-ils.actor.patron.update';
-var identTypes                                 = {};
-var groupTree                                  = null;
-var cachedSurveys                              = {};
-var cachedSurveyQuestions      = {};
-var cachedSurveyAnswers                = {};
-var ERRORS                                             = ""; /* global set of errors */
-var cachedStatCats                     = {};
-var deletedStatCats                    = {};
-var cachedAddresses                    = {};
-var deletedAddresses                   = {};
-var defaultState                               = 'GA';
-
-/* if they don't have these perms, they shouldn't be here */
-//var myPerms = [ 'CREATE_USER', 'UPDATE_USER', 'CREATE_PATRON_STAT_CAT_ENTRY_MAP' ];
-
-var pages              = [ 
-       'uedit_userid', 
-       'uedit_contact_info', 
-       'uedit_addresses', 
-       'uedit_groups', 
-       'uedit_stat_cats', 
-       'uedit_surveys',
-       'uedit_finalize',
-       ];
-
-/* ID's of objects that should be focused when their page is made visible */
-var pageFocus  = [
-       'ue_barcode',
-       'ue_email1',
-       'ue_addr_label_1',
-       'ue_profile',
-       'ue_stat_cat_selector_1',
-       'ue_survey_selector_1',
-       'ue_view_summary'
-];
-
-var regexes            = {};
-regexes.phone  = /\d{3}-\d{3}-\d{4}/;
-regexes.email  = /.+\@.+\..+/;
-regexes.date   = /^\d{4}-\d{2}-\d{2}/;
-regexes.isnum  = /^\d+$/;
-
-
-/* fetch the necessary data to start off */
-function uEditInit() {
-
-       cgi             = new CGI();
-       session = cgi.param('ses');
-       if(cgi.param('adv')) advanced = true 
-       if(!session) throw "User session is not defined";
-
-
-       fetchUser(session);
-       $('uedit_user').appendChild(text(USER.usrname()));
-       uEditShowPage('uedit_userid');
-
-       setTimeout( 
-               function() { 
-
-                       /* these can be asynch */
-                       /*fetchHighestPermOrgs( SESSION, USER.id(), myPerms );*/
-                       uEditFetchSurveys();
-
-                       /* these have to be synchronous */
-                       uEditBuildLibSelector();
-                       uEditFetchIDTypes();
-                       uEditBuildAddrs();
-                       uEditFetchGroups();
-                       uEditFetchStatCats();
-
-                       uEditDrawUser(fetchFleshedUser(cgi.param('usr')));
-
-               }, 20 
-       );
-}
-
-/* UI code ---------------------------------------------------- */
-
-function uEditNext() {
-       var i = _findActive();
-       if( i < (pages.length - 1)) uEditShowPage(pages[i+1]);
-}
-
-function uEditPrev() {
-       var i = _findActive();
-       if( i > 0 ) uEditShowPage(pages[i-1]);
-}
-
-function uEditFetchError(id) { if($(id)) return $(id).innerHTML + "\n"; return "";}
-
-function uEditShowPage(id) {
-       if( id == null ) return;
-
-       for( var p in pages ) {
-               var page = pages[p];
-               hideMe($(page));
-               removeCSSClass($(page+'_label'), 'label_active');
-       }
-
-       unHideMe($(id));
-       addCSSClass($(id+'_label'), 'label_active');
-       var idx = _findPageIdx(id);
-       var fpage = pageFocus[idx];
-       if(fpage) { $(fpage).focus(); try{$(fpage).select()}catch(e){} }
-
-       unHideMe($('ue_back'));
-       unHideMe($('ue_fwd'));
-
-       if(idx == 0) hideMe($('ue_back'));
-       if(idx == (pages.length-1)) hideMe($('ue_fwd'));
-}
-
-
-function _findActive() {
-       for( var p in pages ) {
-               if(! $(pages[p]).className.match(/hide_me/) )
-                       return parseInt(p);
-       }
-       return null;
-}
-function _findPageIdx(name) {
-       for( var i in pages ) {
-               var page = pages[i];
-               if( page == name ) return i;
-       }
-       return -1;
-}
-
-function uEditAddrHighlight( node, type ) {
-       var tbody = $('ue_address_tbody');
-       for( var c in tbody.childNodes ) {
-               var row = tbody.childNodes[c];
-               if(row.nodeType != XML_ELEMENT_NODE ) continue;
-               var div = $n(row,'ue_addr_'+type+'_yes').parentNode;
-               removeCSSClass(div, 'addr_info_checked');
-       }
-       addCSSClass(node.parentNode, 'addr_info_checked');
-}
-
-
-/* ------------------------------------------------------------------------------ */
-/* Fetch code
-/* ------------------------------------------------------------------------------ */
-function uEditFetchIDTypes() {
-       var req = new Request(FETCH_ID_TYPES);
-       req.send(true);
-       uEditDrawIDTypes(req.request);
-}
-
-function uEditFetchStatCats() {
-       var req = new Request(SC_FETCH_ALL, SESSION);
-       req.send(true);
-       uEditDrawStatCats(req.request);
-}
-
-function uEditFetchSurveys() {
-       var req = new Request(SV_FETCH_ALL, SESSION);
-       req.callback(uEditDrawSurveys);
-       req.send();
-}
-
-
-/* ------------------------------------------------------------------------------ */
-/* Save the user
-/* ------------------------------------------------------------------------------ */
-var uEditExistingStatEntries;
-var uEditExistingSurveyResponses;
-
-function uEditSaveUser() {
-       uEditCollectData();
-
-       if(ERRORS) { 
-               alert(ERRORS); 
-               ERRORS = ""; 
-               return;
-       }
-
-       //alert(js2JSON(patron));
-       //return;
-
-       var req = new Request(UPDATE_PATRON, SESSION, patron);
-       req.send(true);
-       var result = req.result();
-       if( checkILSEvent(result) ) alert(js2JSON(result));
-       else alert($('ue_success').innerHTML);
-
-       if (window.xulG && typeof window.xulG.save == 'function') {
-               window.xulG.on_save(patron); 
-       }
-}
-
-function uEditCollectData() {
-
-       var card        = null;
-
-       if(patron == null) { 
-               patron = new au(); 
-               patron.isnew(1);
-               patron.id(-1);
-               card = new ac();
-               patron.card(-1); /* attach to the virtual id of the card */
-               patron.cards([card]);
-
-       } else { 
-
-               /* if this function is called again, patron will exist */
-               if(!patron.isnew()) { 
-                       patron.ischanged(1); 
-                       patron.isnew(0);
-                       if(!uEditExistingStatEntries)
-                               uEditExistingStatEntries = patron.stat_cat_entries();
-                       if(!uEditExistingSurveyResponses)
-                               uEditExistingSurveyResponses = patron.survey_responses();
-               }
-       }
-
-       patron.stat_cat_entries([]);
-       patron.survey_responses([]);
-
-       uEditFleshCard(card);
-       uEditAddBasicPatronInfo(patron);
-       uEditAddPhones(patron);
-       uEditAddIdents(patron);
-       uEditAddAddresses(patron);
-       uEditAddGroupsAndPerms(patron);
-       uEditReapStatCats(patron);
-       uEditReapSurveys(patron);
-
-}
-
-
-
-/* ------------------------------------------------------------------------------ */
-/* Draw the user
-/* ------------------------------------------------------------------------------ */
-function uEditDrawUser(p) {
-
-       hideMe($('uedit_loading'));
-       unHideMe($('ue_maintd'));
-
-       if(!p) return;
-       patron = p;
-
-       $('ue_barcode').value                   = patron.card().barcode();
-       $('ue_username').value                  = patron.usrname();
-       $('ue_firstname').value                 = patron.first_given_name();
-       $('ue_middlename').value                = patron.second_given_name();
-       $('ue_lastname').value                  = patron.family_name();
-       $('ue_suffix').value                            = patron.suffix();
-       $('ue_dob').value                                       = patron.dob();
-       $('ue_primary_ident').value     = patron.ident_value();
-       $('ue_secondary_ident').value   = patron.ident_value2();
-       $('ue_email1').value                            = patron.email();
-       $('ue_expire').value                            = patron.expire_date();
-       $('ue_active').value                            = patron.active();
-       $('ue_barred').value                            = patron.barred();
-       $('ue_claims_returned').value   = patron.claims_returned_count();
-       $('ue_alert_message').value     = patron.alert_message();
-
-       setSelector( $('ue_primary_ident_type'), patron.ident_type() );
-       setSelector( $('ue_secondary_ident_type'), patron.ident_type2() );
-       setSelector( $('ue_org_selector'), patron.home_ou() );
-       setSelector( $('ue_profile'), patron.profile() );
-       
-       /* flesh out the phone numbers ------------------------- */
-       var dp = patron.day_phone();
-       var np = patron.evening_phone();
-       var op = patron.other_phone();
-
-       if(dp) {
-               var daynums = String(dp).split('-');
-               $('ue_day_phone_area').value            = daynums[0] || '';
-               $('ue_day_phone_prefix').value  = daynums[1] || '';
-               $('ue_day_phone_suffix').value  = daynums[2] || '';
-       }
-
-       if(np) {
-               var nightnums = String(np).split('-');
-               $('ue_night_phone_area').value  = nightnums[0] || '';
-               $('ue_night_phone_prefix').value        = nightnums[1] || '';
-               $('ue_night_phone_suffix').value        = nightnums[2] || '';
-       }
-
-       if(op) {
-               var othernums = String(op).split('-');
-               $('ue_other_phone_area').value  = othernums[0] || '';
-               $('ue_other_phone_prefix').value        = othernums[1] || '';
-               $('ue_other_phone_suffix').value        = othernums[2] || '';
-       }
-
-
-       /* Flesh the addresses ------------------------------------ */
-       var i = 0;
-       var tbody = $('ue_address_tbody');      
-       for( var i = 0; i != patron.addresses().length; i++ ) {
-               var addr = patron.addresses()[i];
-               cachedAddresses[addr.id()] = addr;
-
-               var row;
-               if( i == 0 ) row = getElementsByTagNameFlat(tbody, 'tr')[0];
-               else row = $('ue_address_new').onclick(); /* create a new row if necessary */
-
-               row.setAttribute('exists', addr.id() );
-
-               if( patron.mailing_address().id() == addr.id())
-                       $n(row, 'ue_addr_mailing_yes').checked = true;
-
-               if( patron.billing_address().id() == addr.id())
-                       $n(row, 'ue_addr_billing_yes').checked = true;
-               
-               if( addr.valid() ) $n(row, 'ue_addr_valid_yes').checked = true;
-
-       
-               $n(row, 'ue_addr_label').value  = addr.address_type();
-               $n(row, 'ue_addr_street1').value        = addr.street1();
-               $n(row, 'ue_addr_street2').value = addr.street2();
-               $n(row, 'ue_addr_city').value           = addr.city();
-               $n(row, 'ue_addr_county').value = addr.county();
-               $n(row, 'ue_addr_state').value  = addr.state();
-               $n(row, 'ue_addr_zip').value            = addr.post_code();
-               $n(row, 'ue_addr_country').value        = addr.country();
-
-       }
-
-       var stattbody = $('ue_stat_cat_tbody');
-       for( var m in patron.stat_cat_entries() ) {
-               var map = patron.stat_cat_entries()[m];
-               var row = grep( getElementsByTagNameFlat( stattbody, 'tr' ), 
-                       function(a) { return a.getAttribute('statcat') == map.stat_cat() })[0];
-               $n(row, 'ue_stat_cat_newval').value = map.stat_cat_entry();
-               setSelectorByName( $n(row, 'ue_stat_cat_selector'), map.stat_cat_entry() );
-       }
-}
-
-
-
-
-
-/* ------------------------------------------------------------------------------ */
-/* Draw the ID types
-/* ------------------------------------------------------------------------------ */
-function uEditDrawIDTypes(r) {
-
-       var types       = r.getResultObject();
-       var pri_sel = $('ue_primary_ident_type');
-       var sec_sel = $('ue_secondary_ident_type');
-
-       var idx = 1;
-       for( var t in types ) {
-               var type = types[t];
-               identTypes[type.id()] = type;
-
-               var action = function() {
-                       unHideMe($('ue_primary_ident'));
-                       hideMe($('ue_primary_ident_dl'));
-                       hideMe($('ue_primary_ident_ssn'));
-                       $('ue_primary_ident').focus();
-               }
-
-               if( type.name().match(/ssn/i) ) 
-                       action = function() {
-                               hideMe($('ue_primary_ident'));
-                               hideMe($('ue_primary_ident_dl'));
-                               unHideMe($('ue_primary_ident_ssn'));
-                               $('ue_primary_ident_ssn_1').focus();
-                       }
-
-               if( type.name().match(/driver/i) ) 
-                       action = function() {
-                               hideMe($('ue_primary_ident'));
-                               unHideMe($('ue_primary_ident_dl'));
-                               hideMe($('ue_primary_ident_ssn'));
-                               $('ue_primary_ident_dl_state').value = defaultState;
-                               $('ue_primary_ident_dl_val').focus();
-                       }
-
-               setSelectorVal( pri_sel, idx, type.name(), type.id(), action );
-
-               if(patron && patron.ident_type() != null ) 
-                       setSelector( pri_sel, patron.ident_type() );
-
-
-               action = function() {
-                       unHideMe($('ue_secondary_ident'));
-                       hideMe($('ue_secondary_ident_dl'));
-                       hideMe($('ue_secondary_ident_ssn'));
-                       $('ue_secondary_ident').focus();
-               }
-
-               if( type.name().match(/ssn/i) ) 
-                       action = function() {
-                               hideMe($('ue_secondary_ident'));
-                               hideMe($('ue_secondary_ident_dl'));
-                               unHideMe($('ue_secondary_ident_ssn'));
-                               $('ue_secondary_ident_ssn_1').focus();
-                       }
-
-               if( type.name().match(/driver/i) ) 
-                       action = function() {
-                               hideMe($('ue_secondary_ident'));
-                               unHideMe($('ue_secondary_ident_dl'));
-                               hideMe($('ue_secondary_ident_ssn'));
-                               $('ue_secondary_ident_dl_state').value = defaultState;
-                               $('ue_secondary_ident_dl_val').focus();
-                       }
-
-
-               setSelectorVal( sec_sel, idx++, type.name(), type.id(), action );
-
-               if(patron && patron.ident_type2() != null ) 
-                       setSelector( sec_sel, patron.ident_type2() );
-       }
-}
-
-
-
-/* ------------------------------------------------------------------------------ */
-/* Stat Cat handling code
-/* ------------------------------------------------------------------------------ */
-function uEditDrawStatCats(r) {
-       var cats = r.getResultObject();
-       var tbody = $('ue_stat_cat_tbody');
-       var templ = tbody.removeChild($('ue_stat_cat_row'));
-
-       for( var c in cats ) {
-               var row = templ.cloneNode(true);
-               uEditInsertCat( tbody, row, cats[c], c );
-               tbody.appendChild(row);
-       }
-}
-
-/* fleshes the stat cat with entries in the dropdown */
-function uEditInsertCat( tbody, row, cat, idx ) {
-
-       cat.entries().sort(  /* sort the entries by value */
-               function( a, b ) { 
-                       if( a.value().toLowerCase() > b.value().toLowerCase()) return 1;
-                       if( a.value().toLowerCase() < b.value().toLowerCase()) return -1;
-                       return 0;
-               }
-       );
-
-       cachedStatCats[cat.id()] = cat;
-
-       row.setAttribute('statcat', cat.id());
-       var newval = $n(row, 'ue_stat_cat_newval');
-       newval.onchange = function(){ 
-               findParentByNodeName(newval,'tr').setAttribute('changed', '1'); }
-
-       var selector = $n(row, 'ue_stat_cat_selector');
-       selector.onchange = function(){ 
-               findParentByNodeName(selector, 'tr').setAttribute('changed', '1'); 
-               newval.value = getSelectorName(selector);
-               newval.setAttribute('entry', getSelectorVal(selector));
-       }
-
-       if( idx == 0 ) selector.id = 'ue_stat_cat_selector_1'; 
-
-       $n(row, 'ue_stat_cat_name').appendChild(text(cat.name()));
-       $n(row, 'ue_stat_cat_owner').appendChild(
-               text(fetchOrgUnit(cat.owner()).shortname()));
-
-       var idx = 1;
-       for( var e in cat.entries() ) {
-               var entry = cat.entries()[e];
-               setSelectorVal( selector, idx++, entry.value(), entry.id() );
-       }
-}
-
-/* finds all the changed/new stat entries and updates the patron object*/
-function uEditReapStatCats(patron) {
-   var tbody = $('ue_stat_cat_tbody');
-       for( var r in tbody.childNodes ) {
-               var row = tbody.childNodes[r];
-               if( !row || row.nodeName != 'tr' ) continue;
-               if( row.getAttribute('changed') ) {
-                       var val = $n( row, 'ue_stat_cat_newval' );
-                       uEditCreateStatMap( patron, row.getAttribute('statcat'), 
-                               val.value, val.getAttribute('entry') );
-               }
-       }
-}
-
-
-function uEditCreateStatMap( patron, catid, newval, entryid ) {
-
-       if( ! patron.isnew() ) {
-
-               /* if the patron exists and we're editing an entry that's 
-               already been created for this user... */
-               for( var m in uEditExistingStatEntries ) {
-                       var map = uEditExistingStatEntries[m];
-                       if( map.stat_cat() == catid ) {
-                               if( newval ) map.ischanged(1);
-                               else map.isdeleted(1); 
-                               patron.stat_cat_entries().push(map);
-                               return;
-                       }
-               }
-       }
-
-       var map = new actscecm();
-       map.isnew(1);
-       map.stat_cat_entry(newval);
-       map.stat_cat(catid);
-       map.target_usr(patron.id());
-       patron.stat_cat_entries().push(map);
-}
-
-
-
-/* ------------------------------------------------------------------------------ */
-/* Survey handling code
-/* ------------------------------------------------------------------------------ */
-function uEditDrawSurveys(r) {
-
-       var surveys = r.getResultObject();
-       var div = $('uedit_surveys');
-       var table = div.removeChild($('ue_survey_table'));
-
-       var x = 0;
-       for( var s in surveys ) {
-               var survey = surveys[s];
-               cachedSurveys[survey.id()] = survey;
-               var clone = table.cloneNode(true);
-               uEditInsertSurvey( div, clone, survey, x++ );
-               div.appendChild(clone);
-       }
-}
-
-function uEditInsertSurvey( div, table, survey, sidx ) {
-       $n(table, 'ue_survey_name').appendChild(text(survey.name()));
-       $n(table, 'ue_survey_desc').appendChild(text(survey.description()));
-       var tbody = $n(table, 'ue_survey_tbody');
-       var templ = tbody.removeChild($n(table, 'ue_survey_row'));
-
-       var polldiv             = $('ue_survey_answer_poll');
-
-       var idx = 1;
-       for( var q in survey.questions() ) {
-               var row = templ.cloneNode(true);
-               var quest = survey.questions()[q];
-               cachedSurveyQuestions[quest.id()] = quest;
-               uEditInsertSurveyQuestion( div, table, tbody, row, survey, quest, sidx );
-               tbody.appendChild(row);
-       }
-}
-
-function uEditInsertSurveyQuestion( div, table, tbody, row, survey, question, sidx ) {
-
-       $n(row, 'ue_survey_question').appendChild(text(question.question()));
-
-       var selector    = $n(row, 'ue_survey_answer');
-       var polldiv             = $n(row, 'ue_survey_answer_poll');
-       var idx                 = 1;
-       var polltbody   = $n(row, 'ue_survey_answer_poll_tbody');
-       var pollrow             = polltbody.removeChild($n(polltbody, 'ue_survey_answer_poll_row'));
-
-       table.setAttribute('survey', survey.id());
-       row.setAttribute('question', question.id());
-
-       selector.onchange = function() {
-               row.setAttribute('answer', getSelectorVal(selector));
-               row.setAttribute('changed', '1');
-       }
-
-       if( sidx == 0 ) selector.id = 'ue_survey_selector_1'; 
-
-       for( var a in question.answers() ) {
-
-               var answer = question.answers()[a];
-               cachedSurveyAnswers[answer.id()] = answer;
-
-               if( survey.poll() ) {
-
-                       unHideMe(polldiv);
-                       var prow = pollrow.cloneNode(true);
-
-
-                       $n(prow, 'ue_survey_answer_poll_answer').appendChild(text(answer.answer()));
-
-
-                       var input = elem('input', { 
-                                       type    : 'radio', 
-                                       name    : 'survey_poll_answer_'+survey.id(),
-                                       id              :  answer.id()
-                               });
-
-                       input.onchange  = function() {
-                               row.setAttribute('answer', answer.id());
-                               row.setAttribute('changed', '1');
-                       }
-
-                       $n(prow, 'ue_survey_answer_poll_radio').appendChild(input);
-                       polltbody.appendChild(prow);
-
-               } else {
-
-                       unHideMe(selector.parentNode);
-                       setSelectorVal( selector, idx++, answer.answer(), answer.id() );
-               }
-       }
-}
-
-
-function uEditReapSurveys(patron) {
-
-       var div = $('uedit_surveys');
-       var tables = getElementsByTagNameFlat(div, 'table');
-
-       for( var t in tables ) {
-
-               var table               = tables[t];
-               var survey              = cachedSurveys[table.getAttribute('survey')];
-               var tbody               = getElementsByTagNameFlat( table, 'tbody' )[0];
-               var rows                        = getElementsByTagNameFlat( tbody, 'tr' );
-
-               for( var r in rows ) {
-                       var row = rows[r];
-                       if(!row.getAttribute('changed')) continue;
-
-                       var resp        = new asvr();
-                       resp.isnew(1);
-                       resp.survey(survey.id());
-                       resp.usr(patron.id());
-                       resp.question(row.getAttribute('question'));
-                       resp.answer(row.getAttribute('answer'));
-                       patron.survey_responses().push( resp );
-               }
-       }
-}
-
-
-
-
-
-
-/* returns true if an error occurred */
-function uEditSetVal( obj, func, val, regxtype, errtype ) {
-
-       var error = uEditFetchError(errtype);
-       var iserr = false;
-
-       while(1) {
-
-               if( val == null ) { iserr = true; break; }
-
-               if(!instanceOf(val, String)) {
-                       try { val = val.value; } catch(e) { return; }
-               }
-
-               if(val == "" ) { iserr = true; break; }
-
-               if(regxtype && regexes[regxtype] 
-                       && !val.match(regexes[regxtype]) ) { iserr = true; break; }
-
-               try { obj[func](val); } catch(e) {
-                       alert("Error running function: " +func);
-               }
-
-               break;
-       }
-
-       if(iserr) { ERRORS += error; return true; }
-       return false;
-}
-
-
-function uEditAddBasicPatronInfo(patron) {
-
-
-
-       /* make sure passwords match */
-       var p1 = $('ue_password1').value;
-       var p2 = $('ue_password1').value;
-
-       if( p1 || patron.isnew() ) { /* existing patrons will have a blank password */
-               if( p1 != p2 || uEditSetVal( patron, "passwd", p1 )) 
-                       ERRORS += uEditFetchError('ue_bad_password');
-       }
-       
-       uEditSetVal(patron, "usrname", $('ue_username'), null, 'ue_bad_username' );
-       uEditSetVal(patron, "first_given_name", $('ue_firstname'), null, 'ue_bad_firstname' );
-       uEditSetVal(patron, "family_name", $('ue_lastname'), null, 'ue_bad_lastname' ); 
-       uEditSetVal(patron, "dob", $('ue_dob'), 'date', 'ue_bad_dob' );
-
-       patron.second_given_name($('ue_middlename').value);
-       patron.suffix($('ue_suffix').value); /* suffis isn't required */
-
-       patron.email($('ue_email1').value);
-       patron.home_ou(getSelectorVal($('ue_org_selector')));
-}
-
-function uEditAddPhones(patron) {
-
-       /* verifies the phone numbers are formatted correctly */
-       var verify = function(n1, n2, n3) {
-               if(!(a || p||s) ) return null;
-               var a = n1.value;
-               var p = n2.value;
-               var s = n3.value;
-               if( !a || !p || !s ) return false;
-               return a + '-' + p + '-' + s;
-       }
-
-       var er = 'ue_bad_phone'
-
-       var r1 = verify($('ue_day_phone_area'), $('ue_day_phone_prefix'),$('ue_day_phone_suffix'));
-       var r2 = verify($('ue_night_phone_area'), $('ue_night_phone_prefix'),$('ue_night_phone_suffix'));
-       var r3 = verify($('ue_other_phone_area'), $('ue_other_phone_prefix'),$('ue_other_phone_suffix'));
-
-       if(r1 != null) 
-               uEditSetVal( patron, "day_phone", r1, 'phone', er);
-
-       if(r2 != null) 
-               uEditSetVal( patron, "evening_phone", r2, 'phone', er);
-
-       if(r3 != null) 
-               uEditSetVal( patron, "other_phone", r3, 'phone', er);
-}
-
-function uEditFleshCard(card) {
-       if(!card) return "";
-
-       if(uEditSetVal( card, "barcode", $('ue_barcode'), null, 'ue_bad_barcode' ))
-               return; 
-
-       card.id(-1);
-       card.active(1);
-       card.isnew(1);
-       return "";
-}
-
-function uEditParseIdent(type, required) {
-       var err = 'ue_no_ident';
-       var error = [null, null, uEditFetchError(err)];
-       var selector = $('ue_' + type + '_ident_type');
-       var tname = getSelectorName(selector);
-       var tval = getSelectorVal(selector);
-       var val = "";
-
-       if( tname.match(/ssn/i) ) {
-               var ssn1 = $('ue_'+type+'_ident_ssn_1').value;
-               var ssn2 = $('ue_'+type+'_ident_ssn_2').value;
-               var ssn3 = $('ue_'+type+'_ident_ssn_3').value;
-
-               if(!(ssn1 && ssn2 && ssn3)) return error;
-               if(!ssn1.match(/^\d{3}$/)) return error;
-               if(!ssn2.match(/^\d{2}$/)) return error;
-               if(!ssn3.match(/^\d{4}$/)) return error;
-               val = ssn1+'-'+ssn2+'-'+ssn3;
-
-       } else if( tname.match(/driver/i) ) {
-               var state = $('ue_'+type+'_ident_dl_state').value;
-               var dlval = $('ue_'+type+'_ident_dl_val').value;
-               if(!(state && dlval)) return error;
-               val = state+'-'+dlval;
-
-       } else {
-               val = $('ue_'+type+'_ident').value;
-               if(!val) return error;
-       }
-
-       return [ tval, val ];
-}
-
-function uEditAddIdents(patron) {
-
-
-       /*
-       uEditSetVal( patron, "ident_type", 
-               getSelectorVal($('ue_primary_ident_type')), 'isnum', err );
-       uEditSetVal( patron, "ident_value", $('ue_primary_ident'), null, err );
-       */
-
-       //FIXME - I think this file is deprecated, but there's this syntax error sitting here 
-       //var identdata = uEditParseIdent(
-
-       var it1 = getSelectorVal($('ue_primary_ident_type'));
-       var name = getSelectorName($('ue_primary_ident_type'));
-
-       if(it1 && it1.match(regexes['isnum'])) {
-               patron.ident_type(it1);
-               if( name.match(/ssn/i) ) {
-                       var ssn1 = $('ue_secondary_ident_ssn_1');
-               } else if( name.match(/driver/i) ) {
-
-               } else {
-
-               }
-
-               var val = $('ue_primary_ident').value;
-               if(val) {
-                       patron.ident_value(val);
-               } else {
-                       if($('ue_primary_ident_verified')) {
-                               patron.ident_value("");
-                       } else {
-                               ERRORS += error;
-                       }
-               }
-       } else {
-               ERRORS += error;
-       }
-
-
-
-
-       var val = getSelectorVal($('ue_secondary_ident_type'));
-       if( val && val.match(/^\d+$/) ) {
-               patron.ident_type2(getSelectorVal($('ue_secondary_ident_type')));
-               patron.ident_value2($('ue_secondary_ident').value);
-       } else {
-               patron.ident_type2(null);
-               patron.ident_value2(null);
-       }
-}
-
-
-function uEditBuildLibSelector( node, depth, selector ) {
-       if(!selector) selector = $('ue_org_selector');
-       if(!node) { depth = 0; node = globalOrgTree; }
-       
-       var opt = insertSelectorVal( selector, -1, node.name(), node.id(), null, depth++ );
-
-       /* allow these orgs to be selectable via permission? */
-       if(!findOrgType(node.ou_type()).can_have_vols()) opt.disabled = true; 
-
-       if( node.id() == USER.home_ou() ) setSelector(selector, node.id());
-       for( var c in node.children() ) 
-               uEditBuildLibSelector(node.children()[c], depth, selector);
-}
-
-function uEditFetchGroups() {
-       var req = new Request(FETCH_GROUPS);
-       //req.callback(uEditDrawGroups);
-       req.send(true);
-       uEditDrawGroups(req.request);
-}
-
-function uEditDrawGroups(r, tree, depth, selector) {
-
-       if(!tree) {
-               tree = r.getResultObject();     
-               depth = 0;
-               groupTree = tree;
-               selector = $('ue_profile');
-       }
-
-       insertSelectorVal( selector, -1, tree.name(), tree.id(), null, depth++ );       
-       for( var c in tree.children() ) 
-               uEditDrawGroups( null, tree.children()[c], depth, selector );
-}
-
-
-
-function uEditAddGroupsAndPerms(patron) {
-
-       uEditSetVal( patron, "profile", 
-               getSelectorVal($('ue_profile')), 'isnum', 'ue_no_profile');
-
-       var expire = $('ue_expire').value;
-       if(expire) 
-               uEditSetVal( patron, "expire_date", expire, 'date', 'ue_bad_expire' );
-
-       if($('ue_active').checked) patron.active(1);
-       if($('ue_barred').checked) patron.barred(1);
-       if($('ue_group_lead').checked) patron.master_account(1);
-
-       uEditSetVal( patron, "claims_returned_count", 
-               $('ue_claims_returned'), 'isnum', 'ue_bad_claims_returned');
-
-       patron.alert_message($('ue_alert_message').value);
-}
-
-
-
-function uEditAddAddresses(patron) {
-       var tbody = $('ue_address_tbody');      
-       patron.addresses([]);
-
-       /* shove the addresses living in the page into the patron */
-       for( var r in tbody.childNodes ) {
-               var row = tbody.childNodes[r];
-               if(!(row && row.nodeName == 'tr')) continue;
-               patron.addresses().push( uEditBuildAddress( patron, tbody, row ));      
-       }
-       for( var a in deletedAddresses ) {
-               var addr = deletedAddresses[a];
-               patron.addresses().push(addr);
-       }
-}
-
-/* extracts a single address from the page */
-var uEditVirtualAddrId = -1;
-function uEditBuildAddress( patron, tbody, row ) {
-
-       var addr = new aua();
-       var id = row.getAttribute('exists');
-
-       if(id) {
-               addr.id(id)
-               addr.ischanged(1);
-               addr.isnew(0);
-       } else {
-               addr.id(uEditVirtualAddrId--);
-               addr.isnew(1);
-       }
-
-       if($n(row, 'ue_addr_mailing_yes').checked) patron.mailing_address(addr.id());
-       if($n(row, 'ue_addr_billing_yes').checked) patron.billing_address(addr.id());
-       if($n(row, 'ue_addr_valid_yes').checked) addr.valid(1);
-       if($n(row, 'ue_addr_street2').value) addr.street2($n(row, 'ue_addr_street2').value);
-
-       uEditSetVal(addr, "address_type",       $n(row, 'ue_addr_label'),                       null, 'ue_bad_addr_label' );
-       uEditSetVal(addr, "street1",                    $n(row, 'ue_addr_street1'),             null, 'ue_bad_addr_street' );
-       uEditSetVal(addr, "city",                               $n(row, 'ue_addr_city'),                        null, 'ue_bad_addr_city' );
-       uEditSetVal(addr, "county",                     $n(row, 'ue_addr_county'),                      null, 'ue_bad_addr_county' );
-       uEditSetVal(addr, "state",                              $n(row, 'ue_addr_state'),                       null, 'ue_bad_addr_state' );
-       uEditSetVal(addr, "post_code",          $n(row, 'ue_addr_zip'),                         null, 'ue_bad_addr_zip' );
-       uEditSetVal(addr, "country",                    $n(row, 'ue_addr_country'),             null, 'ue_bad_addr_country' );
-
-       return addr;
-}
-
-function uEditRemoveAddress(node) {
-       if( confirm($("ue_delete_addr_warn").innerHTML) ) {
-               var td      = node.parentNode.parentNode;
-               var mytab   = td.parentNode.parentNode.parentNode;
-               var row                 = mytab.parentNode.parentNode;
-               if( row.getAttribute('exists') ) {
-                       var a =  cachedAddresses[row.getAttribute('exists')];
-                       a.isdeleted(1);
-                       deletedAddresses[a.id()] = a;
-               }
-               var tbody   = row.parentNode;
-               tbody.removeChild(mytab.parentNode.parentNode);
-       }
-
-}
-
-
-var uEditAddrTemplate;
-var uEditOrigAddrRow;
-function uEditBuildAddrs() {
-
-       var tbody = $('ue_address_tbody');
-       uEditAddrTemplate = tbody.removeChild($('ue_address_template'));
-
-       $('ue_address_new').onclick = 
-               function() { 
-                       /* we have to retain the mailing/billing radio input values */
-                       var rows = getElementsByTagNameFlat(tbody,'tr');
-                       var mailrow;
-                       var billrow;
-                       for( var r in rows ) {
-                               var row = rows[r];
-                               if($n(row,'ue_addr_mailing_yes').checked) mailrow = row;
-                               if($n(row,'ue_addr_billing_yes').checked) billrow = row;
-                       }
-                       var newrow = uEditAddrTemplate.cloneNode(true);
-                       tbody.appendChild(newrow); 
-                       $n(newrow, 'ue_addr_label').focus();
-                       if(mailrow) $n(mailrow,'ue_addr_mailing_yes').checked = true;
-                       if(billrow) $n(billrow,'ue_addr_billing_yes').checked = true;
-                       return newrow;
-               }
-
-       /* go ahead and add a blank addr */
-       if(!patron) {
-               var row = uEditAddrTemplate.cloneNode(true);
-               uEditOrigAddrRow = row;
-               $n( row, 'ue_addr_label').id = 'ue_addr_label_1';
-               tbody.appendChild(row); 
-               return;
-       }
-}
-
-
-/* Use this in XUL mode (default) */
-function uEditShowSummary() {
-       uEditCollectData();
-       var table = $('ue_summary_table').cloneNode(true);;
-       uEditFleshSummaryTable(table);
-       netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect UniversalBrowserWrite UniversalBrowserRead");
-       var serializer = Components.classes["@mozilla.org/xmlextras/xmlserializer;1"].getService(Components.interfaces.nsIDOMSerializer);
-       var win = window.open(
-               "data:application/xhtml+xml," + window.escape('<?xml version="1.0"?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd" [ <!ENTITY nbsp " "> <!-- calendar needs this entity --> ]> <html xmlns="http://www.w3.org/1999/xhtml" xmlns:xi="http://www.w3.org/2001/XInclude"> <head><title>' + $('ue_summary_window').innerHTML + '</title></head><body>' + serializer.serializeToString(table) + '</body></html>'), 
-               $('ue_summary_window').innerHTML,
-               'chrome,resizable,width=700,height=500');
-       //win.document.body.innerHTML = "";
-       //win.document.body.appendChild(table);
-       ERRORS = "";
-}
-
-
-/* Use this when debugging in HTML mode */
-function _uEditShowSummary() {
-       uEditCollectData();
-       var table = $('ue_summary_table').cloneNode(true);;
-       uEditFleshSummaryTable(table);
-       var win = window.open('','','scrollbars=1,resizable,width=700,height=500');
-       win.document.body.innerHTML = "";
-       win.document.body.appendChild(table);
-       ERRORS = "";
-}
-
-function uEditFleshSummaryTable(table) {
-
-       var yes = $('yes').innerHTML;
-       var no = $('no').innerHTML;
-
-       var identt1 = "";
-       var identt2 = "";
-       var homeorg = "";
-       var profile     = "";
-
-       if( identt1 = identTypes[patron.ident_type()]) 
-               identt1 = identt1.name();
-       if( identt2 = identTypes[patron.ident_type2()] ) 
-               identt2 = identt2.name();
-       if( patron.home_ou() != null )
-               homeorg = findOrgUnit(patron.home_ou()).name();
-       if( patron.profile() != null )
-               profile = findTreeItemById(groupTree, patron.profile()).name();
-
-
-       $n(table, 'ue_summary_username').appendChild(text(patron.usrname()));
-       $n(table, 'ue_summary_firstname').appendChild(text(patron.first_given_name()));
-       $n(table, 'ue_summary_middlename').appendChild(text(patron.second_given_name()));
-       $n(table, 'ue_summary_lastname').appendChild(text(patron.family_name()));
-       $n(table, 'ue_summary_suffix').appendChild(text(patron.suffix()));
-       $n(table, 'ue_summary_dob').appendChild(text(patron.dob()));
-       $n(table, 'ue_summary_primary_ident_type').appendChild(text(identt1));
-       $n(table, 'ue_summary_primary_ident').appendChild(text(patron.ident_value()));
-       $n(table, 'ue_summary_secondary_ident_type').appendChild(text(identt2));
-       $n(table, 'ue_summary_secondary_ident').appendChild(text(patron.ident_value2()));
-       $n(table, 'ue_summary_email').appendChild(text(patron.email()));
-       $n(table, 'ue_summary_dayphone').appendChild(text(patron.day_phone()));
-       $n(table, 'ue_summary_nightphone').appendChild(text(patron.evening_phone()));
-       $n(table, 'ue_summary_otherphone').appendChild(text(patron.other_phone()));
-       $n(table, 'ue_summary_home_lib').appendChild(text(homeorg));
-       $n(table, 'ue_summary_profile').appendChild(text(profile));
-       $n(table, 'ue_summary_expire').appendChild(text(patron.expire_date()));
-       $n(table, 'ue_summary_family_lead').appendChild(text( (patron.master_account()) ? yes : no ));
-       $n(table, 'ue_summary_claims_returned').appendChild(text(patron.claims_returned_count()));
-       $n(table, 'ue_summary_alert_message').appendChild(text(patron.alert_message()));
-
-       uEditFleshSummaryAddresses( table, patron );
-       uEditFleshSummaryStatCats( table, patron );
-       uEditFleshSummarySurveys( table, patron );
-       uEditFleshSummaryErrors( table );
-
-
-}
-
-function uEditFleshSummaryAddresses( table, patron ) {
-
-       var addrtbody = $n(table, 'ue_summary_addr_tbody');
-       var rowtmpl = addrtbody.removeChild($n(addrtbody, 'ue_summary_addr_row'));
-
-       for( var a in patron.addresses() ) {
-               var address = patron.addresses()[a];
-               var row = rowtmpl.cloneNode(true);
-               uEditFleshSummaryAddr( address, patron, row );
-               addrtbody.appendChild(row);
-               if(address.isdeleted()) addCSSClass(row, 'deleted');
-       }
-}
-
-
-function uEditFleshSummaryAddr( address, patron, row ) {
-       var yes = $('yes').innerHTML;
-       var no = $('no').innerHTML;
-
-       $n(row, 'label').appendChild(text(address.address_type()));
-       $n(row, 'street1').appendChild(text(address.street1()));
-       $n(row, 'street2').appendChild(text(address.street2()));
-       $n(row, 'city').appendChild(text(address.city()));
-       $n(row, 'county').appendChild(text(address.county()));
-       $n(row, 'state').appendChild(text(address.state()));
-       $n(row, 'country').appendChild(text(address.country()));
-       $n(row, 'zip').appendChild(text(address.post_code()));
-       $n(row, 'valid').appendChild(text( (address.valid()) ? yes : no ));
-
-       $n(row, 'mailing').appendChild(text( 
-               (patron.mailing_address() == address.id()) ? yes : no ));
-
-       $n(row, 'billing').appendChild(text( 
-               (patron.billing_address() == address.id()) ? yes : no ));
-}
-
-
-function uEditFleshSummaryStatCats( table, patron ) {
-       var tbody = $n(table, 'ue_summary_stats_tbody');
-       var rowtmpl = tbody.removeChild($n(tbody, 'ue_summary_stats_row'));
-
-       for( var s in patron.stat_cat_entries() ) {
-               row = rowtmpl.cloneNode(true);
-               var entry = patron.stat_cat_entries()[s];
-               var cat = cachedStatCats[entry.stat_cat()];
-               $n(row, 'ue_summary_stat_name').appendChild(text(cat.name()));
-               $n(row, 'ue_summary_stat_value').appendChild(text(entry.stat_cat_entry()));
-               row.setAttribute('statcat', entry.stat_cat());
-               if( entry.isdeleted() ) addCSSClass(row, 'deleted'); 
-               tbody.appendChild(row);
-       }
-
-       for( var s in uEditExistingStatEntries ) {
-
-               var entry = uEditExistingStatEntries[s]; 
-               var rows = getElementsByTagNameFlat( tbody, 'tr' );
-               var test = function(a) { return a.getAttribute('statcat') == entry.stat_cat() };
-
-               if( ! grep( rows, test ) ) {
-
-                       row = rowtmpl.cloneNode(true);
-                       var cat = cachedStatCats[entry.stat_cat()];
-                       $n(row, 'ue_summary_stat_name').appendChild(text(cat.name()));
-                       $n(row, 'ue_summary_stat_value').appendChild(text(entry.stat_cat_entry()));
-                       row.setAttribute('statcat', entry.stat_cat());
-                       tbody.appendChild(row);
-               }
-       }
-
-
-       if( ! getElementsByTagNameFlat( tbody, 'tr' )[1] )
-               unHideMe($n(tbody, 'ue_summary_stat_cat_none'));
-}
-
-
-function uEditFleshSummarySurveys( table, patron ) {
-
-       var tbody       = $n(table, 'ue_summary_survey_tbody');
-       var rowtmpl = tbody.removeChild($n(tbody, 'ue_summary_survey_row'));
-
-       for( var r in patron.survey_responses() ) {
-               var row         = rowtmpl.cloneNode(rowtmpl);
-               var resp                = patron.survey_responses()[r];
-               var survey      = cachedSurveys[resp.survey()];
-               var quest       = cachedSurveyQuestions[resp.question()];
-               var answer      = cachedSurveyAnswers[resp.answer()];
-               $n(row, 'ue_summary_survey_name').appendChild(text(survey.name()));
-               $n(row, 'ue_summary_survey_question').appendChild(text(quest.question()));
-               $n(row, 'ue_summary_survey_answer').appendChild(text(answer.answer()));
-               tbody.appendChild(row);
-       }
-
-       if( ! getElementsByTagNameFlat(tbody, 'tr')[1])
-               unHideMe($n(tbody, 'ue_summary_survey_none'))
-}
-
-
-function uEditFleshSummaryErrors( table ) {
-       if(ERRORS) {
-               unHideMe($n(table, 'ue_summary_errors_row'));
-               var errors = ERRORS.replace(/\n/g, "<br/>");
-               $n(table, 'ue_summary_errors').innerHTML += errors;
-       }
-}
diff --git a/Open-ILS/xul/staff_client/server/patron/user_editor.xhtml b/Open-ILS/xul/staff_client/server/patron/user_editor.xhtml
deleted file mode 100644 (file)
index 5dd2409..0000000
+++ /dev/null
@@ -1,902 +0,0 @@
-<?xml version='1.0'?>
-
-<!DOCTYPE html PUBLIC 
-       "-//W3C//DTD XHTML 1.0 Transitional//EN" 
-       "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd" [
-       <!ENTITY nbsp " "> <!-- calendar needs this entity -->
-]>
-
-
-<html xmlns="http://www.w3.org/1999/xhtml" xmlns:xi="http://www.w3.org/2001/XInclude">
-
-       <head>
-               <title>Evergreen: User Editor</title>
-               <script language='javascript' src='/opac/common/js/utils.js'> </script>
-               <script language='javascript' src='/opac/common/js//config.js'> </script> 
-               <script language='javascript' src='/opac/common/js/CGI.js'> </script>
-               <script language='javascript' src='/opac/common/js/Cookie.js'> </script>
-       
-               <script language='javascript' src='/opac/common/js/slimtree.js'> </script>
-               <script language='javascript' src='/opac/common/js/JSON_v1.js'> </script>
-               <script language='javascript' src='/opac/common/js/fmall.js'> </script>
-               <script language='javascript' src='/opac/common/js/fmgen.js'> </script>
-               <script language='javascript' src='/opac/common/js/Cookies.js'> </script>
-               <script language='javascript' src='/opac/common/js/opac_utils.js'> </script>
-               <script language='javascript' src='/opac/common/js/OrgTree.js'> </script>
-               <script language='javascript' src='/opac/common/js/org_utils.js'> </script>
-               <script language='javascript' src='/opac/common/js/init.js'> </script>
-               <script language='javascript' src='/opac/common/js/RemoteRequest.js'> </script>
-               <script language='javascript' src='../admin/adminlib.js'> </script>
-               <script language='javascript' src='user_editor.js'> </script>
-               <link type='text/css' rel='stylesheet' href='../admin/admin.css'/>
-  
-               <link rel="stylesheet" type="text/css" media="all" 
-                       href="/opac/common/js/jscalendar/calendar-brown.css" title="win2k-cold-1" />
-               <script type="text/javascript" src="/opac/common/js/jscalendar/calendar.js"></script>
-               <script type="text/javascript" src="/opac/common/js/jscalendar/lang/calendar-en.js"></script>
-               <script type="text/javascript" src="/opac/common/js/jscalendar/calendar-setup.js"></script>
-
-
-               <style type='text/css'>
-                       .main_table { width: 98%; border-collapse: collapse;}
-                       .main_table td { border: 1px solid #E0F0E0; text-align: center; padding: 4px;}
-                       #uedit_nav_bar { border: 2px solid #E0F0E0; padding: 6px;}
-                       .nav_link { padding-left: 90px; padding-right: 90px; }
-                       .main_nav_link { -moz-border-radius: 7px; height: 13%;}
-                       .main_div { height: 480px; padding-left: 15px; 
-                               text-align: center; vertical-align: middle; overflow: auto;}
-                       .nav_link_table { height: 480px;}
-                       .label_active { background: #E0F0E0; }
-                       .right { text-align: right; padding-right: 3px;}
-                       .left { text-align: left; padding-left: 3px;}
-                       .wide { width: 98%;}
-                       .pad { padding-left: 3px; padding-right: 3px; }
-                       .no_border td { border: none; }
-                       .uedit_table { width: 80% }
-                       .address_table { 
-                               -moz-border-radius: 4px;
-                               border: 4px solid #E0E0F0;
-                               padding: 4px;
-                               }
-                       .address_table td { 
-                               border: none; 
-                               width: auto; 
-                               padding: 1px; 
-                               }
-                       .addr_info_checked { -moz-border-radius: 6px; background: #F0E0E0; }
-                       .button_row { width: 95%; text-align: center; margin-top: 7px; border: 1px solid #E0E0E0; }
-                       .required_field { background: #F0E0E0; }
-                       input:focus { background: #E0F0E0; }
-               </style>
-       </head>
-
-       <body onload='try{uEditInit();}catch(e){alert(js2JSON(e));}'>
-
-       <center>
-
-               <h2>Evergreen User Editor</h2>
-
-               <div style='position:absolute; top: 5px; right: 5px;'>
-                       <span>Welcome </span><b><span id='uedit_user'/></b>
-               </div>
-
-               <hr/><br/>
-
-               <div style='margin-bottom: 5px; width:100%; text-align: left;'>
-                       <b>
-                               <span>Note: required fields are </span>
-                               <span class='required_field'>marked with color</span>
-                       </b>
-               </div>
-
-               <table class='main_table'>
-                       <tbody>
-                               <tr>
-                                       <td width='15%' valign='top'>
-                                               <!-- ************************************************************** -->
-                                               <!--  Top Navigation Links -->
-                                               <!-- ************************************************************** -->
-                                               <table height='100%' class='nav_link_table'>
-                                                       <tbody>
-                                                               <tr>
-                                                                       <td id='uedit_userid_label' class='main_nav_link'>
-                                                                               <a href='javascript:uEditShowPage("uedit_userid");'>1. User Identification</a>
-                                                                       </td>
-                                                               </tr>
-                                                               <tr>
-                                                                       <td id='uedit_contact_info_label' class='main_nav_link'>        
-                                                                               <a href='javascript:uEditShowPage("uedit_contact_info");'>2. Contact Info</a>
-                                                                       </td>
-                                                               </tr>
-                                                               <tr>
-                                                                       <td id='uedit_addresses_label' class='main_nav_link'>           
-                                                                               <a href='javascript:uEditShowPage("uedit_addresses");'>3. Addresses</a>
-                                                                       </td>
-                                                               </tr>
-                                                               <tr>
-                                                                       <td id='uedit_groups_label' class='main_nav_link'>                      
-                                                                               <a href='javascript:uEditShowPage("uedit_groups");'>4. Groups and Permissions</a>
-                                                                       </td>
-                                                               </tr>
-                                                               <tr>
-                                                                       <td id='uedit_stat_cats_label' class='main_nav_link'>           
-                                                                               <a href='javascript:uEditShowPage("uedit_stat_cats");'>5. Statistical Categories</a>
-                                                                       </td>
-                                                               </tr>
-                                                               <tr>
-                                                                       <td id='uedit_surveys_label' class='main_nav_link'>                     
-                                                                               <a href='javascript:uEditShowPage("uedit_surveys");'>6. Surveys</a>
-                                                                       </td>
-                                                               </tr>
-                                                               <tr>
-                                                                       <td id='uedit_finalize_label' class='main_nav_link'>                    
-                                                                               <a href='javascript:uEditShowPage("uedit_finalize");'>7. Finish</a>
-                                                                       </td>
-                                                               </tr>
-                                                       </tbody>
-                                               </table>
-                                       </td>
-
-                                       <td width='85%' id='uedit_loading'>
-                                               <div class='main_div has_color' 
-                                                       style='padding: 50px; vertical-align: middle;'>
-                                                       <b>Loading data...</b>
-                                               </div>
-                                       </td>
-
-
-                                       <td width='85%' id='ue_maintd' class='hide_me'>
-
-                                               <!-- ************************************************************** -->
-                                               <!--  Identification Pane -->
-                                               <!-- ************************************************************** -->
-                                               <div id='uedit_userid' class='main_div'>
-                                                       <table class='uedit_table'>
-                                                               <tbody>
-                                                                       <tr class='required_field'>
-                                                                               <td><div class='wide right'>Barcode</div></td>
-                                                                               <td><div class='wide left'>
-
-                                                                                       <input type='text' id='ue_barcode' 
-                                                                                               onblur=' var un = $("ue_username");
-                                                                                                       if(!un.value) un.value = this.value;'/>
-
-                                                                               </div></td>
-                                                                       </tr>
-                                                                       <tr class='required_field'>
-                                                                               <td><div class='wide right'>Username</div></td>
-                                                                               <td><div class='wide left'><input type='text' id='ue_username'/></div></td>
-                                                                       </tr>
-                                                                       <tr class='required_field'>
-                                                                               <td><div class='wide right'>Password</div></td>
-                                                                               <td><div class='wide left'><input type='password' id='ue_password1'/></div></td>
-                                                                       </tr>
-                                                                       <tr class='required_field'>
-                                                                               <td><div class='wide right'>Verify Password</div></td>
-                                                                               <td><div class='wide left'><input type='password' id='ue_password2'/></div></td>
-                                                                       </tr>
-                                                                       <tr class='required_field'>
-                                                                               <td><div class='wide right'>First Name</div></td>
-                                                                               <td><div class='wide left'><input type='text' id='ue_firstname'/></div></td>
-                                                                       </tr>
-                                                                       <tr>
-                                                                               <td><div class='wide right'>Middle Name</div></td>
-                                                                               <td><div class='wide left'><input type='text' id='ue_middlename'/></div></td>
-                                                                       </tr>
-                                                                       <tr class='required_field'>
-                                                                               <td><div class='wide right'>Last Name</div></td>
-                                                                               <td><div class='wide left'><input type='text' id='ue_lastname'/></div></td>
-                                                                       </tr>
-                                                                       <tr>
-                                                                               <td><div class='wide right'>Suffix</div></td>
-                                                                               <td><div class='wide left'>
-                                                                                       <input type='text' id='ue_suffix'/>
-                                                                                       <select id='ue_suffix_selector' style='width: 6em;'
-                                                                                               onclick='$("ue_suffix").value = this.options[this.selectedIndex].value'
-                                                                                               onchange='$("ue_suffix").value = this.options[this.selectedIndex].value'>
-                                                                                               <option value=''>- Pick -</option>
-                                                                                               <option value='Jr'>Jr</option>
-                                                                                               <option value='Sr'>Sr</option>
-                                                                                               <option value='II'>II</option>
-                                                                                               <option value='III'>III</option>
-                                                                                               <option value='AA'>AA</option>
-                                                                                               <option value='AS'>AS</option>
-                                                                                               <option value='AAS'>AAS</option>
-                                                                                               <option value='BA'>BA</option>
-                                                                                               <option value='BS'>BS</option>
-                                                                                               <option value='CFPIM'>CFPIM</option>
-                                                                                               <option value='CPA'>CPA</option>
-                                                                                               <option value='CPIM'>CPIM</option>
-                                                                                               <option value='CPM'>CPM</option>
-                                                                                               <option value='CXE'>CXE</option>
-                                                                                               <option value='DC'>DC</option>
-                                                                                               <option value='DDS'>DDS</option>
-                                                                                               <option value='DO '>DO</option>
-                                                                                               <option value='DPM'>DPM</option>
-                                                                                               <option value='DVM'>DVM</option>
-                                                                                               <option value='Esq'>Esq</option>
-                                                                                               <option value='FACAAI'>FACAAI</option>
-                                                                                               <option value='FACP'>FACP</option>
-                                                                                               <option value='FACS'>FACS</option>
-                                                                                               <option value='FACEP'>FACEP</option>
-                                                                                               <option value='FCP'>FCP</option>
-                                                                                               <option value='FICS'>FICS</option>
-                                                                                               <option value='GYN'>GYN</option>
-                                                                                               <option value='JD'>JD</option>
-                                                                                               <option value='LPN'>LPN</option>
-                                                                                               <option value='MA'>MA</option>
-                                                                                               <option value='MCSE'>MCSE</option>
-                                                                                               <option value='MD'></option>
-                                                                                               <option value='MS'></option>
-                                                                                               <option value='NMD'></option>
-                                                                                               <option value='OB'></option>
-                                                                                               <option value='PhD'></option>
-                                                                                               <option value='RN'></option>
-                                                                                       </select>
-                                                                               </div></td>
-                                                                       </tr>
-                                                                       <tr class='required_field'>
-                                                                               <td><div class='wide right'>Date of Birth</div></td>
-                                                                               <td>
-                                                                                       <div class='wide left'>
-       
-                                                                                               <input type='text' id='ue_dob' size='10' maxlength='10' 
-                                                                                                       onfocus='/*$("ue_dob_trigger").onclick(event);*/'>1980-01-01</input>
-       
-                                                                                               <button style='padding: 0px;' id='ue_dob_trigger'>
-                                                                                                       <img src="/opac/common/js/jscalendar/img.gif" 
-                                                                                                               style="cursor: pointer; border: 1px solid red; padding: 0px; margin: -3px;" 
-                                                                                                               title="Date selector"
-                                                                                                               onmouseover="this.style.background='red';" 
-                                                                                                               onmouseout="this.style.background=''" />
-                                                                                               </button>
-
-                                                                                               <span class='pad' style='font-size: 8pt;'>(YYYY-MM-DD)</span>
-       
-                                                                                               <script type="text/javascript">
-                                                                                                       Calendar.setup({
-                                                                                                               inputField      : "ue_dob",                             // id of the input field
-                                                                                                               ifFormat                : "%Y-%m-%d",                   // format of the input field
-                                                                                                               button          : "ue_dob_trigger",  // trigger for the calendar (button ID)
-                                                                                                               align                   : "Tl",                                 // alignment (defaults to "Bl")
-                                                                                                               singleClick     : true
-                                                                                                       });
-                                                                                               </script>
-       
-                                                                                       </div>
-                                                                               </td>
-                                                                       </tr>
-                                                                       <tr class='required_field'>
-                                                                               <td><div class='wide right'>Primary Identification Type</div></td>
-                                                                               <td><div class='wide left'>
-                                                                                               <select id='ue_primary_ident_type'>
-                                                                                                       <option> -- Required -- </option>
-                                                                                               </select>
-                                                                                       </div>
-                                                                               </td>
-                                                                       </tr>
-                                                                       <tr class='required_field'>
-                                                                               <td><div class='wide right'>Primary Identification</div></td>
-                                                                               <td>
-                                                                                       <div class='wide left'>
-                                                                                               <input type='text' id='ue_primary_ident'/>
-                                                                                               <span class='hide_me' id='ue_primary_ident_dl'>
-                                                                                                       <input type='text' id='ue_primary_ident_dl_state' size='2' maxlength='2'/>
-                                                                                                       <input type='text' id='ue_primary_ident_dl_val'/>
-                                                                                               </span>
-                                                                                               <span class='hide_me' id='ue_primary_ident_ssn'>
-                                                                                                       <input type='text' id='ue_primary_ident_ssn_1' size='3' maxlength='3'/>
-                                                                                                       <input type='text' id='ue_primary_ident_ssn_2' size='2' maxlength='2'/>
-                                                                                                       <input type='text' id='ue_primary_ident_ssn_3' size='4' maxlength='4'/>
-                                                                                               </span>
-                                                                                               <span style='padding-left: 10px;'>Verified 
-                                                                                                       <input id='ue_primary_ident_verified' type='checkbox'/>
-                                                                                               </span>
-                                                                                       </div>
-                                                                               </td>
-                                                                       </tr>
-                                                                       <tr>
-                                                                               <td><div class='wide right'>Secondary Identification Type</div></td>
-                                                                               <td><div class='wide left'>
-                                                                                               <select id='ue_secondary_ident_type'>
-                                                                                                       <option> -- Select One -- </option>
-                                                                                               </select>
-                                                                                       </div>
-                                                                               </td>
-                                                                       </tr>
-                                                                       <tr>
-                                                                               <td><div class='wide right'>Secondary Identification</div></td>
-                                                                               <td>
-                                                                                       <div class='wide left'>
-                                                                                               <input type='text' id='ue_secondary_ident'/>
-                                                                                               <span class='hide_me' id='ue_secondary_ident_dl'>
-                                                                                                       <input type='text' id='ue_secondary_ident_dl_state' size='2' maxlength='2'/>
-                                                                                                       <input type='text' id='ue_secondary_ident_dl_val'/>
-                                                                                               </span>
-                                                                                               <span class='hide_me' id='ue_secondary_ident_ssn'>
-                                                                                                       <input type='text' id='ue_secondary_ident_ssn_1' size='3' maxlength='3'/>
-                                                                                                       <input type='text' id='ue_secondary_ident_ssn_2' size='2' maxlength='2'/>
-                                                                                                       <input type='text' id='ue_secondary_ident_ssn_3' size='4' maxlength='4'/>
-                                                                                               </span>
-                                                                                               <span style='padding-left: 10px;'>Verified 
-                                                                                                       <input id='ue_secondary_ident_verified' type='checkbox'/>
-                                                                                               </span>
-                                                                                       </div>
-                                                                               </td>
-                                                                       </tr>
-                                                               </tbody>
-                                                       </table>
-                                               </div>
-
-                                               <!-- ************************************************************** -->
-                                               <!-- Contact Info Pane -->
-                                               <!-- ************************************************************** -->
-                                               <div id='uedit_contact_info' class='main_div hide_me'>
-
-                                                       <table class='uedit_table'>
-                                                               <tbody>
-                                                                       <tr>
-                                                                               <td><div class='wide right'>Email Address</div></td>
-                                                                               <td><div class='wide left'><input type='text' id='ue_email1' size='32'/></div></td>
-                                                                       </tr>
-                                                                       <!--
-                                                                       <tr>
-                                                                               <td><div class='wide right'>Verify Email Address</div></td>
-                                                                               <td><div class='wide left'><input type='text' id='ue_email2'/></div></td>
-                                                                       </tr>
-                                                                       -->
-                                                                       <tr>
-                                                                               <td><div class='wide right'>Daytime Phone</div></td>
-                                                                               <td>
-                                                                                       <div class='wide left'>
-                                                                                               <input class='pad' type='text' id='ue_day_phone_area' maxlength='3' size='3'/>
-                                                                                               <span>-</span>
-                                                                                               <input class='pad' type='text' id='ue_day_phone_prefix' maxlength='3' size='3'/>
-                                                                                               <span>-</span>
-                                                                                               <input class='pad' type='text' id='ue_day_phone_suffix' maxlength='4' size='4'/>
-                                                                                       </div>
-                                                                               </td>
-                                                                       </tr>
-                                                                       <tr>
-                                                                               <td><div class='wide right'>Evening Phone</div></td>
-                                                                               <td>
-                                                                                       <div class='wide left'>
-                                                                                               <input class='pad' type='text' id='ue_night_phone_area' maxlength='3' size='3'/>
-                                                                                               <span>-</span>
-                                                                                               <input class='pad' type='text' id='ue_night_phone_prefix' maxlength='3' size='3'/>
-                                                                                               <span>-</span>
-                                                                                               <input class='pad' type='text' id='ue_night_phone_suffix' maxlength='4' size='4'/>
-                                                                                       </div>
-                                                                               </td>
-                                                                       </tr>
-                                                                       <tr>
-                                                                               <td><div class='wide right'>Other/Cell Phone</div></td>
-                                                                               <td>
-                                                                                       <div class='wide left'>
-                                                                                               <input class='pad' type='text' id='ue_other_phone_area' maxlength='3' size='3'/>
-                                                                                               <span>-</span>
-                                                                                               <input class='pad' type='text' id='ue_other_phone_prefix' maxlength='3' size='3'/>
-                                                                                               <span>-</span>
-                                                                                               <input class='pad' type='text' id='ue_other_phone_suffix' maxlength='4' size='4'/>
-                                                                                       </div>
-                                                                               </td>
-                                                                       </tr>
-                                                                       <tr class='required_field'>
-                                                                               <td><div class='wide right'>Home Library</div></td>
-                                                                               <td>
-                                                                                       <div class='wide left'>
-                                                                                               <select style='width: 20em;' id='ue_org_selector'/>
-                                                                                       </div>
-                                                                               </td>
-                                                                       </tr>
-                                                               </tbody>
-                                                       </table>
-                                               </div>
-       
-                                               <!-- ************************************************************** -->
-                                               <!-- Addresses Pane -->
-                                               <!-- ************************************************************** -->
-                                               <div id='uedit_addresses' class='main_div hide_me' >
-                                                       <table class='uedit_table' style='width: 98%; padding: 1px;'>
-                                                               <thead>
-                                                                       <tr>
-                                                                               <td>Address</td>
-                                                                               <td>Incorporated</td>
-                                                                               <td>Valid</td>
-                                                                               <td>Mailing Address</td>
-                                                                               <td>Physical Address</td>
-                                                                       </tr>
-                                                               </thead>
-                                                               <tbody id='ue_address_tbody'>
-                                                                       <tr id='ue_address_template'>
-                                                                               <td>
-                                                                                       <table class='address_table'>
-                                                                                               <tbody>
-                                                                                                       <tr>
-                                                                                                               <td><div class='wide right'>Label</div></td>
-                                                                                                               <td colspan='5'>
-                                                                                                                       <div class='wide left'>
-                                                                                                                               <input type='text' name='ue_addr_label' id='ue_addr_label'/>
-                                                                                                                       </div>
-                                                                                                               </td>
-                                                                                                       </tr>
-                                                                                                       <tr>
-                                                                                                               <td><div class='wide right'>Street 1</div></td>
-                                                                                                               <td colspan='5'>
-                                                                                                                       <div class='wide left'>
-                                                                                                                               <input type='text' name='ue_addr_street1' size='42'/>
-                                                                                                                       </div>
-                                                                                                               </td>
-                                                                                                       </tr>
-                                                                                                       <tr>
-                                                                                                               <td><div class='wide right'>Street 2</div></td>
-                                                                                                               <td colspan='5'>
-                                                                                                                       <div class='wide left'>
-                                                                                                                               <input type='text' name='ue_addr_street2' size='42'/>
-                                                                                                                       </div>
-                                                                                                               </td>
-                                                                                                       </tr>
-                                                                                                       <tr>
-                                                                                                               <td><div class='wide right'>City</div></td>
-                                                                                                               <td colspan='3'>
-                                                                                                                       <div class='wide left'>
-                                                                                                                               <input type='text' name='ue_addr_city' size='17'/>
-                                                                                                                       </div>
-                                                                                                               </td>
-                                                                                                               <td><div class='wide right'>County</div></td>
-                                                                                                               <td colspan='3'>
-                                                                                                                       <div class='wide left'>
-                                                                                                                               <input type='text' name='ue_addr_county' size='17'/>
-                                                                                                                       </div>
-                                                                                                               </td>
-                                                                                                       </tr>
-                                                                                                       <tr>
-                                                                                                               <td><div class='wide right'>State</div></td>
-                                                                                                               <td>
-                                                                                                                       <div class='wide left'>
-                                                                                                                               <input type='text' name='ue_addr_state' size='2' maxlength='2'/>
-                                                                                                                       </div>
-                                                                                                               </td>
-                                                                                                               <td><div class='wide right'>Zip</div></td>
-                                                                                                               <td>
-                                                                                                                       <div class='wide left'>
-                                                                                                                               <input type='text' name='ue_addr_zip' size='6' maxlength='6'/>
-                                                                                                                       </div>
-                                                                                                               </td>
-                                                                                                               <td><div class='wide right'>Country</div></td>
-                                                                                                               <td colspan='3'>
-                                                                                                                       <div class='wide left'>
-                                                                                                                               <input type='text' name='ue_addr_country' size='6'/>
-                                                                                                                       </div>
-                                                                                                               </td>
-                                                                                                       </tr>
-                                                                                                       <tr>
-                                                                                                               <td colspan='6'>
-                                                                                                                       <div class='button_row'>
-                                                                                                                               <input type='submit' name='ue_addr_delete' 
-                                                                                                                                       value='Delete this Address'
-                                                                                                                                       onclick='uEditRemoveAddress(this);'/>
-                                                                                                               </div>
-                                                                                                       </td>
-                                                                                               </tr>
-
-                                                                                               </tbody>
-                                                                                       </table>
-                                                                               </td>
-                                                                               <td><input type='checkbox' name='ue_addr_inc_yes' checked='checked'/></td>
-                                                                               <td><input type='checkbox' name='ue_addr_valid_yes' checked='checked'/></td>
-                                                                               <td>
-                                                                                       <div style='width: 100%; -moz-border-radius: 8px;'>
-                                                                                               <input type='radio' name='ue_addr_mailing_yes' checked='checked'
-                                                                                                       onclick='uEditAddrHighlight(this, "mailing");'/>
-                                                                                       </div>
-                                                                               </td>
-                                                                               <td>
-                                                                                       <div style='width: 100%; -moz-border-radius: 8px;'>
-                                                                                               <input type='radio' name='ue_addr_billing_yes' checked='checked'
-                                                                                                       onclick='uEditAddrHighlight(this, "billing");'/>
-                                                                                       </div>
-                                                                               </td>
-                                                                       </tr>
-                                                               </tbody>
-                                                       </table>
-
-                                                       <div class='button_row' style='margin-top: 20px;'>
-                                                               <input type='submit' value='Create a New Address' id='ue_address_new'/>
-                                                       </div>
-                                               </div>
-       
-                                               <!-- ************************************************************** -->
-                                               <!-- Groups Pane -->
-                                               <!-- ************************************************************** -->
-                                               <div id='uedit_groups' class='main_div hide_me'>
-                                                       <table class='uedit_table'>
-                                                               <tbody>
-                                                                       <tr class='required_field'>
-                                                                               <td><div class='wide right'>Profile Group</div></td>
-                                                                               <td>
-                                                                                       <div class='wide left'>
-                                                                                               <select id='ue_profile'>
-                                                                                                       <option> -- Required -- </option>
-                                                                                               </select>
-                                                                                       </div>
-                                                                               </td>
-                                                                       </tr>
-                                                                       <tr class='required_field'>
-                                                                               <td><div class='wide right'>Account Expiration Date</div></td>
-                                                                               <td>
-                                                                                       <div class='wide left'>
-                                                                                               <input type='text' id='ue_expire' size='10' maxlength='10'/>
-       
-                                                                                               <button style='padding: 0px;' id='ue_expire_trigger'>
-                                                                                                       <img src="/opac/common/js/jscalendar/img.gif" 
-                                                                                                               style="cursor: pointer; border: 1px solid red; padding: 0px; margin: -3px;" 
-                                                                                                               title="Date selector"
-                                                                                                               onmouseover="this.style.background='red';" 
-                                                                                                               onmouseout="this.style.background=''" />
-                                                                                               </button>
-
-                                                                                               <span class='pad' style='font-size: 8pt;'>(YYYY-MM-DD)</span>
-                                                                                               <div style='margin-top: 5px;'>
-                                                                                                       Note: a default will be provided if none is selected
-                                                                                               </div>
-       
-                                                                                               <script type="text/javascript">
-                                                                                                       Calendar.setup({
-                                                                                                               inputField      : "ue_expire",                          // id of the input field
-                                                                                                               ifFormat                : "%Y-%m-%d",                           // format of the input field
-                                                                                                               button          : "ue_expire_trigger",  // trigger for the calendar (button ID)
-                                                                                                               align                   : "Tl",                                         // alignment (defaults to "Bl")
-                                                                                                               singleClick     : true
-                                                                                                       });
-                                                                                               </script>
-                                                                                       </div>
-                                                                               </td>
-                                                                       </tr>
-                                                                       <tr>
-                                                                               <td><div class='wide right'>Active</div></td>
-                                                                               <td>
-                                                                                       <div class='wide left'>
-                                                                                               <input id='ue_active' type='checkbox' checked='checked'/>
-                                                                                       </div>
-                                                                               </td>
-                                                                       </tr>
-                                                                       <tr>
-                                                                               <td><div class='wide right'>Barred</div></td>
-                                                                               <td>
-                                                                                       <div class='wide left'>
-                                                                                               <input id='ue_barred' type='checkbox'/>
-                                                                                       </div>
-                                                                               </td>
-                                                                       </tr>
-                                                                       <tr>
-                                                                               <td><div class='wide right'>Set as Family/Group Lead Account</div></td>
-                                                                               <td>
-                                                                                       <div class='wide left'>
-                                                                                               <input id='ue_group_lead' type='checkbox'/>
-                                                                                       </div>
-                                                                               </td>
-                                                                       </tr>
-                                                                       <tr>
-                                                                               <td><div class='wide right'>Claims Returned Count</div></td>
-                                                                               <td>
-                                                                                       <div class='wide left'>
-                                                                                               <input id='ue_claims_returned' type='text' disabled='disabled' size='6'/>
-                                                                                               <script>$('ue_claims_returned').value = 0;</script>
-                                                                                               <input class='pad' id='ue_claims_returned_reset' type='submit' value='Reset'/>
-                                                                                       </div>
-                                                                               </td>
-                                                                       </tr>
-                                                                       <tr>
-                                                                               <td><div class='wide right'>Alert Message</div></td>
-                                                                               <td>
-                                                                                       <div class='wide left'>
-                                                                                               <textarea wrap='soft' cols='30' rows='4' id='ue_alert_message'/>
-                                                                                               <input class='pad' id='ue_alert_message_reset' 
-                                                                                                       type='submit' value='Clear' onclick='$("ue_alert_message").value = "";'/>
-                                                                                       </div>
-                                                                               </td>
-                                                                       </tr>
-                                                               </tbody>
-                                                       </table>
-                                               </div>
-       
-                                               <!-- ************************************************************** -->
-                                               <!-- Stat Cats Pane -->
-                                               <!-- ************************************************************** -->
-                                               <div id='uedit_stat_cats' class='main_div hide_me'>
-                                                       <table class='uedit_table' style='width: 98%'>
-                                                               <thead>
-                                                                       <tr style='font-weight: bold;'>
-                                                                               <td>Stat Cat Name</td>
-                                                                               <td>Owner</td>
-                                                                               <td>Value</td>
-                                                                       </tr>
-                                                               </thead>
-                                                               <tbody id='ue_stat_cat_tbody'>
-                                                                       <tr id='ue_stat_cat_row'>
-                                                                               <td><div class='wide right' name='ue_stat_cat_name'/></td>
-                                                                               <td><div class='wide right' style='font-size: 8pt' name='ue_stat_cat_owner'/></td>
-                                                                               <td>
-                                                                                       <div class='wide left'>
-                                                                                               <select name='ue_stat_cat_selector'>
-                                                                                                       <option> -- Select One -- </option>
-                                                                                               </select>
-                                                                                               <span class='pad'> or </span>
-                                                                                               <input class='pad' type='text' name='ue_stat_cat_newval'/>
-                                                                                       </div>
-                                                                               </td>
-                                                                       </tr>
-                                                               </tbody>
-                                                       </table>
-
-                                               </div>
-       
-                                               <!-- ************************************************************** -->
-                                               <!-- Surveys Pane -->
-                                               <!-- ************************************************************** -->
-                                               <div id='uedit_surveys' class='main_div hide_me'>
-                                                       <table id='ue_survey_table' 
-                                                               class='uedit_table data_grid' style='width: 95%; margin-top: 17px;'>
-                                                               <thead>
-                                                                       <tr>
-                                                                               <td colspan='2' style='text-align: left; padding-left: 20px;'>
-                                                                                       <span class='pad' name='ue_survey_name' style='font-weight: bold;'/>
-                                                                                       <span class='pad' name='ue_survey_desc'> : </span>
-                                                                               </td>
-                                                                       </tr>
-                                                               </thead>
-                                                               <tbody name='ue_survey_tbody'>
-                                                                       <tr name='ue_survey_row'>
-                                                                               <td name='ue_survey_question' 
-                                                                                       style='width: 60%; text-align: left; padding-left: 40px;'/>
-                                                                               <td class='hide_me'>
-                                                                                       <select name='ue_survey_answer'>
-                                                                                               <option> -- Select One -- </option>
-                                                                                       </select>
-                                                                               </td>
-                                                                               <td class='hide_me' name='ue_survey_answer_poll'>
-                                                                                       <table>
-                                                                                               <tbody name='ue_survey_answer_poll_tbody'>
-                                                                                                       <tr name='ue_survey_answer_poll_row'>
-                                                                                                               <td>
-                                                                                                                       <div class='right' name='ue_survey_answer_poll_radio'>
-                                                                                                                       </div>
-                                                                                                               </td>
-                                                                                                               <td><div class='left' name='ue_survey_answer_poll_answer'/></td>
-                                                                                                       </tr>
-                                                                                               </tbody>
-                                                                                       </table>
-                                                                               </td>
-                                                                       </tr>
-                                                               </tbody>
-                                                       </table>
-                                               </div>
-
-                                               <!-- ************************************************************** -->
-                                               <!-- Finish Up -->
-                                               <!-- ************************************************************** -->
-                                               <div id='uedit_finalize' class='main_div hide_me'>
-                                                       <div class='has_color' style='width: 95%; margin-top: 40px; text-align: center'>
-                                                               <div style='padding: 5px;'>
-                                                                       You are now ready to save the user to the database.  <br/>
-                                                                       To view or print a summary of the changes, click on the "View Summary" link.  <br/>
-                                                                       To save the user, click on the 'Save User' button.
-                                                               </div>
-                                                               <br/>
-                                                               <a style='margin-right: 30px;' id='ue_view_summary' 
-                                                                       href='javascript:_uEditShowSummary();'>View Summary</a>
-                                                               <input style='margin-left: 30px;' 
-                                                                       type='submit' value='Save User' onclick='uEditSaveUser();'/>
-                                                       </div>
-                                               </div>
-                                       </td>
-                               </tr>
-
-                               <tr>
-                                       <td colspan='2'>
-                                               <!-- ************************************************************** -->
-                                               <!-- Bottome Navigation Links -->
-                                               <!-- ************************************************************** -->
-                                               <table width='100%' class='no_border'>
-                                                       <tbody>
-                                                               <tr id='uedit_nav_bar'>
-                                                                       <td width='10%'/>
-                                                                       <td width='40%'>
-                                                                               <a id='ue_back' class='nav_link hide_me' 
-                                                                                       href='javascript:uEditPrev()'>&lt;&lt; Back</a>
-                                                                       </td>
-                                                                       <td width='40%'>
-                                                                               <a id='ue_fwd' class='nav_link' 
-                                                                                       href='javascript:uEditNext()'>Forward &gt;&gt;</a>
-                                                                       </td>
-                                                                       <td width='10%'/>
-                                                               </tr>
-                                                       </tbody>
-                                               </table>
-                                       </td>
-                               </tr>
-                       </tbody>
-               </table>
-       </center>
-
-       <div id='ue_summary_page' class='hide_me'>
-               <table id='ue_summary_table' class='summary_grid' width='55%'>
-                       <style type='text/css'>
-                               .summary_grid { padding: 5px; }
-                               .summary_grid thead tr { background: #E0F0E0; font-weight: bold;}
-                               .summary_grid tbody tr td { border: 1px solid #E0F0E0; }
-                               .hide_me{ visibility: hidden; display: none }
-                               .deleted { background: #FF6666; }
-                       </style>
-                       <thead><tr>
-                               <td colspan='2'>
-                                       <span>User Summary Information (Deleted items are marked in</span>
-                                       <span class='deleted'>color</span><span>)</span>
-                               </td>
-                       </tr></thead>
-                       <tbody name='ue_summary_page_tbody'>
-                               <tr>
-                                       <td><input type='submit' value='Print Page' onclick='window.print();'/></td>
-                                       <td><input type='submit' value='Close Window' onclick='window.close();'/></td>
-                               </tr>
-                               <tr><td>Username</td><td name='ue_summary_username'/></tr>
-                               <tr><td>First Name</td><td name='ue_summary_firstname'/></tr>
-                               <tr><td>Middle Name</td><td name='ue_summary_middlename'/></tr>
-                               <tr><td>Last Name</td><td name='ue_summary_lastname'/></tr>
-                               <tr><td>Suffix</td><td name='ue_summary_suffix'/></tr>
-                               <tr><td>Date of Birth</td><td name='ue_summary_dob'/></tr>
-                               <tr><td>Primary Identification Type</td><td name='ue_summary_primary_ident_type'/></tr>
-                               <tr><td>Primary Identification</td><td name='ue_summary_primary_ident'/></tr>
-                               <tr><td>Secondary Identification Type</td><td name='ue_summary_secondary_ident_type'/></tr>
-                               <tr><td>Secondary Identification</td><td name='ue_summary_secondary_ident'/></tr>
-                               <tr><td>Email Address</td><td name='ue_summary_email'/></tr>
-                               <tr><td>Day Phone</td><td name='ue_summary_dayphone'/></tr>
-                               <tr><td>Evening Phone</td><td name='ue_summary_nightphone'/></tr>
-                               <tr><td>Other Phone</td><td name='ue_summary_otherphone'/></tr>
-                               <tr><td>Home Library</td><td name='ue_summary_home_lib'/></tr>
-                               <tr>
-                                       <td colspan='2'>
-                                               <table width='100%' style='margin-top: 15px; margin-bottom: 15px;'>
-                                                       <thead><tr><td>Addresses</td></tr></thead>
-                                                       <tbody name='ue_summary_addr_tbody'>
-                                                               <tr name='ue_summary_addr_row'>
-                                                                       <td>
-                                                                               <table name='ue_summary_addr_table' width='100%'>
-                                                                                       <thead><tr><td colspan='4'/><span> </span></tr></thead>
-                                                                                       <tbody>
-                                                                                               <tr>
-                                                                                                       <td>Address Label</td><td name='label'/>
-                                                                                                       <td>Zip Code</td><td name='zip'/>
-                                                                                               </tr>
-                                                                                               <tr>
-                                                                                                       <td>Street1</td><td name='street1'/>
-                                                                                                       <td>Country</td><td name='country'/>
-                                                                                               </tr>
-                                                                                               <tr>
-                                                                                                       <td>Street2</td><td name='street2'/>
-                                                                                                       <td>Mailing</td><td name='mailing'/>
-                                                                                               </tr>
-                                                                                               <tr>
-                                                                                                       <td>City</td><td name='city'/>
-                                                                                                       <td>Billing</td><td name='billing'/>
-                                                                                               </tr>
-                                                                                               <tr>
-                                                                                                       <td>County</td><td name='county'/>
-                                                                                                       <td>Valid</td><td name='valid'/>
-                                                                                               </tr>
-                                                                                               <tr>
-                                                                                                       <td>State</td><td name='state'/>
-                                                                                                       <td>Incorporated</td><td name='incorporated'/>
-                                                                                               </tr>
-                                                                                       </tbody>
-                                                                               </table>
-                                                                       </td>
-                                                               </tr>
-                                                       </tbody>
-                                               </table>
-                                       </td>
-                               </tr>
-                               <tr><td>Profile</td><td name='ue_summary_profile'/></tr>
-                               <tr><td>Expire Date</td><td name='ue_summary_expire'/></tr>
-                               <tr><td>Family Lead Account</td><td name='ue_summary_family_lead'/></tr>
-                               <tr><td>Claims Returned Count</td><td name='ue_summary_claims_returned'/></tr>
-                               <tr><td>Alert Message</td><td name='ue_summary_alert_message'/></tr>
-                               <tr name='ue_summary_stat_cat_td'>
-                                       <td colspan='2' >
-                                               <table width='100%' style='margin-top: 15px; margin-bottom: 15px;'>
-                                                       <thead><tr><td colspan='2'>Statistical Categories</td></tr></thead>
-                                                       <tbody name='ue_summary_stats_tbody'>
-                                                               <tr class='hide_me' name='ue_summary_stat_cat_none'>
-                                                                       <td colspan='2'>No Stat Cats have been set</td>
-                                                               </tr>
-                                                               <tr name='ue_summary_stats_row'>
-                                                                       <td name='ue_summary_stat_name'/><td name='ue_summary_stat_value'/>
-                                                               </tr>
-                                                       </tbody>
-                                               </table>
-                                       </td>
-                               </tr>
-                               <tr name='ue_summary_survey_td'>
-                                       <td colspan='2'>
-                                               <table width='100%' style='margin-top: 15px; margin-bottom: 15px;'>
-                                                       <thead><tr><td>Survey</td><td>Question</td><td>Answer</td></tr></thead>
-                                                       <tbody name='ue_summary_survey_tbody'>
-
-                                                               <tr class='hide_me' name='ue_summary_survey_none'>
-                                                                       <td colspan='3'>No new survey entries were created</td>
-                                                               </tr>
-
-                                                               <tr name='ue_summary_survey_row'>
-                                                                       <td name='ue_summary_survey_name'/>
-                                                                       <td name='ue_summary_survey_question'/>
-                                                                       <td name='ue_summary_survey_answer'/>
-                                                               </tr>
-                                                       </tbody>
-                                               </table>
-                                       </td>
-                               </tr>
-                               <tr name='ue_summary_errors_row' class='hide_me'>
-                                       <td colspan='2'>
-                                               <table width='100%' style='margin-top: 15px; margin-bottom: 15px;'>
-                                                       <thead>
-                                                               <tr>
-                                                                       <td style='color: red;' ><b>Errors you would see if you saved now...</b></td>
-                                                               </tr>
-                                                       </thead>
-                                                       <tbody><tr><td name='ue_summary_errors'/></tr></tbody>
-                                               </table>
-                                       </td>
-                               </tr>
-                               <tr>
-                                       <td><input type='submit' value='Print Page' onclick='window.print();'/></td>
-                                       <td><input type='submit' value='Close Window' onclick='window.close();'/></td>
-                               </tr>
-                       </tbody>
-               </table>
-       </div>
-
-       <!-- ************************************************************** -->
-       <!-- This holds all of the strings we may have to alert to the user -->
-       <!-- ************************************************************** -->
-       <div class='hide_me'>
-               <span id='ue_bad_dob'>The date of birth field is not formatted correctly.  We're expecting YYYY-MM-DD</span>
-               <span id='ue_bad_username'>Username is invalid</span>
-               <span id='ue_bad_password'>Passwords do not match or are invalid</span>
-               <span id='ue_bad_firstname'>First name is invalid</span>
-               <span id='ue_bad_middlename'>Middle name is invalid</span>
-               <span id='ue_bad_lastname'>Last name is invalid</span>
-               <span id='ue_bad_barcode'>Barcode is invalid</span>
-               <span id='ue_duplicate_barcode'>The selected barcode already exists in the database</span>
-               <span id='ue_new_barcode_warn'>
-                       This will de-activate the existing barcode for this user!  If you wish to continue, 
-                       enter the new barcode below.  Otherwise, click the Cancel button.
-               </span>
-               <span id='ue_no_ident'>You must select two types of identification</span>
-               <span id='ue_bad_email'>The email addresses do not match or are invalid</span>
-               <span id='ue_bad_phone'>An invalid phone number was entered</span>
-               <span id='ue_no_profile'>A profile group must be selected</span>
-               <span id='ue_bad_expire'>The user expiration date is invalid.  We're expecting YYYY-MM-DD</span>
-               <span id='ue_bad_claims_returned'>The claims returned count is invalid</span>
-               <span id='ue_no_profile'>A profile group must be selected</span>
-               <span id='ue_unknown_error'>An unknown formatting error occurred</span>
-               <span id='ue_bad_addr_label'>Address label is invalid</span>
-               <span id='ue_bad_addr_street'>Address street is invalid</span>
-               <span id='ue_bad_addr_city'>Address city is invalid</span>
-               <span id='ue_bad_addr_county'>Address county is invalid</span>
-               <span id='ue_bad_addr_state'>Address state is invalid</span>
-               <span id='ue_bad_addr_country'>Address country is invalid</span>
-               <span id='ue_bad_addr_zip'>Address zip is invalid</span>
-               <span id='ue_delete_addr_warn'>
-                       This will remove this address from the user.  
-                       Are you sure you wish to continue?
-               </span>
-               <span id='yes'>Yes</span>
-               <span id='no'>No</span>
-               <span id='ue_summary_window'>Patron Summary</span>
-               <span id='ue_success'>User update succeeded</span>
-       </div>
-
-       </body>
-</html>
-