Changeset 7295
- Timestamp:
- Feb 20, 2017, 8:09:27 AM (6 years ago)
- Location:
- trunk
- Files:
-
- 5 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/clients/web/net/sf/basedb/clients/web/resources/menu.properties
r7294 r7295 275 275 myroles.tooltip.0 De-activate this role 276 276 myroles.tooltip.1 Activate this role 277 myroles.options Options 278 myroles.options.tooltip Configure default inactive roles 277 279 278 280 ## Refresh menu ## -
trunk/www/include/menu.jsp
r7294 r7295 1215 1215 %> 1216 1216 <m:menuitem 1217 title="<%= r.getName() %>"1217 title="<%=HTML.encodeTags(r.getName()) %>" 1218 1218 tooltip="<%=menu.getString("myroles.tooltip", isInactive)%>" 1219 1219 icon="<%=isInactive ? "option_unselected.png" : "option_selected.png"%>" … … 1223 1223 <% 1224 1224 } 1225 %> 1226 <m:menuseparator /> 1227 <m:menuitem 1228 title="<%=menu.getString("myroles.options") + "…"%>" 1229 url="<%=root+"my_base/user/preferences.jsp?ID="+ID+"&page=inactiveRoles"%>" 1230 data-popup="Preferences, 600, 400" 1231 tooltip="<%=menu.getString("myroles.options.tooltip")%>" 1232 /> 1233 <% 1225 1234 } 1226 1235 %> -
trunk/www/login.jsp
r7189 r7295 44 44 import="net.sf.basedb.util.Values" 45 45 import="java.util.Iterator" 46 import="java.util.Set" 47 import="java.util.HashSet" 48 import="java.util.Arrays" 46 49 %> 47 50 <%@ taglib prefix="base" uri="/WEB-INF/base.tld" %> … … 121 124 if (sc.isLoggedIn()) 122 125 { 126 // Some roles may be inactive by default 127 String tmp = Values.getStringOrNull(sc.getUserClientSetting("inactiveRoles")); 128 if (tmp != null) 129 { 130 Set<Integer> defaultInactive = new HashSet<Integer>(Arrays.asList(Values.getInt(tmp.split(":")))); 131 for (int roleId : defaultInactive) 132 { 133 sc.setRoleInactive(roleId, true); 134 } 135 } 136 123 137 int lastActiveProjectId = Values.getInt(sc.getUserClientSetting("projects.lastactive")); 124 138 String startPageId = sc.getUserClientSetting("start-page-id"); -
trunk/www/my_base/user/preferences.jsp
r7112 r7295 39 39 import="net.sf.basedb.core.DbControl" 40 40 import="net.sf.basedb.core.User" 41 import="net.sf.basedb.core.Role" 42 import="net.sf.basedb.core.Type" 41 43 import="net.sf.basedb.core.Metadata" 42 44 import="net.sf.basedb.core.ItemContext" 45 import="net.sf.basedb.core.ItemQuery" 43 46 import="net.sf.basedb.core.Permission" 47 import="net.sf.basedb.core.query.Hql" 48 import="net.sf.basedb.core.query.Restrictions" 49 import="net.sf.basedb.core.query.Expressions" 50 import="net.sf.basedb.core.query.Orders" 44 51 import="net.sf.basedb.util.ToStringComparator" 45 52 import="net.sf.basedb.clients.web.Base" … … 51 58 import="net.sf.basedb.clients.web.extensions.startpage.StartPageAction" 52 59 import="net.sf.basedb.util.Values" 60 import="java.util.Collections" 53 61 import="java.util.List" 54 62 import="java.util.Set" … … 95 103 allItems.add(Item.BIOASSAYSET); 96 104 105 // Load roles 106 List<Role> roles = null; 107 Set<Integer> roleIds = sc.getAllRoles(); 108 Set<Integer> defaultInactive = Collections.emptySet(); 109 if (roleIds != null && roleIds.size() > 0) 110 { 111 ItemQuery<Role> roleQuery = Role.getQuery(); 112 roleQuery.restrict(Restrictions.in(Hql.property("id"), Expressions.parameter("roles"))); 113 roleQuery.setParameter("roles", roleIds, Type.INT); 114 roleQuery.order(Orders.asc(Hql.property("name"))); 115 roles = roleQuery.list(dc); 116 117 String tmp = Values.getStringOrNull(sc.getUserClientSetting("inactiveRoles")); 118 if (tmp != null) 119 { 120 defaultInactive = new HashSet<Integer>(Arrays.asList(Values.getInt(tmp.split(":")))); 121 } 122 } 123 97 124 JspContext context = ExtensionsControl.createContext(dc, pageContext, null, user); 98 125 ExtensionsInvoker<StartPageAction> invoker = (ExtensionsInvoker<StartPageAction>)ExtensionsControl.useExtensions(context, "net.sf.basedb.clients.web.start-page"); … … 505 532 </table> 506 533 </t:tab> 534 <t:tab 535 id="inactiveRoles" 536 title="Inactive roles" 537 helpid="userpreferences.inactiveroles" 538 tooltip="Select if any roles should be inactive by default after logging in" 539 visible="<%=roles != null && roles.size() > 0%>" 540 > 541 <table class="fullform"> 542 <tr class="dynamic"> 543 <th>Default roles</th> 544 <td> 545 <b>Inactive at login</b><br> 546 <% 547 for (Role r : roles) 548 { 549 boolean inactive = defaultInactive.contains(r.getId()); 550 %> 551 <label><input type="checkbox" id="role.<%=r.getId()%>" 552 name="inactiveRoles" value="<%=r.getId()%>" 553 <%=inactive ? "checked" : "" %> 554 ><%=HTML.encodeTags(r.getName())%></label><br> 555 <% 556 } 557 %> 558 <div class="messagecontainer note" style="margin-top: 1em;"> 559 Select all roles that should be inactive by default 560 after logging in. Note! This setting only applies when 561 logging in via the web interface. 562 </div> 563 </td> 564 </tr> 565 </table> 566 567 </t:tab> 507 568 </t:tabcontrol> 508 569 </form> -
trunk/www/my_base/user/submit_user.jsp
r7112 r7295 48 48 import="net.sf.basedb.clients.web.formatter.FormatterFactory" 49 49 import="java.util.Arrays" 50 import="java.util.Collections" 50 51 import="java.util.List" 51 52 %> … … 173 174 stickyItems == null ? "" : Values.getString(Arrays.asList(stickyItems), ":", true)); 174 175 176 // Roles tab 177 String[] inactiveRoles = request.getParameterValues("inactiveRoles"); 178 sc.setUserClientSetting("inactiveRoles", inactiveRoles == null ? null : Values.getString(Arrays.asList(inactiveRoles), ":", true)); 179 175 180 message = "Preferences saved"; 176 181 }
Note: See TracChangeset
for help on using the changeset viewer.