1 <?xml version='1.0' encoding="UTF-8"?>
3 # Copyright (C) 2008 Georgia Public Library Service
4 # Bill Erickson <erickson@esilibrary.com>
5 # This program is free software; you can redistribute it and/or
6 # modify it under the terms of the GNU General Public License
7 # as published by the Free Software Foundation; either version 2
8 # of the License, or (at your option) any later version.
10 # This program is distributed in the hope that it will be useful,
11 # but WITHOUT ANY WARRANTY; without even the implied warranty of
12 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 # GNU General Public License for more details.
17 "-//W3C//DTD XHTML 1.0 Transitional//EN"
18 "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd" [
19 <!--#include virtual="/opac/locale/${locale}/lang.dtd"-->
22 <html xmlns='http://www.w3.org/1999/xhtml'>
24 <title>&staff.server.admin.org_unit_settings.title;</title>
25 <link type='text/css' rel='stylesheet' href='admin.css' />
26 <script type="text/javascript" src='/IDL2js?aou,aout,pgt,au,coust,aous,csg,coustl' />
27 <script type="text/javascript" djConfig="parseOnLoad: true,isDebug:false" src="/js/dojo/dojo/dojo.js" />
28 <script type="text/javascript" djConfig="parseOnLoad: true,isDebug:false" src="/js/dojo/dojo/openils_dojo.js" />
29 <script type="text/javascript" src='org_unit_settings.js' />
30 <script type="text/javascript" src="/xul/server/util/clipboard.js" />
31 <style type="text/css">
37 .form_table textarea {
54 background-color:#D9E8F9;
56 /*Standards compliant*/
57 border-bottom-left-radius:5px;
58 border-bottom-right-radius:5px;
72 <body class='tundra tall'>
73 <div dojoType='dijit.layout.LayoutContainer' orientation='vertical' class='tall'>
74 <div dojoType='dijit.layout.ContentPane' layoutAlign='top'>
75 <div id="toolbar1" dojoType="dijit.Toolbar">
76 <h2>&staff.server.admin.org_unit_settings.title;</h2>
78 <span dojoType="dijit.ToolbarSeparator" ></span>
80 <span>&staff.server.admin.org_unit_settings.context_loc;</span>
81 <select dojoType='openils.widget.OrgUnitFilteringSelect' jsId='osContextSelector'
82 searchAttr='shortname' autocomplete='true' labelAttr='shortname' onchange='osChangeContext();' />
84 <span dojoType="dijit.ToolbarSeparator" ></span>
86 <form id='searchform' onSubmit='return doSearch()'>
87 <input type='text' dojoType='dijit.form.TextBox' id='searchBox' onkeypress='osSearchChange();' />
88 <input type='hidden' dojoType='dijit.form.TextBox' id='isFiltered' value='false' />
89 <button type='submit' dojoType='dijit.form.Button'>&staff.server.admin.org_unit_settings.filter;</button>
90 <button dojoType='dijit.form.Button' onClick='clearSearch();'>&staff.server.admin.org_unit_settings.clear_filter;</button>
93 <span dojoType="dijit.ToolbarSeparator" ></span>
95 <button dojoType='dijit.form.Button' onClick='osToJson();'>&staff.server.admin.org_unit_settings.export;</button>
96 <button dojoType='dijit.form.Button' onClick='osFromJson();'>&staff.server.admin.org_unit_settings.import;</button>
98 <span>&staff.server.admin.org_unit_settings.uninherited;</span>
100 <div dojoType="dijit.layout.ContentPane" layoutAlign='client'>
101 <div class='hide_me' id='no-perms'><b>&staff.server.admin.org_unit_settings.no_perms;</b></div>
103 <div dojoType="dijit.layout.ContentPane" layoutAlign='client' class='tall'>
105 var osGridLayout = [{
106 defaultCell: {styles: 'text-align: center;'},
108 { name: '&staff.server.admin.org_unit_settings.edit;',
109 value: '<a href="javascript:void(0);" onclick="osLaunchEditor(\'SETTING\');">&staff.server.admin.org_unit_settings.edit;</a>',
111 formatter : osFormatEditLink
113 { name: '&staff.server.admin.org_unit_settings.history;',
114 value: '<a href="javascript:void(0);" onclick="osLaunchHistory(\'SETTING\');">&staff.server.admin.org_unit_settings.history;</a>',
115 get: osGetHistoryLink,
116 formatter : osFormatHistoryLink
118 {name: '&staff.server.admin.org_unit_settings.group;', get: osGetGridData, field:'grp'},
119 {name: '&staff.server.admin.org_unit_settings.setting;', get: osGetGridData, field:'label', width:'auto', styles:'text-align:left;'},
120 {name: '&staff.server.admin.org_unit_settings.context;', get: osGetGridData, field:'context'},
121 {name: '&staff.server.admin.org_unit_settings.value;', get: osGetGridData, field:'value'},
125 <div dojoType='dojox.Grid' jsId='osGrid' ></div>
130 <div dojoType="dijit.Dialog" jsId='osEditDialog' title="&staff.server.admin.org_unit_settings.edit_setting;">
131 <table class='form_table'>
133 <tr><td colspan='2' align='center'><div id='os-edit-name'></div></td></tr>
134 <tr><td colspan='2' align='center'><div id='os-edit-desc' style='max-width:600px;'></div></td></tr>
138 <td>&staff.server.admin.org_unit_settings.context;</td>
140 <select dojoType="openils.widget.OrgUnitFilteringSelect" jsId='osEditContextSelector'
141 searchAttr="shortname" autocomplete="true" labelAttr='shortname' />
145 <td>&staff.server.admin.org_unit_settings.value;</td>
147 <input dojoType='dijit.form.TextBox' jsId='osEditTextBox'/>
148 <input dojoType='dijit.form.CurrencyTextBox' jsId='osEditCurrencyTextBox'/>
149 <input dojoType='dijit.form.NumberTextBox' jsId='osEditNumberTextBox'/>
150 <select dojoType='dijit.form.FilteringSelect' jsId='osEditBoolSelect'>
151 <option value='true'>&common.true;</option>
152 <option value='false'>&common.false;</option>
154 <div id='os-edit-auto-widget'></div>
159 <button dojoType='dijit.form.Button' onclick='osEditSetting(true);'>&staff.server.admin.org_unit_settings.delete_setting;</button>
162 <button dojoType='dijit.form.Button' onclick='osEditSetting();'>&staff.server.admin.org_unit_settings.update_setting;</button>
167 </div> <!-- /edit dialog -->
169 <div dojoType="openils.widget.ProgressDialog" jsId="progressDialog" indeterminate="true" ></div>
171 <!--i18n, use the &translation; here, then grab innerHTML in JS later.-->
172 <div id='proci18n' class='hidden'>&staff.server.admin.org_unit_settings.processing;</div>
173 <div id='noresults' class='hidden'>&staff.server.admin.org_unit_settings.no_results;</div>
174 <span id='os-true' class='hidden'>&common.true;</span>
175 <span id='os-false' class='hidden'>&common.false;</span>
176 <span id='os-copy' class='hidden'>&staff.server.admin.org_unit_settings.copy;</span>
177 <span id='os-revert' class='hidden'>&staff.server.admin.org_unit_settings.history_revert;</span>
178 <span id='os-not-chosen' class='hidden'>&staff.server.admin.org_unit_settings.not_chosen;</span>
181 <div id='jsonOutputDialog' dojoType='dijit.Dialog' jsId='osJSONOutDialog' title='&staff.server.admin.org_unit_settings.export;'>
182 <table class='form_table'>
183 <tr><td>&staff.server.admin.org_unit_settings.export_copy_label;</td></tr>
184 <tr><td><textarea id='jsonOutput' /></td></tr>
185 <tr><td><button dojoType='dijit.form.Button' onclick='osJsonOutputCopy();'>&staff.server.admin.org_unit_settings.copy;</button></td></tr>
190 <div id='jsonInputDialog' dojoType='dijit.Dialog' jsId='osJSONInDialog' title='&staff.server.admin.org_unit_settings.import;'>
191 <table class='form_table'>
192 <tr><td>&staff.server.admin.org_unit_settings.import_paste_label;</td></tr>
193 <tr><td><textarea id='jsonInput' /></td></tr>
194 <tr><td><button dojoType='dijit.form.Button' onclick='osJsonInputPaste();'>&staff.server.admin.org_unit_settings.paste;</button><button type='submit' dojoType='dijit.form.Button' onclick='osFromJsonSubmit();'>&staff.server.admin.org_unit_settings.submit;</button></td></tr>
198 <!--History Dialog-->
199 <div id="historyDialog" dojoType="dijit.Dialog" jsId="osHistDialog" title="&staff.server.admin.org_unit_settings.history;">
200 <span id='osHistName' ></span>
202 <!--Headers grabbed from this table are put in the next one by the js.-->
203 <table id="histTitle" class="hidden">
205 <td>&staff.server.admin.org_unit_settings.history_date;</td>
206 <td>&staff.server.admin.org_unit_settings.history_unit;</td>
207 <td>&staff.server.admin.org_unit_settings.history_orig;</td>
208 <td>&staff.server.admin.org_unit_settings.history_new;</td>
212 <table class="form_table" id="historyData" />
215 <!--Displays alerts at the top of the screen, much nicer than alert() or dojo equiv.-->
216 <div class="message_container" id="msgCont">
217 <div class="message" id='msgInner' ></div>