From 923803b9a39df0d860ee19b7153eecd54f6017c3 Mon Sep 17 00:00:00 2001 From: erickson Date: Mon, 16 Mar 2009 13:51:30 +0000 Subject: [PATCH] more cleanup, plugged in get-selected operation, so back to original functionality git-svn-id: svn://svn.open-ils.org/ILS/trunk@12535 dcc99617-32d9-48b4-a31d-7c20da2025e4 --- Open-ILS/web/css/skin/default/acq.css | 11 +-- .../js/ui/default/acq/picklist/bib_search.js | 73 ++++++++++++------- .../default/acq/picklist/bib_search.tt2 | 43 ++++++----- 3 files changed, 74 insertions(+), 53 deletions(-) diff --git a/Open-ILS/web/css/skin/default/acq.css b/Open-ILS/web/css/skin/default/acq.css index a21cf9d30f..7e996cc519 100644 --- a/Open-ILS/web/css/skin/default/acq.css +++ b/Open-ILS/web/css/skin/default/acq.css @@ -11,8 +11,8 @@ /* 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%; } @@ -25,7 +25,8 @@ .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;} @@ -92,5 +93,5 @@ #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;} diff --git a/Open-ILS/web/js/ui/default/acq/picklist/bib_search.js b/Open-ILS/web/js/ui/default/acq/picklist/bib_search.js index 3966f1a9f9..c547fc4e99 100644 --- a/Open-ILS/web/js/ui/default/acq/picklist/bib_search.js +++ b/Open-ILS/web/js/ui/default/acq/picklist/bib_search.js @@ -78,8 +78,14 @@ function clearSearchForm() { } } +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 : [], @@ -116,37 +122,60 @@ function doSearch(values) { ); } -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() { @@ -173,20 +202,8 @@ 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 diff --git a/Open-ILS/web/templates/default/acq/picklist/bib_search.tt2 b/Open-ILS/web/templates/default/acq/picklist/bib_search.tt2 index 697adcba0e..05ebc3a978 100644 --- a/Open-ILS/web/templates/default/acq/picklist/bib_search.tt2 +++ b/Open-ILS/web/templates/default/acq/picklist/bib_search.tt2 @@ -19,7 +19,7 @@
Search Sources
@@ -40,27 +40,21 @@ value='10'> + +
Submit
+
Clear Form
+ -
-
Submit
- -
Clear Form
-
- - -
Search Results
-
New Search
+
New Search
Save Results
@@ -102,24 +96,33 @@ - + + + + -
SelectTitleAuthorISBNISSNEditionPubdatePublisherSelectTitleAuthorISBNISSNEditionPubdatePublisherSource
- - - - - - + + + + + + + +
+ + + [% END %] -- 2.43.2