/**
  * Функция автозаполнения полей блока.
  * 
  * @return bool
  */
 public function setFieldAutoComplete()
 {
     require_once $_SERVER['DOCUMENT_ROOT'] . '/classes/projects.php';
     $projects = new_projects::getTopProjectBudget(constant(get_class($this) . '::PROJECT_KIND'), $this->getListSize());
     if ($projects) {
         foreach ($projects as $project) {
             $link[] = $GLOBALS['host'] . getFriendlyURL('project', $project['id']);
         }
         $this->initBlock($link);
         return true;
     }
     return false;
 }
示例#2
0
/**
 * Выводит дерево комментариев. Используется здесь и в xajax/contest.server.php
 * @param  integer   $pid            id проекта
 * @param  string    $name           название проекта
 * @param  array     $comments       массив с деревом комментариев (подробнее в classes/contest.php)
 * @param  boolean   $comm_blocked   автор отключил возможность оставлять комментарии?
 * @param  boolean   $project_end    проект закрыт?
 * @param  integer   $s_level        уровень вложенности комментария
 * @return string                    HTML с кнопками управления
 */
function comments($pid, $name, &$comments, $comm_blocked, $project_end, $s_level = 0)
{
    global $stop_words, $contest, $project, $session;
    static $level = 0;
    $level = ($s_level ? $s_level : $level) + 1;
    $html = '';
    $set_branch_as_read = false;
    for ($i = 0, $c = count($comments); $i < $c; $i++) {
        if (($comments[$i]['is_banned'] || $comments[$i]['usr_banned'] || $comments[$i]['user_blocked'] === 't') && !hasPermissions('projects') && !$contest->is_owner) {
            $msg = $msg2 = 'Ответ от заблокированного пользователя';
        } else {
            if (!trim($comments[$i]['deleted'])) {
                $sMsg = $comments[$i]['moderator_status'] === '0' ? $stop_words->replace($comments[$i]['msg']) : $comments[$i]['msg'];
                $msg = reformat($sMsg, 30, 0, 0, 1);
                $msg2 = reformat($comments[$i]['msg'], 30, 0, 0, 1);
            } else {
                $msg2 = $msg = "Комментарий удален модератором";
                if (hasPermissions("comments")) {
                    $moderator = '';
                    $moderatorData = new users();
                    $moderatorData->GetUserByUID($comments[$i]['deluser_id']);
                    if ($moderatorData->login) {
                        $moderator = ' ' . $moderatorData->login . ' (' . $moderatorData->uname . ' ' . $moderatorData->usurname . ') ';
                    }
                    $msg2 = $msg = $msg . " {$moderator}";
                }
                if ($comments[$i]['deluser_id'] == $comments[$i]['user_id']) {
                    $msg2 = $msg = "Комментарий удален автором";
                } else {
                    if (trim($comments[$i]['deleted_reason']) && (hasPermissions("comments") || $comments[$i]['user_id'] == get_uid(false))) {
                        $msg2 = $msg = $msg . "<div style='color:#ff0000'>Причина: " . $comments[$i]['deleted_reason'] . "</div>";
                    }
                }
            }
        }
        $a_is_banned = ($comments[$i]['is_banned'] || $comments[$i]['usr_banned']) && hasPermissions('projects');
        $html .= "\n\t\t\t<li class='thread' id='thread-{$comments[$i]['id']}'" . ($level >= 9 ? " style='margin-left: 0'" : "") . ">\n\t\t\t\t<a name='c-comment-{$comments[$i]['id']}'></a>\n\t\t\t\t<div class='comment-one" . ($comments[$i]['deleted'] || $comments[$i]['hidden'] ? " comment-deleted" : "") . "' id='comment-{$comments[$i]['id']}'>\n\t\t\t\t\t<div class='contest-ea'>" . view_avatar($comments[$i]['login'], $comments[$i]['photo'], 1) . "</div>\n\t\t\t\t\t<div class='comment-body'>\n\t\t\t\t\t\t<h3 class='username'>" . $session->view_online_status($comments[$i]['login']) . "\n\t\t\t\t\t\t\t<a href='/users/{$comments[$i]['login']}' class='" . (is_emp($comments[$i]['role']) ? 'employer-name' : 'freelancer-name') . "'>{$comments[$i]['uname']} {$comments[$i]['usurname']} [{$comments[$i]['login']}]</a>&nbsp;" . view_mark_user($comments[$i]) . "&nbsp;" . ($comments[$i]['completed_cnt'] > 0 ? '<a href="/promo/bezopasnaya-sdelka/" title="Пользователь работал через Безопасную Сделку" target="_blank"><span class="b-icon b-icon__shield b-icon_top_1"></span></a>' : '') . "\n\t\t\t\t\t\t\t<span>[" . dateFormat('d.m.Y | H:i', $comments[$i]['post_date']) . "]</span>\n\t\t\t\t\t\t\t<span id='comment-modified-{$comments[$i]['id']}'>" . ($comments[$i]['modified'] ? "[изменен " . dateFormat('d.m.Y | H:i', $comments[$i]['modified']) . "]" : '&nbsp;') . "</span>\n\t\t\t\t\t\t\t" . ($a_is_banned ? "<b style=\"color:#ff0000\">Пользователь забанен</b>" : "") . "\n\t\t\t\t\t\t</h3>\n\t\t\t\t\t\t" . ($_SESSION['uid'] && $comments[$i]['is_new'] ? "<p><img src='/images/mark-new.png' width='53' height='12' alt='новое' class='mark-new' /></p>" : "") . "\n\t\t\t\t\t\t<div id='comment-change-{$comments[$i]['id']}'>\n\t\t\t\t\t\t<p id='comment-msg-{$comments[$i]['id']}' " . ($a_is_banned ? "style='color:silver'" : "") . ".>" . $msg . "</p>\n\t\t\t\t\t\t<div id='comment-msg-original-{$comments[$i]['id']}' style='display:none'>" . $msg2 . "</div>\n\t\t\t\t\t\t<script type=\"text/javascript\">\n                        banned.addContext( 'p{$pid}c{$comments[$i]['id']}', 3, '" . HTTP_PREFIX . "{$_SERVER['HTTP_HOST']}" . getFriendlyURL("project", $pid) . "?comm={$comments[$i]['id']}#comment-{$comments[$i]['id']}', \"" . htmlspecialchars($name) . "\" );\n                        </script>\n\t\t\t\t\t\t<ul class='thread-options' id='comment-options-{$comments[$i]['id']}'>\n\t\t\t\t\t\t\t" . comment_options($pid, $comments[$i], $comm_blocked, $project_end, $level, $name) . "\n\t\t\t\t\t\t</ul>\n                        <div id='warnreason-" . $comments[$i]['id'] . "-" . $comments[$i]['user_id'] . "' style='display:none; padding: 0 0 5px 0px;'>&nbsp;</div>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t\t" . (empty($comments[$i]['comments']) ? '' : '<ul>' . comments($pid, $name, $comments[$i]['comments'], $comm_blocked, $project_end) . '</ul>') . "\n\t\t\t</li>\n\t\t";
        if ($comments[$i]['is_new']) {
            $set_branch_as_read = true;
        }
    }
    if ($set_branch_as_read) {
        $p = new projects();
        $data = array("id" => $pid, "kind" => 7, "user_id" => $project["user_id"]);
        $p->SetRead($data, get_uid(false), true);
    }
    --$level;
    return $html;
}
示例#3
0
function GetMorePrj($uid)
{
    session_start();
    $objResponse = new xajaxResponse();
    $html = '';
    require_once $_SERVER['DOCUMENT_ROOT'] . '/classes/projects_offers.php';
    $prjs = projects_offers::GetFrlOffers($uid, 'marked', NULL);
    $i = 0;
    $uid = get_uid(FALSE);
    $is_adm = hasPermissions('users');
    if ($prjs) {
        foreach ($prjs as $p) {
            $is_link = $uid > 0 && (in_array($uid, array($p['exec_id'], $p['project_user_id'], $p['offer_user_id'])) || $is_adm);
            ++$i;
            $html .= "<li><span class='prj_list_number'>{$i}.</span>";
            if ($p['kind'] == 9) {
                $html .= $is_link ? "<a href='" . getFriendlyURL('project', $p['project_id']) . "'>{$p['project_name']}</a>" : "{$p['project_name']}";
            } else {
                $html .= "<a href='" . getFriendlyURL('project', $p['project_id']) . "'>{$p['project_name']}</a>";
            }
            if ($p['position'] > 0 && $p['is_executor'] == 't') {
                //$html .= " ({$p['position']}-е место)";
            }
            if ($p['refused'] == 't') {
                $html .= "<p>Отказ: <span class='ops-minus'>" . $p['rating'] . '</span></p>';
            }
            if ($p['selected'] == 't') {
                $html .= "<p><span>Кандидат: <span class='ops-plus'>+" . $p['rating'] . '</span></p>';
            }
            if ($p['is_executor'] == 't' && $p['position'] <= 0) {
                $html .= "<p><span>Исполнитель: <span class='ops-plus'>+" . $p['rating'] . '</span></p>';
            }
            if ($p['position'] > 0) {
                $html .= "<p>{$p['position']}-е место: <span class='ops-plus'>+{$p['rating']}</span></p>";
            }
            $html .= '</li>';
        }
        $objResponse->assign('prj_list', 'innerHTML', $html);
    }
    return $objResponse;
}
示例#4
0
function quickPRJPayAccount()
{
    $objResponse = new xajaxResponse();
    $uid = get_uid(false);
    ob_start();
    require_once $_SERVER['DOCUMENT_ROOT'] . '/classes/billing.php';
    require_once $_SERVER['DOCUMENT_ROOT'] . '/classes/payed.php';
    $bill = new billing($uid);
    $billReserveId = $bill->checkoutOrder();
    $payed_sum = $bill->getOrderPayedSum();
    if ($bill->isAllowPayFromAccount()) {
        $complete = $bill->buyOrder($billReserveId);
        if ($complete) {
            $_SESSION['quickprj_ok'] = 1;
            $memBuff = new memBuff();
            $project_id = $memBuff->get('bill_ok_project_' . $uid);
            if ($project_id) {
                $is_payed = $memBuff->get('bill_ok_project_payed_' . $uid);
                if ($is_payed) {
                    $memBuff->delete('bill_ok_project_payed_' . $uid);
                    $friendly_url = "/public/?step=2&public={$project_id}";
                } else {
                    $friendly_url = getFriendlyURL('project', $project_id);
                    $_SESSION['quickprj_ok'] = 1;
                    $friendly_url .= '?quickprj_ok=1';
                }
                $objResponse->script("window.location = '{$friendly_url}';");
                $memBuff->delete('bill_ok_project_' . $uid);
            } else {
                $objResponse->script("window.location = '/?quickprj_ok=1';");
            }
        }
    }
    ob_end_clean();
    return $objResponse;
}
示例#5
0
<?php

