home *** CD-ROM | disk | FTP | other *** search
/ rtsi.com / 2014.01.www.rtsi.com.tar / www.rtsi.com / OS9 / FAQ / cgi-bin / discus4_00 / source / accmgr.tmpl next >
Text File  |  2009-11-06  |  25KB  |  622 lines

  1. # FILE: accmgr.tmpl
  2. # DESCRIPTION: Access Manager
  3. # Copyright (c) 2002, DiscusWare, LLC, all rights reserved
  4. # -------------------------------------------------------------------------------------------
  5.  
  6. <!--BEGIN-->
  7. <#define array @privtypes(number,name,short,letter)#>
  8. 0    Posting Privileges    Posting    p
  9. 1    Reading Privileges    Reading    r
  10. <#/define#>
  11.  
  12. <#dtl off#>
  13. <html>
  14. <head>
  15. <title>Access Manager</title>
  16. <style>
  17. td.unselected {font: bold 9pt verdana,arial,helvetica; background-color: #d0d0d0}
  18. td.selected {font: bold 9pt verdana,arial,helvetica; background-color: #f7f757}
  19. td.ub {font: bold 8pt verdana,arial,helvetica}
  20. td.unb {font: 8pt verdana,arial,helvetica}
  21. td.reg {font: 9pt verdana,arial,helvetica}
  22. td.breg {font: bold 9pt verdana,arial,helvetica}
  23. a.bar {text-decoration: none}
  24. p { margin-left: 2pt; }
  25. p.blbar {margin-left: 0pt; font: 11pt verdana,arial,helvetica; color: #ffff00; background-color: #000000; width: 100% }
  26. .surround {border: thin black inset; width: 100%; font: 10pt verdana,arial,helvetica }
  27. .normal {font: 10pt verdana,arial,helvetica}
  28. .comment {font: 9pt verdana,arial,helvetica; margin-left: 20pt; }
  29. </style>
  30. <#dtl on#>
  31.  
  32. #############################################################################
  33. # Special Password Screen
  34.  
  35. <#if $general->{popup} == 4#>
  36.     <#define $letter = $general->{letter}#>
  37.     <script language="JavaScript">
  38.     <!--
  39.     function submitform () {
  40.         <#if $general->{special_exists}#>if (self.document.forms[0].opt[1].checked == true) {
  41.             window.opener.document.forms[0].spec$letter.checked = true;
  42.             window.opener.document.forms[0].main$letter{|}[2].checked = true;
  43.             window.opener.document.forms[0].specselect$letter.value = "*" + self.document.forms[0].pass.value;
  44.             window.opener.document.forms[0].submit();
  45.         <#if $general->{special_exists}#>}
  46.         self.close();
  47.     }
  48.     // -->
  49.     </script>
  50.     </head>
  51.     <body bgcolor="#ffffff" text="#000000" link="#0000FF" vlink="#0000FF">
  52.     <#if $general->{letter} eq "p"#>
  53.         <#define $word = "Posting"#>
  54.     <#else#>
  55.         <#define $word = "Reading"#>
  56.     <#endif#>
  57.     <form name="m">
  58.     <div class="surround">
  59.         {#if $browser->{ieX}#}<p class="blbar">Special Password $word Privileges</p>{#else#}<table width=100% bgcolor=#000000><tr><td>$fs<font color=#ffff00>Special Password $word Privileges</font></font></td></tr></table>{#endif#}
  60.         <p>
  61.         The "Special Password" will allow access with any username so long as this
  62.         special password is used.  <font color=#ff0000>This password will NOT be hidden
  63.         from view as you type it on this screen!</font>
  64.         </p>
  65.         <#if $general->{special_exists}#>
  66.             <p>
  67.                 <input type=radio name="opt" value=1 checked> Use existing password<br>
  68.                 <input type=radio name="opt" value=0> Enter new password:
  69.             </p>
  70.         <#endif#>
  71.         <ul>
  72.             <table>
  73.             <tr>
  74.             <td class="ub">New Special Password:</td>
  75.             <td><input type=text name="pass" value="" size=15 <#if $general->{special_exists}#>onChange="document.forms[0].opt[1].checked = true;"><#endif#></td>
  76.             </tr>
  77.             </table>
  78.         </ul>
  79.     </div>
  80.     <p>
  81.     <input type=button value="Save Settings" onClick="submitform()">
  82.     <input type=button value="Cancel" onClick="self.close()">
  83.     </p>
  84.     </form>
  85.  
  86. <#endif#>
  87.  
  88. #############################################################################
  89. # Select IP Addresses Screen
  90.  
  91. <#if $general->{popup} == 3#>
  92.     <#define $letter = $general->{letter}#>
  93.     <script language="JavaScript">
  94.     <!--
  95.     function submitform () {
  96.         var out = "";
  97.         for (var i = 1; i <= $#ips; i += 1) {
  98.             if (document.forms[0].ipsave[i].value != "" && document.forms[0].ipsel[i].selectedIndex > 0) {
  99.                 if (document.forms[0].ipsel[i].selectedIndex == 2) {
  100.                     out += "!";
  101.                 }
  102.                 out += document.forms[0].ipsave[i].value;
  103.                 out += ",";
  104.             }
  105.         }
  106.         if (document.forms[0].ipseldef.selectedIndex == 1) {
  107.             out += "!*";
  108.         } else {
  109.             out += "*";
  110.         }
  111.         window.opener.document.forms[0].ip$letter.checked = true;
  112.         window.opener.document.forms[0].main$letter{|}[2].checked = true;
  113.         window.opener.document.forms[0].ipselect$letter.value = out;
  114.         window.opener.document.forms[0].submit();
  115.         self.close();
  116.     }
  117.     function movearound(num, dir) {
  118.         if (dir == 1) {
  119.             if (num == 1) {
  120.                 alert('The selected entry is already at the top!');
  121.             } else {
  122.                 moveval(num, 0);
  123.                 for (var i = num-1; i >= 0; i -= 1) {
  124.                     moveval(i, i+1);
  125.                 }
  126.             }
  127.         }
  128.         if (dir == 2) {
  129.             if (num == 1) {
  130.                 alert('The selected entry is already at the top!');
  131.             } else {
  132.                 moveval(num-1, 0);
  133.                 moveval(num, num-1);
  134.                 moveval(0, num);
  135.             }
  136.         }
  137.         if (dir == 3) {
  138.             if (num == $#ips) {
  139.                 alert('The selected entry is already at the bottom!');
  140.             } else {
  141.                 moveval(num+1, 0);
  142.                 moveval(num, num+1);
  143.                 moveval(0, num);
  144.             }
  145.         }
  146.         if (dir == 4) {
  147.             if (num == $#ips) {
  148.                 alert('The selected entry is already at the bottom!');
  149.             } else {
  150.                 moveval(num, 0);
  151.                 for (var i = num+1; i <= $#ips; i += 1) {
  152.                     moveval(i, i-1);
  153.                 }
  154.                 moveval(0, $#ips);
  155.             }
  156.         }
  157.         if (dir == 5) {
  158.             if (num == $#ips) {
  159.                 alert('You cannot insert an entry at the bottom!  If you need more blanks, save these settings and then reopen this screen.');
  160.                 return false;
  161.             }
  162.             for (var i = num+1; i <= $#ips; i += 1) {
  163.                 if (document.forms[0].ipsave[i].value == "") {
  164.                     for (var j = i; j > num; j -= 1) {
  165.                         moveval(j-1, j);
  166.                     }
  167.                     moveval(-1, num);
  168.                     return true;
  169.                 }
  170.             }
  171.             alert('Cannot insert an entry; there is no open space.');
  172.         }
  173.         return false;
  174.     }
  175.     function moveval(src, dest) {
  176.         if (src == -1) {
  177.             document.forms[0].ipsel[dest].options[0].selected = true;
  178.             document.forms[0].ipsave[dest].value = "";
  179.         } else {
  180.             document.forms[0].ipsave[dest].value = document.forms[0].ipsave[src].value;
  181.             if (src == 0) {
  182.                 var s = document.forms[0].ipsel[0].value;
  183.                 document.forms[0].ipsel[dest].options[s].selected = true;
  184.             }
  185.             if (dest == 0) {
  186.                 document.forms[0].ipsel[dest].value = document.forms[0].ipsel[src].selectedIndex;
  187.             }
  188.             if (src > 0 && dest > 0) {
  189.                 var d = document.forms[0].ipsel[src].selectedIndex;
  190.                 document.forms[0].ipsel[dest].options[d].selected = true;
  191.             }
  192.         }
  193.     }
  194.     // -->
  195.     </script>
  196.     </head>
  197.     <body bgcolor="#ffffff" text="#000000" link="#0000FF" vlink="#0000FF">
  198.     <#if $general->{letter} eq "p"#>
  199.         <#define $word = "Posting"#>
  200.     <#else#>
  201.         <#define $word = "Reading"#>
  202.     <#endif#>
  203.     <form name="m">
  204. <#define array @altcol (_index, color)#>
  205. 1    #e3e3e3
  206. 2    #d0d0d0
  207. <#/define#>
  208.     <div class="surround">
  209.         {#if $browser->{ieX}#}<p class="blbar">IP-based $word Privileges</p>{#else#}<table width=100% bgcolor=#000000><tr><td>$fs<font color=#ffff00>IP-based $word Privileges</font></font></td></tr></table>{#endif#}
  210.         <p>
  211.         Use this section to define rules, using * as a wildcard character.  If you
  212.         need more space, save your settings and then reopen this screen.
  213.         </p>
  214.         <p align=center>
  215.         <input type=hidden name="ipsave" value="">
  216.         <input type=hidden name="ipsel" value="">
  217.         <table bgcolor=#000000 border=0 cellpadding=0 cellspacing=0><tr><td>
  218.         <table>
  219.         <tr bgcolor="#f7f7f7">
  220.         <td class="ub" align=center>Order</td>
  221.         <td class="ub">IP Address</td>
  222.         <td class="ub">Perm</td>
  223.         </tr>
  224.         <#foreach $ip (@ips)#>
  225.             <tr bgcolor="<#pick color $ip->{_iteration} from @altcol(1,2)#>">
  226.             <td>
  227.                 <a href="#" onClick="movearound($ip->{_iteration}, 1); return false;">\
  228.                     <img src="$icon_url/mark_top.gif" height=12 width=12 border=0>\
  229.                 </a>\
  230.                 <a href="#" onClick="movearound($ip->{_iteration}, 2); return false;">\
  231.                     <img src="$icon_url/mark_up.gif" height=12 width=12 border=0>\
  232.                 </a>\
  233.                 <a href="#" onClick="movearound($ip->{_iteration}, 3); return false;">\
  234.                     <img src="$icon_url/mark_down.gif" height=12 width=12 border=0>\
  235.                 </a>\
  236.                 <a href="#" onClick="movearound($ip->{_iteration}, 4); return false;">\
  237.                     <img src="$icon_url/mark_bottom.gif" height=12 width=12 border=0>\
  238.                 </a>\
  239.                 <a href="#" onClick="movearound($ip->{_iteration}, 5); return false;">\
  240.                     <img src="$icon_url/mark_ins.gif" height=12 width=12 border=0>\
  241.                 </a>\
  242.             </td>
  243.             <td><input type=text name="ipsave" value="$ip->{ipval}" size=25></td>
  244.             <td><select name="ipsel" size=1>
  245.                     <option value="0"{#if $ip->{ipsel} == 0#} selected{#endif#}>-----</option>
  246.                     <option value="1"{#if $ip->{ipsel} == 1#} selected{#endif#}>Allow</option>
  247.                     <option value="2"{#if $ip->{ipsel} == 2#} selected{#endif#}>Deny</option>
  248.                 </select></td>
  249.             </tr>
  250.         <#endloop#>
  251.         <tr bgcolor="#f7f7f7">
  252.         <td> </td>
  253.         <td class="unb">No match above</td>
  254.             <td><select name="ipseldef" size=1>
  255.                     <option value="1"{#if $general->{ipseldef} == 1#} selected{#endif#}>Allow</option>
  256.                     <option value="2"{#if $general->{ipseldef} == 2#} selected{#endif#}>Deny</option>
  257.                 </select></td>
  258.             </tr>
  259.         </table></td></tr></table>
  260.         </p>
  261.          
  262.     </div>
  263.     <p>
  264.     <input type=button value="Save Settings" onClick="submitform()">
  265.     <input type=button value="Cancel" onClick="self.close()">
  266.     </p>
  267.     </form>
  268. <#endif#>
  269.  
  270. #############################################################################
  271. # Select User Groups Screen
  272.  
  273. <#if $general->{popup} == 2#>
  274.     <#define $letter = $general->{letter}#>
  275.     <script language="JavaScript">
  276.     <!--
  277.     function selall (arg) {
  278.         for (var i = 0; i < $#groups; i += 1) {
  279.             document.m.modallow[i].checked = arg;
  280.         }
  281.     }
  282.     function modsave () {
  283.         var moder = "";
  284.         if ($#groups > 1) {
  285.             for (var i = 0; i < $#groups; i += 1) {
  286.                 if (document.m.modallow[i].checked == true) {
  287.                     moder += "," + document.m.modallow[i].value;
  288.                 }
  289.             }
  290.         } else {
  291.             if (document.m.modallow.checked == true) {
  292.                 moder += document.m.modallow.value;
  293.             }
  294.         }
  295.         var x = window.opener.document.f;
  296.         x.main$letter{|}[2].checked = true;
  297.         x.usrc$letter{|}[1].checked = true;
  298.         x.usr$letter.checked = true;
  299.         x.usrselect$letter.value = moder;
  300.         x.submit();
  301.         self.close();
  302.     }
  303.     // -->
  304.     </script>
  305.     </head>
  306.     <body bgcolor="#ffffff" text="#000000" link="#0000FF" vlink="#0000FF">
  307.     <#if $general->{letter} eq "p"#>
  308.         <#define $word = "Posting"#>
  309.     <#else#>
  310.         <#define $word = "Reading"#>
  311.     <#endif#>
  312.     <form name="m">
  313.     <div class="surround">
  314.         {#if $browser->{ieX}#}<p class="blbar">User $word Privileges</p>{#else#}<table width=100% bgcolor=#000000><tr><td>$fs<font color=#ffff00>User $word Privileges</font></font></td></tr></table>{#endif#}
  315.         <p>
  316.         Check the box next to the name of a group to grant $word privileges.
  317.         </p>
  318.         <ul>
  319.         <#foreach $m (@groups)#>
  320.             <input type=checkbox name="modallow" value="$m->{group}"{#if $m->{checked}#} checked{#endif#}>
  321.                 \u$m->{group}<br>
  322.         <#endloop#>
  323.         </ul>
  324.     </div>
  325.     <p>
  326.     <input type=button value="Close" onClick="modsave()">
  327.     <input type=button value="Select All" onClick="selall(1)">
  328.     <input type=button value="Select None" onClick="selall(0)">
  329.     <input type=button value="Cancel" onClick="self.close()">
  330.     </p>
  331.     </form>
  332. <#endif#>
  333.  
  334. #############################################################################
  335. # Select Moderators Screen
  336.  
  337. <#if $general->{popup} == 1#>
  338.     <#define $letter = $general->{letter}#>
  339.     <script language="JavaScript">
  340.     <!--
  341.     function selall (arg) {
  342.         for (var i = 0; i < $#moderators; i += 1) {
  343.             document.m.modallow[i].checked = arg;
  344.         }
  345.     }
  346.     function modsave () {
  347.         var moder = "";
  348.         if ($#moderators > 1) {
  349.             for (var i = 0; i < $#moderators; i += 1) {
  350.                 if (document.m.modallow[i].checked == true) {
  351.                     moder += "," + document.m.modallow[i].value;
  352.                 }
  353.             }
  354.         } else {
  355.             if (document.m.modallow.checked == true) {
  356.                 moder += document.m.modallow.value;
  357.             }
  358.         }
  359.         var x = window.opener.document.f;
  360.         x.main$letter{|}[2].checked = true;
  361.         x.modc$letter{|}[2].checked = true;
  362.         x.mod$letter.checked = true;
  363.         x.modselect$letter.value = moder;
  364.         x.submit();
  365.         self.close();
  366.     }
  367.     // -->
  368.     </script>
  369.     </head>
  370.     <body bgcolor="#ffffff" text="#000000" link="#0000FF" vlink="#0000FF">
  371.     <#if $general->{letter} eq "p"#>
  372.         <#define $word = "Posting"#>
  373.     <#else#>
  374.         <#define $word = "Reading"#>
  375.     <#endif#>
  376.     <form name="m">
  377.     <div class="surround">
  378.         {#if $browser->{ieX}#}<p class="blbar">Moderator $word Privileges</p>{#else#}<table width=100% bgcolor=#000000><tr><td>$fs<font color=#ffff00>Moderator $word Privileges</font></font></td></tr></table>{#endif#}
  379.         <p>
  380.         Check the box next to a moderator's name to grant $word privileges.
  381.         </p>
  382.         <ul>
  383.         <#foreach $m (@moderators)#>
  384.             <input type=checkbox name="modallow" value="$m->{user}"{#if $m->{checked}#} checked{#endif#}>
  385.                 \u$m->{user}<#if $m->{fullname} ne "" && $m->{fullname} ne "fullname"#> ($m->{fullname})<#endif#><br>
  386.         <#endloop#>
  387.         </ul>
  388.     </div>
  389.     <p>
  390.     <input type=button value="Close" onClick="modsave()">
  391.     <input type=button value="Select All" onClick="selall(1)">
  392.     <input type=button value="Select None" onClick="selall(0)">
  393.     <input type=button value="Cancel" onClick="self.close()">
  394.     </p>
  395.     </form>
  396. <#endif#>
  397.  
  398. #############################################################################
  399. # Main Access Manager Screen
  400.  
  401. <#if $general->{popup} == 0#>
  402.     <script language="JavaScript">
  403.     <!--
  404.     function popup(action, letter) {
  405.         if (action == "ipselect") {
  406.             var newwin = window.open("$script_url/board-admin.$cgi_extension?action=access_mgr_p&username=$general->{username}&topic=$general->{topic}&subaction=" + action + "&letter=" + letter, "PopWin", "width=400,height=500,scrollbars=yes,resizable=yes");
  407.         } else {
  408.             var newwin = window.open("$script_url/board-admin.$cgi_extension?action=access_mgr_p&username=$general->{username}&topic=$general->{topic}&subaction=" + action + "&letter=" + letter, "PopWin", "width=400,height=300,scrollbars=yes,resizable=yes");
  409.         }
  410.     }
  411.     // -->
  412.     </script>
  413.     </head>
  414.     <body bgcolor="#ffffff" text="#000000" link="#0000FF" vlink="#0000FF">
  415.     <form action="$script_url/board-admin.$cgi_extension" method="post" name="f">
  416.     <input type="hidden" name="username" value="$general->{username}">
  417.     <input type="hidden" name="topic" value="$general->{topic}">
  418.     <input type="hidden" name="action" value="access_mgr_3">
  419.     $fs<font size=3><center><b>Access Manager</b></center></font>
  420.     <hr>
  421.     <b>
  422.     <a href="$script_url/board-admin.$cgi_extension?action=access_mgr_1&username=$general->{username}">Access Manager</a>:
  423.     $general->{topic_name}
  424.     </b>
  425.     <hr>
  426.     <#if $success->{saved}#>
  427.         <p>
  428.         <table width=100% bgcolor=#ccffcc border=0><tr><td class=reg>
  429.         <b>Note:</b> Successfully saved access settings for this topic
  430.         </td></tr></table>
  431.         </p>
  432.     <#endif#>
  433.     <#if $general->{is_category} == 0#>
  434.         <#foreach $privilege_type (@privtypes)#>
  435.             <#define $letter = "$privilege_type->{letter}"#>
  436.             <#if ! pro && $privilege_type->{number} > 0#>
  437.                 <#next#>
  438.             <#endif#>
  439.             <#define $uncheck_stuff = "document.f.mod$letter.checked = false; document.f.usr$letter.checked = false; document.f.ip$letter.checked = false; document.f.spec$letter.checked = false; document.f.modc$letter{|}[0].checked = false; document.f.usrc$letter{|}[0].checked = false; document.f.usrc$letter{|}[1].checked = false; document.f.modc$letter{|}[1].checked = false; if (document.f.modc$letter{|}[2]) { document.f.modc$letter{|}[2].checked = false; }; "#>
  440.             <div class="surround">
  441.                 {#if $browser->{ieX}#}<p class="blbar">$privilege_type->{name}</p>{#else#}<table width=100% bgcolor=#000000><tr><td>$fs<font color=#ffff00>$privilege_type->{name}</font></font></td></tr></table>{#endif#}
  442.                 <#if $letter eq "r" && $general->{problem} == 1#>
  443.                     <p><font color="#ff0000"><span style="font-size: 9pt; font-weight: bold">
  444.                         Reading privileges shown here seem to be inconsistent with actual
  445.                         file structures.  To verify that reading privileges are as you intend,
  446.                         it is recommended that you save these options, even if you do not
  447.                         change them.
  448.                     </span></font></p>
  449.                 <#endif#>                
  450.                 <table width=100% border=0 bgcolor=#ffffff cellspacing=0>
  451.                 <tr>
  452.                 <td width=25><input onClick="if (document.f.main$letter{|}[0].checked == true) { $uncheck_stuff }" type=radio name="main$letter" value="0"{#if $privilege->{$letter} == 0#} checked{#endif#}></td>
  453.                 <td colspan=3 class=breg>All $privilege_type->{short} Disabled</td>
  454.                 </tr>
  455.                 <tr>
  456.                 <td width=25><input onClick="if (document.f.main$letter{|}[1].checked == true) { $uncheck_stuff }" type=radio name="main$letter" value="1"{#if $privilege->{$letter} == 1#} checked{#endif#}></td>
  457.                 <td colspan=3 class=breg>Public $privilege_type->{short}</td>
  458.                 </tr>
  459.                 <tr>
  460.                 <td width=25><input onClick="if (document.f.main$letter{|}[2].checked == false) { $uncheck_stuff }" type=radio name="main$letter" value="2"{#if $privilege->{$letter} == 2#} checked{#endif#}></td>
  461.                 <td colspan=3 class=breg>Restricted $privilege_type->{short}:</td>
  462.                 </tr>
  463.                 <tr>
  464.                 <td width=25> </td>
  465.                 <td width=25> </td>
  466.                 <td valign=top colspan=2 class=reg>
  467.                     <input onClick="if ( document.f.mod$letter.checked == false ) { document.f.modc$letter{|}[0].checked = false; document.f.modc$letter{|}[1].checked = false; if (document.f.modc$letter{|}[2]) { document.f.modc$letter{|}[2].checked = false;}; }" type=checkbox name="mod$letter" value="1"{#if $modcheck->{$letter} == 1 && $privilege->{$letter} == 2#} checked{#endif#}>
  468.                         Moderators:
  469.                 </td></tr>
  470.                 <tr>
  471.                 <td width=25> </td>
  472.                 <td width=25> </td>
  473.                 <td width=25> </td>
  474.                 <td valign=top class=reg>
  475.                         <input onClick="document.f.mod$letter.checked = true; document.f.main$letter{|}[2].checked = true;" type=radio name="modc$letter" value="0"{#if $modcheck->{$letter} == 1 && $modtype->{$letter} == 0 && $privilege->{$letter} == 2#} checked{#endif#}>
  476.                             Moderators permitted to edit this topic<br>
  477.                         <input onClick="document.f.mod$letter.checked = true; document.f.main$letter{|}[2].checked = true;" type=radio name="modc$letter" value="1"{#if $modcheck->{$letter} == 1 && $modtype->{$letter} == 1 && $privilege->{$letter} == 2#} checked{#endif#}>
  478.                             All board moderators<br>
  479.                         <#if pro#>
  480.                             <input onClick="document.f.mod$letter.checked = true; document.f.main$letter{|}[2].checked = true;" type=radio name="modc$letter" value="2"{#if $modcheck->{$letter} == 1 && $modtype->{$letter} == 2 && $privilege->{$letter} == 2#} checked{#endif#}>
  481.                                 Specific moderators (<a href="#" onClick="popup('modselect', '$letter'); return false;">Select</a>)<br>
  482.                             <#define $vn = "modselect$letter"#>
  483.                             <input type=hidden name="$vn" value="$general->{$vn}">
  484.                         <#endif#>
  485.                 </td></tr>
  486.                 <tr>
  487.                 <td width=25> </td>
  488.                 <td width=25> </td>
  489.                 <td valign=top colspan=2 class=reg>
  490.                     <input onClick="if ( document.f.usr$letter.checked == false ) { document.f.usrc$letter{|}[0].checked = false; document.f.usrc$letter{|}[1].checked = false; }" type=checkbox name="usr$letter" value="1"{#if $usrcheck->{$letter} == 1 && $privilege->{$letter} == 2#} checked{#endif#}>
  491.                         Registered Users:
  492.                 </td></tr>
  493.                 <tr>
  494.                 <td width=25> </td>
  495.                 <td width=25> </td>
  496.                 <td width=25> </td>
  497.                 <td valign=top class=reg>
  498.                         <input onClick="document.f.usr$letter.checked = true; document.f.main$letter{|}[2].checked = true;" type=radio name="usrc$letter" value="0"{#if $usrcheck->{$letter} == 1 && $usrtype->{$letter} == 0 && $privilege->{$letter} == 2#} checked{#endif#}>
  499.                             All registered users<br>
  500.                         <input onClick="document.f.usr$letter.checked = true; document.f.main$letter{|}[2].checked = true;" type=radio name="usrc$letter" value="1"{#if $usrcheck->{$letter} == 1 && $usrtype->{$letter} == 1 && $privilege->{$letter} == 2#} checked{#endif#}>
  501.                             Certain groups of users (<a href="#" onClick="popup('usrselect', '$letter'); return false;">Select</a>)<br>
  502.                             <#define $vn = "usrselect$letter"#>
  503.                             <input type=hidden name="$vn" value="$general->{$vn}">
  504.                 </td></tr>
  505.                 <#if pro#>
  506.                     <tr>
  507.                     <td width=25> </td>
  508.                     <td width=25> </td>
  509.                     <td valign=top colspan=2 class=reg>
  510.                         <input onClick="if (document.f.ip$letter.checked == true) { document.f.main$letter{|}[2].checked = true; }" type=checkbox name="ip$letter" value="1"{#if $ipcheck->{$letter} == 1 && $privilege->{$letter} == 2#} checked{#endif#}>
  511.                             By IP address (<a href="#" onClick="popup('ipselect', '$letter'); return false;">Select</a>)<br>
  512.                             <#define $vn = "ipselect$letter"#>
  513.                             <input type=hidden name="$vn" value="$general->{$vn}">
  514.                         <input onClick="if (document.f.spec$letter.checked == true) { document.f.main$letter{|}[2].checked = true; }" type=checkbox name="spec$letter" value="1"{#if $speccheck->{$letter} == 1 && $privilege->{$letter} == 2#} checked{#endif#}>
  515.                             With special password (<a href="#" onClick="popup('specselect', '$letter'); return false;">Select</a>)<br>        </font></td></tr>
  516.                             <#define $vn = "specselect$letter"#>
  517.                             <input type=hidden name="$vn" value="$general->{$vn}">
  518.                     </td></tr>
  519.                 <#endif#>
  520.                 </table>
  521.             </div>
  522.             <br><br>
  523.         <#endloop#>
  524.         <div class="surround">
  525.             {#if $browser->{ieX}#}<p class="blbar">Posting Options</p>{#else#}<table width=100% bgcolor=#000000><tr><td>$fs<font color=#ffff00>Posting Options</font></font></td></tr></table>{#endif#}
  526.             <p>
  527.             General Options:
  528.             </p>
  529.             <ul>
  530.                 <input type=checkbox name="postoption" value="a"{#if $postcheck->{anon} == 1#} checked{#endif#}>
  531.                     Disable anonymous posting<br>
  532.                 <input type=checkbox name="postoption" value="e"{#if $postcheck->{email} == 1#} checked{#endif#}>
  533.                     Disable e-mail address on post<br>
  534.                 <input type=checkbox name="postoption" value="f"{#if $postcheck->{fullname} == 1#} checked{#endif#}>
  535.                     Disable full name on post<br>
  536.                 <#if pro#>
  537.                     <input type=checkbox name="postoption" value="p"{#if $postcheck->{profile} == 1#} checked{#endif#}>
  538.                         Disable link to profile on post<br>
  539.                 <#endif#>
  540.             </ul>
  541.             <p>
  542.             Display IP Address on Posts:
  543.             </p>
  544.             <ul>
  545.                 <p>
  546.                 <input type=radio name="ip_on_post" value=1{#if $postcheck->{ip_on_post} == 1#} checked{#endif#}> All posts<br>
  547.                 <input type=radio name="ip_on_post" value=2{#if $postcheck->{ip_on_post} == 2#} checked{#endif#}> Posts by the public (unregistered guests)<br>
  548.                 <input type=radio name="ip_on_post" value=0{#if $postcheck->{ip_on_post} == 0#} checked{#endif#}> Never<br>
  549.                 </p>
  550.                 <p>
  551.                 <input type=radio name="ip_on_post_anon" value=1{#if $postcheck->{ip_on_post_anon} == 1#} checked{#endif#}> Never display IP address on anonymous posts<br>
  552.                 <input type=radio name="ip_on_post_anon" value=2{#if $postcheck->{ip_on_post_anon} == 2#} checked{#endif#}> Always display IP address on anonymous posts<br>
  553.                 <input type=radio name="ip_on_post_anon" value=0{#if $postcheck->{ip_on_post_anon} == 0#} checked{#endif#}> Follow above rule for IP display on anonymous posts<br>
  554.                 </p>
  555.             </ul>
  556.         </div>
  557.         <br><br>
  558.         <#if pro#>
  559.             <div class="surround">
  560.                 {#if $browser->{ieX}#}<p class="blbar">Moderated Posting (Message Queue)</p>{#else#}<table width=100% bgcolor=#000000><tr><td>$fs<font color=#ffff00>Moderated Posting (Message Queue)</font></font></td></tr></table>{#endif#}
  561.                 <p>
  562.                 Queue messages posted by:
  563.                 </p>
  564.                 <ul>
  565.                     <input type=checkbox name="postqueue" value="p"{#if $queuecheck->{public}#} checked{#endif#}>
  566.                         The public (unregistered guests)<br>
  567.                     <input type=checkbox name="postqueue" value="u"{#if $queuecheck->{users}#} checked{#endif#}>
  568.                         Registered users<br>
  569.                     <input type=checkbox name="postqueue" value="m"{#if $queuecheck->{moderators}#} checked{#endif#}>
  570.                         Moderators<br>
  571.                     <input type=checkbox name="postqueue" value="s"{#if $queuecheck->{special}#} checked{#endif#}>
  572.                         Anyone using the "Special Password"
  573.                 </ul>
  574.             </div>
  575.             <br><br>
  576.         <#endif#>
  577.     <#else#>
  578.         <div class="surround">
  579.             {#if $browser->{ieX}#}<p class="blbar">Category Access Settings</p>{#else#}<table width=100% bgcolor=#000000><tr><td>$fs<font color=#ffff00>Category Access Settings</font></font></td></tr></table>{#endif#}
  580.             <p>
  581.             Your access settings for a category will control whether or not a category
  582.             appears on the topics list.  This is useful only in the case where you have
  583.             opted to display only those topics that a user is authorized to view.
  584.             </p>
  585.             <#define $letter = "cr"#>
  586.             <table width=100% border=0 bgcolor=#ffffff cellspacing=0>
  587.             <tr>
  588.             <td width=25><input type=radio name="main$letter" value="0"{#if $privilege->{$letter} == 0#} checked{#endif#}></td>
  589.             <td colspan=3 class=breg>Never displayed</td>
  590.             </tr>
  591.             <tr>
  592.             <td width=25><input type=radio name="main$letter" value="1"{#if $privilege->{$letter} == 1#} checked{#endif#}></td>
  593.             <td colspan=3 class=breg>Always displayed</td>
  594.             </tr>
  595.             <tr>
  596.             <td width=25><input type=radio name="main$letter" value="2"{#if $privilege->{$letter} == 2#} checked{#endif#}></td>
  597.             <td colspan=3 class=breg>Displayed if access is granted to any of these topics:</td>
  598.             </tr>
  599.             <tr>
  600.             <td width=25 rowspan="$#topic_list"> </td>
  601.             <#foreach $topic (@topic_list)#>
  602.                 <#if $topic->{_iteration} != 1#><tr>
  603.                 <td class="reg"><input onClick="document.f.main$letter{|}[2].checked = true;" type=checkbox name=ta value="$topic->{number}"{#if $checked->{$topic->{number}} == 1#} checked{#endif#}> $topic->{name}<br>
  604.                 </tr>
  605.             <#endloop#>
  606.             </table>
  607.             <input type=hidden name="save_cat" value="1">
  608.         </div>
  609.         <br><br>
  610.     <#endif#>
  611.     </font>
  612.     <p>
  613.     <input type=submit value="Save Settings">
  614.     </p>
  615.     </form>
  616.     <#exit#>
  617. <#endif#>
  618.  
  619. </body></html>
  620.  
  621. <!--END-->
  622.