Ejemplo n.º 1
0
<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>
            <td style="padding:0 0 0 20px">
              <div>
              <?php 
        echo $name;
Ejemplo n.º 2
0
)" id="topAInp" name="top_days" value="<?php 
    echo $addedTD ? $addedTD : 1;
    ?>
"<?php 
    echo !$addedTD ? ' disabled' : '';
    ?>
 />
              дней = <span id="topSum"><?php 
    echo round(($addedTD ? $addedTD : 1) * $nTopPrice);
    ?>
</span> руб.
            <?php 
} else {
    ?>
              Вы закрепили объявление на <?php 
    echo $topDays . ' ' . getSymbolicName($topDays, 'day');
    ?>
.
              <?php 
    echo $remtverb . ' ' . $remTPeriod;
    ?>
            <?php 
}
?>
          </p>
        </li>
        <?php 
if ($remTPeriod) {
    ?>
          <li>
            <input type="checkbox" id="f5" name="top_ok" value="1" onchange="oktop(this)"<?php 
Ejemplo n.º 3
0
function DeleteTopic($backto, $message_id, $user_id, $mod, $page, $om, $site, $is_fav, $themesCount, $comm_id = false)
{
    global $session;
    session_start();
    $objResponse = new xajaxResponse();
    if (get_uid(false) != $user_id) {
        return $objResponse;
    }
    if (get_uid(false)) {
        $comm = commune::getCommuneIDByMessageID($message_id);
        $status = commune::GetUserCommuneRel($comm, get_uid(false));
    }
    if ($status['is_author'] != 1) {
        //#0024905
        $msg = commune::GetMessage($message_id);
        if ($msg['user_id'] == get_uid(false)) {
            $status['is_author'] = 1;
        }
    }
    if ($status['is_moderator'] == 1 || $status['is_admin'] == 1 || $status['is_author'] == 1 || hasPermissions('communes')) {
        // !!! Нужно очищать форму редактирования, если в ней в данный момент редактируется удаляемое сообщение. А то некрасиво.
        // !!! Можно будет еще добавлять сообщение вниз, то есть брать
        // верхнее сообщение из следующей страницы и добавлять вниз текущей страницы.
        $message_id = __paramValue('int', $message_id);
        if ($r = commune::DeleteMessage($message_id, intval($user_id), $mod, $deleted_time)) {
            if ($site == 'Topic') {
                $objResponse->script('document.location.href = "/commune/?id=' . $comm_id . '"');
            } elseif ($r < 0) {
                // Больше не удаляется.
                $top = commune::GetTopMessageByAnyOther($message_id, $user_id, $mod, TRUE);
                $objResponse->assign($backto, 'innerHTML', __commPrntTopic($top, $user_id, $mod, $om, $page, $site, $is_fav));
            } else {
                if (!hasPermissions('adm')) {
                    $objResponse->remove($backto);
                } else {
                    $moderator = new users();
                    $moderator->GetUserByUID(get_uid(false));
                    $deleted_time = explode(' ', $deleted_time);
                    $date = $deleted_time[0];
                    $time = $deleted_time[1];
                    $time = explode(':', $time);
                    $time = $time[0] . ':' . $time[1];
                    $moderatorInfo = "<span class=\"b-post__moderator_info_red\" Удалнено модератором [{$moderator->login}] {$moderator->uname} {$moderator->usurname}</span> <span class=\"b-post__moderator_info_gray\">[{$date} | {$time}]</span>";
                    $objResponse->script("commune_markPostAsDeleted('{$backto}', '{$moderator->login}', '{$moderator->uname}', '{$moderator->usurname}', '{$date}', '{$time}' )");
                }
                if ($themesCount) {
                    if ($themesCount - 1) {
                        $objResponse->assign('idThCnt', 'innerHTML', $themesCount - 1);
                        $objResponse->assign('idThCntS', 'innerHTML', getSymbolicName($themesCount - 1, 'messages'));
                    } else {
                        $objResponse->assign('idThBlck', 'innerHTML', '');
                    }
                }
            }
        }
    }
    return $objResponse;
}
Ejemplo n.º 4
0
    if ($admin['is_manager'] == 't') {
        $man[$admin['user_id']] = true;
    }
}
// Трое последних простых участников.
if (!($members = commune::GetMembers($id, commune::MEMBER_SIMPLE | commune::JOIN_STATUS_ACCEPTED, 0, 10))) {
    $members = array();
}
// Темы сообщества.
if (!$uid && $om == commune::OM_TH_MY || !($topics = commune::GetTopMessages($id, $om == commune::OM_TH_MY ? $uid : NULL, $uid, $user_mod, $om, ($page - 1) * commune::MAX_TOP_ON_PAGE, commune::MAX_TOP_ON_PAGE))) {
    $topics = array();
}
// Стили закладок.
$bmCls = getBookmarksStyles(commune::OM_TH_COUNT, $om);
// Сколько участников (вместе с админами тут).
$mCnt = $comm['a_count'] - $comm['w_count'] + 1 . ' участник' . getSymbolicName($comm['a_count'] - $comm['w_count'] + 1, 'man');
// +1
//if ($thCnt = $themesCount - $bannedCount)
//$thCnt = $themesCount - $bannedCount;
if ($om == commune::OM_TH_MY) {
    $thCnt = $themesCount;
}
$thCntS = ending($thCnt, 'пост', 'поста', 'постов');
$sort = $_COOKIE['commune_fav_order'] != "" ? $_COOKIE['commune_fav_order'] : "date";
$favs = commune::GetFavorites($uid, NULL, $sort, $comm['id']);
// ACL
$is_site_admin = hasPermissions('communes');
$is_comm_admin = $user_mod & (commune::MOD_COMM_ADMIN | commune::MOD_COMM_MODERATOR);
$is_author = $user_mod & commune::MOD_COMM_AUTHOR;
$categories = commune::getCategories($id, hasPermissions('communes'));
/*require_once( $_SERVER['DOCUMENT_ROOT'] . '/classes/stop_words.php' );
Ejemplo n.º 5
0
              <table border="0" cellspacing="0" cellpadding="0" width="100%">
                <tr style="vertical-align:middle">
                  <td class="big-s" style="font-family:Trebuchet MS;font-size:19px">
                    Место в <?php 
            echo $ps['name'];
            ?>
 оплачено до <?php 
            echo date('d.m.y', $to_time);
            ?>
                    <?php 
            $end_day = date('Y-m-d', $to_time);
            $days = ceil((strtotime($end_day) - $TODAY_TIME) / (24 * 3600));
            if (!$days) {
                $s_days = 'Истекает сегодня';
            } else {
                $s = getSymbolicName($days, 'day', $et);
                $s_days = 'остал' . ($et == 1 ? 'ся' : 'ось') . " {$days} {$s}";
            }
            ?>
                    <span class="orange-c"><br/>(<?php 
            echo $s_days;
            ?>
)</span>
                  </td>
                  <td style="padding:0 55px 0 0; text-align:right"> </td>
                </tr>
              </table>
            </div>
          <?php 
        }
    } else {
Ejemplo n.º 6
0
 /**
  * Выдает период -- сколько осталось ред. проекту висеть наверху ленты.
  *
  * @param integer $days      Возвращает количество целых дней.
  * @param integer $hours     Возвращает количество целых часов.
  * @param integer $minutes   Возвращает количество целых минут.
  * @param string  $verb  	 Возвращает статус "Осталось" | "Остался"
  * @return string Период
  */
 function getRemainingTopPeriod(&$days, &$hours, &$minutes, &$verb = NULL)
 {
     $time = time();
     $topTo = strtotime($this->_project['top_to']);
     if (($remTime = $topTo - $time) <= 0) {
         return NULL;
     }
     $days = (int) ($remTime / (24 * 3600));
     $hours = (int) (($remTime - $days * 24 * 3600) / 3600);
     $minutes = (int) (($remTime - $days * 24 * 3600 - $hours * 3600) / 60);
     getSymbolicName($hours, NULL, $he);
     if ($days) {
         getSymbolicName($days, NULL, $de);
         $period = $days . ' ' . ($de == 1 ? 'день' : ($de == 2 ? 'дня' : 'дней')) . ' ' . $hours . ' ' . ($he == 1 ? 'час' : ($he == 2 ? 'часа' : 'часов'));
         $et = $de;
     } else {
         getSymbolicName($minutes, NULL, $me);
         $period = $hours . ' ' . ($he == 1 ? 'час' : ($he == 2 ? 'часа' : 'часов')) . ' ' . $minutes . ' ' . ($me == 1 ? 'минута' : ($me == 2 ? 'минуты' : 'минут'));
         $et = $he;
     }
     $verb = 'Остал' . ($et == 1 ? 'ся' : 'ось');
     return $period;
 }
