<input type='checkbox' name="modifier"
value="available"[% CGI.param('modifier').grep('available').size ? ' checked="checked"' : '' %]
id='opac.result.limit2avail' />
- <label style="position:relative;top:-2px;"
+ <label id="modifier" style="position:relative;top:-2px;"
for='opac.result.limit2avail'>
[% l("Limit to Available") %]</label>
</div>
<br/>
<strong>[% l('Select Template') %]</strong>
<br/>
- <select id="templateList" onChange="selectSearchTemplateOrClearAll(this.value);">
+ <select id="templateList" onClick="" onChange="selectSearchTemplateOrClearAll(this.value);">
</select>
+ <br><br><br>
+ <strong>[% l('Template Name') %]</strong>
+ <br>
+ <input id="nameInput" type="text">
+ <button style="padding-left:5px;" onClick="templateActionSave();">[% l('Save Template') %]</button>
+ <br><br>
+ <button onClick="templateActionDelete();">[% l('Delete Template') %]</button>
</td>
- <td valign="top" class="hide_me">
- <select id="resultViewSel" name="detail_record_view" >
- <option value="0" selected="selected">Simple View</option>
- <option value="1">Detail View</option>
- </select>
+ <td valign="top" class="hide_me">
+ <select id="resultViewSel" name="detail_record_view" >
+ <option value="0" selected="selected">Simple View</option>
+ <option value="1">Detail View</option>
+ </select>
</td>
[% END %]
</tr>
var g = {};
-var templateList;
+var templateList = [];
var template;
var DEFAULT = "--Default--";
var myPackageDir = 'open_ils_staff_client';
function getSearchStash() {
- return window.localStorage.getItem('eg.catalog.staff.search_templates') || [];
+ return JSON.parse(window.localStorage.getItem('eg.catalog.staff.search_templates')) || [];
}
function getXULSearchStash() {
}
}
+function templateActionSave() {
+ var nameInput = document.getElementById('nameInput').value;
+ create_template(nameInput);
+}
+
+function templateActionDelete() {
+ var nameInput = document.getElementById('nameInput').value;
+ var templateList = getSearchStash();
+ var tempTemplate = getTemplateByName(nameInput, templateList);
+ if (tempTemplate) {
+ if (confirm("Are you sure you want to delete Template '" + nameInput + "'?")) {
+ deleteTemplatefromTemplateList(nameInput, templateList);
+ }
+ } else {
+ alert("Template '" + nameInput + "' does not exist.");
+ }
+}
+
//Creates, or edits, a search template based off the currently selected values
function create_template(tName) {
var template;
+ var templateList = getSearchStash();
if (!tName || tName == DEFAULT)
{
alert("That is not a valid name.");
var isNew = 1;
template = new Object();
populateTemplate(template);
- this.template = template;
+ // this.template = template;
templateList.push(template);
templateList.sort(compareTemplateNames)
}
else
{ return;}
}
- saveCurrentTemplate( template );
- saveTemplateList(templateList);
+ // saveCurrentTemplate( template );
+ saveCurrentTemplateToLocal(template);
+ // saveTemplateList(templateList);
+ saveTemplateListToLocal(templateList);
//Add to templateSel and select if new template
if(isNew)
}
}
+//Saves templateList to local storage in JSON format
+function saveTemplateListToLocal(templateList) {
+ window.localStorage.setItem('eg.catalog.staff.search_templates', JSON.stringify(templateList));
+ alert("Template List has been updated.");
+}
+
//Saves templateList to File in JSON format.
function saveTemplateListToFile( templateList ) {
try {
}
}
+//Saves current template name to local storage
+function saveCurrentTemplateToLocal(template) {
+ window.localStorage.setItem('eg.catalog.staff.search_templates', JSON.stringify(template));
+}
+
//Saves current template name to file
function saveCurrentTemplateToFile( template ) {
try {
//Populates template dropdown from given template list
function populateTemplateOptions(templateList) {
+ var templateList = getSearchStash();
templateSel.options.length = 0;
templateSel.options[0]= new Option(DEFAULT, "");
//Given a template name, saves template as the current search template if name found in TemplateList
//Populates options, or not, accordingly
function selectSearchTemplateOrClear(tName) {
+ var templateList = getSearchStash();
template = getTemplateByName(tName, templateList);
- saveCurrentTemplate( template )
+ // saveCurrentTemplate( template )
+ // saveCurrentTemplateToLocal(template);
if (template)
{
function deleteTemplatefromTemplateList(tName, templateList) {
var index = getTemplateIndex(tName, templateList);
templateList.splice(index,1);
- saveTemplateList(templateList);
+ // saveTemplateList(templateList);
+ saveTemplateListToLocal(templateList);
return templateList;
}
//deleted template is the current template in use
if (currentTemplate.name == tempTemplate.name)
{
- saveCurrentTemplate(null);
+ // saveCurrentTemplate(null);
+ saveCurrentTemplateToLocal(null);
clearOptions();
templateSel.selectedIndex = 0;
}
function saveCurrentTemplate(template) {
g.data.current_search_template = template;
g.data.stash('current_search_template');
- saveCurrentTemplateToFile(template)
+ saveCurrentTemplateToFile(template);
}
//clears all global row input fields