www

Unnamed repository; edit this file 'description' to name the repository.
Log | Files | Refs | Submodules | README | LICENSE

commit a1ae5c13c9dcdfef4f53eedbcf32024ba8d9cd64
parent 233a2414e70ee8ae483e7c1b780df0f52ba7dbb1
Author: David Norton <david@nortoncrew.com>
Date:   Wed, 31 May 2006 17:50:33 +0000

View item interface prototype (click View, Metadata, Notes, to toggle.) Styles need a lot of work.


Diffstat:
Mchrome/chromeFiles/content/scholar/itemTreeView.js | 18+++++++++++++++++-
Mchrome/chromeFiles/content/scholar/overlay.js | 2+-
Achrome/chromeFiles/content/scholar/view.js | 36++++++++++++++++++++++++++++++++++++
Achrome/chromeFiles/content/scholar/view.xul | 37+++++++++++++++++++++++++++++++++++++
Achrome/chromeFiles/skin/default/scholar/view.css | 51+++++++++++++++++++++++++++++++++++++++++++++++++++
5 files changed, 142 insertions(+), 2 deletions(-)

diff --git a/chrome/chromeFiles/content/scholar/itemTreeView.js b/chrome/chromeFiles/content/scholar/itemTreeView.js @@ -22,7 +22,23 @@ Scholar.ItemTreeView.prototype.setTree = function(treebox) Scholar.ItemTreeView.prototype.getCellText = function(row, column) { var obj = this._getItemAtRow(row); - return obj.getField(column.id); + var val = obj.getField(column.id); + + if(column.id == 'dateAdded' || column.id == 'dateModified') //this is not so much that we will use this format for date, but a simple template for later revisions. + { + // + var d = val.split(' '); + var date = d[0].split('-'); + var time = d[1].split('-'); + + var myDate = new Date(); + myDate.setFullYear(date[0],date[1]-1,date[2]); + + val = myDate.getMonth()+1 + '/' + myDate.getDate() + '/' + myDate.getFullYear(); + } + + return val; + } diff --git a/chrome/chromeFiles/content/scholar/overlay.js b/chrome/chromeFiles/content/scholar/overlay.js @@ -68,7 +68,7 @@ var ScholarPane = new function() { var item = itemsView._getItemAtRow(itemsView.selection.currentIndex); - document.getElementById('content').loadURI('chrome://scholar/content/view.xul?url='+encodeURIComponent('http://www.google.com/search?q='+encodeURIComponent('"'+item.getField("title")+'"')+'&btnI')); + document.getElementById('content').loadURI('chrome://scholar/content/view.xul?id='+encodeURIComponent(item.getID())); } else { diff --git a/chrome/chromeFiles/content/scholar/view.js b/chrome/chromeFiles/content/scholar/view.js @@ -0,0 +1,35 @@ +var thisItem; + +function init() +{ + thisItem = Scholar.Items.get(getArgument("id")); + + document.getElementById('view').setAttribute('src','http://www.google.com/search?q='+encodeURIComponent('"'+thisItem.getField("title")+'"')+'&btnI'); +} + +function toggle(id) +{ + var button = document.getElementById('tb-'+id); + var elem = document.getElementById(id); + + button.checked = !button.checked; + elem.hidden = !elem.hidden; +} + +//thanks to: http://evolt.org/node/14435 +function getArgument (name) +{ + var arguments = document.location.search.slice(1).split('&'); + var r = ''; + for (var i = 0; i < arguments.length; i++) + { + if (arguments[i].slice(0,arguments[i].indexOf('=')) == name) + { + r = arguments[i].slice(arguments[i].indexOf('=')+1); + return (r.length > 0 ? unescape(r).split(',') : ''); + } + } + return ''; +} + +addEventListener("load", function(e) { init(e); }, false); +\ No newline at end of file diff --git a/chrome/chromeFiles/content/scholar/view.xul b/chrome/chromeFiles/content/scholar/view.xul @@ -0,0 +1,36 @@ +<?xml version="1.0"?> +<?xml-stylesheet href="chrome://scholar/skin/scholar.css" type="text/css"?> +<?xml-stylesheet href="chrome://scholar/skin/view.css" type="text/css"?> + +<page + xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"> + <script src="view.js"/> + <script src="include.js"/> + + <toolbar id="view-toolbar"> + <toolbarbutton class="toggler" id="tb-view" label="View" checked="true" oncommand="toggle('view')"/> + <toolbarbutton class="toggler" id="tb-metadata" label="Metadata" checked="true" oncommand="toggle('metadata')"/> + <toolbarbutton class="toggler" id="tb-notes" label="Notes" checked="true" oncommand="toggle('notes')"/> + </toolbar> + <stack flex="1"> + <browser id="view" flex="1"/> + <vbox> + <stack id="metadata"> + <box id="metadata-background"/> + <vbox id="metadata-pane"> + <textbox value="Title"/> + <textbox value="Rights"/> + <textbox value="Etc."/> + <textbox value="Etc."/> + <textbox value="Etc."/> + </vbox> + </stack> + <stack id="notes"> + <box id="notes-background"/> + <vbox id="notes-pane"> + <textbox value="Notes.... lorem ispum delorum..." multiline="true" flex="1"/> + </vbox> + </stack> + </vbox> + </stack> +</page> +\ No newline at end of file diff --git a/chrome/chromeFiles/skin/default/scholar/view.css b/chrome/chromeFiles/skin/default/scholar/view.css @@ -0,0 +1,50 @@ +#view-toolbar +{ + +} + +#view-toolbar .toggler +{ + +} + +#metadata-background +{ + position: relative; + margin-top: 10px; + left: 10px; + width: 400px; + height: 100px; + background-color: black; + opacity: 0.4; +} + +#metadata-pane +{ + position: relative; + margin-top: 10px; + left: 10px; + width: 400px; + height: 100px; + overflow: auto; +} + +#notes-background +{ + position: relative; + margin-top: 10px; + left: 10px; + width: 400px; + height: 100px; + background-color: black; + opacity: 0.4; +} + +#notes-pane +{ + position: relative; + margin-top: 10px; + left: 10px; + width: 400px; + height: 100px; +} +\ No newline at end of file