www/admin/extravaluetypes/list_extravaluetypes.jsp

Code
Comments
Other
Rev Date Author Line
2658 22 Sep 06 nicklas 1 <%-- $Id$
2658 22 Sep 06 nicklas 2   ------------------------------------------------------------------
3675 16 Aug 07 jari 3   Copyright (C) 2006 Nicklas Nordborg
3675 16 Aug 07 jari 4   Copyright (C) 2007 Johan Enell, Nicklas Nordborg
2658 22 Sep 06 nicklas 5
2658 22 Sep 06 nicklas 6   This file is part of BASE - BioArray Software Environment.
2658 22 Sep 06 nicklas 7   Available at http://base.thep.lu.se/
2658 22 Sep 06 nicklas 8
2658 22 Sep 06 nicklas 9   BASE is free software; you can redistribute it and/or
2658 22 Sep 06 nicklas 10   modify it under the terms of the GNU General Public License
4476 05 Sep 08 jari 11   as published by the Free Software Foundation; either version 3
2658 22 Sep 06 nicklas 12   of the License, or (at your option) any later version.
2658 22 Sep 06 nicklas 13
2658 22 Sep 06 nicklas 14   BASE is distributed in the hope that it will be useful,
2658 22 Sep 06 nicklas 15   but WITHOUT ANY WARRANTY; without even the implied warranty of
2658 22 Sep 06 nicklas 16   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
2658 22 Sep 06 nicklas 17   GNU General Public License for more details.
2658 22 Sep 06 nicklas 18
2658 22 Sep 06 nicklas 19   You should have received a copy of the GNU General Public License
4510 11 Sep 08 jari 20   along with BASE. If not, see <http://www.gnu.org/licenses/>.
2658 22 Sep 06 nicklas 21   ------------------------------------------------------------------
2658 22 Sep 06 nicklas 22
2658 22 Sep 06 nicklas 23   @author Nicklas
2658 22 Sep 06 nicklas 24   @version 2.0
2658 22 Sep 06 nicklas 25 --%>
5426 24 Sep 10 nicklas 26 <%@ page pageEncoding="UTF-8" session="false"
2658 22 Sep 06 nicklas 27   import="net.sf.basedb.core.SessionControl"
2658 22 Sep 06 nicklas 28   import="net.sf.basedb.core.DbControl"
2658 22 Sep 06 nicklas 29   import="net.sf.basedb.core.Type"
2658 22 Sep 06 nicklas 30   import="net.sf.basedb.core.Item"
2658 22 Sep 06 nicklas 31   import="net.sf.basedb.core.ExtraValueType"
3558 16 Jul 07 nicklas 32   import="net.sf.basedb.core.Formula"
2658 22 Sep 06 nicklas 33   import="net.sf.basedb.core.ItemQuery"
2658 22 Sep 06 nicklas 34   import="net.sf.basedb.core.Include"
2658 22 Sep 06 nicklas 35   import="net.sf.basedb.core.ItemResultIterator"
2658 22 Sep 06 nicklas 36   import="net.sf.basedb.core.ItemResultList"
2658 22 Sep 06 nicklas 37   import="net.sf.basedb.core.ItemContext"
2658 22 Sep 06 nicklas 38   import="net.sf.basedb.core.Permission"
2658 22 Sep 06 nicklas 39   import="net.sf.basedb.core.PluginDefinition"
2658 22 Sep 06 nicklas 40   import="net.sf.basedb.core.query.Orders"
2658 22 Sep 06 nicklas 41   import="net.sf.basedb.core.query.Hql"
2658 22 Sep 06 nicklas 42   import="net.sf.basedb.core.plugin.GuiContext"
2658 22 Sep 06 nicklas 43   import="net.sf.basedb.core.plugin.Plugin"
2658 22 Sep 06 nicklas 44   import="net.sf.basedb.util.Enumeration"
2658 22 Sep 06 nicklas 45   import="net.sf.basedb.clients.web.Base"
2658 22 Sep 06 nicklas 46   import="net.sf.basedb.clients.web.ModeInfo"
2658 22 Sep 06 nicklas 47   import="net.sf.basedb.clients.web.PermissionUtil"
2658 22 Sep 06 nicklas 48   import="net.sf.basedb.clients.web.util.HTML"
2753 20 Oct 06 nicklas 49   import="net.sf.basedb.util.Values"
4698 10 Dec 08 nicklas 50   import="net.sf.basedb.util.formatter.Formatter"
4698 10 Dec 08 nicklas 51   import="net.sf.basedb.clients.web.formatter.FormatterFactory"
4886 03 Apr 09 nicklas 52   import="net.sf.basedb.clients.web.extensions.ExtensionsControl"
4886 03 Apr 09 nicklas 53   import="net.sf.basedb.clients.web.extensions.JspContext"
4886 03 Apr 09 nicklas 54   import="net.sf.basedb.clients.web.extensions.renderer.PrefixSuffixRenderer"
7604 25 Feb 19 nicklas 55   import="net.sf.basedb.clients.web.extensions.toolbar.ButtonAction" 
4886 03 Apr 09 nicklas 56   import="net.sf.basedb.clients.web.extensions.toolbar.ToolbarUtil"
7604 25 Feb 19 nicklas 57   import="net.sf.basedb.clients.web.extensions.list.ListColumnAction"
6045 03 Apr 12 nicklas 58   import="net.sf.basedb.clients.web.extensions.list.ListColumnUtil"
4886 03 Apr 09 nicklas 59   import="net.sf.basedb.util.extensions.ExtensionsInvoker"
4698 10 Dec 08 nicklas 60   import="java.util.Date"
2658 22 Sep 06 nicklas 61   import="java.util.List"
2658 22 Sep 06 nicklas 62   import="java.util.Map"
2658 22 Sep 06 nicklas 63 %>
2658 22 Sep 06 nicklas 64 <%@ taglib prefix="base" uri="/WEB-INF/base.tld" %>
2658 22 Sep 06 nicklas 65 <%@ taglib prefix="tbl" uri="/WEB-INF/table.tld" %>
4886 03 Apr 09 nicklas 66 <%@ taglib prefix="ext" uri="/WEB-INF/extensions.tld" %>
2658 22 Sep 06 nicklas 67 <%!
2658 22 Sep 06 nicklas 68   private static final Item itemType = Item.EXTRAVALUETYPE;
2658 22 Sep 06 nicklas 69   private static final GuiContext guiContext = new GuiContext(itemType, GuiContext.Type.LIST);
2658 22 Sep 06 nicklas 70
2658 22 Sep 06 nicklas 71   private static final Enumeration<String, String> valueTypes = new Enumeration<String, String>();
3558 16 Jul 07 nicklas 72   private static final Enumeration<String, String> avgMethods = new Enumeration<String, String>();
2658 22 Sep 06 nicklas 73   static
2658 22 Sep 06 nicklas 74   {
2658 22 Sep 06 nicklas 75     valueTypes.add(Integer.toString(Type.INT.getValue()), Type.INT.toString());
2658 22 Sep 06 nicklas 76     valueTypes.add(Integer.toString(Type.FLOAT.getValue()), Type.FLOAT.toString());
2658 22 Sep 06 nicklas 77     valueTypes.add(Integer.toString(Type.STRING.getValue()), Type.STRING.toString());
3558 16 Jul 07 nicklas 78     for (Formula.AverageMethod m : Formula.AverageMethod.values())
3558 16 Jul 07 nicklas 79     {
3558 16 Jul 07 nicklas 80       avgMethods.add(Integer.toString(m.getValue()), HTML.encodeTags(m.toString()));
3558 16 Jul 07 nicklas 81     }
2658 22 Sep 06 nicklas 82   }
2658 22 Sep 06 nicklas 83
2658 22 Sep 06 nicklas 84 %>
2658 22 Sep 06 nicklas 85 <%
2658 22 Sep 06 nicklas 86 final SessionControl sc = Base.getExistingSessionControl(pageContext, Permission.DENIED, itemType);
2658 22 Sep 06 nicklas 87 final String ID = sc.getId();
2658 22 Sep 06 nicklas 88 final boolean createPermission = sc.hasPermission(Permission.CREATE, itemType);
2658 22 Sep 06 nicklas 89 final boolean writePermission = sc.hasPermission(Permission.WRITE, itemType);
2658 22 Sep 06 nicklas 90 final boolean deletePermission = sc.hasPermission(Permission.DELETE, itemType);
2658 22 Sep 06 nicklas 91 final ItemContext cc = Base.getAndSetCurrentContext(sc, itemType, null, null);
2658 22 Sep 06 nicklas 92
2658 22 Sep 06 nicklas 93 final ModeInfo mode = ModeInfo.get(request.getParameter("mode"));
2658 22 Sep 06 nicklas 94 final String callback = request.getParameter("callback");
2658 22 Sep 06 nicklas 95 final String title = mode.generateTitle("extra value type", "extra value types");
7954 12 May 21 nicklas 96 final DbControl dc = sc.newDbControl(":List "+itemType);
2658 22 Sep 06 nicklas 97 ItemResultIterator<ExtraValueType> extraValueTypes = null;
2658 22 Sep 06 nicklas 98 try
2658 22 Sep 06 nicklas 99 {
4698 10 Dec 08 nicklas 100   Formatter<Date> dateFormatter = FormatterFactory.getDateFormatter(sc);
2658 22 Sep 06 nicklas 101   Map<Plugin.MainType, Integer> pluginCount = PluginDefinition.countPlugins(dc, guiContext);
7914 23 Feb 21 nicklas 102   JspContext jspContext = ExtensionsControl.createContext(dc, pageContext, guiContext, null);
2658 22 Sep 06 nicklas 103   try
2658 22 Sep 06 nicklas 104   {
7914 23 Feb 21 nicklas 105     final ItemQuery<ExtraValueType> query = Base.getConfiguredQuery(dc, cc, jspContext, true, ExtraValueType.getQuery(), mode);
2658 22 Sep 06 nicklas 106     extraValueTypes = query.iterate(dc);
2658 22 Sep 06 nicklas 107   }
2658 22 Sep 06 nicklas 108   catch (Throwable t)
2658 22 Sep 06 nicklas 109   {
2658 22 Sep 06 nicklas 110     cc.setMessage(t.getMessage());
2658 22 Sep 06 nicklas 111   }
2658 22 Sep 06 nicklas 112   int numListed = 0;
7604 25 Feb 19 nicklas 113   ExtensionsInvoker<ButtonAction> invoker = ToolbarUtil.useExtensions(jspContext);
7604 25 Feb 19 nicklas 114   ExtensionsInvoker<ListColumnAction<ExtraValueType,?>> columnsInvoker = ListColumnUtil.useExtensions(jspContext);
2658 22 Sep 06 nicklas 115   %>
6289 05 Jun 13 nicklas 116   <base:page title="<%=title==null ? "Extra value types" : title%>" type="<%=mode.getPageType()%>" id="list-page">
6289 05 Jun 13 nicklas 117   <base:head scripts="table.js,~extravaluetypes.js" styles="table.css,toolbar.css">
4886 03 Apr 09 nicklas 118     <ext:scripts context="<%=jspContext%>" />
4886 03 Apr 09 nicklas 119     <ext:stylesheets context="<%=jspContext%>" />
2658 22 Sep 06 nicklas 120   </base:head>
2658 22 Sep 06 nicklas 121   
2658 22 Sep 06 nicklas 122   <base:body>
5954 13 Feb 12 nicklas 123     <h1><%=title==null ? "Extra value types" : title%></h1>
5954 13 Feb 12 nicklas 124     <div class="content">
2658 22 Sep 06 nicklas 125     <tbl:table 
2658 22 Sep 06 nicklas 126       id="extraValueTypes" 
2658 22 Sep 06 nicklas 127       columns="<%=cc.getSetting("columns")%>"
2658 22 Sep 06 nicklas 128       sortby="<%=cc.getSortProperty()%>" 
2658 22 Sep 06 nicklas 129       direction="<%=cc.getSortDirection()%>"
2658 22 Sep 06 nicklas 130       action="index.jsp"
2658 22 Sep 06 nicklas 131       sc="<%=sc%>"
2658 22 Sep 06 nicklas 132       item="<%=itemType%>"
6706 02 Feb 15 nicklas 133       filterrows="<%=cc.getFilterRows()%>"
5954 13 Feb 12 nicklas 134       subclass="fulltable"
7982 14 Jun 21 nicklas 135       stickyheaders="<%=cc.getSetting("columns.sticky", "name")%>"
2658 22 Sep 06 nicklas 136       >
2658 22 Sep 06 nicklas 137       <tbl:hidden 
2658 22 Sep 06 nicklas 138         name="mode" 
2658 22 Sep 06 nicklas 139         value="<%=mode.getName()%>" 
2658 22 Sep 06 nicklas 140       />
2658 22 Sep 06 nicklas 141       <tbl:hidden 
2658 22 Sep 06 nicklas 142         name="callback" 
2658 22 Sep 06 nicklas 143         value="<%=callback%>" 
2658 22 Sep 06 nicklas 144         skip="<%=callback == null%>" 
2658 22 Sep 06 nicklas 145       />
2658 22 Sep 06 nicklas 146       <tbl:columndef 
2658 22 Sep 06 nicklas 147         id="name"
2658 22 Sep 06 nicklas 148         property="name"
2658 22 Sep 06 nicklas 149         datatype="string"
2658 22 Sep 06 nicklas 150         title="Name"
2658 22 Sep 06 nicklas 151         sortable="true" 
2658 22 Sep 06 nicklas 152         filterable="true"
2658 22 Sep 06 nicklas 153         exportable="true"
2658 22 Sep 06 nicklas 154         show="always" 
2658 22 Sep 06 nicklas 155       />
2658 22 Sep 06 nicklas 156       <tbl:columndef 
4332 12 Jun 08 martin 157         id="id"
4387 11 Aug 08 nicklas 158         clazz="uniquecol"
4332 12 Jun 08 martin 159         property="id"
4332 12 Jun 08 martin 160         datatype="int"
4332 12 Jun 08 martin 161         title="ID"
4332 12 Jun 08 martin 162         sortable="true"
4332 12 Jun 08 martin 163         filterable="true"
4332 12 Jun 08 martin 164         exportable="true"
4332 12 Jun 08 martin 165       />
4332 12 Jun 08 martin 166       <tbl:columndef 
4698 10 Dec 08 nicklas 167         id="entryDate"
4698 10 Dec 08 nicklas 168         property="entryDate"
4698 10 Dec 08 nicklas 169         datatype="date"
4698 10 Dec 08 nicklas 170         title="Registered"
4698 10 Dec 08 nicklas 171         sortable="true" 
4698 10 Dec 08 nicklas 172         filterable="true"
4698 10 Dec 08 nicklas 173         exportable="true"
4698 10 Dec 08 nicklas 174         formatter="<%=dateFormatter%>"
4698 10 Dec 08 nicklas 175       />
4698 10 Dec 08 nicklas 176       <tbl:columndef 
2658 22 Sep 06 nicklas 177         id="externalId"
4387 11 Aug 08 nicklas 178         clazz="uniquecol"
2658 22 Sep 06 nicklas 179         property="externalId"
2658 22 Sep 06 nicklas 180         datatype="string"
2658 22 Sep 06 nicklas 181         title="External ID"
2658 22 Sep 06 nicklas 182         sortable="true" 
2658 22 Sep 06 nicklas 183         filterable="true"
2658 22 Sep 06 nicklas 184         exportable="true"
2658 22 Sep 06 nicklas 185       />
2658 22 Sep 06 nicklas 186       <tbl:columndef 
2658 22 Sep 06 nicklas 187         id="valueType"
2658 22 Sep 06 nicklas 188         property="valueType"
2658 22 Sep 06 nicklas 189         datatype="int"
2658 22 Sep 06 nicklas 190         title="Value type"
2658 22 Sep 06 nicklas 191         enumeration="<%=valueTypes%>"
2658 22 Sep 06 nicklas 192         sortable="true" 
2658 22 Sep 06 nicklas 193         filterable="true"
2658 22 Sep 06 nicklas 194         exportable="true"
2658 22 Sep 06 nicklas 195       />
2658 22 Sep 06 nicklas 196       <tbl:columndef 
3558 16 Jul 07 nicklas 197         id="averageMethod"
3558 16 Jul 07 nicklas 198         property="averageMethod"
3558 16 Jul 07 nicklas 199         datatype="int"
3558 16 Jul 07 nicklas 200         enumeration="<%=avgMethods%>"
3558 16 Jul 07 nicklas 201         title="Avg. method"
3558 16 Jul 07 nicklas 202         sortable="true" 
3558 16 Jul 07 nicklas 203         filterable="true"
3558 16 Jul 07 nicklas 204         exportable="true"
3558 16 Jul 07 nicklas 205       />
3558 16 Jul 07 nicklas 206       <tbl:columndef 
2733 16 Oct 06 nicklas 207         id="useColors"
2733 16 Oct 06 nicklas 208         property="coloring.usingColors"
2733 16 Oct 06 nicklas 209         datatype="boolean"
2733 16 Oct 06 nicklas 210         title="Use colors"
2733 16 Oct 06 nicklas 211         sortable="true" 
2733 16 Oct 06 nicklas 212         filterable="true"
2733 16 Oct 06 nicklas 213         exportable="false"
2733 16 Oct 06 nicklas 214       />
2733 16 Oct 06 nicklas 215       <tbl:columndef 
2733 16 Oct 06 nicklas 216         id="logarithmic"
2733 16 Oct 06 nicklas 217         property="coloring.logarithmic"
2733 16 Oct 06 nicklas 218         datatype="boolean"
2733 16 Oct 06 nicklas 219         title="Logarithmic"
2733 16 Oct 06 nicklas 220         sortable="true" 
2733 16 Oct 06 nicklas 221         filterable="true"
2733 16 Oct 06 nicklas 222         exportable="false"
2733 16 Oct 06 nicklas 223       />
2733 16 Oct 06 nicklas 224       <tbl:columndef 
2733 16 Oct 06 nicklas 225         id="minValue"
2733 16 Oct 06 nicklas 226         property="coloring.minValue"
2733 16 Oct 06 nicklas 227         datatype="float"
2733 16 Oct 06 nicklas 228         title="Min value"
2733 16 Oct 06 nicklas 229         sortable="true" 
2733 16 Oct 06 nicklas 230         filterable="true"
2733 16 Oct 06 nicklas 231         exportable="false"
2733 16 Oct 06 nicklas 232       />
2733 16 Oct 06 nicklas 233       <tbl:columndef 
2733 16 Oct 06 nicklas 234         id="midValue"
2733 16 Oct 06 nicklas 235         property="coloring.midValue"
2733 16 Oct 06 nicklas 236         datatype="float"
2733 16 Oct 06 nicklas 237         title="Mid value"
2733 16 Oct 06 nicklas 238         sortable="true" 
2733 16 Oct 06 nicklas 239         filterable="true"
2733 16 Oct 06 nicklas 240         exportable="false"
2733 16 Oct 06 nicklas 241       />
2733 16 Oct 06 nicklas 242       <tbl:columndef 
2733 16 Oct 06 nicklas 243         id="maxValue"
2733 16 Oct 06 nicklas 244         property="coloring.maxValue"
2733 16 Oct 06 nicklas 245         datatype="float"
2733 16 Oct 06 nicklas 246         title="Max value"
2733 16 Oct 06 nicklas 247         sortable="true" 
2733 16 Oct 06 nicklas 248         filterable="true"
2733 16 Oct 06 nicklas 249         exportable="false"
2733 16 Oct 06 nicklas 250       />
2733 16 Oct 06 nicklas 251       <tbl:columndef 
2658 22 Sep 06 nicklas 252         id="description"
2658 22 Sep 06 nicklas 253         property="description"
2658 22 Sep 06 nicklas 254         datatype="string"
2658 22 Sep 06 nicklas 255         title="Description" 
2658 22 Sep 06 nicklas 256         sortable="true" 
2658 22 Sep 06 nicklas 257         filterable="true" 
2658 22 Sep 06 nicklas 258         exportable="true"
2658 22 Sep 06 nicklas 259       />
6045 03 Apr 12 nicklas 260       <tbl:columndef 
6045 03 Apr 12 nicklas 261         id="xt-columns" 
6045 03 Apr 12 nicklas 262         extensions="<%=columnsInvoker%>" 
6045 03 Apr 12 nicklas 263         jspcontext="<%=jspContext%>" 
6045 03 Apr 12 nicklas 264       />
6604 18 Nov 14 nicklas 265       <div class="panelgroup bg-filled-50 bottomborder">
5954 13 Feb 12 nicklas 266         <tbl:toolbar
5954 13 Feb 12 nicklas 267           subclass="bottomborder"
5954 13 Feb 12 nicklas 268           visible="<%=mode.hasToolbar()%>"
5954 13 Feb 12 nicklas 269           >
5954 13 Feb 12 nicklas 270           <tbl:button 
6289 05 Jun 13 nicklas 271             id="btnNewItem"
5954 13 Feb 12 nicklas 272             disabled="<%=!createPermission%>" 
5954 13 Feb 12 nicklas 273             image="new.png" 
5954 13 Feb 12 nicklas 274             title="New&hellip;" 
5954 13 Feb 12 nicklas 275             tooltip="<%=createPermission ? "Create new extra value type" : "You do not have permission to create extra value types"%>" 
5954 13 Feb 12 nicklas 276           />
5954 13 Feb 12 nicklas 277           <tbl:button 
6289 05 Jun 13 nicklas 278             id="btnDeleteItems"
5954 13 Feb 12 nicklas 279             disabled="<%=!deletePermission%>" 
5954 13 Feb 12 nicklas 280             image="delete.png" 
5954 13 Feb 12 nicklas 281             title="Delete" 
5954 13 Feb 12 nicklas 282             tooltip="<%=deletePermission ? "Delete the selected items" : "You do not have permission to delete extra value types" %>" 
5954 13 Feb 12 nicklas 283           />
5954 13 Feb 12 nicklas 284           <tbl:button 
6289 05 Jun 13 nicklas 285             id="btnRestoreItems"
5954 13 Feb 12 nicklas 286             disabled="<%=!writePermission%>" 
5954 13 Feb 12 nicklas 287             image="restore.png" 
5954 13 Feb 12 nicklas 288             title="Restore" 
5954 13 Feb 12 nicklas 289             tooltip="<%=writePermission ? "Restore the selected (deleted) items" : "You do not have permission to edit extra value types" %>" 
5954 13 Feb 12 nicklas 290           />
5954 13 Feb 12 nicklas 291           <tbl:button 
6289 05 Jun 13 nicklas 292             id="btnColumns"
5954 13 Feb 12 nicklas 293             image="columns.png" 
5954 13 Feb 12 nicklas 294             title="Columns&hellip;" 
5954 13 Feb 12 nicklas 295             tooltip="Show, hide and re-order columns" 
5954 13 Feb 12 nicklas 296           />
5954 13 Feb 12 nicklas 297           <tbl:button 
6289 05 Jun 13 nicklas 298             id="btnImport"
6289 05 Jun 13 nicklas 299             data-plugin-type="IMPORT"
5954 13 Feb 12 nicklas 300             image="import.png" 
5954 13 Feb 12 nicklas 301             title="Import&hellip;" 
5954 13 Feb 12 nicklas 302             tooltip="Import data" 
5954 13 Feb 12 nicklas 303             visible="<%=pluginCount.containsKey(Plugin.MainType.IMPORT)%>"
5954 13 Feb 12 nicklas 304           />
5954 13 Feb 12 nicklas 305           <tbl:button 
6289 05 Jun 13 nicklas 306             id="btnExport"
6289 05 Jun 13 nicklas 307             data-plugin-type="EXPORT"
5954 13 Feb 12 nicklas 308             image="export.png" 
5954 13 Feb 12 nicklas 309             title="Export&hellip;" 
5954 13 Feb 12 nicklas 310             tooltip="Export data" 
5954 13 Feb 12 nicklas 311             visible="<%=pluginCount.containsKey(Plugin.MainType.EXPORT)%>"
5954 13 Feb 12 nicklas 312           />
5954 13 Feb 12 nicklas 313           <tbl:button 
6289 05 Jun 13 nicklas 314             id="btnRunPlugin"
6289 05 Jun 13 nicklas 315             data-plugin-type="OTHER"
5954 13 Feb 12 nicklas 316             image="runplugin.png" 
5954 13 Feb 12 nicklas 317             title="Run plugin&hellip;" 
5954 13 Feb 12 nicklas 318             tooltip="Run a plugin" 
5954 13 Feb 12 nicklas 319             visible="<%=pluginCount.containsKey(Plugin.MainType.OTHER)%>"
5954 13 Feb 12 nicklas 320           />
5954 13 Feb 12 nicklas 321           <ext:render extensions="<%=invoker%>" context="<%=jspContext%>" 
7604 25 Feb 19 nicklas 322             wrapper="<%=new PrefixSuffixRenderer<ButtonAction>(jspContext, "<td>", "</td>") %>"/>
5954 13 Feb 12 nicklas 323         </tbl:toolbar>
5954 13 Feb 12 nicklas 324         <tbl:panel>
6182 23 Oct 12 nicklas 325           <tbl:presetselector />
5954 13 Feb 12 nicklas 326           <tbl:navigator
5954 13 Feb 12 nicklas 327             page="<%=cc.getPage()%>" 
5954 13 Feb 12 nicklas 328             rowsperpage="<%=cc.getRowsPerPage()%>" 
5954 13 Feb 12 nicklas 329             totalrows="<%=extraValueTypes == null ? 0 : extraValueTypes.getTotalCount()%>" 
5954 13 Feb 12 nicklas 330             visible="<%=mode.hasNavigator()%>"
5954 13 Feb 12 nicklas 331           />
5954 13 Feb 12 nicklas 332         </tbl:panel>
5954 13 Feb 12 nicklas 333       </div>
2658 22 Sep 06 nicklas 334       <tbl:data>
5948 08 Feb 12 nicklas 335         <tbl:headers>
5948 08 Feb 12 nicklas 336           <tbl:headerrow>
7943 04 May 21 nicklas 337             <tbl:header clazz="row-index bg-filled-100" />
5948 08 Feb 12 nicklas 338             <tbl:columnheaders />
5948 08 Feb 12 nicklas 339           </tbl:headerrow>
6706 02 Feb 15 nicklas 340           <%
6706 02 Feb 15 nicklas 341           int numFilters = cc.getNumPropertyFilters();
6706 02 Feb 15 nicklas 342           int numRows = cc.getFilterRows();
6706 02 Feb 15 nicklas 343           for (int filterNo = 0; filterNo < numRows; filterNo++)
6706 02 Feb 15 nicklas 344           {
6706 02 Feb 15 nicklas 345             boolean lastRow = filterNo == numRows-1;
6706 02 Feb 15 nicklas 346             %>
6706 02 Feb 15 nicklas 347             <tbl:headerrow>
7943 04 May 21 nicklas 348               <tbl:header subclass="row-index bg-filled-100">
7943 04 May 21 nicklas 349                 <div class="index-<%=mode.getName()%>">
7943 04 May 21 nicklas 350                   <div class="index"></div>
7943 04 May 21 nicklas 351                   <div class="check">
7943 04 May 21 nicklas 352                     <base:icon 
7943 04 May 21 nicklas 353                       subclass="link table-check"
7943 04 May 21 nicklas 354                       image="check_uncheck.png" 
7943 04 May 21 nicklas 355                       tooltip="Toggle all (use CTRL, ALT or SHIFT to check/uncheck)" 
7943 04 May 21 nicklas 356                       visible="<%=lastRow && mode.hasCheck()%>"
7943 04 May 21 nicklas 357                     />
7943 04 May 21 nicklas 358                   </div>
7943 04 May 21 nicklas 359                   <div class="icons">
7943 04 May 21 nicklas 360                     <base:icon
7943 04 May 21 nicklas 361                       subclass="link table-filter-row-action"
7943 04 May 21 nicklas 362                       image="add.png"
7943 04 May 21 nicklas 363                       tooltip="Add extra filter row"
7943 04 May 21 nicklas 364                       visible="<%=lastRow%>"
7943 04 May 21 nicklas 365                     /><base:icon
7943 04 May 21 nicklas 366                       subclass="link table-filter-row-action"
7943 04 May 21 nicklas 367                       image="remove.png"
7943 04 May 21 nicklas 368                       tooltip="Remove this filter row"
7943 04 May 21 nicklas 369                       visible="<%=numRows > 1 || numFilters > 0 %>"
7943 04 May 21 nicklas 370                       data-remove-row="<%=filterNo%>"
7943 04 May 21 nicklas 371                     />
7943 04 May 21 nicklas 372                   </div>
7943 04 May 21 nicklas 373                 </div>
6706 02 Feb 15 nicklas 374               </tbl:header>
6706 02 Feb 15 nicklas 375               <tbl:propertyfilter row="<%=filterNo%>" />
6706 02 Feb 15 nicklas 376             </tbl:headerrow>
6706 02 Feb 15 nicklas 377             <%
6706 02 Feb 15 nicklas 378           }
6706 02 Feb 15 nicklas 379           %>
7913 22 Feb 21 nicklas 380           <tbl:columnsubtitles />
5948 08 Feb 12 nicklas 381         </tbl:headers>
5948 08 Feb 12 nicklas 382         <tbl:rows>
2658 22 Sep 06 nicklas 383           <%
5954 13 Feb 12 nicklas 384           if (cc.getMessage() != null)
5954 13 Feb 12 nicklas 385           {
5954 13 Feb 12 nicklas 386             %>
6604 18 Nov 14 nicklas 387             <tbl:panel subclass="bg-filled-50">
5954 13 Feb 12 nicklas 388               <div class="messagecontainer error"><%=cc.getMessage()%></div>
5954 13 Feb 12 nicklas 389             </tbl:panel>
5954 13 Feb 12 nicklas 390             <%
5954 13 Feb 12 nicklas 391             cc.setMessage(null);
5954 13 Feb 12 nicklas 392           }
2658 22 Sep 06 nicklas 393           int index = cc.getPage()*cc.getRowsPerPage();
2658 22 Sep 06 nicklas 394           int selectedItemId = cc.getId();
2658 22 Sep 06 nicklas 395           if (extraValueTypes != null)
2658 22 Sep 06 nicklas 396           {            
2658 22 Sep 06 nicklas 397             while (extraValueTypes.hasNext())
2658 22 Sep 06 nicklas 398             {
2658 22 Sep 06 nicklas 399               ExtraValueType item = extraValueTypes.next();
2658 22 Sep 06 nicklas 400               int itemId = item.getId();
2658 22 Sep 06 nicklas 401               String name = HTML.encodeTags(item.getName());
2658 22 Sep 06 nicklas 402               String tooltip = mode.isSelectionMode() ? 
2658 22 Sep 06 nicklas 403                   "Select this item" : "View this item" + (writePermission ? " (use CTRL, ALT or SHIFT to edit)" : "");
6221 10 Jan 13 nicklas 404               
2658 22 Sep 06 nicklas 405               index++;
2658 22 Sep 06 nicklas 406               numListed++;
2658 22 Sep 06 nicklas 407               %>
2658 22 Sep 06 nicklas 408               <tbl:row>
7943 04 May 21 nicklas 409                 <tbl:header clazz="row-index bg-filled-100">
7943 04 May 21 nicklas 410                   <div class="index-<%=mode.getName()%>">
7943 04 May 21 nicklas 411                     <div class="index <%=index>999?"index-smaller":""%>"><%=index%></div>
7943 04 May 21 nicklas 412                     <div class="check">
7943 04 May 21 nicklas 413                       <base:input
7943 04 May 21 nicklas 414                         type="checkbox" 
7943 04 May 21 nicklas 415                         name="<%=itemId%>" 
7943 04 May 21 nicklas 416                         value="<%=itemId%>" 
7943 04 May 21 nicklas 417                         title="<%=name%>" 
7943 04 May 21 nicklas 418                         checked="<%=cc.getSelected().contains(itemId)%>"
7943 04 May 21 nicklas 419                         visible="<%=mode.hasCheck()%>"
7943 04 May 21 nicklas 420                       />
7943 04 May 21 nicklas 421                       <base:input 
7943 04 May 21 nicklas 422                         type="radio" 
7943 04 May 21 nicklas 423                         name="item_id" 
7943 04 May 21 nicklas 424                         value="<%=itemId%>" 
7943 04 May 21 nicklas 425                         title="<%=name%>" 
7943 04 May 21 nicklas 426                         checked="<%=selectedItemId == itemId%>"
7943 04 May 21 nicklas 427                         visible="<%=mode.hasRadio()%>"
7943 04 May 21 nicklas 428                       />
7943 04 May 21 nicklas 429                     </div>
7943 04 May 21 nicklas 430                     <div class="icons">
7943 04 May 21 nicklas 431                       <base:icon 
7943 04 May 21 nicklas 432                         image="deleted.png"
7943 04 May 21 nicklas 433                         id="<%="delete."+itemId %>"
7943 04 May 21 nicklas 434                         subclass="<%=deletePermission ? "table-delete-item" : "disabled" %>"
7943 04 May 21 nicklas 435                         data-item-id="<%=itemId%>"
7943 04 May 21 nicklas 436                         tooltip="This item has been scheduled for deletion" 
7943 04 May 21 nicklas 437                         visible="<%=item.isRemoved()%>"
7943 04 May 21 nicklas 438                       />
7943 04 May 21 nicklas 439                     </div>
7943 04 May 21 nicklas 440                   </div>
7943 04 May 21 nicklas 441                 </tbl:header>
6289 05 Jun 13 nicklas 442                 <tbl:cell column="name"><div 
6289 05 Jun 13 nicklas 443                   class="link table-item"
6289 05 Jun 13 nicklas 444                   data-item-id="<%=itemId%>"
6289 05 Jun 13 nicklas 445                   data-no-edit="<%=writePermission ? 0 : 1 %>" 
6289 05 Jun 13 nicklas 446                   tabindex="0"
6289 05 Jun 13 nicklas 447                   title="<%=tooltip%>"><%=name%></tbl:cell>
4332 12 Jun 08 martin 448                 <tbl:cell column="id"><%=item.getId()%></tbl:cell>
4698 10 Dec 08 nicklas 449                 <tbl:cell column="entryDate" value="<%=item.getEntryDate()%>" />
2658 22 Sep 06 nicklas 450                 <tbl:cell column="externalId"><%=HTML.encodeTags(item.getExternalId())%></tbl:cell>
2658 22 Sep 06 nicklas 451                 <tbl:cell column="valueType"><%=item.getValueType()%></tbl:cell>
3558 16 Jul 07 nicklas 452                 <tbl:cell column="averageMethod"><%=item.getAverageMethod().toString()%></tbl:cell>
2733 16 Oct 06 nicklas 453                 <tbl:cell column="useColors"><%=item.getColoring().isUsingColors() ? "yes" : "no"%></tbl:cell>
2733 16 Oct 06 nicklas 454                 <tbl:cell column="logarithmic"><%=item.getColoring().isLogarithmic() ? "yes" : "no"%></tbl:cell>
2733 16 Oct 06 nicklas 455                 <tbl:cell column="minValue"><%=Values.formatNumber(item.getColoring().getMinValue(), 2)%></tbl:cell>
2733 16 Oct 06 nicklas 456                 <tbl:cell column="midValue"><%=Values.formatNumber(item.getColoring().getMidValue(), 2)%></tbl:cell>
2733 16 Oct 06 nicklas 457                 <tbl:cell column="maxValue"><%=Values.formatNumber(item.getColoring().getMaxValue(), 2)%></tbl:cell>
2658 22 Sep 06 nicklas 458                 <tbl:cell column="description"><%=HTML.encodeTags(item.getDescription())%></tbl:cell>
6045 03 Apr 12 nicklas 459                 <tbl:xt-cells dc="<%=dc%>" item="<%=item%>">
6045 03 Apr 12 nicklas 460                   <tbl:cell column="xt-columns" />
6045 03 Apr 12 nicklas 461                 </tbl:xt-cells>
2658 22 Sep 06 nicklas 462               </tbl:row>
2658 22 Sep 06 nicklas 463               <%
2658 22 Sep 06 nicklas 464               }
2658 22 Sep 06 nicklas 465             }
5954 13 Feb 12 nicklas 466           if (numListed == 0)
5954 13 Feb 12 nicklas 467           {
5954 13 Feb 12 nicklas 468             %>
6604 18 Nov 14 nicklas 469             <tbl:panel subclass="bg-filled-50">
5954 13 Feb 12 nicklas 470               <div class="messagecontainer note">
5954 13 Feb 12 nicklas 471               <%=extraValueTypes == null || extraValueTypes.getTotalCount() == 0 ? "No extra value types were found" : "No extra value types on this page. Please select another page!" %>
5954 13 Feb 12 nicklas 472               </div>
5954 13 Feb 12 nicklas 473             </tbl:panel>
5954 13 Feb 12 nicklas 474             <%
5954 13 Feb 12 nicklas 475           }
2658 22 Sep 06 nicklas 476           %>
5954 13 Feb 12 nicklas 477         </tbl:rows>
2658 22 Sep 06 nicklas 478       </tbl:data>
2658 22 Sep 06 nicklas 479     </tbl:table>
5954 13 Feb 12 nicklas 480     </div>
5954 13 Feb 12 nicklas 481     
5951 09 Feb 12 nicklas 482     <base:buttongroup subclass="dialogbuttons">
6289 05 Jun 13 nicklas 483       <base:button id="btnOk" title="Ok" visible="<%=mode.hasOkButton()%>" />
6289 05 Jun 13 nicklas 484       <base:button id="close" title="Cancel" visible="<%=mode.hasCancelButton()%>" />
6289 05 Jun 13 nicklas 485       <base:button id="close" title="Close" visible="<%=mode.hasCloseButton()%>" />
2658 22 Sep 06 nicklas 486     </base:buttongroup>
5951 09 Feb 12 nicklas 487     
2658 22 Sep 06 nicklas 488   </base:body>
2658 22 Sep 06 nicklas 489   </base:page>
2658 22 Sep 06 nicklas 490   <%
2658 22 Sep 06 nicklas 491 }
2658 22 Sep 06 nicklas 492 finally
2658 22 Sep 06 nicklas 493 {
2658 22 Sep 06 nicklas 494   if (extraValueTypes != null) extraValueTypes.close();
2658 22 Sep 06 nicklas 495   if (dc != null) dc.close();
2658 22 Sep 06 nicklas 496 }
3675 16 Aug 07 jari 497 %>