4 "-//W3C//DTD XHTML 1.0 Transitional//EN"
5 "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd" [
6 <!ENTITY nbsp " "> <!-- calendar needs this entity -->
10 <html xmlns="http://www.w3.org/1999/xhtml" xmlns:xi="http://www.w3.org/2001/XInclude">
13 <title>Evergreen: User Editor</title>
14 <script language='javascript' src='/opac/common/js/utils.js'> </script>
15 <script language='javascript' src='/opac/common/js//config.js'> </script>
16 <script language='javascript' src='/opac/common/js/CGI.js'> </script>
17 <script language='javascript' src='/opac/common/js/Cookie.js'> </script>
19 <script language='javascript' src='/opac/common/js/slimtree.js'> </script>
20 <script language='javascript' src='/opac/common/js/JSON.js'> </script>
21 <script language='javascript' src='/opac/common/js/fmall.js'> </script>
22 <script language='javascript' src='/opac/common/js/fmgen.js'> </script>
23 <script language='javascript' src='/opac/common/js/opac_utils.js'> </script>
24 <script language='javascript' src='/opac/common/js/OrgTree.js'> </script>
25 <script language='javascript' src='/opac/common/js/org_utils.js'> </script>
26 <script language='javascript' src='/opac/common/js/init.js'> </script>
27 <script language='javascript' src='/opac/common/js/RemoteRequest.js'> </script>
28 <script language='javascript' src='../admin/adminlib.js'> </script>
29 <script language='javascript' src='user_editor.js'> </script>
30 <link type='text/css' rel='stylesheet' href='../admin/admin.css'/>
32 <link rel="stylesheet" type="text/css" media="all"
33 href="/opac/common/js/jscalendar/calendar-brown.css" title="win2k-cold-1" />
34 <script type="text/javascript" src="/opac/common/js/jscalendar/calendar.js"></script>
35 <script type="text/javascript" src="/opac/common/js/jscalendar/lang/calendar-en.js"></script>
36 <script type="text/javascript" src="/opac/common/js/jscalendar/calendar-setup.js"></script>
39 <style type='text/css'>
40 .main_table { width: 98%; border-collapse: collapse;}
41 .main_table td { border: 1px solid #E0F0E0; text-align: center; padding: 4px;}
42 #uedit_nav_bar { border: 2px solid #E0F0E0; padding: 6px;}
43 .nav_link { padding-left: 90px; padding-right: 90px; }
44 .main_nav_link { -moz-border-radius: 7px; height: 13%;}
45 .main_div { height: 480px; padding-left: 15px;
46 text-align: center; vertical-align: middle; overflow: auto;}
47 .nav_link_table { height: 480px;}
48 .label_active { background: #E0F0E0; }
49 .right { text-align: right; padding-right: 3px;}
50 .left { text-align: left; padding-left: 3px;}
52 .pad { padding-left: 3px; padding-right: 3px; }
53 .no_border td { border: none; }
54 .uedit_table { width: 80% }
56 -moz-border-radius: 4px;
57 border: 4px solid #E0E0F0;
65 .addr_info_checked { -moz-border-radius: 6px; background: #F0E0E0; }
66 .button_row { width: 95%; text-align: center; margin-top: 7px; border: 1px solid #E0E0E0; }
70 <body onload='try{uEditInit();}catch(e){alert(js2JSON(e));}'>
74 <h2>Evergreen User Editor</h2>
76 <div style='position:absolute; top: 5px; right: 5px;'>
77 <span>Welcome </span><b><span id='uedit_user'/></b>
82 <table class='main_table'>
85 <td width='15%' valign='top'>
86 <!-- ************************************************************** -->
87 <!-- Top Navigation Links -->
88 <!-- ************************************************************** -->
89 <table height='100%' class='nav_link_table'>
92 <td id='uedit_userid_label' class='main_nav_link'>
93 <a href='javascript:uEditShowPage("uedit_userid");'>1. User Identification</a>
97 <td id='uedit_contact_info_label' class='main_nav_link'>
98 <a href='javascript:uEditShowPage("uedit_contact_info");'>2. Contact Info</a>
102 <td id='uedit_addresses_label' class='main_nav_link'>
103 <a href='javascript:uEditShowPage("uedit_addresses");'>3. Addresses</a>
107 <td id='uedit_groups_label' class='main_nav_link'>
108 <a href='javascript:uEditShowPage("uedit_groups");'>4. Groups and Permissions</a>
112 <td id='uedit_stat_cats_label' class='main_nav_link'>
113 <a href='javascript:uEditShowPage("uedit_stat_cats");'>5. Statistical Categories</a>
117 <td id='uedit_surveys_label' class='main_nav_link'>
118 <a href='javascript:uEditShowPage("uedit_surveys");'>6. Surveys</a>
122 <td id='uedit_finalize_label' class='main_nav_link'>
123 <a href='javascript:uEditShowPage("uedit_finalize");'>7. Finish</a>
133 <!-- ************************************************************** -->
134 <!-- Identification Pane -->
135 <!-- ************************************************************** -->
136 <div id='uedit_userid' class='main_div'>
137 <table class='uedit_table'>
140 <td><div class='wide right'>Barcode</div></td>
141 <td><div class='wide left'>
143 <input type='text' id='ue_barcode'
144 onblur=' var un = $("ue_username");
145 if(!un.value) un.value = this.value;'/>
150 <td><div class='wide right'>Username</div></td>
151 <td><div class='wide left'><input type='text' id='ue_username'/></div></td>
154 <td><div class='wide right'>Password</div></td>
155 <td><div class='wide left'><input type='password' id='ue_password1'/></div></td>
158 <td><div class='wide right'>Verify Password</div></td>
159 <td><div class='wide left'><input type='password' id='ue_password2'/></div></td>
162 <td><div class='wide right'>First Name</div></td>
163 <td><div class='wide left'><input type='text' id='ue_firstname'/></div></td>
166 <td><div class='wide right'>Middle Name</div></td>
167 <td><div class='wide left'><input type='text' id='ue_middlename'/></div></td>
170 <td><div class='wide right'>Last Name</div></td>
171 <td><div class='wide left'><input type='text' id='ue_lastname'/></div></td>
174 <td><div class='wide right'>Suffix</div></td>
175 <td><div class='wide left'><input type='text' id='ue_suffix'/></div></td>
178 <td><div class='wide right'>Date of Birth</div></td>
180 <div class='wide left'>
182 <input type='text' id='ue_dob' size='10' maxlength='10'
183 onfocus='/*$("ue_dob_trigger").onclick(event);*/'>1980-01-01</input>
185 <button style='padding: 0px;' id='ue_dob_trigger'>
186 <img src="/opac/common/js/jscalendar/img.gif"
187 style="cursor: pointer; border: 1px solid red; padding: 0px; margin: -3px;"
188 title="Date selector"
189 onmouseover="this.style.background='red';"
190 onmouseout="this.style.background=''" />
193 <span class='pad' style='font-size: 8pt;'>(YYYY-MM-DD)</span>
195 <script type="text/javascript">
197 inputField : "ue_dob", // id of the input field
198 ifFormat : "%Y-%m-%d", // format of the input field
199 button : "ue_dob_trigger", // trigger for the calendar (button ID)
200 align : "Tl", // alignment (defaults to "Bl")
209 <td><div class='wide right'>Primary Identification Type</div></td>
210 <td><div class='wide left'>
211 <select id='ue_primary_ident_type'>
212 <option> -- Required -- </option>
218 <td><div class='wide right'>Primary Identification</div></td>
219 <td><div class='wide left'>
220 <input type='text' id='ue_primary_ident'/>
225 <td><div class='wide right'>Secondary Identification Type</div></td>
226 <td><div class='wide left'>
227 <select id='ue_secondary_ident_type'>
228 <option> -- Required -- </option>
234 <td><div class='wide right'>Secondary Identification</div></td>
235 <td><div class='wide left'>
236 <input type='text' id='ue_secondary_ident'/>
244 <!-- ************************************************************** -->
245 <!-- Contact Info Pane -->
246 <!-- ************************************************************** -->
247 <div id='uedit_contact_info' class='main_div hide_me'>
248 <table class='uedit_table'>
251 <td><div class='wide right'>Email Address</div></td>
252 <td><div class='wide left'><input type='text' id='ue_email1'/></div></td>
255 <td><div class='wide right'>Verify Email Address</div></td>
256 <td><div class='wide left'><input type='text' id='ue_email2'/></div></td>
259 <td><div class='wide right'>Daytime Phone</div></td>
261 <div class='wide left'>
262 <input class='pad' type='text' id='ue_day_phone_area' maxlength='3' size='3'/>
264 <input class='pad' type='text' id='ue_day_phone_prefix' maxlength='3' size='3'/>
266 <input class='pad' type='text' id='ue_day_phone_suffix' maxlength='4' size='4'/>
271 <td><div class='wide right'>Evening Phone</div></td>
273 <div class='wide left'>
274 <input class='pad' type='text' id='ue_night_phone_area' maxlength='3' size='3'/>
276 <input class='pad' type='text' id='ue_night_phone_prefix' maxlength='3' size='3'/>
278 <input class='pad' type='text' id='ue_night_phone_suffix' maxlength='4' size='4'/>
283 <td><div class='wide right'>Other/Cell Phone</div></td>
285 <div class='wide left'>
286 <input class='pad' type='text' id='ue_other_phone_area' maxlength='3' size='3'/>
288 <input class='pad' type='text' id='ue_other_phone_prefix' maxlength='3' size='3'/>
290 <input class='pad' type='text' id='ue_other_phone_suffix' maxlength='4' size='4'/>
295 <td><div class='wide right'>Home Library</div></td>
297 <div class='wide left'>
298 <select style='width: 20em;' id='ue_org_selector'/>
306 <!-- ************************************************************** -->
307 <!-- Addresses Pane -->
308 <!-- ************************************************************** -->
309 <div id='uedit_addresses' class='main_div hide_me' >
310 <table class='uedit_table' style='width: 98%; padding: 1px;'>
314 <td>Incorporated</td>
316 <td>Mailing Address</td>
317 <td>Physical Address</td>
320 <tbody id='ue_address_tbody'>
321 <tr id='ue_address_template'>
323 <table class='address_table'>
326 <td><div class='wide right'>Label</div></td>
328 <div class='wide left'>
329 <input type='text' name='ue_addr_label' id='ue_addr_label'/>
334 <td><div class='wide right'>Street 1</div></td>
336 <div class='wide left'>
337 <input type='text' name='ue_addr_street1' size='42'/>
342 <td><div class='wide right'>Street 2</div></td>
344 <div class='wide left'>
345 <input type='text' name='ue_addr_street2' size='42'/>
350 <td><div class='wide right'>City</div></td>
352 <div class='wide left'>
353 <input type='text' name='ue_addr_city' size='17'/>
356 <td><div class='wide right'>County</div></td>
358 <div class='wide left'>
359 <input type='text' name='ue_addr_county' size='17'/>
364 <td><div class='wide right'>State</div></td>
366 <div class='wide left'>
367 <input type='text' name='ue_addr_state' size='2' maxlength='2'/>
370 <td><div class='wide right'>Zip</div></td>
372 <div class='wide left'>
373 <input type='text' name='ue_addr_zip' size='6' maxlength='6'/>
376 <td><div class='wide right'>Country</div></td>
378 <div class='wide left'>
379 <input type='text' name='ue_addr_country' size='6'/>
385 <div class='button_row'>
386 <input type='submit' name='ue_addr_delete'
387 value='Delete this Address'
389 if( confirm($("ue_delete_addr_warn").innerHTML) ) {
390 var td = this.parentNode.parentNode;
391 var mytab = td.parentNode.parentNode.parentNode;
392 var top = mytab.parentNode.parentNode.parentNode;
393 top.removeChild(mytab.parentNode.parentNode);
403 <td><input type='checkbox' name='ue_addr_inc_yes' checked='checked'/></td>
404 <td><input type='checkbox' name='ue_addr_valid_yes' checked='checked'/></td>
406 <div style='width: 100%; -moz-border-radius: 8px;'>
407 <input type='radio' name='ue_addr_mailing_yes'
408 onclick='uEditAddrHighlight(this, "mailing");'/>
412 <div style='width: 100%; -moz-border-radius: 8px;'>
413 <input type='radio' name='ue_addr_billing_yes'
414 onclick='uEditAddrHighlight(this, "billing");'/>
421 <div class='button_row' style='margin-top: 20px;'>
422 <input type='submit' value='Create a New Address' id='ue_address_new'/>
426 <!-- ************************************************************** -->
428 <!-- ************************************************************** -->
429 <div id='uedit_groups' class='main_div hide_me'>
430 <table class='uedit_table'>
433 <td><div class='wide right'>Profile Group</div></td>
435 <div class='wide left'>
436 <select id='ue_profile'>
437 <option> -- Required -- </option>
443 <td><div class='wide right'>Account Expiration Date</div></td>
445 <div class='wide left'>
446 <input type='text' id='ue_expire' size='10' maxlength='10'/>
448 <button style='padding: 0px;' id='ue_expire_trigger'>
449 <img src="/opac/common/js/jscalendar/img.gif"
450 style="cursor: pointer; border: 1px solid red; padding: 0px; margin: -3px;"
451 title="Date selector"
452 onmouseover="this.style.background='red';"
453 onmouseout="this.style.background=''" />
456 <span class='pad' style='font-size: 8pt;'>(YYYY-MM-DD)</span>
457 <div style='margin-top: 5px;'>
458 Note: a default will be provided if none is selected
461 <script type="text/javascript">
463 inputField : "ue_expire", // id of the input field
464 ifFormat : "%Y-%m-%d", // format of the input field
465 button : "ue_expire_trigger", // trigger for the calendar (button ID)
466 align : "Tl", // alignment (defaults to "Bl")
474 <td><div class='wide right'>Active</div></td>
476 <div class='wide left'>
477 <input id='ue_active' type='checkbox' checked='checked'/>
482 <td><div class='wide right'>Barred</div></td>
484 <div class='wide left'>
485 <input id='ue_barred' type='checkbox'/>
490 <td><div class='wide right'>Set as Family/Group Lead Account</div></td>
492 <div class='wide left'>
493 <input id='ue_group_lead' type='checkbox'/>
498 <td><div class='wide right'>Claims Returned Count</div></td>
500 <div class='wide left'>
501 <input id='ue_claims_returned' type='text' disabled='disabled' size='6'/>
502 <script>$('ue_claims_returned').value = 0;</script>
503 <input class='pad' id='ue_claims_returned_reset' type='submit' value='Reset'/>
508 <td><div class='wide right'>Alert Message</div></td>
510 <div class='wide left'>
511 <textarea wrap='soft' cols='30' rows='4' id='ue_alert_message'/>
512 <input class='pad' id='ue_alert_message_reset'
513 type='submit' value='Clear' onclick='$("ue_alert_message").value = "";'/>
521 <!-- ************************************************************** -->
522 <!-- Stat Cats Pane -->
523 <!-- ************************************************************** -->
524 <div id='uedit_stat_cats' class='main_div hide_me'>
525 <table class='uedit_table' style='width: 98%'>
527 <tr style='font-weight: bold;'>
528 <td>Stat Cat Name</td>
533 <tbody id='ue_stat_cat_tbody'>
534 <tr id='ue_stat_cat_row'>
535 <td><div class='wide right' name='ue_stat_cat_name'/></td>
536 <td><div class='wide right' style='font-size: 8pt' name='ue_stat_cat_owner'/></td>
538 <div class='wide left'>
539 <select name='ue_stat_cat_selector'>
540 <option> -- Select One -- </option>
542 <span class='pad'> or </span>
543 <input class='pad' type='text' name='ue_stat_cat_newval'/>
552 <!-- ************************************************************** -->
553 <!-- Surveys Pane -->
554 <!-- ************************************************************** -->
555 <div id='uedit_surveys' class='main_div hide_me'>
556 <table id='ue_survey_table'
557 class='uedit_table data_grid' style='width: 95%; margin-top: 10px;'>
560 <td colspan='2' style='text-align: left; padding-left: 20px;'>
561 <span class='pad' name='ue_survey_name' style='font-weight: bold;'/>
562 <span class='pad' name='ue_survey_desc'> : </span>
566 <tbody name='ue_survey_tbody'>
567 <tr name='ue_survey_row'>
568 <td name='ue_survey_question' style='width: 60%; text-align: left; padding-left: 40px;'/>
570 <select name='ue_survey_answer'>
571 <option> -- Select One -- </option>
574 <td class='hide_me' name='ue_survey_answer_poll'>
576 <tbody name='ue_survey_answer_poll_tbody'>
577 <tr name='ue_survey_answer_poll_row'>
579 <div class='right' name='ue_survey_answer_poll_radio'>
582 <td><div class='left' name='ue_survey_answer_poll_answer'/></td>
592 <!-- ************************************************************** -->
594 <!-- ************************************************************** -->
595 <div id='uedit_finalize' class='main_div hide_me'>
596 <div class='has_color' style='width: 95%; margin-top: 40px; text-align: center'>
598 You are now ready to save the user to the database. <br/>
599 To view or print a summary of the changes, click on the "View Summary" link. <br/>
600 To save the user, click on the 'Save User' button.
603 <a style='margin-right: 30px;' id='ue_view_summary'
604 href='javascript:uEditShowSummary();'>View Summary</a>
605 <input style='margin-left: 30px;' type='submit' value='Save User' onclick='uEditSaveUser();'/>
615 <!-- ************************************************************** -->
616 <!-- Bottome Navigation Links -->
617 <!-- ************************************************************** -->
618 <table width='100%' class='no_border'>
620 <tr id='uedit_nav_bar'>
623 <a id='ue_back' class='nav_link hide_me' href='javascript:uEditPrev()'><< Back</a>
626 <a id='ue_fwd' class='nav_link' href='javascript:uEditNext()'>Forward >></a>
638 <div id='ue_summary_page' class='hide_me'>
639 <table id='ue_summary_table' class='summary_grid'>
640 <style type='text/css'>
641 .summary_grid { padding: 5px; }
642 .summary_grid thead tr { background: #E0F0E0; font-weight: bold;}
643 .summary_grid tbody tr td { border: 1px solid #E0F0E0; }
645 <thead><tr><td colspan='2'>User Summary Information</td></tr></thead>
646 <tbody id='ue_summary_page_tbody'>
647 <tr><td>Username</td><td id='ue_summary_username'/></tr>
648 <tr><td>First Name</td><td id='ue_summary_firstname'/></tr>
649 <tr><td>Middle Name</td><td id='ue_summary_middlename'/></tr>
650 <tr><td>Last Name</td><td id='ue_summary_lastname'/></tr>
651 <tr><td>Suffix</td><td id='ue_summary_suffix'/></tr>
652 <tr><td>Date of Birth</td><td id='ue_summary_dob'/></tr>
653 <tr><td>Primary Identification Type</td><td id='ue_summary_primary_ident_type'/></tr>
654 <tr><td>Primary Identification</td><td id='ue_summary_primary_ident'/></tr>
655 <tr><td>Secondary Identification Type</td><td id='ue_summary_secondary_ident_type'/></tr>
656 <tr><td>Secondary Identification</td><td id='ue_summary_secondary_ident'/></tr>
657 <tr><td>Email Address</td><td id='ue_summary_email'/></tr>
658 <tr><td>Day Phone</td><td id='ue_summary_dayphone'/></tr>
659 <tr><td>Evening Phone</td><td id='ue_summary_nightphone'/></tr>
660 <tr><td>Other Phone</td><td id='ue_summary_otherphone'/></tr>
661 <tr><td>Home Library</td><td id='ue_summary_home_lib'/></tr>
665 <thead><tr><td colspan='2'>Addresses</td></tr></thead>
666 <tbody id='ue_summary_addr_tbody'>
669 <table id='ue_summary_addr_table'>
671 <tr><td>Address Label</td><td name='label'/></tr>
672 <tr><td>Street1</td><td name='street1'/></tr>
673 <tr><td>Street2</td><td name='street2'/></tr>
674 <tr><td>City</td><td name='city'/></tr>
675 <tr><td>County</td><td name='county'/></tr>
676 <tr><td>State</td><td name='state'/></tr>
677 <tr><td>Zip Code</td><td name='zip'/></tr>
678 <tr><td>Country</td><td name='country'/></tr>
687 <tr><td>Profile</td><td id='ue_summary_profile'/></tr>
688 <tr><td>Expire Date</td><td id='ue_summary_expire'/></tr>
689 <tr><td>Family Lead Account</td><td id='ue_summary_family_lead'/></tr>
690 <tr><td>Claims Returned Count</td><td id='ue_summary_claims_returned'/></tr>
691 <tr><td>Alert Message</td><td id='ue_summary_alert_message'/></tr>
695 <thead><tr><td colspan='2'>Statistical Category Updates</td></tr></thead>
696 <tbody id='ue_summary_stats_tbody'>
697 <tr id='ue_summary_stats_row'>
698 <td name='name'/><td name='value'/>
707 <thead><tr><td colspan='2'>Survey Responses</td></tr></thead>
708 <tbody id='ue_summary_survey_tbody'>
709 <tr id='ue_summary_survey_row'>
710 <td name='name'/><td name='value'/>
717 <td><input type='submit' value='Print Page'/></td>
718 <td><input type='submit' value='Close Window'/></td>
724 <!-- ************************************************************** -->
725 <!-- This holds all of the strings we may have to alert to the user -->
726 <!-- ************************************************************** -->
727 <div class='hide_me'>
728 <span id='ue_bad_dob'>The date of birth field is not formatted correctly. We're expecting YYYY-MM-DD</span>
729 <span id='ue_bad_username'>Username is invalid</span>
730 <span id='ue_bad_password'>Passwords do not match or are invalid</span>
731 <span id='ue_bad_firstname'>First name is invalid</span>
732 <span id='ue_bad_middlename'>Middle name is invalid</span>
733 <span id='ue_bad_lastname'>Last name is invalid</span>
734 <span id='ue_bad_barcode'>Barcode is invalid</span>
735 <span id='ue_duplicate_barcode'>The selected barcode already exists in the database</span>
736 <span id='ue_new_barcode_warn'>
737 This will de-activate the existing barcode for this user! If you wish to continue,
738 enter the new barcode below. Otherwise, click the Cancel button.
740 <span id='ue_no_ident'>You must select two types of identification</span>
741 <span id='ue_bad_email'>The email addresses do not match or are invalid</span>
742 <span id='ue_bad_phone'>An invalid phone number was entered</span>
743 <span id='ue_no_profile'>A profile group must be selected</span>
744 <span id='ue_bad_expire'>The user expiration date is invalid. We're expecting YYYY-MM-DD</span>
745 <span id='ue_bad_claims_returned'>The claims returned count is invalid</span>
746 <span id='ue_no_profile'>A profile group must be selected</span>
747 <span id='ue_unknown_error'>An unknown formatting error occurred</span>
748 <span id='ue_bad_addr_lable'>Address label is invalid</span>
749 <span id='ue_bad_addr_street'>Address street is invalid</span>
750 <span id='ue_bad_addr_city'>Address city is invalid</span>
751 <span id='ue_bad_addr_county'>Address county is invalid</span>
752 <span id='ue_bad_addr_state'>Address state is invalid</span>
753 <span id='ue_bad_addr_country'>Address country is invalid</span>
754 <span id='ue_bad_addr_zip'>Address zip is invalid</span>
755 <span id='ue_delete_addr_warn'>
756 This will remove this address from the user.
757 Are you sure you wish to continue?
759 <span id='yes'>Yes</span>
760 <span id='no'>No</span>
761 <span id='ue_summary_window'>Patron Summary</span>