Cotonti - Доска объявлений Модуль доски объявлений для CMF Cotonti

Модуль доски объявлений для CMF Cotonti.

Cotonti — Доска объявлений
Модуль доски объявлений для CMF Cotonti.

Это расширение позволяет организовать доску объявлений на Вашем сайте под управлением Cotonti. Оно является полноценным модулем со своей таблицей объявлений в БД с поддержкой экстраполей и своей структурой категорий.

Системные требования и ограничения:

Наличие на Вашем сайте установленной библиотеки Cotonti Lib версии 2.0.1 — 2.0.3
В качестве шаблонизатора используется View

Установка:
— Скопировать модуль на сервер или склонировать репозиторий в папку modules/advboard
— Установить модуль из панели администратора
— В папке inc установить права на запись на файл ‘send.txt’

Возможности:
— подача объявлений на сайт
— опциональное автоутверждение объявлений или премодерация для каждой категории
— уведомление пользователя о новых комментариях к своему объявлению на e-email
— уведомление пользователя об истечении срока публикации объявления на свой e-email
— редактирование пользователем своих объявлений
— незарегистрированные пользователи могут редактировать объявление в пределах сессии
— «Мои объявления» в профиле пользователя
— Список объявлений пользователя на странице его профиля
— «Прилепленные» объявления выводятся сверху списка
— Вывод списка последних объявлений
— Виджет объявлений
— Сравнение объявлений

Права пользователей:
Права пользователей зависят от прав на категории доски объявлений.
Дополнительные права:
1 — загрузка файлов
2 — автоутверждение объявлений.

Загрузка файлов используется в шаблоне редактирования объявления. Если пользователь обладает этим правом, то вы можете отобразить для него виджет загрузки модуля файлов.

Если пользователь не обладает правом 2 (Автоутверждение объявлений), то его объявления попадают на модерацию и без подверждения администратора не будут показаны другим пользователям.

Виджет объявлений:
Для вывода списка в произвольное место используется виджет advboard_controller_Widget::widget(). Объявлен в файле: modules/advboard/controller/Widget.php

Сам виджет имеет вид:

public static function widget($condition = array(), $tpl = 'advboard.widget.list', $items = 0, $order = '', $onlyActive = true, $pagination = 'pld', $params = array())

 

где:

$condition — SQL запрос для запроса объявлений
$tpl — файл шаблона для вывода
$items — количество элементов для вывода
$order — порядок сортировки по правилам SQL
$onlyActive — Выводить только активные объявления
$pagination — параметр для постраничной навигации, если будет использоваться

Обратите внимание на то что в качестве шаблонизатора виджет использует View из Cotonti Lib а не coTemplate.

Подробнее понять его работу можно посмотрев код виджета.

Если Вы хотите вывести список в tpl-файле, то CoTemplate, в отличии от View не умеет работать с класами. В этом случае используйте виджет-обертку для этого метода advboard_widget(). см. modules/advboard/inc/advboard.functions.php

 

Письма с уведомлениями:
Если в настройках включено уведомление администратора о новых объявлениях, то он получает уведомления о всех добавленных или измененных объявлениях, иначе только если объявление попало на модерацию.

Вы можете создавать шаблоны уведомлений именуя файлы следующим образом: advboard.notify_admin_new.<lang>.<category>.php

 

Разное:

http://<ваш_домен>/advboard/unvalidated — объявления на модерации
http://<ваш_домен>/advboard/saved-drafts — неопубликованные (черновики)

Мои объявления: cot_url('advboard', array('m' => 'user'))
Объявления пользователя: cot_url('advboard', array('m' => 'user', 'uid' => $user_id))
Количество объявлений пользователя: cot_user_ads_count($user_id)

RSS лента: cot_url('advboard', 'm=rss&c=<код_категории>')

Если пользователю создать екстраполя phone и city (city_name), то он может использовать их, чтобы не заполнять в объявлениях одну и ту же информацию.

фильтр поиска в расширение не входит. Там используется универсальный плагин фильтра для моделей SOM из Cotonti-lib. На форуме Cotonti другой плагин, не этот.
Но вы и сами легко можете сделать форму фильтров как на сайте образце и обработать запрос и скорректировать условие выборки используя хук: advboard.list.query
см. modules/advboard/controller/Main.php

С главной страницей доски пока не определился. На разных сайтах объявления выводятся по разным критериям. Используйте для их вывода виджет: advboard_controller_Widget::adsList(); При вызове метода Вы сможете задать нужные параметры выборки и количество выводимых объявлений.

Вот в самом конце странички есть пункт «История изменений». Там сказано:
Версия v.3.0.1 Совместимость с Cotonti Lib v2.0.
Это значит, что если Вы скачали доску объявлений последней версии на текущий момент времени (3.0.1), то Вам нужна Cotonti Lib версии 2.0. Скачайте ее. Из мастер-ветки Cotonti Lib.

Установка элементарна. Она ничем не отличается от установки любого другого расширения. Установили Cotonti Lib, скопировали модуль в папку modules. Именно в modules а не в какую другую, как некоторые уникумы. Зашли в админке — жмите «Установить». Если нужно свои шаблоны — копируете нужные в свою тему. На сайте Cotonti есть исчерпывающая информация по установке расширений, копировать которую сюда просто нет смысла.

В архиве переименуйте папку advboard-master в advboard. Иначе не отображается в списке модулей в админке.

Тип: Модуль
Версия: 3.0.3
Совместимость: Siena

GitHub: https://github.com/Alex300/advboard

Code=advboard
Name=Ads board
Description=Ads board module for Cotonti Siena
Version=3.0.3
Date=August 29, 2017
Author=Kalnov Alexey 
Copyright=(с) https://github.com/Alex300
Requires_modules=users
Recommends_modules=files
Requires_plugins=cotontilib
Recommends_plugins=regioncity

Готовые плагины для Cotonti — Веб-разработка на CMS / CMF Cotonti
Готовые плагины и модули, услуги по веб-разработке на Cotonti
Cotonti, плагины, модули, фриланс биржа, портал товаров и услуг, скачать плагины для Cotonti

Хостинг без головной боли

Тариф "Старт" - оптимально, не дорого, полностью готовый и проверенный хостинг для установки такого сайта, - сборка фриланс биржи и маркетплейс услуг, продукции, цифровых товаров.

1 месяц на тест бесплатно + сервисный домен
(свой домен прикрепить и протестирвать можно даже на бесплатном тестовом периоде хостинга)

Оставьте комментарий

Прокрутить вверх