//$page = isset($page) ? $page : 1;
$groupCommCnt = isset($groupCommCnt) ? $groupCommCnt : 0;
$comm_is_ajax = false;
if (is_array($communes) && count($communes)) {
    // начало нумерации сообществ для своей сортировки
    $comm_limit = commune::MAX_ON_PAGE;
    $comm_start_position = ($page - 1) * $comm_limit;
    $i = 0;
    foreach ($communes as $comm) {
        $i++;
        // заголовок
        $comm_url = getFriendlyURL('commune_commune', $comm['id']);
        $comm_name = "<a href='" . $comm_url . "' class='b-post__link'>" . ($search !== NULL ? highlight(reformat2($comm['name'], 25, 1, 1), $search, 20) : reformat2($comm['name'], 25, 1, 1)) . "</a>";
        $comm_descr = $search !== NULL ? highlight(reformat2($comm['descr'], 25, 1), $search) : reformat2($comm['descr'], 25, 1);
        // Сколько участников.
        $mAcceptedCnt = $comm['a_count'] - $comm['w_count'] + 1;
        // +1 -- создатель
        $mCnt = $mAcceptedCnt . ' участник' . getSymbolicName($mAcceptedCnt, 'man');
        ?>
        <div class="b-post b-post_padbot_20">
            <div class="b-post__body b-post__body_bordbot_solid_f0  b-post__body_padbot_30 b-layout">
                <table class="b-layout__table b-layout__table_width_full" cellpadding="0" cellspacing="0" border="0">
                    <tr class="b-layout__tr">
                    <?php 
        /*
                                <? if ( $sub_om == commune::OM_CM_JOINED_MY ) { ?>
                                <div class="form c-my-sort">
                                    <b class="b1"></b>
                                    <b class="b2"></b>
示例#6
0
 /**
  * Удаление или восстановление предложения (устанавливает флаг is_deleted).
  * 
  * @param int  $offer_id   ID предложения
  * @param bool $is_deleted новое значение поля is_deleted в projects_contest_offers
  *
  * @return string сообщение об ошибке или пустая строка, если все нормально
  */
 public function setOfferDeleted($offer_id, $is_deleted = false)
 {
     global $DB;
     $offer_id = intval($offer_id);
     $user_id = get_uid(false);
     if (!($offer = $this->GetOfferRow($offer_id))) {
         return 'Несуществующее предложение';
     }
     $aUser = $DB->row('SELECT f.uid, f.login, f.uname, f.usurname, 
             pco.project_id, pco.descr, p.name AS prj_name, p.user_id 
         FROM projects_contest_offers as pco  
         INNER JOIN projects p ON p.id = pco.project_id 
         INNER JOIN freelancer f ON f.uid = pco.user_id 
         WHERE pco.id=?i', $offer_id);
     if ($aUser['uid'] == $user_id || hasPermissions('projects')) {
         $deluser_id = $is_deleted ? $user_id : null;
         $sModer = '';
         $sql = '';
         if ($deluser_id) {
             $sModer = ' , moderator_status = ' . ($aUser['uid'] != $user_id ? $user_id : 'NULL') . ' ';
             require_once $_SERVER['DOCUMENT_ROOT'] . '/classes/user_content.php';
             $sql .= $DB->parse('DELETE FROM moderation WHERE rec_id = ?i AND rec_type = ?i;', $offer_id, user_content::MODER_PRJ_OFFERS);
         }
         if ($aUser['uid'] == $user_id && !hasPermissions('projects') && !is_pro() && !$deluser_id) {
             require_once $_SERVER['DOCUMENT_ROOT'] . '/classes/stop_words.php';
             require_once $_SERVER['DOCUMENT_ROOT'] . '/classes/user_content.php';
             $stop_words = new stop_words();
             $nStopWordsCnt = $stop_words->calculate($aUser['descr']);
             $sModer = ' , moderator_status = ' . ($nStopWordsCnt ? ' 0 ' : ' NULL ');
             if ($nStopWordsCnt) {
                 $DB->insert('moderation', array('rec_id' => $offer_id, 'rec_type' => user_content::MODER_PRJ_OFFERS, 'stop_words_cnt' => $nStopWordsCnt));
             } else {
                 $sql .= $DB->parse('DELETE FROM moderation WHERE rec_id = ?i AND rec_type = ?i;', $offer_id, user_content::MODER_PRJ_OFFERS);
             }
         }
         $sql .= 'UPDATE projects_contest_offers SET is_deleted = ?b, deluser_id = ?i ' . $sModer . ' WHERE id = ?i';
         $DB->query($sql, $is_deleted, $deluser_id, $offer_id);
         // пишем лог админских действий: удаление предложения в проекте
         if (!$DB->error && $aUser['uid'] != $user_id) {
             require_once $_SERVER['DOCUMENT_ROOT'] . '/classes/admin_log.php';
             $sPrjLink = getFriendlyURL('project', $aUser['project_id']);
             $sOffLink = $sPrjLink . "?offer={$offer_id}#offer-{$offer_id}";
             $sReason = '<a href="' . $sOffLink . '" target="_blank">Предложение</a> от <a href="' . $GLOBALS['host'] . '/users/' . $aUser['login'] . '" target="_blank">' . $aUser['uname'] . ' ' . $aUser['usurname'] . ' [' . $aUser['login'] . ']</a>';
             $sActId = $is_deleted ? admin_log::ACT_ID_PRJ_DEL_OFFER : admin_log::ACT_ID_PRJ_RST_OFFER;
             admin_log::addLog(admin_log::OBJ_CODE_PROJ, $sActId, $aUser['user_id'], $aUser['project_id'], $aUser['prj_name'], $sPrjLink, 0, '', 0, $sReason);
         }
     }
     return '';
 }
示例#7
0
                    ?>
</a>
                                                <?php 
                } else {
                    ?>
                                                <?php 
                    echo $p['project_name'];
                    ?>
                                                <?php 
                }
                ?>
                                           <?php 
            } else {
                ?>
                                                <a href="<?php 
                echo getFriendlyURL("project", $p['project_id']);
                ?>
"><?php 
                echo $p['project_name'];
                ?>
</a> 
                                           <?php 
                /*if($p['position']>0 && $p['is_executor']=='t'){?>(<?=$p['position']?>-е место)<?}*/
                ?>
                                           <?php 
            }
            ?>
                          <?php 
            if ($p['refused'] == 't') {
                ?>
                            <p>Отказ: <span class="ops-minus"><?php 
示例#8
0
$uid = get_uid(false);
if (!$uid) {
    header_location_exit('/404.php');
}
$_SESSION['quickprj_is_success'] = 'y';
if ($_SESSION['quickprj_is_begin'] == 1) {
    unset($_SESSION['quickprj_is_begin']);
    $memBuff = new memBuff();
    $project_id = $memBuff->get('bill_ok_project_' . $uid);
    if ($project_id) {
        $is_payed = $memBuff->get('bill_ok_project_payed_' . $uid);
        if ($is_payed) {
            $memBuff->delete('bill_ok_project_payed_' . $uid);
            header("Location: /public/?step=2&public={$project_id}");
        } else {
            $friendly_url = getFriendlyURL('project', $project_id);
            $_SESSION['quickprj_ok'] = 1;
            header('Location: ' . $friendly_url . '?quickprj_ok=1');
        }
        $memBuff->delete('bill_ok_project_' . $uid);
    } else {
        header('Location: /');
    }
    exit;
}
$_SESSION['quickmas_is_success'] = 'y';
if ($_SESSION['quickmas_is_begin'] == 1) {
    unset($_SESSION['quickmas_is_begin']);
    if ($_SESSION['referer']) {
        $friendly_url = strtok($_SESSION['referer'], '?');
        $_SESSION['quickmass_ok'] = 1;
示例#9
0
/**
 * Скрывает или отображает платные проекты.
 *
 * @see projects_filter::ShowClosedProjects()
 * @see projects_filter::initClosedProjects()
 *
 * @param string $id     id определенного или all для всех
 * @param string $type   скрыть (hide) или показать (unhide)
 * @param int $kind  тип текущей закладки главной страницы (см. new_projects::getProjects())
 * @param int $page  номер текущей страницы.
 * @param bool $filter  включен ли фильтр у юзера.
 *
 * @return object xajaxResponse
 */
function _HideProject($id, $type, $kind, $page, $filter)
{
    session_start();
    $objResponse = new xajaxResponse();
    $all = $id == 'all';
    $id = (int) $id;
    $uid = $_SESSION['uid'];
    if ($type == 'hide') {
        $prj = new new_projects();
        $content = $prj->SearchDB((int) $kind, 2, 0, $uf, true, true);
        $prjs = $prj->getProjects($num_prjs, (int) $kind, 2, true, $uf, true, true);
        $num = 0;
        $nDH = $nH;
        $_SESSION['ph'][$id] = base64_encode(projects::GetField($id, 'name'));
        $_SESSION['top_payed']--;
        $objResponse->assign("project-item{$id}", 'outerHTML', '');
        if ($filter) {
            $prj_filter = new projects_filters();
            $uf = $prj_filter->GetFilter($uid, $error);
        }
        if ($prjs[$num]) {
            $this_kind = $prjs[$num]['kind'];
            $this_uid = get_uid(false);
            $this_pro_last = $_SESSION['pro_last'];
            $this_is_pro = payed::CheckPro($_SESSION['login']);
            $this_edit_mode = hasPermissions('projects');
            if ($this_uid) {
                $this_user_role = $_SESSION['role'];
            }
            $this_project = $prjs[$num];
            $row = $this_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;
                $row['show_data'] = 1;
            } else {
                $this_show_data = 0;
                $row['show_data'] = 0;
            }
            $descr = $row['descr'];
            $descr = preg_replace("/^ /", "", $descr);
            $descr = preg_replace("/(\n) /", "\$1", $descr);
            $descr = reformat(strip_tags(LenghtFormatEx($descr, 180), "<br />"), 50, 1, 0, 1);
            $descr = preg_replace("//", "&nbsp;", $descr);
            $row['descr'] = $descr;
            $row['t_is_payed'] = $this_project['payed'] && $this_project['kind'] != 2 && $this_project['kind'] != 7;
            $row['t_is_contest'] = $this_project['kind'] == 2 || $this_project['kind'] == 7;
            $row['t_pro_only'] = $this_project['pro_only'] == "t";
            $row['t_prefer_sbr'] = $this_project['prefer_sbr'] == "t";
            $row['priceby'] = $this_project['priceby'];
            $row['t_is_adm'] = hasPermissions('projects');
            $row['t_is_ontop'] = strtotime($this_project['top_to']) >= time();
            $row['unread'] = (int) $this_project['unread_p_msgs'] + (int) $this_project['unread_c_msgs'] + (int) $this_project['unread_c_prjs'];
            $row['t_is_proonly'] = $this_project['pro_only'] == 't' && !$_SESSION['pro_last'] && !$this_edit_mode && $this_uid != $this_project['user_id'];
            $row['friendly_url'] = getFriendlyURL('project', array('id' => $row['id'], 'name' => $row['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;
            }
            $row['attaches'] = $this_project['attaches'] = $attaches;
            $is_ajax = true;
            $can_change_prj = hasPermissions("projects");
            ob_start();
            require $_SERVER['DOCUMENT_ROOT'] . '/projects/tpl.lenta-item.php';
            $prj_html = ob_get_contents();
            ob_end_clean();
            $objResponse->script('ndiv = new Element("div", {id: "project-item' . $prjs[$num]['id'] . '", class: "b-post b-post_pad_10_15_15_20 b-post_margleft_-20 b-post_margright_-15 b-post_margbot_15 b-layout b-post_relative b-post_overflow_hidden' . ($row['is_color'] == 't' ? ' b-post_bg_fffded' : '') . '"});');
            $objResponse->script('ndiv.inject($("projects-list").getLast("div[id^=project-item]"), "after");');
            $objResponse->assign("project-item" . $prjs[$num]['id'], "innerHTML", $prj_html);
        }
    } else {
        if ($all && $_SESSION['ph']) {
            $nDH = -1 * $nH * count($_SESSION['ph']);
            unset($_SESSION['ph']);
        } else {
            $nDH = -1 * $nH;
            unset($_SESSION['ph'][$id]);
            if (!$_SESSION['ph']) {
                unset($_SESSION['ph']);
            }
        }
        if ($filter) {
            $prj_filter = new projects_filters();
            $uf = $prj_filter->GetFilter($uid, $error);
        }
        $prj = new new_projects();
        $content = $prj->SearchDB((int) $kind, (int) $page, 0, $uf, true, true);
        $objResponse->assign("projects-list", "innerHTML", $content);
    }
    if ($_SESSION['ph']) {
        $ccph = array_keys($_SESSION['ph']);
    }
    setcookie("ph[{$uid}]", $ccph ? implode(',', $ccph) : '', time() + 60 * 60 * 24 * 30, '/');
    if ($kind == 2 || $kind == 7) {
        $prjWord_1 = 'скрытый конкурс';
        $prjWord_2 = 'скрытых конкурса';
        $prjWord_5 = 'скрытых конкурсов';
    } elseif ($kind == 4) {
        $prjWord_1 = 'скрытая вакансия';
        $prjWord_2 = 'скрытых вакансии';
        $prjWord_5 = 'скрытых вакансий';
    } else {
        $prjWord_1 = 'скрытый проект';
        $prjWord_2 = 'скрытых проекта';
        $prjWord_5 = 'скрытых проектов';
    }
    $cnt = "";
    if (sizeof($_SESSION['ph']) && $_SESSION['uid']) {
        $cnt = sizeof($_SESSION['ph']) . " " . ending(sizeof($_SESSION['ph']), $prjWord_1, $prjWord_2, $prjWord_5);
    }
    $objResponse->assign("hide_project_count", "innerHTML", $cnt);
    // если до этого проекты отображались в режиме "Только название", то сворачиваем их
    $objResponse->call("rollProjects");
    return $objResponse;
}
示例#10
0
        }
        if (hasPermissions('projects') && $user->login != $_SESSION["login"]) {
            $sBox .= "<a href=\"/public/?step=1&public=" . $prj['id'] . "&red=" . rawurlencode($_SERVER['REQUEST_URI']) . "\" onclick=\"popupQEditPrjShow(" . $prj['id'] . ", event); return false;\">Редактировать</a> ";
            $sBox .= " | <span id='project-button-{$prj['id']}'><a style='color: red' href='.' onclick='banned." . ($prj['is_blocked'] ? 'unblockedProject' : 'blockedProject') . "({$prj['id']}); return false;'>" . ($prj['is_blocked'] ? 'Разблокировать' : 'Заблокировать') . "</a></span>";
            $sBox .= " | <a id=\"prj_{$prj['id']}\" style=\"color:Red;\" href=\"?action=prj_delete&prjid=" . $prj['id'] . ($_GET['closed'] == 1 ? '&closed=1' : ($_GET['open'] == 1 ? '&open=1' : '')) . "\" onClick=\"return addTokenToLink('prj_{$prj['id']}', 'Вы уверены?')\">Удалить</a>";
        }
        if ($sBox != '') {
            if (hasPermissions('projects')) {
                ?>
<script type="text/javascript">
banned.addContext( 'p<?php 
                echo $prj['id'];
                ?>
', 3, '<?php 
                echo $GLOBALS['host'];
                echo getFriendlyURL("project", $prj);
                ?>
', "<?php 
                echo $prj['name'];
                ?>
" );
</script>
<?php 
            }
            ?>
                        
                            <div style="text-align:right;font-size:11px; margin:3px 10px 5px 0px;">
                            <?php 
            if (hasPermissions('projects') && $prj['payed']) {
                ?>
<b style="color:#ff0000; white-space:nowrap"><?php 
示例#11
0
            echo $ban_title;
            ?>
        </a>
        <?php 
            echo $ban_count;
            ?>
    </li>
    <?php 
        }
    }
} else {
    if ($top['category_id'] && $top['category_name']) {
        ?>
<li class="b-post__links-item b-post__links-item_padright_10">
    Раздел: <a class="b-post__link b-post__link_color_000" href="<?php 
        echo getFriendlyURL('commune_commune', $top['commune_id']);
        ?>
?om=<?php 
        echo __paramInit("int", "om") ? __paramInit("int", "om") : '0';
        ?>
&cat=<?php 
        echo $top['category_id'];
        ?>
"><?php 
        echo $top['category_name'];
        ?>
</a>
</li>
<?php 
    }
}
示例#12
0
				<col width="80" />
				<col width="60" />
			</colgroup>
                <?php 
    foreach ($drafts as $draft) {
        ?>
                <tr class="b-layout__tr">
					<td class="b-layout__one b-layout__one_bordbot_ccc b-layout__one_padtb_10"><div class="b-check b-check_padleft_10 b-check_top_2"><input id="del_draft_<?php 
        echo $draft['id'];
        ?>
" class="b-check__input" type="checkbox" name="del_draft[]" value="<?php 
        echo $draft['id'];
        ?>
" onClick="DraftsCheckToggleDeleteAll(this);" /></div></td>
					<td class="b-layout__one b-layout__one_bordbot_ccc b-layout__one_padtb_10"><div class="b-layout__txt"><a class="b-layout__link" href="<?php 
        echo $draft['post_id'] ? getFriendlyURL("commune", $draft['post_id']) . "?om=0&draft_id={$draft['id']}" : getFriendlyURL("commune_commune", $draft['commune_id']) . "?draft_id={$draft['id']}";
        ?>
" <?php 
        echo $draft['is_member'] != 't' ? "onclick=\"alert('Вы не состоите в данном сообществе или заблокированы в нем'); return false\"" : "";
        ?>
><?php 
        echo $draft['title'] != '' ? reformat(htmlspecialchars($draft['title']), 27, 0, 1) : '[без названия]';
        ?>
</a></div></td>
                    <td class="b-layout__one b-layout__one_bordbot_ccc b-layout__one_padtb_10"><div class="b-layout__txt"><a class="b-layout__link b-layout__link_color_6db335" href="/commune/?id=<?php 
        echo $draft['commune_id'];
        ?>
"><?php 
        echo reformat($draft['commune_title'], 37, 0, 1);
        ?>
</a></div></td>
示例#13
0
    echo $navigation['prev']['uname'] . ' ' . $navigation['prev']['usurname'] . ' [' . $navigation['prev']['login'] . ']';
    ?>
</a>
            <?php 
} else {
    /* ?>
           <span>&laquo; предыдущее интервью</span>
       <? */
}
?>
            &nbsp;&nbsp;&nbsp;
            <?php 
if (isset($navigation['next'])) {
    ?>
                <a href="<?php 
    echo getFriendlyURL('interview', $navigation['next']['id']);
    ?>
"><?php 
    echo $navigation['next']['uname'] . ' ' . $navigation['next']['usurname'] . ' [' . $navigation['next']['login'] . ']';
    ?>
 &raquo;</a>
            <?php 
} else {
    /* ?>
           <span>следующее интервью &raquo;</span>
       <? */
}
?>
        </div>
        <a id="interview_back2" href="javascript:void(0);">Вернуться к списку интервью</a>
    </div>
示例#14
0
$additional_header = '<link rel="alternate" type="application/rss+xml" title="Блоги на FL.ru (' . $gr_name . ')" href="/rss/blogs.php?gr=' . $gr . '&amp;t=' . $t . '" />';
if (empty($additional_header)) {
    $additional_header = '';
}
$om_clean_uri = array();
foreach ($_GET as $key => $value) {
    if ($value && !in_array($key, array('grname', 'b', 'ord', 'openlevel', 'newurl'))) {
        $om_clean_uri[] = $key . '=' . urlencode($value);
    }
}
if (!empty($_GET['id'])) {
    $om_clean_uri[] = 'id=' . (int) $_GET['id'];
}
if (count($om_clean_uri) || $gr) {
    $additional_header .= '
<link rel="canonical" href="' . ($gr ? getFriendlyURL('blog_group', $gr) : '/blogs/') . ($om_clean_uri ? '?' . htmlspecialchars(implode('&', $om_clean_uri)) : '') . '"/>
';
}
$additional_header .= '
<script type="text/javascript" src="/scripts/blogs_cnt.js"></script>
<script type="text/javascript" src="/scripts/swfobject.js"></script>
<script type="text/javascript" src="/scripts/polls.js"></script>
';
if ($uid) {
    $additional_header .= '
    <script type="text/javascript" src="/scripts/blogs.js"></script>
    <script type="text/javascript" src="/scripts/mAttach.js"></script>
    <script type="text/javascript" src="/scripts/banned.js"></script>
    ';
    $js_file[] = 'drafts.js';
    $js_file[] = 'attachedfiles.js';
示例#15
0
        ?>
            <div class="post-one" id="post_<?php 
        echo $article['id'];
        ?>
">
                <img src="<?php 
        echo WDCPREFIX;
        ?>
/<?php 
        echo $article['path'];
        echo $article['fname'];
        ?>
" alt="" width="100" class="post-img" />
                <div class="post-txt">
                    <h3><a href="<?php 
        echo getFriendlyURL('article', $article['id']);
        ?>
"><?php 
        echo !$article['title'] ? 'Без названия' : reformat($article['title'], 32, 0, 1);
        ?>
</a></h3>
                    <p class="post-body">
                        <?php 
        echo reformat($article['short'], 50, 0, 0, 1);
        ?>
</p>
                </div>
                <div class="post-f c">
                    <ul>
                        <li class="post-f-lnks">
                            <ul>
示例#16
0
 <?php 
    echo YellowLine($prj['usurname']);
    ?>
</a> [<a href="/users/<?php 
    echo $prj['login'];
    ?>
/"><?php 
    echo YellowLine($prj['login']);
    ?>
</a>]</li> 
										<li class="last">Категория: <?php 
    echo projects::printCategories($prj['categories']);
    ?>
</li>
										<li class="last"><div class="project-offers"><a href="<?php 
    echo getFriendlyURL("project", $prj['id']);
    ?>
">Предложения (<?php 
    echo (int) $prj['offers_count'];
    ?>
)</a></div></li>
									</ul> 
                                    <br clear="all" />
                                        
    									<div id="div_compliant_<?php 
    echo $prj['id'];
    ?>
" class="ban-report"> 
    										<h4>
                                                <?php 
    echo projects_complains::GetComplainType($prj['type'], true);
示例#17
0
 /**
  * Модераторская. Лента действий. Фиксация событий: удаление предложения в проекте.
  *
  * @param int    $offer_id    id предложения
  * @param int    $prj_id      id проекта
  * @param string $prj_name    название проекта
  * @param int    $prj_user_id UID пользователя, создавшего проект
  */
 public function DelOfferLog($offer_id = 0, $prj_id = 0, $prj_name = '', $prj_user_id)
 {
     $aUser = $GLOBALS['DB']->row('SELECT f.uid, f.login, f.uname, f.usurname 
         FROM projects_offers po 
         INNER JOIN freelancer f ON f.uid = po.user_id 
         WHERE po.id = ?i', $offer_id);
     if ($aUser['uid'] != $_SESSION['uid'] && hasPermissions('projects')) {
         require_once $_SERVER['DOCUMENT_ROOT'] . '/classes/admin_log.php';
         $sPrjLink = getFriendlyURL('project', $prj_id);
         $sReason = 'Предложение от <a href="' . $GLOBALS['host'] . '/users/' . $aUser['login'] . '" target="_blank">' . $aUser['uname'] . ' ' . $aUser['usurname'] . ' [' . $aUser['login'] . ']</a>';
         admin_log::addLog(admin_log::OBJ_CODE_PROJ, admin_log::ACT_ID_PRJ_DEL_OFFER, $prj_user_id, $prj_id, $prj_name, $sPrjLink, 0, '', 0, $sReason);
     }
 }
示例#18
0
                echo "status=uploadSuccess&url={$link}";
            } else {
                echo 'status=uploadFailed&msg=Ошибка загрузки файла';
                exit;
            }
        } else {
            echo 'status=wrongFormat&msg=Загрузите изображение формата gif, png или jpg';
        }
    } else {
        echo 'status=fail&msg=У вас недостаточно прав, чтобы оставить этот комментарий';
    }
    exit;
}
$url_parts = parse_url($_SERVER['REQUEST_URI']);
if ($_GET['id']) {
    $friendly_url = getFriendlyURL('article', $_GET['id']);
    if (strtolower($url_parts['path']) != $friendly_url) {
        header('HTTP/1.1 301 Moved Permanently');
        header('Location: ' . $friendly_url);
        exit;
    }
}
$msgs_on_page = 20;
$mpath = dirname(__FILE__);
$rpath = realpath(dirname(__FILE__) . '/../');
session_start();
$uid = get_uid();
$_page = __paramInit('string', null, 'page');
if (!$_page) {
    $_page = __paramInit('string', 'page');
}
 /**
  * Cоздание заказа на базе проекта.
  */
 public function actionNewProjectOrder()
 {
     //@todo: на период разработки резерва заказов
     if (!tservices_helper::isAllowOrderReserve()) {
         $this->missingAction(null);
     }
     $offer_id = __paramInit('int', 'offer_id', 'offer_id', null);
     $projects = new projects();
     $projectData = $projects->getProjectByOfferId($offer_id, $this->uid);
     if (!$projectData) {
         $this->missingAction(null);
     }
     $freelancer = new freelancer();
     $freelancer->GetUserByUID($projectData['frl_id']);
     if ($freelancer->uid <= 0) {
         $this->missingAction(null);
     }
     $form = new NewOrderForm();
     $form->setDefaults(array('title' => addslashes(htmlspecialchars_decode($projectData['name'], ENT_QUOTES)), 'description' => addslashes(htmlspecialchars_decode($projectData['descr'], ENT_QUOTES)), 'order_price' => $projectData['currency'] == 2 ? $projectData['cost'] : ''));
     if (isset($_POST) && sizeof($_POST) > 0 && $form->isValid($_POST)) {
         $data = $form->getValues();
         $data['frl_id'] = $freelancer->uid;
         $data['emp_id'] = $this->uid;
         $data['tu_id'] = $projectData['id'];
         if ($order = $this->order_model->createFromProject($data)) {
             $projects->SetExecutor($projectData['id'], $projectData['frl_id'], $projectData['user_id']);
             $tservices_smail = new tservices_smail();
             $tservices_smail->newOrder($order);
             $this->redirect(sprintf(tservices_helper::url('order_card_url'), $order['id']));
         }
     }
     //Выводим в сайдбар виджет индикатор статуса заказа
     $this->getClips()->add('sidebar', $this->widget('OrderStatusIndicator', array(), true));
     $this->render('new-order-form', array('title' => 'Новый заказ по проекту', 'submit_title' => 'Выбрать исполнителем и предложить заказ', 'cansel_url' => getFriendlyURL('project', $projectData), 'form' => $form, 'freelancer' => $freelancer));
 }
示例#20
0
 /**
  * Создает xml файл для Jooble.ru
  * 
  * @param   $filename   string  полный путь к файлу куда webdav должен сохранить получившийся xml
  * @param string $interval Интервал (1 day, 2 days, 1 month)
  * @return text $filename полный путь к файлу куда webdav должен сохранить получившийся xml
  */
 function joobleGenerateRss($filename, $prjs)
 {
     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);
     $xml = '';
     $host = str_replace(HTTP_PREFIX, '', $GLOBALS['host']);
     $HTTP_PREFIX = "https://";
     $xml = '<?xml version="1.0" encoding="utf-8"?>' . "\n";
     $xml .= '<source creation-time="' . date('Y-m-d H:i:s') . ' GMT+3" host="' . $host . '">' . "\n";
     $xml .= '   <jobs>' . "\n";
     foreach ($prjs as $row) {
         $city = $row['city_name'] ? $row['city_name'] : '';
         $location = $row['country_name'] ? $row['country_name'] : '';
         $location .= $location ? ', ' . $city : $city;
         $location = preg_replace("/, \$/", "", $location);
         $location = html_entity_decode($location, ENT_QUOTES, 'cp1251');
         if (!$location) {
             $location = 'Россия';
         }
         $row['categories'] = self::getProjectCategories($row['id']);
         if (!empty($row['categories'])) {
             $name_case = false;
             foreach ($row['categories'] as $cat) {
                 if ((int) $cat['subcategory_id'] > 0) {
                     if ($cat['name_case']) {
                         $name_case[] = $cat['name_case'];
                     }
                 }
             }
             if ($name_case) {
                 $name_case = implode(". ", $name_case) . ". ";
             }
         }
         $cat = html_entity_decode($row['cat_name'], ENT_QUOTES, 'cp1251');
         $name = html_entity_decode($name_case . $row['project_name'], ENT_QUOTES, 'cp1251');
         unset($name_case);
         $descr = html_entity_decode($row['descr'], ENT_QUOTES, 'cp1251');
         $contacts = $row['e_login'];
         $contacts = $row['e_surname'] ? html_entity_decode($row['e_surname'], ENT_QUOTES, 'cp1251') . ', ' . $contacts : $contacts;
         $contacts = $row['e_name'] ? html_entity_decode($row['e_name'], ENT_QUOTES, 'cp1251') . ' ' . $contacts : $contacts;
         $currency = '';
         switch ($row['currency']) {
             case 0:
                 $currency = '$';
                 break;
             case 1:
                 $currency = ' Euro';
                 break;
             case 2:
                 $currency = ' Руб.';
                 break;
             case 3:
                 $currency = ' Руб.';
                 break;
         }
         if ($row['cost'] && $row['currency'] == 3) {
             $row['cost'] = preg_replace("/\\.00\$/", "", sprintf("%.2f", round($row['cost'] * $project_exRates[trim($translate_exRates[$row['currency']]) . '4'], 2)));
         }
         $xml .= '        <job id="' . $row['id'] . '">
         <link>' . $HTTP_PREFIX . $host . getFriendlyURL('project', $row['id']) . '</link>
         ';
         $name .= ' (удаленно)';
         $xml .= '           <name>' . xmloutofrangechars(iconv('CP1251', 'UTF-8', htmlspecialchars($name, ENT_QUOTES))) . '</name>';
         $xml .= '<description>' . xmloutofrangechars(iconv('CP1251', 'UTF-8', htmlspecialchars($descr, ENT_QUOTES))) . '</description>
                 <region>' . iconv('CP1251', 'UTF-8', htmlspecialchars($location, ENT_QUOTES)) . "</region>\n                    <salary>" . ($row['cost'] ? iconv('CP1251', 'UTF-8', $row['cost'] . $currency) : '') . "</salary>\n                    <contacts>" . iconv('CP1251', 'UTF-8', $contacts) . "</contacts>\n                    <company></company>\n                    <expire>" . ($row['kind'] == 7 ? dateFormat("d.m.Y", $row['end_date']) : '') . "</expire>\n                    <updated>" . dateFormat("d.m.Y", $row['create_date']) . "</updated>\n        </job>\n";
     }
     $xml .= "</jobs>\n</source>";
     $file = new CFile();
     return $file->putContent($filename, $xml);
 }
