Доску объявлений преврашаем в АФИШУ

Рейтинг: +2 Голосов: 2 9743 просмотра
Доску объявлений преврашаем в АФИШУ

Превращаем доску объявлений в Афишу

1. Заходим в папку templates\components и находим файл com_board_item.tpl
и удаляем в конце строки.

<div class="bd_links">
    {if $user_id}
        {if $item.user_id && $item.user_id != $user_id}
            <span class="bd_message"><a href="/users/{$item.user_id}/sendmessage.html">{$LANG.WRITE_MESS_TO_AVTOR}</a></span>
        {/if}
    {/if}
    {if $item.user_login}
    <span class="bd_author"><a href="/board/by_user_{$item.user_login}">{$LANG.ALL_AVTOR_ADVS}</a></span>
    {/if}
</div>


2. В той же папке находим com_board_items.tpl
И удаляем (это уберет автора, дату установки, город и количество просмотров)

                                <div class="bd_item_details">
                                        {if $cat.showdate && $con.published}
                                            <span class="bd_item_date">{$con.fpubdate}</span>
                                        {/if}
                                        {if !$con.published && $con.is_overdue}
                                            <span class="bd_item_status_bad">{$LANG.ADV_EXTEND_INFO}</span>
                                        {elseif !$con.published}
                                            <span class="bd_item_status_bad">{$LANG.WAIT_MODER}</span>
                                        {/if}
                                        <span class="bd_item_hits">{$con.hits}</span>
                                        {if $con.city}
                                            <span class="bd_item_city"><a href="/board/city/{$con.enc_city|escape:'html'}">{$con.city}</a></span>
                                        {/if}
                                        {if $con.nickname}
                                            <span class="bd_item_user"><a href="{profile_url login=$con.login}">{$con.nickname}</a></span>
                                        {else}
                                            <span class="bd_item_user">{$LANG.BOARD_GUEST}</span>
                                        {/if}
                                        {if $con.cat_title}
                                            <span class="bd_item_cat"><a href="/board/{$con.category_id}">{$con.cat_title}</a></span>
                                        {/if}
                                </div>



3. Можно делать можно и не делать :) Убирает надпись добавить объявление
Напоминаю, что объявление можно добавить по ссылке .../board/add.html
Удаляем в файле com_board_cats.tpl


{if $cat.is_can_add || $root_id==$cat.id}
<div class="float_bar">
    <table cellpadding="2" cellspacing="0">
        <tr><td><img src="/components/board/images/add.gif" border="0"/></td>
        <td><a href="/board/{if $root_id!=$cat.id}{$cat.id}/{/if}add.html">{$LANG.ADD_ADV}</a></td></tr>
    </table>
</div>
{/if}


4. Мне НЕ нужна была сортировка по городам я её тоже убрал! для этого заходим в файлик com_board_order_form.tpl
И уничтожаем то, что ненужно :)


<td >{$LANG.CITY}: </td>      Надпись "Город"
<td >
    {$bcities}                    Тут список городов
</td>

Там же можно удалить еще ненужны пункты, я дополнительно удалил строки

<option value="user_id" {if $orderby=='user_id'} selected {/if}>{$LANG.ORDERBY_AVTOR}</option> Сортировка по автору
<option value="hits" {if $orderby=='hits'} selected {/if}>{$LANG.ORDERBY_HITS}</option> Сортировка по просмотрам
<option value="obtype" {if $orderby=='obtype'} selected {/if}>{$LANG.ORDERBY_TYPE}</option> Сортировка по типу

Убрал вообще поле ТИП оно мне за ненадобностью)
                <td >{$LANG.TYPE}: </td>
                <td >
                    <select name="obtype" id="obtype" onchange="$('form#obform').submit();">
                        <option value="all" {if (empty($btype))} selected {/if}>{$LANG.ALL_TYPE}</option>
                        {$btypes}
                    </select>
                </td>

Заходим в компонент. Добавляем рубрики (я добавил Кино, Концерты, Выставки, Клубные Тусовки)
Далее создаем группу пользователей "Афишаторы"
Даем им право тока добавлять объявления. В настройках компонента, ставим премодерацию! Вдруг Афишатор
будет безмозглый! Всем остальным группам запрешаем добавление объявлений! Вообщем настраиваем, как вам удобно!
Теперь договариваемся с кинотеатрами) Они создают аккаунт мы его толкаем в группу Афишаторов) И пусть
добавляют объявления. Либо Всю систему можно сделать под себя!!!


И так дальше! Нас не устраивает Вид) Дорабатываем его)

Заходим в файл com_board_item.tpl