Ejemplo n.º 7
0
                echo getSymbolicName((strtotime($last_freeze['to_time']) - strtotime($last_freeze['from_time'])) / 60 / 60 / 24, 'day');
                ?>
</b>
                        <?php 
            } else {
                if ($freeze_set || $freezed_now) {
                    //if
                    ?>
                            Ваш аккаунт будет заморожен с <b><?php 
                    echo date('d.m.Y', strtotime($from_time));
                    ?>
 </b> на <b> <?php 
                    echo (strtotime($last_freeze['to_time']) - strtotime($last_freeze['from_time'])) / 60 / 60 / 24;
                    ?>
 <?php 
                    echo getSymbolicName((strtotime($last_freeze['to_time']) - strtotime($last_freeze['from_time'])) / 60 / 60 / 24, 'day');
                    ?>
</b>
                        <?php 
                }
            }
            //if
            ?>

                    </span>
                    <a href="javascript:void(0)" class="b-button b-button_margtop_-4 b-button_flat b-button_flat_blue b-button_flat-size_medium margleft_10 freezed_btn">
                        <?php 
            if ($_SESSION['is_freezed']) {
                ?>
                            Разморозить
                        <?php 
Ejemplo n.º 8
0
/**
* Проверяет наличие ранее сохраненных черновиков для проектов
*
*/
function CheckDraftsProject($new = false)
{
    $objResponse = new xajaxResponse();
    session_start();
    $uid = get_uid(false);
    if ($uid) {
        require_once $_SERVER['DOCUMENT_ROOT'] . "/classes/drafts.php";
        $count = drafts::CheckProjects($uid);
        if ($count) {
            if ($new) {
                $showDraftsCount = 3;
                $moreDraftsCount = $count - $showDraftsCount;
                $drafts = drafts::getUserDrafts($uid, 1, $showDraftsCount);
                ob_start();
                include $_SERVER['DOCUMENT_ROOT'] . "/public/new/tpl.drafts_block.php";
                $html = ob_get_clean();
                //$objResponse->script('$("draft_div_info").setStyle("display","block")');
                $objResponse->assign('draft_div_info_text', 'innerHTML', $html);
            } else {
                // после введения нового шаблона добавления проектов, это можно удалить
                $objResponse->script('$("draft_div_info").setStyle("display","block")');
                $objResponse->assign('draft_div_info_text', 'innerHTML', 'Не забывайте, у вас в черновиках <a href="/drafts/?p=projects">' . ending($count, 'сохранен', 'сохранено', 'сохранено') . ' ' . $count . ' ' . getSymbolicName($count, 'projects') . '</a>');
            }
        }
    }
    return $objResponse;
}
Ejemplo n.º 9
0
    } elseif ($_SESSION['uid'] && (!$read_only || $read_only && !$mod)) {
        ?>

                <script type="text/javascript">draft_type = 3;</script>

                <div id="editmsg"><a name="bottom"></a>

    <?php 
        $count_drafts = drafts::CheckBlogs($uid);
        if ($count_drafts) {
            ?>
        <div class="form fs-p drafts-v" id="draft_div_info">
          <b class="b1"></b>
          <b class="b2"></b>
            <div class="form-in" id="draft_div_info_text"><?php 
            echo 'Не забывайте, у вас в черновиках <a href="/drafts/?p=blogs">' . ending($count_drafts, 'сохранен', 'сохранено', 'сохранено') . ' ' . $count_drafts . ' ' . getSymbolicName($count_drafts, 'blogs') . '</a>';
            ?>
</div>
        <b class="b2"></b>
        <b class="b1"></b>
      </div>
    <?php 
        }
        ?>


<?php 
        $request_uri = ($gr ? "?gr={$gr}&" : "?") . "ord={$ord}" . ($edit_msg["id"] ? "&tr={$edit_msg["id"]}" : ($thread ? "&tr={$thread}" : ""));
        ?>

            <?php 
Ejemplo n.º 10
0
    $prjs = array();
}
$all_count = (int) $all_count >= 0 ? $all_count : $pocnt[$folder];
$pages = ceil($all_count / 40);
?>

	<div class="b-layout b-layout_relative">
      <?php 
