Beispiel #1
0
         if (intval($_GET["prid"])) {
             if (!$portf->CheckBlocked(intval($_GET['prid'])) || hasPermissions('projects')) {
                 $error .= $portf->SwitchStatusPrj(get_uid(), intval($_GET["prid"]));
                 header("Location: /");
                 exit;
             }
         }
     }
     break;
 case "warn":
     if (hasPermissions('projects')) {
         require_once ABS_PATH . "/classes/messages.php";
         require_once ABS_PATH . "/classes/users.php";
         require_once ABS_PATH . "/classes/projects.php";
         $usr = new users();
         $usr->Warn($_GET["ulogin"]);
         $threadid = intval(trim($_GET['threadid']));
         $uid = get_uid();
         //messages::SendWarn($_GET["ulogin"],$_GET['blogid'],$_GET['threadid']); - это тут не работает!
         $tprj = new projects();
         $tprj->DeletePublicProject(intval($_GET["prid"]), get_uid(), hasPermissions('projects'));
     }
     break;
 case "post_offers_filter":
     $offers_filter = new offers_filter();
     $f_category = $_POST['pf_categofy'];
     if ((int) $_POST['comboe_column_id'] === 1 && $_POST['comboe_db_id'] > 0) {
         $f_category[1][$_POST['comboe_db_id']] = 1;
     }
     if ((int) $_POST['comboe_column_id'] === 0 && $_POST['comboe_db_id'] > 0) {
         $f_category[0][$_POST['comboe_db_id']] = 0;
Beispiel #2
0
/**
 * Изменение редактирования пользователя
 * 
 * @param  string $sUsers      JSON строка с массивом UID пользователей
 * @param  int    $nActId      ID действия из admin_actions (1, 2)
 * @param  int    $sWarnId     ID предупреждения при редактировании/снятии
 * @param  string $reasonId    ID причины, если она выбрана из списка (таблица admin_reasons, где act_id = 1,2)
 * @param  string $reasonName  НЕ ИСПОЛЬЗУЕТСЯ. Краткое описание причины действия (из селекта)
 * @param  string $reasonText  Текст причины
 * @param  string $draw_func   способ отображения
 * @param  string $sContext    Контекст (для лога админских действий)
 * @return object xajaxResponse
 */
function updateUserWarn($sUsers = '', $nActId, $sWarnId = 0, $reasonId = null, $reasonName, $reasonText, $draw_func, $sContext = '')
{
    session_start();
    $objResponse = new xajaxResponse();
    if (hasPermissions('users')) {
        $reasonId = $reasonId ? $reasonId : null;
        $aContext = _jsonArray($sContext);
        $aContext = $aContext ? $aContext : array('uid' => '', 'code' => 0, 'link' => '', 'name' => '');
        $aUsers = _jsonArray($sUsers);
        $bCheck = true;
        if ($aContext['uid'] == 'moder') {
            global $user_content;
            $bCheck = $user_content->checkContent($aContext['contentId'], $aContext['streamId'], $aContext['recId']);
        }
        if ($bCheck && $aUsers && is_string($reasonText) && $reasonText != '') {
            require_once $_SERVER['DOCUMENT_ROOT'] . '/classes/users.php';
            $users = new users();
            foreach ($aUsers as $sUid) {
                $users->GetUserByUID($sUid);
                if ($users->uid) {
                    $sReason = str_replace('%USERNAME%', $users->uname . ' ' . $users->usurname, $reasonText);
                    $sReason = change_q($sReason, FALSE, 0, TRUE);
                    $sUniqId = "warnUser{$sUid}";
                    $sObjName = $users->uname . ' ' . $users->usurname . '[' . $users->login . ']';
                    $sObjLink = '/users/' . $users->login;
                    if ($nActId == 2 && $sWarnId) {
                        // снимаем предупреждение
                        $users->UnWarn($sWarnId);
                        // пишем лог админских действий
                        admin_log::addLog(admin_log::OBJ_CODE_USER, 2, $sUid, $sUid, $sObjName, $sObjLink, 0, '', $reasonId, $sReason);
                        $actFlag = -1;
                    } elseif ($nActId == 1 && $sWarnId) {
                        // редактируем предупреждение
                        admin_log::updateUserWarn($sWarnId, $sReason, $reasonId);
                        $actFlag = 0;
                    } elseif ($nActId == 1 && !$sWarnId && $users->warn < 3 && !$users->is_banned) {
                        $aUserContent = array();
                        $sUserContent = '';
                        if ($aContext['code'] == 2 && preg_match('#^blog_msg_([\\d]+)#', $aContext['uid'], $aMatch)) {
                            /*require_once( $_SERVER['DOCUMENT_ROOT'].'/classes/blogs.php' );
                             	$aUserContent = blogs::GetMsgInfo( $aMatch[1], $err, $perm );
                             	
                             	if ( $aUserContent ) {
                             		$sUserContent = $aContext['link'] . ($aUserContent['msgtext'] ? "\n\n" . $aUserContent['msgtext'] : '');
                             	}*/
                        }
                        // делаем предупреждение
                        $sNewWarnId = $users->Warn($users->login, $sReason, $reasonId, $aContext['link'], $sUserContent);
                        // пишем лог админских действий
                        admin_log::addLog(admin_log::OBJ_CODE_USER, 1, $sUid, $sUid, $sObjName, $sObjLink, $aContext['code'], $aContext['link'], $reasonId, $sReason, $sNewWarnId, $aContext['name']);
                        $actFlag = 1;
                    }
                    WarnsHTML($draw_func, $sUid, $users, $objResponse, $sUniqId, $aContext['uid'], $actFlag);
                }
            }
        }
        $objResponse->script("\$\$(\"div[id^='ov-notice']\").setStyle('display', 'none');");
        $objResponse->script("if(banned.reload==1){window.location.reload(true);}");
        $objResponse->script("if(banned.zero){banned.zeroShow();}");
        if ($aContext['uid'] == 'moder') {
            // если варнинг делается из потока модерирования
            $objResponse->script('user_content.resolveContent(user_content.resolveSid, 2, user_content.resolveUid)');
            $objResponse->script("parent.\$\$(\"div[id^='ov-notice']\").setStyle('display', 'none');");
        }
    }
    return $objResponse;
}
Beispiel #3
0
         if (intval($_GET['prid'])) {
             if (!$portf->CheckBlocked(intval($_GET['prid'])) || hasPermissions('projects')) {
                 $error .= $portf->SwitchStatusPrj(get_uid(), intval($_GET['prid']));
                 header('Location: /');
                 exit;
             }
         }
     }
     break;
 case 'warn':
     if (hasPermissions('projects')) {
         require_once ABS_PATH . '/classes/messages.php';
         require_once ABS_PATH . '/classes/users.php';
         require_once ABS_PATH . '/classes/projects.php';
         $usr = new users();
         $usr->Warn($_GET['ulogin']);
         $threadid = intval(trim($_GET['threadid']));
         $uid = get_uid();
         //messages::SendWarn($_GET["ulogin"],$_GET['blogid'],$_GET['threadid']); - это тут не работает!
         $tprj = new projects();
         $tprj->DeletePublicProject(intval($_GET['prid']), get_uid(), hasPermissions('projects'));
     }
     break;
 case 'post_offers_filter':
     $offers_filter = new offers_filter();
     $f_category = $_POST['pf_categofy'];
     if ((int) $_POST['comboe_column_id'] === 1 && $_POST['comboe_db_id'] > 0) {
         $f_category[1][$_POST['comboe_db_id']] = 1;
     }
     if ((int) $_POST['comboe_column_id'] === 0 && $_POST['comboe_db_id'] > 0) {
         $f_category[0][$_POST['comboe_db_id']] = 0;
Beispiel #4
0
 $exrates = new exrates();
 $exrate = $exrates -> GetField($oldMoneyType . $money_to_type, $error, 'val');
 if ($exrate) $money_to_sum = floor($oldMoneySum * 98 * $exrate)/100;
 */
 // Предложения по данному проекту.
 $obj_offer = new projects_offers();
 $smail = new smail();
 // Диалог по предложениям к данному проекту.
 $obj_dialogue = new projects_offers_dialogue();
 if (hasPermissions('projects') && $project['login'] != $_SESSION['login']) {
     switch ($action) {
         case 'warn':
             #        if (hasPermissions('projects')) {
             require_once $_SERVER['DOCUMENT_ROOT'] . '/classes/messages.php';
             $usr = new users();
             $usr->Warn($project['login']);
             messages::SendProjectWarn($project['login'], $prj_id);
             header('Location: ' . getFriendlyURL('project', $project['id']) . '?' . $from_prm_s);
             exit;
             #        }
             break;
         case 'deloffer':
             if (isset($_GET['oid'])) {
                 $offer_id = (int) trim($_GET['oid']);
             }
             // пишем лог админских действий пока еще само предложение не грохнули...
             if ($_SESSION['uid'] && hasPermissions('projects')) {
                 $obj_offer->DelOfferLog($offer_id, $prj_id, $project['name'], $project['user_id']);
                 // отправляем уведомление об удалении предложения
                 $obj_offer->DelOfferNotification($offer_id, $_SESSION['uid']);
             }
Beispiel #5
0
 $exrates = new exrates();
 $exrate = $exrates -> GetField($oldMoneyType . $money_to_type, $error, 'val');
 if ($exrate) $money_to_sum = floor($oldMoneySum * 98 * $exrate)/100;
 */
 // Предложения по данному проекту.
 $obj_offer = new projects_offers();
 $smail = new smail();
 // Диалог по предложениям к данному проекту.
 $obj_dialogue = new projects_offers_dialogue();
 if (hasPermissions('projects') && $project['login'] != $_SESSION["login"]) {
     switch ($action) {
         case "warn":
             #        if (hasPermissions('projects')) {
             require_once $_SERVER['DOCUMENT_ROOT'] . "/classes/messages.php";
             $usr = new users();
             $usr->Warn($project["login"]);
             messages::SendProjectWarn($project["login"], $prj_id);
             header("Location: " . getFriendlyURL("project", $project['id']) . '?' . $from_prm_s);
             exit;
             #        }
             break;
         case "deloffer":
             if (isset($_GET['oid'])) {
                 $offer_id = (int) trim($_GET['oid']);
             }
             // пишем лог админских действий пока еще само предложение не грохнули...
             if ($_SESSION['uid'] && hasPermissions('projects')) {
                 $obj_offer->DelOfferLog($offer_id, $prj_id, $project['name'], $project['user_id']);
                 // отправляем уведомление об удалении предложения
                 $obj_offer->DelOfferNotification($offer_id, $_SESSION['uid']);
             }