И удаляем


    {if $item.is_vip}
        <span class="bd_item_is_vip">{$LANG.VIP_ITEM}</span>
    {/if}
    <span class="bd_item_date">{$item.pubdate}</span>
    <span class="bd_item_hits">{$item.hits}</span>
    {if $item.city}
        <span class="bd_item_city">
            <a href="/board/city/{$item.enc_city}">{$item.city}</a>
        </span>
    {/if}
    {if $item.user}
        <span class="bd_item_user">
            <a href="{profile_url login=$item.user_login}">{$item.user}</a>
        </span>
    {else}
        <span class="bd_item_user">{$LANG.BOARD_GUEST}</span>
    {/if}
   



    Это внутри объявления уберет просмотры автора и т. д.! Оставит тока возможность редактировать и удалить!
    Опять же тока для Админов!!!
   
Идем в конструктор форм и создаем форму с полями
Где Когда Начало Цена
И привязываем её к добавлению объявления!!!
Делаеться это в компоненте, редактируете рубрики - Там есть настройка Привязать форму :)

Теперь когда вы будете ходить по объявления увидете форму с надписями которые заполняються при добавлении
объявления!!!
Опять же форма появиться тока по ссылке .../board/add.html
То что нужно! Чтоб афишаторы не лазили где попало!


Теперь Там надо потредактировать поля! Убрать випку и прочую каку)
Летим в com_board_edit.tpl
И удаляем


        {if $form_do == 'edit' && $item.is_vip}
            <tr>
                <td height="35"><span>{$LANG.VIP_STATUS}:</span></td>
                <td height="35">до {$item.vipdate}</td>
            </tr>
        {/if}

        {if $is_admin || ($is_billing && $cfg.vip_enabled && ($form_do=='add' || ($form_do=='edit' && $cfg.vip_prolong)))}
            <tr>
                <td>
                    <span>{$LANG.MARK_AS_VIP}:</span>
                    <div style="color:gray">
                        VIP-объявления выделяются цветом и всегда находятся в начале списка
                    </div>
                </td>
                <td valign="top" style="padding-top:5px">
                    <select id="vipdays" name="vipdays" {if !$is_admin}onchange="calculateVip()"{/if}>
                        {section name=vipdays start=0 loop=$cfg.vip_max_days+1 step=1}
                            <option value="{$smarty.section.vipdays.index}">
                                {$smarty.section.vipdays.index}
                            </option>
                        {/section}
                    </select>
                    {$LANG.DAYS}

                    {if !$is_admin}
                        <input type="hidden" id="vip_day_cost" name="vip_day_cost" value="{$cfg.vip_day_cost}" />
                        <input type="hidden" id="balance" name="balance" value="{$balance}" />
                        <div id="vip_cost" style="margin-top:10px;display: none">
                            Стоимость: <span>0</span> баллов
                        </div>

                        <script type="text/javascript">
                            {literal}
                                function calculateVip(){

                                    var days = $('#vipdays').val();
                                    var cost = $('#vip_day_cost').val();

                                    if (Number(days)==0){
                                        $('#vip_cost').hide().find('span').html('0');
                                    } else {
                                        var summ = days * cost;
                                        $('#vip_cost').show().find('span').html(summ);
                                    }

                                }

                                function checkBalance(){
                                    var cost    = Number($('#vip_cost span').html());
                                    var balance = Number($('#balance').val());

                                    if (balance < cost){
                                        alert('На вашем балансе не достаточно средств\nдля покупки VIP-статуса на указанный срок');
                                        return false;
                                    } else {
                                        return true;
                                    }
                                }
                            {/literal}
                        </script>
                    {/if}

                </td>
            </tr>
        {/if}
       
Вот мы и убрали Випку


Убираем список в разделе заголовок и убираем все что связано с городами!
                <select name="obtype" id="obtype" style="width:120px">
                    <option value="0">-- {$LANG.SELECT_CAT} --</option>
                </select>

        <tr class="proptable">
            <td>
                <span>{$LANG.CITY}:</span>
            </td>
            <td height="35" valign="top">
                <input name="city_ed" class="text-input" type="text" id="city_ed" style="width:184px" value="{$item.city|escape:'html'}"/> {$LANG.OR_SELECTING} {$cities}
            </td>
        </tr>

С тех стороны осталось убрать проверку на город т. к. сеть у меня городская )
Идем в папку с компонентом находим файлик frontend.php
В этом файле комментируем строчки которые содержат фразу NEED_CITY их 2! Сохраняем! И у нас готова афиша
под городскую сеть)

Прошу не судить строго! Времени вот и получилось тяп ляп!!!

Хотелось бы чтоб написали как сделать видео проигрыватель для статей и стены...

И еще если скажете как 2 раз поставить доску объявлений! Чтоб она не пересекалась с этой! То предложу еще одно интересное решение, главное чтоб доска была с инсталятором!!!

Спасибо
       

Комментарии (0)

Нет комментариев. Ваш будет первым!

Голосуем

Самый нужный компонент