From 43874c6fa6a0b3dd69c9c135e5caab8ab71197a3 Mon Sep 17 00:00:00 2001 From: erickson Date: Wed, 1 Feb 2006 23:15:17 +0000 Subject: [PATCH] Many random tweaks to get IE to behave git-svn-id: svn://svn.open-ils.org/ILS/trunk@2932 dcc99617-32d9-48b4-a31d-7c20da2025e4 --- Open-ILS/web/opac/common/js/init.js | 8 ++-- Open-ILS/web/opac/common/js/utils.js | 43 ++++++++++++++++--- .../opac/skin/default/js/depth_selector.js | 2 + Open-ILS/web/opac/skin/default/js/myopac.js | 13 +++++- Open-ILS/web/opac/skin/default/js/rdetail.js | 8 ++-- .../skin/default/xml/common/css_common.xml | 2 +- .../skin/default/xml/common/js_common.xml | 2 +- .../web/opac/skin/default/xml/common/logo.xml | 2 +- .../opac/skin/default/xml/home/homesearch.xml | 8 ++-- .../default/xml/myopac/myopac_bookbags.xml | 2 +- .../default/xml/myopac/myopac_checked.xml | 2 +- .../web/opac/skin/default/xml/page_myopac.xml | 3 ++ Open-ILS/web/opac/skin/default/xml/setenv.xml | 1 + 13 files changed, 74 insertions(+), 22 deletions(-) diff --git a/Open-ILS/web/opac/common/js/init.js b/Open-ILS/web/opac/common/js/init.js index 39ceb8e0d6..8004f1f3d2 100644 --- a/Open-ILS/web/opac/common/js/init.js +++ b/Open-ILS/web/opac/common/js/init.js @@ -6,7 +6,6 @@ window.onunload = windowUnload; attachEvt("common", "init", loadUIObjects); attachEvt("common", "init", initParams); attachEvt("common", "init", initCookies); -//attachEvt("common", "init", drawOrgTree); attachEvt("common", "unload", _tree_killer); try{ attachEvt("common", "unload", cleanRemoteRequests);} catch(e){} @@ -14,8 +13,11 @@ try{ attachEvt("common", "unload", cleanRemoteRequests);} catch(e){} function init() { runEvt('common','init'); if( getOrigLocation() == 0 ) ORIGLOC = LOCATION; -// try { if(!isFrontPage) grabUser(); }catch(e){} - grabUser(); + + var cgi = new CGI(); + if( grabUser() && cgi.param(PARAM_LOCATION) == null ) + LOCATION = G.user.home_ou(); + runEvt("common", "run"); //checkUserSkin(); G.ui.common.now_searching.appendChild(text(findOrgUnit(getLocation()).name())); diff --git a/Open-ILS/web/opac/common/js/utils.js b/Open-ILS/web/opac/common/js/utils.js index 4a060cef0b..214cfc4db9 100644 --- a/Open-ILS/web/opac/common/js/utils.js +++ b/Open-ILS/web/opac/common/js/utils.js @@ -164,6 +164,8 @@ function setSelector( sel, value ) { for( var i = 0; i!= sel.options.length; i++ ) { if( sel.options[i] ) { var val = sel.options[i].value; + if( val == null || val == "" ) /* for IE */ + val = sel.options[i].innerHTML; value += ""; /* in case of number */ if( val && val.toLowerCase() == value.toLowerCase() ) { sel.selectedIndex = i; @@ -176,16 +178,41 @@ function setSelector( sel, value ) { function getSelectorVal( sel ) { if(!sel) return null; - return sel.options[sel.selectedIndex].value; + var o = sel.options[sel.selectedIndex]; + var v = o.value; + if(v == null || v == "") v = o.innerHTML; + return v; +} + +function debugSelector(sel) { + var s = 'Selector\n'; + for( var i = 0; i != sel.options.length; i++ ) { + var o = sel.options[i]; + s += "\t" + o.innerHTML + "\n"; + } + return s; +} + +function doSelectorActions(sel) { + if(IE && sel) { + sel.onchange = function() { + var o = sel.options[sel.selectedIndex]; + if(o && o.onclick) o.onclick() + } + } } /* if index < 0, the item is pushed onto the end */ function insertSelectorVal( selector, index, name, value, action, indent ) { if( index < 0 ) index = selector.options.length; - for( var i = selector.options.length; i != index; i-- ) { - selector.options[i] = selector.options[i-1].cloneNode(true); - } + var a = []; + for( var i = selector.options.length; i != index; i-- ) + a[i] = selector.options[i-1]; + setSelectorVal( selector, index, name, value, action, indent ); + + for( var i = index + 1; i != a.length; i++ ) + selector.options[i] = a[i]; } function setSelectorVal( selector, index, name, value, action, indent ) { @@ -196,20 +223,22 @@ function setSelectorVal( selector, index, name, value, action, indent ) { if(IE) { var pre = elem("pre"); for( var i = 0; i != indent; i++ ) - pre.appendChild(text(" ")); + pre.appendChild(text(" ")); pre.appendChild(text(name)); option = new Option("", value); selector.options[index] = option; - select.appendChild(pre); + option.appendChild(pre); } else { indent = indent * 14; option= new Option(name, value); option.setAttribute("style", "padding-left: "+indent+'px;'); selector.options[index] = option; + if(action) option.onclick = action; } - if(action) option.onclick = action; + + option.onclick = action; } diff --git a/Open-ILS/web/opac/skin/default/js/depth_selector.js b/Open-ILS/web/opac/skin/default/js/depth_selector.js index 895c862052..2403de1d40 100644 --- a/Open-ILS/web/opac/skin/default/js/depth_selector.js +++ b/Open-ILS/web/opac/skin/default/js/depth_selector.js @@ -84,6 +84,8 @@ function buildLocationSelector(newLoc) { selector.appendChild(node); } +function getNewSearchDepth() { return newSearchDepth; } +function getNewSearchLocation() { return _newlocation; } function depthSelGetNewLoc() { return _newlocation; } function updateLoc(location, depth) { diff --git a/Open-ILS/web/opac/skin/default/js/myopac.js b/Open-ILS/web/opac/skin/default/js/myopac.js index 78f804c198..5fd1dc8dce 100644 --- a/Open-ILS/web/opac/skin/default/js/myopac.js +++ b/Open-ILS/web/opac/skin/default/js/myopac.js @@ -2,6 +2,8 @@ attachEvt("common", "run", myOPACInit ); attachEvt("common", "loggedIn", myOPACInit ); +attachEvt('common','locationUpdated', myopacReload ); + var fleshedUser = null; var fleshedContainers = {}; @@ -18,6 +20,15 @@ function myOPACInit() { else myOPACChangePage( "summary" ); } +function myopacReload() { + swapCanvas($('myopac_reloading')); + //alert($('myopac_reloading').className); + var a = {}; + a[PARAM_LOCATION] = getNewSearchLocation(); + a[PARAM_DEPTH] = getNewSearchDepth(); + goTo(buildOPACLink(a, true)); +} + function myOPACChangePage( page ) { @@ -550,7 +561,7 @@ function myOPACShowBookbags(force) { myOPACFetchBBItems( cont.id(), row ); dlink.setAttribute('href', 'javascript:myOPACDeleteBookbag("'+cont.id()+'");'); - if( cont.public() ) { + if( cont.pub() ) { unHideMe($n(row, 'myopac_bb_published_yes')); var link = $n(row, 'myopac_bb_published_view'); link.setAttribute('href', buildExtrasLink( 'bbags.xml?bb='+cont.id(), false)); diff --git a/Open-ILS/web/opac/skin/default/js/rdetail.js b/Open-ILS/web/opac/skin/default/js/rdetail.js index 86865d572d..69786a8937 100644 --- a/Open-ILS/web/opac/skin/default/js/rdetail.js +++ b/Open-ILS/web/opac/skin/default/js/rdetail.js @@ -126,18 +126,20 @@ function rdetailAddBookbags(r) { var selector = $('rdetail_more_actions_selector'); var found = false; var index = 3; + doSelectorActions(selector); for( var i = 0; i != containers.length; i++ ) { found = true; var container = containers[i]; insertSelectorVal( selector, index++, container.name(), - "container_" + container.id(), rdetailAddToBookbag, 1 ); + "container_" + container.id(), rdetailAddToBookbag, 1 ); } nextContainerIndex = index; if(!found) insertSelectorVal( selector, 3, "name", "value", 1 ); } +var _actions = {}; function rdetailNewBookbag() { var name = prompt($('rdetail_bb_new').innerHTML,""); if(!name) return; @@ -146,9 +148,9 @@ function rdetailNewBookbag() { if( id = containerCreate( name ) ) { alert($('rdetail_bb_success').innerHTML); var selector = $('rdetail_more_actions_selector'); - setSelector( selector, 'start' ); insertSelectorVal( selector, nextContainerIndex++, name, "container_" + id, rdetailAddToBookbag, 1 ); + setSelector( selector, 'start' ); } } @@ -231,9 +233,9 @@ function rdetailBuildCNList() { for( var i in arr ) { var cn = arr[i]; var opt = new Option(cn); - opt.onclick = rdetailGatherCN; select.options[index++] = opt; } + select.onchange = rdetailGatherCN; } function rdetailGatherCN() { diff --git a/Open-ILS/web/opac/skin/default/xml/common/css_common.xml b/Open-ILS/web/opac/skin/default/xml/common/css_common.xml index 7edcbeeb89..a7286bec86 100644 --- a/Open-ILS/web/opac/skin/default/xml/common/css_common.xml +++ b/Open-ILS/web/opac/skin/default/xml/common/css_common.xml @@ -1,7 +1,7 @@ - + - + diff --git a/Open-ILS/web/opac/skin/default/xml/common/logo.xml b/Open-ILS/web/opac/skin/default/xml/common/logo.xml index 268a297ef5..7970a18ef0 100644 --- a/Open-ILS/web/opac/skin/default/xml/common/logo.xml +++ b/Open-ILS/web/opac/skin/default/xml/common/logo.xml @@ -1,4 +1,4 @@
- +
diff --git a/Open-ILS/web/opac/skin/default/xml/home/homesearch.xml b/Open-ILS/web/opac/skin/default/xml/home/homesearch.xml index a1151c6595..464fca6752 100644 --- a/Open-ILS/web/opac/skin/default/xml/home/homesearch.xml +++ b/Open-ILS/web/opac/skin/default/xml/home/homesearch.xml @@ -4,8 +4,10 @@ xmlns="http://www.w3.org/1999/xhtml" xmlns:xi="http://www.w3.org/2001/XInclude"> - - + + + +
Loading...
+