Доброго времени суток!
Представляю на эксплуатацию новый релиз компонента ИнстантАфиша. Приношу свои извинения, тем, кто ставил предыдущую версию и ждали долго доработки. Версия 1.0.0. была с большим количеством багов. Причем, некоторые баги появились после того, как был произведен поспешный багфикс. Поэтому у многих не отображались мероприятия по ссылкам "Скоро" и "Архив".
Итак, по порядку что сделано.
1. Исправлен баг с непоказом мероприятий по ссылкам "Скоро" и "Архив".
2. Переделан вывод мероприятий на главной странице компонента. Теперь на главной выводятся все мероприятия. А пользователь дальше уже может отфильтровать по городу, категории, дате...
3. Прозиведена оптимизация запросов и кода для уменьшения нагрузки на сервер. Выявлен источник чрезмерной нагрузки и устранен. Кроме того для блока календаря введено кэширование. Добавлен дополнительный индекс в таблицу cms_poster_bind. Нагрузка на уровне других компонентов системы.
4. Была замечена некорректная работа фильтров на главной компонента. Все фильтры пересмотрены и кое-что переделано.
5. Введена возможность подписки пользователя на мероприятие. В расписании напротив мероприятия появляется кнопка "Подписаться". При нажатии на кнопку посредством ajax грузится форма выбора дня. Пользователь выбирает дату, когда ему отправить уведомление и сохраняет. Соответственно добавлена задача в CRON для отправки уведомлений личным сообщением и на почту. В админке есть возможность отключить уведомления, выбрать лимит сообщений за один запуск задачи и отключение уведомления на e-mail. При выполнении задачи данные с таблицы удаляются, это сделано для того, чтобы при повторном запуске задачи пользователь не получал повторное уведомление. По умолчанию(если поле незаполнено) уведомляется 20 пользователей за один запуск задачи. Если нагрузка большая и сервер не будет справляться можно уменьшить количество и запускать задачу чаще. В общем, есть возможность тонкой настройки.
6. При просмотре страницы мероприятия или заведения добавлена возможность просмотра прошедших сеансов.
7. При редактировании привязок добавлена возможность удаления привязки.
8. Добавлена пагинация для страниц просмотра мероприятий. В админке можно назначить число мероприятий на страницу.
Кроме того, исправлено много мелких недочетов. Все перечислять не буду. Заметите при работе.
В общем, компонент более менее начал приобретать совершенный вид.
Собственно, сам архив компонента ИнстантАфиша 1.1.0.
Инструкцию по установке и обновлению читайте внутри. Стандартная установка и обновление, ничего лишнего. Перед установкой не забудьте сделать бэкап БД.
1.Если добавили категорию мероприятий или заведений, чтобы категория появилась во фронтэнде, нужно обнулить сессию(разлогиниться и залогиниться по новой).
2. Если добавили привязку, чтобы корректно отображалось количество мероприятий в календаре, нужно очистить кэш сайта(папку /cache/).
3. На хостинге должно быть включено расширение calendar
Ну и всё. Спасибо всем, кто тестировал и сообщал о багах и ошибках.
Приятного пользования!
UPDATE 04.06.2012 Исправлено дублирование целей комментариев в таблице cms_comment_targets при переустановке компонента в соответсвии с заметкой deltas-a. Также исправлено дублирование модулей при переустановке компонента. Изменен только файл /components/poster/install.php. Для тех, кто уже установил, просто перезалейте этот файл.
Основные изменения:
— исправлена вложенность ури. Полностью короткие ури. Кроме того, у кого стоит старая моя афиша, 301-редирект со старых адресов на новые.
-js-ссылки календаря(следующий и предыдущий месяц). Из-за обычных ссылок в индекс попадало сотни и тысячи пустых страниц. Кроме того настроен каноникал.
-изменена каруселька изображений;
-рефакторинг кода.
-да и ещё много чего по мелочи. Всё уже и не помню.
Важно: тестировалось очень слабо. Прошу потестировать и если будут ошибки, отписаться.
Если потестируем и доведем до ума версию для 1.9, постараюсь адаптировать под новые версии ICMS. Если будет спрос. На форуме поднималась тема. Возможно доработают кто-то из отписавшихся в ветке.
Представляю на эксплуатацию новый релиз компонента ИнстантАфиша. Приношу свои извинения, тем, кто ставил предыдущую версию и ждали долго доработки. Версия 1.0.0. была с большим количеством багов. Причем, некоторые баги появились после того, как был произведен поспешный багфикс. Поэтому у многих не отображались мероприятия по ссылкам "Скоро" и "Архив".
Итак, по порядку что сделано.
1. Исправлен баг с непоказом мероприятий по ссылкам "Скоро" и "Архив".
2. Переделан вывод мероприятий на главной странице компонента. Теперь на главной выводятся все мероприятия. А пользователь дальше уже может отфильтровать по городу, категории, дате...
3. Прозиведена оптимизация запросов и кода для уменьшения нагрузки на сервер. Выявлен источник чрезмерной нагрузки и устранен. Кроме того для блока календаря введено кэширование. Добавлен дополнительный индекс в таблицу cms_poster_bind. Нагрузка на уровне других компонентов системы.
4. Была замечена некорректная работа фильтров на главной компонента. Все фильтры пересмотрены и кое-что переделано.
5. Введена возможность подписки пользователя на мероприятие. В расписании напротив мероприятия появляется кнопка "Подписаться". При нажатии на кнопку посредством ajax грузится форма выбора дня. Пользователь выбирает дату, когда ему отправить уведомление и сохраняет. Соответственно добавлена задача в CRON для отправки уведомлений личным сообщением и на почту. В админке есть возможность отключить уведомления, выбрать лимит сообщений за один запуск задачи и отключение уведомления на e-mail. При выполнении задачи данные с таблицы удаляются, это сделано для того, чтобы при повторном запуске задачи пользователь не получал повторное уведомление. По умолчанию(если поле незаполнено) уведомляется 20 пользователей за один запуск задачи. Если нагрузка большая и сервер не будет справляться можно уменьшить количество и запускать задачу чаще. В общем, есть возможность тонкой настройки.
6. При просмотре страницы мероприятия или заведения добавлена возможность просмотра прошедших сеансов.
7. При редактировании привязок добавлена возможность удаления привязки.
8. Добавлена пагинация для страниц просмотра мероприятий. В админке можно назначить число мероприятий на страницу.
Кроме того, исправлено много мелких недочетов. Все перечислять не буду. Заметите при работе.
В общем, компонент более менее начал приобретать совершенный вид.
Собственно, сам архив компонента ИнстантАфиша 1.1.0.
Инструкцию по установке и обновлению читайте внутри. Стандартная установка и обновление, ничего лишнего. Перед установкой не забудьте сделать бэкап БД.
Важно!!!
Чтобы не повторять каждый раз, нужно знать.1.Если добавили категорию мероприятий или заведений, чтобы категория появилась во фронтэнде, нужно обнулить сессию(разлогиниться и залогиниться по новой).
2. Если добавили привязку, чтобы корректно отображалось количество мероприятий в календаре, нужно очистить кэш сайта(папку /cache/).
3. На хостинге должно быть включено расширение calendar
Ну и всё. Спасибо всем, кто тестировал и сообщал о багах и ошибках.
Приятного пользования!
UPDATE 04.06.2012 Исправлено дублирование целей комментариев в таблице cms_comment_targets при переустановке компонента в соответсвии с заметкой deltas-a. Также исправлено дублирование модулей при переустановке компонента. Изменен только файл /components/poster/install.php. Для тех, кто уже установил, просто перезалейте этот файл.
UPDATE 16.01.2014
Выкладываю ещё один архив, слегка доработанныйСкачать
Можно ставить поверх версии 1.1.0 с заменой файлов. И опять только для ICMS 1.9Основные изменения:
— исправлена вложенность ури. Полностью короткие ури. Кроме того, у кого стоит старая моя афиша, 301-редирект со старых адресов на новые.
-js-ссылки календаря(следующий и предыдущий месяц). Из-за обычных ссылок в индекс попадало сотни и тысячи пустых страниц. Кроме того настроен каноникал.
-изменена каруселька изображений;
-рефакторинг кода.
-да и ещё много чего по мелочи. Всё уже и не помню.
Важно: тестировалось очень слабо. Прошу потестировать и если будут ошибки, отписаться.
Если потестируем и доведем до ума версию для 1.9, постараюсь адаптировать под новые версии ICMS. Если будет спрос. На форуме поднималась тема. Возможно доработают кто-то из отписавшихся в ветке.
Постараюсь ближе к осени, переделать и переработать. Учту. Внутри компонента многое можно и нужно исправить и переделать.
К тому же сейчас работаю над одной разработкой. Возможна она сможет помочь. Связано с переопределением урлов.
спасибо.
Т.е иногда заходя на страницу мероприятия, я их вижу, а иногда они не грузятся. То же было на версии 1.0.
И еще по подписке пользователей предложение: добавить возможность отписаться, если вдруг человек подписался и сразу передумал.
Возможности отписаться не будет. Поймите правильно. Можно бесконечно усложнять всё. Это приведет к тому, что объем страницы будет всё больше и больше. И будет возрастать нагрузка на сервер. А это тоже не очень хорошо. Ну, подписался, передумал. Получит уведомление и удалит его. Ничего критичного нет.
Нужна помощь.
Добавил мероприятие, пометил тегом "литературный вечер". Нажал на тег, открылся поиск по тегу - нашел то самое мероприятие, кликнул и попал на ошибку 404 - не найдено.
А всё потому, что реальная ссылка на него /poster/prosmotr/vystavki-i-meroprijatija/название_мероприятия.html, а поиск выдал: /poster/prosmotr/название_мероприятия.html. Кроме того, напротив результата поиска должна была находиться иконка, но вместо неё пустая рамочка (ссылка ведет на /components/search/tagicons/posterevent.gif)
Проблемка есть тоже как у Black-Raven90 но это как я прочел решаемо!
и еще вот:
При переходе по месяцам в модулев
вылетает вот что:
а так ваще супер :), если везде все заполнять как надо можно состарится :)
А ещё проверьте свой файл в корне сайта index.php. 14 строка должна быть
Еще раз спасибо !
Fatal error: Call to undefined function GregorianToJD() in /usr/local/www/apache22/data/fermer/components/poster/includes/postercore.php on line 183
Кроме того, в новой версии при сохранении мероприятия или заведения, выводится сообщение, что нужно ещё создать привязку.
Вы правы - забыл включить. Спасибо за напоминание.
Спасибо за объяснение.
Простите, а где это? Вот скриншот управления категорией: http://clip2net.com/s/1JIIO
Вот в админке вывод 5 мероприятий http://clip2net.com/s/1JIK0
А на главной странице выводится только 1 мероприятие http://clip2net.com/s/1JIKF
"Нет сеансов в прошедшие дни"
Но, в этой версии 1.1 они не исправлены все
Dorimen,
По сортировке в админке разберетесь сами. Посмотрите повнимательнее.
Выбор есть. Если вас что-то не устраивает, можно заплатить 20-30 килорублей и вам сделают отличный компонент, подточенный под ваши требования. Или подешевле, переделать уже существующий. Ко мне уже обращались с вопросом можно ли. Ради бога, в пределах действия лицензии.
А почему все-таки прошедшие сеансы не показываются?
А только главный админ может мероприятия добавлять?
У меня почему-то другой админ не может этого сделать, пишет: У вас недостаточно прав для добавления мероприятия. Обратитесь к администратору
Что делать, подскажите пожалуйста..
В настройках категории, во вкладке редакторы, снимите галочку "Доступ только админам" и выберите группу "Администраторы" и сохраните. Второй админ сможет добавлять мероприятия.
Немного неправильно сделал. Нужно было надпись к галочке исправить на "Доступ только главному админу". Но не критично.
Если не получится, отпишитесь в личку. Будем разбираться )
Ситуация такая установил компонент пару месяцев назад и за это время Гугл проиндексировал около 30 тысяч страниц на сайте ... стал разбираться и обнаружил что около 90% страниц это календарные страницы из афиши причем где-то с 2004 года .. По сути все эти страницы для поисковиков бесполезны ... Может можно как-то удалить из календаря даты до 2012 года или запретить индексацию этих страниц ..
Почитайте ещё вот это.
Если я поставлю запрет на http://site.ru/poster/afisha/ то не повредит ли это индексации событий ?
Добавил в пост необходимость данного требования.
Все встало с первого раза. Работает корректно.
Новая примочка в виде рассылки напоминаний, то что нужно, чего и не хватало. Но, есть один момент. Не знаю как правильно настроить задачу sendPosterNotices, а именно:
- PHP-файл - к какому файлу прописывать путь и для чего?
- Класс и Статический метод класса, что туда прописывать?
Возможно, что и некоторых других пользователей твоего творения мучают эти два вопроса, так как все остальное работает как часы!
Так же, вопрос по модулю вывода событий, как можно убрать строку вывода времени публикации афиши. Дело в том что юзеры путаются, думая что веремя публикации - это время проведений самого мероприятия...
Заранее благодарю за ответ, с уважением Upliner.
1. Координаты, как альтернативу городу и адресу (например, встреча одноклубников за городом).
2. Почему-то нет дат в списках "скоро" и "архив", да и в сегодняшние можно добавить, чтобы не путаться (и в модуле, так же, наверное пользователю более интересна не дата публикации, а дата события или дата ближайшего события, если они регулярны)
Правильнее было бы удалять цели комментирования и комментарии при удалении компонента. Но система не позволяет это сделать. Нужно ввести пользовательские функции при удалении расширений. Позже отпишусь в багтрекере.
Такого "замута" давно не встречал.
Установил всё за минуты, на то, чтоб понять, как это работает потратил часы, но так и не понял всех тонкостей...
Категории заведений / Заведения / Категории мероприятий / Мероприятия / Привязка - это что за бред, в котором одно с другим состыковать надо умудриться, а состыковав, обалдеть от того, что выведенное мероприятие не имеет даты, но за то имеет кучу всяких ссылочек на описание мероприятия, категорию мероприятий и прочую, не нужную дребедень...
Марат, ты сам-то в нем не путаешься?
Далее...
Установил доступность добавления для всех кроме гостей, ни чего в итоге не получилось. У юзеров ни чего нет, т.е. кликнуть для добавления им не куда, да и станут ли...
Есть народная мудрость:" Краткость - сестра таланта..." и "Всё гениальное просто..."
Что если сделать настройки в админке такими?:
1. Категории юзеров, которым доступен компонент(кто может добавить мероприятие)
2. Категории юзеров, которые могут вывешивать мероприятия на главную.(если не доступно, то мероприятие считается мероприятием пользователя и(или)группы, отображается только у них.)
3. Можно оставить категории и заведения + добавление мероприятий.
Размещение пользователем, заполняются поля:
1. Название мероприятия(цена, если есть)
2. Место проведения(заведение)
3. Адрес
4. Населенный пункт
5. Дата и время проведения
6. Подробнее о месте проведения(с полем визуального редактора)
7. Отображать на главной(если доступно)
Так не проще?
Выбор же есть. Можно пользоваться или не пользоваться. Я же не заставляю.
В блоке календаря(опции в админке) меню не появляется.
В календаре отображается кол-во мероприятий, при клике мероприятия не отображаются.
Так и должно быть?
Warning: Smarty error: unable to read resource: "mod_poster_calendar.tpl" in /home/users1/i/-/domains/сайт/includes/smarty/libs/Smarty.class.php on line 1092
Выше писали с яндекс афиши можно прикрутить парсер?
Хотя все перекодировал в УТФ-8... Надо наверно что то до ума доводить...
Просто разархивируй в корень сайта и согласись на замену.
Unknown character set: 'UTF'
CREATE TABLE `cms_poster_bind` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`event_id` int(11) NOT NULL,
`objekt_id` int(11) NOT NULL,
`start_date` date NOT NULL,
`end_date` date NOT NULL,
`time_list` text NOT NULL,
`all_days` int(3) NOT NULL,
`subscribes` text NOT NULL,
PRIMARY KEY (`id`),
KEY `event_id` (`event_id`),
KEY `objekt_id` (`objekt_id`),
KEY `date` (`start_date` , `end_date`)
) ENGINE=MyISAM DEFAULT CHARSET=UTF-8;
`id` int(11) NOT NULL AUTO_INCREMENT,
`event_id` int(11) NOT NULL,
`objekt_id` int(11) NOT NULL,
`start_date` date NOT NULL,
`end_date` date NOT NULL,
`time_list` text NOT NULL,
`all_days` int(3) NOT NULL,
`subscribes` text NOT NULL,
PRIMARY KEY (`id`),
KEY `event_id` (`event_id`),
KEY `objekt_id` (`objekt_id`),
KEY `date` (`start_date` , `end_date`)
) ENGINE=MyISAM DEFAULT CHARSET=UTF8;
правильней так
Отпишитесь пожалуйста.
Да и что за модуль у вас mod_content_calendar? В оригинале mod_poster_calendar. С файлами модуля что-то делали?
Спасибо!
Права на добавление мероприятия или заведения устанавливаются в админке. На странице редактирования категории. Справа вкладка "Редакторы". Если установлена галочка "Доступ только админам", смогут добавлять только пользователи с правами админа. Чтобы разрешить другим пользователям добавление материала, нужно снять эту галочку и выбрать нужные группы из мультиселект формы.
В сессии кешируется только список категорий. Категории же не каждый день добавляете.
В файлах кешируется календарь, поэтому после обновления количества привязок, если вывод календаря берется из кэша, там будет неактуальное количество привязок. Остальное всё доступно.
Если уж так критично, то можете регулировать время жизни кэша календаря в файле /components/poster/includes/postercore.php , строка 282
Формирование календаря средствами php задача не из легких и создаст определенную нагрузку на сервер. Поэтому наверно логично, что данная операция кешируется.
Кто-нибудь поделится нормальной ссылкой афиши под Инстан 1.1.0 - уже проверенной у себя на сайте?
Заранее спасибо
ссылка http://instantcms.ru/users/files/download4098.html
Там обновлены скриты календаря и дат под новую версию jquery, переведено все под UTF8.
ТОЛЬКО ФАЙЛЫ. ДЕЛАТЬ БЭКАП ОБЯЗАТЕЛЬНО! замечания учтем.
http://instantcms.ru/users/files/download4099.html Обновленный архивчик, с исправлением пару багов.
Подскажите пожалуйста как можно добавить года в выбор "Год выпуска"