Finar.ru
ph-ph.ru
cc-film.ru

Рейтинг статьи в виде звездочек для NetCat

Автор: Люди | 2011-02-08 | просмотров 14231
Тэги

Версия NetCat: любая, рекомендуется с поддержкой шаблонов компонентов, редакция любая
Статус: стабильный
Стоимость внедрения 4000 руб.

Этот рецепт можно установить и на ваш сайт. Внедрение производится после 100% предоплаты. Указана стоимость без учета работ по дизайну, каких-либо индивидуальных доработок и при оплате электронными деньгами. Работоспособность гарантирована. Если по каким-либо причинам рецепт не удается установить на ваш сайт, мы возвращаем все деньги.

Быстрее всего заказать внедрение, отправив нам на web@finar.ru письмо с указанием данных произведенного по реквизитам платежа, адреса целевого сайта и доступов в админку и на FTP. Более медленные способы начинаются с письма в свободной форме или с телефонного звонка.

Welcome!

Дата обновления 2011-02-09

Внимание: описание и код рецепта на этой странице могут быть актуальнее архива для скачивания!

К сожалению, пока мы не имеем возможности поддерживать актуальные версии готовых к установке архивов рецептов. Архивы обновляются "при случае", т.е. при существенных доработках, дата обновления прописана в имени архива.

Источники: www.fyneworks.com 
Внедрения

Лицензия и политика использования

Разработчикам сайтов:

Рецепт распространяется под лицензией Creative Commons Share Alike (BY-SA) .

Вы можете безвозмездно использовать исходные коды рецепта на своих сайтах даже в коммерческих целях, сохраняя авторство за нами (ссылки на нашу студию в исходных кодах). Вы можете распространять рецепт или его модификацию, но только на тех же условиях (т.е. продавать их и модификации нельзя).

Мы не даем гарантий работоспособности рецепта и не несем ответственности за возможный ущерб от его применения. Сторонние разработки, использованные в рецепте, могут распространяются под другими лицензиями. Смотрите сайты источников.

Если вам понравился наш рецепт и вы хотите поблагодарить нас, вы можете сделать это следующими способами:

  1. доработать и улучшить рецепт и выслать нам обновление;
  2. прислать нам на web@finar.ru ссылку на внедрение (возможно, она появится в списке внедрений);
  3. на странице вашего сайта поставить ссылку на эту страницу;
  4. поблагодарить нас рублем, переслав любую сумму на наши электронные счета.

Есть идеи по сотрудничеству? Пишите: web@finar.ru

Владельцам сайтов:

Этот рецепт можно установить и на ваш сайт. Внедрение производится после 100% предоплаты. Указана стоимость без учета работ по дизайну, каких-либо индивидуальных доработок и при оплате электронными деньгами. Работоспособность гарантирована. Если по каким-либо причинам рецепт не удается установить на ваш сайт, мы возвращаем все деньги.

Быстрее всего заказать внедрение, отправив нам на web@finar.ru письмо с указанием данных произведенного по реквизитам платежа, адреса целевого сайта и доступов в админку и на FTP. Более медленные способы начинаются с письма в свободной форме или с телефонного звонка.

Welcome!


Внимание: описание и код рецепта на этой странице могут быть актуальнее архива для скачивания!

К сожалению, пока мы не имеем возможности поддерживать актуальные версии готовых к установке архивов рецептов. Архивы обновляются "при случае", т.е. при существенных доработках, дата обновления прописана в имени архива.

Скачать:

ФайлОписание
NetCat-StarRating_2011-02-09.zip (скачиваний: 1250)первая версия от студии Ph&Ph. Официальная, на ней основан рецепт
AlterFall-jqueryRating_2011-12-10.rar
(скачиваний 9)
AlterFall-jqueryRating_2012-01-07.rar (скачиваний: 1490)
версия Александра Панасина  отличается подсчетом среднего арифметического значения и работой в актуальных версиях NetCat. Инструкции по установке внутри архива.

