Changeset 4604


Ignore:
Timestamp:
11/12/08 16:40:12 (11 years ago)
Author:
cbyrom
Message:

Implement text help for the remaining atom edit sections. Improve
handling of authors data - to cope with empty author data.
Move helper template functions to the utils template.

Location:
MILK/trunk/milk_server
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • MILK/trunk/milk_server/helpText.config

    r4599 r4604  
    1919list_help:Search the document repository for atoms matching the specified search filters. 
    2020 
     21atom_summary:A brief description of the data. 
     22atom_content:The actual data being described by this document.  NB, in the case of data granules, this content may just be a reference to an ingested CSML or CDML file. 
     23atom_author:The principal author of the actual underlying data.  Only one author can be specified per atom; if there are multiple authors, these should be specified as 'contributors'.  NB, an atom MUST have an author specified. 
     24atom_contributors:Any other authors of the actual underlying data.  NB, the principal author should be specified in the 'Author' input field. 
     25atom_online_refs:Online references with a specific relationship to the data being described here.  NB, if links are supplied they must be valid and include the transport protocol - e.g. 'http://blah.co.uk' 
     26atom_coverage:Summary of the temporal and spatial data coverage for the data. 
     27atom_responsible_parties:Parties responsible for the metadata - e.g. data curator.  Responsible parties can have a role specified to make their function clearer.  Multiple responsible parties can be specified. 
     28atom_associated_data:Data entities associated with this deployment. 
     29atom_associated_granules:Granule data associated with this data entity. 
     30atom_associated_deployments:Deployment data associated with this data entity. 
    2131 
    2232[WMC_CLIENT] 
  • MILK/trunk/milk_server/milk_server/templates/atom_editor/atom_editor.html

    r4563 r4604  
    5454                <div py:if="not c.atom.isDeployment() and not c.atom.isGranule()" py:replace="GeneralInfo(c.saveLink)"/> 
    5555                <div py:if="c.atom.isGranule() and not c.atom.contentFile" py:replace="UploadCSMLOrCDMLFileForm(c.saveLink)"/> 
    56                 <div py:if="not c.atom.isDeployment() and not c.atom.isGranule()" py:replace="TextArea('Summary', c.atom.Summary, c.saveLink)"/> 
    57                 <div py:if="not c.atom.isDeployment() and not c.atom.isGranule()" py:replace="TextArea('Content', c.atom.Content, c.saveLink)"/> 
     56                <div py:if="not c.atom.isDeployment() and not c.atom.isGranule()" py:replace="TextArea('Summary', c.atom.Summary, c.saveLink, g.atom_summary)"/> 
     57                <div py:if="not c.atom.isDeployment() and not c.atom.isGranule()" py:replace="TextArea('Content', c.atom.Content, c.saveLink, g.atom_content)"/> 
    5858                <div py:if="c.atom.isGranule()" py:replace="ContentFile(c.atom.contentFile, None)"/> 
    59                         <div py:replace="People('Author', [c.atom.author], c.saveLink)"/> 
    60                         <div py:if="not c.atom.isDeployment()" py:replace="People('Contributors', c.atom.contributors, c.saveLink)"/> 
     59                        <div py:replace="People('Author', [c.atom.author], c.saveLink, g.atom_author)"/> 
     60                        <div py:if="not c.atom.isDeployment()" py:replace="People('Contributors', c.atom.contributors, c.saveLink, g.atom_contributors)"/> 
    6161                        <div py:if="not c.atom.isDeployment() and not c.atom.isGranule()" py:replace="OnlineReferences(c.atom.getLinksOfType(c.atom.ONLINE_REF_LABEL), c.saveLink)"/> 
    62                         <div py:if="c.atom.isDeployment()" py:replace="Associations('Associated Data', c.atom.relatedLinks, c.addEntityLink, c.saveAssoc)"/> 
    63                         <div py:if="c.atom.isDE()" py:replace="Associations('Associated Data Granules', c.atom.getLinksOfType(g.vtd.GRANULE_TERM), c.addGranuleLink, c.saveAssoc)"/> 
    64                         <div py:if="c.atom.isDE()" py:replace="Associations('Associated Deployments', c.atom.getLinksOfType(g.vtd.DEPLOYMENT_TERM), c.addDeploymentLink, c.saveAssoc)"/> 
     62                        <div py:if="c.atom.isDeployment()" py:replace="Associations('Associated Data',  
     63                                c.atom.relatedLinks, c.addEntityLink, c.saveAssoc, g.atom_associated_data)"/> 
     64                        <div py:if="c.atom.isDE()" py:replace="Associations('Associated Data Granules',  
     65                                c.atom.getLinksOfType(g.vtd.GRANULE_TERM), c.addGranuleLink, c.saveAssoc, g.atom_associated_granules)"/> 
     66                        <div py:if="c.atom.isDE()" py:replace="Associations('Associated Deployments',  
     67                                c.atom.getLinksOfType(g.vtd.DEPLOYMENT_TERM), c.addDeploymentLink, c.saveAssoc, g.atom_associated_deployments)"/> 
    6568                        <div class="metadataSection" py:if="c.atom.isDeployable() or c.atom.isGranule()"> 
    6669                                <div id="dataEntitiesPlaceholder" /> 
     
    7780                                </span> 
    7881                        <div py:replace="Coverage(c.saveLink)"/> 
    79                         <div py:replace="People('Responsible Parties',  
    80                                 c.atom.ME.responsibleParties, c.saveLink)"/> 
     82                        <div py:replace="People('Responsible Parties', c.atom.ME.responsibleParties, c.saveLink, g.atom_responsible_parties)"/> 
    8183                            <div py:replace="Services()"/> 
    8284              </div> 
  • MILK/trunk/milk_server/milk_server/templates/atom_editor/atom_functions.html

    r4598 r4604  
    219219        </div> 
    220220 
    221  
    222      
    223     <div class="metadataSection" py:def="TextArea(name, value, editLink)"> 
     221     
     222    <div class="metadataSection" py:def="People(ptype,listOfPeople,editLink,helpText)"> 
    224223        <?python         
    225                                 divID = name + 'Div' 
    226                                 edID=divID+'ed'  
     224                                divID = ptype + 'peopleDiv' 
     225                                edID=divID+'ed' 
     226                                helpID = divID + '_help' 
    227227                ?> 
    228         <table py:if="value or editLink"> 
     228        <table py:if="listOfPeople or editLink"> 
    229229            <tr><td class="linehead"> 
    230230                    <table> 
    231                         <tr><td>${name}</td> 
     231                        <tr><td>$ptype<span py:if="editLink" py:replace="helpIcon(helpID, 'tr')"/></td> 
    232232                            <span py:if="editLink" py:strip=""> 
    233233                                <td align="right"> 
     
    240240                            </span> 
    241241                                        </tr> 
    242                                 </table> 
    243             </td></tr> 
    244             <tr><td> 
    245                 <div id = "$divID"> 
    246                                 ${Markup(value or 'No data specified at present')} 
    247                         </div> 
    248                         </td></tr> 
    249                 <tr py:if="editLink"><td> 
    250                         <div id="$edID" class="hidden"> 
    251                                         <form action="${editLink}" method="post"> 
    252                                         <table> 
    253                                 <tr><td> 
    254                                         ${Markup(h.text_area(name, value, class_="fullWidth", rows="9"))} 
    255                                 </td></tr> 
    256                                 <tr><td> 
    257                         ${Markup(h.submit('Update', **{'onclick': 'Div_show("loading");'}))} 
    258                     </td></tr> 
    259                                         </table> 
    260                                         </form> 
    261                         </div> 
    262                         </td></tr> 
    263         </table> 
    264     </div> 
    265      
    266     <div class="metadataSection" py:def="People(ptype,listOfPeople,editLink)"> 
    267         <?python         
    268                                 divID = ptype + 'peopleDiv' 
    269                                 edID=divID+'ed'  
    270                 ?> 
    271         <table py:if="listOfPeople or editLink"> 
    272             <tr><td class="linehead"> 
    273                     <table> 
    274                         <tr><td>$ptype</td> 
    275                             <span py:if="editLink" py:strip=""> 
    276                                 <td align="right"> 
    277                                         <span class="txtBlktog"> 
    278                                         <a href="javascript:;" title="Toggle Form"  
    279                                              onclick="swapLayers('$divID', '$edID'); return false;"> 
    280                                         Add/Edit</a> 
    281                                         </span> 
    282                                     </td> 
    283                             </span> 
    284                                         </tr> 
     242                                <tr id="$helpID" class="hidden" > 
     243                                        <td class="helptxt" colspan="2">$helpText</td> 
     244                                        </tr>                    
    285245                                </table> 
    286246            </td></tr> 
     
    312272                                if ptype == "Author": 
    313273                                        extraRows = 0 
     274 
     275                                hasData = False 
     276                                for person in listOfPeople: 
     277                                        if person and person.hasValue(): 
     278                                                hasData = True 
    314279                        ?> 
    315                         <span py:if="not editLink and not listOfPeople" py:strip=""> 
     280                        <span py:if="not editLink and not hasData" py:strip=""> 
    316281                                <td colspan="3">No data specified at present</td> 
    317282                        </span> 
    318                         <span py:if="editLink or listOfPeople" py:strip=""> 
     283                        <span py:if="editLink or hasData" py:strip=""> 
    319284                                <th py:if="hasRole" align="left">Role</th> 
    320285                                <th align="left">Name</th> 
    321286                                <th align="left">${dataType}</th> 
    322287                        </span> 
    323                         <span py:if="editLink and listOfPeople" py:strip=""> 
     288                        <span py:if="editLink and hasData" py:strip=""> 
    324289                                <th align="center">Remove</th> 
    325290                        </span> 
     
    350315                                </span> 
    351316                        </td> 
    352                         <span py:if="editLink and listOfPeople" py:strip=""> 
     317                        <span py:if="editLink and hasData" py:strip=""> 
    353318                                <td align="center"> 
    354319                                        ${Markup(h.check_box(ptype + '.' + str(i) + '.remove'))} 
     
    467432    </div> 
    468433 
    469  
    470     <span py:def="expandHideSection(div1,div2,icon)"> 
    471             <a href="javascript:;" title="Show/Hide details"  
    472                 onclick="swapLayers('$div1', '$div2'); return false;"> 
    473             <img src="$icon" alt="Toggle expand/contract" class="helpicon"/></a> 
    474     </span> 
    475  
    476434    <div class="metadataSection" py:def="OnlineReferences(links, editLink)"> 
    477435        <?python         
    478436                                divID = 'onlineRefDiv' 
    479                                 edID = divID+'ed'  
     437                                edID = divID+'ed' 
     438                                helpID = divID + '_help' 
    480439                ?> 
    481440                <table py:if="links or editLink"> 
    482441            <tr><td class="linehead"> 
    483442                    <table> 
    484                         <tr><td>Online References</td> 
     443                        <tr><td>Online References<span py:if="editLink" py:replace="helpIcon(helpID, 'tr')"/></td> 
    485444                            <span py:if="editLink" py:strip=""> 
    486445                                <td align="right"> 
     
    493452                            </span> 
    494453                                        </tr> 
     454                                <tr id="$helpID" class="hidden" > 
     455                                        <td class="helptxt" colspan="2">$g.atom_online_refs</td> 
     456                                        </tr>                    
    495457                                </table> 
    496458                                </td> 
     
    580542     
    581543 
    582     <div class="metadataSection" py:def="Associations(sectionName, links, addLink, editLink)"> 
     544    <div class="metadataSection" py:def="Associations(sectionName, links, addLink, editLink, helpText)"> 
    583545        <?python         
    584546                                divID = sectionName + 'Div' 
    585                                 edID = divID+'ed'  
     547                                edID = divID+'ed' 
     548                                helpID = divID + '_help' 
    586549                ?> 
    587550                <table py:if="links or editLink"> 
    588551            <tr><td class="linehead"> 
    589552                    <table> 
    590                         <tr><td>${sectionName}</td> 
     553                        <tr><td>${sectionName}<span py:if="editLink" py:replace="helpIcon(helpID, 'tr')"/></td> 
    591554                            <span py:if="addLink" py:strip=""> 
    592555                                <td align="right"> 
     
    600563                            </span> 
    601564                                        </tr> 
     565                                <tr id="$helpID" class="hidden" > 
     566                                        <td class="helptxt" colspan="2">$helpText</td> 
     567                                        </tr>                    
    602568                                </table> 
    603569                                </td> 
     
    794760        <?python         
    795761                                divID = 'spatialtemporalDiv' 
    796                                 edID = divID+'ed'  
     762                                edID = divID+'ed' 
     763                                helpID = divID + '_help' 
    797764                ?> 
    798765        <table> 
    799766            <tr><td class="linehead" colspan="2"> 
    800767                    <table> 
    801                         <tr><td>Data Coverage</td> 
     768                        <tr><td>Data Coverage<span py:if="editLink" py:replace="helpIcon(helpID, 'tr')"/></td> 
    802769                            <span py:if="editLink" py:strip=""> 
    803770                                <td align="right"> 
     
    810777                            </span> 
    811778                                        </tr> 
     779                                <tr id="$helpID" class="hidden" > 
     780                                        <td class="helptxt" colspan="2">$g.atom_coverage</td> 
     781                                        </tr>                    
    812782                                </table> 
    813783                                </td> 
  • MILK/trunk/milk_server/milk_server/templates/utils.html

    r4598 r4604  
    3636    </span> 
    3737 
     38 
     39    <span py:def="expandHideSection(div1,div2,icon)"> 
     40            <a href="javascript:;" title="Show/Hide details"  
     41                onclick="swapLayers('$div1', '$div2'); return false;"> 
     42            <img src="$icon" alt="Toggle expand/contract" class="helpicon"/></a> 
     43    </span> 
     44 
     45     
     46    <div class="metadataSection" py:def="TextArea(name, value, editLink, helpText)"> 
     47        <?python         
     48                                divID = name + 'Div' 
     49                                edID = divID+'ed' 
     50                                helpID = divID + '_help'  
     51                ?> 
     52        <table py:if="value or editLink"> 
     53            <tr><td class="linehead"> 
     54                    <table> 
     55                        <tr><td>${name}<span py:if="editLink" py:replace="helpIcon(helpID, 'tr')"/></td> 
     56                            <span py:if="editLink" py:strip=""> 
     57                                <td align="right"> 
     58                                        <span class="txtBlktog"> 
     59                                        <a href="javascript:;" title="Toggle Form"  
     60                                             onclick="swapLayers('$divID', '$edID'); return false;"> 
     61                                        Add/Edit</a> 
     62                                        </span> 
     63                                    </td> 
     64                            </span> 
     65                                        </tr> 
     66                                <tr id="$helpID" class="hidden" > 
     67                                        <td class="helptxt" colspan="2">$helpText</td> 
     68                                        </tr>                    
     69                                </table> 
     70            </td></tr> 
     71            <tr><td> 
     72                <div id = "$divID"> 
     73                                ${Markup(value or 'No data specified at present')} 
     74                        </div> 
     75                        </td></tr> 
     76                <tr py:if="editLink"><td> 
     77                        <div id="$edID" class="hidden"> 
     78                                        <form action="${editLink}" method="post"> 
     79                                        <table> 
     80                                <tr><td> 
     81                                        ${Markup(h.text_area(name, value, class_="fullWidth", rows="9"))} 
     82                                </td></tr> 
     83                                <tr><td> 
     84                        ${Markup(h.submit('Update', **{'onclick': 'Div_show("loading");'}))} 
     85                    </td></tr> 
     86                                        </table> 
     87                                        </form> 
     88                        </div> 
     89                        </td></tr> 
     90        </table> 
     91    </div> 
     92 
    3893         
    3994    <!--! hyperlinked image --> 
Note: See TracChangeset for help on using the changeset viewer.