/**
 * Сохранение предложения по проектам
 * 
 * @param object $objResponse xajaxResponse
 * @param string $rec_id идентификатор записи
 * @param string $rec_type тип записи
 * @param array $aForm массив данных
 * @param string $sDrawFunc имя функции для выполнения после сохранения
 */
function _admEditPrjOfferSaveForm(&$objResponse, $rec_id = '', $rec_type = '', $aForm = array(), $sDrawFunc = '')
{
    require_once $_SERVER['DOCUMENT_ROOT'] . '/classes/messages.php';
    require_once $_SERVER['DOCUMENT_ROOT'] . '/classes/user_content.php';
    require_once $_SERVER['DOCUMENT_ROOT'] . '/classes/projects_offers.php';
    $obj_offer = new projects_offers();
    $payed_items = $aForm['ps_payed_items'];
    $payed_color = $aForm['ps_payed_items'][0] == '1';
    if ($aForm['is_color'] && !$payed_color) {
        $account = new account();
        $transaction_id = $account->start_transaction(get_uid());
        $error_buy = $account->Buy($billing_id, $transaction_id, $answers->color_op_code, get_uid(), "Выделение ответа на проект цветом", "Выделение <a href='" . getFriendlyURL("project", $project['id']) . "#freelancer_{$_SESSION['uid']}' target='_blank'>предложения</a> цветом", 1, 1);
        $payed_items = '1';
        if ($error_buy) {
            $aForm['is_color'] = false;
            $payed_items = '0';
        }
    }
    $sReason = _parseReason($aForm['user_id'], $aForm['adm_edit_text']);
    $error = $obj_offer->AddOffer($aForm['user_id'], $aForm['pid'], $aForm['ps_cost_from'], $aForm['ps_cost_to'], $aForm['ps_cost_type'], $aForm['ps_time_from'], $aForm['ps_time_to'], $aForm['ps_time_type'], antispam(stripslashes($aForm['ps_text'])), $aForm['ps_work_1_id'], $aForm['ps_work_2_id'], $aForm['ps_work_3_id'], $aForm['ps_work_1_link'], $aForm['ps_work_2_link'], $aForm['ps_work_3_link'], $aForm['ps_work_1_name'], $aForm['ps_work_2_name'], $aForm['ps_work_3_name'], $aForm['ps_work_1_pict'], $aForm['ps_work_2_pict'], $aForm['ps_work_3_pict'], $aForm['ps_work_1_prev_pict'], $aForm['ps_work_2_prev_pict'], $aForm['ps_work_3_prev_pict'], isset($aForm['ps_for_customer_only']), $aForm['edit'], 0, isset($aForm['prefer_sbr']), $aForm['is_color'], null, $payed_items, 0, $_SESSION['uid'], $sReason);
    if (!$error && !$error_buy && !$payed_color && $account) {
        $account->commit_transaction($transaction_id, get_uid(), $billing_id);
        $is_payed_color = true;
    }
    if ($error) {
        $objResponse->alert('Ошибка сохранения предложения' . $error);
        $sParent = $sDrawFunc == 'stream0' || $sDrawFunc == 'stream1' || $sDrawFunc == 'stream2' ? 'parent.' : '';
        $objResponse->script("{$sParent}adm_edit_content.disabled = false; {$sParent}adm_edit_content.button();");
    } else {
        messages::prjOfferModifiedNotification($aForm['user_id'], $aForm['pid'], $sReason);
        $content_id = user_content::MODER_PRJ_OFFERS;
        _admEditAfterAll($objResponse, $content_id, $rec_id, $rec_type, $sDrawFunc, $aForm);
    }
}
示例#22
0
/**
* Добавляет жалобу на проект.
*
* @param    integer     $project_id     ID проекта
* @param    integer     $user_id        ID пользователя
* @param    integer     $type           тип жалобы
* @param    string      $msg            текст жалобы
* @param    string      $files          имена загруженных скриншотов
*
* @return                               xajax responce
*/
function SendComplain($project_id, $type, $msg, $files)
{
    global $session;
    session_start();
    require_once $_SERVER['DOCUMENT_ROOT'] . '/classes/uploader/uploader.php';
    require_once $_SERVER['DOCUMENT_ROOT'] . '/classes/projects_complains.php';
    require_once $_SERVER['DOCUMENT_ROOT'] . '/classes/userecho.php';
    $objResponse = new xajaxResponse();
    $project_id = (int) $project_id;
    $user_id = get_uid(false);
    $type = (int) $type;
    $msg = __paramValue('htmltext', $msg);
    $error = false;
    $project = new projects();
    $prj = $project->GetPrj(0, $project_id, 1);
    $file_list = array();
    if ($files != '') {
        $files = uploader::sgetFiles($files);
        if (!empty($files)) {
            $emp = new users();
            $emp->GetUser($emp->GetField($prj['user_id'], $ee, 'login'));
            $dir = 'users/' . substr($emp->login, 0, 2) . '/' . $emp->login . '/upload/';
            foreach ($files as $file) {
                $copy = uploader::remoteCopy($file['id'], 'file_projects', $dir);
                $rfiles[] = $copy->name;
                $file_list[] = array('name' => $copy->original_name, 'link' => WDCPREFIX . '/' . $copy->path . $copy->name);
            }
            $files = implode(',', $rfiles);
        } else {
            $files = '';
        }
    }
    if (!$files) {
        $files = '';
    }
    if (projects::IsHaveComplainType($project_id, $user_id, $type)) {
        // Уже жаловался
        return $objResponse;
    }
    $projects_complains = new projects_complains();
    $type_name = $projects_complains->GetComplainType($type);
    $project_url = getAbsUrl(getFriendlyURL('project', $project_id));
    $is_moder = $projects_complains->isComplainTypeModer($type);
    if ($is_moder) {
        $userEcho = new UserEcho();
        $topic_message = $userEcho->constructMessage($project_url, $prj['name'], $msg, $file_list);
        $topicUrl = $userEcho->newTopicComplain($type_name, $topic_message, $file_list);
        if ($topicUrl) {
            messages::sendProjectComplain($user_id, $project_url, $prj['name'], $msg, $topicUrl);
        } else {
            $error = true;
        }
    }
    if (!$error) {
        $error = projects::AddComplain($project_id, $user_id, $type, $msg, $files, $is_moder && $topicUrl);
    }
    if ($error) {
        $objResponse->script("\$('abuse_project_popup').toggleClass('b-shadow_hide');");
        if ($is_moder) {
            $objResponse->script("\$('abuse-cause-error').removeClass('b-layout__txt_hide'); abuseResetSelection();");
        } else {
            $objResponse->script("\$\$('.abuse-btn-send').removeClass('b-button_rectangle_color_disable')");
        }
    } else {
        $upl = array('umask' => uploader::umask('prj_abuse'), 'validation' => array('allowedExtensions' => array('jpg', 'gif', 'png', 'jpeg'), 'restrictedExtensions' => array()), 'text' => array('uploadButton' => iconv('cp1251', 'utf8', 'Прикрепить файлы')));
        $objResponse->script("\n            \$('abuse{$type}').addClass('abuse-checked');\n            \$('abuse{$type}').getChildren().each(function(el) { \$(el).addClass('abuse-checked'); });\n        ");
        $objResponse->script("uploader.create('abuse_uploader', " . json_encode($upl) . ');');
        $objResponse->script("\$('prj_abuse_msg').set('value', '')");
        $objResponse->script("\$\$('.abuse-btn-send').removeClass('b-button_disabled')");
        $objResponse->script("\$('abuse_project_popup').toggleClass('b-shadow_hide');");
        $objResponse->script("\$('project_abuse_success').removeClass('b-layout__txt_hide');");
        $objResponse->script("\$('form_abuse').hide();");
        $objResponse->script("setTimeout(\"\$('project_abuse_success').addClass('b-layout__txt_hide')\", 5000);");
        if ($is_moder) {
            $objResponse->script("\$('abuse-cause-error').addClass('b-layout__txt_hide');");
        }
    }
    return $objResponse;
}
示例#23
0
function Lenta_Show($page = 1)
{
    global $DB;
    session_start();
    require_once $_SERVER['DOCUMENT_ROOT'] . "/classes/portfolio.php";
    require_once $_SERVER['DOCUMENT_ROOT'] . "/classes/professions.php";
    require_once $_SERVER['DOCUMENT_ROOT'] . "/classes/commune.php";
    require_once $_SERVER['DOCUMENT_ROOT'] . "/classes/links.php";
    require_once $_SERVER['DOCUMENT_ROOT'] . "/classes/lenta.php";
    require_once $_SERVER['DOCUMENT_ROOT'] . "/classes/users.php";
    require_once $_SERVER['DOCUMENT_ROOT'] . "/classes/blogs.php";
    /*require_once( $_SERVER['DOCUMENT_ROOT'] . '/classes/stop_words.php' );
        
    $stop_words = new stop_words( false );*/
    $yt_replace_id = array();
    $yt_replace_data = array();
    $uid = get_uid(false);
    $objResponse = new xajaxResponse();
    ob_start();
    if (!($groups = professions::GetAllGroupsLite())) {
        return;
    }
    if (!($lenta = lenta::GetUserLenta($uid))) {
    }
    $sort = $_COOKIE['lenta_fav_order'] != "" ? $_COOKIE['lenta_fav_order'] : "date";
    $favs = lenta::GetFavorites($uid, $sort);
    if (!($myComms = commune::GetCommunes(NULL, $uid, NULL, commune::OM_CM_MY))) {
        $myComms = array();
    }
    if (!($joinedComms = commune::GetCommunes(NULL, NULL, $uid, commune::OM_CM_JOINED))) {
        $joinedComms = array();
    }
    // Все сообщества, доступные пользователю.
    $communes = array();
    foreach ($myComms as $comm) {
        $communes[] = $comm;
    }
    foreach ($joinedComms as $comm) {
        $communes[] = $comm;
    }
    // Блоги
    if (!($blog_grs = blogs::GetThemes($error, 1))) {
        $blog_grs = array();
    }
    $blg = NULL;
    if ($lenta && $lenta['blog_grs'] && !empty($lenta['blog_grs'])) {
        $blg = implode(',', $lenta['blog_grs']);
    }
    $pgs = NULL;
    if ($lenta['all_profs_checked'] == 'f') {
        if ($lenta && $lenta['prof_groups'] && !empty($lenta['prof_groups'])) {
            $pgs = implode(',', $lenta['prof_groups']);
        }
    }
    $allThemesCount = 0;
    $cms = NULL;
    $user_comm_mods = array();
    // Отбираем среди выбранных ранее сообществ в ленте, те которые до сих пор остаются
    // доступными ему для просмотра в ленте (его могли удалить или забанить). А также заполняем массив user_mod-ов на каждое из сообществ.
    if ($lenta && $lenta['communes'] && !empty($lenta['communes'])) {
        $i = 0;
        $cms = '';
        foreach ($lenta['communes'] as $cm_id) {
            if ($uStatus = commune::GetUserCommuneRel($cm_id, $uid)) {
                $ucm = $user_mod;
                $ucm |= commune::MOD_COMM_MODERATOR * $uStatus['is_moderator'];
                $ucm |= commune::MOD_COMM_MANAGER * $uStatus['is_manager'];
                $ucm |= commune::MOD_COMM_ADMIN * ($uStatus['is_admin'] || $uStatus['is_moderator'] || $uStatus['is_manager']);
                $ucm |= commune::MOD_COMM_AUTHOR * $uStatus['is_author'];
                $ucm |= commune::MOD_COMM_ASKED * $uStatus['is_asked'];
                $ucm |= commune::MOD_COMM_ACCEPTED * ($uStatus['is_accepted'] || $ucm & commune::MOD_COMM_ADMIN);
                $ucm |= commune::MOD_COMM_BANNED * $uStatus['is_banned'];
                $ucm |= commune::MOD_COMM_DELETED * $uStatus['is_deleted'];
                $user_comm_mods[$cm_id] = $ucm;
                if (!$uStatus['is_deleted'] && !$uStatus['is_banned'] && $uStatus['is_blocked_commune'] == 0 && ($uStatus['is_accepted'] || $uStatus['is_author'])) {
                    $cms .= (!$i++ ? '' : ',') . $cm_id;
                }
            }
        }
    }
    //if($cms)
    //  $allThemesCount -= commune::GetMyThemesCount($cms, $uid);
    if ($lenta && $lenta['all_profs_checked'] == 't' || $cms || $pgs || $blg) {
        $items = lenta::GetLentaItems($uid, $lenta && $lenta['my_team_checked'] == 't', $lenta && $lenta['all_profs_checked'] == 't', $pgs, $cms, ($page - 1) * lenta::MAX_ON_PAGE, lenta::MAX_ON_PAGE, $allWorkCount, $blg);
    }
    if (!$items) {
        $items = array();
    }
    //    var_dump($favs);
    $stars = array(0 => 'bsg.png', 1 => 'bsgr.png', 2 => 'bsy.png', 3 => 'bsr.png');
    $i = 0;
    foreach ($items as $item) {
        switch ($item['item_type']) {
            case '2':
                // Сообщества
                $top = $item;
                $user_mod = $user_comm_mods[$top['commune_id']];
                if ($top['member_is_banned'] && !($user_mod & (commune::MOD_ADMIN | commune::MOD_COMM_AUTHOR | commune::MOD_COMM_MANAGER)) || $top['is_private'] == 't' && $top['user_id'] != $uid && !($user_mod & (commune::MOD_ADMIN | commune::MOD_COMM_AUTHOR | commune::MOD_COMM_MANAGER)) || $top['is_blocked'] && $top['commune_author_id'] != $uid) {
                    continue;
                }
                $aThemeId = is_array($top['theme_id']) ? $top['theme_id'] : array($top['theme_id']);
                $top['answers'] = $DB->rows("SELECT * FROM commune_poll_answers WHERE theme_id IN (?l) ORDER BY id", array($top['theme_id']));
                $GLOBALS[LINK_INSTANCE_NAME] = new links('commune');
                $user_id = $uid;
                $mod = $user_mod;
                $is_member = $mod & (commune::MOD_ADMIN | commune::MOD_COMM_ACCEPTED | commune::MOD_COMM_AUTHOR);
                $is_moder = $mod & (commune::MOD_ADMIN | commune::MOD_MODER | commune::MOD_COMM_MODERATOR | commune::MOD_COMM_AUTHOR);
                $commune_info = commune::getCommuneInfoByMsgID($top['id']);
                ?>
                                <style>
.lo-m .lo-i-my-d .ac-pro, .lo-m .lo-i-my-d .ac-epro {
margin-right: 0px;
}
.lo .utxt .b-layout__txt .b-icon__lprofi{ vertical-align:baseline !important; top:2px !important;}
.lo .utxt>.b-pic{ margin-right:10px !important;}
</style>
								<div class="lo lo-m" id='idTop_<?php 
                echo $top['id'];
                ?>
' style='margin-bottom:0px !important;'>
									<ul class="lo-p">
										<li class="lo-s">
											<div class="b-layout_bordrad_3">
												<a href="/commune" class="lnk-dot-666">Сообщества</a>
											</div>
										</li>
										<li class="post-f-fav">
                                            <?php 
                $msg_id = $top['id'];
                ?>
                                            <?php 
                if ($favs['CM' . $msg_id]) {
                    ?>
 
                                                <img src="/images/bookmarks/<?php 
                    echo $stars[$favs['CM' . $msg_id]['priority']];
                    ?>
" alt="" on="<?php 
                    echo $is_fav ? 1 : 0;
                    ?>
" id="favstar<?php 
                    echo 'CM' . $msg_id;
                    ?>
" <?php 
                    if ($uid) {
                        ?>
onclick="ShowFavFloatLenta(<?php 
                        echo $msg_id;
                        ?>
, <?php 
                        echo $uid;
                        ?>
, 'CM')" ><?php 
                    }
                    ?>
                                            <?php 
                } else {
                    ?>
                                                <img src="/images/bookmarks/bsw.png" alt="" on="<?php 
                    echo $is_fav ? 1 : 0;
                    ?>
" id="favstar<?php 
                    echo 'CM' . $msg_id;
                    ?>
" <?php 
                    if ($uid) {
                        ?>
onclick="ShowFavFloatLenta(<?php 
                        echo $msg_id;
                        ?>
, <?php 
                        echo $uid;
                        ?>
, 'CM')" ><?php 
                    }
                    ?>
                                            <?php 
                }
                ?>
                                            <ul class="post-f-fav-sel" style="display:none;" id="FavFloat<?php 
                echo $msg_id;
                ?>
"></ul>
										</li>
									</ul>
									<div class="utxt">
<?php 
                print __LentaPrntUsrInfo($top, 'user_', '', '', false, true);
                ?>
										<h3>
                                        <?php 
                if ($top['is_private'] == 't') {
                    ?>
                                        <img src="/images/icons/eye-hidden.png" alt="Скрытый пост" title="Скрытый пост">&nbsp;	            
                                        <?php 
                }
                //if
                ?>
                                        <?php 
                $sTitle = $top['title'];
                ?>
                                        <?php 
                $sMessage = $top['msgtext'];
                ?>
                                        <a href="<?php 
                echo getFriendlyURL('commune', $top['id']);
                ?>
?om=<?php 
                echo commune::OM_TH_NEW;
                ?>
"><?php 
                echo reformat2($sTitle, 30, 0, 1);
                ?>
</a>&nbsp;</h3>
										<p><?php 
                echo reformat2($sMessage, 46, 1, 0, 1);
                ?>
</p>

                                        <!-- Questions -->
			<?php 
                if ($top['question'] != '') {
                    ?>
			<div id="poll-<?php 
                    echo $top['theme_id'];
                    ?>
" class="commune-poll">
				<div class="commune-poll-theme"><?php 
                    echo reformat($top['question'], 43, 0, 1);
                    ?>
</div>
				<div id="poll-answers-<?php 
                    echo $top['theme_id'];
                    ?>
">
				<?php 
                    if ($top['poll_closed'] == 't') {
                        ?>
<table class="b-layout__table b-layout__table_width_full"><?php 
                    }
                    ?>
                <?php 
                    // если надо вывести только количество ответов
                    $showAnswers = $top['poll_votes'] || !$user_id || $top['commune_blocked'] == 't' || $top['user_is_banned'] || $top['member_is_banned'] || !$is_member;
                    if ($showAnswers) {
                        ?>
<table class="poll-variants"><?php 
                    }
                    ?>
				<?php 
                    $i = 0;
                    $max = 0;
                    if ($top['poll_closed'] == 't') {
                        foreach ($top['answers'] as $answer) {
                            $max = max($max, $answer['votes']);
                        }
                    }
                    foreach ($top['answers'] as $answer) {
                        ?>

						<?php 
                        if ($top['poll_closed'] == 't') {
                            ?>
                        	<tr class="b-layout__tr">
                              <td class="b-layout__left b-layout__left_width_50"><label class="b-layout__txt" for="poll_<?php 
                            echo $i;
                            ?>
"><?php 
                            echo reformat($answer['answer'], 30, 0, 1);
                            ?>
</label></td>
                              <td class="b-layout__middle b-layout__middle_width_30 b-layout__middle_center"><?php 
                            echo $answer['votes'];
                            ?>
</td>
                              <td class=" b-layout__right "><div class=" res-line rl1" style="width: <?php 
                            echo $max ? round(100 * $answer['votes'] / $max * 3) : 0;
                            ?>
px;"></div></td>
                            </tr>
                        <?php 
                        } else {
                            ?>
                            <?php 
                            if ($showAnswers) {
                                ?>
                                <tr>
                                    <td class="bp-gres"><?php 
                                echo $answer['votes'];
                                ?>
</td>
                                    <td>
                                        <label><?php 
                                echo $answer['answer'];
                                ?>
</label>
                                    </td>
                                </tr>
                            <?php 
                            } else {
                                ?>
                                <?php 
                                if ($top['poll_multiple'] == 't') {
                                    ?>
                                <div class="b-check b-check_padbot_10">
                                    <input id="poll-<?php 
                                    echo $top['theme_id'];
                                    ?>
_<?php 
                                    echo $i;
                                    ?>
" class="b-check__input" type="checkbox" name="poll_vote[]" value="<?php 
                                    echo $answer['id'];
                                    ?>
" />
                                    <label class="b-check__label b-check__label_fontsize_13" for="poll-<?php 
                                    echo $top['theme_id'];
                                    ?>
_<?php 
                                    echo $i++;
                                    ?>
"><?php 
                                    echo reformat($answer['answer'], 30, 0, 1);
                                    ?>
</label>
                                </div>
                                <?php 
                                } else {
                                    ?>
                                <div class="b-radio__item  b-radio__item_padbot_5">
                                    <table class="b-layout__table b-layout__table_width_full" cellpadding="0" cellspacing="0" border="0">
                                        <tr class="b-layout__tr">
                                            <td class="b-layout__left b-layout__left_width_15"><input id="poll-<?php 
                                    echo $top['theme_id'];
                                    ?>
_<?php 
                                    echo $i;
                                    ?>
" class="b-radio__input b-radio__input_top_-3" type="radio" name="poll_vote" value="<?php 
                                    echo $answer['id'];
                                    ?>
" /></td>
                                            <td class="b-layout__right"><label class="b-radio__label b-radio__label_fontsize_13" for="poll-<?php 
                                    echo $top['theme_id'];
                                    ?>
_<?php 
                                    echo $i++;
                                    ?>
"><?php 
                                    echo reformat($answer['answer'], 30, 0, 1);
                                    ?>
</label></td>
                                        </tr>
                                    </table>
                                </div>
                                <?php 
                                }
                                ?>
                            <?php 
                            }
                            ?>
                            
                        <?php 
                        }
                        ?>

				<?php 
                    }
                    ?>
                <?php 
                    if ($showAnswers) {
                        ?>
</table><?php 
                    }
                    ?>
				<?php 
                    if ($top['poll_closed'] == 't') {
                        ?>
</table><?php 
                    }
                    ?>
				</div>
				<?php 
                    if (!$top['poll_votes'] && $user_id && $top['poll_closed'] != 't' && $top['commune_blocked'] != 't' && !$top['user_is_banned'] && !$top['member_is_banned'] && $is_member) {
                        ?>
                
                <div class="b-buttons b-buttons_inline-block">
                    <span id="poll-btn-vote-<?php 
                        echo $top['theme_id'];
                        ?>
">
                        <a class="b-button b-button_flat b-button_flat_grey" href="javascript: return false;" onclick="poll.vote('Commune', <?php 
                        echo $top['theme_id'];
                        ?>
); return false;">Ответить</a>&nbsp;&nbsp;&nbsp;                
                    </span>                
					<span id="poll-btn-result-<?php 
                        echo $top['theme_id'];
                        ?>
" ><a class="b-buttons__link b-buttons__link_dot_0f71c8" href="javascript: return false;" onclick="poll.showResult('Commune', <?php 
                        echo $top['theme_id'];
                        ?>
); return false;">Посмотреть результаты</a></span>
                </div>
				<?php 
                    } else {
                        ?>
				<span id="poll-btn-vote-<?php 
                        echo $top['theme_id'];
                        ?>
"></span>
				<span id="poll-btn-result-<?php 
                        echo $top['theme_id'];
                        ?>
"></span>
				<?php 
                    }
                    ?>
			</div>
            <br />
			<?php 
                }
                ?>
                                        <!-- /Questions -->

                                        <!-- Youtube -->
