Example #1
0
/**
 * @deprecated #0015627
 */
function AddOpinion($source_uid, $dest_uid, $message, $rating, $counter, $from = 'frl')
{
    return false;
    $source_uid = get_uid(false);
    $objResponse = new xajaxResponse();
    $message = trim($message);
    if (!in_array($rating, array(-1, 0, 1))) {
        $objResponse->assign('rating_error', 'innerHTML', 'Вы не выбрали категорию отзыва');
    } elseif (opinions::CheckUserCanPost($source_uid, $dest_uid) != 0) {
        // левый пользователь
    } elseif ($message == '') {
        $objResponse->script("opinionFormError('error_msg');");
    } elseif (strlen($message) > opinions::$opinion_max_length) {
        $objResponse->script("opinionMaxLengthError('msg', " . opinions::$opinion_max_length . ');');
    } else {
        $message = str_replace('&', '&', $message);
        $message = stripslashes($message);
        $message = change_q_x($message, FALSE, TRUE, '', false, false);
        $error = opinions::NewMsg($source_uid, $dest_uid, $message, $rating, getRemoteIP(), $new_id);
        if (!$error) {
            $msg = opinions::GetLastMessage($source_uid, $dest_uid);
            if ($msg) {
                $user = new users();
                $user->GetUserByUID($dest_uid);
                $objResponse->remove('form_container');
                if (is_emp() && $from == 'frl' || !is_emp() && $from == 'emp') {
                    $from = $from == 'frl' ? 'emp' : 'frl';
                    $objResponse->redirect("/users/{$user->login}/opinions/?from={$from}#o_{$new_id}");
                    return $objResponse;
                }
                $objResponse->prepend('messages_container', 'innerHTML', opinions::printTheme($msg, $from, $counter, $user));
                $objResponse->prepend('messages_container', 'innerHTML', opinions::printAddForm($source_uid, $dest_uid, $from));
                $nt = $rating == 1 ? 'plus' : ($rating == -1 ? 'minus' : 'neitral');
                $objResponse->call('opinionChConuters', NULL, 'ops-' . $from . $nt);
                $objResponse->script("opinionCheckMaxLengthStop('msg');");
                $objResponse->assign('no_messages', 'innerHTML', '');
            } else {
                $objResponse->script("alert('" . serialize($msg) . "')");
            }
        } else {
            $objResponse->script("alert('" . $error . "')");
        }
    }
    return $objResponse;
}
Example #2
0
    /**
     * Функция генерирует HTML для формы добавдения отзыва
     * 
     * @param integer $sid пользоваль, от которого будут осталяться сообщения
     * @param integer $uid пользоваль, которому будут осталяться сообщения
     * @param string $from (frl|emp|my|norisk)
     * @return string html формы
     * 
     * 
     * @deprecated #0015627
     */
    public static function printAddForm($sid, $uid, $from)
    {
        return false;
        @session_start();
        if ($sid == $uid || in_array($from, array('my', 'norisk1'))) {
            return '';
        }
        $can_post = 1;
        if ($sid) {
            $can_post = opinions::CheckUserCanPost($sid, $uid);
        }
        if ($from == 'norisk') {
            $can_post = 0;
        }
        $html = '';
        if (!$can_post) {
            if ($from == 'norisk') {
                // форма для СБР
                $html = '<div id="rating-tpl" style="display: none; float: right; margin: 0pt 0pt 0pt 25px; width: 270px;">
                        <p style="margin: 0 0 11px 0;">Пожалуйста оцените сотрудничество с фрилансером по трем критериям.</p>
                    </div>
                    <div id="message-tpl" style="margin: 0pt 295px 0pt 0pt; display:none;">
                        <form method="POST">
						<div>
                            <input type="hidden" name="id" value="" />
                            <input type="hidden" name="stage_id" value="" />
                            <input type="hidden" name="p_rate" value="" />
                            <input type="hidden" name="n_rate" value="" />
                            <input type="hidden" name="a_rate" value="" />
                            <input type="hidden" name="login" value="" />
                            <textarea name="to_user_feedback" rows="5" cols="20" style="width:95%;height:95px;" onkeydown="check_length(this)"></textarea>
                            <div class="errorBox" style="display:none;">
                                <img width="22" height="18" src="/images/ico_error.gif" alt="" />
                                <span></span>
                            </div>
                            <div style="padding: 5px 0 0 0;">
                                <input type="button" value="Сохрaнить" style="overflow: visible; padding: 0 10px; font-weight: 900; color: #333;" onclick="saveRating()" />
                                <input type="button" value="Отменить" style="overflow: visible; padding: 0 10px; color: #333;" onclick="closeForm()" />
                            </div>
							</div>
                        </form>
                    </div>';
            } else {
                // Форма для простого отзыва
                $html .= '
<form action="" method="post" name="frm_add" id="frm_add">
<div>
                        <input type="hidden" name="r" value="' . $_SESSION['rand'] . '" />
                        <input type="hidden" name="rating" value="" id="rating_add" />
                        <input type="hidden" name="action" id="action_com" value="new" />

                        <div class="ops-add-in">
                            <a class="btn btn-green3 ops-frm-toggler" href="javascript:void(0);" onclick="showOpinionsForm(this)" ><span class="btn-lc"><span class="btn-m"><span class="btn-txt">Выразить мнение</span></span></span></a>
                            <div class="ops-add-full " id="add_form_cont">
                                <p>Если вам приходилось работать с этим человеком, вы можете оставить мнение о нем как о личности и профессионале. Пожалуйста, внимательно отнеситесь к этому полю, так как удалить или изменить мнение сможете только вы. Помните, что своими словами вы влияете на профессиональную репутацию пользователя.</p>
                                <div class="form ops-form">
                                    <div class="form-el" style="height:20px">
                                        <label>Характер мнения:</label>
                                        <ul class="ops-type" id="ops-type">
                                            <li>
												<a rel="1" onclick="setRating(this); return false" href="#" class="lnk-dot-green">Положительный</a>
											</li>
											<li>
												<a rel="0" onclick="setRating(this); return false" href="#" class="lnk-dot-666">Нейтральный</a>
											</li>
											<li>
												<a rel="-1" onclick="setRating(this); return false" href="#" class="lnk-dot-red">Отрицательный</a>
											</li>
                                        </ul>
                                    </div>
                                    <div class="form-el"  style="font-size:10px">
                                        <span class="no-more">Не более ' . self::$opinion_max_length . ' символов</span>
                                        <textarea rows="5" cols="20" id="msg" name="msg" onkeydown="$(\'error_msg\').set(\'html\', \'\');"></textarea>
                                        <div id="error_msg"></div>
                                    </div>
                                    <div id="rating_error" style="display:hidden"></div>
                                                    <div class="form-btn">
                                                        <a href="javascript:void(0);" id="btn-send-opinions" class="btnr btnr-t" onclick="opinionSubmitAddForm(' . $sid . ', ' . $uid . ', \'' . $from . '\'); return false;"><span class="btn-lc"><span class="btn-m"><span class="btn-txt" id="btn">Выразить мнение</span></span></span></a>&nbsp;&nbsp;&nbsp;&nbsp;
                                                        <a href="javascript:void(0);" onclick="hideOpinionsForm(this)" class="lnk-dot-666">Отменить</a>
                                                    </div>
                                                </div>
                                            </div>
                                        </div>
										</div>
                                    </form>';
            }
            return '<div class="ops-add" id="form_container">' . $html . '</div>';
        } elseif ($can_post != 0 && $from != 'my') {
            $deny_text = "Вы не можете оставить мнение об этом пользователе:";
            $html = '
                <div class="ops-add-in"  style="font-size:12px">';
            switch ($can_post) {
                case 1:
                    $html .= view_error($deny_text . ' Вы не <a href="/registration/">зарегистрированы</a> или не авторизованы.');
                    break;
                case 2:
                    $html .= view_error($deny_text . ' С момента регистрации Вашего аккаунта прошло меньше месяца.');
                    break;
                case 3:
                    $html .= view_error('Вы уже выразили свое мнение о данном пользователе.');
                    break;
            }
            $html .= '</div>';
            if ($can_post == 3 && ($from == 'frl' && is_emp() || $from == 'emp' && !is_emp())) {
                return '';
            }
            return '<div class="ops-add" id="form_container">' . $html . '</div>';
        }
        return false;
    }