From bfffaf70d242ea0fab1523d40d844a06cbdfd050 Mon Sep 17 00:00:00 2001 From: "rjc%netscape.com" Date: Mon, 4 Sep 2000 06:52:40 +0000 Subject: [PATCH] Fix bugs #48321 and #51168: JS code from gervase.markham@univ.ox.ac.uk and r=me git-svn-id: svn://10.0.0.236/trunk@78101 18797224-902f-48f8-a5cc-f745e15eee43 --- .../bookmarks/resources/bm-props.js | 47 ++++++++++++++++++- .../bookmarks/resources/bm-props.xul | 4 +- 2 files changed, 48 insertions(+), 3 deletions(-) diff --git a/mozilla/xpfe/components/bookmarks/resources/bm-props.js b/mozilla/xpfe/components/bookmarks/resources/bm-props.js index 34992566dc5..42ecca7cae7 100644 --- a/mozilla/xpfe/components/bookmarks/resources/bm-props.js +++ b/mozilla/xpfe/components/bookmarks/resources/bm-props.js @@ -319,7 +319,7 @@ function Commit() endHourRange = endHourRangeNode.selectedItem.getAttribute("data"); } - if (startHourRange > endHourRange) + if (parseInt(startHourRange) > parseInt(endHourRange)) { var temp = startHourRange; startHourRange = endHourRange; @@ -414,3 +414,48 @@ function updateAttribute(prop, oldvalue, newvalue) return(changed); } + + +function setEndHourRange() +{ + // Get the values of the start-time and end-time as ints + var startHourRange = ""; + var startHourRangeNode = document.getElementById("startHourRange"); + if (startHourRangeNode) + { + startHourRange = startHourRangeNode.selectedItem.getAttribute("data"); + var startHourRangeInt = parseInt(startHourRange); + } + var endHourRange = ""; + var endHourRangeNode = document.getElementById("endHourRange"); + if (endHourRangeNode) + { + endHourRange = endHourRangeNode.selectedItem.getAttribute("data"); + var endHourRangeInt = parseInt(endHourRange); + } + + if (endHourRangeNode) + { + var endHourItemNode = endHourRangeNode.firstChild.firstChild; + + if (endHourItemNode) { + + // disable all those end-times before the start-time + for (var index = 0; index < startHourRangeInt; index++) { + endHourItemNode.setAttribute("disabled", "true"); + endHourItemNode = endHourItemNode.nextSibling; + } + + // update the selected value if it's out of the allowed range + if (startHourRangeInt >= endHourRangeInt) { + endHourRangeNode.selectedItem = endHourItemNode; + } + + // make sure all the end-times after the start-time are enabled + for (; index < 24; index++) { + endHourItemNode.removeAttribute("disabled"); + endHourItemNode = endHourItemNode.nextSibling; + } + } + } +} diff --git a/mozilla/xpfe/components/bookmarks/resources/bm-props.xul b/mozilla/xpfe/components/bookmarks/resources/bm-props.xul index 3168b895933..78c22003495 100644 --- a/mozilla/xpfe/components/bookmarks/resources/bm-props.xul +++ b/mozilla/xpfe/components/bookmarks/resources/bm-props.xul @@ -93,7 +93,7 @@ - + @@ -126,7 +126,7 @@ - +