<?php 
                if ($top['yt_link']) {
                    $tmp_yt_id = $top['id'] . 'ytlink' . mt_rand(1, 1000000);
                    $tmp_yt_data = show_video($top['id'], $top['yt_link']);
                    array_push($yt_replace_id, '/' . $tmp_yt_id . '/');
                    array_push($yt_replace_data, $tmp_yt_data);
                    echo "<div style='padding-top: 20px'>" . $tmp_yt_id . "</div><br/>";
                }
                ?>


<?php 
                //            (($top['youtube_link'])? ("<div style='padding-top: 20px'>".show_video($top['id'], $top['youtube_link'])."</div><br/>"):"")
                ?>

                                        <!-- /Youtube -->

                                        <!-- Attach -->
<?php 
                if ($top['attach']) {
                    $attach = $top['attach'][0];
                    if ($attach['fname']) {
                        $att_ext = strtolower(CFile::getext($attach['fname']));
                        if ($att_ext == "swf") {
                            print "<br/>" . viewattachExternal($top['user_login'], $attach['fname'], "upload", "/blogs/view_attach.php?user="******"&attach=" . $attach['fname']) . "<br/>";
                        } elseif ($att_ext == 'flv') {
                            print "<br/>" . viewattachLeft($top['user_login'], $attach['fname'], "upload", $file, 1000, 470, 307200, true, $attach['small'] == 't' ? 1 : 0) . "<br/>";
                        } else {
                            print "<br/>" . viewattachLeft($top['user_login'], $attach['fname'], "upload", $file, 1000, 470, 307200, !($attach['small'] == 't'), $attach['small'] == 't' ? 1 : 0) . "<br/>";
                        }
                    }
                    echo '<br/>';
                    if (sizeof($top['attach']) > 1) {
                        echo "<a href=\"" . getFriendlyURL('commune', $top['id']) . "\"><b>" . blogs::ShowMoreAttaches(sizeof($top['attach'])) . "</b></a><br/><br/>";
                    }
                }
                ?>

                                        <!-- /Attach -->


									</div>
									<ul class="lo-i">
                                        <?php 
                $post_year = dateFormat('Y', $top['post_time']);
                ?>
                                        <li class="lo-i-cm">
                                            <a href="<?php 
                echo getFriendlyURL('commune', $top['id']);
                ?>
