Changeset 7214
- Timestamp:
- Oct 19, 2016, 3:36:34 PM (6 years ago)
- Location:
- trunk
- Files:
-
- 6 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/clients/web/net/sf/basedb/clients/web/PermissionUtil.java
r7212 r7214 55 55 if (item.hasPermission(Permission.READ) && itemPermissions.contains(Permission.READ)) sb.append("R"); 56 56 if (item.hasPermission(Permission.USE) && itemPermissions.contains(Permission.USE)) sb.append("U"); 57 if (item.hasPermission(Permission.RESTRICTED_WRITE) && itemPermissions.contains(Permission.RESTRICTED_WRITE)) sb.append("A"); 57 58 if (item.hasPermission(Permission.WRITE) && itemPermissions.contains(Permission.WRITE)) sb.append("W"); 58 59 if (item.hasPermission(Permission.DELETE) && itemPermissions.contains(Permission.DELETE)) sb.append("D"); … … 64 65 if (item.hasPermission(Permission.READ)) sb.append("R"); 65 66 if (item.hasPermission(Permission.USE)) sb.append("U"); 67 if (item.hasPermission(Permission.RESTRICTED_WRITE)) sb.append("A"); 66 68 if (item.hasPermission(Permission.WRITE)) sb.append("W"); 67 69 if (item.hasPermission(Permission.DELETE)) sb.append("D"); … … 99 101 /** 100 102 Create a comma-separated string with "readable" permission names. 101 @since 2.10 102 */ 103 public static final String getFullPermissionNames(Set<Permission> permissions )103 @since 2.10, 3.10 104 */ 105 public static final String getFullPermissionNames(Set<Permission> permissions, String restrictedWrite) 104 106 { 105 107 StringBuilder sb = new StringBuilder(); … … 108 110 if (permissions.contains(Permission.READ)) sb.append("Read"); 109 111 if (permissions.contains(Permission.USE)) sb.append(sb.length()==0 ? "Use" : ", Use"); 112 if (restrictedWrite != null && permissions.contains(Permission.RESTRICTED_WRITE)) 113 { 114 sb.append(sb.length()==0 ? restrictedWrite : ", "+restrictedWrite); 115 } 110 116 if (permissions.contains(Permission.WRITE)) sb.append(sb.length()==0 ? "Write" : ", Write"); 111 117 if (permissions.contains(Permission.DELETE)) sb.append(sb.length()==0 ? "Delete" : ", Delete"); -
trunk/src/core/net/sf/basedb/core/Item.java
r7212 r7214 71 71 The item is a {@link Project}. 72 72 */ 73 PROJECT(24, "Project", "prj", Project.class, ProjectData.class, DefinedPermissions.ownable ,73 PROJECT(24, "Project", "prj", Project.class, ProjectData.class, DefinedPermissions.ownable_annotatable, 74 74 1400), 75 75 /** … … 1024 1024 private static final Set<Permission> basic = Collections.unmodifiableSet(EnumSet.of(Permission.CREATE, Permission.READ, Permission.USE, Permission.WRITE, Permission.DELETE)); 1025 1025 private static final Set<Permission> ownable = Collections.unmodifiableSet(EnumSet.of(Permission.CREATE, Permission.READ, Permission.USE, Permission.WRITE, Permission.DELETE, Permission.SET_OWNER)); 1026 private static final Set<Permission> ownable_annotatable = Collections.unmodifiableSet(EnumSet.of(Permission.CREATE, Permission.READ, Permission.USE, Permission.RESTRICTED_WRITE, Permission.WRITE, Permission.DELETE, Permission.SET_OWNER)); 1026 1027 private static final Set<Permission> shareable = Collections.unmodifiableSet(EnumSet.of(Permission.CREATE, Permission.READ, Permission.USE, Permission.WRITE, Permission.DELETE, Permission.SET_OWNER, Permission.SET_PERMISSION)); 1027 1028 private static final Set<Permission> shareable_annotatable = Collections.unmodifiableSet(EnumSet.of(Permission.CREATE, Permission.READ, Permission.USE, Permission.RESTRICTED_WRITE, Permission.WRITE, Permission.DELETE, Permission.SET_OWNER, Permission.SET_PERMISSION)); -
trunk/www/my_base/projects/edit_project.jsp
r7199 r7214 79 79 private static final int READ_CODE = PermissionUtil.getPermissionCode(EnumSet.of(Permission.READ)); 80 80 private static final int USE_CODE = PermissionUtil.getPermissionCode(EnumSet.of(Permission.USE)); 81 private static final int RESTRICTED_WRITE_CODE = PermissionUtil.getPermissionCode(EnumSet.of(Permission.RESTRICTED_WRITE)); 81 82 private static final int WRITE_CODE = PermissionUtil.getPermissionCode(EnumSet.of(Permission.WRITE)); 82 83 private static final int DELETE_CODE = PermissionUtil.getPermissionCode(EnumSet.of(Permission.DELETE)); … … 89 90 sb.append(permissions.contains(Permission.READ) ? "R" : "-"); 90 91 sb.append(permissions.contains(Permission.USE) ? "U" : "-"); 92 sb.append(permissions.contains(Permission.RESTRICTED_WRITE) ? "A" : "-"); 91 93 sb.append(permissions.contains(Permission.WRITE) ? "W" : "-"); 92 94 sb.append(permissions.contains(Permission.DELETE) ? "D" : "-"); … … 252 254 data-read="<%=READ_CODE%>" 253 255 data-use="<%=USE_CODE%>" 256 data-restricted-write="<%=RESTRICTED_WRITE_CODE%>" 254 257 data-write="<%=WRITE_CODE%>" 255 258 data-delete="<%=DELETE_CODE%>" … … 296 299 <input type="checkbox" id="autoUse" checked name="auto_use" 297 300 ><label for="autoUse">Use</label><br> 301 <input type="checkbox" id="autoRestrictedWrite" name="auto_restricted_write" 302 ><label for="autoRestrictedWrite">Annotate</label><br> 298 303 <input type="checkbox" id="autoWrite" name="auto_write" 299 304 ><label for="autoWrite">Write</label><br> … … 340 345 <input type="checkbox" id="read" checked name="read"><label for="read">Read</label><br> 341 346 <input type="checkbox" id="use" checked name="use"><label for="use">Use</label><br> 347 <input type="checkbox" id="restricted_write" name="restricted_write"><label for="restricted_write">Annotate</label><br> 342 348 <input type="checkbox" id="write" name="write"><label for="write">Write</label><br> 343 349 <input type="checkbox" id="delete" name="delete"><label for="delete">Delete</label><br> -
trunk/www/my_base/projects/list_projects.jsp
r7199 r7214 452 452 enableEditLink="<%=mode.hasEditLink()%>" 453 453 enablePropertyLink="<%=mode.hasPropertyLink()%>" 454 nulltext="<%=PermissionUtil.getFullPermissionNames(item.getAutoPermission() )%>"454 nulltext="<%=PermissionUtil.getFullPermissionNames(item.getAutoPermission(), "Annotate")%>" 455 455 /></tbl:cell> 456 456 <tbl:cell column="entryDate" value="<%=item.getEntryDate()%>" /> -
trunk/www/my_base/projects/projects.js
r7199 r7214 38 38 Permission.READ = Data.int('page-data', 'read'); 39 39 Permission.USE = Data.int('page-data', 'use'); 40 Permission.RESTRICTED_WRITE = Data.int('page-data', 'restricted-write'); 40 41 Permission.WRITE = Data.int('page-data', 'write'); 41 42 Permission.DELETE = Data.int('page-data', 'delete'); … … 62 63 Events.addEventHandler('read', 'click', projects.permissionsOnClick); 63 64 Events.addEventHandler('use', 'click', projects.permissionsOnClick); 65 Events.addEventHandler('restricted_write', 'click', projects.permissionsOnClick); 64 66 Events.addEventHandler('write', 'click', projects.permissionsOnClick); 65 67 Events.addEventHandler('delete', 'click', projects.permissionsOnClick); … … 69 71 Events.addEventHandler('autoRead', 'click', projects.autoPermissionsOnClick); 70 72 Events.addEventHandler('autoUse', 'click', projects.autoPermissionsOnClick); 73 Events.addEventHandler('autoRestrictedWrite', 'click', projects.autoPermissionsOnClick); 71 74 Events.addEventHandler('autoWrite', 'click', projects.autoPermissionsOnClick); 72 75 Events.addEventHandler('autoDelete', 'click', projects.autoPermissionsOnClick); … … 180 183 if (frm[prefix+'read'].checked) permissionCode += Permission.READ; 181 184 if (frm[prefix+'use'].checked) permissionCode += Permission.USE; 185 if (frm[prefix+'restricted_write'].checked) permissionCode += Permission.RESTRICTED_WRITE; 182 186 if (frm[prefix+'write'].checked) permissionCode += Permission.WRITE; 183 187 if (frm[prefix+'delete'].checked) permissionCode += Permission.DELETE; … … 192 196 s += permissionCode & Permission.READ ? "R" : "-"; 193 197 s += permissionCode & Permission.USE ? "U" : "-"; 198 s += permissionCode & Permission.RESTRICTED_WRITE ? "A" : "-"; 194 199 s += permissionCode & Permission.WRITE ? "W" : "-"; 195 200 s += permissionCode & Permission.DELETE ? "D" : "-"; … … 205 210 frm[prefix+'read'].checked = permissionCode & Permission.READ; 206 211 frm[prefix+'use'].checked = permissionCode & Permission.USE; 212 frm[prefix+'restricted_write'].checked = permissionCode & Permission.RESTRICTED_WRITE; 207 213 frm[prefix+'write'].checked = permissionCode & Permission.WRITE; 208 214 frm[prefix+'delete'].checked = permissionCode & Permission.DELETE; … … 221 227 { 222 228 frm[prefix+'write'].checked = frm[prefix+'write'].checked || frm[prefix+'delete'].checked || frm[prefix+'set_owner'].checked || frm[prefix+'set_permission'].checked; 229 frm[prefix+'restricted_write'].checked = frm[prefix+'restricted_write'].checked || frm[prefix+'write'].checked; 223 230 frm[prefix+'use'].checked = frm[prefix+'use'].checked || frm[prefix+'write'].checked; 224 frm[prefix+'read'].checked = frm[prefix+'read'].checked || frm[prefix+'use'].checked ;231 frm[prefix+'read'].checked = frm[prefix+'read'].checked || frm[prefix+'use'].checked || frm[prefix+'restricted_write'].checked; 225 232 } 226 233 else 227 234 { 228 235 frm[prefix+'use'].checked = frm[prefix+'use'].checked && frm[prefix+'read'].checked; 229 frm[prefix+'write'].checked = frm[prefix+'write'].checked && frm[prefix+'use'].checked; 236 frm[prefix+'restricted_write'].checked = frm[prefix+'restricted_write'].checked && frm[prefix+'read'].checked; 237 frm[prefix+'write'].checked = frm[prefix+'write'].checked && frm[prefix+'use'].checked && frm[prefix+'restricted_write'].checked; 230 238 frm[prefix+'delete'].checked = frm[prefix+'delete'].checked && frm[prefix+'write'].checked; 231 239 frm[prefix+'set_owner'].checked = frm[prefix+'set_owner'].checked && frm[prefix+'write'].checked; … … 349 357 frm.auto_read.disabled = hasTemplate; 350 358 frm.auto_use.disabled = hasTemplate; 359 frm.auto_restricted_write.disabled = hasTemplate; 351 360 frm.auto_write.disabled = hasTemplate; 352 361 frm.auto_delete.disabled = hasTemplate; -
trunk/www/my_base/projects/view_project.jsp
r7199 r7214 223 223 <th>Default permissions</th> 224 224 <td><base:propertyvalue item="<%=project%>" property="permissionTemplate" 225 nulltext="<%=PermissionUtil.getFullPermissionNames(project.getAutoPermission() )%>" /></td>225 nulltext="<%=PermissionUtil.getFullPermissionNames(project.getAutoPermission(), "Annotate")%>" /></td> 226 226 </tr> 227 227 <tr> … … 302 302 visible="<%=group.isRemoved()%>" 303 303 /><%=Base.getLinkedName(ID, group, false, true)%></tbl:cell> 304 <tbl:cell column="permissions"><%= permissions.toString().replaceAll("\\[|\\]", "")%></tbl:cell>304 <tbl:cell column="permissions"><%=PermissionUtil.getFullPermissionNames(permissions, "Annotate")%></tbl:cell> 305 305 </tbl:row> 306 306 <% … … 317 317 visible="<%=user.isRemoved()%>" 318 318 /><%=Base.getLinkedName(ID, user, false, true)%></tbl:cell> 319 <tbl:cell column="permissions"><%= permissions.toString().replaceAll("\\[|\\]", "")%></tbl:cell>319 <tbl:cell column="permissions"><%=PermissionUtil.getFullPermissionNames(permissions, "Annotate")%></tbl:cell> 320 320 </tbl:row> 321 321 <%
Note: See TracChangeset
for help on using the changeset viewer.