本文整理汇总了PHP中antispam函数的典型用法代码示例。如果您正苦于以下问题:PHP antispam函数的具体用法?PHP antispam怎么用?PHP antispam使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了antispam函数的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: pay_place_top
function pay_place_top($catalog = 0, $caruselTop)
{
global $DB, $session;
if ($catalog == 0) {
$yaM = "yaCounter6051055.reachGoal('main_carousel_ref');";
} else {
$yaM = "yaCounter6051055.reachGoal('cat_carousel_ref');";
}
require_once $_SERVER['DOCUMENT_ROOT'] . '/classes/pay_place.php';
$payPlace = new pay_place($catalog);
$ppAds = $payPlace->getUserPlaceNew();
if (is_array($ppAds)) {
foreach ($ppAds as $ppAd) {
$pp_uids[] = $ppAd['uid'];
}
$pp_uids = array_unique($pp_uids);
require_once $_SERVER['DOCUMENT_ROOT'] . '/classes/users.php';
$usrs = new users();
$pp_result = $usrs->getUsers('uid IN (' . implode(',', array_values($pp_uids)) . ')');
foreach ($pp_result as $k => $v) {
$toppay_usr[$v['uid']] = $v;
}
$pp_h = $payPlace->getAllInfo($pp_uids);
}
$not_load_info = true;
ob_start();
include $_SERVER['DOCUMENT_ROOT'] . '/templates/pay_place.php';
$html = antispam(str_replace(array("\r", "\n"), '', ob_get_clean()));
$aRes['success'] = true;
$aRes['html'] = iconv('windows-1251', 'UTF-8', $html);
echo json_encode($aRes);
}
示例2: process_event
public function process_event(&$event)
{
global $DB;
$this->force_connect();
$r = false;
switch ($event->type) {
case 'ProjectPosted':
$project_id = $event->data['id'];
$this->log->notice('New project posted #id = ' . $project_id);
$obj_project = new projects();
$project = $obj_project->GetPrjCust($project_id);
// Не выбран испольнитель (если испольнитель выбран, то не пишем ответ на этот проект)
if ($project && $project['exec_id'] == 0 && $project['kind'] == 1) {
$autoresponses = autoresponse::getListForProject($project);
foreach ($autoresponses as $autoresponse) {
$freelancer = $autoresponse->data['freelancer'];
$contacts_freelancer = $autoresponse->data['contacts_freelancer'];
// Проверяем если проект только для про, то и пользователь который на него отвечает должен быть ПРО
if ($project['pro_only'] == 't' && !payed::CheckPro($freelancer->login)) {
continue;
}
// Проверяем если проект только для верифицированных, то и пользователь который на него отвечает должен быть верифицирован
if ($project['verify_only'] == 't' && !$freelancer->IsVerified()) {
continue;
}
// Проверка, что текущий пользователь не является владельцем проекта
if ($project['user_id'] == $freelancer->uid) {
continue;
}
// Добавление нового отзыва к проекту
$obj_offer = new projects_offers();
$save_contacts = serialize($contacts_freelancer);
$DB->start();
$error_offer = $obj_offer->AddOffer($freelancer->uid, $project['id'], '', '', '', '', '', '', antispam(stripslashes($autoresponse->data['descr'])), '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', $autoresponse->toBoolean($autoresponse->data['only_4_cust']), 0, 0, false, false, $save_contacts, 0, $autoresponse->data['id']);
// В случае добавление автоответа, уменьшаем счетчик автоответов для пользователя (в транзакции)
if ($error_offer || !$autoresponse->reduce($freelancer, $obj_offer, $project_id)) {
$this->log->notice('Rollback autoresponse posted for project #id = ' . $project_id);
$DB->rollback();
} else {
$obj_project->incrementViews($project_id);
$this->log->notice(sprintf('New autoresponse #%d posted for project #%d', $obj_offer->offer_id, $project_id));
$DB->commit();
}
}
}
break;
}
return PGQ_EVENT_OK;
}
示例3: SaveStatus
function SaveStatus($text, $statusType, $login = NULL)
{
session_start();
$freelancer = new freelancer();
$text = addslashes(substr(stripslashes(trim($text)), 0, 200));
close_tags($text, 's');
$freelancer->status_text = antispam(htmlspecialchars(htmlspecialchars_decode(change_q_x(trim($text), true, false), ENT_QUOTES), ENT_QUOTES));
$freelancer->status_type = intval($statusType);
if ($freelancer->statusToStr($statusType)) {
$stdStatus = "";
$objResponse = new xajaxResponse();
$uid = hasPermissions('users') && $login != $_SESSION['login'] ? $freelancer->GetUid($err, $login) : get_uid(false);
$pro = hasPermissions('users') && $login != $_SESSION['login'] ? is_pro(true, $uid) : is_pro();
$error = $freelancer->Update($uid, $res);
if (!$freelancer->status_text) {
$freelancer->status_text = $stdStatus;
}
$freelancer->status_text = stripslashes($freelancer->status_text);
switch ($freelancer->status_type) {
case 1:
$status_cls = 'b-status b-status_busy';
break;
case 2:
$status_cls = 'b-status b-status_abs';
break;
case -1:
$status_cls = 'b-status b-status_no';
break;
default:
$status_cls = 'b-status b-status_free';
}
if (!$noassign) {
require_once $_SERVER['DOCUMENT_ROOT'] . '/classes/stop_words.php';
$stop_words = new stop_words(hasPermissions('users'));
$sStatusText = $pro ? $freelancer->status_text : $stop_words->replace($freelancer->status_text);
//$GLOBALS['xajax']->setCharEncoding("windows-1251");
$jsobj = json_encode(array('data' => iconv('CP1251', 'UTF8', $freelancer->status_text)));
$objResponse->assign("statusText", "innerHTML", $freelancer->status_text == $stdStatus ? "" : reformat($sStatusText, 40, 0, 1, 25));
$objResponse->assign("statusTitle", "innerHTML", $freelancer->statusToStr($statusType));
// $objResponse->assign("statusTitle", "style.display", $statusType > -1 ? '' : 'none');
$objResponse->script("statusType = {$statusType};\n\t\t\t statusTxt = document.getElementById('statusText').innerHTML;\n\t\t\t statusTxtSrc = {$jsobj};");
}
$objResponse->script("\$('bstatus').erase('class');\n \$('bstatus').addClass('{$status_cls}');");
}
return $objResponse;
}
示例4: ChangeComment
/**
* Редактирование комментария.
*
* @param integer id комментария
* @param string комментарий
*
* @return xajaxResponse
*/
function ChangeComment($cid, $comment)
{
global $contest, $stop_words;
session_start();
require_once $_SERVER['DOCUMENT_ROOT'] . '/classes/contest.php';
require_once $_SERVER['DOCUMENT_ROOT'] . '/classes/projects.php';
$objResponse = new xajaxResponse();
if (!trim($comment)) {
$objResponse->alert('Комментарий не может быть пустым');
return $objResponse;
}
if (!($uid = $_SESSION['uid'])) {
return $objResponse;
}
$contest = new contest(0, $uid, is_emp(), FALSE, hasPermissions('projects'));
// если пользователь не про или не верифицирован, то есть смысл проверить, может быть конкурс только для про или только для верифицированных
$project = contest::getProjectByCommentID($cid);
if ((!is_pro() || !is_verify()) && $project['user_id'] != get_uid() && !hasPermissions('projects')) {
if ($project['pro_only'] == 't' && !is_pro()) {
$objResponse->call('comment.reset');
$objResponse->alert('Данная функция доступна только пользователям с аккаунтом PRO.');
return $objResponse;
} elseif ($project['verify_only'] == 't' && !is_verify()) {
$objResponse->call('comment.reset');
$objResponse->alert('Данная функция доступна только верифицированным пользователям.');
return $objResponse;
}
}
if (!($offer = $contest->GetOffer($oid))) {
return $objResponse;
}
$contest->pid = $offer['project_id'];
$comment = change_q_x(antispam(substr(rtrim(ltrim($comment, "\r\n")), 0, 5000)), false, true, 'b|br|i|p|ul|li|cut|h[1-6]{1}', false, false);
if ($error = $contest->ChangeComment($cid, $comment)) {
$objResponse->alert($error);
} else {
require_once $_SERVER['DOCUMENT_ROOT'] . '/classes/stop_words.php';
$stop_words = new stop_words(hasPermissions('projects'));
$html = reformat(stripslashes($stop_words->replace($comment)), 30, 0, 0, 1);
$original = reformat(stripslashes($comment), 30, 0, 0, 1);
$objResponse->call('comment.changed', $html, $original, dateFormat('[изменен: d.m.Y | H:i]', $comments[$i]['modified']));
}
return $objResponse;
}
示例5: antispam
$title = antispam(__paramInit('htmltext', NULL, 'title', ''));
// дополнительно обрезаем отформатированую строку до 256 символов (максимальное количество в базе)
$title = substr($title, 0, 256);
$title = $title === false ? '' : $title;
$category_id = __paramInit('int', NULL, 'category_id');
if (commune::IS_NEW_WYSIWYG) {
$msgtext = __paramValue('ckedit', antispam($_POST['msgtext']));
//antispam(__paramInit('wysiwyg_tidy', NULL, 'msgtext', ''));
//$msgtext = stripslashes($msgtext);
} else {
$msgtext = antispam(__paramInit('wysiwyg_tidy', NULL, 'msgtext', ''));
}
$youtube_link = __paramInit('html', NULL, 'youtube_link', '');
//$attach = __paramInit('string', NULL, 'prev_attach');
//$youtube_link = str_replace('watch?v=', 'v/', $youtube_link);
$question = antispam(trim(__paramInit('string', NULL, 'question')));
$answers = is_array($_POST['answers']) ? $_POST['answers'] : array();
$answers_exists = is_array($_POST['answers_exists']) ? $_POST['answers_exists'] : array();
$multiple = __paramInit('int', NULL, 'multiple', '0');
$close_comments = __paramInit('int', NULL, 'close_comments');
$is_private = __paramInit('int', NULL, 'is_private');
$user_data = commune::GetUserCommuneRel($id, $uid);
if ((!$user_data['is_accepted'] || $user_data['is_deleted'] || $user_data['is_banned']) && (!hasPermissions('communes') && !$user_data['is_author'])) {
header("Location: /commune/?id={$id}&om={$om}" . ($rating ? '&rating=' . $rating : ''));
exit;
}
if ($_POST['delattach']) {
$deleted_file = $_POST['delattach'];
$file = new CFile();
$file->table = 'file_commune';
foreach ($deleted_file as $i => $id_del) {
示例6: _ceSend
/**
* Отправка сообщения.
*
* @param type $attr
*/
public function _ceSend($attr)
{
$user = new users();
$messages = new messages();
$stopWords = new stop_words(false);
$user->getUserByUID(intval($attr->uid));
if (empty($user->login) || $user->login == 'admin') {
self::error(3, false);
return;
}
if ($user->is_banned) {
self::error(4, false);
return;
}
$text = iconv('UTF-8', 'CP1251', $attr->text);
$text = antispam(change_q_x($text, false, true, null, false, false));
$messages->Add($this->_uid, $user->login, addslashes($text), array(), 0, false, null, $id);
if (!is_pro() && !is_pro(true, $attr->uid)) {
if (!hasPermissions('streamnomod') && !hasPermissions('streamnomod', $attr->uid)) {
$stopWords = new stop_words(false);
$text = $stopWords->replace($text);
}
}
$text = reformat($text, 14, 0, 0, 1);
$time = date('Y-m-d H:i:s');
$data = array('func' => 'income', 'attr' => array('id' => $id, 'uid' => $this->_uid, 'cuid' => $user->uid, 'text' => iconv('CP1251', 'UTF-8', $text), 'files' => array(), 'date' => $time));
$this->_addEvent($data);
return array('id' => $id, 'uid' => $user->uid, 'text' => iconv('CP1251', 'UTF-8', $text), 'date' => $time);
}
示例7: intval
$cost_month = intval(str_replace(" ", "", $_POST['cost_month']) * 100) / 100;
$cost_type_hour = intval($_POST['cost_type_hour']);
$cost_type_month = intval($_POST['cost_type_month']);
$in_office = intval($_POST['in_office']) == 1 ? 't' : 'f';
$prefer_sbr = intval($_POST['prefer_sbr']) == 1 ? 't' : 'f';
// Разбиваем длинные слова.
setlocale(LC_ALL, 'ru_RU.CP1251');
$text = stripslashes(trim($_POST['ab_text']));
# $text = preg_replace("|[\s]+|", " ", $text);
$text = preg_replace("|[\t]+|", " ", $text);
$text = preg_replace("|[ ]+|", " ", $text);
$original_text = $text;
$cat_show = !empty($_POST['cat_show']) && (int) $_POST['cat_show'] > 0;
// Обрезаем.
$newlines = intval(substr_count($text, "\r"));
$text = antispam(change_q_x_a(substr($text, 0, $ab_text_max_length + $newlines), false, false, "b|i|p|ul|li{1}"));
/**
* Проверка значений.
*/
if (strlen($original_text) > $ab_text_max_length + $newlines) {
$error_serv .= ($error_serv == '' ? '' : '<br />') . 'Количество знаков превышает допустимое значение. Допустимо максимум ' . $ab_text_max_length . ' знаков для поля "Уточнения к услугам в портфолио"';
}
if ($exp < 0 || $exp > $max_exp_years) {
$error_serv .= ($error_serv == '' ? '' : '<br />') . 'Недопустимое значение. Опыт работы должен быть в пределе от 0 до ' . $max_exp_years . '.';
}
if ($cost_hour < 0 || $cost_hour > $max_cost_hour[$_POST['cost_type_hour']]) {
$error_serv .= ($error_serv == '' ? '' : '<br />') . 'Недопустимое значение. Стоимость часа работы должна быть в пределе ' . view_range_cost2(0, $max_cost_hour[$_POST['cost_type_hour']], '', '', false, $_POST['cost_type_hour'] . '.');
}
if ($cost_month < 0 || $cost_month > $max_cost_month[$_POST['cost_type_month']]) {
$error_serv .= ($error_serv == '' ? '' : '<br />') . 'Недопустимое значение. Стоимость месяца работы должна быть в пределе ' . view_range_cost2(0, $max_cost_month[$_POST['cost_type_month']], '', '', false, $_POST['cost_type_month']) . '.';
}
示例8: AddDialogueMessage
function AddDialogueMessage($form)
{
global $session;
session_start();
$objResponse = new xajaxResponse();
$offerIsBlocked = projects_offers::isOfferBlocked(false, get_uid(), $form['prj_id']);
if ($offerIsBlocked) {
$objResponse->alert('Ваше предложение заблокировано, вы не можете отправить это сообщение');
return $objResponse;
}
$prj = new projects();
$project = $prj->GetPrjCust(intval($form['prj_id']));
$is_pro = is_pro();
if ($project['pro_only'] == 't' && !$is_pro && !is_emp() && !hasPermissions('projects')) {
if ($project['kind'] == 7) {
if (contest::IsContestOfferExists($project['id'], get_uid(false))) {
$is_pro = true;
}
} else {
if (projects_offers::IsPrjOfferExists($project['id'], get_uid(false))) {
$is_pro = true;
}
}
}
if ($project['pro_only'] == 't' && !$is_pro && $project['user_id'] != get_uid() && !hasPermissions('projects')) {
$objResponse->alert('Данная функция доступна только пользователям с аккаунтом PRO.');
$objResponse->script("\$('savebtn').set('disabled', false);");
return $objResponse;
} elseif ($project['verify_only'] == 't' && !($_SESSION['is_verify'] == 't') && $project['user_id'] != get_uid() && !hasPermissions('projects')) {
$objResponse->alert('Данная функция доступна только верифицированным пользователям.');
$objResponse->script("\$('savebtn').set('disabled', false);");
return $objResponse;
}
if (!trim($form['po_text'])) {
$objResponse->alert('Невозможно отправить пустое сообщение.');
$objResponse->script("\n \$('savebtn').set('disabled', false);\n ");
return $objResponse;
}
if (!is_emp() && $form['from'] == 'emp') {
$objResponse->script("\n \$('savebtn').set('disabled', false);\n ");
$objResponse->alert('Невозможно отправить сообщение. Вы вышли из аккаунта работодателя.');
return $objResponse;
} elseif (is_emp() && $form['from'] == 'frl') {
$objResponse->script("\n \$('savebtn').set('disabled', false);\n ");
$objResponse->alert('Невозможно отправить сообщение. Вы вышли из аккаунта фрилансера.');
return $objResponse;
}
//Не позволяем производить действия с заблокированным проектом
if (projects::CheckBlocked(intval($form['prj_id']))) {
$objResponse->script("document.location.href='/projects/index.php?pid=" . intval($form['prj_id']) . "'");
} elseif (intval($_SESSION['uid'])) {
$po_id = intval($form['po_id']);
//$po_text = substr(change_q_x($form['po_text'], false), 0, 1000);
$po_text = antispam(trim($form['po_text']));
$po_text = preg_replace("/(\r\n|\r|\n){3,100}/i", "\r\n\r\n", $po_text);
$po_commentid = intval($form['po_commentid']);
$user_id = get_uid(false);
$user = new users();
$user_name = $user->GetName($user_id, $error);
$pod = new projects_offers_dialogue();
$project_dialogue = $pod->GetDialogueForOffer($po_id);
$project = $pod->GetProjectFromDialogue($po_id);
if (count($project_dialogue)) {
for ($i = count($project_dialogue) - 1; $i >= 0; --$i) {
if ($project_dialogue[$i]['user_id'] != $user_id) {
$to_user_name = $project_dialogue[$i]['login'];
break;
}
}
}
if (is_emp()) {
$emp_read = true;
$frl_read = false;
} else {
$emp_read = false;
$frl_read = true;
}
if (!$po_commentid) {
$error = $pod->AddDialogueMessage($po_id, $user_id, $po_text, $frl_read, $emp_read);
$last_comment = $pod->GetLastDialogueMessage($user_id, $po_id);
$objResponse->script("last_commentid={$last_comment};");
$objResponse->script("edit_block[{$po_id}] = ' <span><a href=\"javascript:void(null)\" onClick=\"answer({$po_id}, {$last_comment});markRead(\\'{$po_id}\\');\" class=\"internal\">Редактировать</a></span>';");
// $objResponse->script("alert(last_commentid);");
// $objResponse->script("alert(edit_block);");
} else {
$error = $pod->SaveDialogueMessage($user_id, $po_text, $po_commentid, $po_id, false);
if ($error == 1) {
$objResponse->alert('Вы не можете редактировать комментарий, так как на него уже ответили.');
return $objResponse;
}
}
$po_text = rtrim(ltrim($po_text, "\r\n"));
$po_text = substr(change_q_x($po_text, false, true, '', false, false), 0, 1000);
$po_text = stripslashes($po_text);
if ($error == '') {
$sPostText = $po_text;
if ($project['kind'] != 4) {
$sId = $po_commentid ? $po_commentid : $last_comment;
$aComment = $pod->getDialogueMessageById($sId);
if ($aComment['moderator_status'] === '0') {
//.........这里部分代码省略.........
示例9: substr_entity
exit;
}
if (is_empty_html($msg)) {
$msg = '';
}
if ($_POST['close_comments']) {
$close_comments = 't';
} else {
$close_comments = 'f';
}
if ($_POST['is_private']) {
$is_private = 't';
} else {
$is_private = 'f';
}
$msg_name = substr_entity(change_q_x(antispam($_POST['name']), true, false), 0, 96, true);
$attach = $_FILES['attach'];
$attach_delete = is_array($_POST['delattach']) ? $_POST['delattach'] : array();
$attach_have = $_POST['have_attach'];
$olduser = intval($_POST['olduser']);
$us = new users();
$logins = $us->GetName($olduser, $error);
$olduserlogin = $logins['login'];
if (!$olduserlogin) {
break;
}
if (!$t) {
$base = 0;
} else {
$base = 1;
}
示例10: json_encode
}
echo json_encode($result);
exit;
break;
}
$js_file_utf8[] = '/scripts/ckedit/ckeditor.js';
switch ($_page) {
case 'new':
if (!$uid) {
header('Location: /fbd.php');
exit;
}
$content = 'content_new.php';
$title = antispam(__paramInit('html', null, 'title'));
$short = antispam(__paramInit('html', null, 'short'));
$msgtext = antispam(__paramInit('html', null, 'msgtext'));
if ($_SERVER['REQUEST_METHOD'] == 'POST') {
if (trim($short) == '') {
$alert[1] = 'Поле не должно быть пустым!';
}
if (trim($msgtext) == '') {
$alert[2] = 'Поле не должно быть пустым!';
}
if (trim($title) == '') {
$alert[0] = 'Поле не должно быть пустым!';
}
$file = new CFile($_FILES['attach']);
if ($file->tmp_name) {
$file->max_size = articles::ARTICLE_MAX_LOGOSIZE;
$file->proportional = 1;
$file->max_image_size = array('width' => 100, 'height' => 100, 'less' => 1);
示例11: updateProfessionUser
public function updateProfessionUser($uid, $prof_id, $params)
{
global $DB;
$uid = intval($uid);
$prof_id = intval($prof_id);
$params = $this->prepareRequest($params);
$this->validate($params);
if (empty($this->errors)) {
$this->update = array('cost_from' => $params['prof_cost_from'], 'cost_to' => $params['prof_cost_to'], 'cost_hour' => $params['prof_cost_hour'], 'cost_1000' => $params['prof_cost1000'], 'cost_type' => $params['prof_cost_type_db_id'], 'cost_type_hour' => $params['prof_cost_type_hour_db_id'], 'time_type' => $params['prof_time_type_db_id'], 'time_from' => $params['prof_time_from'], 'time_to' => $params['prof_time_to'], 'portf_text' => antispam($params['portf_text']), 'show_preview' => $params['on_preview'] ? 't' : 'f', 'modified' => 'NOW()');
$is_upd = $DB->update("portf_choise", $this->update, "user_id= ?i AND prof_id = ?i", $uid, $prof_id);
if ($is_upd) {
$this->checkUserContent($uid, $prof_id, $params['portf_text'], $params['old_portf_text']);
} else {
$this->errors['error'] = 'Данные не сохранены';
}
}
}
示例12: antispam
id="ch-b1" /> <label class="b-check__label b-check__label_bold b-check__label_color_666" for="ch-b1">Показывать блок</label></div></td>
</tr>
</table>
<table cellspacing="0" cellpadding="0" style="width:100%">
<tr>
<td>
<table cellspacing="0" cellpadding="4" style="width:100%; border:0" class="dop-inf-tabl">
<tr>
<td>
Текст:
</td>
</tr>
<tr>
<td>
<div class="b-textarea"><textarea cols="89" rows="9" name="konk" class="b-textarea__textarea"><?php
echo $_POST['konk'] != "" ? antispam(htmlspecialchars($_POST['konk'])) : input_ref($user->konk);
?>
</textarea></div>
</td>
</tr>
<?php
if ($alert[9]) {
?>
<tr><td><?php
echo view_error($alert[9]);
?>
</td></tr>
<?php
}
?>
<tr>
示例13: checkYoutubeAction
public function checkYoutubeAction()
{
$yt_link = front::$_req['value'];
$yt_link = substr(change_q_x(antispam(str_replace('watch?v=', 'v/', $yt_link)), true), 0, 128);
if ($yt_link != '') {
if (strpos($yt_link, 'http://ru.youtube.com/v/') !== 0 && strpos($yt_link, 'http://youtube.com/v/') !== 0 && strpos($yt_link, 'http://www.youtube.com/v/') !== 0) {
echo json_encode(array('valid' => false, 'reason' => 'Неверная ссылка'));
return;
}
}
echo json_encode(array('valid' => true));
}
示例14: editWork
public function editWork($uid, $params)
{
global $DB;
require_once $_SERVER['DOCUMENT_ROOT'] . '/classes/uploader/uploader.php';
$params = self::prepareWork($params);
$error = self::validateWork($params);
$work_id = $params['id'];
if (!empty($error)) {
return $error;
}
$update = array('link' => $params['link'], 'name' => antispam($params['work_name']), 'descr' => antispam($params['work_descr']), 'cost' => $params['work_cost'], 'cost_type' => $params['work_cost_type_db_id'], 'time_value' => $params['time_cost'], 'time_type' => $params['work_time_type_db_id'], 'prev_type' => $params['work_preview_type'], 'prof_id' => $params['work_category_db_id']);
if ($params['video'] != '') {
$video_link = video_validate($params['video']);
$video_link = preg_replace("/^http:\\/\\//", '', $video_link);
$update['video_link'] = $video_link;
$update['is_video'] = true;
} else {
$update['video_link'] = '';
$update['is_video'] = false;
}
if ($uid == $_SESSION['uid'] && !hasPermissions('users')) {
// автор, не админ, не про меняет заголовок либо текст - отправить на модерирование
$update['moderator_status'] = !is_pro() ? '0' : '-2';
}
if ($params['position_num'] !== NULL) {
$update['norder'] = intval($params['position_num']);
}
$dir = 'users/' . substr($_SESSION['login'], 0, 2) . "/{$_SESSION['login']}/upload/";
if (isset($params['IDResource']) && is_array($params['IDResource'])) {
foreach ($params['IDResource'] as $resource) {
$resources[uploader::sgetTypeUpload($resource)] = $resource;
}
if (isset($resources['portfolio'])) {
$mainFile = current(uploader::sgetFiles($resources['portfolio']));
if (!empty($mainFile)) {
// Если что-то загрузили и не удаляли
$MFile = uploader::remoteCopy($mainFile['id'], 'file', $dir, false);
uploader::sclear($resources['portfolio']);
// Делаем отдельное привью из оригинальной большой картинки -- @todo ХЗ зачем но раньше так делали
if (in_array($MFile->getext(), $GLOBALS['graf_array']) && $MFile->getext() != 'swf') {
$MFile->resizeImage($dir . 'tn_' . $MFile->name, self::PREVIEW_MAX_WIDTH, self::PREVIEW_MAX_HEIGHT, 'auto', true);
}
$update['pict'] = $MFile->name;
$is_remove_main_file = true;
}
}
if (isset($resources['pf_preview'])) {
$preview = current(uploader::sgetFiles($resources['pf_preview']));
if (!empty($preview)) {
// Если что-то загрузили и не удаляли
$PFile = uploader::remoteCopy($preview['id'], 'file', $dir, false, 'sm_f_');
uploader::sclear($resources['pf_preview']);
$update['prev_pict'] = $PFile->name;
$is_remove_preview_file = true;
}
}
}
if ($params['main_file'] == '' && !isset($MFile)) {
// Удаляем файл
$update['pict'] = '';
$is_remove_main_file = true;
}
if ($params['preview_file'] == '' && !isset($PFile)) {
// Удаляем файл
$update['prev_pict'] = '';
$is_remove_preview_file = true;
}
if ($is_remove_main_file) {
$cf = new CFile();
$cf->Delete(0, $dir, $params['old_main_file']);
// удаляем ранее загруженный файл
}
if ($is_remove_preview_file) {
$cf = new CFile();
$cf->Delete(0, $dir, $params['old_preview_file']);
// удаляем ранее загруженный файл
}
if (empty($error)) {
$wmodeAllowValues = array('direct', 'gpu', 'window');
if (!in_array($params['wmode'], $wmodeAllowValues)) {
$params['wmode'] = 'window';
}
if ($work_id) {
$update['edit_date'] = 'NOW()';
$result = $DB->update('portfolio', $update, 'id = ?i AND user_id = ?i', $work_id, $uid);
} else {
$update['user_id'] = $uid;
$result = $DB->insert('portfolio', $update, 'id');
$work_id = $result;
}
if ($MFile && $MFile->getext() == 'swf' && $MFile->id) {
$res = $DB->query('UPDATE swf_file_params SET wmode = ?, table_name = ? WHERE fid = ?i', $params['wmode'], $MFile->table, $MFile->id);
if (pg_affected_rows($res) == 0) {
$res = $DB->query('INSERT INTO swf_file_params (fid, wmode, table_name) VALUES(?i, ?, ?)', $MFile->id, $params['wmode'], $MFile->table);
}
} else {
if (!$MFile) {
$ext = preg_replace("#.*(\\.[a-zA-Z0-9]*)\$#", '$1', $params['main_file']);
if (strtolower($ext) == '.swf') {
$res = $DB->query('UPDATE swf_file_params SET wmode = ? WHERE fid = (SELECT id FROM file WHERE fname = ?)', $params['wmode'], $params['main_file']);
//.........这里部分代码省略.........
示例15: projects_offers_dialogue
if ($cid) {
$is_edit = true;
$pod = new projects_offers_dialogue();
$project_dialogue = $pod->GetDialogueForOffer($po_id);
$edit_dialog = $project_dialogue[count($project_dialogue) - 1];
}
if ($action == 'create') {
if (!trim($_POST['po_text'])) {
$error = 'Невозможно отправить пустое сообщение.';
}
//Не позволяем производить действия с заблокированным проектом
if (projects::CheckBlocked(intval($_POST['prj_id']))) {
return;
} elseif (intval($_SESSION['uid'])) {
$po_id = intval($_POST['po_id']);
$po_text = antispam(trim($_POST['po_text']));
$po_commentid = intval($_POST['po_commentid']);
$user_id = get_uid(false);
$user = new users();
$user_name = $user->GetName($user_id, $error);
$project_dialogue = $pod->GetDialogueForOffer($po_id);
$project = $pod->GetProjectFromDialogue($po_id);
if (count($project_dialogue)) {
for ($i = count($project_dialogue) - 1; $i >= 0; --$i) {
if ($project_dialogue[$i]['user_id'] != $user_id) {
$to_user_name = $project_dialogue[$i]['login'];
break;
}
}
}
if (is_emp()) {