" <?php 
                echo $top['current_count'] == NULL && intval($top['count_comments']) != 0 ? 'style="font-weight:bold;"' : '';
                ?>
><?php 
                echo $top['closed_comments'] == 't' ? "Комментирование закрыто" : "Комментарии (" . intval($top['count_comments']) . ")";
                ?>
</a>
                                            <?php 
                if ($top['closed_comments'] == 'f') {
                    $top['current_count'] = $top['current_count'] == '' ? $top['a_count'] - 1 : $top['current_count'];
                    if ($top['a_count'] > 1) {
                        $unread = $top['a_count'] - 1 - $top['current_count'];
                    }
                    if ($unread > 0) {
                        ?>
                                                <a href="<?php 
                        echo getFriendlyURL('commune', $top['id']);
                        ?>
#unread" style="color:#6BA813; font-weight:bold;">(<?php 
                        echo $unread;
                        ?>
 <?php 
                        echo $unread == 1 ? "новый" : "новых";
                        ?>
)</a>
                                                <?php 
                    }
                    $unread = 0;
                }
                ?>
                                        </li>
										<li class="lo-i-c"><a href="/commune/?id=<?php 
                echo $top['commune_id'];
                ?>
"><?php 
                echo $top['commune_name'];
                ?>
</a>, <a href="/commune/?gr=<?php 
                echo $top['commune_group_id'];
                ?>
