Плагин позволяет зарегистрированным пользователям оценивать фото в общих и личных фотоальбомах, по пятибалльной шкале (т.е. от 1 до 5).
Принцип работы:
Пользователь загрузивший фото не может ставить к своим фото оценки.
-Ставить оценку к фото можно только один раз.
-Средний бал фото округляется в большую сторону, чтобы не обижать хозяина фото (т.е. если сред.бал 3,5 то отобразиться 4, чтобы не обижать хозяина фото)
-Ставить оценки могут только зарегистрированные пользователи.
-Подгрузка на страницу поставивших оценки к фото происходит при помощи ajax.
Установка:
Устанавливается как обычный плагин.
Для подключения к общим фотоальбомам:
Откройте файл com_photos_view_photo.tpl из вашего шаблона
И в том месте где будет выводится система баллов вставьте
В файл сss добавить:(есть в архиве)
Всё к общим фотоальбомам он подключён.
Подключение к личным фотоальбомам:
Для того чтобы плагин заработал в личных фотоальбомах пользователей необходимо открыть файл
/components/users/frontend.php
и найтистрока 1694
после которой прописатьу нас должно получиться
Это необходимо для того чтобы плагин работал в личных фотоальбомах.
Далее открываем файл com_users_photos_view.tpl
И прописываем там где будут оценки:
Если файлы com_users_photos_view.tpl и com_photos_view_photo.tpl не отличаются от дефолтных то можно взять из архива.
В работе плагин можно увидеть:
Общий фотоальбом (demo.здравствуй22.рф/photos/1)
Личный фотоальбом (demo.здравствуй22.рф/users/4/photo57.html)
Необходима авторизация логин: demo1 пароль:111111
или зарегистрируйтесь на сайте.
В дополнение к плагину планируется:
Плагин в профиль пользователя к каким фото им были поставлены оценки.
Модуль:
-Топ по баллам и голосам фото в общих фотоальбомах.
-Топ по баллам и голосам фото в личных фотоальбомах.
Также планирую создание фотоконкурса
СКАЧАТЬ
Кто хочет может отблагодарить меня:
R251157170572
Z354892323501
Яд: 410011059385495
========================
У lezginka.ru возникла идея выводить средний бал
таким образом:
--------------------
Рейтинг: 0
Просмотров: 15
Средний бал: 4
Реализуем задуманное. Для этого открываем файл com_photos_view_photo.tpl из вашего шаблона
и находим строчки
ниже вставляем:
и убираем:
а то у нас будут выводиться оба варианта, оставляем только:
Да у чуть не забыл, для того чтобы наши кнопки рейтинга не располагались по середине относительно записей находим ниже,
и заменяем на
Принцип работы:
Пользователь загрузивший фото не может ставить к своим фото оценки.
-Ставить оценку к фото можно только один раз.
-Средний бал фото округляется в большую сторону, чтобы не обижать хозяина фото (т.е. если сред.бал 3,5 то отобразиться 4, чтобы не обижать хозяина фото)
-Ставить оценки могут только зарегистрированные пользователи.
-Подгрузка на страницу поставивших оценки к фото происходит при помощи ajax.
Установка:
Устанавливается как обычный плагин.
Для подключения к общим фотоальбомам:
Откройте файл com_photos_view_photo.tpl из вашего шаблона
И в том месте где будет выводится система баллов вставьте
{*======== Средний бал фото ===============*} {if $bal != ''} <div class="points" style="text-align:center;">Средний бал: {$bal}</div> {/if} {*======== вывод оценки голосовавшего после фото ===============*} {if $points !=''} <div class="points" style="text-align:center;">Ваша оценка:</div> <div class="point{$points}" style="margin: 0 auto;"></div> {else} {if $to_userid} {if $photo.user_id != $to_userid} {*========== система оценок ===============*} <div class="point"> <input type="hidden" name="item_id" value="{$item_id}"> <input type="hidden" name="user_id" value="{$photo.user_id}"> <input type="hidden" name="to_userid" value="{$to_userid}"> <a class="point1" href="javascript:void(0)" onclick="votes('1')"></a> <a class="point2" href="javascript:void(0)" onclick="votes('2')"></a> <a class="point3" href="javascript:void(0)" onclick="votes('3')"></a> <a class="point4" href="javascript:void(0)" onclick="votes('4')"></a> <a class="point5" href="javascript:void(0)" onclick="votes('5')"></a> </div> {/if} {/if} {/if} {*=============вывод тех кто ставил оценки===============*} {if $golosov != ''} <div class="users_votes_golos"> <input type="hidden" name="item_id" value="{$item_id}"> <div id="pole"></div><div id="ssilk_votes"><a href="#" id="votes">Поставили оценки ({$golosov})</a></div> <div id="flashs"></div> <div id="votes_golos"></div> </div> <div class="clear"></div> {/if} {*=======================================*}
Всё к общим фотоальбомам он подключён.
Подключение к личным фотоальбомам:
Для того чтобы плагин заработал в личных фотоальбомах пользователей необходимо открыть файл
/components/users/frontend.php
и найти
$photo = $inDB->fetch_assoc($result);
после которой прописать
$photo = cmsCore::callEvent('GET_USER_PHOTO', $photo);
/////////////////////////////// VIEW PHOTO ///////////////////////////////////////////////////////////////////////////////////////// if ($do=='viewphoto'){ if (!$cfg['sw_photo']) { cmsCore::error404(); } if (!$inUser->id && !$cfg['sw_guest']) { cmsUser::goToLogin(); } $photoid = $inCore->request('photoid', 'int', 0); $user_id = $inUser->id; $myprofile = ($user_id == $id) ? true : false; $usr = $model->getUserShort($id); if (!$usr) { cmsCore::error404(); } $sql = "SELECT p.*, a.title as album, pr.gender FROM cms_user_photos p INNER JOIN cms_user_albums a ON a.id = p.album_id INNER JOIN cms_user_profiles pr ON pr.user_id = p.user_id WHERE p.id = '$photoid' AND p.user_id = '$id' LIMIT 1"; $result = $inDB->query($sql) ; if (!$inDB->num_rows($result)){ cmsCore::error404(); } $photo = $inDB->fetch_assoc($result); $photo = cmsCore::callEvent('GET_USER_PHOTO', $photo); $inPage->setTitle($photo['title']); $inPage->addPathway($usr['nickname'], cmsUser::getProfileURL($usr['login'])); $inPage->addPathway($_LANG['PHOTOALBUMS'], '/users/'.$usr['id'].'/photoalbum.html'); $inPage->addPathway($photo['album'], '/users/'.$usr['login'].'/photos/private'.$photo['album_id'].'.html'); $inPage->addPathway($photo['title'], $_SERVER['REQUEST_URI']); $photo['pubdate'] = $inCore->dateFormat($photo['pubdate'], true, false, false); $photo['genderlink'] = cmsUser::getGenderLink($usr['id'], $usr['nickname'], 0, $photo['gender'], $usr['login']); //ссылки на предыдущую и следующую фотографии $previd = $inDB->get_fields('cms_user_photos', "id>'{$photo['id']}' AND user_id = '{$usr['id']}' AND album_id='{$photo['album_id']}'", 'id, title, pubdate', 'id ASC'); $nextid = $inDB->get_fields('cms_user_photos', "id<'{$photo['id']}' AND user_id = '{$usr['id']}' AND album_id='{$photo['album_id']}'", 'id, title, pubdate', 'id DESC'); // Проверяем права доступа $is_allow = usrAllowed($photo['allow_who'], $id) || $inCore->userIsAdmin($inUser->id) ? true : false; // Если видим фото, обновляем просмотры if ($is_allow) { $inDB->query("UPDATE cms_user_photos SET hits = hits + 1 WHERE id = ".$photo['id']) ; $smarty = $inCore->initSmarty('components', 'com_users_photos_view.tpl'); $smarty->assign('photo', $photo); $smarty->assign('bbcode', '[IMG]'.HOST.'/images/users/photos/medium/'.$photo['imageurl'].'[/IMG]'); $smarty->assign('previd', $previd); $smarty->assign('nextid', $nextid); $smarty->assign('usr', $usr); $smarty->assign('myprofile', $myprofile); $smarty->assign('is_admin', $inCore->userIsAdmin($user_id)); $smarty->assign('is_allow', $is_allow); if($is_allow){ $inCore->loadLib('tags'); $smarty->assign('tagbar', cmsTagBar('userphoto', $photo['id'])); } $smarty->display('com_users_photos_view.tpl'); //show user comments if($inCore->isComponentInstalled('comments') && $is_allow){ $inCore->includeComments(); comments('userphoto', $photo['id']); } }
Далее открываем файл com_users_photos_view.tpl
И прописываем там где будут оценки:
{*======== Средний бал фото ===============*} {if $bal_user_photo != ''} <div class="points" style="text-align:center;">Средний бал: {$bal_user_photo}</div> {/if} {*======== вывод оценки голосовавшего после фото ===============*} {if $points_user_photo !=''} <div class="points" style="text-align:center;">Ваша оценка:</div> <div class="point{$points_user_photo}" style="margin: 0 auto;"></div> {else} {if $to_userid} {if $photo.user_id != $to_userid} {*========== система оценок ===============*} <div class="point"> <input type="hidden" name="item_id" value="{$item_id}"> <input type="hidden" name="user_id" value="{$photo.user_id}"> <input type="hidden" name="to_userid" value="{$to_userid}"> <a class="point1" href="javascript:void(0)" onclick="uservotes('1')"></a> <a class="point2" href="javascript:void(0)" onclick="uservotes('2')"></a> <a class="point3" href="javascript:void(0)" onclick="uservotes('3')"></a> <a class="point4" href="javascript:void(0)" onclick="uservotes('4')"></a> <a class="point5" href="javascript:void(0)" onclick="uservotes('5')"></a> </div> {*=======================================*} {/if} {/if} {/if} {if $golosov_user_photo != ''} <div class="users_votes_golos"> <input type="hidden" name="item_id" value="{$item_id}"> <div id="pole"></div><div id="ssilk_votes"><a href="#" id="userphotovotes">Поставили оценки ({$golosov_user_photo})</a></div> <div id="flashs"></div> <div id="votes_golos"></div> </div> <div class="clear"></div> {/if}
В работе плагин можно увидеть:
Общий фотоальбом (demo.здравствуй22.рф/photos/1)
Личный фотоальбом (demo.здравствуй22.рф/users/4/photo57.html)
Необходима авторизация логин: demo1 пароль:111111
или зарегистрируйтесь на сайте.
В дополнение к плагину планируется:
Плагин в профиль пользователя к каким фото им были поставлены оценки.
Модуль:
-Топ по баллам и голосам фото в общих фотоальбомах.
-Топ по баллам и голосам фото в личных фотоальбомах.
Также планирую создание фотоконкурса
СКАЧАТЬ
Кто хочет может отблагодарить меня:
R251157170572
Z354892323501
Яд: 410011059385495
========================
У lezginka.ru возникла идея выводить средний бал
таким образом:
--------------------
Рейтинг: 0
Просмотров: 15
Средний бал: 4
Реализуем задуманное. Для этого открываем файл com_photos_view_photo.tpl из вашего шаблона
и находим строчки
<p><strong>{$LANG.RATING}: </strong><span id="karmapoints">{$photo.karma}</span></p> <p><strong>{$LANG.HITS}: </strong> {$photo.hits}</p>
{if $bal != ''}<p><strong>Средний бал: </strong> {$bal}</p>{/if}
{*======== Средний бал фото ===============*} {if $bal != ''} <div class="points" style="text-align:center;">Средний бал: {$bal}</div> {/if}
{*======== вывод оценки голосовавшего после фото ===============*} {if $points !=''} <div class="points" style="text-align:center;">Ваша оценка:</div> <div class="point{$points}" style="margin: 0 auto;"></div> {else} {if $to_userid} {if $photo.user_id != $to_userid} {*========== система оценок ===============*} <div class="point"> <input type="hidden" name="item_id" value="{$item_id}"> <input type="hidden" name="user_id" value="{$photo.user_id}"> <input type="hidden" name="to_userid" value="{$to_userid}"> <a class="point1" href="javascript:void(0)" onclick="votes('1')"></a> <a class="point2" href="javascript:void(0)" onclick="votes('2')"></a> <a class="point3" href="javascript:void(0)" onclick="votes('3')"></a> <a class="point4" href="javascript:void(0)" onclick="votes('4')"></a> <a class="point5" href="javascript:void(0)" onclick="votes('5')"></a> </div> {/if} {/if} {/if} {*=============вывод тех кто ставил оценки===============*} {if $golosov != ''} <div class="users_votes_golos"> <input type="hidden" name="item_id" value="{$item_id}"> <div id="pole"></div><div id="ssilk_votes"><a href="#" id="votes">Поставили оценки ({$golosov})</a></div> <div id="flashs"></div> <div id="votes_golos"></div> </div> <div class="clear"></div> {/if} {*=======================================*}
<td width="25">{$photo.karma_buttons}</td>
<td valign="top" width="25">{$photo.karma_buttons}</td>
Реклама #
Роман 12 лет назад #
lezginka.ru 12 лет назад #
lezginka.ru 12 лет назад #
вот так :
--------------------
Рейтинг: 0
Просмотров: 15
Средний бал: 4
Михаил М. 12 лет назад #
livecom 12 лет назад #
Владимир 12 лет назад #
Олег 12 лет назад #
+++++++++++++++
Malstein 12 лет назад #
Darik 12 лет назад #
fact 12 лет назад #
Плагин в профиль пользователя к каким фото им были поставлены оценки + к каждому фото в личном альбоме кто какие оценки поставил (пусть будут видны например только самому хозяину) + модуль топ личных фото пользователя с общими оценками
всё это с учётом приватности отображения . т.е для каждого пользователя будет видна только та оценка которая стоит в приватности отображения фото(для друзей, для всех зарег, для всех)
можно например чтобы оценки другими пользователями по каждому фото мог видеть только хозяин фото, а общую оценку уже все.
Ещё как вариант при оценке фото хозяину приходит сообщение что фото оценили)
во общем за реализацию этого обязательно будет вээмзет лично от меня!
Очень важна такая реализация!
SP 12 лет назад #
SP 12 лет назад #
Михаил М. 12 лет назад #
Белгородский Бомж 12 лет назад #
Вывод десятых в оценках решил следующим способом:
в файле plugins/p_votes/plugin.php заменил строку 141
$bal = ceil($usr['bal']);
на
$bal = ceil(($usr['bal'])*10)/10;
Михаил М. 12 лет назад #
Алексей 12 лет назад #
Михаил М. 12 лет назад #
Алексей 12 лет назад #
Amurland 12 лет назад #
Soul 12 лет назад #
Алексей 12 лет назад #
Олег 12 лет назад #
Михаил М. 12 лет назад #
Soviet-Girl 12 лет назад #
Dinar 12 лет назад #
З.ы. доберусь до компа с все, с меня донейт
Dinar 12 лет назад #
Михаил М. 12 лет назад #
Dinar 12 лет назад #
Дастан 12 лет назад #
Patriot 12 лет назад #
vitalson9 12 лет назад #
• Mike • 12 лет назад #
отключите полный показ сообщений об ошибках установив
danial99 12 лет назад #
bondar 12 лет назад #
mk727 12 лет назад #
BlondinkO 12 лет назад #
Префикс стандартный.
BlondinkO 12 лет назад #
Не отображается, видимо, для СВОИХ фото :)
Спасибо большое!
My-InstantCMS.Ru 12 лет назад #
fact 12 лет назад #
Игорь 11 лет назад #
AlLar 11 лет назад #
volchoc 11 лет назад #
Шадринец 11 лет назад #
Dinar 11 лет назад #
onlinespr 10 лет назад #
Димитриус 10 лет назад #
Если надо могу выполнить на заказ.
onlinespr 10 лет назад #
Александр 10 лет назад #
жаль, что сейчас наверняка не пойдет уже под новую версию, но надеюсь на чудо, что то сделает или опишет что изменить
onlinespr 10 лет назад #
ZmeeLove 10 лет назад #
Заранее спасибо!
Шадринец 8 лет назад #
Ставиш оценку на одно фото ,а оценки сразу на всех появляются.
Подскажите что не так?
Пологаю в этом файле.
/components/users/frontend.php
найти вот эту строчьку которой в 1.10.3 нет.
Это необходимо для того чтобы плагин работал в личных фотоальбомах.
Нужно вставить после.
Далее открываем файл com_users_photos_view.tpl
Настёна 8 лет назад #
Настёна 8 лет назад #