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; }
/** * @see parent::initHtmlData */ public function initHtmlData() { require_once $_SERVER['DOCUMENT_ROOT'] . '/classes/projects.php'; require_once $_SERVER['DOCUMENT_ROOT'] . '/classes/stop_words.php'; $pid = $this->parseLinks(); if ($pid) { $pid = array_map('intval', $pid); $stop_words = new stop_words(); $projects = new_projects::getProjectsById($pid); foreach ($projects as $i => $project) { $sTitle = $project['moderator_status'] === '0' && $project['kind'] != 4 && $project['is_pro'] != 't' ? $stop_words->replace($project['name']) : $project['name']; $projects[$i]['sTitle'] = reformat2($sTitle, 30, 0, 1); $projects[$i]['friendly_url'] = $this->getLinkById($project['id']); $projects[$i]['str_cost'] = $project['cost'] ? CurToChar($project['cost'], $project['currency']) . getPricebyProject($project['priceby']) : 'По договоренности'; } $this->html_data = $projects; } }
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') { require_once $_SERVER['DOCUMENT_ROOT'] . '/classes/stop_words.php'; $stop_words = new stop_words(hasPermissions('projects')); $sPostText = $stop_words->replace($sPostText); } } if (!$po_commentid) { $objResponse->append('po_dialogue_talk_' . $po_id, 'innerHTML', '<div style="margin-bottom:8px;font-size:100%;"><span class="' . (is_emp() ? 'emp' : 'frl') . 'name11"><a href="/users/' . get_login($user_id) . '/" class="' . (is_emp() ? 'emp' : 'frl') . 'name11" title="' . $user_name['uname'] . ' ' . $user_name['usurname'] . '">' . $user_name['uname'] . ' ' . $user_name['usurname'] . '</a> [<a href="/users/' . $user_name['login'] . '/" class="' . (is_emp() ? 'emp' : 'frl') . 'name11" title="' . $user_name['login'] . '">' . $user_name['login'] . '</a>]</span> <span id="po_date_' . $last_comment . '">[' . strftime('%d.%m.%Y | %H:%M', time()) . ']</span><br /><div id="po_comment_' . $last_comment . '">' . reformat($sPostText, 50, 0, 0, 1) . '</div><div id="po_comment_original_' . $last_comment . '" style="display:none;">' . str_replace(' ', ' ', reformat($po_text, 1000, 0, 1)) . '</div></div>'); // $objResponse->call('resetfld', $po_id); $objResponse->script('dialogue_count[' . $po_id . '] = ' . (count($project_dialogue) + 1)); } else { $objResponse->assign('po_comment_' . $po_commentid, 'innerHTML', reformat($sPostText, 50, 0, 0, 1)); $objResponse->assign('po_comment_original_' . $po_commentid, 'innerHTML', str_replace(' ', ' ', reformat($po_text, 1000, 0, 1))); $objResponse->assign('po_date_' . $po_commentid, 'innerHTML', dateFormat('[d.m.Y | H:i]', date('Y-m-d H:i:s'))); } $objResponse->call('answer', $po_id); if ($to_user_name && $project['id'] && $project['name'] && !$po_commentid) { /*require_once($_SERVER['DOCUMENT_ROOT'] . "/classes/smail.php"); $smail = new smail(); if ($project['user_id'] == $user_id) { $error = $smail->NewPrjMessageOnOfferFrl($user_name['login'], $project['id'], $project['name'], $to_user_name, $po_text); } else { $error = $smail->NewPrjMessageOnOfferEmp($user_name['login'], $project['id'], $project['name'], $to_user_name, $po_text); }*/ } } else { $objResponse->alert('Ошибка сохранения.'); } } else { $objResponse->alert('Ошибка сохранения. Авторизируйтесь на сайте.'); } return $objResponse; }
/** * Редактирование комментария. * * @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; }
public function loadProfessionUserKeyword($uid, $prof_id) { require_once $_SERVER['DOCUMENT_ROOT'] . "/classes/kwords.php"; $html_keyword_js = '<a href="/freelancers/?word=$1" class="inherit">$2</a>'; $html_keyword = preg_replace('/\\$\\d/', '%s', $html_keyword_js); $stop_words = new stop_words(hasPermissions('users')); $wkeys = kwords::getUserKeys($uid, $prof_id); $modkey = kwords::isModerUserKeys($uid, $prof_id); $kword_count = 0; $c = 0; if ($wkeys) { $links_keyword = array(); $links_keyword_hide = array(); $kword_count = count($wkeys); foreach ($wkeys as $key) { $sKey = stripslashes($modkey ? $stop_words->replace($key, 'plain') : $key); if (++$c > kwords::MAX_KWORDS_PORTFOLIO) { $links_keyword_hide[] = urlencode($sKey) . ',,' . change_q_x($sKey, true, false); } else { $links_keyword[] = sprintf($html_keyword, urlencode($sKey), change_q_x($sKey, true, false)); } } $wkeys['links_keyword'] = $links_keyword; $wkeys['links_keyword_hide'] = $links_keyword_hide; $wkeys['count'] = $kword_count; } return $wkeys; }
<?php print view_error4('Внимание! Вы отображаетесь в каталоге только по своей специализации. Чтобы увеличить количество специализаций, необходимо перейти на аккаунт ' . view_pro()); ?> <?php } } ?> <script type="text/javascript">var HTML_KWORDTMPL='<?php echo $html_keyword_js; ?> '</script> <div class="prtfl c"> <div class="prtfl-r"><a name="spec_text"></a> <?php $sSpecText = $user->isChangeOnModeration($user->uid, 'spec_text') && $user->is_pro != 't' ? $stop_words->replace($user->spec_text) : $user->spec_text; ?> <p><?php echo reformat2($sSpecText, 50, 0, 0); ?> </p> <?php if (hasPermissions('users')) { ?> <a class="admn" href="javascript:void(0);" onclick="adm_edit_content.editContent('admEditProfile', '<?php echo $user->uid; ?> _0', 0, '', {'change_id': 0, 'ucolumn': 'spec_text', 'utable': 'freelancer'})">Редактировать</a> <?php }
if ($project['kind'] == 9 && (!$uid || !(hasPermissions('projects') || $project['user_id'] == $uid || $project['exec_id'] == $uid || projects_offers::IsPrjOfferExists($project['id'], get_uid(false))))) { include ABS_PATH . '/404.php'; exit; } //404 если проект заблокирован if ($project['is_blocked'] && $_SESSION['uid'] != $project['user_id'] && !hasPermissions('projects')) { include ABS_PATH . '/prj_blocked.php'; exit; } // Платные ответы $answers = new projects_offers_answers(); $answers->GetInfo($uid); $pr_emp = is_emp($project['role']); require_once $_SERVER['DOCUMENT_ROOT'] . '/classes/stop_words.php'; $stop_words = new stop_words(hasPermissions('projects')); $title = $project['moderator_status'] === '0' && $project['kind'] != 4 && $project['is_pro'] != 't' ? $stop_words->replace($project['name'], 'plain', false) : $project['name']; $sTitle = htmlspecialchars($title, ENT_QUOTES, 'CP1251', false); if ($project['cost'] != 0) { switch ($project['priceby']) { case '1': $priceby_str = '/час'; break; case '2': $priceby_str = '/день'; break; case '3': $priceby_str = '/месяц'; break; case '4': $priceby_str = '/проект'; break;
echo sbr::NEW_TEMPLATE_SBR; ?> /<?php echo ($prj['sbr_emp_id'] == $_SESSION['uid'] || $prj['sbr_frl_id'] == $_SESSION['uid'] || hasPermissions('projects') ? "?id={$prj['sbr_id']}" : '') . (hasPermissions('projects') ? "&access=A&E={$user->login}" : ''); ?> "><img src="/images/shield_sm.gif" alt="" /></a><?php } ?> <?php if ($prj['ico_closed'] == 't') { ?> <img src="/images/ico_closed.gif" alt="Проект закрыт" /><?php } ?> <?php $sTitle = $prj['moderator_status'] === '0' && $prj['kind'] != 4 && $user->is_pro != 't' ? $stop_words->replace($prj['name']) : $prj['name']; ?> <a id="prj_name_<?php echo $prj["id"]; ?> " name="/proonly.php" href="<?php echo $blink; ?> " class="fl2_offer_header" title=""><?php echo reformat($sTitle, 100, 0, 1); ?> </a> </div> <?php $sDescr = $prj['moderator_status'] === '0' && $prj['kind'] != 4 && $user->is_pro != 't' ? $stop_words->replace($prj['descr']) : $prj['descr']; if (is_new_prj($prj['post_date'])) {
/** * Функция генерации ленты проектов. * * @param int $num_prjs проектов на странице * @param array $projects массив проектов (результат работы projects::GetProjects()) * @param int $kind закладка * @param int $page номер страницы * @param inetger $is_ajax если функция вызвана через ajax @see JS seo_print(); * * @return HTML */ public function ShowProjects($num_prjs, $projects, $kind, $page, $filter, $is_ajax) { $this->projects = $projects; $this->num_prjs = $num_prjs; $this->kind = $this_kind = $kind; $this->page = $this_page = $page == '' ? 1 : $page; $this->pages = ceil($this->num_prjs / new_projects::PAGE_SIZE); $this->filter = $this_filter = (int) ($filter && $filter['active'] == 't'); $this->uid = $this_uid = get_uid(false); $this->pro_last = $this_pro_last = $_SESSION['pro_last']; $this->is_pro = $this_is_pro = payed::CheckPro($_SESSION['login']); $this->edit_mode = $this_edit_mode = hasPermissions('projects'); if ($this->uid) { $this->user_role = $this_user_role = $_SESSION['role']; } $outHTML = ''; $outHTML .= $this->ShowHeader(); $list = array(); if ($projects) { require_once $_SERVER['DOCUMENT_ROOT'] . '/classes/stop_words.php'; $stop_words = new stop_words(hasPermissions('projects')); foreach ($projects as $i => $project) { $this->project = $project; $list[$i] = $project; if ($this->edit_mode || $this->project['kind'] == 2 || $this->project['user_id'] == $this->uid || $this->project['offer_id'] || $this->pro_last) { $this->show_data = 1; $list[$i]['show_data'] = 1; } else { $this->show_data = 0; $list[$i]['show_data'] = 0; } $descr = $list[$i]['descr']; $descr = $list[$i]['moderator_status'] === '0' && $list[$i]['kind'] != 4 && $list[$i]['is_pro'] != 't' ? $stop_words->replace($descr) : $descr; $descr = preg_replace('/^ /', "", $descr); $descr = preg_replace("/(\n) /", "\$1", $descr); $descr = LenghtFormatEx($descr, 180); $descr = htmlspecialchars($descr, ENT_QUOTES, 'CP1251', false); $descr = reformat($descr, 50, 1, 0, 1); $descr = preg_replace("//", ' ', $descr); $list[$i]['name'] = htmlspecialchars($list[$i]['name'], ENT_QUOTES, 'CP1251', false); $list[$i]['descr'] = $descr; $list[$i]['t_is_payed'] = $this->project['payed'] && $this->project['kind'] != 2 && $this->project['kind'] != 7 && $this->project['kind'] != 4; $list[$i]['t_is_contest'] = $this->project['kind'] == 2 || $this->project['kind'] == 7; $list[$i]['t_pro_only'] = $this->project['pro_only'] == 't'; $list[$i]['t_verify_only'] = $this->project['verify_only'] == 't'; $list[$i]['t_prefer_sbr'] = $this->project['prefer_sbr'] == 't'; $list[$i]['priceby'] = $this->project['priceby']; $list[$i]['t_is_adm'] = hasPermissions('projects'); $list[$i]['t_is_ontop'] = strtotime($this->project['top_to']) >= time(); $list[$i]['unread'] = (int) $this->project['unread_p_msgs'] + (int) $this->project['unread_c_msgs'] + (int) $this->project['unread_c_prjs']; $list[$i]['t_is_proonly'] = $this->project['pro_only'] == 't' && !$_SESSION['pro_last'] && !$this->edit_mode && $this->uid != $this->project['user_id']; $list[$i]['friendly_url'] = getFriendlyURL('project', array('id' => $this->project['id'], 'name' => $this->project['name'])); $attaches = projects::GetAllAttach($this->project['id']); $attaches = !$attaches ? array() : $attaches; foreach ($attaches as $k => $a) { $a['virus'] = is_null($a['virus']) ? $a['virus'] : bindec($a['virus']); $attaches[$k] = $a; } $list[$i]['attaches'] = $this->project['attaches'] = $attaches; $list[$i]['view_cnt'] = projects::getProjectViews($this->project['id']); } } elseif ($page == 1) { $outHTML .= '<div class="project-preview">Ничего не найдено</div>'; } $kind = $this->kind; require_once $_SERVER['DOCUMENT_ROOT'] . '/classes/professions.php'; switch ($kind) { case 0: case 1: $rss_link = 'projects.xml'; break; case 2: $rss_link = 'competition.xml'; break; case 4: $rss_link = 'office.xml'; break; case 6: $rss_link = 'pro.xml'; break; case 5: $rss_link = 'all.xml'; break; default: $rss_link = 'all.xml'; break; } $isPrjOpened = isset($_COOKIE['isPrjOpened']) ? $_COOKIE['isPrjOpened'] : true; ob_start(); include ABS_PATH . $this->template; $out = ob_get_clean(); if ($page <= $this->pages) { $out .= '<!--data_found-->'; } return $out; }
$team = new teams(); $stop_words = new stop_words(hasPermissions('projects')); stat_collector::setStamp(); foreach ($f_offers as $i => $offer) { unset($user_ago); if ($offer['birthday'] !== NULL && $offer['birthday'] > "1910-01-01") { $user_ago = ElapsedYears(strtotime($offer['birthday'])); } $info_for_reg = @unserialize($offer['info_for_reg']); $offer['sf'] = abs($offer['se']) + abs($offer['sg']) + abs($offer['sl']); $offer['ef'] = abs($offer['e_plus']) + abs($offer['e_null']) + abs($offer['e_minus']); if (get_uid(false)) { $offer['is_fav'] = $team->teamsIsInFavorites($_SESSION['uid'], $offer['uid']); } $sTitle = htmlspecialchars($offer['title']); $sTitle = $offer['moderator_status'] === '0' && $offer['is_pro'] != 't' ? $stop_words->replace($sTitle) : $sTitle; $sTitle = reformat($sTitle, 35, 0, 1); $sDescr = htmlspecialchars($offer['descr']); $sDescr = $offer['moderator_status'] === '0' && $offer['is_pro'] != 't' ? $stop_words->replace($sDescr) : $sDescr; $sDescr = reformat($sDescr, 50); ?> <a name="o_<?php echo $offer['id']; ?> "> </a> <div class="b-freelancer b-freelancer_bordbot_f0 b-freelancer_padbot_30 b-freelancer_padtop_20"> <span class="b-freelancer__date b-freelancer__date_float_right b-freelancer__date_padtop_10 b-freelancer__date_padleft_10"><?php echo date("d.m.Y в H:i", strtotime($offer['post_date'])); ?> </span>
$sStopRegex = clearInputText(__paramInit('array', null, 'regex', '')); $sTestText = clearInputText(__paramInit('array', null, 'test', '')); $sBadRegex = stop_words::validateAdminStopRegex($sStopRegex); if (!$sBadRegex) { $action = __paramInit('string', null, 'action', ''); if ($action == 'update') { if (stop_words::updateAdminStopRegex($sStopRegex)) { $_SESSION['admin_stop_words_success'] = TRUE; header('Location: /siteadmin/stop_words/'); exit; } else { $error = 'Ошибка при сохранеии стоп-слов'; } } else { $stop_words->setStopRegex($sStopRegex); $sUserMode = $stop_words->replace($sTestText, 'html', false); $sAdminMode = $stop_words->replace($sTestText, 'html', true); } } else { $error = 'Выражение "' . $sBadRegex . '" не корректно'; } } else { $sStopRegex = implode("\n", stop_words::getAdminStopRegex(false)); } } $menu_item = 14; $rpath = '../../'; $js_file = array('stop_words_admin.js'); $css_file = array('moderation.css', 'nav.css'); $header = $rpath . 'header.php'; $inner_page = "index_inner.php";
?> </td> <td></td> </tr> <?php } ?> <?php if ($val = $user->compname) { ?> <tr> <th>Компания:</th> <td><a name="compname"></a><?php $sResume = $user->isChangeOnModeration($user->uid, 'compname') && $user->is_pro != 't' ? $stop_words->replace($user->compname) : $user->compname; echo $sResume; if (hasPermissions('users')) { ?> <a class="admn" href="javascript:void(0);" onclick="adm_edit_content.editContent('admEditProfile', '<?php echo $user->uid; ?> _0', 0, '', {'change_id': 0, 'ucolumn': 'compname', 'utable': 'employer'})">Редактировать</a> <?php } ?> </td> <td></td> </tr> <?php }
?> "></a> <?php echo view_avatar($ps['user_login'], $ps['user_photo']); ?> </td> <td style="padding:0 0 0 10px"> <?php echo __prntUsrInfo($ps, 'user_') . ' ' . dateFormat('[d.m.Y | H:i]', $ps['posted_time']); ?> <div id="mass_txt_<?php echo $ps['id']; ?> " style="padding-top:5px"> <?php $msg_text = !$om && $ps['user_is_pro'] != 't' ? $stop_words->replace($ps['msgtext']) : $ps['msgtext']; ?> <?php echo reformat($msg_text, 30, 0, 0, 1); ?> </div> <div style="margin-top: 10px"> <?php if (!empty($ps['files'])) { $fl = '<div class="attachments attachments-p">'; foreach ($ps['files'] as $file) { $fl .= '<div class = "flw_offer_attach">' . viewattachLeft(null, $file['fname'], $file['path'], $file, 0, 0, 0, 0, 0, 0, $nn) . '</div>'; } $fl .= '</div>'; echo '<b>Файлы:</b></br>' . $fl; }
$logoPrc = !false * (new_projects::PRICE_LOGO + $addedPrc) * (1 - (int) $project['payed_items'][new_projects::PAYED_IDX_LOGO]); $topDays = $tmpPrj->getTopDays(); $remTPeriod = $tmpPrj->getRemainingTopPeriod($remTD, $remTH, $remTM, $remtverb); $addedTD = $tmpPrj->getAddedTopDays(); $pex = project_exrates::GetAll(false); $cex = array(project_exrates::USD, project_exrates::EUR, project_exrates::RUR, project_exrates::FM); $PROprice = 0; $price = $tmpPrj->getPrice($items, $PROprice) + $logoPrc * !!$error['logo']; $PROprice += ($logoPrc - $addedPrc) * !!$error['logo']; $contestPriceTop = is_pro() ? new_projects::PRICE_CONTEST_TOP1DAY_PRO : new_projects::PRICE_CONTEST_TOP1DAY; $nTopPrice = $tmpPrj->isKonkurs() ? $contestPriceTop + $addedPrc : (is_pro() ? new_projects::PRICE_TOP1DAYPRO : new_projects::PRICE_TOP1DAY) + $addedPrc; $nTopProPrice = $tmpPrj->isKonkurs() ? new_projects::PRICE_CONTEST_TOP1DAY_PRO : new_projects::PRICE_TOP1DAYPRO; if (isset($project['descr'])) { require_once $_SERVER['DOCUMENT_ROOT'] . '/classes/stop_words.php'; $stop_words = new stop_words(false); $project['descr'] = $project['kind'] != 4 && !is_pro() ? $stop_words->replace($project['descr']) : $project['descr']; $project['descr'] = preg_replace("/^ /", "", $project['descr']); $project['descr'] = preg_replace("/(\n) /", "\$1", $project['descr']); $project['descr'] = reformat($project['descr'], 100, 0, 0, 1); $project['descr'] = preg_replace("//", " ", $project['descr']); } require_once $_SERVER['DOCUMENT_ROOT'] . "/classes/project_exrates.php"; $project_exRates = project_exrates::GetAll(); $exch = array(1 => 'FM', 'USD', 'Euro', 'Руб'); $translate_exRates = array(0 => 2, 1 => 3, 2 => 4, 3 => 1); ?> <script> var ge=function(id){return document.getElementById(id);} var S=<?php echo round($price); ?>
$ppAd['ad_img_file_name'] = $ppAd['photo']; $adUid = $ppAd['uid']; $adLogin = $toppay_usr[$adUid]['login']; $adLink = '/users/' . $toppay_usr[$adUid]['login'] . '/?f=6&stamp=' . $_SESSION['stamp']; $cls = "b-carusel__pic"; if ($ppAd['ad_img_file_name'] && $ppAd['ad_img_file_name'] != '/images/temp/small-pic.gif') { $adImg = '<img width=50 height=50 src="' . WDCPREFIX . '/users/' . $adLogin . '/foto/' . $ppAd['ad_img_file_name'] . '" alt="' . $adLogin . '" class="' . $cls . '" border="0" />'; } else { $adImg = '<img width=50 height=50 src="' . WDCPREFIX . '/images/user-default-small.png" class="' . $cls . '" border="0" />'; } if (is_array($pp_h[$adUid])) { $adHeader = $ppAd['ad_header'] ? $ppAd['ad_header'] : $pp_h[$adUid]['title']; $adHeaderDots = strlen(html_entity_decode($adHeader, ENT_QUOTES)) > 22; $adHeader = htmlentities(substr(html_entity_decode($adHeader, ENT_QUOTES), 0, 22), ENT_QUOTES, 'CP1251'); $adText = $ppAd['ad_text'] ? $ppAd['ad_text'] : $pp_h[$adUid]['descr']; $adText = $pp_h[$adUid]['on_moder'] ? $stop_words->replace($adText) : $adText; $adText = reformat2($adText, 22, 1, 1); } ?> <li class="b-carusel__item"> <?php if (is_array($pp_h[$adUid])) { ?> <a class="b-carusel__piclink" href="<?php echo $adLink; ?> " onClick="<?php echo $yaM; ?> "> <?php
/** * Возвращает несколько (@see self::HISTORY_COUNT) последних сообщений с контактом. * * @param stdClass $attr - список параметров * mixed uid: uid пользователя или массив с uid'ами историю с которым нужно получить * @param bool - если true - разрешено передавать в качестве uid массив, если false - только одного * * @return array - массив с историей */ protected function _ceHistory($attr, $mmode = false) { $messages = new messages(); $stopWords = new stop_words(false); $res = array(); $c = 0; if ($mmode) { $uids = $attr->uid; $oneUser = false; $maxid = 0; } else { $uids = intval($attr->uid); $oneUser = true; $maxid = isset($attr->maxid) ? intval($attr->maxid) : 0; } $rows = $messages->GetHistory($this->_uid, $uids, self::HISTORY_COUNT, $maxid); if ($rows) { for ($i = count($rows) - 1; $i >= 0; --$i) { $message = $rows[$i]['msg_text']; if ($rows[$i]['moderator_status'] === '0') { $message = $stopWords->replace($message); } $message = reformat($message, 14, 0, 0, 1); $res[$c] = array('id' => $rows[$i]['id'], 'text' => iconv('CP1251', 'UTF-8', $message), 'incoming' => $rows[$i]['from_id'] == $this->_uid ? 0 : 1, 'time' => dateFormat('Y-m-d H:i:s', $rows[$i]['post_time']), 'files' => array()); if (!$oneUser) { $res[$c]['cuid'] = $rows[$i]['to_id'] == $this->_uid ? $rows[$i]['from_id'] : $rows[$i]['to_id']; } if ($rows[$i]['files']) { foreach ($rows[$i]['files'] as $file) { if (preg_match('/^users\\/[-_a-z0-9]{2}\\/([-_a-z0-9]+)/i', $file['path'], $o)) { $res[$c]['files'][] = array('link' => WDCPREFIX . '/users/' . $o[1] . '/contacts/' . $file['fname'], 'filename' => $file['original_name']); } } } ++$c; } } return $res; }
/** * Заполняет значения в зависимости от проекта. * * @param array $project данные проекта */ public function initProject($project) { $stop_words = new stop_words(hasPermissions('projects')); $title = $project['moderator_status'] === '0' && $project['kind'] != 4 && $project['is_pro'] != 't' ? $stop_words->replace($project['name'], 'plain', false) : $project['name']; $title50 = LenghtFormatEx(trim(strip_tags($title)), 50); $title100 = LenghtFormatEx(trim(strip_tags($title)), 100); $sp = new_projects::getSpecs($project['id']); $is_spec = $sp[0]['subcategory_id'] > 0; $prof_id = $is_spec ? $sp[0]['subcategory_id'] : $sp[0]['category_id']; $this->seo_value = new SeoValues(); $this->seo_value->initCard($prof_id, $is_spec); $this->title = sprintf(SeoText::PRJ_TITLE, $title50, $this->seo_value->getKey(1)); $this->description = sprintf(SeoText::PRJ_DESC, $title100, $this->seo_value->getKeysString(3)); $this->keywords = sprintf(SeoText::PRJ_KEY, $this->seo_value->getFTitle(1), $this->seo_value->getKeysString()); $this->footer_text = sprintf(SeoText::PRJ_TAGS, $this->seo_value->getFTitle(1), $this->seo_value->getKeysString()); }
echo $user->uid; ?> _0', 0, '', {'change_id': 0, 'ucolumn': 'resume_file', 'utable': 'freelancer'})">Редактировать</a> <?php } ?> </td> <td style="width:19px; height:20px" class="brdtop"> </td> </tr> </table> <table width="100%" cellspacing="0" cellpadding="19" class="b-information-clause-content"> <tr> <td style="padding:19px"> <?php $sResume = $user->isChangeOnModeration($user->uid, 'resume') && $user->is_pro != 't' ? $stop_words->replace($user->resume) : $user->resume; ?> <?php echo $user->resume ? reformat($sResume, 90) : '<br />'; ?> <?php if (hasPermissions('users')) { ?> <br/><br/> <a class="admn" href="javascript:void(0);" onclick="adm_edit_content.editContent('admEditProfile', '<?php echo $user->uid; ?> _0', 0, '', {'change_id': 0, 'ucolumn': 'resume', 'utable': 'freelancer'})">Редактировать</a> <?php } ?>
[внесены изменения: <?php echo date("d.m.Y | H:i]", strtotimeEx($frase['modified'])); } else { ?> Отредактировано модератором <?php echo date("[d.m.Y | H:i]", strtotimeEx($frase['modified'])); } } ?> <br /> <?php if ($login == 'admin') { $msg_text = reformat($frase['msg_text'], 60, 0, -1, 1); } else { if ($frase['moderator_status'] === '0' && $frase['to_id'] && !in_array($user->login, $userNotBeSpam)) { $msg_text = $stop_words->replace($frase['msg_text']); } elseif ($frase['deleted']) { $msg_text = '[Сообщение удалено модератором]'; if ($frase['from_id'] == get_uid(false) && strlen($frase['reason'])) { $msg_text .= '<br/>Причина: ' . $frase['reason']; } } else { $msg_text = $frase['msg_text']; } $msg_text = reformat($msg_text, 50, 0, -($is_chuck == 't'), 1); } $mask = array('%USER_NAME%', '%USER_SURNAME%', '%USER_LOGIN%', '%URL_PORTFOLIO%', '%URL_LK%', '%URL_BILL%'); if (!$is_my) { $user_link = "<a href='{$GLOBALS['host']}/users/{$_SESSION['login']}/portfolio/' target='_blank'>{$_SESSION['name']} {$_SESSION['surname']} [{$_SESSION['login']}]</a>"; $url_lk = "<a href='{$GLOBALS['host']}/users/{$_SESSION['login']}/' target='_blank'>{$_SESSION['name']} {$_SESSION['surname']} [{$_SESSION['login']}]</a>"; $url_bill = "<a href='{$GLOBALS['host']}/users/{$_SESSION['login']}/bill/' target='_blank'>{$_SESSION['name']} {$_SESSION['surname']} [{$_SESSION['login']}]</a>";