"><?php 
                echo $top['commune_group_name'];
                ?>
</a></li>
										<li><?php 
                echo $post_year > 2000 ? dateFormat("d.m.Y H:i", $top['post_time']) : '';
                ?>
</li>
									</ul>
								</div>
                                <br>

                            <?php 
                break;
            case '1':
                // Портфолио
                $work = $item;
                if ($work['work_is_blocked']) {
                    continue;
                }
                $is_fav = isset($favs['PF' . $work['portfolio_id']]) ? 1 : 0;
                $msg_id = $work['portfolio_id'];
                ?>
								<div class="lo lo-m" style='margin-bottom:0px !important;'>
									<ul class="lo-p">
										<li class="lo-s">
											<div class="b-layout_bordrad_3">
												<a href="/portfolio" class="lnk-dot-666">Работы</a>
											</div>
										</li>
										<li class="post-f-fav">
                                            <?php 
                if ($favs['PF' . $msg_id]) {
                    ?>
 
                                                <img src="/images/bookmarks/<?php 
                    echo $stars[$favs['PF' . $msg_id]['priority']];
                    ?>
" alt="" on="<?php 
                    echo $is_fav ? 1 : 0;
                    ?>
" id="favstar<?php 
                    echo 'PF' . $msg_id;
                    ?>
" <?php 
                    if ($uid) {
                        ?>
onclick="ShowFavFloatLenta(<?php 
                        echo $msg_id;
                        ?>
, <?php 
                        echo $uid;
                        ?>
, 'PF')" ><?php 
                    }
                    ?>
                                            <?php 
                } else {
                    ?>
                                                <img src="/images/bookmarks/bsw.png" alt="" on="<?php 
                    echo $is_fav ? 1 : 0;
                    ?>
" id="favstar<?php 
                    echo 'PF' . $msg_id;
                    ?>
" <?php 
                    if ($uid) {
                        ?>
onclick="ShowFavFloatLenta(<?php 
                        echo $msg_id;
                        ?>
, <?php 
                        echo $uid;
                        ?>
, 'PF')" ><?php 
                    }
                    ?>
                                            <?php 
                }
                ?>
                                            <ul class="post-f-fav-sel" style="display:none;" id="FavFloat<?php 
                echo $msg_id;
                ?>
"></ul>
										</li>
									</ul>
									<div class="utxt">
                                        <?php 
                print __LentaPrntUsrInfo($work, 'user_', '', '', false, true);
                ?>
                                        <?php 
                $sTitle = $work['name'];
                ?>
										<h3><a href="/users/<?php 
                echo $work['user_login'];
                ?>
/viewproj.php?prjid=<?php 
                echo $work['portfolio_id'];
                ?>
"><?php 
                echo reformat2($sTitle, 40, 0, 1);
                ?>
</a>&nbsp;</h3>
                                        <?php 
                $is_preview = $work['pict'] || $work['prev_pict'];
                if ($is_preview && $work['prev_type'] != 1) {
                    echo view_preview($work['user_login'], $work['prev_pict'], "upload", $align, true, true, '', 200) . "<br/><br/>";
                }
                close_tags($work['descr'], array('b', 'i'));
                $sDescr = $work['descr'];
                ?>
										<p><?php 
                echo reformat($sDescr, 80, 0, 0, 1);
                ?>
</p>



									</div>
									<ul class="lo-i">
                                        <?php 
                $post_year = dateFormat('Y', $work['post_time']);
                ?>
										<li class="lo-i-c"><a href="/freelancers/?prof=<?php 
                echo $work['prof_id'];
                ?>
"><?php 
                echo $work['prof_name'];
                ?>
</a></li>
										<li><?php 
                echo $post_year > 2000 ? dateFormat("d.m.Y H:i", $work['post_time']) : '';
                ?>
</li>
									</ul>
								</div>
                                <br>
                            <?php 
                break;
            case '4':
                // Блоги
                $item['thread_id'] = $item['theme_id'];
                $item['answers'] = $DB->rows("SELECT * FROM blogs_poll_answers WHERE thread_id IN (?l) ORDER BY id", array($item['thread_id']));
                $GLOBALS[LINK_INSTANCE_NAME] = new links('blogs');
                $user_id = $uid;
                ?>
								<div class="lo lo-m" id='idBlog_<?php 
                echo $item['thread_id'];
                ?>
