|
29 | 29 | <j:set var="tableid" value="projectRoles"/> |
30 | 30 | <j:set var="projectSIDs" value="${it.strategy.getSidEntries(it.strategy.PROJECT)}"/> |
31 | 31 | <j:set var="itemGrantedRoles" value="${it.strategy.getGrantedRolesEntries(it.strategy.PROJECT)}"/> |
| 32 | + <j:set var="disableJSFeatures" value="${projectSIDs.size() * itemGrantedRoles.size() gt 40000}"/> |
32 | 33 | <div id="itemUserInputFilter" data-table-id="${tableid}" data-initial-size="${projectSIDs.size()}" class="user-filter"> |
33 | 34 | <f:entry title="${%Filter by User/Group}"> |
34 | 35 | <input id="itemUserInput" class="user-input-filter jenkins-input setting-input" data-table-id="${tableid}"/> |
|
40 | 41 | </f:entry> |
41 | 42 | </div> |
42 | 43 |
|
43 | | - <table id="${tableid}" class="center-align global-matrix-authorization-strategy-table" name="data"> |
| 44 | + <j:if test="${disableJSFeatures}"> |
| 45 | + <div class="warning jenkins-!-margin-bottom-2"> |
| 46 | + ${%Tooltips and table highlighting have been disabled for performance reasons} |
| 47 | + </div> |
| 48 | + </j:if> |
| 49 | + |
| 50 | + <table id="${tableid}" class="center-align global-matrix-authorization-strategy-table" name="data" data-disable-highlighter="${disableJSFeatures}"> |
44 | 51 |
|
45 | 52 | <!-- The first row will show grouping --> |
46 | 53 | <local:thead roles="${itemGrantedRoles}" showPattern="true"/> |
47 | 54 | <tbody> |
48 | 55 | <tr name="[USER:anonymous]" class="highlight-row"> |
49 | | - <local:userRow sid="anonymous" title="${%Anonymous}" type="${it.strategy.PROJECT}" permissionType="USER" typedescription="User" noremove="true"/> |
| 56 | + <local:userRow sid="anonymous" title="${%Anonymous}" type="${it.strategy.PROJECT}" permissionType="USER" typedescription="User" noremove="true" disableTooltips="${disableJSFeatures}"/> |
50 | 57 | </tr> |
51 | 58 | <tr name="[GROUP:authenticated]" class="highlight-row"> |
52 | | - <local:userRow sid="authenticated" title="authenticated" type="${it.strategy.PROJECT}" permissionType="GROUP" typedescription="Group" noremove="true"/> |
| 59 | + <local:userRow sid="authenticated" title="authenticated" type="${it.strategy.PROJECT}" permissionType="GROUP" typedescription="Group" noremove="true" disableTooltips="${disableJSFeatures}"/> |
53 | 60 | </tr> |
54 | 61 | <j:forEach var="entry" items="${projectSIDs}"> |
55 | 62 | <j:if test="${entry.sid != 'authenticated' or entry.type.toString() != 'GROUP'}"> |
56 | 63 | <tr name="[${entry.type}:${entry.sid}]" class="permission-row highlight-row" data-descriptor-url="${descriptorPath}"> |
57 | | - <local:userRow sid="${entry.sid}" title="${entry.sid}" permissionType="${entry.type.toString()}" typedescription="${entry.type.getDescription()}" type="${it.strategy.PROJECT}"/> |
| 64 | + <local:userRow sid="${entry.sid}" title="${entry.sid}" permissionType="${entry.type.toString()}" typedescription="${entry.type.getDescription()}" type="${it.strategy.PROJECT}" disableTooltips="${disableJSFeatures}"/> |
58 | 65 | </tr> |
59 | 66 | </j:if> |
60 | 67 | </j:forEach> |
61 | 68 | </tbody> |
62 | | - <local:tfoot roles="${itemGrantedRoles}" sids="${projectSIDs}"/> |
| 69 | + <local:tfoot roles="${itemGrantedRoles}" sids="${projectSIDs}" showPattern="true"/> |
63 | 70 | </table> |
64 | 71 |
|
65 | 72 | <template id="newItemRowTemplate"> |
66 | 73 | <tr class="permission-row highlight-row" data-descriptor-url="${descriptorPath}"> |
67 | | - <local:userRow title="{{USER}}" type="${it.strategy.PROJECT}" typedescription="{{USERGROUP}}"/> |
| 74 | + <local:userRow title="{{USER}}" type="${it.strategy.PROJECT}" typedescription="{{USERGROUP}}" disableTooltips="${disableJSFeatures}"/> |
68 | 75 | </tr> |
69 | 76 | </template> |
70 | 77 |
|
71 | 78 | <l:isAdmin> |
72 | 79 | <br/> |
73 | | - <local:addButtons sids="${projectSIDs}" tableid="${tableid}" id="newItemRowTemplate" roles="${itemGrantedRoles}" highlighter="itemTableHighlighter"/> |
| 80 | + <j:if test="${disableJSFeatures}"> |
| 81 | + <local:addButtons sids="${projectSIDs}" tableid="${tableid}" id="newItemRowTemplate" roles="${itemGrantedRoles}"/> |
| 82 | + </j:if> |
| 83 | + <j:if test="${!disableJSFeatures}"> |
| 84 | + <local:addButtons sids="${projectSIDs}" tableid="${tableid}" id="newItemRowTemplate" roles="${itemGrantedRoles}" highlighter="itemTableHighlighter"/> |
| 85 | + </j:if> |
74 | 86 | </l:isAdmin> |
75 | 87 | </j:jelly> |
0 commit comments