Example #1
0
         if (isset($_POST["forums"])) {
             foreach ($_POST["forums"] as $forum_id) {
                 $permission = 0;
                 if (isset($group["permissions"][$forum_id])) {
                     foreach ($group["permissions"][$forum_id] as $perm => $check) {
                         $permission = $permission | $perm;
                     }
                 }
                 $group["permissions"][$forum_id] = $permission;
             }
         }
         unset($group["forums"]);
         unset($group["delforum"]);
         unset($group["new_forum"]);
         unset($group["new_permissions"]);
         if (phorum_db_update_group($group)) {
             // clearing user-cache if needed
             if (isset($PHORUM['cache_users']) && $PHORUM['cache_users']) {
                 $group_members = phorum_db_get_group_members($_POST["group_id"]);
                 if (count($group_members)) {
                     foreach ($group_members as $user_id => $user_status) {
                         phorum_cache_remove('user', $user_id);
                     }
                 }
             }
             echo "Group Forum Permissions Saved";
         } else {
             echo "Error Saving Group Forum Permissions";
         }
         break;
 }
Example #2
0
        }
        echo "{$CONVERT['lbr']}Updating forum-statistics: {$CONVERT['lbr']}";
        flush();
        phorum_db_update_forum_stats(true);
        echo $CONVERT['lbr'];
        flush();
    }
}
unset($forums);
// storing the offsets of the forums
phorum_db_update_settings(array("conversion_offsets" => $offsets));
if ($CONVERT['do_groups'] && count($CONVERT['groups'])) {
    // here we set the group-permissions
    echo "Writing group-permissions ... {$CONVERT['lbr']}";
    foreach ($CONVERT['groups'] as $groupid => $groupdata) {
        phorum_db_update_group($groupdata);
    }
}
if ($CONVERT['do_users']) {
    echo "migrating users ...{$CONVERT['lbr']}";
    flush();
    $group_perms = phorum_convert_getUserGroups($oldlink);
    $res = phorum_convert_selectUsers($oldlink);
    if (!$res) {
        echo "No users found, All done now.{$CONVERT['lbr']}";
        flush();
        exit;
    }
    // there are users...
    $count = 0;
    $userdata["date_added"] = time();
// Find out which forums already have a moderator group available.
$forum_has_moderator = array();
$groups = phorum_db_get_groups();
foreach ($groups as $id => $group) {
    foreach ($group['permissions'] as $forum_id => $permission) {
        if ($permission & PHORUM_USER_ALLOW_MODERATE_MESSAGES) {
            $forum_has_moderator[$forum_id] = TRUE;
        }
    }
}
print_r($forum_has_moderator);
foreach ($forums as $forum_id => $fdata) {
    if (!empty($fdata['folder_flag'])) {
        continue;
    }
    print "> forum {$fdata['name']} ";
    if (!empty($forum_has_moderator[$forum_id])) {
        print "[USE EXISTING]\n";
        continue;
    }
    $path = $fdata['forum_path'];
    array_unshift($path);
    $name = implode('::', $path);
    $group_id = phorum_db_add_group("Moderate {$name}");
    if (!$group_id) {
        die("Error adding group \"{$name}\".\n");
    }
    phorum_db_update_group(array('group_id' => $group_id, 'open' => 0, 'permissions' => array($forum_id => PHORUM_USER_ALLOW_READ | PHORUM_USER_ALLOW_REPLY | PHORUM_USER_ALLOW_NEW_TOPIC | PHORUM_USER_ALLOW_EDIT | PHORUM_USER_ALLOW_ATTACH | PHORUM_USER_ALLOW_MODERATE_MESSAGES | PHORUM_USER_ALLOW_MODERATE_USERS)));
    print "[CREATED GROUP]\n";
}
print "\n\n";