Changeset 4442


Ignore:
Timestamp:
18/11/08 16:01:34 (11 years ago)
Author:
cbyrom
Message:

Add code to allow the display of the new detailed deployments data
(retrieved by additional atom lookups) asynchronously.

Location:
TI05-delivery/ows_framework/trunk/ows_server/ows_server
Files:
6 edited

Legend:

Unmodified
Added
Removed
  • TI05-delivery/ows_framework/trunk/ows_server/ows_server/controllers/listatom.py

    r4432 r4442  
    8080                # browser reload 
    8181                if not (atomTypeID and providerID): 
    82                     return self.atomHome() 
     82                    return self.list() 
    8383                     
    8484                atomTypeID = atomTypeID.split('--')[1] 
     
    113113                elif val == utils.DEPLOYMENT_ASSOCIATION: 
    114114                    c.title += ' - to create associations with deployment data' 
    115                     listVals = [g.vtd.TERM_DATA[g.vtd.ACTIVITY_TERM]] 
     115                    listVals = [g.vtd.TERM_DATA[g.vtd.DEPLOYMENT_TERM]] 
    116116                elif val == utils.ENTITY_ASSOCIATION: 
    117117                    c.title += ' - to create associations with activity/data production tool/observation station data' 
     
    139139         
    140140        response.status_code = 400 
    141         return render('error') 
     141        return render("genshi", 'error') 
    142142     
    143143     
     
    155155         
    156156        dr = DocumentRetrieve(self.cf.get('NDG_EXIST','local'), 
    157                               self.cf.get('NDG_EXIST','passwordFile')) 
     157                              pwfile=self.cf.get('NDG_EXIST','passwordFile')) 
    158158     
    159159        results = dr.search(term, 
  • TI05-delivery/ows_framework/trunk/ows_server/ows_server/controllers/retrieve.py

    r4348 r4442  
    1111from ndgUtils.models.Atom import Atom 
    1212from ndgUtils.vocabtermdata import VocabTermData as VTD 
     13from ndgUtils import DocumentRetrieve 
    1314 
    1415class RetrieveController(BaseController): 
     
    7677            response.status_code = 400 
    7778            return render('error') 
    78  
    79         status,x=interface.GetXML(uri,outputSchema=self.outputSchema) 
    80         c.xmlh=x 
    81         c.atom = Atom(xmlString=str(x), ndgObject = self.uri) 
    8279             
    8380        try: 
    84             import time 
    85             time.sleep(5) 
     81            status,x=interface.GetXML(uri,outputSchema=self.outputSchema, useCache=False) 
     82            c.xmlh=x 
     83            c.atom = Atom(xmlString=str(x), ndgObject = self.uri) 
     84             
     85            dr = DocumentRetrieve(self.cf.get('NDG_EXIST','local'), 
     86                      pwfile=self.cf.get('NDG_EXIST','passwordFile')) 
     87            c.atom.lookupDeploymentsInfo(dr) 
    8688            return render('genshi', 'deployments_data') 
    8789         
  • TI05-delivery/ows_framework/trunk/ows_server/ows_server/templates/atom_editor.html

    r4420 r4442  
    77        <head> 
    88        <title py:content="c.title">title</title> 
     9                <script type="text/javascript" src="$g.server/js/queueDeployments.js"/> 
    910    </head> 
    1011    <body> 
     
    3233                        <div py:if="c.atom.isDeployment()" py:replace="Associations('Associated Data', c.atom.relatedLinks, c.addEntityLink, c.saveAssoc)"/> 
    3334                        <div py:if="c.atom.isDE()" py:replace="Associations('Associated Data Granules', c.atom.getLinksOfType(g.vtd.GRANULE_TERM), c.addGranuleLink, c.saveAssoc)"/> 
    34                         <div py:if="c.atom.isDE()" py:replace="Associations('Associated Deployments', c.atom.getLinksOfType(g.vtd.ACTIVITY_TERM), c.addDeploymentLink, c.saveAssoc)"/> 
     35                        <div py:if="c.atom.isDE()" py:replace="Associations('Associated Deployments', c.atom.getLinksOfType(g.vtd.DEPLOYMENT_TERM), c.addDeploymentLink, c.saveAssoc)"/> 
     36                        <div id="deploymentsPlaceholder" /> 
    3537                                <span py:if="not c.atom.isDeployment()" py:strip=""> 
    3638                                        <span py:if="not c.saveLink" py:strip=""> 
     
    4042                                <div py:if="c.saveLink" py:replace="FullParameterList(c.atom.parameters, c.saveLink, '')"/> 
    4143                                </span> 
    42                         <div py:if="not c.saveLink" id="deploymentsPlaceholder" /> 
    43                         <div py:if="c.saveLink" py:replace="FullDeployments(c.atom.ME.deployments)"/> 
    4444                        <div py:replace="Coverage(c.saveLink)"/> 
    4545                        <div py:replace="People('Responsible Parties',  
  • TI05-delivery/ows_framework/trunk/ows_server/ows_server/templates/atom_functions.html

    r4420 r4442  
    1818 
    1919     
    20     <div class="headingblock" py:def="UploadFile(title, fileType, editLink)"> 
     20    <div py:def="UploadFile(title, fileType, editLink)"> 
     21        <div class="headingblock" py:if="editLink"> 
    2122        ${Markup(h.form(h.url(controller='editatom', action='upload', uri = c.uri), multipart=True))} 
    22         <table py:if="editLink"> 
     23        <table> 
    2324                              <tr> 
    2425                              <td class="cellhead"> 
     
    4041        </table> 
    4142                ${Markup(h.end_form())} 
     43                </div> 
    4244        </div> 
    4345 
     
    328330                        <tr><td> 
    329331                        <table id="deploymentsTable"> 
    330                         <tr> 
    331                         <td class="cellhead">Activities</td> 
    332                         <td> 
    333                                 <span py:for="act in c.atom.ME.activities" py:strip=""> 
    334                                         <a href="$act.url">${act.title or act.url}</a>&nbsp;&nbsp;  
    335                                 </span> 
    336                         </td>                    
    337                         </tr> 
    338                         <tr><td class="cellhead">Observation Stations</td> 
    339                         <td> 
    340                                 <span py:for="obs in c.atom.ME.obs" py:strip=""> 
    341                                         <a href="$obs.url">${obs.title or obs.url}</a>&nbsp;&nbsp;  
    342                                 </span> 
    343                         </td>                    
    344                         </tr> 
    345                         <tr><td class="cellhead">Data Production tools</td> 
    346                         <td> 
    347                                 <span py:for="dpt in c.atom.ME.dpts" py:strip=""> 
    348                                         <a href="$dpt.url">${dpt.title or dpt.url}</a>&nbsp;&nbsp;  
    349                                 </span> 
    350                         </td>                    
    351                         </tr> 
     332                                <tr> 
     333                                <td class="cellhead">Activities</td> 
     334                                <td> 
     335                                        <span py:for="act in c.atom.allActivities" py:strip=""> 
     336                                                <a href="$act.href">${act.title or act.href}</a>&nbsp;&nbsp;  
     337                                        </span> 
     338                                </td>                    
     339                                </tr> 
     340                                <tr><td class="cellhead">Observation Stations</td> 
     341                                <td> 
     342                                        <span py:for="obs in c.atom.allObs" py:strip=""> 
     343                                                <a href="$obs.href">${obs.title or obs.href}</a>&nbsp;&nbsp;  
     344                                        </span> 
     345                                </td>                    
     346                                </tr> 
     347                                <tr><td class="cellhead">Data Production tools</td> 
     348                                <td> 
     349                                        <span py:for="dpt in c.atom.allDpts" py:strip=""> 
     350                                                <a href="$dpt.href">${dpt.title or dpt.href}</a>&nbsp;&nbsp;  
     351                                        </span> 
     352                                </td>                    
     353                                </tr> 
    352354                        </table></td></tr> 
    353355                </table> 
     
    364366        <tr> 
    365367                <table class="subTable"> 
    366                                 <div py:for="d in deployments" py:strip=""> 
    367                                 <div py:replace="FullDeployment(deployments[d])"/> 
     368                                <div py:for="deployment in deployments" py:strip=""> 
     369                                <div py:replace="FullDeployment(deployment)"/> 
    368370                        </div> 
    369371                </table></tr> 
     
    373375    <div py:def="FullDeployment(dep)" py:strip=""> 
    374376                <tr class="cellhead" colspan="2"><td> Start Date: $dep.startDate, End Date: $dep.endDate</td></tr> 
    375         <tr py:for="link in dep.deploymentLinks" > 
     377        <tr py:for="link in dep.getAllLinks()" > 
    376378        <?python 
    377                 rel=link.vocabUrl.upper() 
     379                rel=link.rel.upper() 
    378380                if rel.startswith(g.vtd.ACTIVITY_TERM): 
    379381                                rel = "Activity" 
     
    383385                                rel = "Data Production Tool" 
    384386        ?> 
    385         <td>$rel</td><td><a href="$link.url">${link.title or link.url}</a></td> 
     387        <td>$rel</td><td><a href="$link.href">${link.title or link.href}</a></td> 
    386388        </tr> 
    387389    </div> 
  • TI05-delivery/ows_framework/trunk/ows_server/ows_server/templates/atom_list.html

    r4349 r4442  
    6969                                <tr py:for="atom in c.results"> 
    7070                                <?python 
     71                                        if atom and atom.name != None: 
    7172                                                subType = "None" 
    7273                                                subTypeVTI = None 
     
    7475                                                        subTypeVTI = g.vtd.getTermItemfromFullVocabURI(atom.subtype) 
    7576                                                        subType = g.vtd.tidySubTypeTitle(subTypeVTI.title) 
     77 
    7678                                                vti = g.vtd.getTermItemfromFullVocabURI(atom.type) 
    7779                                                type = vti.title 
     80                                                atomType = atom.type 
    7881                                                allowAdd = False 
    7982                                                if c.assocAtomType: 
     
    8386                                                        elif c.assocAtomType == g.vtd.DE_TERM and (g.vtd.isDeployment(subTypeVTI) or g.vtd.isGranule(vti)): 
    8487                                                                allowAdd = True 
     88                                                                if g.vtd.isDeployment(subTypeVTI): 
     89                                                                        atomType = g.vtd.getTermCurrentVocabURL(g.vtd.DEPLOYMENT_TERM) 
    8590                                                if allowAdd: 
    8691                                                        c.showAddButton = True 
     
    105110                                </td> 
    106111                                <td py:if="allowAdd" align="center"> 
    107                                 ${Markup(h.check_box(refLabel + atom.href + delim + (atom.name or "") + delim + (atom.type)))} 
     112                                ${Markup(h.check_box(refLabel + atom.href + delim + (atom.name or "") + delim + (atomType)))} 
    108113                                </td> 
    109114                                </tr> 
  • TI05-delivery/ows_framework/trunk/ows_server/ows_server/templates/deployments_data.html

    r4283 r4442  
    44        <xi:include href="atom_functions.html" /> 
    55        <div id="deploymentsData"> 
    6                         <div py:replace="FullDeployments(c.atom.ME.deployments)"/> 
    7                     <div py:replace="SummaryDeployments(c.atom.ME.deployments)"/> 
     6                        <div py:replace="FullDeployments(c.atom.deployments)"/> 
     7                    <div py:replace="SummaryDeployments(c.atom.deployments)"/> 
    88      </div> 
    99</html> 
Note: See TracChangeset for help on using the changeset viewer.