PDA

View Full Version : Removing code via plugin?


Jinovich
10-29-2008, 04:01 PM
At the moment we have to manually edit our infraction.php file so that our forum moderators may infract our "VIPS" who are in a different usergroup but are moderators of their very own subforum.

This works brilliantly and exactly how I wanted it over the last two years.

However I want to see if it is possible to incorporate this manual edit as a plugin to stop the neccessity for manual code edits.

the code in question is,

($hook = vBulletinHook::fetch_hook('infraction_verify_permi ssions')) ? eval($hook) : false;

// moderators will have the infraction icon on their posts due to the overhead of checking moderator status on showthread
// Only Admins & Supermods may give infractions to moderators
// really could use a bit in user that is set when an user is a moderator of any forum to avoid this

$uglist = $userinfo['usergroupid'] . iif(trim($userinfo['membergroupids']), ",$userinfo[membergroupids]");
if (can_moderate(0, '', $userinfo['userid'], $uglist)
AND !($vbulletin->userinfo['permissions']['adminpermissions'] & $vbulletin->bf_ugp_adminpermissions['cancontrolpanel'])
AND !($vbulletin->userinfo['permissions']['adminpermissions'] & $vbulletin->bf_ugp_adminpermissions['ismoderator'])
)
{
eval(standard_error(fetch_error('you_are_not_allow ed_to_warn_moderators')));
}

I want to use the verify infraction permissions hook to ignore the whole block of code below it, any suggestions as to how I could do this?

Jinovich
11-01-2008, 02:42 PM
No one able to advise on this?

Lynne
11-01-2008, 04:00 PM
I'm not sure if you can use the hook for it since what you really need is to set a condition to then skip the code below. Or actually, maybe what you need to do is use the hook to set a paramenter that will make it so that error doesn't get evaled.... hmmmm....
if (can_moderate(0, '', $userinfo['userid'], $uglist)
AND !($vbulletin->userinfo['permissions']['adminpermissions'] & $vbulletin->bf_ugp_adminpermissions['cancontrolpanel'])
AND !($vbulletin->userinfo['permissions']['adminpermissions'] & $vbulletin->bf_ugp_adminpermissions['ismoderator'])
)
Do you know which of those conditions they are failing? If you do, set the condition in the hook to not fail. (I apologize if I'm not making complete sense right now as I've only had one cup of coffee so far.)