if (sizeof($prjs)) {
    foreach ($prjs as $prj) {
        $prj['name'] = htmlspecialchars($prj['name'], ENT_QUOTES, 'CP1251', false);
        $prj['descr'] = htmlspecialchars($prj['descr'], ENT_QUOTES, 'CP1251', false);
        $prj['role'] = '1';
        // авторы проектов все работодатели поголовно
        $prj_count++;
        $msg_cnt = $prj['msg_count'] ? $prj['msg_count'] . ' ' . getSymbolicName($prj['msg_count'], $prj['kind'] == 7 ? 'comments' : 'messages') : '';
        if ($prj['kind'] != 7) {
            $nmsg_cnt = $prj['frl_new_msg_count'] ? $prj['frl_new_msg_count'] . ' ' . ending($prj['frl_new_msg_count'], 'новое сообщение', 'новых сообщения', 'новых сообщений') : ($prj['emp_new_msg_count'] ? 'Сообщение не прочитано' : 'Сообщение прочитано');
        } else {
            $nmsg_cnt = $prj['frl_new_msg_count'] ? $prj['frl_new_msg_count'] . ' ' . ending($prj['frl_new_msg_count'], 'новый', 'новых', 'новых') : '';
        }
        $link = "/projects/{$prj['id']}?f=3";
        $is_personal = $prj['kind'] == 9;
        $is_contest = in_array($prj['kind'], array(projects::KIND_CONTEST, projects::KIND_CONTEST7));
        $is_not_payed_vacancy = $prj['kind'] == projects::KIND_VACANCY && $prj['state'] == projects::STATE_MOVED_TO_VACANCY;
        ?>

        <div id="prjoffer_box<?php 
        echo $prj['offer_id'];
        ?>
" class="b-post b-post_padtop_10 b-post_padbot_15 b-post_relative b-post_overflow_hidden">
Ejemplo n.º 11
0
		<?php 
        if ($notHiddenOffersCount != $real_offers_count) {
            // сколько ртветов скрыто
            $count_hidden_offers = $real_offers_count - $notHiddenOffersCount;
        }
        ?>
	<?php 
    } elseif ($real_offers_count == 0) {
        ?>
        <h2 class="b-layout__title">Никто из фрилансеров пока не ответил<?php 
        echo get_uid() ? ', вы первый' : '';
        ?>
</h2>
	<?php 
        /*} elseif ($user_offer_exist) { //else?>
              <h2  class="b-layout__title">Ваше предложение</h2>
          <? */
    } elseif ($notHiddenOffersCount == 0 && $real_offers_count != 0) {
        ?>
    	<h2  class="b-layout__title"><?php 
        echo $real_offers_count . ' ' . getSymbolicName($real_offers_count, 'hidden_offers');
        ?>
</h2>
    	<?php 
        $count_hidden_offers = $real_offers_count;
        ?>
    <?php 
    }
    ?>
    <?php 
}
Ejemplo n.º 12
0
/**
 * Возвращает HTML содержимое списка сообществ
 * 
 * @param  int $page номер страницы
 * @param  array  $communes массив со списком сообществ
 * @param  string $sub_om   код дополнительного условия сортировки или вкладки
 * @param  int $total общее количество сообществ
 * @param  string $search   если есть поисковоая строка для подсвечивания найденого в названияих и описаниях
 * @return string HTML содержимое списка сообществ
 */
