示例#1
0
/**
 * Выставляем роли пользователям сообщества (выставлять может только автор сообщества?? это верно или нет).
 *
 * @param integer $commune_id ИД Сообщества
 * @param integer $member_id  ИД Пользователя
 * @param boolean $is_moder   Флаг модератора
 * @param boolean $is_manager Флаг менеджера
 *
 * @return 
 */
function setRoleUser($commune_id, $member_id, $is_moder, $is_manager)
{
    $objResponse = new xajaxResponse();
    if (!isset($_SESSION['uid'])) {
        return;
    }
    $cm = new commune();
    $comm = $cm->GetCommune($commune_id);
    // Только хозяин сообщества может такое творить @todo нужно уточнить кто может назначать админов и менеджеров.
    if ($comm['author_id'] == $_SESSION['uid']) {
        $cm->UpdateAdmin($member_id, '', $is_moder, $is_manager, $comm);
        if ($is_moder or $is_manager) {
            $objResponse->assign('cau_admin' . $member_id, 'innerHTML', 'Admin ');
        } else {
            if (!$is_moder and !$is_manager) {
                $objResponse->assign('cau_admin' . $member_id, 'innerHTML', '');
            }
        }
        $objResponse->script('$("is_mod_value' . $member_id . '").set("value", ' . intval($is_moder) . ');');
        $objResponse->script('$("is_men_value' . $member_id . '").set("value", ' . intval($is_manager) . ');');
    }
    return $objResponse;
}
示例#2
0
        break;
}
switch ($action) {
    case 'do.Update.admin':
        $alert = NULL;
        $member_id = __paramInit('array', NULL, 'member_id');
        $note = __paramInit('array', NULL, 'note');
        $is_moderator = __paramInit('array', NULL, 'is_moderator');
        $is_manager = __paramInit('array', NULL, 'is_manager');
        $mCnt = count($member_id);
        for ($i = 0; $i < $mCnt; ++$i) {
            $n = change_q_new($note[$i], TRUE);
            if (strlen($n) > commune::MEMBER_NOTE_MAX_LENGTH) {
                $n = substr($n, 0, commune::MEMBER_NOTE_MAX_LENGTH);
            }
            commune::UpdateAdmin(intval($member_id[$i]), $n, $is_moderator[$i] ? 1 : 0, $is_manager[$i] ? 1 : 0);
        }
        header("Location: /commune/?id={$id}&site=Admin");
        exit;
        break;
    case 'do.Add.admin':
        $commune_output = 'admin.php';
        $user_login = __paramInit('string', 'user_login', NULL);
        $alert = NULL;
        if (!trim($user_login)) {
            header("Location: /commune/?id={$id}&site=Admin");
            exit;
        }
        $r = commune::AddAdmin($id, $user_login, $e);
        if (!$r) {
            $alert['user_login'] = "******";