Changeset 3544 for TI05-delivery/ows_framework
- Timestamp:
- 28/02/08 15:24:20 (13 years ago)
- Location:
- TI05-delivery/ows_framework/trunk
- Files:
-
- 11 edited
Legend:
- Unmodified
- Added
- Removed
-
TI05-delivery/ows_framework/trunk/ows_common/ows_common/exceptions.py
r2507 r3544 35 35 OwsError.__init__(self, 'NoApplicableCode', text, locator) 36 36 37 class URLUnavailable(OwsError): 38 def __init__(self, text, locator=None): 39 OwsError.__init__(self, 'URLUnavailable', text, locator) 40 -
TI05-delivery/ows_framework/trunk/ows_server/ows_server/controllers/retrieve.py
r3536 r3544 91 91 c.xml=x.tohtml() 92 92 r='content' 93 c.tab='D isplay'93 c.tab='Details' 94 94 elif viewFormat=='DIF': 95 95 r='dif' … … 111 111 c.xml=x.tohtml() 112 112 r='content' 113 c.tab='D isplay'113 c.tab='Details' 114 114 elif self.format=='raw': 115 115 c.xml=x.xmls … … 120 120 if 'lastViewed' not in session: needed=1 121 121 session['lastViewed']=h.current_url() 122 if needed: c.pageTabs.append(('D isplay',session['lastViewed']))122 if needed: c.pageTabs.append(('Details',session['lastViewed'])) 123 123 124 124 session.save() -
TI05-delivery/ows_framework/trunk/ows_server/ows_server/controllers/selectedItems.py
r3536 r3544 4 4 from ows_server.models import stubB 5 5 from ows_server.lib.wmc_util import * 6 from ows_server.controllers import viewItems 6 7 import copy 7 8 import urllib … … 44 45 wmcURLs.append(item.wmcURL) 45 46 return getConTerraDoc(wmcURLs) 47 48 elif 'PlotSelectedInLocal' in self.inputs: 49 # get all selected selections 50 self.getSelectedItems() 51 52 # ensure selections have been made 53 if 'selectedItems' in session: 54 # the view tab uses its own selections session variable 55 # - this should initially match that set here 56 session['viewItems'] = copy.deepcopy(session['selectedItems']) 57 58 viewController = viewItems.ViewitemsController() 59 return viewController.index() 46 60 47 61 else: -
TI05-delivery/ows_framework/trunk/ows_server/ows_server/controllers/viewItems.py
r3538 r3544 3 3 from ows_server.models import Utilities 4 4 from ows_server.lib.wmc_util import * 5 from ows_server.models import stubB 5 6 import copy 6 7 … … 13 14 if 'REQUEST' in self.inputs and self.inputs['REQUEST'] == 'GetWebMapContext': 14 15 return GetWebMapContext(self) 15 # otherwise, 16 elif (self.inputs): 17 needed=0 18 if 'lastViewedWMC' not in session: 19 needed=1 20 session['lastViewedWMC']=h.current_url() 21 if needed: 22 c.pageTabs.append(('View',session['lastViewedWMC'])) 23 c.wmcURL = self.inputs['ENDPOINT'] 16 # otherwise, we can get here by two routes: 17 # i) either by clicking on the WMC icon in the details view - if so, get passed endpoint and add to 18 # selected items; 19 # ii) or from the selections tab - which will already have set up the correct selected items 20 21 # firstly check if page has been visited before; if not display tab 22 if 'viewItems' not in session: 23 c.pageTabs.append(('View', h.url_for(controller='viewItems',action='index'))) 24 24 25 # if ENDPOINT specified, we've reached the page via the WMC icon 26 if ('ENDPOINT' in self.inputs): 27 self.addViewItem(self.inputs['ENDPOINT']) 28 25 29 session.save() 26 30 return render('viewItems') 31 32 33 # add a selected item to the session 34 # - if this is the first item, then display the selections tab 35 def addViewItem(self,endpoint): 36 37 item = stubB.SelectedItem(None, None, None, endpoint) 38 39 selections = [item,] 40 # avoid duplicates 41 if 'viewItems' in session: 42 for selection in session['viewItems']: 43 if selection.wmcURL != endpoint: 44 selections.append(selection) 45 46 session['viewItems'] = selections 47 session.save() -
TI05-delivery/ows_framework/trunk/ows_server/ows_server/lib/base.py
r3536 r3544 90 90 c.pageTabs.append(('Selections',h.url_for(controller='selectedItems',action='index'))) 91 91 92 if 'lastViewed' in session: c.pageTabs.append(('Display',session['lastViewed'])) 93 if 'lastViewedWMC' in session: c.pageTabs.append(('View',session['lastViewedWMC'])) 92 if 'lastViewed' in session: c.pageTabs.append(('Details',session['lastViewed'])) 94 93 94 if 'viewItems' in session: c.pageTabs.append(('View', h.url_for(controller='viewItems',action='index'))) 95 95 96 # c.pageTabs.append(('Visualise',h.url_for(controller='visualise', action='index'))) 96 97 # c.pageTabs.append(('Download','Blah')) -
TI05-delivery/ows_framework/trunk/ows_server/ows_server/lib/wmc_util.py
r3536 r3544 13 13 from ndgUtils.ETxmlView import loadET,et2text, nsdumb 14 14 from ows_server.models.WMC import WMC 15 from ows_common import exceptions 15 16 import urllib2 16 17 … … 61 62 return render('conterra_aggregate', format='xml') 62 63 63 64 64 65 # Lookup a WMC doc and return it in the response65 66 66 def GetWebMapContext(self): 67 """ 68 Lookup a WMC doc and return it in the response 69 """ 67 70 # retrieve context data from the specifiled url 68 71 endpoint = self.inputs['ENDPOINT'] 69 72 if not endpoint: 70 raise ServiceException, "ENDPOINT parameter required"73 raise exceptions.MissingParameterValue, "ENDPOINT parameter required" 71 74 logger.info('Getting WebMapContext from endpoint: ' + endpoint) 72 75 … … 74 77 filehandle = urllib2.urlopen(endpoint) 75 78 except IOError: 76 raise ServiceException, "Could not access WMC endpoint: %s" % endpoint79 raise exceptions.URLUnavailable, "Could not access WMC endpoint: %s" % endpoint 77 80 78 81 response.headers['Content-Type'] = 'text/xml' -
TI05-delivery/ows_framework/trunk/ows_server/ows_server/models/Utilities.py
r3501 r3544 171 171 recreate it in its list form 172 172 ''' 173 if not string: 174 return 175 173 176 newList = [] 174 177 element = [] -
TI05-delivery/ows_framework/trunk/ows_server/ows_server/public/js/wmscControl.js
r3538 r3544 30 30 wmsParams: null, 31 31 32 initialize: function(treeDiv, layerDiv, domainDiv , notesDiv)32 initialize: function(treeDiv, layerDiv, domainDiv) 33 33 { 34 34 WMSC.log("Initialising Control"); … … 36 36 this.layerDiv = layerDiv; 37 37 this.domainDiv = domainDiv; 38 this.notesDiv = notesDiv;39 38 40 39 this.events = new OpenLayers.Events(this, $(this.treeDiv), … … 202 201 203 202 this.wmsEndpoint = node.data.endpoint; 204 this._updateTreeNotes();205 203 206 204 // If this node is a leaf, display the different layers available … … 441 439 return items; 442 440 }, 443 _updateTreeNotes: function() {444 var div = $(this.notesDiv);445 var notes = this.getTreeNotes();446 var i, items, item;447 448 items = [];449 for (i=0; i<notes.length; i++) {450 item = '<li><b>'+notes[i].title+'</b>';451 if (notes[i].abstract) {452 item += '<div>'+notes[i].abstract+'</div>';453 }454 item += '</li>';455 items[items.length] = item;456 }457 div.innerHTML = '<ul class="WMSC_treeNotes">' + items.join('\n') + '</ul>';458 },459 441 460 442 /** A hook to change the display of Dimension items. -
TI05-delivery/ows_framework/trunk/ows_server/ows_server/templates/dif.kid
r3503 r3544 7 7 <div id="entirepage"> 8 8 <div py:replace="header()"/> 9 <div py:replace="PageTabs('D isplay')"/>9 <div py:replace="PageTabs('Details')"/> 10 10 <div py:replace="searchOneLine()"/> 11 11 <div id="contents"> -
TI05-delivery/ows_framework/trunk/ows_server/ows_server/templates/stubB.kid
r3503 r3544 7 7 <body> 8 8 <div id="entirepage"> ${XML(c.tbinfo)} <div py:replace="header()"/> 9 <div py:replace="PageTabs('D isplay')"/>9 <div py:replace="PageTabs('Details')"/> 10 10 <div py:replace="searchOneLine(targets='Browse')"/> 11 11 <div id="contents"> -
TI05-delivery/ows_framework/trunk/ows_server/ows_server/templates/viewItems.kid
r3538 r3544 44 44 function init() 45 45 { 46 control = new WMSC.Control('layerTree', 'layerLeaves', 'dims', 'notes'); 47 control.addWebMapContext('viewItems', '${c.wmcURL}'); 46 control = new WMSC.Control('layerTree', 'layerLeaves', 'dims'); 47 <for py:for="i in session['viewItems']" class="dataset" py:strip="True"> 48 control.addWebMapContext('viewItems', '${i.wmcURL}'); 49 </for> 48 50 49 51 app = new WMSC.VisApp('map', control); … … 114 116 <table class="controlTable"> 115 117 <tr class="controlHeadings"> 116 <th>Dataset</th><th>Field</th> <th>Selection Notes</th>118 <th>Dataset</th><th>Field</th> 117 119 </tr> 118 120 <tr> … … 125 127 </div> 126 128 </td> 127 <td class="controlPanel">128 <div class="controlContent" id="notes">129 </div>130 </td>131 129 </tr> 132 130 </table>
Note: See TracChangeset
for help on using the changeset viewer.