function __commPrintPage($page = 1, $communes = array(), $total = 0, $sub_om = '', $search = null, $is_ajax = false)
{
    $sHtml = '';
    if (!is_array($communes) || !count($communes)) {
        return '';
    }
    // начало нумерации сообществ для своей сортировки
    $limit = commune::MAX_ON_PAGE;
    $start_position = ($page - 1) * $limit;
    $i = 0;
    foreach ($communes as $comm) {
        $i++;
        // Название.
        $comm_url = getFriendlyURL('commune_commune', $comm['id']);
        $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>";
        $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');
        $sHtml .= '<div class="b-post b-post_padbot_20">';
        $sHtml .= '<div class="b-post__body b-post__body_bordbot_solid_f0  b-post__body_padbot_30 b-layout">';
        $sHtml .= '<table class="b-layout__table" cellpadding="0" cellspacing="0" border="0">';
        $sHtml .= '<tr class="b-layout__tr">';
        if ($sub_om == commune::OM_CM_JOINED_MY) {
            $sHtml .= '
            <div class="form c-my-sort">
        		<b class="b1"></b>
        		<b class="b2"></b>
        		<div class="form-in">
        			<a onclick="xajax_CommuneMove(' . $comm['id'] . ', \'>\', ' . ($group_id ? $group_id : 0) . ', 10, ' . $page . ');" href="javascript:void(0);" class="b-sqr b-sqr-t1"><em></em></a>
        			<a onclick="$(\'commune_set_order_' . $comm['id'] . '\').setStyle(\'display\', \'\');" href="javascript:void(0);" class="b-sqr b-sqr-t2"><em>' . ($start_position + $i) . '</em></a>
        			<a onclick="xajax_CommuneMove(' . $comm['id'] . ', \'<\', ' . ($group_id ? $group_id : 0) . ', 10, ' . $page . ');" href="javascript:void(0);" class="b-sqr b-sqr-t3"><em></em></a>
        		</div>
        		<b class="b2"></b>
        		<b class="b1"></b>
        	</div>';
        }
        // картинка сообщества
        $js = '<script type="text/javascript">seo_print(\'' . clearTextForJS(__commPrntImage($comm, 'author_')) . '\');</script>';
        if ($comm['is_blocked'] == 't') {
            // если сообщество заблокировано
            $sHtml .= __commPrntBlockedBlock($comm['blocked_reason'], $comm['blocked_time'], $comm['admin_login'], "{$comm['admin_name']} {$comm['admin_uname']}");
        }
        // левый блок, вставка изображения сообшщества
        $sHtml .= '<td class="b-layout__left b-layout__left_width_220">' . ($is_ajax ? __commPrntImage($comm, 'author_') : $js) . '</td>';
        // начало правого блока
        $sHtml .= '<td class="b-layout__right"><div class="b-post__content">';
        // блок голосования
        $sHtml .= '<div class="b-voting b-voting_float_right"><div id="idCommRating_' . $comm['id'] . '">' . __commPrntRating($comm, get_uid(false)) . '</div></div>';
        // название сообщества
        $sHtml .= '<h3 class="b-post__title b-post__title_padbot_15">' . $name . '</h3>';
        // описание сообщества
        $sHtml .= '<div class="b-post__txt b-post__txt_padbot_20">' . $descr . '</div>';
        // инфа о сообществе
        $sHtml .= '<div class="b-post__foot">';
        // количество участников и постов
        $sHtml .= '<div class="b-post__txt b-post__txt_padbot_10 b-post__txt_fontsize_11">' . '<a class="b-post__link b-post__link_fontsize_11 b-post__link_float_right" href="' . $comm_url . '">' . $comm['themes_count'] . ' ' . ending($comm['themes_count'], 'пост', 'поста', 'постов') . '</a>' . $mAcceptedCnt . ' ' . ending($mAcceptedCnt, 'участник', 'участника', 'участников') . '</div>';
        // дата создания
        $sHtml .= '<div class="b-post__txt b-post__txt_padbot_10 b-post__txt_fontsize_11">Создано ' . __commPrntAgeEx($comm) . '</div>';
        // создатель
        $sHtml .= '<div class="b-post__txt b-post__txt_padbot_30 b-post__txt_fontsize_11">Создатель ' . '<span class="b-username b-username_bold b-username_fontsize_11">' . __commPrntUsrInfo($comm, 'author_', '', '', false) . '</span>' . '</div>';
        // вступить в сообщество
        if ($uid = get_uid(false)) {
            $sHtml .= '<span id="commSubscrButton_' . $comm['id'] . '">' . __commPrntSubmitButton($comm, $uid, null, 'green') . '</span>';
            $sHtml .= __commPrntJoinButton($comm, $uid, null, 1);
        }
        $sHtml .= '</div>';
        // закрытие тега div.b-post__foot
        if ($sub_om == commune::OM_CM_JOINED_MY) {
            $sHtml .= '
        <div id="commune_set_order_' . $comm['id'] . '" class="overlay ov-out ov-commune-sort" style="display: none;">
            <b class="c1"></b>
            <b class="c2"></b>
            <b class="ov-t"></b>
            <div class="ov-r">
                    <div class="ov-l">
                            <div class="ov-in">
                                    <label>Позиция</label> <input type="text" id="position_time_' . $comm['id'] . '" name="position_time_' . $comm['id'] . '" size="3">&nbsp;
                                    <button onclick="xajax_CommuneSetPosition(' . $comm['id'] . ', ' . ($start_position + $i) . ', $(\'position_time_' . $comm['id'] . '\').get(\'value\'), ' . $total . ', ' . ($group_id ? $group_id : 0) . ', 10, ' . $page . ');">Применить</button>&nbsp;
                                    <a href="javascript:void(0);" onclick="$(this).getParent(\'.overlay\').setStyle(\'display\', \'none\');" class="lnk-dot-666">Отменить</a>
                            </div>
                    </div>
            </div>
            <b class="ov-b"></b>
            <b class="c3"></b>
            <b class="c4"></b>
        </div>';
        }
        $sHtml .= '</div></td>';
        $sHtml .= '</tr></table></div></div>';
    }
    return $sHtml;
}