Good work and thanks for sharing...
Regarding this:
Permissions
In the current version there are only basic permissions. Only group members can post in such a created forum. Forums of private groups are not protected.
What if we change the plugin @
newreply_start
From
PHP Code:
if (intval($threadinfo['forumid']) <> 0) {
$checkpermq =$vbulletin->db->query_read("SELECT
groupid, forumid
FROM ".TABLE_PREFIX."socialgroup
WHERE forumid=".$threadinfo['forumid']);
if ($vbulletin->db->num_rows($checkpermq) > 0) {
$checkperm = $vbulletin->db->fetch_array($checkpermq);
$checkgroupq =$vbulletin->db->query_read("SELECT
*
FROM ".TABLE_PREFIX."socialgroupmember
WHERE
groupid=".$checkperm['groupid']." AND
userid=".$vbulletin->userinfo['userid']." AND
type='member'");
if ($vbulletin->db->num_rows($checkgroupq) == 0) {
print_no_permission();
}
}
}
To
PHP Code:
if (intval($threadinfo['forumid']) <> 0) {
$checkpermq =$vbulletin->db->query_read("SELECT
groupid, forumid, type
FROM ".TABLE_PREFIX."socialgroup
WHERE forumid=".$threadinfo['forumid']);
if ($vbulletin->db->num_rows($checkpermq) > 0) {
$checkperm = $vbulletin->db->fetch_array($checkpermq);
$checkgroupq =$vbulletin->db->query_read("SELECT
*
FROM ".TABLE_PREFIX."socialgroupmember
WHERE
groupid=".$checkperm['groupid']." AND
userid=".$vbulletin->userinfo['userid']." AND
type='member'");
if ($vbulletin->db->num_rows($checkgroupq) == 0 AND $checkperm['type'] !='public') {
print_no_permission();
}
}
}
the plugin @
newthread_start
From
PHP Code:
if (intval($foruminfo['forumid']) <> 0) {
$checkpermq =$vbulletin->db->query_read("SELECT
groupid, forumid
FROM ".TABLE_PREFIX."socialgroup
WHERE forumid=".$foruminfo['forumid']);
if ($vbulletin->db->num_rows($checkpermq) > 0) {
$checkperm = $vbulletin->db->fetch_array($checkpermq);
$checkgroupq =$vbulletin->db->query_read("SELECT
*
FROM ".TABLE_PREFIX."socialgroupmember
WHERE
groupid=".$checkperm['groupid']." AND
userid=".$vbulletin->userinfo['userid']." AND
type='member'");
if ($vbulletin->db->num_rows($checkgroupq) == 0) {
print_no_permission();
}
}
}
To
PHP Code:
if (intval($foruminfo['forumid']) <> 0) {
$checkpermq =$vbulletin->db->query_read("SELECT
groupid, forumid, type
FROM ".TABLE_PREFIX."socialgroup
WHERE forumid=".$foruminfo['forumid']);
if ($vbulletin->db->num_rows($checkpermq) > 0) {
$checkperm = $vbulletin->db->fetch_array($checkpermq);
$checkgroupq =$vbulletin->db->query_read("SELECT
*
FROM ".TABLE_PREFIX."socialgroupmember
WHERE
groupid=".$checkperm['groupid']." AND
userid=".$vbulletin->userinfo['userid']." AND
type='member'");
if ($vbulletin->db->num_rows($checkgroupq) == 0 AND $checkperm['type'] !='public') {
print_no_permission();
}
}
}
I guess that should fix it and allow any user to post in any public social group's forum.