本文整理汇总了PHP中projects::Blocked方法的典型用法代码示例。如果您正苦于以下问题:PHP projects::Blocked方法的具体用法?PHP projects::Blocked怎么用?PHP projects::Blocked使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类projects
的用法示例。
在下文中一共展示了projects::Blocked方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: resolveProjects
/**
* Проекты. Утверждение/удаление записи
*
* @param string $stream_id идентификатор потока
* @param int $user_id идентификатор модератора
* @param int $from_id идентификатор пользователя
* @param int $rec_id идентификатор записи
* @param int $rec_type тип записи
* @param int $action действие: 1 - утверждено, 2 - удалено
* @param string $is_sent было ли отправлено уведомление
* @param string $reason причина удаления
*/
function resolveProjects($stream_id = '', $user_id = 0, $from_id = 0, $rec_id = 0, $rec_type = 0, $action = 1, $is_sent = '', $reason = '')
{
$bRet = false;
$sQuery = 'UPDATE moderation SET moder_num = ?i, status = ?i WHERE rec_id = ?i AND rec_type = ?i AND stream_id = ? RETURNING rec_id';
$sRecId = $GLOBALS['DB']->val($sQuery, $this->nResolveCnt, $action, $rec_id, self::MODER_PROJECTS, $stream_id);
if ($sRecId) {
$bRet = true;
$GLOBALS['DB']->update('projects', array('moderator_status' => $user_id), 'id = ?i', $rec_id);
require_once $_SERVER['DOCUMENT_ROOT'] . '/classes/projects.php';
require_once $_SERVER['DOCUMENT_ROOT'] . '/classes/admin_log.php';
$projects = new projects();
$project = $projects->GetPrjCust($rec_id);
$sObjLink = getFriendlyURL('project', $rec_id);
// лог админских действий
if ($action == 1 && $project['blocked_time']) {
// разблокируем
$projects->UnBlocked($rec_id);
admin_log::addLog(admin_log::OBJ_CODE_PROJ, 10, $from_id, $rec_id, $project['name'], $sObjLink, 0, '', 0, '');
} elseif ($action == 2 && !$project['blocked_time']) {
// блокируем
$sBlockId = $projects->Blocked($rec_id, $reason, 0, $user_id, true);
// Удаляем черновики жалобы
require_once $_SERVER['DOCUMENT_ROOT'] . '/classes/drafts.php';
drafts::DeleteDraftByPrjID($rec_id);
$projects->DeleteComplains($rec_id);
// пишем лог админских действий
admin_log::addLog(admin_log::OBJ_CODE_PROJ, 9, $from_id, $rec_id, $project['name'], $sObjLink, 0, '', 0, $reason, $sBlockId);
}
}
return $bRet;
}
示例2: updatePrjBlock
/**
* Изменение блокировки проекта.
*
* @param int $project_id ID проекта
* @param int $act_id ID нового действия (admin_actions)
* @param int $src_id ID исходного действия (projects_blocked)
* @param string $reason причина
* @param int $reason_id ID причины, если она выбрана из списка (таблица admin_reasons, где act_id = 9)
*
* @return object xajaxResponse
*/
function updatePrjBlock($project_id, $act_id, $src_id, $reason = '', $reason_id = null)
{
session_start();
$objResponse = new xajaxResponse();
if (hasPermissions('projects')) {
require_once $_SERVER['DOCUMENT_ROOT'] . '/classes/projects.php';
$projects = new projects();
$project = $projects->GetPrjCust($project_id);
$sObjLink = '/projects/?pid=' . $project_id;
// лог админских действий
$reason_id = $reason_id ? $reason_id : null;
$reason = str_replace('%USERNAME%', $project['uname'] . ' ' . $project['usurname'], $reason);
$reason = change_q($reason, false, 0, true);
if ($act_id == 10 && $src_id) {
// разблокируем проект
$projects->UnBlocked($project_id);
// пишем лог админских действий
admin_log::addLog(admin_log::OBJ_CODE_PROJ, 10, $project['user_id'], $project_id, $project['name'], $sObjLink, 0, '', $reason_id, $reason);
// так как появилось новое действие в логе?
$objResponse->script('window.location="/siteadmin/admin_log/?site=proj";');
} elseif ($act_id == 9 && $src_id) {
// редактируем текущую блокировку в projects_blocked, admin_log обновится триггером
admin_log::updateProjBlock($src_id, $reason, $reason_id);
$reason = reformat($project['blocked_reason'], 24, 0, 0, 1, 24);
$objResponse->script('window.location.reload(true)');
} elseif ($act_id == 9 && !$src_id) {
// блокируем проект
$sBlockId = $projects->Blocked($project_id, $reason, $reason_id, $_SESSION['uid']);
$project = $projects->GetPrjCust($project_id);
// пишем лог админских действий
admin_log::addLog(admin_log::OBJ_CODE_PROJ, 9, $project['user_id'], $project_id, $project['name'], $sObjLink, 0, '', $reason_id, $reason, $sBlockId);
// так как появилось новое действие в логе?
$objResponse->script('window.location="/siteadmin/admin_log/?site=proj";');
}
}
return $objResponse;
}
示例3: BlockedProjectWithComplain
/**
* Блокирование проекта с жалобами
*
* @param integer $project_id id проекта
* @param string $reason причина
* @param int $reason_id ID причины, если она выбрана из списка (таблица admin_reasons, где act_id = 9)
* @param string $reason_name Краткое описание причины действия (из селекта) для лога админских действий
*/
function BlockedProjectWithComplain($project_id, $reason, $reason_id = null, $reason_name = '')
{
global $DB;
$objResponse = new xajaxResponse();
$project_id = intval($project_id);
session_start();
if (hasPermissions('projects')) {
require_once $_SERVER['DOCUMENT_ROOT'] . '/classes/projects.php';
if (is_string($reason) && $reason != '') {
if (hasPermissions('projects')) {
$count = $DB->val("SELECT COUNT(*) FROM projects WHERE id = ?", $project_id);
if ($count) {
$projects = new projects();
$project = $projects->GetPrjCust($project_id);
$reason_id = $reason_id ? $reason_id : null;
$reason = str_replace('%USERNAME%', $project['uname'] . ' ' . $project['usurname'], $reason);
$reason = change_q_x($reason, FALSE, TRUE, "", false, false);
$projects->SatisfyComplains($project_id);
$sBlockId = $projects->Blocked($project_id, $reason, $reason_id, $_SESSION['uid']);
// пишем лог админских действий
$sObjLink = getFriendlyURL('project', $project_id);
admin_log::addLog(admin_log::OBJ_CODE_PROJ, 9, $project['user_id'], $project_id, $project['name'], $sObjLink, 0, '', $reason_id, $reason, $sBlockId);
//-----------------------------
$objResponse->script("project_banned({$project_id});");
} else {
$objResponse->alert('Несуществующий проект');
}
}
}
}
return $objResponse;
}