Changeset 5909


Ignore:
Timestamp:
Dec 14, 2011, 9:33:07 AM (11 years ago)
Author:
Nicklas Nordborg
Message:

References #1655: GUI improvements

  • Project dialog
  • Permission template dialog
  • Jobs dialog
  • Messages dialog
  • Session dialog
Location:
trunk/www
Files:
15 edited

Legend:

Unmodified
Added
Removed
  • trunk/www/common/columns/configure.jsp

    r5907 r5909  
    195195    {
    196196      var selected = getVisibleColumns();
    197       Main.openPopup('save_preset.jsp?ID=<%=ID%>&item_type=<%=itemType.name()%>&subcontext=<%=subContext%>&settingName=<%=settingName%>&columns='+selected, 'SavePreset', 440, 280);
     197      Main.openPopup('save_preset.jsp?ID=<%=ID%>&item_type=<%=itemType.name()%>&subcontext=<%=subContext%>&settingName=<%=settingName%>&columns='+selected, 'SavePreset', 450, 300);
    198198    }
    199199   
  • trunk/www/filemanager/files/edit_file.jsp

    r5908 r5909  
    7878  FileServer currentFileServer = null;
    7979  List<FileServer> recentFileServers = (List<FileServer>)cc.getRecent(dc, Item.FILESERVER);
     80  boolean isURL = true;
    8081
    8182  if (itemId == 0)
    8283  {
    83     title = "Create file";
     84    title = "New URL";
    8485    currentSubtypeId = Values.getInt(request.getParameter("subtype_id"));
    8586    if (currentSubtypeId == 0)
     
    100101    file = File.getById(dc, itemId);
    101102    file.checkPermission(Permission.WRITE);
    102    
     103    isURL = file.getLocation() == Location.EXTERNAL;
    103104    directory = file.getDirectory();
    104105    cc.setObject("item", file);
    105     title = "Edit file -- " + HTML.encodeTags(file.getName());
     106    title = (isURL ? "Edit URL -- " : "Edit file -- ") + HTML.encodeTags(file.getName());
    106107    try
    107108    {
     
    122123    }
    123124  }
    124  
    125125  // Query to retrieve file types
    126126  final ItemQuery<ItemSubtype> subtypesQuery = Base.getSubtypesQuery(itemType);
     
    240240      position="bottom" remember="<%=file != null%>"
    241241      extensions="<%=invoker%>">
    242     <t:tab id="info" title="File" validate="validateFile()" helpid="file.edit">
     242    <t:tab id="info" title="<%=isURL ? "URL" : "File" %>" validate="validateFile()" helpid="file.edit">
    243243      <table class="fullform input100">
    244244      <tr>
     
    247247      </tr>
    248248      <%
    249       if (file == null || file.getLocation() == Location.EXTERNAL)
     249      if (isURL)
    250250      {
    251251        %>
  • trunk/www/filemanager/files/view_file.jsp

    r5908 r5909  
    138138    function setOwner()
    139139    {
    140       Main.openPopup('index.jsp?ID=<%=ID%>&cmd=SetOwnerOfItem&item_id=<%=itemId%>', 'SetOwnerOfItem', 440, 280);
     140      Main.openPopup('index.jsp?ID=<%=ID%>&cmd=SetOwnerOfItem&item_id=<%=itemId%>', 'SetOwnerOfItem', 450, 300);
    141141    }
    142142    function runPlugin(cmd)
  • trunk/www/filemanager/fileservers/edit_fileserver.jsp

    r5908 r5909  
    254254            ><%=HTML.encodeTags(server == null ? cc.getPropertyValue("description") : server.getDescription())%></textarea>
    255255        </td>
    256         <td>
     256        <td style="width: 20px;">
    257257          <base:icon image="zoom.png"
    258258            onclick="Main.zoom('Description', 'server', 'description')"
  • trunk/www/include/menu.jsp

    r5907 r5909  
    627627      <m:menuitem
    628628        title="<%=menu.getString("resetlistsettings.title") + "…"%>"
    629         onclick="<%="Main.openPopup('"+root+"my_base/user/reset_filters.jsp?ID="+ID+"', 'ResetFilter', 440, 280);"%>"
     629        onclick="<%="Main.openPopup('"+root+"my_base/user/reset_filters.jsp?ID="+ID+"', 'ResetFilter', 450, 300);"%>"
    630630        tooltip="<%=menu.getString("resetlistsettings.tooltip")%>"
    631631      />
     
    11351135      <m:menuitem
    11361136        title="<%=menu.getString("switchuser.title") + "…"%>"
    1137         onclick="<%="Main.openPopup('"+root+"switch.jsp?ID="+ID+"', 'Switch', 360, 200);"%>"
     1137        onclick="<%="Main.openPopup('"+root+"switch.jsp?ID="+ID+"', 'Switch', 300, 200);"%>"
    11381138        tooltip="<%=menu.getString("switchuser.tooltip")%>"
    11391139      />
    11401140      <m:menuitem
    11411141        title="<%=menu.getString("impersonate.title") + "…"%>"
    1142         onclick="<%="Main.openPopup('"+root+"impersonate.jsp?ID="+ID+"', 'Impersonate', 480, 240);"%>"
     1142        onclick="<%="Main.openPopup('"+root+"impersonate.jsp?ID="+ID+"', 'Impersonate', 450, 300);"%>"
    11431143        tooltip="<%=menu.getString("impersonate.tooltip")%>"
    11441144        visible="<%=hasImpersonate%>"
     
    11461146      <m:menuitem
    11471147        title="<%=menu.getString("logout.title") + "…"%>"
    1148         onclick="<%="Main.openPopup('"+root+"logout.jsp?ID="+ID+"', 'Logout', 360, 200);"%>"
     1148        onclick="<%="Main.openPopup('"+root+"logout.jsp?ID="+ID+"', 'Logout', 300, 200);"%>"
    11491149        tooltip="<%=menu.getString("logout.tooltip")%>"
    11501150      />
  • trunk/www/include/scripts/main.js

    r5908 r5909  
    533533    var controller = this.getController('FILE');
    534534    var url = getRoot() + controller.url + '?ID='+ID+'&cmd=DownloadFile&item_id='+fileId;
    535     Main.openPopup(url, 'DownloadFile', 440, 280);
     535    Main.openPopup(url, 'DownloadFile', 450, 300);
    536536  }
    537537 
     
    543543    this.controllers['BIOASSAYSET'] = { url:'views/experiments/bioassaysets/index.jsp', width:800, height:500 };
    544544    this.controllers['TRANSFORMATION'] = { url:'views/experiments/transformations/index.jsp', width:500, height:300 };
    545     this.controllers['JOB'] = { url:'views/jobs/index.jsp', width:640, height:480, popup:true, edit:false };
     545    this.controllers['JOB'] = { url:'views/jobs/index.jsp', width:750, height:500, popup:true, edit:false };
    546546    this.controllers['FORMULA'] = { url:'views/formulas/index.jsp', width:850, height:600 };
    547547    this.controllers['PHYSICALBIOASSAY'] = { url:'views/physicalbioassays/index.jsp', width:800, height:500 };
     
    554554    this.controllers['SCAN'] = { url:'views/scans/index.jsp', width:800, height:500 };
    555555    this.controllers['IMAGE'] = { url:'views/scans/images/index.jsp', width:500, height:340 };
    556     this.controllers['SESSION'] = { url:'views/sessions/index.jsp', width:400, height:300, popup:true, edit:false };
     556    this.controllers['SESSION'] = { url:'views/sessions/index.jsp', width:450, height:300, popup:true, edit:false };
    557557    this.controllers['TAG'] = { url:'biomaterials/tags/index.jsp', width:450, height:280 };
    558558    this.controllers['EXTRACT'] = { url:'biomaterials/extracts/index.jsp', width:800, height:500 };
     
    567567    this.controllers['BIOPLATEEVENTDEFINITION'] = { url:'biomaterials/eventdef/index.jsp', width:600, height:500 };
    568568    this.controllers['BIOWELL'] = { url:'biomaterials/bioplates/wells/index.jsp', width:480, height:320 };
    569     this.controllers['MESSAGE'] = { url:'my_base/messages/index.jsp', width:600, height:420, popup:true, edit:false };
    570     this.controllers['PROJECT'] = { url:'my_base/projects/index.jsp', width:640, height:480 };
    571     this.controllers['PERMISSIONTEMPLATE'] = { url:'views/permissiontemplates/index.jsp', width:450, height:280 };
     569    this.controllers['MESSAGE'] = { url:'my_base/messages/index.jsp', width:600, height:400, popup:true, edit:false };
     570    this.controllers['PROJECT'] = { url:'my_base/projects/index.jsp', width:600, height:400 };
     571    this.controllers['PERMISSIONTEMPLATE'] = { url:'views/permissiontemplates/index.jsp', width:440, height:280 };
    572572    this.controllers['FILE'] = { url:'filemanager/index.jsp', width:600, height:400 };
    573573    this.controllers['FILESERVER'] = { url:'filemanager/fileservers/index.jsp', width:600, height:400 };
     
    14381438    url += '&ID='+getSessionId();
    14391439    if (callback) url += '&callback='+callback;
    1440     Main.openPopup(url, title.replace(/[^\w]/, ''), 440, 280);
     1440    Main.openPopup(url, title.replace(/[^\w]/, ''), 450, 300);
    14411441  }
    14421442
     
    14571457    url += '&ID='+getSessionId();
    14581458    if (callback) url += '&callback='+callback;
    1459     Main.openPopup(url, title.replace(/[^\w]/, ''), 440, 280);
     1459    Main.openPopup(url, title.replace(/[^\w]/, ''), 450, 300);
    14601460  }
    14611461
  • trunk/www/include/scripts/table.js

    r5907 r5909  
    254254    frm.cmd.value = cmd ? cmd : "SetOwner";
    255255    frm.target = 'SetOwner'+tableId;
    256     Main.openPopup('', 'SetOwner'+tableId, 440, 280);
     256    Main.openPopup('', 'SetOwner'+tableId, 450, 300);
    257257    frm.submit();
    258258    frm.target = window.name;
     
    299299  {
    300300    var url = getRoot()+'common/context/saveas.jsp?ID='+ID+'&item_type='+itemType+'&subcontext='+subContext;
    301     Main.openPopup(url, 'SaveCurrentContext', 400, 270);
     301    Main.openPopup(url, 'SaveCurrentContext', 450, 300);
    302302  }
    303303
     
    305305  {
    306306    var url = getRoot()+'common/context/manage.jsp?ID='+ID+'&item_type='+itemType+'&subcontext='+subContext;
    307     Main.openPopup(url, 'ManageContexts', 400, 270);
     307    Main.openPopup(url, 'ManageContexts', 450, 300);
    308308  }
    309309
  • trunk/www/include/styles/main.css

    r5908 r5909  
    171171
    172172/*
     173  Notes and messages
     174  ------------------
     175*/
     176.error
     177{
     178  color: #FFFFFF !important;
     179  background: #CC0000 !important;
     180}
     181
     182/*
    173183  Form input fields
    174184  -----------------
     
    188198  font-size: 1em;
    189199  margin: 1px;
    190   border: 1px solid #A0A0A0;
     200  border: 1px dotted #A0A0A0;
    191201  border-radius: 3px;
    192202  background: #FFFFFF;
     
    258268}
    259269
     270/* required fields have a blue-ish background and solid border */
     271input.required, select.required, textarea.required
     272{
     273  background: #D0F0FF;
     274  border: 1px solid #2288AA;
     275}
     276
    260277/*
    261278  Generic commonly used styles
     
    370387}
    371388
    372 .itemstatus {
     389.itemstatus
     390{
    373391  padding: 6px;
    374   margin-bottom: 4px;
    375 }
    376 
     392}
    377393
    378394
     
    382398  border: 1px solid #999999;
    383399}
    384 input.required, select.required, textarea.required {
    385   background: #D0F0FF;
    386 }
     400
    387401input.unchangeable, select.unchangeable, textarea.unchangeable, .unchangeable select {
    388402  background: #FFF0D0;
     
    448462}
    449463
    450 .error {
    451   margin: 8px;
    452   color: #FFFFFF;
    453   background: #CC0000;
    454   padding: 2px;
    455   border: 1px solid #CCCCCC;
    456   text-align: center;
    457 }
    458464
    459465.inlineerror {
  • trunk/www/include/styles/popup.css

    r5908 r5909  
    4646  background-position: right;
    4747  background-repeat: no-repeat;
     48  overflow: hidden;
    4849}
    4950
     
    5556  color: #2288AA;
    5657}
     58
    5759
    5860/* help icon is positioned to the right */
     
    165167{
    166168  /* height is really minimum height */
    167   height: 2em;
     169  height: 1.75em;
    168170  max-height: 2em;
    169171}
     
    173175{
    174176  /* height is really minimum height */
    175   height: 4em;
     177  height: 3.5em;
    176178  max-height: 4em;
    177179  vertical-align: top;
     
    184186}
    185187
    186 /* Expands vertically as needed */
    187188table.fullform > tbody > tr.dynamic
     189{
     190  height: auto;
     191  max-height: 100%;
     192  vertical-align: top;
     193}
     194
     195/* Expands vertically as needed if only a single tbody */
     196table.fullform > tbody:first-child > tr.dynamic
    188197{
    189198  height: 100%;
     
    195204table.fullform > tbody > tr > th
    196205{
    197   width: 150px;
     206  width: 10em;
    198207  font-weight: bold;
    199208  white-space: nowrap;
    200209  text-align: left;
    201210  padding: 1px 4px 1px 6px;
    202   border-top: 1px dotted #A0A0A0;
     211  border-bottom: 1px dotted #A0A0A0;
    203212  border-right: 1px solid #A0A0A0;
     213}
     214
     215/* Last row has no bottom border */
     216table.fullform > tbody > tr:last-child > th
     217{
     218  border-bottom: 0px;
    204219}
    205220
     
    211226}
    212227
    213 /* First row has no top border */
    214 table.fullform > tbody > tr:first-child > th
    215 {
    216   border-top: 0px;
    217 }
    218 
     228/* A section row should span the entire table */
     229table.fullform > tbody > tr.section > th
     230{
     231  border-top: 1px solid #A0A0A0;
     232  border-bottom: 1px solid #A0A0A0;
     233  border-right: 0px;
     234}
     235
     236/* First tbody section shouldn't have a top border */
     237table.fullform > tbody:first-child > tr.section > th
     238{
     239  border-top: 0px solid #A0A0A0;
     240}
     241
     242/* Regular cells have a white background */
    219243table.fullform > tbody > tr > td
    220244{
    221245  background: #FFFFFF;
    222   padding: 1px 2px 1px 2px;
     246  padding: 0px 2px 0px 2px;
    223247}
    224248
     
    226250table.fullform.smaller > tbody > tr > th
    227251{
    228   width: 100px;
     252  width: 7em;
    229253}
    230254
     
    232256table.fullform.larger > tbody > tr > th
    233257{
    234   width: 200px;
     258  width: 13em;
    235259}
    236260
     
    241265}
    242266
     267/* Use borders between td elements as well (for read-only tables) */
     268table.fullform.outlined > tbody > tr > td
     269{
     270  border-bottom: 1px dotted #A0A0A0;
     271}
     272table.fullform.outlined > tbody > tr:last-child > td
     273{
     274  border-bottom: 0px;
     275}
  • trunk/www/include/styles/progressbar.css

    r5908 r5909  
    3636.progressbar #bar
    3737{
    38   border: 1px solid #A0A0A0;
     38  border: 1px solid #224488;
    3939}
    4040
  • trunk/www/my_base/messages/view_message.jsp

    r5905 r5909  
    128128  <base:body>
    129129   
    130     <h3 class="docked"><%=title%> <base:help tabcontrol="main" /></h3>
    131     <t:tabcontrol id="main" active="<%=tab%>" position="bottom" contentstyle="<%="height: "+(int)(scale*320)+"px;"%>">
    132     <t:tab id="properties" title="Properties" helpid="message.view.properties">
    133 
     130    <h1><%=title%> <base:help tabcontrol="main" /></h1>
     131   
     132    <div class="content bottomborder">
     133      <table class="fullform outlined">
    134134      <%
    135135      if (message.isRemoved())
    136136      {
    137137        %>
    138         <div class="itemstatus">
    139           <base:icon
    140             image="<%=deletePermanentlyPermission ? "deleted.gif" : "deleted_disabled.gif"%>"
    141             onclick="<%=deletePermanentlyPermission ? "deleteItemPermanently()" : null%>"
    142             tooltip="<%=deletePermanentlyPermission ? "Permanently delete this item" : null%>"
    143             visible="<%=isRemoved%>"> This item has been flagged for deletion<br></base:icon>
    144           <base:icon image="used.gif"
    145             onclick="showUsingItems()"
    146             tooltip="Show the items that are using this one"
    147             visible="<%=isUsed%>"> This item is used by other items and can't be permanently deleted<br></base:icon>
    148         </div>
     138        <tr>
     139          <td colspan="2" style="background: #E8E8E8; border-bottom: 1px solid #A0A0A0;">
     140          <div class="itemstatus">
     141            <base:icon
     142              image="<%=deletePermanentlyPermission ? "deleted.gif" : "deleted_disabled.gif"%>"
     143              onclick="<%=deletePermanentlyPermission ? "deleteItemPermanently()" : null%>"
     144              tooltip="<%=deletePermanentlyPermission ? "Permanently delete this item" : null%>"
     145              visible="<%=isRemoved%>"> This item has been flagged for deletion<br></base:icon>
     146            <base:icon image="used.gif"
     147              onclick="showUsingItems()"
     148              tooltip="Show the items that are using this one"
     149              visible="<%=isUsed%>"> This item is used by other items and can't be permanently deleted<br></base:icon>
     150          </div>
     151          </td>
     152        </tr>
    149153        <%
    150154      }
    151155      %>
    152       <table class="form" cellspacing=0>
    153       <tr >
    154         <td class="prompt">Subject</td>
     156      <tr>
     157        <th>Subject</th>
    155158        <td><%=HTML.encodeTags(message.getName())%></td>
    156159      </tr>
    157       <tr >
    158         <td class="prompt">From</td>
     160      <tr>
     161        <th>From</th>
    159162        <td><%=HTML.encodeTags(message.getFrom())%></td>
    160163      </tr>
    161       <tr >
    162         <td class="prompt">Time sent</td>
     164      <%
     165      if (job != null)
     166      {
     167        %>
     168        <tr>
     169          <th>Job</td>
     170          <td><%=Base.getLinkedName(ID, job, false, false)%></td>
     171        </tr>
     172        <%
     173      }
     174      %>
     175      <tr>
     176        <th>Time sent</th>
    163177        <td><%=dateTimeFormatter.format(message.getTimeSent())%></td>
    164178      </tr>
    165       <tr >
    166         <td class="prompt">Message</td>
     179      <tr class="dynamic">
     180        <th>Message</th>
    167181        <td><%=HTML.niceFormat(message.getDescription())%></td>
    168182      </tr>
    169183      </table>
    170       </t:tab>
    171  
    172   <%
    173   if (job != null)
    174   {
    175     %>
    176     <t:tab id="job" title="Job" helpid="message.view.job">
    177       <table class="form" cellspacing=0>
    178       <tr>
    179         <td class="prompt">Name</td>
    180         <td><%=HTML.encodeTags(job.getName())%></td>
    181       </tr>
    182       <tr >
    183         <td class="prompt">Description</td>
    184         <td>
    185           <%=HTML.encodeTags(job.getDescription())%>
    186         </td>
    187       </tr>
    188       <tr >
    189         <td class="prompt">Priority</td>
    190         <td>
    191           <%=job.getPriority()%> (1 = highest, 10 = lowest)
    192         </td>
    193       </tr>
    194       <tr >
    195         <td class="prompt">Status</td>
    196         <td>
    197           <%=job.getStatus()%>: <%=HTML.niceFormat(job.getStatusMessage())%>
    198         </td>
    199       </tr>
    200       <tr >
    201         <td class="prompt">Percent complete</td>
    202         <td>
    203           <table border=0 cellspacing=0 cellpadding=0>
    204           <tr>
    205           <td width="100">
    206             <table width="100" class="progressbar" border=0 cellspacing=0 cellpadding=0>
    207             <tr>
    208               <%
    209               int percent = job.getPercentComplete();
    210               if (percent > 0)
    211               {
    212                 %>
    213                 <td width="<%=percent%>%" class="done">&nbsp;</td>
    214                 <%
    215               }
    216               if (percent == -1)
    217               {
    218                 %>
    219                 <td width="100%" class="unknown">unknown</td>
    220                 <%
    221               }
    222               else if (percent < 100)
    223               {
    224                 %>
    225                 <td width="<%=100-percent%>%" class="remain">&nbsp;</td>
    226                 <%
    227               }
    228               %>
    229             </tr>
    230             </table>
    231           </td>
    232           <%if (percent != -1) { %>
    233           <td>&nbsp;<%=percent%>%</td>
    234           <%} %>
    235           </tr>
    236           </table>
    237         </td>
    238       </tr>
    239       <tr >
    240         <td class="prompt">Created</td>
    241         <td>
    242           <%=dateTimeFormatter.format(job.getCreated())%>
    243         </td>
    244       </tr>
    245       <tr >
    246         <td class="prompt">Started</td>
    247         <td>
    248           <%=dateTimeFormatter.format(job.getStarted())%>
    249         </td>
    250       </tr>
    251       <tr >
    252         <td class="prompt">Ended</td>
    253         <td>
    254           <%=dateTimeFormatter.format(job.getEnded())%>
    255         </td>
    256       </tr>
    257       <tr >
    258         <td class="prompt">Server</td>
    259         <td>
    260           <%=HTML.encodeTags(job.getServer())%>
    261         </td>
    262       </tr>
    263       <tr >
    264         <td class="prompt">User</td>
    265         <td>
    266           <base:propertyvalue item="<%=job%>" property="owner.name" />
    267         </td>
    268       </tr>
    269       <tr >
    270         <td class="prompt">Experiment</td>
    271         <td>
    272           <base:propertyvalue item="<%=job%>" property="experiment.name" />
    273         </td>
    274       </tr>
    275       <tr >
    276         <td class="prompt">Plugin</td>
    277         <td>
    278           <base:propertyvalue item="<%=job%>" property="pluginDefinition.name" />
    279         </td>
    280       </tr>
    281       <tr >
    282         <td class="prompt">Configuration</td>
    283         <td>
    284           <base:propertyvalue item="<%=job%>" property="pluginConfiguration.name" />
    285         </td>
    286       </tr>
    287       </table>
    288     </t:tab>
    289     <%
    290     if (job.getStackTrace() != null)
    291     {
    292       %>
    293       <t:tab id="stacktrace" title="Stack trace" helpid="message.view.jobstacktrace">
    294         <div style="font-family: monospace">
    295         <%=HTML.niceFormat(job.getStackTrace())%>
    296         </div>
    297       </t:tab>
    298       <%
    299     }
    300     %>
    301    
    302     <t:tab id="Parameters" title="Parameters" helpid="message.view.jobparameters">
    303       <h4>Job parameters</h4>
    304       <table class="form" cellspacing=0>
    305         <%
    306         List<String> names = new java.util.ArrayList<String>(job.getParameterNames());
    307         Collections.sort(names);
    308         for (String name : names)
    309         {
    310           StringBuilder sb = new StringBuilder();
    311           String displayValue = "";
    312           String description = "";
    313           try
    314           {
    315             ParameterInfo pi = job.getParameterInfo(name);
    316             if (pi.getLabel() != null) name = HTML.encodeTags(pi.getLabel());
    317             description = HTML.encodeTags(pi.getDescription());
    318             List<?> values = pi.getValues();
    319             int i = 0;
    320             for (Object value : values)
    321             {
    322               if (value != null)
    323               {
    324                 if (i > 0) sb.append(", ");
    325                 i++;
    326                 if (value instanceof BasicItem)
    327                 {
    328                   BasicItem item = (BasicItem)value;
    329                   String itemName = "";
    330                   if (item instanceof File)
    331                   {
    332                     itemName = ((File)item).getPath().toString();
    333                   }
    334                   else if (item instanceof Nameable)
    335                   {
    336                     itemName = ((Nameable)item).getName();
    337                   }
    338                   else
    339                   {
    340                     itemName = item.toString();
    341                   }
    342                   sb.append(HTML.encodeTags(itemName));
    343                 }
    344                 else if (value instanceof Date)
    345                 {
    346                   sb.append(dateFormatter.format((Date)value));
    347                 }
    348                 else
    349                 {
    350                   sb.append(HTML.encodeTags(value.toString()));
    351                 }
    352               }
    353             }
    354             displayValue = sb.toString();
    355           }
    356           catch (Throwable ex)
    357           {
    358             displayValue = "<i>ERROR: "+ex.getMessage()+"</i>";
    359           }
    360           %>
    361           <tr>
    362             <td class="prompt"><span title="<%=description%>"><%=name%></span></td>
    363             <td>
    364               <%=displayValue%>
    365             </td>
    366           </tr>
    367           <%
    368         }
    369         %>
    370       </table>
    371 
    372         <%
    373         if (!readCurrentConfig)
    374         {
    375           %>
    376           <h4>Plugin configuration parameters</h4>
    377           <i>- denied -</i>
    378           <%
    379         }
    380         else if (currentConfig != null)
    381         {
    382           int parameterVersion = job.getParameterVersion();
    383           int currentVersion = currentConfig.getParameterVersion();
    384           %>
    385           <h4>Plugin configuration parameters</h4>
    386           <table class="form" cellspacing=0>
    387           <tr>
    388             <td class="prompt"><span
    389               title="The version of the parmeters used for this job, current version in paranthesis">Parameter version</span></td>
    390             <td><%=parameterVersion%> (<%=currentVersion %>)</td>
    391           </tr>
    392           <%
    393           names = new java.util.ArrayList<String>(currentConfig.getParameterNames(parameterVersion));
    394           Collections.sort(names);
    395           for (String name : names)
    396           {
    397             StringBuilder sb = new StringBuilder();
    398             String displayValue = "";
    399             String description = "";
    400             try
    401             {
    402               ParameterInfo pi = currentConfig.getParameterInfo(name, parameterVersion);
    403               if (pi.getLabel() != null) name = HTML.encodeTags(pi.getLabel());
    404               description = HTML.encodeTags(pi.getDescription());
    405               List<?> values = pi.getValues();
    406               int i = 0;
    407               for (Object value : values)
    408               {
    409                 if (value != null)
    410                 {
    411                   if (i > 0) sb.append(", ");
    412                   i++;
    413                   if (value instanceof BasicItem)
    414                   {
    415                     BasicItem item = (BasicItem)value;
    416                     String itemName = "";
    417                     if (item instanceof File)
    418                     {
    419                       itemName = ((File)item).getPath().toString();
    420                     }
    421                     else if (item instanceof Nameable)
    422                     {
    423                       itemName = ((Nameable)item).getName();
    424                     }
    425                     else
    426                     {
    427                       itemName = item.toString();
    428                     }
    429                     sb.append(HTML.encodeTags(itemName));
    430                   }
    431                   else if (value instanceof Date)
    432                   {
    433                     sb.append(dateFormatter.format((Date)value));
    434                   }
    435                   else
    436                   {
    437                     sb.append(HTML.encodeTags(value.toString()));
    438                   }
    439                 }
    440               }
    441               displayValue = sb.toString();
    442             }
    443             catch (Throwable ex)
    444             {
    445               displayValue = "<i>ERROR: "+ex.getMessage()+"</i>";
    446             }
    447             %>
    448             <tr>
    449               <td class="prompt"><span title="<%=description%>"><%=name%></span></td>
    450               <td>
    451                 <%=displayValue%>
    452               </td>
    453             </tr>
    454             <%
    455           }
    456           %>
    457           </table>
    458           <%
    459         }
    460         %>
    461      
    462     </t:tab>
    463     <%
    464   }
    465   %>
    466     </t:tabcontrol>
    467      
    468     <base:buttongroup>
     184      </div>
     185    <base:buttongroup subclass="dialogbuttons">
    469186      <base:button onclick="window.close()" title="Close" />
    470187    </base:buttongroup>
  • trunk/www/my_base/projects/edit_project.jsp

    r5908 r5909  
    569569  </base:head>
    570570  <base:body onload="init()">
    571     <p>
     571    <h1><%=title%> <base:help tabcontrol="settings" /></h1>
     572   
    572573    <form action="index.jsp?ID=<%=ID%>" method="post" name="project" onsubmit="return false;">
    573574    <input type="hidden" name="cmd" value="UpdateItem">
    574575    <input type="hidden" name="autoPermissions" value="<%=PermissionUtil.getPermissionCode(project == null ? EnumSet.range(Permission.READ, Permission.DELETE): project.getAutoPermission())%>">
    575576
    576     <h3 class="docked"><%=title%> <base:help tabcontrol="settings" /></h3>
    577     <t:tabcontrol id="settings" contentstyle="<%="height: "+(int)(scale*360)+"px;"%>"
     577   
     578    <t:tabcontrol id="settings"
     579      subclass="content dialogtabcontrol"
    578580      position="bottom" remember="<%=project != null%>"
    579581      extensions="<%=invoker%>">
    580582    <t:tab id="info" title="Project" validate="validateProject()" helpid="project.edit">
    581       <table class="form" cellspacing=0>
     583      <table class="fullform input100">
    582584      <tr>
    583         <td class="prompt">Name</td>
     585        <th>Name</th>
    584586        <td><input <%=requiredClazz%> type="text" name="name"
    585587          value="<%=HTML.encodeTags(project == null ? Values.getString(cc.getPropertyValue("name"), "New project") : project.getName())%>"
    586           size="40" maxlength="<%=Project.MAX_NAME_LENGTH%>"></td>
     588          maxlength="<%=Project.MAX_NAME_LENGTH%>"></td>
     589        <td></td>
    587590      </tr>
    588       <tr>
    589         <td class="prompt">Default permissions</td>
     591      <tr class="big">
     592        <th>Default permissions</th>
    590593        <td>
    591594          <base:select
     
    615618            onClick="autoPermissionsOnClick('auto_set_permission')"><label for="autoSetPermission">Set permission</label><br>
    616619        </td>
     620        <td></td>
    617621      </tr>
    618       <tr >
    619         <td class="prompt">Description</td>
    620         <td nowrap>
     622      <tr class="dynamic">
     623        <th>Description</th>
     624        <td>
    621625          <textarea <%=clazz%> rows="4" cols="40" name="description"
    622626            ><%=HTML.encodeTags(project == null ? cc.getPropertyValue("description") : project.getDescription())%></textarea>
    623           <a href="javascript:Main.zoom('Description', 'project', 'description')"
    624             title="Edit in larger window"><base:icon image="zoom.png" /></a>
     627        </td>
     628        <td style="width: 20px;">
     629          <base:icon image="zoom.png"
     630            onclick="Main.zoom('Description', 'project', 'description')"
     631            tooltip="Edit in larger window"
     632          />
    625633        </td>
    626634      </tr>
    627635      </table>
    628       <div align=right>&nbsp;<i><base:icon image="required.gif" /> = required information</i></div>
    629636    </t:tab>
    630637
    631638    <t:tab id="members" title="Members" validate="validateMembers()" helpid="project.edit.members">
    632639
    633     <table >
    634     <tr >
    635     <td>
    636       <b>Members</b><br>
    637       <select <%=clazz%> name="members" size="15" multiple onChange="membersOnChange()"
    638         style="width: 22em;">
    639       </select>
    640       <input type="hidden" name="modifiedUsers" value="">
    641       <input type="hidden" name="modifiedGroups" value="">
    642     </td>
    643     <td>
    644       <br>
    645       <b>Permissions</b><br>
    646       <input type="checkbox" id="read" checked name="read" onClick="permissionsOnClick('read')"><label for="read">Read</label><br>
    647       <input type="checkbox" id="user" checked name="use" onClick="permissionsOnClick('use')"><label for="use">Use</label><br>
    648       <input type="checkbox" id="write" name="write" onClick="permissionsOnClick('write')"><label for="write">Write</label><br>
    649       <input type="checkbox" id="delete" name="delete" onClick="permissionsOnClick('delete')"><label for="delete">Delete</label><br>
    650       <input type="checkbox" id="setOwner" name="set_owner" onClick="permissionsOnClick('set_owner')"><label for="setOwner">Set owner</label><br>
    651       <input type="checkbox" id="setPermission" name="set_permission" onClick="permissionsOnClick('set_permission')"><label for="setPermission">Set permission</label><br>
    652     </td>
    653     <td>
    654       <br>
    655       <table width="150">
    656       <tr><td><base:button
    657         clazz="leftaligned buttonclass"
    658         onclick="addUsersOnClick()"
    659         title="Add&nbsp;users&hellip;"
    660         tooltip="Add users to this project"
    661         /></td></tr>
    662       <tr><td><base:button
    663         clazz="leftaligned buttonclass"
    664         onclick="addGroupsOnClick()"
    665         title="Add&nbsp;groups&hellip;" 
    666         tooltip="Add groups to this project"
    667       /></td></tr>
    668       <tr><td><base:button
    669         clazz="leftaligned buttonclass"
    670         onclick="removeMemberOnClick()"
    671         title="Remove"
    672         tooltip="Remove the selected members from this project"
    673       /></td></tr>
    674       </table>
    675     </td>
     640    <table style="width: 100%;" class="filled">
     641    <tr>
     642      <td class="padded" style="width: 50%;"><b>Members</b></td>
     643      <td class="padded" style="width: 20%;"><b>Permissions</b></td>
     644      <td></td>
     645    </tr>
     646    <tr style="vertical-align: top;">
     647      <td style="padding-left: 5px; padding-right: 5px;">
     648        <select name="members" size=16 multiple onChange="membersOnChange()"
     649          style="width: 100%;">
     650        </select>
     651        <input type="hidden" name="modifiedUsers" value="">
     652        <input type="hidden" name="modifiedGroups" value="">
     653      </td>
     654      <td>
     655        <input type="checkbox" id="read" checked name="read" onClick="permissionsOnClick('read')"><label for="read">Read</label><br>
     656        <input type="checkbox" id="user" checked name="use" onClick="permissionsOnClick('use')"><label for="use">Use</label><br>
     657        <input type="checkbox" id="write" name="write" onClick="permissionsOnClick('write')"><label for="write">Write</label><br>
     658        <input type="checkbox" id="delete" name="delete" onClick="permissionsOnClick('delete')"><label for="delete">Delete</label><br>
     659        <input type="checkbox" id="setOwner" name="set_owner" onClick="permissionsOnClick('set_owner')"><label for="setOwner">Set owner</label><br>
     660        <input type="checkbox" id="setPermission" name="set_permission" onClick="permissionsOnClick('set_permission')"><label for="setPermission">Set permission</label><br>
     661      </td>
     662      <td>
     663        <base:buttongroup vertical="true" style="width: 12em;">
     664          <base:button
     665            subclass="leftaligned"
     666            onclick="addUsersOnClick()"
     667            title="Add&nbsp;users&hellip;"
     668            tooltip="Add users to this project"
     669          />
     670          <base:button
     671            subclass="leftaligned"
     672            onclick="addGroupsOnClick()"
     673            title="Add&nbsp;groups&hellip;" 
     674            tooltip="Add groups to this project"
     675          />
     676          <base:button
     677            subclass="leftaligned"
     678            onclick="removeMemberOnClick()"
     679            title="Remove"
     680            tooltip="Remove the selected members from this project"
     681          />
     682        </base:buttongroup>
     683      </td>
    676684    </tr>
    677685    </table>
     
    679687   
    680688    <t:tab id="defaults" title="Default items"  helpid="project.edit.defaults">
    681       <table class="form" cellspacing="2" border="0" cellpadding="0">
     689      <table class="fullform input100">
    682690      <tr>
    683         <td class="prompt">Raw data type</td>
     691        <th>Raw data type</th>
    684692        <td>
    685693          <select name="rawdatatype">
     
    699707          </select>
    700708        </td>
     709        <td></td>
    701710      </tr>
    702       </table>
    703 
    704       <table class="form" cellspacing="2" border="0" cellpadding="0" width="100%">       
    705         <tr >
    706           <td>
    707             <b>Default items</b><br>
    708             <select <%=clazz%> name="defaultItems" size="20" multiple style="width: 100%;">
    709             </select>
    710           </td>
    711           <td>
    712             <br>
    713             <table width="200">
    714             <tr><td><base:button
    715               clazz="leftaligned buttonclass"
     711      <tr class="dynamic">
     712        <th>Default items</th>
     713        <td>
     714          <select <%=clazz%> name="defaultItems" size="16" multiple style="width: 100%;">
     715          </select>
     716        </td>
     717        <td style="width: 13em;">
     718          <base:buttongroup vertical="true" style="width: 12em;">
     719            <base:button
     720              subclass="leftaligned"
    716721              onclick="addDefaultPlatformsOnClick()"
    717722              title="Add&nbsp;platforms&hellip;"
    718723              tooltip="Add default platforms to this project"
    719               /></td></tr>
    720             <tr><td><base:button
    721               clazz="leftaligned buttonclass"
     724            />
     725            <base:button
     726              subclass="leftaligned"
    722727              onclick="addDefaultPlatformVariantsOnClick()"
    723728              title="Add&nbsp;variants&hellip;"
    724729              tooltip="Add default platform variants to this project"
    725               /></td></tr>
    726             <tr><td><base:button
    727               clazz="leftaligned buttonclass"
     730            />
     731            <base:button
     732              subclass="leftaligned"
    728733              onclick="addDefaultProtocolsOnClick()"
    729734              title="Add&nbsp;protocols&hellip;"
    730735              tooltip="Add default protocols to this project"
    731               /></td></tr>
    732             <tr><td><base:button
    733               clazz="leftaligned buttonclass"
     736            />
     737            <base:button
     738              subclass="leftaligned"
    734739              onclick="addDefaultHardwareOnClick()"
    735740              title="Add&nbsp;hardware&hellip;" 
    736741              tooltip="Add default hardware to this project"
    737             /></td></tr>
    738             <tr><td><base:button
    739               clazz="leftaligned buttonclass"
     742            />
     743            <base:button
     744              subclass="leftaligned"
    740745              onclick="addDefaultSoftwareOnClick()"
    741746              title="Add&nbsp;software&hellip;" 
    742747              tooltip="Add default software to this project"
    743             /></td></tr>
    744             <tr><td><base:button
    745               clazz="leftaligned buttonclass"
     748            />
     749            <base:button
     750              subclass="leftaligned"
    746751              onclick="addDefaultArrayDesignsOnClick()"
    747752              title="Add&nbsp;array&nbsp;designs&hellip;" 
    748753              tooltip="Add default array designs to this project"
    749             /></td></tr>
    750             <tr><td><base:button
    751               clazz="leftaligned buttonclass"
     754            />
     755            <base:button
     756              subclass="leftaligned"
    752757              onclick="removeDefaultItemsOnClick()"
    753758              title="Remove"
    754759              tooltip="Remove the selected items from this project"
    755             /></td></tr>
    756             </table>
    757           </td>
    758         </tr>
     760            />
     761          </base:buttongroup>
     762        </td>
     763      </tr>
    759764      </table>
    760765    </t:tab>
    761766    </t:tabcontrol>
    762 
    763     <table align="center">
    764     <tr>
    765       <td width="50%"><base:button onclick="saveSettings()" title="Save" /></td>
    766       <td width="50%"><base:button onclick="window.close()" title="Cancel" /></td>
    767     </tr>
    768     </table>
    769767    </form>
     768
     769    <div class="legend">
     770      <base:icon image="required.gif" /> = required information
     771    </div>
     772
     773    <base:buttongroup subclass="dialogbuttons">
     774      <base:button onclick="saveSettings()" title="Save" />
     775      <base:button onclick="window.close()" title="Cancel" />
     776    </base:buttongroup>
    770777  </base:body>
    771778  </base:page>
  • trunk/www/views/jobs/view_job.jsp

    r5905 r5909  
    269269        Main.hide('percentRemain');
    270270        Main.show('percentUnknown');
    271         Main.hide('percent');
     271        Main.hide('percentText');
    272272      }
    273273      else
    274274      {
    275275        Main.hide('percentUnknown');
    276         Main.show('percent');
    277         document.getElementById('percent').innerHTML = '&nbsp;' + percentDone+'%';
     276        Main.show('percentText');
     277        document.getElementById('percentText').innerHTML = percentDone+'%';
    278278        doneElement.style.width = percentDone+'%';
    279279        remainElement.style.width = (100-percentDone)+'%';
     
    291291  </base:head>
    292292  <base:body onload="autoUpdate()">
    293     <h3 class="docked"><%=title%> <base:help tabcontrol="main" /></h3>
    294     <t:tabcontrol id="main" active="<%=tab%>" position="bottom" contentstyle="<%="height: "+(int)(scale*350)+"px;"%>">
     293    <h1><%=title%> <base:help tabcontrol="main" /></h1>
     294    <t:tabcontrol id="main"
     295      subclass="content dialogtabcontrol"
     296      active="<%=tab%>" position="bottom">
    295297    <t:tab id="properties" title="Properties" helpid="job.view.properties">
    296 
     298      <table class="fullform outlined">
    297299      <%
    298       if (job.isRemoved())
     300      if (isRemoved)
    299301      {
    300302        %>
    301         <div class="itemstatus">
    302           <base:icon
    303             image="<%=deletePermanentlyPermission ? "deleted.gif" : "deleted_disabled.gif"%>"
    304             onclick="<%=deletePermanentlyPermission ? "deleteItemPermanently()" : null%>"
    305             tooltip="<%=deletePermanentlyPermission ? "Permanently delete this item" : null%>"
    306             visible="<%=isRemoved%>"> This item has been flagged for deletion<br></base:icon>
    307           <base:icon image="used.gif"
    308             onclick="showUsingItems()"
    309             tooltip="Show the items that are using this one"
    310             visible="<%=isUsed%>"> This item is used by other items and can't be permanently deleted<br></base:icon>
    311         </div>
     303        <tr>
     304          <td colspan="2" style="background: #E8E8E8; border-bottom: 1px solid #A0A0A0;">
     305          <div class="itemstatus">
     306            <base:icon
     307              image="<%=deletePermanentlyPermission ? "deleted.gif" : "deleted_disabled.gif"%>"
     308              onclick="<%=deletePermanentlyPermission ? "deleteItemPermanently()" : null%>"
     309              tooltip="<%=deletePermanentlyPermission ? "Permanently delete this item" : null%>"
     310              visible="<%=isRemoved%>"> This item has been flagged for deletion<br></base:icon>
     311            <base:icon image="used.gif"
     312              onclick="showUsingItems()"
     313              tooltip="Show the items that are using this one"
     314              visible="<%=isUsed%>"> This item is used by other items and can't be permanently deleted<br></base:icon>
     315          </div>
     316          </td>
     317        </tr>
    312318        <%
    313319      }
    314320      %>
    315       <table class="form" cellspacing=0>
    316       <tr>
    317         <td class="prompt">Name</td>
     321      <tr>
     322        <th style="border-top: 0px;">Name</th>
    318323        <td><%=HTML.encodeTags(job.getName())%></td>
    319324      </tr>
    320       <tr >
    321         <td class="prompt">Plugin</td>
     325      <tr>
     326        <th>Plugin</th>
    322327        <td>
    323328          <base:propertyvalue item="<%=job%>" property="pluginDefinition.name" />
     
    330335      {
    331336        %>
    332         <tr >
    333           <td class="subprompt">-configuration</td>
     337        <tr>
     338          <th class="subprompt">- configuration</th>
    334339          <td>
    335340            <base:propertyvalue item="<%=job%>" property="pluginConfiguration.name" />
     
    339344      }
    340345      %>
    341       <tr >
    342         <td class="prompt">User</td>
     346      <tr>
     347        <th>User</th>
    343348        <td>
    344349          <base:propertyvalue item="<%=job%>" property="owner.name" />
    345350        </td>
    346351      </tr>
    347       <tr >
    348         <td class="prompt">Experiment</td>
     352      <tr>
     353        <th>Experiment</th>
    349354        <td>
    350355          <base:propertyvalue item="<%=job%>" property="experiment.name" />
     
    352357      </tr>
    353358      <tr>
    354         <td class="prompt">Description</td>
    355         <td><%=HTML.niceFormat(job.getDescription())%></td>
    356       </tr>
    357       <tr >
    358         <td class="prompt">Priority</td>
    359         <td>
    360           <%=job.getPriority()%> (1 = highest, 10 = lowest)
    361         </td>
    362       </tr>
    363       <tr >
    364         <td class="prompt">Status</td>
    365         <td <%=job.getStatus() == Job.Status.ERROR ? "class=\"error\" style=\"text-align: left;\"" : "" %>>
     359        <th>Status</th>
     360        <td class="<%=job.getStatus() == Job.Status.ERROR ? "error" : ""%>">
    366361          <%=job.getStatus()%><%=job.isDryRun() ? " (dry-run)" : "" %>:
    367362          <span id="message"><%=HTML.niceFormat(job.getStatusMessage())%></span>
    368363        </td>
    369364      </tr>
    370       <tr >
    371         <td class="prompt">Percent complete</td>
    372         <td>
    373           <table border=0 cellspacing=0 cellpadding=0>
     365      <tr>
     366        <th class="subprompt">- percent complete</th>
     367        <td>
     368          <table class="progressbar">
    374369          <tr>
    375           <td  style="max-width: 100px;">
    376             <table width="100px" class="progressbar" border=0 cellspacing=0 cellpadding=0>
     370          <td>
     371            <table id="bar" style="width: 200px;">
    377372            <tr>
    378373              <%
    379374              int percent = job.getPercentComplete();
    380375              %>
    381               <td id="percentDone" class="done" width="<%=percent%>%"
    382                 style="<%=percent <= 0 ? "display: none;" : ""%>">&nbsp;</td>
    383               <td id="percentRemain" class="remain" width="<%=100-percent%>%"
    384                 style="<%=percent == 100 || percent == -1 ? "display: none;" : ""%>">&nbsp;</td>
    385               <td id="percentUnknown" width="100%" class="unknown"
     376              <td id="percentDone" style="width: <%=percent%>%; <%=percent <= 0 ? "display: none;" : ""%>">&nbsp;</td>
     377              <td id="percentRemain" style="width: <%=100-percent%>%; <%=percent == 100 || percent == -1 ? "display: none;" : ""%>">&nbsp;</td>
     378              <td id="percentUnknown" width="100%"
    386379                style="<%=percent != -1 ? "display: none" : "" %>">unknown</td>
    387380            </tr>
    388381            </table>
    389382          </td>
    390           <td id="percent"
    391             style="<%=percent < 0 ? "display: none;" : "" %>">&nbsp;<%=percent%>%</td>
    392           <%
    393           if (logFile != null)
    394           {
    395             %>
    396             <td  style="padding-left: 10px;"><base:button image="view.gif"
     383          <td id="percentText"
     384            style="<%=percent < 0 ? "display: none;" : "" %>"><%=percent%>%</td>
     385            <%
     386            if (logFile != null)
     387            {
     388              %>
     389              <td  style="padding-left: 10px;"><base:button image="view.gif"
    397390                title="View log&hellip;"
    398391                onclick="<%="Main.viewFile('" + ID + "', " + logFile.getId() + ")"%>"
     
    406399        </td>
    407400      </tr>
    408       <tr >
    409         <td class="prompt">Created</td>
     401      <tr>
     402        <th>Description</th>
     403        <td><%=HTML.niceFormat(job.getDescription())%></td>
     404      </tr>
     405      <tr>
     406        <th>Created</th>
    410407        <td>
    411408          <%=dateTimeFormatter.format(job.getCreated())%>
    412409        </td>
    413410      </tr>
    414       <tr >
    415         <td class="prompt">Scheduled</td>
     411      <tr>
     412        <th class="subprompt">- scheduled</th>
    416413        <td>
    417414          <%=dateTimeFormatter.format(job.getScheduled())%>
    418415        </td>
    419416      </tr>
    420       <tr >
    421         <td class="prompt">Started</td>
    422         <td>
    423           <%=dateTimeFormatter.format(job.getStarted())%>
    424         </td>
    425       </tr>
    426       <tr >
    427         <td class="prompt">Ended</td>
    428         <td>
    429           <%=dateTimeFormatter.format(job.getEnded())%>
    430         </td>
    431       </tr>
    432       <tr >
    433         <td class="prompt">Running time</td>
     417      <tr>
     418        <th class="subprompt">- priority</th>
     419        <td>
     420          <%=job.getPriority()%> (1 = highest, 10 = lowest)
     421        </td>
     422      </tr>
     423      <tr>
     424        <th>Running time</th>
    434425        <td id="runningTime">
    435426          <%
     
    447438        </td>
    448439      </tr>
    449       <tr >
    450         <td class="prompt">Server</td>
     440      <tr>
     441        <th class="subprompt">- started</th>
     442        <td>
     443          <%=dateTimeFormatter.format(job.getStarted())%>
     444        </td>
     445      </tr>
     446      <tr>
     447        <th class="subprompt">- ended</th>
     448        <td>
     449          <%=dateTimeFormatter.format(job.getEnded())%>
     450        </td>
     451      </tr>
     452      <tr>
     453        <th>Server</th>
    451454        <td>
    452455          <%=HTML.encodeTags(job.getServer())%>
    453456        </td>
    454457      </tr>
    455       <tr >
    456         <td class="prompt">Job agent</td>
     458      <tr>
     459        <th>Job agent</th>
    457460        <td><%=Base.getEncodedName(agent, !readAgent)%></td>
     461      </tr>
     462      <tr class="dynamic">
     463        <th></th>
     464        <td></td>
    458465      </tr>
    459466      </table>
     
    464471        %>
    465472        <t:tab id="stacktrace" title="Stack trace" helpid="job.view.stacktrace">
    466           <div style="font-family: monospace">
     473          <div style="font-family: monospace; padding: 5px;">
    467474          <%=HTML.niceFormat(job.getStackTrace())%>
    468475          </div>
     
    471478      }
    472479      %>
    473  
    474480      <t:tab id="parameters" title="Parameters" helpid="job.view.parameters">
    475         <h4>Job parameters</h4>
    476         <table class="form" cellspacing=0>
     481        <table class="fullform outlined">
     482        <tbody>
     483        <tr class="section">
     484          <th colspan="2">Job parameters</th>
     485        </tr>
    477486        <%
    478487        List<String> names = new java.util.ArrayList<String>(jobParameters);
     
    518527          %>
    519528          <tr>
    520             <td class="prompt"><span title="<%=description%>"><%=name%></span></td>
     529            <th><span title="<%=description%>"><%=name%></span></th>
    521530            <td>
    522531              <%=displayValue%>
     
    526535        }
    527536        %>
    528         </table>
    529 
    530537        <%
    531538        if (!readCurrentConfig)
    532539        {
    533540          %>
    534           <h4>Plugin configuration parameters</h4>
    535           <i>- denied -</i>
     541          </tbody>
     542          <tbody>
     543          <tr class="section">
     544            <th colspan="2">Plugin configuration parameters</th>
     545          </tr>
     546          <tr>
     547            <th></th>
     548            <td><i>- denied -</i></td>
     549          </tr>
    536550          <%
    537551        }
     
    539553        {
    540554          %>
    541           <h4>Plugin configuration parameters</h4>
    542           <table class="form" cellspacing=0>
     555          </tbody>
     556          <tbody>
     557          <tr class="section">
     558            <th colspan="2">Plugin configuration parameters</th>
     559          </tr>
    543560          <tr>
    544             <td class="prompt"><span
     561            <th><span
    545562              title="The version of the parmeters used for this job, current version in paranthesis">Parameter version</span></td>
    546             <td><%=parameterVersion%> (<%=latestParameterVersion %>)</td>
     563            <td><%=parameterVersion%> (<%=latestParameterVersion %>)</th>
    547564          </tr>
    548565          <%
     
    589606            %>
    590607            <tr>
    591               <td class="prompt"><span title="<%=description%>"><%=name%></span></td>
     608              <th><span title="<%=description%>"><%=name%></span></th>
    592609              <td>
    593610                <%=displayValue%>
     
    597614          }
    598615          %>
    599           </table>
    600616          <%
    601617        }
    602618        %>
    603        
     619        <tr class="dynamic">
     620          <th></th>
     621          <td></td>
     622        </tr>
     623        </tbody>
     624        </table>
    604625      </t:tab>
    605626     
     
    650671          %>
    651672        </tbl:table>
    652        
    653673      </t:tab>
    654      
    655674      </t:tabcontrol>
    656675 
    657     <base:buttongroup>
     676    <base:buttongroup subclass="dialogbuttons">
    658677      <%
    659678      if (supportsAbort)
  • trunk/www/views/permissiontemplates/edit_template.jsp

    r5908 r5909  
    116116  </base:head>
    117117  <base:body onload="init()">
    118     <p>
     118    <h1><%=title%> <base:help tabcontrol="settings"/></h1>
    119119    <form action="index.jsp?ID=<%=ID%>" method="post" name="template" onsubmit="return false;">
    120120    <input type="hidden" name="cmd" value="UpdateItem">
    121121
    122     <h3 class="docked"><%=title%> <base:help tabcontrol="settings"/></h3>
    123     <t:tabcontrol id="settings" contentstyle="<%="height: "+(int)(scale*160)+"px;"%>"
     122    <t:tabcontrol id="settings"
     123      subclass="content dialogtabcontrol"
    124124      position="bottom"  remember="<%=template != null%>"
    125125      extensions="<%=invoker%>">
    126126    <t:tab id="info" title="Permission template" validate="validatePermissionTemplate()" helpid="permissiontemplate.edit">
    127       <table class="form" cellspacing=0>
     127      <table class="fullform input100 smaller">
    128128      <tr>
    129         <td class="prompt">Name</td>
     129        <th>Name</th>
    130130        <td><input <%=requiredClazz%> type="text" name="name"
    131131          value="<%=HTML.encodeTags(template == null ? Values.getString(cc.getPropertyValue("name"), "New template") : template.getName())%>"
    132           size="40" maxlength="<%=PermissionTemplate.MAX_NAME_LENGTH%>"></td>
     132          maxlength="<%=PermissionTemplate.MAX_NAME_LENGTH%>"></td>
     133        <td></td>
    133134      </tr>
    134       <tr >
    135         <td class="prompt">Description</td>
    136         <td nowrap>
    137           <textarea <%=clazz%> rows="4" cols="40" name="description"
     135      <tr class="dynamic">
     136        <th>Description</th>
     137        <td>
     138          <textarea <%=clazz%> rows="6" name="description"
    138139            ><%=HTML.encodeTags(template == null ? cc.getPropertyValue("description") : template.getDescription())%></textarea>
    139           <a href="javascript:Main.zoom('Description', 'template', 'description')"
    140             title="Edit in larger window"><base:icon image="zoom.png" /></a>
     140        </td>
     141        <td style="width: 20px;">
     142          <base:icon image="zoom.png"
     143            onclick="Main.zoom('Description', 'template', 'description')"
     144            tooltip="Edit in larger window"
     145          />
    141146        </td>
    142147      </tr>
    143148      </table>
    144       <div align=right>&nbsp;<i><base:icon image="required.gif" /> = required information</i></div>
    145149    </t:tab>
    146150    </t:tabcontrol>
     151    </form>
     152   
     153    <div class="legend">
     154      <base:icon image="required.gif" /> = required information
     155    </div>
    147156
    148     <table align="center">
    149     <tr>
    150       <td width="50%"><base:button onclick="saveSettings()" title="Save" /></td>
    151       <td width="50%"><base:button onclick="window.close()" title="Cancel" /></td>
    152     </tr>
    153     </table>
    154     </form>
     157    <base:buttongroup subclass="dialogbuttons">
     158      <base:button onclick="saveSettings()" title="Save" />
     159      <base:button onclick="window.close()" title="Cancel" />
     160    </base:buttongroup>
    155161  </base:body>
    156162  </base:page>
  • trunk/www/views/sessions/view_session.jsp

    r5905 r5909  
    4949%>
    5050<%@ taglib prefix="base" uri="/WEB-INF/base.tld" %>
    51 <%@ taglib prefix="t" uri="/WEB-INF/tab.tld" %>
    52 <%@ taglib prefix="tbl" uri="/WEB-INF/table.tld" %>
    5351<%!
    5452  private static final Item itemType = Item.SESSION;
     
    9189  Formatter<Date> dateTimeFormatter = FormatterFactory.getDateTimeFormatter(sc);
    9290  %>
    93 
    9491  <base:page type="popup" title="<%=title%>">
    95   <base:head scripts="tabcontrol.js" styles="tabcontrol.css">
     92  <base:head>
    9693  </base:head>
    9794  <base:body>
    9895   
    99     <h3 class="docked"><%=title%> <base:help tabcontrol="settings" /></h3>
    100     <t:tabcontrol id="settings" contentstyle="<%="height: "+(int)(scale*180)+"px;"%>"
    101       position="bottom" remember="<%=s != null%>">
    102     <t:tab id="info" title="Session" helpid="session.view">
    103       <table class="form" cellspacing=0>
     96    <h1><%=title%> <base:help helpid="session.view" /></h1>
     97    <div class="content">
     98      <table class="fullform smaller bottomborder">
    10499      <tr>
    105         <td class="prompt">Login time</td>
     100        <th>User</th>
     101        <td><%=Base.getEncodedName(user, readUser)%></td>
     102      </tr>
     103      <tr>
     104        <th>Client application</th>
     105        <td><%=Base.getEncodedName(client, !readClient)%></td>
     106      </tr>
     107      <tr>
     108        <th>Login time</th>
    106109        <td><%=dateTimeFormatter.format(s.getLoginTime())%></td>
    107110      </tr>
    108111      <tr>
    109         <td class="prompt">Logout time</td>
     112        <th>Logout time</th>
    110113        <td><%=dateTimeFormatter.format(s.getLogoutTime())%></td>
    111114      </tr>
    112115      <tr>
    113         <td class="prompt">Impersonated</td>
     116        <th>Remote ID</th>
     117        <td><%=HTML.encodeTags(s.getRemoteId())%></td>
     118      </tr>
     119      <tr>
     120        <th>Impersonated</th>
    114121        <td><%=s.getImpersonated()%></td>
    115122      </tr>
    116       <tr >
    117         <td class="prompt">Client application</td>
    118         <td><%=Base.getEncodedName(client, !readClient)%></td>
    119       </tr>
    120       <tr >
    121         <td class="prompt">Remote ID</td>
    122         <td><%=HTML.encodeTags(s.getRemoteId())%></td>
    123       </tr>
    124       <tr >
    125         <td class="prompt">User</td>
    126         <td><%=Base.getEncodedName(user, readUser)%></td>
    127       </tr>
    128       <tr >
    129         <td class="prompt">Comment</td>
     123      <tr class="dynamic">
     124        <th>Comment</th>
    130125        <td><%=HTML.niceFormat(s.getLoginComment())%></td>
    131126      </tr>
    132127      </table>
    133     </t:tab>
    134     </t:tabcontrol>
    135    
    136     <base:buttongroup>
     128    </div>
     129    <base:buttongroup subclass="dialogbuttons">
    137130      <base:button onclick="window.close()" title="Close" />
    138131    </base:buttongroup>
    139 
    140132
    141133  </base:body>
Note: See TracChangeset for help on using the changeset viewer.