/* bib search */
#oils-acq-search-container { width:100%; }
-#oils-acq-search-sources-block { width:32%; vertical-align: top; float: left; margin-right: 10px;}
-#oils-acq-search-form-block { width:63%; vertical-align: top; float:right; }
+#oils-acq-search-sources-block { vertical-align: top; margin-top: 20px;}
+#oils-acq-search-form-block { vertical-align: top; margin-top: 20px;}
#oils-acq-search-sources-selector { padding: 2px; }
#oils-acq-search-sources-selector option { margin-bottom: 2px; }
.oils-acq-search-form-row { width: 100%; }
.oils-acq-search-subsources-label { margin-top: 5px; }
#oils-acq-search-sources-label { margin-bottom: 10px; }
#oils-acq-search-fields-label { margin-bottom: 10px; }
-#oils-acq-search-fields-submit-block { margin: 5px; text-align: center;}
+/*#oils-acq-search-fields-submit-block { margin: 5px; text-align: center;}*/
+#oils-acq-search-fields-submit-block { margin: 5px; }
#oils-acq-search-progress {width: 100%; text-align: center;}
#oils-acq-search-source-select option {padding: 5px;}
#oils-acq-search-fields-tbody td {padding: 3px;}
#oila-acq-picklist-result-table {width:100%}
-#oila-acq-picklist-result-table th {font-weight: bold; border-bottom:1px solid #888;}
-#oila-acq-picklist-result-table td {padding:6px; border-bottom:1px solid #888;}
+#oila-acq-picklist-result-table th {padding:5px; font-weight: bold; border-bottom:1px solid #888;}
+#oila-acq-picklist-result-table td {padding:5px; border-bottom:1px solid #888; height:3em;}
}
}
+var resultRow;
function doSearch(values) {
- dojo.style('oils-acq-pl-loading', 'visibility', 'visible');
+ showDiv('oils-acq-pl-loading');
+
+ var tbody = dojo.byId('plist-tbody');
+ if(!resultRow)
+ resultRow = tbody.removeChild(dojo.byId('plist-row'));
+ while(tbody.childNodes[0]) tbody.removeChild(tbody.childNodes[0]);
search = {
service : [],
);
}
-function setRowAttr(row, liWrapper, field) {
+var selectState = false;
+function toggleSelect() {
+ var inputs = dojo.query('[name=selectbox]', dojo.byId('plist-tbody'));
+ if(selectState)
+ dojo.forEach(inputs, function(i){i.checked = false});
+ else
+ dojo.forEach(inputs, function(i){i.checked = true});
+ selectState = !selectState;
+}
+
+function getSelected() {
+ var inputs = dojo.query('[name=selectbox]', dojo.byId('plist-tbody'));
+ var selected = [];
+ dojo.forEach(inputs, function(i) {
+ if(i.checked)
+ selected.push(liCache[i.parentNode.parentNode.getAttribute('li')]);
+ });
+ return selected;
+}
+
+function setRowAttr(td, liWrapper, field) {
var val = liWrapper.findAttr(field, 'lineitem_marc_attr_definition') || '';
- dojo.query('[name='+field+']', row)[0].appendChild(document.createTextNode(val));
+ td.appendChild(document.createTextNode(val));
}
-var resultRow;
function handleResult(r) {
var result = openils.Util.readResponse(r);
dojo.style('oils-acq-pl-search-results', 'display', 'block');
- dojo.style('oils-acq-search-block', 'display', 'none');
-
var tbody = dojo.byId('plist-tbody');
- if(!resultRow)
- resultRow = tbody.removeChild(dojo.byId('plist-row'));
if(result.lineitem) {
var li = result.lineitem;
liCache[li.id()] = li;
var liWrapper = new openils.acq.Lineitem({lineitem:li});
var row = resultRow.cloneNode(true);
- var tds = dojo.query('[name]', row);
- dojo.forEach(tds, function(td) {setRowAttr(row, liWrapper, td.getAttribute('name'));});
+ row.setAttribute('li', li.id());
+ var tds = dojo.query('[attr]', row);
+ dojo.forEach(tds, function(td) {setRowAttr(td, liWrapper, td.getAttribute('attr'));});
+ dojo.query('[name=source_label]', row)[0].appendChild(document.createTextNode(li.source_label()));
tbody.appendChild(row);
}
+
+ if(result.complete) // hide the loading image
+ showDiv('oils-acq-pl-search-results');
}
-function showPlForm() {
- dojo.style('oils-acq-pl-search-results', 'display', 'none');
- dojo.style('oils-acq-search-block', 'display', 'block');
- dojo.style('oils-acq-pl-loading', 'visibility', 'hidden');
+function showDiv(div) {
+ var divs = [
+ 'oils-acq-pl-search-results',
+ 'oils-acq-search-block',
+ 'oils-acq-pl-loading' ];
+ dojo.forEach(divs, function(d) {dojo.style(d,'display', 'none')});
+ dojo.style(div, 'display', 'block');
}
function loadPLSelect() {
function saveResults(values) {
selectedLIs = resultLIs;
- if(values.which == 'selected') {
- selectedLIs = [];
- var selected = plResultGrid.selection.getSelected();
- for(var idx = 0; idx < selected.length; idx++) {
- var rowIdx = selected[idx];
- var id = plResultGrid.model.getRow(rowIdx).id;
- for(var i = 0; i < resultLIs.length; i++) {
- var pl = resultLIs[i];
- if(pl.id() == id) {
- selectedLIs.push(pl);
- }
- }
- }
- }
+ if(values.which == 'selected')
+ selectedLIs = getSelected();
if(values.new_name && values.new_name != '') {
// save selected lineitems to a new picklist
<div id='oils-acq-search-sources-label'>Search Sources</div>
<select style='overflow-y:auto;' id='oils-acq-search-source-select'
multiple='true' jsId="bibSourceSelect" dojoType="dojox.form.CheckedMultiSelect">
- <option value='native-evergreen-catalog'>Evergreen Catalog</option>
+ <option selected='selected' value='native-evergreen-catalog'>Evergreen Catalog</option>
</select>
</div>
<div id='oils-acq-search-form-block'>
value='10'></input>
</td>
</tr>
+ <tr id='oils-acq-search-fields-submit-block'>
+ <td><div dojoType='dijit.form.Button' type='submit'>Submit</div></td>
+ <td><div dojoType='dijit.form.Button' onclick='clearSearchForm()'>Clear Form</div></td>
+ </tr>
</tbody>
</table>
- <div id='oils-acq-search-fields-submit-block'>
- <div dojoType='dijit.form.Button' type='submit'>Submit</div>
-
- <div dojoType='dijit.form.Button' onclick='clearSearchForm()'>Clear Form</div>
- </div>
</div>
</form>
-
- <div id='oils-acq-pl-loading' style='visibility:hidden'>
- <img src='[% ctx.media_prefix %]/opac/images/progressbar_green.gif'/>
- </div>
</div>
-
<div id='oils-acq-pl-search-results'>
<div dojoType="dijit.layout.ContentPane" layoutAlign="top" class='oils-header-panel'>
<div>Search Results</div>
<div>
- <div dojoType='dijit.form.Button' onClick='showPlForm'>New Search</div>
+ <div dojoType='dijit.form.Button' onClick='showDiv("oils-acq-search-block");'>New Search</div>
<div dojoType="dijit.form.DropDownButton">
<span>Save Results</span>
<div dojoType="dijit.TooltipDialog" execute="saveResults(arguments[0]);">
<table id='oila-acq-picklist-result-table'>
<thead>
<tr>
- <th>Select</th><th>Title</th><th>Author</th><th>ISBN</th><th>ISSN</th><th>Edition</th><th>Pubdate</th><th>Publisher</th>
+ <th><a href='javascript:toggleSelect();'>Select</a></th>
+ <th>Title</th><th>Author</th><th>ISBN</th>
+ <th>ISSN</th><th>Edition</th><th>Pubdate</th>
+ <th>Publisher</th><th>Source</th>
</tr>
</thead>
<tbody id='plist-tbody'>
<tr id='plist-row'>
<td name='selector'><input type='checkbox' name='selectbox'/></td>
- <td name='title'/>
- <td name='author'/>
- <td name='isbn'/>
- <td name='issn'/>
- <td name='edition'/>
- <td name='pubdate'/>
- <td name='publisher'/>
+ <td attr='title'/>
+ <td attr='author'/>
+ <td attr='isbn'/>
+ <td attr='issn'/>
+ <td attr='edition'/>
+ <td attr='pubdate'/>
+ <td attr='publisher'/>
+ <td name='source_label'/>
</tr>
</tbody>
</table>
</div>
</div>
+
+<div id='oils-acq-pl-loading' style='width:100%;margin-top:100px;display:none;text-align:center'>
+ <img src='[% ctx.media_prefix %]/opac/images/progressbar_green.gif'/>
+</div>
+
<script>dojo.style('oils-acq-pl-search-results', 'display', 'none');</script>
[% END %]