' style='margin-bottom:0px !important;'>
									<ul class="lo-p">
										<li class="lo-s">
											<div class="b-layout_bordrad_3">
												<a href="/blogs" class="lnk-dot-666">Блоги</a>
											</div>
										</li>
										<li class="post-f-fav">
                                            <?php 
                $msg_id = $item['theme_id'];
                ?>
                                            <?php 
                if ($favs['BL' . $msg_id]) {
                    ?>
 
                                                <img src="/images/bookmarks/<?php 
                    echo $stars[$favs['BL' . $msg_id]['priority']];
                    ?>
" alt="" on="<?php 
                    echo $is_fav ? 1 : 0;
                    ?>
" id="favstar<?php 
                    echo 'BL' . $msg_id;
                    ?>
" <?php 
                    if ($uid) {
                        ?>
onclick="ShowFavFloatLenta(<?php 
                        echo $msg_id;
                        ?>
, <?php 
                        echo $uid;
                        ?>
, 'BL')" ><?php 
                    }
                    ?>
                                            <?php 
                } else {
                    ?>
                                                <img src="/images/bookmarks/bsw.png" alt="" on="<?php 
                    echo $is_fav ? 1 : 0;
                    ?>
" id="favstar<?php 
                    echo 'BL' . $msg_id;
                    ?>
" <?php 
                    if ($uid) {
                        ?>
onclick="ShowFavFloatLenta(<?php 
                        echo $msg_id;
                        ?>
, <?php 
                        echo $uid;
                        ?>
, 'BL')" ><?php 
                    }
                    ?>
                                            <?php 
                }
                ?>
                                            <ul class="post-f-fav-sel" style="display:none;" id="FavFloat<?php 
                echo $msg_id;
                ?>
"></ul>
										</li>
									</ul>
									<div class="utxt">
                                        <?php 
                print __LentaPrntUsrInfo($item, 'user_', '', '', false, true);
                ?>
                                        <?php 
                $sTitle = $item['title'];
                ?>
                                        <?php 
                $sMessage = $item['msgtext'];
                ?>
										<h3><a href="<?php 
                echo getFriendlyURL("blog", $item['theme_id']);
                ?>
"><?php 
                echo reformat2($sTitle, 30, 0, 1);
                ?>
</a>&nbsp;</h3>
										<p><?php 
                echo reformat($sMessage, 46, 1, -($item['is_chuck'] == 't'), 1);
                ?>
</p>

                                        <!-- Questions -->
			<?php 
                if ($item['question'] != '') {
                    ?>
			<div id="poll-<?php 
                    echo $item['thread_id'];
                    ?>
" class="poll">
				<div class="commune-poll-theme"><?php 
                    echo reformat($item['question'], 43, 0, 1);
                    ?>
</div>
				<div id="poll-answers-<?php 
                    echo $item['thread_id'];
                    ?>
">
				<?php 
                    if ($item['poll_multiple'] != 't') {
                        ?>
<div class="b-radio b-radio_layout_vertical"><?php 
                    }
                    ?>
				<?php 
                    if ($item['poll_closed'] == 't') {
                        ?>
<table class="b-layout__table b-layout__table_width_full"><?php 
                    }
                    ?>
				<?php 
                    $i = 0;
                    $max = 0;
                    if ($item['poll_closed'] == 't') {
                        foreach ($item['answers'] as $answer) {
                            $max = max($max, $answer['votes']);
                        }
                    }
                    foreach ($item['answers'] as $answer) {
                        ?>
				
				<?php 
                        if ($item['poll_closed'] == 't') {
                            ?>
                    <tr class="b-layout__tr">
                      <td class="b-layout__left b-layout__left_width_50"><label class="b-layout__txt" for="poll_<?php 
                            echo $i;
                            ?>
"><?php 
                            echo reformat($answer['answer'], 30, 0, 1);
                            ?>
</label></td>
                      <td class="b-layout__middle b-layout__middle_width_30 b-layout__middle_center"><?php 
                            echo $answer['votes'];
                            ?>
</td>
                      <td class=" b-layout__right "><div class=" res-line rl1" style="width: <?php 
                            echo $max ? round(100 * $answer['votes'] / $max * 3) : 0;
                            ?>
px;"></div></td>
                    </tr>
				<?php 
                        } else {
                            ?>
					<?php 
                            if ($item['poll_votes'] || !$user_id) {
                                ?>
						<div class="bp-gres"><?php 
                                echo $answer['votes'];
                                ?>
</div>
					<?php 
                            } else {
                                ?>
						
						<?php 
                                if ($item['poll_multiple'] == 't') {
                                    ?>
                        	<div class="b-check b-check_padbot_10">
								<input id="poll-<?php 
                                    echo $item['thread_id'];
                                    ?>
_<?php 
                                    echo $i;
                                    ?>
" class="b-check__input" type="checkbox" name="poll_vote[]" value="<?php 
                                    echo $answer['id'];
                                    ?>
" />
                                <label class="b-check__label b-check__label_fontsize_13" for="poll-<?php 
                                    echo $item['thread_id'];
                                    ?>
_<?php 
                                    echo $i++;
                                    ?>
"><?php 
                                    echo reformat($answer['answer'], 30, 0, 1);
                                    ?>
</label>
                            </div>
						<?php 
                                } else {
                                    ?>
                        	<div class="b-radio__item  b-radio__item_padbot_5">
                            	<table class="b-layout__table b-layout__table_width_full" cellpadding="0" cellspacing="0" border="0">
                                	<tr class="b-layout__tr">
                                    	<td class="b-layout__left b-layout__left_width_15"><input id="poll-<?php 
                                    echo $item['thread_id'];
                                    ?>
_<?php 
                                    echo $i;
                                    ?>
" class="b-radio__input b-radio__input_top_-3" type="radio" name="poll_vote" value="<?php 
                                    echo $answer['id'];
                                    ?>
" /></td>
                                        <td class="b-layout__right"><label class="b-radio__label b-radio__label_fontsize_13" for="poll-<?php 
                                    echo $item['thread_id'];
                                    ?>
_<?php 
                                    echo $i++;
                                    ?>
"><?php 
                                    echo reformat($answer['answer'], 30, 0, 1);
                                    ?>
</label></td>
                                    </tr>
                                </table>
                            </div>
						<?php 
                                }
                                ?>
					<?php 
                            }
                            ?>
					
				<?php 
                        }
                        ?>
				
				<?php 
                    }
                    ?>
				<?php 
                    if ($item['poll_closed'] == 't') {
                        ?>
</table><?php 
                    }
                    ?>
				<?php 
                    if ($item['poll_multiple'] != 't') {
                        ?>
</div><?php 
                    }
                    ?>
				</div>
				<?php 
                    if (!$item['poll_votes'] && $user_id && $item['poll_closed'] != 't') {
                        ?>
                <div class="b-buttons b-buttons_inline-block">
                    <span id="poll-btn-vote-<?php 
                        echo $item['thread_id'];
                        ?>
">
                        <a class="b-button b-button_flat b-button_flat_grey" href="javascript: return false;"  onclick="poll.vote('Blogs', <?php 
                        echo $item['thread_id'];
                        ?>
); return false;">Ответить</a>                
                        &nbsp;&nbsp;&nbsp;
                    </span>                
                    <span id="poll-btn-result-<?php 
                        echo $item['thread_id'];
                        ?>
"><a class="b-buttons__link b-buttons__link_dot_0f71c8" href="javascript: return false;" onclick="poll.showResult('Blogs', <?php 
                        echo $item['thread_id'];
                        ?>
); return false;">Посмотреть результаты</a>&nbsp;&nbsp;&nbsp;</span>
                </div>
				<?php 
                    } else {
                        ?>
				<span id="poll-btn-vote-<?php 
                        echo $item['thread_id'];
                        ?>
"></span>
				<span id="poll-btn-result-<?php 
                        echo $item['thread_id'];
                        ?>
"></span>
				<?php 
                    }
                    ?>
			</div>
            <br/>
			<?php 
                }
                ?>
                                        <!-- /Questions -->

                                        <!-- Youtube -->
<?php 
                if ($item['yt_link']) {
                    $tmp_yt_id = $item['id'] . 'ytlink' . rand(1, 1000000);
                    $tmp_yt_data = show_video($item['id'], $item['yt_link']);
                    array_push($yt_replace_id, '/' . $tmp_yt_id . '/');
                    array_push($yt_replace_data, $tmp_yt_data);
                    echo "<div style='padding-top: 20px'>" . $tmp_yt_id . "</div><br/>";
                }
                //            =(($item['yt_link'])? ("<div style='padding-top: 20px'>".show_video($item['id'], $item['yt_link'])."</div>"):"")
                ?>
                                        <!-- /Youtube -->

                                        <!-- Attach -->
<?php 
                if ($item['attach']) {
                    $attach = $item['attach'][0];
                    if ($attach['fname']) {
                        $att_ext = strtolower(CFile::getext($attach['fname']));
                        if ($att_ext == "swf") {
                            print "<br/>" . viewattachExternal($item['user_login'], $attach['fname'], "upload", "/blogs/view_attach.php?user="******"&attach=" . $attach['fname']) . "<br/>";
                        } elseif ($att_ext == 'flv') {
                            print "<br/>" . viewattachLeft($item['user_login'], $attach['fname'], "upload", $file, 1000, 470, 307200, true, $attach['small'] == 2 ? 1 : 0) . "<br/>";
                        } else {
                            print "<br/>" . viewattachLeft($item['user_login'], $attach['fname'], "upload", $file, 1000, 470, 307200, !$attach['small'], $attach['small'] == 2 ? 1 : 0) . "<br/>";
                        }
                    }
                    echo '<br/>';
                    if (sizeof($item['attach']) > 1) {
                        echo "<a href=\"" . getFriendlyURL("blog", $item['theme_id']) . "\"><b>" . blogs::ShowMoreAttaches(sizeof($item['attach'])) . "</b></a><br/><br/>";
                    }
                }
                ?>

                                        <!-- /Attach -->
									</div>
									<ul class="lo-i">
                                        <?php 
                $post_year = dateFormat('Y', $item['post_time']);
                ?>
                                        <li class="lo-i-cm">
                                            <a href="<?php 
                echo getFriendlyURL("blog", $item['theme_id']);
                ?>
" <?php 
                echo $item['current_count'] == NULL && intval($item['count_comments']) != 0 ? 'style="font-weight:bold;"' : '';
                ?>
><?php 
                echo $item['closed_comments'] == 't' ? "Комментирование закрыто" : "Комментарии (" . intval($item['count_comments']) . ")";
                ?>
</a>
                                            <?php 
                if (isset($item['status_comments']) && $item['count_comments'] > 0 && $item['status_comments'] < $item['count_comments'] && $item['status_comments'] != -100 && $item['closed_comments'] == 'f') {
                    $new_comments_num = $item['count_comments'] - $item['status_comments'];
                    ?>
                                              <a href="<?php 
                    echo getFriendlyURL("blog", $item['theme_id']);
                    ?>
#unread" style="color:#6BA813; font-weight:bold;">(<?php 
                    echo $new_comments_num;
                    ?>
 <?php 
                    echo $new_comments_num == 1 ? "новый" : "новых";
                    ?>
)</a>
                                              <?php 
                } else {
                    if (isset($item['status_comments']) && $item['count_comments'] > 0 && $item['status_comments'] < $item['count_comments'] && $item['status_comments'] == -100 && $item['closed_comments'] == 'f') {
                        $new_comments_num = $item['count_comments'];
                        ?>
                                              <a href="<?php 
                        echo getFriendlyURL("blog", $item['theme_id']);
                        ?>
#unread" style="color:#6BA813; font-weight:bold;">(<?php 
                        echo $new_comments_num;
                        ?>
 <?php 
                        echo $new_comments_num == 1 ? "новый" : "новых";
                        ?>
)</a>
                                              <?php 
                    }
                }
                ?>
                                        </li>
										<li class="lo-i-c"><a href="<?php 
                echo getFriendlyURL("blog_group", $item['commune_group_id']);
                ?>
"><?php 
                echo $item['commune_group_name'];
                ?>
