aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--phpBB/adm/style/acp_permission_roles.html171
-rw-r--r--phpBB/adm/style/acp_permissions.html7
-rw-r--r--phpBB/adm/style/admin.css497
-rw-r--r--phpBB/adm/style/permission_mask.html285
4 files changed, 435 insertions, 525 deletions
diff --git a/phpBB/adm/style/acp_permission_roles.html b/phpBB/adm/style/acp_permission_roles.html
index fd787dbe10..9a53800d4e 100644
--- a/phpBB/adm/style/acp_permission_roles.html
+++ b/phpBB/adm/style/acp_permission_roles.html
@@ -6,53 +6,22 @@
<script type="text/javascript">
<!--
- var active_option = 'options0';
-
- /**
- * Show/hide option panels
- * value = suffix for ID to show
- */
- function swap_options(id)
- {
- if (id == active_option)
- {
- return;
- }
-
- // Hide active options and display container
- dE(active_option, -1);
- dE(id, 1);
-
- active_option = id;
- }
-
- /**
- * Mark all radio buttons in one panel
- * id = table ID container, s = status ['y'/'u'/'n']
- */
- function mark_options(id, s)
- {
- var t = document.getElementById(id);
-
- if (!t)
- {
- return;
- }
-
- var rb = t.getElementsByTagName('input');
-
- for (var r = 0; r < rb.length; r++ )
- {
- if (rb[r].id.substr(rb[r].id.length-1) == s)
- {
- rb[r].checked = true;
- }
- }
- }
+ var active_pmask = '0';
+ var active_fmask = '0';
+ var active_cat = '0';
+ var id = '000';
+
+ var role_options = new Array();
+
+ <!-- IF S_ROLE_JS_ARRAY -->
+ {S_ROLE_JS_ARRAY}
+ <!-- ENDIF -->
//-->
</script>
+ <script language="javascript" type="text/javascript" src="style/permissions.js"></script>
+
<a href="{U_BACK}" style="float: right">&laquo; {L_BACK}</a>
<h1>{L_TITLE}</h1>
@@ -96,62 +65,64 @@
<h1>{L_ACL_TYPE}</h1>
<fieldset class="quick">
- <a href="#" onclick="mark_options('a_options', 'y'); return false;">{L_ALL_YES}</a> &bull; <a href="#" onclick="mark_options('a_options', 'n'); return false;">{L_ALL_NEVER}</a> &bull; <a href="#" onclick="mark_options('a_options', 'u'); return false;">{L_ALL_NO}</a>
+ <a href="#" onclick="mark_options('advanced00', 'y'); init_colours('00'); return false;">{L_ALL_YES}</a> &bull; <a href="#" onclick="mark_options('advanced00', 'n'); init_colours('00'); return false;">{L_ALL_NEVER}</a> &bull; <a href="#" onclick="mark_options('advanced00', 'u'); init_colours('00'); return false;">{L_ALL_NO}</a>
</fieldset>
- <fieldset class="permissions">
-
- <table cellspacing="1" class="pmask">
- <thead>
- <tr>
- <!-- BEGIN auth -->
- <th>{auth.CAT_NAME}</th>
- <!-- END auth -->
- </tr>
- </thead>
- <tbody>
- <tr>
- <!-- BEGIN auth -->
- <!-- IF auth.S_YES -->
- <td class="preset preset_yes">
- <!-- ELSEIF auth.S_NEVER -->
- <td class="preset preset_never">
- <!-- ELSEIF auth.S_NO -->
- <td class="preset preset_no">
- <!-- ELSE -->
- <td class="preset preset_custom">
- <!-- ENDIF -->
- <a href="#" onclick="swap_options('options{auth.S_ROW_COUNT}'); return false;"><span></span></a></td>
- <!-- END auth -->
- </tr>
- <tr class="row3">
- <td colspan="{S_NUM_PERM_COLS}" id="a_options" style="vertical-align: top; text-align: left; width: 100%;">
+ <fieldset class="perm nolegend">
+
+ <div id="advanced00">
+ <div class="perm_cat">
+ <ul>
+ <!-- BEGIN auth -->
+ <!-- IF auth.S_YES -->
+ <li class="perm_preset_yes<!-- IF auth.S_FIRST_ROW --> activetab<!-- ENDIF -->" id="tab00{auth.S_ROW_COUNT}">
+ <!-- ELSEIF auth.S_NEVER -->
+ <li class="perm_preset_never<!-- IF auth.S_FIRST_ROW --> activetab<!-- ENDIF -->" id="tab00{auth.S_ROW_COUNT}">
+ <!-- ELSEIF auth.S_NO -->
+ <li class="perm_preset_no<!-- IF auth.S_FIRST_ROW --> activetab<!-- ENDIF -->" id="tab00{auth.S_ROW_COUNT}">
+ <!-- ELSE -->
+ <li class="perm_preset_custom<!-- IF auth.S_FIRST_ROW --> activetab<!-- ENDIF -->" id="tab00{auth.S_ROW_COUNT}">
+ <!-- ENDIF -->
+ <a href="#" onclick="swap_options('0','0','{auth.S_ROW_COUNT}'); return false;"><span class="tabbg"><span class="colour"></span>{auth.CAT_NAME}</span></a></li>
+ <!-- END auth -->
+ </ul>
+ </div>
<!-- BEGIN auth -->
- <table cellspacing="1" id="options{auth.S_ROW_COUNT}" class="type3" style="width: 100%; text-align: left;<!-- IF auth.S_FIRST_ROW --><!-- ELSE --> display: none;<!-- ENDIF -->">
- <thead>
- <tr>
- <th scope="col" style="text-align: left; padding-left: 0;"><strong>{L_ACL_SETTING} [{auth.CAT_NAME}]</strong></th>
- <th scope="col"><a href="#" onclick="mark_options('options{auth.S_ROW_COUNT}', 'y'); return false;">{L_ACL_YES}</a></th>
- <th scope="col"><a href="#" onclick="mark_options('options{auth.S_ROW_COUNT}', 'u'); return false;">{L_ACL_NO}</a></th>
- <th scope="col"><a href="#" onclick="mark_options('options{auth.S_ROW_COUNT}', 'n'); return false;">{L_ACL_NEVER}</a></th>
- </tr>
- </thead>
- <tbody>
- <!-- BEGIN mask -->
- <!-- IF auth.mask.S_ROW_COUNT is even --><tr class="row4"><!-- ELSE --><tr class="row3"><!-- ENDIF -->
- <th>{auth.mask.PERMISSION}</th>
- <td class="no"><input id="setting[{auth.mask.FIELD_NAME}]_y" name="setting[{auth.mask.FIELD_NAME}]" class="radio" type="radio"<!-- IF auth.mask.S_YES --> checked="checked"<!-- ENDIF --> value="1" /></td>
- <td class="no"><input id="setting[{auth.mask.FIELD_NAME}]_u" name="setting[{auth.mask.FIELD_NAME}]" class="radio" type="radio"<!-- IF auth.mask.S_NO --> checked="checked"<!-- ENDIF --> value="-1" /></td>
- <td class="no"><input id="setting[{auth.mask.FIELD_NAME}]_n" name="setting[{auth.mask.FIELD_NAME}]" class="radio" type="radio"<!-- IF auth.mask.S_NEVER --> checked="checked"<!-- ENDIF --> value="0" /></td>
- </tr>
- <!-- END mask -->
- </tbody>
- </table>
+ <div class="perm_panel" id="options00{auth.S_ROW_COUNT}"<!-- IF auth.S_FIRST_ROW --><!-- ELSE --> style="display: none;"<!-- ENDIF -->>
+ <span class="corners-top"><span></span></span>
+ <div class="tablewrap">
+ <table cellspacing="1">
+ <colgroup>
+ <col class="permissions_name" />
+ <col class="permissions_yes" />
+ <col class="permissions_no" />
+ <col class="permissions_never" />
+ </colgroup>
+ <thead>
+ <tr>
+ <th class="name" scope="col"><strong>{L_ACL_SETTING}</strong></th>
+ <th class="value" scope="col"><a href="#" onclick="mark_options('options00{auth.S_ROW_COUNT}', 'y'); set_colours('00{auth.S_ROW_COUNT}', false, 'yes'); return false;">{L_ACL_YES}</a></th>
+ <th class="value" scope="col"><a href="#" onclick="mark_options('options00{auth.S_ROW_COUNT}', 'u'); set_colours('00{auth.S_ROW_COUNT}', false, 'no'); return false;">{L_ACL_NO}</a></th>
+ <th class="value" scope="col"><a href="#" onclick="mark_options('options00{auth.S_ROW_COUNT}', 'n'); set_colours('00{auth.S_ROW_COUNT}', false, 'never'); return false;">{L_ACL_NEVER}</a></th>
+ </tr>
+ </thead>
+ <tbody>
+ <!-- BEGIN mask -->
+ <!-- IF auth.mask.S_ROW_COUNT is even --><tr class="row4"><!-- ELSE --><tr class="row3"><!-- ENDIF -->
+ <th class="permission_name<!-- IF auth.mask.S_ROW_COUNT is even --> row4<!-- ELSE --> row3<!-- ENDIF -->">{auth.mask.PERMISSION}</th>
+
+ <td><label for="{auth.mask.FIELD_NAME}_y"><input onchange="set_colours('00{auth.S_ROW_COUNT}', false)" id="{auth.mask.FIELD_NAME}_y" name="{auth.mask.FIELD_NAME}" class="radio" type="radio"<!-- IF auth.mask.S_YES --> checked="checked"<!-- ENDIF --> value="1" /></label></td>
+ <td><label for="{auth.mask.FIELD_NAME}_u"><input onchange="set_colours('00{auth.S_ROW_COUNT}', false)" id="{auth.mask.FIELD_NAME}_u" name="{auth.mask.FIELD_NAME}" class="radio" type="radio"<!-- IF auth.mask.S_NO --> checked="checked"<!-- ENDIF --> value="-1" /></label></td>
+ <td><label for="{auth.mask.FIELD_NAME}_n"><input onchange="set_colours('00{auth.S_ROW_COUNT}', false)" id="{auth.mask.FIELD_NAME}_n" name="{auth.mask.FIELD_NAME}" class="radio" type="radio"<!-- IF auth.mask.S_NEVER --> checked="checked"<!-- ENDIF --> value="0" /></label></td>
+ </tr>
+ <!-- END mask -->
+ </tbody>
+ </table>
+ </div>
+ <span class="corners-bottom"><span></span></span>
+ </div>
<!-- END auth -->
- </td>
- </tr>
- </tbody>
- </table>
+ </div>
</fieldset>
@@ -190,11 +161,11 @@
<td style="width: 80px; text-align: right; vertical-align: top; white-space: nowrap;">
<!-- IF roles.S_FIRST_ROW && not roles.S_LAST_ROW -->
{ICON_MOVE_UP_DISABLED}
- <a href="{roles.U_MOVE_DOWN}">{ICON_MOVE_DOWN}</a>
+ <a href="{roles.U_MOVE_DOWN}">{ICON_MOVE_DOWN}</a>
<!-- ELSEIF not roles.S_FIRST_ROW && not roles.S_LAST_ROW-->
<a href="{roles.U_MOVE_UP}">{ICON_MOVE_UP}</a>
<a href="{roles.U_MOVE_DOWN}">{ICON_MOVE_DOWN}</a>
- <!-- ELSEIF roles.S_LAST_ROW && not roles.S_FIRST_ROW -->
+ <!-- ELSEIF roles.S_LAST_ROW && not roles.S_FIRST_ROW -->
<a href="{roles.U_MOVE_UP}">{ICON_MOVE_UP}</a>
{ICON_MOVE_DOWN_DISABLED}
<!-- ELSE -->
@@ -216,7 +187,7 @@
</form>
<!-- IF S_DISPLAY_ROLE_MASK -->
-
+
<a name="assigned_to"></a>
<h1>{L_ROLE_ASSIGNED_TO}</h1>
@@ -225,8 +196,6 @@
<!-- ENDIF -->
-
<!-- ENDIF -->
-
-<!-- INCLUDE overall_footer.html -->
+<!-- INCLUDE overall_footer.html --> \ No newline at end of file
diff --git a/phpBB/adm/style/acp_permissions.html b/phpBB/adm/style/acp_permissions.html
index 9b301f8f5c..f5a5f78c6b 100644
--- a/phpBB/adm/style/acp_permissions.html
+++ b/phpBB/adm/style/acp_permissions.html
@@ -337,14 +337,9 @@
<br /><br />
- <fieldset class="quick" style="float: left; text-align: left;">
- {L_PERMISSION_APPLIED_TO_ALL}<br />
- <a href="#" onclick="marklist('set_permissions', 'inherit', true); return false;">{L_MARK_ALL}</a> &bull; <a href="#" onclick="marklist('set_permissions', 'inherit', false); return false;">{L_UNMARK_ALL}</a>
- </fieldset>
-
<fieldset class="quick" style="float: right;">
<input class="button1" type="submit" name="action[apply_all_permissions]" value="{L_APPLY_ALL_PERMISSIONS}" />
- <input class="button2" type="reset" name="cancel" value="{L_RESET}" />
+ <input class="button2" type="button" name="cancel" value="{L_RESET}" onclick="document.forms['set_permissions'].reset(); init_colours(active_pmask + active_fmask);" />
</fieldset>
<br /><br />
diff --git a/phpBB/adm/style/admin.css b/phpBB/adm/style/admin.css
index ee0977e51b..678265ec8b 100644
--- a/phpBB/adm/style/admin.css
+++ b/phpBB/adm/style/admin.css
@@ -183,7 +183,7 @@ a:hover {
}
/* Commented Backslash Hack hides rule from IE5-Mac \*/
-#tabs a span { float:none; }
+#tabs a span { float:none;}
/* End hack */
#tabs a:hover span {
@@ -329,12 +329,12 @@ td {
line-height: 1.2em;
}
-.row1 { background-color: #EFEFEF; }
-.row2 { background-color: #DEE3E7; }
-.row3 { background-color: #D1D7DC; }
-.row4 { background-color: #E4E8EB; }
-.col1 { background-color: #DEE3E7; }
-.col2 { background-color: #EFEFEF; }
+.row1 { background-color: #EFEFEF;}
+.row2 { background-color: #DEE3E7;}
+.row3 { background-color: #D1D7DC;}
+.row4 { background-color: #E4E8EB;}
+.col1 { background-color: #DEE3E7;}
+.col2 { background-color: #EFEFEF;}
.spacer {
background-color: #D1D7DC;
@@ -364,42 +364,31 @@ table.type2 td {
/* General form styles
----------------------------------------*/
-fieldset {
+fieldset {
+ background-color: #DDD;
+ padding: 10px;
margin: 15px 0;
- padding: 10px;
border-right: 1px solid #AFAEAA;
border-bottom: 1px solid #AFAEAA;
border-left: 1px solid #D5D5C8;
border-top: 1px solid #D5D5C8;
- background-color: #ECECEC;
+ background-color: #ECECEC;
position: relative;
}
-
-* html fieldset {
- padding: 0 10px 5px 10px;
-}
-
-fieldset p {
- font-size: 1.1em;
-}
-
legend {
- padding: 1px 0;
- font-family: "Lucida Grande", Arial, Verdana,Sans-serif;
+ position: absolute;
+ top: -0.5em;
font-size: 1.1em;
+ color:#006699;
+ font-family: "Lucida Grande",Arial,Verdana,Sans-serif;
font-weight: bold;
- color: #006699;
- position: relative;
- text-transform: uppercase;
line-height: 100%;
- top: 0em;
- vertical-align:middle;
+ text-transform: uppercase;
+
}
-* html legend {
- margin-bottom: -10px;
- margin-left: -7px;
- top: -1.2em;
+fieldset p {
+ font-size: 1.1em;
}
input {
@@ -440,7 +429,7 @@ option {
.sep {
color: black;
- background-color: #FFA34F;
+ font-weight: bold;
}
textarea {
@@ -543,11 +532,11 @@ dt {
width: auto;
}
-dd { color: #000; }
-dd + dd { padding-top: 5px; }
-dt span { padding-right: 5px; }
+dd { color: #000;}
+dd + dd { padding-top: 5px;}
+dt span { padding-right: 5px;}
-dt .explain { font-style: italic; }
+dt .explain { font-style: italic;}
dt label {
font-size: 100%;
@@ -560,7 +549,7 @@ dd label {
margin-right: 10px;
}
-html>body dd label input { vertical-align: text-bottom; } /* Tweak for Moz to align checkboxes/radio buttons nicely */
+html>body dd label input { vertical-align: text-bottom;} /* Tweak for Moz to align checkboxes/radio buttons nicely */
dd input,
dd select {
@@ -687,12 +676,12 @@ textarea.full {
width: 99%;
}
-* html input.full, * html textarea.full { width: 95%; }
-input.medium { width: 50%; }
-input.narrow { width: 25%; }
-input.tiny { width: 10%; }
-input.autowidth { width: auto !important; }
-.box2 .inputbox { background-color: #E9E9E9; }
+* html input.full, * html textarea.full { width: 95%;}
+input.medium { width: 50%;}
+input.narrow { width: 25%;}
+input.tiny { width: 10%;}
+input.autowidth { width: auto !important;}
+.box2 .inputbox { background-color: #E9E9E9;}
/* Pagination
@@ -771,169 +760,6 @@ a.button2, a.button2:link, a.button2:visited, a.button2:active {
padding: 4px 8px;
}
-/* Permission related
----------------------------------------- */
-
-.permissions {
- margin: 15px 0 0 0;
- padding: 0;
- border: none;
- background-color: transparent;
-}
-
-.permissions table {
- width: 100%;
- /*empty-cells: hide;*/
- border: 1px solid #CCCFD3;
- background-color: #FFFFFF;
- padding: 1px;
-}
-
-.permissions th {
- padding: 3px 4px;
- color: #FFFFFF;
- background: #DDE1E4 url("../images/gradient2b.gif") bottom left repeat-x;
- border-top: 1px solid #6DACD2;
- border-bottom: 1px solid #327AA5;
- text-align: left;
- font-size: .85em;
- text-transform: uppercase;
-}
-
-.permissions td {
- text-align: left;
- font-size: 1.1em;
- padding: 4px;
- line-height: 120%;
-}
-
-table.pmask {
- border: none;
- background: none;
- padding: 0;
-}
-
-table.pmask th {
- background: none;
- border-top: none;
- text-align: center;
- vertical-align: bottom;
- color: #115098;
- padding: 2px 0;
-}
-
-table.pmask td {
- padding: 0px;
-}
-
-table.pmask td.name {
- padding: 2px;
- vertical-align: middle;
-}
-
-.permissions th.name {
- text-align: left;
- width: auto;
- padding-left: 4px;
-}
-
-.permissions .entry {
- text-align: left;
- font-weight: normal;
-}
-
-.permissions td.name {
- text-align: left;
- font-weight: bold;
-}
-
-.permissions table.type3 {
- float: right;
- width: 350px; /* Setting the length of the permission view box */
- border: none;
- background-color: transparent;
- padding: 0;
-}
-
-.permissions table.type3 thead th {
- background-color: transparent;
- border-top: none;
- text-align: center;
- color: #115098;
- padding: 0 3px;
- font-size: .9em;
- font-weight: normal;
- text-transform: none;
-}
-
-.permissions table.type3 tbody th {
- border-top: none;
- text-align: left;
- text-transform: none;
- padding: 0;
- border: none;
- font-size: 1em;
- font-weight: normal;
- width: 100%;
- vertical-align: middle;
-}
-
-.permissions table.type3 td {
- text-align: center;
- padding: 1px;
-}
-
-.permissions td.yes {
- width: 20px;
- background-color: #40C53D;
-}
-
-.permissions td.never {
- width: 20px;
- background-color: #EC7181;
-}
-
-.permissions td.no {
- width: 20px;
- background-color: transparent;
-}
-
-/* Preset Styles
----------------------------------------- */
-.preset {
- width: 60px;
-}
-
-.preset a {
- float: left;
- display: block;
- width: 100%;
- height: 20px;
- cursor: pointer;
- background: transparent;
-}
-
-.preset a:hover {
- background: url("../images/arrow_down.gif") no-repeat 50% 50%;
- text-decoration: none;
-}
-
-.preset_yes {
- background: #D3F3D2 url("../images/bg_hash1.gif") repeat;
-}
-
-.preset_custom {
- background: #DAE4EC url("../images/bg_hash2.gif") repeat;
-}
-
-.preset_never {
- background: #ECD7DA url("../images/bg_hash3.gif") repeat;
-}
-
-.preset_no {
- background: #ECD7DA url("../images/bg_hash4.gif") repeat;
-}
-
/* Action Highlighting
---------------------------------------- */
.success {
@@ -1086,3 +912,264 @@ table.pmask td.name {
.syntaxstring {
color: #DD0000;
}
+
+/* Permission interface
+---------------------------------------- */
+
+fieldset.perm legend {
+ text-transform: none;
+}
+
+/* Permission sections */
+fieldset.perm .perm_simple {
+ text-align: left;
+ padding-top: 3px;
+}
+
+fieldset.perm .perm_advanced {
+ padding-left: 5px;
+ vertical-align: top;
+ clear: right;
+ padding-top: 10px;
+}
+
+fieldset.perm .perm_switch {
+ float: right;
+ font-size: 1.1em;
+}
+
+.perm_switch a {
+ text-decoration: underline;
+}
+
+/* Tabbed menu */
+.perm_cat {
+ line-height: normal;
+ margin: 0 0 0px 7px;
+ min-width: 570px;
+ font-size: 1em;
+}
+
+.perm_cat ul {
+ margin:0;
+ padding: 0;
+ list-style: none;
+}
+
+.perm_cat li {
+ display: inline;
+ margin: 0;
+ padding: 0;
+ font-size: 1em;
+ font-weight: bold;
+}
+
+.perm_cat a {
+ float: left;
+ background: url("../images/bg_tabs1.gif") no-repeat 0% -35px;
+ margin: 0 1px 0 0;
+ padding: 0 0 0 6px;
+ text-decoration: none;
+ position: relative;
+}
+
+.perm_cat a span.tabbg {
+ float: left;
+ display: block;
+ background: url("../images/bg_tabs2.gif") no-repeat 100% -35px;
+ padding: 7px 12px 6px 6px;
+ color: #536482;
+ white-space: nowrap;
+}
+
+/* Commented Backslash Hack hides rule from IE5-Mac \*/
+.perm_cat a span.tabbg { float:none;}
+/* End hack */
+
+.perm_cat a:hover span.tabbg {
+ color: #DD6900;
+}
+
+.perm_cat .activetab a {
+ background-position: 0 0px;
+}
+
+.perm_cat .activetab a span.tabbg {
+ background-position: 100% 0px;
+ padding-bottom: 7px;
+ color: #333333;
+}
+
+.perm_cat a:hover {
+ background-position: 0 -70px;
+}
+
+.perm_cat a:hover span.tabbg {
+ background-position: 100% -70px;
+}
+
+.perm_cat .activetab a:hover span.tabbg {
+ color: #333333;
+ background-position: 100% 0px;
+}
+
+.perm_cat .activetab a:hover {
+ background-position: 0 0px;
+}
+
+.perm_cat a span.colour {
+ border: 1px solid #536482;
+ display: block;
+ float: left;
+ width: 10px;
+ height: 10px;
+ margin-right: 5px;
+}
+
+.perm_cat .activetab span.colour {
+ border-color: #333333;
+}
+
+.perm_cat a:hover span.colour {
+ border-color: #DD6900;
+}
+
+.perm_cat .activetab a:hover span.colour {
+ border-color: #333333;
+}
+
+/* Permission preset colours */
+.perm_preset_yes span.colour,
+.yes {
+ background-color: #86F786;
+}
+
+.perm_preset_custom span.colour {
+ background-color: #B2BBDD;
+}
+
+.perm_preset_never span.colour {
+ background-color: #DD0000;
+}
+
+.perm_preset_no span.colour,
+.never {
+ background-color: #EFB0B2;
+}
+
+/* Pemrission panel
+---------------------------------------- */
+.perm_panel {
+ float: left;
+ background-color: #FFF;
+ width: 100%;
+ border: 1px solid #A9B8C2;
+ margin-top: -1px;
+}
+
+.perm_panel span.corners-top {
+ background-image: url("../images/corners_left2.gif");
+}
+
+.perm_panel span.corners-top span {
+ background-image: url("../images/corners_right2.gif");
+}
+
+.perm_panel span.corners-bottom {
+ background-image: url("../images/corners_left2.gif");
+}
+
+.perm_panel span.corners-bottom span {
+ background-image: url("../images/corners_right2.gif");
+}
+
+.perm_panel span.corners-top, .perm_panel span.corners-bottom,
+.perm_panel span.corners-top span, .perm_panel span.corners-bottom span {
+ font-size: 1px;
+ line-height: 1px;
+ display: block;
+ height: 5px;
+ background-repeat: no-repeat;
+}
+
+.perm_panel span.corners-top {
+ background-image: url("../images/corners_left2.gif");
+ background-position: 0 0;
+ margin: 0 0;
+}
+
+.perm_panel span.corners-top span {
+ background-image: url("../images/corners_right2.gif");
+ background-position: 100% 0;
+}
+
+.perm_panel span.corners-bottom {
+ background-image: url("../images/corners_left2.gif");
+ background-position: 0 100%;
+ margin: 0 0;
+ clear: both;
+}
+
+.perm_panel span.corners-bottom span {
+ background-image: url("../images/corners_right2.gif");
+ background-position: 100% 100%;
+}
+
+/* Permission table
+---------------------------------------- */
+.perm_panel .tablewrap {
+ margin: 0 10px;
+}
+
+.perm_panel table {
+ width: 100%;
+}
+
+.perm_panel th {
+ text-transform: none;
+}
+
+.perm_panel th.value {
+ text-align: center;
+}
+
+.perm_panel th.name {
+ text-align: left;
+ width: auto;
+ text-transform: none;
+}
+
+.perm_panel th.permission_name {
+ border: none;
+ color: #536482;
+ font-weight: normal;
+}
+
+.perm_panel th.permission_name a.trace {
+ display: inline;
+}
+
+.perm_panel th.row3 {
+ background-image: none;
+ background-color: #D1D7DC;
+}
+
+.perm_panel th.row4 {
+ background-image: none;
+ background-color: #E4E8EB;
+}
+
+.perm_panel th a {
+ display: block;
+ color: #FFA34F;
+ text-decoration: underline;
+}
+
+.perm_panel td {
+ padding: 0;
+ text-align: center;
+}
+
+.perm_panel td label {
+ display: block;
+}
diff --git a/phpBB/adm/style/permission_mask.html b/phpBB/adm/style/permission_mask.html
index 51b5bf9c63..86dbc0a5ee 100644
--- a/phpBB/adm/style/permission_mask.html
+++ b/phpBB/adm/style/permission_mask.html
@@ -5,251 +5,110 @@
var active_fmask = '0';
var active_cat = '0';
+ var id = '000';
+
var role_options = new Array();
<!-- IF S_ROLE_JS_ARRAY -->
{S_ROLE_JS_ARRAY}
<!-- ENDIF -->
-
- /**
- * Show/hide option panels
- * value = suffix for ID to show
- */
- function swap_options(pmask, fmask, cat)
- {
- id = pmask + fmask + cat;
- active_option = active_pmask + active_fmask + active_cat;
-
- if (id == active_option)
- {
- return;
- }
-
- // Hide active options
- dE('options' + active_option, -1);
- dE('head' + active_pmask + active_fmask, 1, 'inline');
- dE('apply' + active_pmask + active_fmask, -1);
-
- // Display container
- dE('options' + id, 1);
- dE('head' + pmask + fmask, -1, 'inline');
- dE('apply' + pmask + fmask, 1);
-
- active_pmask = pmask;
- active_fmask = fmask;
- active_cat = cat;
- }
-
- /**
- * Mark all radio buttons in one panel
- * id = table ID container, s = status ['y'/'u'/'n']
- */
- function mark_options(id, s)
- {
- var t = document.getElementById(id);
-
- if (!t)
- {
- return;
- }
-
- var rb = t.getElementsByTagName('input');
-
- for (var r = 0; r < rb.length; r++ )
- {
- if (rb[r].id.substr(rb[r].id.length-1) == s)
- {
- rb[r].checked = true;
- }
- }
- }
-
- /**
- * Mark one radio button in one panel
- * id = table ID container, field_name = the auth option, s = status ['y'/'u'/'n']
- */
- function mark_one_option(id, field_name, s)
- {
- var t = document.getElementById(id);
-
- if (!t)
- {
- return;
- }
-
- var rb = t.getElementsByTagName('input');
-
- for (var r = 0; r < rb.length; r++ )
- {
- if (rb[r].id.substr(rb[r].id.length-field_name.length-3, field_name.length) == field_name && rb[r].id.substr(rb[r].id.length-1) == s)
- {
- rb[r].checked = true;
- }
- }
- }
-
- /**
- * Reset role dropdown field to Select role... if an option gets changed
- */
- function reset_role(id)
- {
- var t = document.getElementById(id);
-
- if (!t)
- {
- return;
- }
-
- t.options[0].selected = true;
- }
-
- /**
- * Load role and set options accordingly
- */
- function set_role_settings(role_id, target_id)
- {
- settings = role_options[role_id];
-
- if (!settings)
- {
- return;
- }
-
- // Mark all options to no (unset) first...
- mark_options(target_id, 'u');
-
- for (var r in settings)
- {
- mark_one_option(target_id, r, (settings[r] == 1) ? 'y' : 'n');
- }
- }
-
//-->
</script>
+<script language="javascript" type="text/javascript" src="style/permissions.js"></script>
<!-- BEGIN p_mask -->
<div class="clearfix"></div>
-
-<fieldset class="permissions">
- <!-- IF p_mask.USER_GROUPS_DEFAULT or p_mask.USER_GROUPS_CUSTOM -->
- <br />
- <p>
- <!-- IF p_mask.USER_GROUPS_DEFAULT --><b>{p_mask.NAME}</b> {L_USER_IS_MEMBER_OF_DEFAULT}: <b>{p_mask.USER_GROUPS_DEFAULT}</b><br /><!-- ENDIF -->
- <!-- IF p_mask.USER_GROUPS_CUSTOM --><b>{p_mask.NAME}</b> {L_USER_IS_MEMBER_OF_CUSTOM}: <b>{p_mask.USER_GROUPS_CUSTOM}</b><!-- ENDIF -->
- </p>
+<h3>{p_mask.NAME}<!-- IF p_mask.S_LOCAL --> <span class="small"> [{p_mask.L_ACL_TYPE}]</span><!-- ENDIF --></h3>
+
+<!-- BEGIN f_mask -->
+<fieldset class="perm">
+ <legend>{p_mask.f_mask.NAME}</legend>
+
+ <!-- IF not p_mask.S_VIEW -->
+ <div class="perm_switch">
+ <a href="#" onclick="swap_options('{p_mask.S_ROW_COUNT}', '{p_mask.f_mask.S_ROW_COUNT}', '0', true); return false;">{L_ADVANCED_PERMISSIONS}</a>
+ </div>
+ <dl class="perm_simple">
+ <dt style="width: 20%"><label for="role{p_mask.S_ROW_COUNT}{p_mask.f_mask.S_ROW_COUNT}">{L_ROLE}:</label></dt>
+ <!-- IF p_mask.f_mask.S_ROLE_OPTIONS -->
+ <dd style="margin-left: 20%"><select id="role{p_mask.S_ROW_COUNT}{p_mask.f_mask.S_ROW_COUNT}" name="role[{p_mask.f_mask.UG_ID}][{p_mask.f_mask.FORUM_ID}]" onchange="set_role_settings(this.options[selectedIndex].value, 'advanced{p_mask.S_ROW_COUNT}{p_mask.f_mask.S_ROW_COUNT}'); init_colours('{p_mask.S_ROW_COUNT}{p_mask.f_mask.S_ROW_COUNT}')">{p_mask.f_mask.S_ROLE_OPTIONS}</select></dd>
+ <!-- ELSE -->
+ <dd>{L_NO_ROLE_AVAILABLE}</dd>
+ <!-- ENDIF -->
+ </dl>
<!-- ENDIF -->
- <table cellspacing="1" class="pmask">
- <thead>
- <tr>
- <th style="text-align: left; width: 70%">{p_mask.NAME}<!-- IF p_mask.S_LOCAL --><span class="small" style="text-transform: none;"> [{p_mask.L_ACL_TYPE}]</span><!-- ENDIF --></th>
- <th>{p_mask.CATEGORIES}</th>
- </tr>
- </thead>
- <tbody>
+ <!-- BEGIN category -->
+ <!-- IF p_mask.f_mask.category.S_FIRST_ROW -->
+ <div class="perm_advanced" id="advanced{p_mask.S_ROW_COUNT}{p_mask.f_mask.S_ROW_COUNT}"<!-- IF not p_mask.S_VIEW --> style="display: none;"<!-- ENDIF -->>
+
+ <div class="perm_cat">
+ <ul>
+ <!-- ENDIF -->
+
+ <!-- IF p_mask.f_mask.category.S_YES -->
+ <li class="perm_preset_yes<!-- IF p_mask.S_FIRST_ROW and p_mask.f_mask.S_FIRST_ROW and p_mask.f_mask.category.S_FIRST_ROW --> activetab<!-- ENDIF -->" id="tab{p_mask.S_ROW_COUNT}{p_mask.f_mask.S_ROW_COUNT}{p_mask.f_mask.category.S_ROW_COUNT}">
+ <!-- ELSEIF p_mask.f_mask.category.S_NEVER -->
+ <li class="perm_preset_never<!-- IF p_mask.S_FIRST_ROW and p_mask.f_mask.S_FIRST_ROW and p_mask.f_mask.category.S_FIRST_ROW --> activetab<!-- ENDIF -->" id="tab{p_mask.S_ROW_COUNT}{p_mask.f_mask.S_ROW_COUNT}{p_mask.f_mask.category.S_ROW_COUNT}">
+ <!-- ELSEIF p_mask.f_mask.category.S_NO -->
+ <li class="perm_preset_no<!-- IF p_mask.S_FIRST_ROW and p_mask.f_mask.S_FIRST_ROW and p_mask.f_mask.category.S_FIRST_ROW --> activetab<!-- ENDIF -->" id="tab{p_mask.S_ROW_COUNT}{p_mask.f_mask.S_ROW_COUNT}{p_mask.f_mask.category.S_ROW_COUNT}">
+ <!-- ELSE -->
+ <li class="perm_preset_custom<!-- IF p_mask.S_FIRST_ROW and p_mask.f_mask.S_FIRST_ROW and p_mask.f_mask.category.S_FIRST_ROW --> activetab<!-- ENDIF -->" id="tab{p_mask.S_ROW_COUNT}{p_mask.f_mask.S_ROW_COUNT}{p_mask.f_mask.category.S_ROW_COUNT}">
+ <!-- ENDIF -->
+ <a href="#" onclick="swap_options('{p_mask.S_ROW_COUNT}', '{p_mask.f_mask.S_ROW_COUNT}', '{p_mask.f_mask.category.S_ROW_COUNT}', false<!-- IF p_mask.S_VIEW -->, true<!-- ENDIF -->); return false;"><span class="tabbg"><span class="colour"></span>{category.CAT_NAME}</span></a></li>
+ <!-- END category -->
+ </ul>
+ </div>
- <!-- BEGIN f_mask -->
- <!-- IF p_mask.f_mask.S_ROW_COUNT is even --><tr class="row1"><!-- ELSE --><tr class="row2"><!-- ENDIF -->
- <td class="name">
- <table cellspacing="0" cellpadding="0" class="type2" style="background-color: transparent; border: 0;">
- <tbody>
- <tr>
- <td width="16">
- <span id="head{p_mask.S_ROW_COUNT}{p_mask.f_mask.S_ROW_COUNT}"<!-- IF p_mask.S_FIRST_ROW and p_mask.f_mask.S_FIRST_ROW --> style="display: none;"<!-- ENDIF -->>
- <!-- IF not p_mask.S_VIEW --><input type="checkbox" class="radio" name="inherit[{p_mask.f_mask.UG_ID}][{p_mask.f_mask.FORUM_ID}]" value="1" /><!-- ELSE -->&nbsp;<!-- ENDIF -->
- </span>
- </td>
- <td><span>{p_mask.f_mask.PADDING}<!-- IF p_mask.f_mask.FOLDER_IMAGE --> {p_mask.f_mask.FOLDER_IMAGE} <!-- ENDIF --><a href="#" onclick="swap_options('{p_mask.S_ROW_COUNT}', '{p_mask.f_mask.S_ROW_COUNT}', '0'); return false;">{p_mask.f_mask.NAME}</a></span></td>
- <td style="text-align: right;">
- <!-- IF p_mask.S_VIEW -->
- &nbsp;
- <!-- ELSE -->
- <!-- IF p_mask.f_mask.S_ROLE_OPTIONS -->
- <b>{L_ROLE}:</b>&nbsp; &nbsp;<select id="role{p_mask.S_ROW_COUNT}{p_mask.f_mask.S_ROW_COUNT}" name="role[{p_mask.f_mask.UG_ID}][{p_mask.f_mask.FORUM_ID}]" onchange="set_role_settings(this.options[selectedIndex].value, 'a_options{p_mask.S_ROW_COUNT}{p_mask.f_mask.S_ROW_COUNT}')">{p_mask.f_mask.S_ROLE_OPTIONS}</select>
- <!-- ELSE -->
- <b>{L_ROLE}:</b> {L_NO_ROLE_AVAILABLE}
+ <!-- BEGIN category -->
+ <div class="perm_panel" id="options{p_mask.S_ROW_COUNT}{p_mask.f_mask.S_ROW_COUNT}{p_mask.f_mask.category.S_ROW_COUNT}" <!-- IF p_mask.S_FIRST_ROW and p_mask.f_mask.S_FIRST_ROW and p_mask.f_mask.category.S_FIRST_ROW --><!-- ELSE --> style="display: none;"<!-- ENDIF -->>
+ <span class="corners-top"><span></span></span>
+ <div class="tablewrap">
+ <table cellspacing="1">
+ <colgroup>
+ <col class="permissions_name" />
+ <col class="permissions_yes" />
+ <col class="permissions_no" />
+ <!-- IF not p_mask.S_VIEW -->
+ <col class="permissions_never" />
<!-- ENDIF -->
- <!-- ENDIF -->
- </td>
- </tr>
- </tbody>
- </table>
- </td>
- <!-- BEGIN category -->
- <!-- IF p_mask.f_mask.category.S_YES -->
- <td class="preset preset_yes">
- <!-- ELSEIF p_mask.f_mask.category.S_NEVER -->
- <td class="preset preset_never">
- <!-- ELSEIF p_mask.f_mask.category.S_NO -->
- <td class="preset preset_no">
- <!-- ELSE -->
- <td class="preset preset_custom">
- <!-- ENDIF -->
- <a href="#" onclick="swap_options('{p_mask.S_ROW_COUNT}', '{p_mask.f_mask.S_ROW_COUNT}', '{p_mask.f_mask.category.S_ROW_COUNT}'); return false;">&nbsp;</a></td>
- <!-- END category -->
- </tr>
- <tr class="row3">
- <td style="vertical-align: top;">
- <div id="apply{p_mask.S_ROW_COUNT}{p_mask.f_mask.S_ROW_COUNT}" style="text-align: left; width: 98%; margin: 5px;<!-- IF p_mask.S_FIRST_ROW and p_mask.f_mask.S_FIRST_ROW --><!-- ELSE --> display: none;<!-- ENDIF -->">
- <!-- IF not p_mask.S_VIEW -->
- <div style="float: left; width: 60%;">
- <p class="small">{L_APPLY_PERMISSIONS_EXPLAIN}</p>
- <input class="button1" type="submit" name="psubmit[{p_mask.f_mask.UG_ID}][{p_mask.f_mask.FORUM_ID}]" value="{L_APPLY_PERMISSIONS}" />
- </div>
- <div style="float: right; text-align: right; width: 35%;">
- <p class="small">
- [<a href="#" onclick="mark_options('a_options{p_mask.S_ROW_COUNT}{p_mask.f_mask.S_ROW_COUNT}', 'y'); reset_role('role{p_mask.S_ROW_COUNT}{p_mask.f_mask.S_ROW_COUNT}'); return false;">{L_ALL_YES}</a>]<br />
- [<a href="#" onclick="mark_options('a_options{p_mask.S_ROW_COUNT}{p_mask.f_mask.S_ROW_COUNT}', 'n'); reset_role('role{p_mask.S_ROW_COUNT}{p_mask.f_mask.S_ROW_COUNT}'); return false;">{L_ALL_NEVER}</a>]<br />
- [<a href="#" onclick="mark_options('a_options{p_mask.S_ROW_COUNT}{p_mask.f_mask.S_ROW_COUNT}', 'u'); reset_role('role{p_mask.S_ROW_COUNT}{p_mask.f_mask.S_ROW_COUNT}'); return false;">{L_ALL_NO}</a>]
- </p>
- </div>
- <!-- ELSE -->
- &nbsp;
- <!-- ENDIF -->
- </div>
- </td>
- <td colspan="{p_mask.S_NUM_CATS}" id="a_options{p_mask.S_ROW_COUNT}{p_mask.f_mask.S_ROW_COUNT}" style="vertical-align: top; text-align: left;">
- <div style="width: 350px; height: 0; line-height: 0;">&nbsp;</div>
- <!-- BEGIN category -->
- <table cellspacing="1" id="options{p_mask.S_ROW_COUNT}{p_mask.f_mask.S_ROW_COUNT}{p_mask.f_mask.category.S_ROW_COUNT}" class="type3"<!-- IF p_mask.S_FIRST_ROW and p_mask.f_mask.S_FIRST_ROW and p_mask.f_mask.category.S_FIRST_ROW --><!-- ELSE --> style="display: none;"<!-- ENDIF -->>
+ </colgroup>
<thead>
<tr>
- <th scope="col" style="text-align: left; padding-left: 0;"><strong>{L_ACL_SETTING} [{p_mask.f_mask.category.CAT_NAME}]</strong></th>
+ <th class="name" scope="col"><strong>{L_ACL_SETTING}</strong></th>
<!-- IF p_mask.S_VIEW -->
- <th scope="col">{L_ACL_YES}</th>
- <th scope="col">{L_ACL_NEVER}</th>
+ <th style="width: 40px;" class="value" scope="col">{L_ACL_YES}</th>
+ <th style="width: 40px;" class="value" scope="col">{L_ACL_NEVER}</th>
<!-- ELSE -->
- <th scope="col"><a href="#" onclick="mark_options('options{p_mask.S_ROW_COUNT}{p_mask.f_mask.S_ROW_COUNT}{p_mask.f_mask.category.S_ROW_COUNT}', 'y'); reset_role('role{p_mask.S_ROW_COUNT}{p_mask.f_mask.S_ROW_COUNT}'); return false;">{L_ACL_YES}</a></th>
- <th scope="col"><a href="#" onclick="mark_options('options{p_mask.S_ROW_COUNT}{p_mask.f_mask.S_ROW_COUNT}{p_mask.f_mask.category.S_ROW_COUNT}', 'u'); reset_role('role{p_mask.S_ROW_COUNT}{p_mask.f_mask.S_ROW_COUNT}'); return false;">{L_ACL_NO}</a></th>
- <th scope="col"><a href="#" onclick="mark_options('options{p_mask.S_ROW_COUNT}{p_mask.f_mask.S_ROW_COUNT}{p_mask.f_mask.category.S_ROW_COUNT}', 'n'); reset_role('role{p_mask.S_ROW_COUNT}{p_mask.f_mask.S_ROW_COUNT}'); return false;">{L_ACL_NEVER}</a></th>
+ <th class="value" scope="col"><a href="#" onclick="mark_options('options{p_mask.S_ROW_COUNT}{p_mask.f_mask.S_ROW_COUNT}{p_mask.f_mask.category.S_ROW_COUNT}', 'y'); reset_role('role{p_mask.S_ROW_COUNT}{p_mask.f_mask.S_ROW_COUNT}'); set_colours('{p_mask.S_ROW_COUNT}{p_mask.f_mask.S_ROW_COUNT}{p_mask.f_mask.category.S_ROW_COUNT}', false, 'yes'); return false;">{L_ACL_YES}</a></th>
+ <th class="value" scope="col"><a href="#" onclick="mark_options('options{p_mask.S_ROW_COUNT}{p_mask.f_mask.S_ROW_COUNT}{p_mask.f_mask.category.S_ROW_COUNT}', 'u'); reset_role('role{p_mask.S_ROW_COUNT}{p_mask.f_mask.S_ROW_COUNT}'); set_colours('{p_mask.S_ROW_COUNT}{p_mask.f_mask.S_ROW_COUNT}{p_mask.f_mask.category.S_ROW_COUNT}', false, 'no'); return false;">{L_ACL_NO}</a></th>
+ <th class="value" scope="col"><a href="#" onclick="mark_options('options{p_mask.S_ROW_COUNT}{p_mask.f_mask.S_ROW_COUNT}{p_mask.f_mask.category.S_ROW_COUNT}', 'n'); reset_role('role{p_mask.S_ROW_COUNT}{p_mask.f_mask.S_ROW_COUNT}'); set_colours('{p_mask.S_ROW_COUNT}{p_mask.f_mask.S_ROW_COUNT}{p_mask.f_mask.category.S_ROW_COUNT}', false, 'never'); return false;">{L_ACL_NEVER}</a></th>
<!-- ENDIF -->
</tr>
</thead>
<tbody>
<!-- BEGIN mask -->
<!-- IF p_mask.f_mask.category.mask.S_ROW_COUNT is even --><tr class="row4"><!-- ELSE --><tr class="row3"><!-- ENDIF -->
- <th><!-- IF p_mask.f_mask.category.mask.U_TRACE --><a href="#" onclick="trace('{p_mask.f_mask.category.mask.U_TRACE}'); return false;" title="{L_TRACE_SETTING}"><img src="images/icon_trace.gif" alt="{L_TRACE_SETTING}" /></a> <!-- ENDIF -->{p_mask.f_mask.category.mask.PERMISSION}</th>
+ <th class="permission_name<!-- IF p_mask.f_mask.category.mask.S_ROW_COUNT is even --> row4<!-- ELSE --> row3<!-- ENDIF -->"><!-- IF p_mask.f_mask.category.mask.U_TRACE --><a href="#" class="trace" onclick="trace('{p_mask.f_mask.category.mask.U_TRACE}'); return false;" title="{L_TRACE_SETTING}"><img src="images/icon_trace.gif" alt="{L_TRACE_SETTING}" /></a> <!-- ENDIF -->{p_mask.f_mask.category.mask.PERMISSION}</th>
<!-- IF p_mask.S_VIEW -->
- <td<!-- IF p_mask.f_mask.category.mask.S_YES --> class="yes"<!-- ELSE --> class="no"<!-- ENDIF -->>&nbsp;</td>
- <td<!-- IF p_mask.f_mask.category.mask.S_NEVER --> class="never"<!-- ELSE --> class="no"<!-- ENDIF -->>&nbsp;</td>
+ <td<!-- IF p_mask.f_mask.category.mask.S_YES --> class="yes"<!-- ENDIF -->>&nbsp;</td>
+ <td<!-- IF p_mask.f_mask.category.mask.S_NEVER --> class="never"<!-- ENDIF -->></td>
<!-- ELSE -->
- <td class="no"><input onchange="reset_role('role{p_mask.S_ROW_COUNT}{p_mask.f_mask.S_ROW_COUNT}')" id="{p_mask.f_mask.category.mask.S_FIELD_NAME}_y" name="{p_mask.f_mask.category.mask.S_FIELD_NAME}" class="radio" type="radio"<!-- IF p_mask.f_mask.category.mask.S_YES --> checked="checked"<!-- ENDIF --> value="1" /></td>
- <td class="no"><input onchange="reset_role('role{p_mask.S_ROW_COUNT}{p_mask.f_mask.S_ROW_COUNT}')" id="{p_mask.f_mask.category.mask.S_FIELD_NAME}_u" name="{p_mask.f_mask.category.mask.S_FIELD_NAME}" class="radio" type="radio"<!-- IF p_mask.f_mask.category.mask.S_NO --> checked="checked"<!-- ENDIF --> value="-1" /></td>
- <td class="no"><input onchange="reset_role('role{p_mask.S_ROW_COUNT}{p_mask.f_mask.S_ROW_COUNT}')" id="{p_mask.f_mask.category.mask.S_FIELD_NAME}_n" name="{p_mask.f_mask.category.mask.S_FIELD_NAME}" class="radio" type="radio"<!-- IF p_mask.f_mask.category.mask.S_NEVER --> checked="checked"<!-- ENDIF --> value="0" /></td>
+ <td><label for="{p_mask.f_mask.category.mask.S_FIELD_NAME}_y"><input onchange="reset_role('role{p_mask.S_ROW_COUNT}{p_mask.f_mask.S_ROW_COUNT}'); set_colours('{p_mask.S_ROW_COUNT}{p_mask.f_mask.S_ROW_COUNT}{p_mask.f_mask.category.S_ROW_COUNT}', false)" id="{p_mask.f_mask.category.mask.S_FIELD_NAME}_y" name="{p_mask.f_mask.category.mask.S_FIELD_NAME}" class="radio" type="radio"<!-- IF p_mask.f_mask.category.mask.S_YES --> checked="checked"<!-- ENDIF --> value="1" /></label></td>
+ <td><label for="{p_mask.f_mask.category.mask.S_FIELD_NAME}_u"><input onchange="reset_role('role{p_mask.S_ROW_COUNT}{p_mask.f_mask.S_ROW_COUNT}'); set_colours('{p_mask.S_ROW_COUNT}{p_mask.f_mask.S_ROW_COUNT}{p_mask.f_mask.category.S_ROW_COUNT}', false)" id="{p_mask.f_mask.category.mask.S_FIELD_NAME}_u" name="{p_mask.f_mask.category.mask.S_FIELD_NAME}" class="radio" type="radio"<!-- IF p_mask.f_mask.category.mask.S_NO --> checked="checked"<!-- ENDIF --> value="-1" /></label></td>
+ <td><label for="{p_mask.f_mask.category.mask.S_FIELD_NAME}_n"><input onchange="reset_role('role{p_mask.S_ROW_COUNT}{p_mask.f_mask.S_ROW_COUNT}'); set_colours('{p_mask.S_ROW_COUNT}{p_mask.f_mask.S_ROW_COUNT}{p_mask.f_mask.category.S_ROW_COUNT}', false)" id="{p_mask.f_mask.category.mask.S_FIELD_NAME}_n" name="{p_mask.f_mask.category.mask.S_FIELD_NAME}" class="radio" type="radio"<!-- IF p_mask.f_mask.category.mask.S_NEVER --> checked="checked"<!-- ENDIF --> value="0" /></label></td>
<!-- ENDIF -->
</tr>
<!-- END mask -->
</tbody>
</table>
- <!-- END category -->
- </td>
- </tr>
- <!-- END f_mask -->
-
- </tbody>
- </table>
-
+ </div>
+ <span class="corners-bottom"><span></span></span>
+ </div>
+ <!-- END category -->
+ </div>
</fieldset>
+<!-- END f_mask -->
<!-- END p_mask -->