View Single Post
  #45  
Old 09-23-2001, 05:23 AM
Ashura Ashura is offline
 
Join Date: Nov 2001
Location: In a Box
Posts: 13
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Ok updated for what should be complete inheritance and some redundant code removed

These are the steps for editing the code pasted from user.php in Merk's instructions (step 5). So just replace step5 with this and inheritance should go through as many children as possible. With some slight changes this would also work for PPN's code too i believe since it suffers from the same problem of not inheriting past the first parent forum.

Find
PHP Code:
if ($action=="editaccess") { 
Add immediately below it
PHP Code:
  if(!isset($userid)) {
   
$username=$DB_site->query_first("SELECT userid FROM user WHERE username='$user_name'");
   
$userid=$username[userid];
   }
  
$user=$DB_site->query_first("SELECT username FROM user WHERE userid='$userid'");

  
$accesslist=$DB_site->query("SELECT * FROM access WHERE userid='$userid'");
  while (
$access=$DB_site->fetch_array($accesslist)) {
    
$accessarray["$access[forumid]"] = $access;
  }
  
$DB_site->free_result($accesslist); 
Find
PHP Code:
doformheader("user","updateaccess");
makehiddencode("userid","$userid"); 
Replace with
PHP Code:
doformheader("modaccessmasks","updateaccess");
makehiddencode("userid","$userid"); 
Edit the html section just after this to your liking if you wish for your moderators.

Find
PHP Code:
  while($forum=$DB_site->fetch_array($forumlist)) {
    echo 
"<tr class='secondalt'><td nowrap><P>$forum[title]</p></td><td width=100%><p>";
    if ( 
is_array($accessarray["$forum[forumid]"]) ) { 
Change too (This makes sure not all forums are displayed just ones they have access too).
PHP Code:
  while($forum=$DB_site->fetch_array($forumlist)) {
    if ( 
is_array($accessarray["$forum[forumid]"]) ) { 
Find
PHP Code:
    echo "<input type=\"radio\" name=\"accessupdate[".$forum['forumid']."]\" value=\"1\"".iif($sel
==1,"checked","")."> Yes <input type=\"radio\" name=\"accessupdate[".$forum['forumid']."]\" value=
\"0\""
.iif($sel==0,"checked","")."> No <input type=\"radio\" name=\"accessupdate[".$forum['forumid
'
]."]\" value=\"-1\" ".iif($sel==-1,"checked","")."> Default <input type=\"hidden\" name=\"oldcach
e["
.$forum['forumid']."]\" value=\"$sel\">";
    echo 
"</p></td></tr>\n";
  } 
Replace with
PHP Code:
    $perms=getpermissions($forumid,-1,-1,$forum[parentlist]);
    if(( 
ismoderator($forum[forumid],"canmoderateposts") ||
$perms['ismoderator'] && $forum['allowmodaccess']) ||
$perms['cancontrolpanel']) {
    echo 
"<tr class='secondalt'><td nowrap><P>$forum[title]</p></td><td width=100%><p>";
    echo 
"<input type=\"radio\" name=\"accessupdate[".$forum['forumid']."]\" value=\"1\"".iif($sel
==1,"checked","")."> Yes <input type=\"radio\" name=\"accessupdate[".$forum['forumid']."]\" value=
\"0\""
.iif($sel==0,"checked","")."> No <input type=\"radio\" name=\"accessupdate[".$forum['forumid
'
]."]\" value=\"-1\" ".iif($sel==-1,"checked","")."> Default <input type=\"hidden\" name=\"oldcach
e["
.$forum['forumid']."]\" value=\"$sel\">";
    echo 
"</p></td></tr>\n";
  }

Find
PHP Code:
echo "<p>User access updated successfully</p>";
$action="modify"
Replace with
PHP Code:
echo "<p>User access updated successfully</p>";
$action="select"
And your done!!

These directions hopefully are more clear
Reply With Quote
 
X vBulletin 3.8.12 by vBS Debug Information
  • Page Generation 0.02247 seconds
  • Memory Usage 1,830KB
  • Queries Executed 11 (?)
More Information
Template Usage:
  • (1)SHOWTHREAD_SHOWPOST
  • (1)ad_footer_end
  • (1)ad_footer_start
  • (1)ad_header_end
  • (1)ad_header_logo
  • (1)ad_navbar_below
  • (10)bbcode_php
  • (1)footer
  • (1)gobutton
  • (1)header
  • (1)headinclude
  • (6)option
  • (1)post_thanks_box
  • (1)post_thanks_button
  • (1)post_thanks_javascript
  • (1)post_thanks_navbar_search
  • (1)post_thanks_postbit_info
  • (1)postbit
  • (1)postbit_onlinestatus
  • (1)postbit_wrapper
  • (1)spacer_close
  • (1)spacer_open 

Phrase Groups Available:
  • global
  • postbit
  • reputationlevel
  • showthread
Included Files:
  • ./showpost.php
  • ./global.php
  • ./includes/init.php
  • ./includes/class_core.php
  • ./includes/config.php
  • ./includes/functions.php
  • ./includes/class_hook.php
  • ./includes/modsystem_functions.php
  • ./includes/functions_bigthree.php
  • ./includes/class_postbit.php
  • ./includes/class_bbcode.php
  • ./includes/functions_reputation.php
  • ./includes/functions_post_thanks.php 

Hooks Called:
  • init_startup
  • init_startup_session_setup_start
  • init_startup_session_setup_complete
  • cache_permissions
  • fetch_postinfo_query
  • fetch_postinfo
  • fetch_threadinfo_query
  • fetch_threadinfo
  • fetch_foruminfo
  • style_fetch
  • cache_templates
  • global_start
  • parse_templates
  • global_setup_complete
  • showpost_start
  • bbcode_fetch_tags
  • bbcode_create
  • postbit_factory
  • showpost_post
  • postbit_display_start
  • post_thanks_function_post_thanks_off_start
  • post_thanks_function_post_thanks_off_end
  • post_thanks_function_fetch_thanks_start
  • post_thanks_function_fetch_thanks_end
  • post_thanks_function_thanked_already_start
  • post_thanks_function_thanked_already_end
  • fetch_musername
  • postbit_imicons
  • bbcode_parse_start
  • bbcode_parse_complete_precache
  • bbcode_parse_complete
  • postbit_display_complete
  • post_thanks_function_can_thank_this_post_start
  • showpost_complete