</a></li>
										<li><?php 
                echo $post_year > 2000 ? dateFormat("d.m.Y H:i", $item['post_time']) : '';
                ?>
</li>
									</ul>
								</div>
                                <br>
                                    <?php 
                break;
        }
        $i++;
    }
    ?>

                    <?php 
    //                      $allThemesCount = lenta::GetLentaThemesCount($cms);
    ?>


<br/>
                        <?php 
    // Страницы
    $count = 4;
    $pages = ceil(($allWorkCount + $allThemesCount) / lenta::MAX_ON_PAGE);
    $html = '<div class="b-pager" >';
    if (is_array($count)) {
        list($scount, $ecount) = $count;
    } else {
        $scount = $ecount = $count;
    }
    if ($pages > 1) {
        $start = $page - $scount;
        if ($start < 1) {
            $start = 1;
        }
        $end = $page + $ecount;
        if ($end > $pages) {
            $end = $pages;
        }
        $html .= '<ul class="b-pager__back-next">';
        if ($page < $pages) {
            $html .= "<input type=\"hidden\" id=\"next_navigation_link1\" value=\"" . ($page + 1) . "\">";
            $html .= '<li class="b-pager__next" id="nav_next_not_active1"><a class="b-pager__link" href="javascript:void(0)" onClick="document.location.href=\'#lentatop\'; spiner.show(); xajax_Lenta_Show(' . ($page + 1) . '); return false;" id="PrevLink"></a>&nbsp;&nbsp;</li>';
        }
        if ($page > 1) {
            $html .= "<input type=\"hidden\" id=\"pre_navigation_link1\" value=\"" . ($page - 1) . "\">";
            $html .= '<li class="b-pager__back">&nbsp;&nbsp;<a id="NextLink" class="b-pager__link" href="javascript:void(0)" onClick="document.location.href=\'#lentatop\'; spiner.show(); xajax_Lenta_Show(' . ($page - 1) . '); return false;"></a></li>';
        }
        $html .= '</ul>';
        $html .= '<ul class="b-pager__list">';
        for ($i = $start; $i <= $end; $i++) {
            if ($i == $start && $start > 1) {
                $html .= '<li class="b-pager__item"><a class="b-pager__link" href="javascript:void(0)" onClick="document.location.href=\'#lentatop\'; spiner.show(); xajax_Lenta_Show(1); return false;">1</a></li>';
                if ($i == 3) {
                    $html .= '<li class="b-pager__item"><a class="b-pager__link" href="javascript:void(0)" onClick="document.location.href=\'#lentatop\'; spiner.show(); xajax_Lenta_Show(2); return false;">2</a></li>';
                } elseif ($i != 2) {
                    $html .= "<li class='b-pager__item'>&hellip;</li>";
                }
            }
            $html .= $page == $i ? '<li class="b-pager__item b-pager__item_active"><span class="b-pager__b1"><span class="b-pager__b2">' . $i . '</span></span></li>' : '<li class="b-pager__item"><a class="b-pager__link" href="javascript:void(0)" onClick="document.location.href=\'#lentatop\'; spiner.show(); xajax_Lenta_Show(' . $i . '); return false;">' . $i . '</a></li>';
            if ($i == $end && $pages - 1 > $end) {
                $html .= '<li class="b-pager__item">&hellip;</li>';
            }
        }
        $html .= '</ul>';
    }
    echo $html . '</div>';
    // Страницы закончились
    ?>
    	                  
          
<?php 
    $content = ob_get_contents();
    ob_end_clean();
    $content_js = '';
    if ($yt_replace_data) {
        foreach ($yt_replace_data as $key => $value) {
            $yt_replace_data[$key] = preg_replace("/^(.*)<script.*\$/sm", "\$1", $value);
            $content_js .= preg_replace("/^(.*<script type='text\\/javascript'>)(.*)(<\\/script>)\$/sm", "\$2", $value);
        }
        $content = preg_replace($yt_replace_id, $yt_replace_data, $content);
        $objResponse->script($content_js);
    }
    $objResponse->assign('lenta-cnt', 'innerHTML', $content);
    $objResponse->script($content_js);
    $objResponse->script('spiner.hide();');
    $objResponse->script('$$("#lenta_cats_checkboxes input[type=checkbox]").each(function(el) { el.set("disabled", false); });');
    $objResponse->script('fix_banner();');
    return $objResponse;
}
示例#24
0
    /**
     * Отправляет уведомления об удалении комментария в предложении в проекте.
     * 
     * @param array $dialogue информация о комментарии
     */
    public function dialogueMessageDeletedNotification($dialogue = array())
    {
        if ($dialogue) {
            $message = 'Здравствуйте, ' . $dialogue['uname'] . ' ' . $dialogue['usurname'] . '

Модераторы нашего ресурса удалили ваше сообщение в предложении по проекту &laquo;' . $dialogue['name'] . '&raquo;
' . $GLOBALS['host'] . getFriendlyURL('project', $dialogue['project_id']) . '

Мы призываем вас впредь не нарушать правила портала, иначе модераторы лишат ваш аккаунт доступа к сайту. 

Это сообщение было выслано автоматически, и ответ на него не будет рассматриваться. 

Надеемся на понимание, Команда Free-lance.ru
';
            self::Add(users::GetUid($err, 'admin'), $dialogue['login'], $message, '', 1);
        }
    }
示例#25
0
unset($_SESSION['new_public']);
switch ($project['kind']) {
    case 7:
        $type = 'конкурсе';
        $published = "Конкурс опубликован";
        break;
    case 4:
        $type = 'вакансии';
        $published = "Вакансия опубликована";
        break;
    default:
        $type = 'проекте';
        $published = "Проект опубликован";
        break;
}
$project_url = isset($project['url']) ? $project['url'] : $GLOBALS['host'] . getFriendlyURL('project', $project);
$url = urlencode($project_url);
$price = $project['cost'] != 0 && $project['price_display'] ? str_replace('&euro;', '€', $project['price_display']) : 'по договоренности';
$title = urlencode(iconv('CP1251', 'UTF-8', html_entity_decode($project['name'] . ' - ' . $price)));
$metrika = "yaCounter6051055.reachGoal('fl_share_proj');";
$banner_promo_inline = true;
?>
<div class="b-shadow b-shadow_center b-shadow_width_380 b-shadow_zindex_3">
    <div class="" style="padding: 20px "><?php 
/* @todo Найти нужный css-класс. Ждем верстальщика */
?>
        <div class="b-layout__title b-layout__title_center b-layout__title_padbot_20">
            <?php 
echo $published;
?>
        </div>
示例#26
0
}
include 'in_out_dialog.php';
?>

<?php 
$aGroup = commune::getGroupById($comm['group_id']);
$sGroup = $aGroup['name'];
$crumbs = array();
$crumbs[] = array("title" => "Сообщества", "url" => "/commune/");
if ($comm['id'] != commune::COMMUNE_BLOGS_ID) {
    $crumbs[] = array("title" => $sGroup, "url" => getFriendlyURL('commune_group', $comm['group_id']));
}
if ($comm['id'] == commune::COMMUNE_BLOGS_ID) {
    $category_id = __paramInit('int', 'cat', 'cat');
    $category = commune::getCategory($category_id);
    $crumbs[] = array("title" => $comm['name'], "url" => $category_id > 0 ? getFriendlyURL('commune_commune', $comm['id']) : "");
    if ($category_id) {
        $crumbs[] = array("title" => $category['name'], "url" => "");
    }
}
?>
<div class="b-community-article">
<?php 
echo getCrumbs($crumbs, $comm['id'] != commune::COMMUNE_BLOGS_ID ? "commune" : "new_blogs");
?>
<h1 class="b-page__title"><?php 
echo $comm['name'];
?>
</h1>

<div class="b-menu b-menu_line b-menu_relative b-menu_padbot_20">
示例#27
0
)</td>
  <td  style="width:19px; height:20px" class="brdtop">&nbsp;</td>
</tr>
</table>
<table width="100%" cellspacing="0" cellpadding="19" class="b-information-clause-content">
  <tr>
    <td style="padding:19px">
      <table width="100%" cellspacing="0" cellpadding="0">
        <col />
        <col />
        <col style="width:10px" />
        <?php 
    foreach ($communes as $comm) {
        ++$i;
        // Название.
        $name = "<a href='" . getFriendlyURL('commune_commune', $comm['id']) . "' class='blue' style='font-size:20px'>" . reformat($comm['name'], 25, 1) . '</a>';
        $descr = reformat($comm['descr'], 25, 1);
        // Сколько участников.
        $mAcceptedCnt = $comm['a_count'] - $comm['w_count'] + 1;
        $mCnt = $mAcceptedCnt . ' участник' . getSymbolicName($mAcceptedCnt, 'man');
        ?>
        
        
        
         <tr style="vertical-align:top">
            <td style="width:200px">

              <?php 
        echo __commPrntImage($comm, 'author_');
        ?>
            </td>
示例#28
0
            ?>
</a></li>
                        <?php 
        }
        //endfor;
        ?>
                    </ul>
                    <?php 
        if ($continue) {
            ?>
                    <ul>
                        <?php 
            for ($i = 3; $i < count($dinamic_content_articles); $i++) {
                ?>
                        <li><a href="<?php 
                echo getFriendlyURL('article', $dinamic_content_articles[$i]['article_id']);
                ?>
"><?php 
                echo reformat($dinamic_content_articles[$i]['title'], 25, 0, 1);
                ?>
</a></li>
                        <?php 
            }
            //for
            ?>
                    </ul>
                    <?php 
        }
        //if
        ?>
                 
示例#29
0
<?php

$g_page_id = '0|62';
require_once $_SERVER['DOCUMENT_ROOT'] . '/classes/stdf.php';
require_once $_SERVER['DOCUMENT_ROOT'] . '/classes/registration.php';
require_once $_SERVER['DOCUMENT_ROOT'] . '/classes/account.php';
require_once $_SERVER['DOCUMENT_ROOT'] . '/classes/splash_screens.php';
session_start();
$prj_id = __paramInit('int', 'prj_id', null, 0);
$contest = __paramInit('int', 'contest', null, 0);
$top = __paramInit('int', 'top', null, 0);
$top_days = __paramInit('int', 'top_days', null, 0);
$color = __paramInit('int', 'color', null, 0);
$bold = __paramInit('int', 'bold', null, 0);
$logo = __paramInit('int', 'logo', null, 0);
// страницу могут смотреть только зарегистрированые работодатели
if (!get_uid(0) || !is_emp() || !$prj_id) {
    include $_SERVER['DOCUMENT_ROOT'] . '/403.php';
    exit;
}
$prj_url = getFriendlyURL('project', $prj_id);
$stretch_page = true;
$header = '../header.php';
$footer = '../footer.html';
$content = 'tpl.contest_published.php';
$_SESSION['splash_prj_id'] = $prj_id;
//$_SESSION['do_show_splash'] = splash_screens::SPLASH_KONKURS;
include '../template2.php';
<?php

/**
 * Шаблон вариантов попапов.
 *
 * @todo: для реакции на нажания кнопок в попапе (data-popup... итп) здесь используется унифицированный механизм разработанный в bar_ext.js см popuper(); 
 */
$link = getFriendlyURL('project', array('id' => $project['id'], 'name' => $project['name']));
$name = reformat($project['name'], 30, 0, 1);
$kind = $project['kind'];
$is_show_popup = (bool) strpos($_SERVER['HTTP_REFERER'], "/registration/?from_prj={$project['id']}");
$project_type = $kind == 4 ? 'вакансию' : 'проект';
$url = $kind == 4 ? '/projects/?kind=4' : '/projects/';
$needs = array();
?>
<div id="project_answer_popup" class="b-shadow b-shadow_center b-shadow_width_450 b-shadow_pad_20 b-shadow_zindex_3 <?php 
if (!$is_show_popup) {
    ?>
b-shadow_hide<?php 
}
?>
">

<?php 
if ($project['pro_only'] == 't' && !$is_pro && ($project['verify_only'] == 't' && !$is_verify)) {
    ?>
    
   <div  class="b-layout__txt b-layout__txt_fontsize_15 b-layout__txt_padbot_20">
       Для ответа на <?php 
    echo $project_type;
    ?>