Changeset 6245


Ignore:
Timestamp:
Feb 25, 2013, 3:18:58 PM (9 years ago)
Author:
Nicklas Nordborg
Message:

References #1729 and #1730. Fixed for biosource pages.

Location:
trunk/www/biomaterials/biosources
Files:
1 added
3 edited

Legend:

Unmodified
Added
Removed
  • trunk/www/biomaterials/biosources/edit_biosource.jsp

    r6217 r6245  
    103103  final ItemQuery<ItemSubtype> subtypesQuery = Base.getSubtypesQuery(itemType);
    104104  subtypesQuery.include(Include.ALL);
    105  
    106  
    107  
    108105  JspContext jspContext = ExtensionsControl.createContext(dc, pageContext, GuiContext.item(itemType), bioSource);
    109106  ExtensionsInvoker invoker = EditUtil.useEditExtensions(jspContext);
    110107  %>
    111   <base:page type="popup" title="<%=title%>">
    112   <base:head scripts="tabcontrol.js,annotations.js,subtypes.js" styles="tabcontrol.css">
     108  <base:page type="popup" title="<%=title%>" id="edit-page">
     109  <base:head scripts="tabcontrol-2.js,annotations.js,subtypes.js,~biosources.js" styles="tabcontrol.css">
    113110    <ext:scripts context="<%=jspContext%>" />
    114111    <ext:stylesheets context="<%=jspContext%>" />
    115     <script>
    116     // Validate the "BioSource" tab
    117     function validateBioSource()
    118     {
    119       var frm = document.forms['biosource'];
    120       if (Main.trimString(frm.name.value) == '')
    121       {
    122         Forms.showNotification(frm.name, 'You must enter a name');
    123         return false;
    124       }
    125       return true;
    126     }
    127 
    128     // Submit the form
    129     function saveSettings()
    130     {
    131       var frm = document.forms['biosource'];
    132       if (TabControl.validateActiveTab('settings'))
    133       {
    134         if (annotationsLoaded)
    135         {
    136           Annotations.addModifiedAnnotationsToForm(frames.annotations, frm);
    137         }
    138         frm.submit();
    139       }
    140     }
    141    
    142     var annotationsLoaded = false;
    143     function switchTab(tabControlId, tabId)
    144     {
    145       if (TabControl.setActiveTab(tabControlId, tabId))
    146       {
    147         if (tabId == 'annotations' && !annotationsLoaded)
    148         {
    149           Annotations.loadAnnotateFrame(frames.annotations, '<%=ID%>', '<%=itemType.name()%>', <%=itemId%>, 0, ItemSubtype.getSubtypeId('biosource'));
    150           annotationsLoaded = true;
    151         }
    152       }
    153     }
    154    
    155     function init()
    156     {
    157       <%
    158       if (bioSource == null)
    159       {
    160         %>
    161         var frm = document.forms['biosource'];
    162         frm.name.focus();
    163         frm.name.select();
    164         <%
    165       }
    166       %>
    167     }
    168     </script>
    169112  </base:head>
    170   <base:body onload="init()">
     113  <base:body>
    171114    <h1><%=title%> <base:help tabcontrol="settings" /></h1>
     115   
     116    <div id="page-data" class="data-container"
     117      data-item-id="<%=itemId%>"
     118      ></div>
     119   
    172120    <form action="index.jsp?ID=<%=ID%>" method="post" name="biosource">
    173121    <input type="hidden" name="cmd" value="UpdateItem">
     
    175123    <t:tabcontrol id="settings"
    176124      subclass="content dialogtabcontrol"
    177       position="bottom"  remember="<%=bioSource != null%>" switch="switchTab"
     125      position="bottom"  remember="<%=bioSource != null%>"
    178126      extensions="<%=invoker%>">
    179     <t:tab id="info" title="Biosource" validate="validateBioSource()" helpid="biosource.edit">
     127    <t:tab id="info" title="Biosource" helpid="biosource.edit">
    180128      <table class="fullform input100">
    181129      <tr>
    182130        <th>Name</th>
    183         <td><input class="text required" type="text" name="name"
     131        <td><input class="text required auto-init" data-auto-init="<%=bioSource == null ? "focus-select" : "focus" %>"
     132          type="text" name="name"
    184133          value="<%=HTML.encodeTags(bioSource == null ? Values.getString(cc.getPropertyValue("name"), "New biosource") : bioSource.getName())%>"
    185134          maxlength="<%=BioSource.MAX_NAME_LENGTH%>"></td>
     
    251200
    252201    <base:buttongroup subclass="dialogbuttons">
    253       <base:button onclick="saveSettings()" title="Save" />
    254       <base:button onclick="window.close()" title="Cancel" />
     202      <base:button id="btnSave" title="Save" />
     203      <base:button id="close" title="Cancel" />
    255204    </base:buttongroup>
    256205  </base:body>
  • trunk/www/biomaterials/biosources/list_biosources.jsp

    r6221 r6245  
    117117  ExtensionsInvoker columnsInvoker = ListColumnUtil.useExtensions(jspContext);
    118118  %>
    119   <base:page title="<%=title==null ? "Biosources" : title%>" type="<%=mode.getPageType()%>">
    120   <base:head scripts="table.js" styles="table.css,toolbar.css">
     119  <base:page title="<%=title==null ? "Biosources" : title%>" type="<%=mode.getPageType()%>" id="list-page">
     120  <base:head scripts="table.js,~biosources.js" styles="table.css,toolbar.css">
    121121    <ext:scripts context="<%=jspContext%>" />
    122122    <ext:stylesheets context="<%=jspContext%>" />
    123     <script>
    124     var submitPage = 'index.jsp';
    125     var formId = 'biosources';
    126     function newItem()
    127     {
    128       Main.viewOrEditItem('<%=ID%>', '<%=itemType.name()%>', 0, true);
    129     }
    130     function editItem(itemId)
    131     {
    132       Main.viewOrEditItem('<%=ID%>', '<%=itemType.name()%>', itemId, true);
    133     }
    134     function viewItem(itemId)
    135     {
    136       Main.viewOrEditItem('<%=ID%>', '<%=itemType.name()%>', itemId, false);
    137     }
    138     function itemOnClick(evt, itemId)
    139     {
    140       Table.itemOnClick(formId, evt, itemId, '<%=mode.getName()%>', viewItem, editItem, returnSelected);
    141     }
    142     function deleteItems()
    143     {
    144       var frm = document.forms[formId];
    145       if (Forms.numChecked(frm) == 0)
    146       {
    147         Forms.showNotification('check.uncheck', 'Please select at least one item in the list', null, 'pointer-left');
    148         return;
    149       }
    150       frm.action = submitPage;
    151       frm.cmd.value = 'DeleteItems';
    152       frm.submit();
    153     }
    154     function restoreItems()
    155     {
    156       var frm = document.forms[formId];
    157       if (Forms.numChecked(frm) == 0)
    158       {
    159         Forms.showNotification('check.uncheck', 'Please select at least one item in the list', null, 'pointer-left');
    160         return;
    161       }
    162       frm.action = submitPage;
    163       frm.cmd.value = 'RestoreItems';
    164       frm.submit();
    165     }
    166     function setOwner()
    167     {
    168       Table.setOwnerOfItems(formId);
    169     }
    170     function shareItems()
    171     {
    172       Table.shareItems(formId);
    173     }
    174     function configureColumns()
    175     {
    176       Table.configureColumns(formId);
    177     }
    178     function runPlugin(cmd)
    179     {
    180       Table.submitToPopup(formId, cmd, 750, 500);
    181     }
    182     function returnSelected()
    183     {
    184       Table.returnSelected(formId, <%=callback != null ? "window.opener."+callback : "null" %>);
    185       window.close();
    186     }
    187     function newSample(bioSourceId)
    188     {
    189       Main.viewOrEditItem('<%=ID%>', 'SAMPLE', 0, true, '&biosource_id='+bioSourceId);
    190     }
    191     function newBioMaterialList()
    192     {
    193       var controller = Main.getController('BIOMATERIALLIST');
    194       Table.submitToPopup(formId, 'CreateBioMaterialList', controller.width, controller.height);
    195     }
    196     </script>
    197123  </base:head>
    198124 
     
    360286          >
    361287          <tbl:button
     288            id="btnNewItem"
    362289            disabled="<%=!createPermission%>"
    363290            image="new.png"
    364             onclick="newItem()"
    365291            title="New&hellip;"
    366292            tooltip="<%=createPermission ? "Create new biosource" : "You do not have permission to create biosources"%>"
    367293          />
    368294          <tbl:button
     295            id="btnDeleteItems"
    369296            image="delete.png"
    370             onclick="deleteItems()"
    371297            title="Delete"
    372298            tooltip="Delete the selected items"
    373299          />
    374300          <tbl:button
     301            id="btnRestoreItems"
    375302            image="restore.png"
    376             onclick="restoreItems()"
    377303            title="Restore"
    378304            tooltip="Restore the selected (deleted) items"
    379305          />
    380306          <tbl:button
     307            id="btnShareItems"
    381308            image="share.png"
    382             onclick="shareItems()"
    383309            title="Share&hellip;"
    384310            tooltip="Share the selected items"
    385311          />
    386312          <tbl:button
     313            id="btnSetOwner"
    387314            image="take_ownership.png"
    388             onclick="setOwner()"
    389315            title="Set owner&hellip;"
    390316            tooltip="Change owner of the selected items"
    391317          />
    392318          <tbl:button
     319            id="btnColumns"
    393320            image="columns.png"
    394             onclick="configureColumns()"
    395321            title="Columns&hellip;"
    396322            tooltip="Show, hide and re-order columns"
    397323          />
    398324          <tbl:button
     325            id="btnNewBioMaterialList"
    399326            image="add.png"
    400             onclick="newBioMaterialList()"
    401327            title="New biomaterial list&hellip;"
    402328            tooltip="Create a new biomaterial list from matching biosources"
     
    404330          />
    405331          <tbl:button
     332            id="btnImport"
     333            data-plugin-type="IMPORT"
    406334            image="import.png"
    407             onclick="runPlugin('ImportItems')"
    408335            title="Import&hellip;"
    409336            tooltip="Import data"
     
    411338          />
    412339          <tbl:button
     340            id="btnExport"
     341            data-plugin-type="EXPORT"
    413342            image="export.png"
    414             onclick="runPlugin('ExportItems')"
    415343            title="Export&hellip;"
    416344            tooltip="Export data"
     
    418346          />
    419347          <tbl:button
     348            id="btnRunPlugin"
     349            data-plugin-type="OTHER"
    420350            image="runplugin.png"
    421             onclick="runPlugin('RunListPlugin')"
    422351            title="Run plugin&hellip;"
    423352            tooltip="Run a plugin"
     
    449378              visible="<%=mode.hasCheck()%>"
    450379              ><base:icon
    451               image="check_uncheck.png"
     380                id="check.uncheck"
     381                image="check_uncheck.png"
    452382                tooltip="Check/uncheck all"
    453                  
    454383              /></tbl:header>
    455384            <tbl:header
     
    537466                    visible="<%=item.isShared()%>"
    538467                  />&nbsp;</tbl:header>
    539                 <tbl:cell column="name"><div class="link"
    540                   onclick="itemOnClick(<%=writePermission ? "event" : null%>, <%=itemId%>)"
     468                <tbl:cell column="name"><div
     469                  class="link table-item"
     470                  data-item-id="<%=itemId%>"
     471                  data-no-edit="<%=writePermission ? 0 : 1 %>"
     472                  tabindex="0"
    541473                  title="<%=tooltip%>"><%=name%></div></tbl:cell>
    542474                <tbl:cell column="id"><%=item.getId()%></tbl:cell>
     
    576508                  %>
    577509                  <base:icon
     510                    id="<%="newsample."+itemId%>"
    578511                    image="add.png"
    579                     onclick="<%="newSample("+itemId+")"%>"
     512                    subclass="auto-init"
     513                    data-auto-init="new-sample"
     514                    data-item-id="<%=itemId %>"
    580515                    tooltip="Create new sample"
    581516                    visible="<%=mode.hasEditLink() && createSamplePermission && usePermission %>"
     
    657592
    658593    <base:buttongroup subclass="dialogbuttons">
    659       <base:button onclick="returnSelected();" title="Ok" visible="<%=mode.hasOkButton()%>" />
    660       <base:button onclick="window.close();" title="Cancel" visible="<%=mode.hasCancelButton()%>" />
    661       <base:button onclick="window.close();" title="Close" visible="<%=mode.hasCloseButton()%>" />
     594      <base:button id="btnOk" title="Ok" visible="<%=mode.hasOkButton()%>" />
     595      <base:button id="close" title="Cancel" visible="<%=mode.hasCancelButton()%>" />
     596      <base:button id="close" title="Close" visible="<%=mode.hasCloseButton()%>" />
    662597    </base:buttongroup>
    663598  </base:body>
  • trunk/www/biomaterials/biosources/view_biosource.jsp

    r6244 r6245  
    106106  %>
    107107  <base:page title="<%=title%>" id="view-page">
    108   <base:head scripts="table.js,tabcontrol.js" styles="table.css,toolbar.css,headertabcontrol.css,path.css">
     108  <base:head scripts="table.js,tabcontrol-2.js,~biosources.js" styles="table.css,toolbar.css,headertabcontrol.css,path.css">
    109109    <ext:scripts context="<%=jspContext%>" />
    110110    <ext:stylesheets context="<%=jspContext%>" />
    111     <script>
    112     function editItem()
    113     {
    114       Main.viewOrEditItem('<%=ID%>', '<%=itemType.name()%>', <%=itemId%>, true);
    115     }
    116     function shareItem()
    117     {
    118       Main.openPopup('index.jsp?ID=<%=ID%>&cmd=ShareItem&item_id=<%=itemId%>', 'ShareBioSource', 600, 400);
    119     }
    120     function deleteItem()
    121     {
    122       location.replace('index.jsp?ID=<%=ID%>&cmd=DeleteItem&item_id=<%=itemId%>');
    123     }
    124     function restoreItem()
    125     {
    126       location.replace('index.jsp?ID=<%=ID%>&cmd=RestoreItem&item_id=<%=itemId%>');
    127     }
    128     function deleteItemPermanently()
    129     {
    130       Main.deleteItemPermanently('<%=ID%>', true, '<%=itemType.name()%>', <%=itemId%>, '&callback=itemDeleted');
    131     }
    132     function itemDeleted()
    133     {
    134       Main.listItems('<%=ID%>', '<%=itemType.name()%>');
    135     }
    136     function showUsingItems()
    137     {
    138       Main.showUsingItems('<%=ID%>', '<%=itemType.name()%>', <%=itemId%>);
    139     }
    140     function setOwner()
    141     {
    142       Main.openPopup('index.jsp?ID=<%=ID%>&cmd=SetOwnerOfItem&item_id=<%=itemId%>', 'SetOwnerOfItem', 450, 300);
    143     }
    144     function runPlugin(cmd)
    145     {
    146       Main.openPopup('index.jsp?ID=<%=ID%>&cmd='+cmd+'&item_id=<%=itemId%>', 'RunPlugin'+cmd, 750, 500);
    147     }
    148     function newSample()
    149     {
    150       Main.viewOrEditItem('<%=ID%>', 'SAMPLE', 0, true, '&biosource_id=<%=itemId%>');
    151     }
    152     </script>
    153111  </base:head>
    154112  <base:body>
     
    156114      title="Biosources" href="<%="index.jsp?ID="+ID%>" /><p:pathelement
    157115      title="<%=HTML.encodeTags(bioSource.getName())%>" /></p:path>
     116    <div id="page-data" data-item-id="<%=itemId%>"></div>
    158117   
    159118    <t:tabcontrol id="main" subclass="content mastertabcontrol" active="<%=tab%>">
     
    170129          />
    171130          <base:icon
     131            id="btnDeletePermanently"
    172132            image="deleted.png"
    173             onclick="deleteItemPermanently()"
    174133            tooltip="This item has been flagged for deletion. Click to delete it now."
    175134            enabled="<%=deletePermanentlyPermission %>"
    176135            visible="<%=isRemoved%>"
    177136          />
    178           <base:icon image="used.png"
    179             onclick="showUsingItems()"
     137          <base:icon
     138            id="btnUsingItems"
     139            image="used.png"
    180140            tooltip="This item is used by other items and can't be permanently deleted. Show the items that are using this one"
    181141            visible="<%=isRemoved && isUsed%>" />
     
    184144          <tbl:toolbar subclass="bottomborder">
    185145            <tbl:button
     146              id="btnEdit"
    186147              disabled="<%=!writePermission%>"
    187148              image="edit.png"
    188               onclick="editItem()"
    189149              title="Edit&hellip;"
    190150              tooltip="<%=writePermission ? "Edit this biosource" : "You do not have permission to edit this biosource"%>"
    191151            />
    192152            <tbl:button
     153              id="btnDelete"
    193154              disabled="<%=!deletePermission%>"
    194155              image="delete.png"
    195               onclick="deleteItem()"
    196156              title="Delete"
    197157              visible="<%=!bioSource.isRemoved()%>"
     
    199159            />
    200160            <tbl:button
     161              id="btnRestore"
    201162              disabled="<%=!writePermission%>"
    202163              image="restore.png"
    203               onclick="restoreItem()"
    204164              title="Restore"
    205165              visible="<%=bioSource.isRemoved()%>"
     
    207167            />
    208168            <tbl:button
     169              id="btnShare"
    209170              disabled="<%=!sharePermission%>"
    210171              image="share.png"
    211               onclick="shareItem()"
    212172              title="Share&hellip;"
    213173              tooltip="<%=sharePermission ? "Share this biosource to other user, groups and projects" : "You do not have permission to share this biosource"%>"
    214174            />
    215175            <tbl:button
     176              id="btnSetOwner"
    216177              disabled="<%=!setOwnerPermission%>"
    217178              image="take_ownership.png"
    218               onclick="setOwner()"
    219179              title="Set owner&hellip;"
    220180              tooltip="<%=setOwnerPermission ? "Change owner of this item" : "You do not have permission to change ownership of this item"%>"
    221181            />
    222182            <tbl:button
     183              id="btnNewSample"
    223184              image="add.png"
    224               onclick="newSample()"
    225185              title="New sample&hellip;"
    226186              tooltip="Create a new sample from this biosource"
     
    228188            />
    229189            <tbl:button
     190              id="btnImport"
    230191              image="import.png"
    231               onclick="runPlugin('ImportItem')"
     192              data-plugin-type="IMPORT"
    232193              title="Import&hellip;"
    233194              tooltip="Import data"
     
    235196            />
    236197            <tbl:button
    237               image="export.png"
    238               onclick="runPlugin('ExportItem')"
     198              id="btnExport"
     199              image="export.png"
     200              data-plugin-type="EXPORT"
    239201              title="Export&hellip;"
    240202              tooltip="Export data"
     
    242204            />
    243205            <tbl:button
    244               image="runplugin.png"
    245               onclick="runPlugin('RunPlugin')"
     206              id="btnRunPlugin"
     207              image="runplugin.png" 
     208              data-plugin-type="OTHER"
    246209              title="Run plugin&hellip;"
    247210              tooltip="Run a plugin"
     
    252215            <tbl:button
    253216              image="help.png"
    254               onclick="<%="Main.openHelp('" + ID +"', 'biosource.view.properties')"%>"
     217              subclass="auto-init"
     218              data-auto-init="help"
     219              data-help-id="biosource.view.properties"
    255220              title="Help&hellip;"
    256221              tooltip="Get help about this page"
     
    384349      </t:tab>
    385350      <t:tab id="overview" title="Overview"
    386         tooltip="Display a tree overview of related items"
    387         activate="Overview.loadOnce()">
     351        tooltip="Display a tree overview of related items">
    388352        <jsp:include page="../../common/overview/overview.jsp">
    389353          <jsp:param name="item_type" value="<%=itemType.name()%>" />
     
    394358      <t:tab id="history" title="Change history"
    395359        tooltip="Displays a log of all modifications made to this item"
    396         visible="<%=ChangeHistoryUtil.showChangeHistoryTab(sc)%>"
    397         activate="History.loadOnce()">
     360        visible="<%=ChangeHistoryUtil.showChangeHistoryTab(sc)%>">
    398361        <jsp:include page="../../common/history/frameset.jsp">
    399362          <jsp:param name="item_type" value="<%=itemType.name()%>" />
Note: See TracChangeset for help on using the changeset viewer.