Этот рецепт описывает интеграцию jQuery Star Rating  в NetCat. В результате к статье (объекту) будут прикручены звездочки, вот такие: , причем в листинге объектов они будут исключительно информативными (отражать текущий рейтинг статьи), а в полном отображении объекта - динамичными. Авторизованный пользователь получит возможность проголосовать один раз, просто наведя мышь и кликнув на звездочку.

Установка и использование

Скачайте архив и закачайте директорию "phph-StarRating" в /images/ инсталляции NetCat на вашем хостинге. Альтернативно, можете скачать актуальную версию плагина с официального сайта.

В заголовок макета дизайна вставьте вызов загруженных скриптов вот таким кодом:

<script type='text/javascript' src='http://ajax.googleapis.com/ajax/libs/jquery/1.4/jquery.min.js'></script>
<!-- phph-star-rating -->
<script src='/images/phph-StarRating/jquery.rating.js' type='text/javascript' language='javascript'></script>
<link href='/images/phph-StarRating/jquery.rating.css' type='text/css' rel='stylesheet'/>
<!-- /phph-star-rating -->

Обратите внимание, что основная библиотека jQuery берется с googleapis.com, а не из архива со скриптом. Это сделано для совместимости с другими jQuery-скриптами, которые могут использоваться на сайте. Та версия, плагина, которую можно скачать у нас, работает с данной версией jQuery - проверено.

Также обратите внимание, что вызов собственно jquery.rating.js происходит сразу после вызова библиотеки jQuery. Если вслед за этим в вашем коде будет произведен еще один вызов библиотеки jQuery, плагин не сработает.

Теперь импортируйте компонент, создайте на сайте скрытый раздел "Рейтинг объектов", прикрепите к нему компонент.

Теперь рейтинг можно вызывать из "объекта в списке" или "полного отображения объекта" компонента с комментируемым контентом примерно следующим кодом:

<!--Вызов рейтинга в листинге объектов. Рейтинг выводится в режиме "только чтение"-->
".s_list_class(102, 164, "&nc_ctpl=117&scID=$f_Sub_Class_ID&objID=$f_RowID&userID=$f_UserID&backlink=".urlencode(htmlspecialchars($GLOBALS[client_url]))."", true)."

Здесь 102 - номер скрытого раздела сайта с компонентом Голосование; 164 - номер его компонента, 117 - номер шаблона представления компонента "Только результаты".

<!--Вызов рейтинга в полном выводе объекта. Визуализируется текущий рейтинг материала, авторизованный пользователь имеет возможность проголосовать, но только один раз. -->
".( $AUTH_USER_ID && listQuery("SELECT Message_ID FROM Message111 WHERE Object_ID=$f_RowID AND Object_Sub_Class_ID=$cc AND User_ID=".$current_user['User_ID']."","\$data[Message_ID]")==0 ?
"

".s_list_class(102, 164, "&scID=$cc&objID=$f_RowID&userID=$f_UserID&backlink=".urlencode(htmlspecialchars($GLOBALS[client_url]))."", true)." "
:
"

".s_list_class(102, 164, "&nc_ctpl=117&scID=$cc&objID=$f_RowID&userID=$f_UserID&backlink=".urlencode(htmlspecialchars($GLOBALS[client_url]))."", true)."
"
)."

Теоретически, все должно заработать. Обратите внимание, что это довольно сложный компонент, поэтому мы рекомендуем не импортировать готовый компонент, а собрать его заново вручную, воспользовавшись дальнейшими инструкциями.

Полезные куски кода (раскладка компонента):

Создайте новый компонент, взяв за основу Рейтинг объектов . Подключение рейтинга осуществляется примерно следующими модификациями:

Шаблон представления компонента, "Только результаты":

<input class='star' type='radio' name='Rating-$scID-$objID' value='1' disabled='disabled' ".((int)$rating == "1" ? "checked='checked'" :"") ."/>
<input class='star' type='radio' name='Rating-$scID-$objID' value='2' disabled='disabled' ".((int)$rating == "2" ? "checked='checked'" :"") ."/>
<input