Next Generation CMS :: Форум поддержки

Заинтересовала наша система? Тогда этот форум для Вас!

Вы не зашли.

#676 Re: Страницы плагинов » bookmarks :: Закладки пользователей (by Wolverine) » 2011-10-20 10:45:50

Я и говорю, попробую засунуть в tpl, сейчас если просто засунуть работать не будет

#677 Re: Страницы плагинов » bookmarks :: Закладки пользователей (by Wolverine) » 2011-10-20 10:07:07

Картинки он берет через пути, которые ты указываешь в \lang\russian\main.ini

act_delete     =	"<img src="/engine/plugins/bookmarks/img/delete.gif" />"	
act_add 	   =	"<img src="/engine/plugins/bookmarks/img/add.gif" />"

Специально выносил в файл, чтобы всем было удобно исправлять. К сожалению в CMS нет никаких вариантов предоставить свой lang пакет вместе с шаблоном. Попробую засунуть этот конфигурационный файл в папку к шаблону smile

#678 Re: Страницы плагинов » bookmarks :: Закладки пользователей (by Wolverine) » 2011-10-19 23:07:57

Он и так работает на 0.9.3 и в настройках есть пункт выбора шаблонов smile

#679 Re: Страницы плагинов » similar :: Похожие новости » 2011-10-19 13:25:38

webproffi пишет:

я правильно вывожу {plugin_similar_tags} просто в код сайта !

Что ты имеешь ввиду под "код сайта"? Если main.tpl то нет, надо в news.full.tpl

#680 Re: Страницы плагинов » similar :: Похожие новости » 2011-10-19 12:37:32

Подозреваю в админ-панели в настройках плагина ты не включил

Показывать блок "похожие новости" ({plugin_similar_tags})
Да - блок "похожие новости" будет показываться
Нет - блок показываться не будет

#681 Re: "А как сделать..." » Защита от накруток в плагине rating, запись IP-адреса юзера в БД » 2011-10-19 10:38:20

vitaly, is_array оставить конечно

Правда function ipcheck будет работать кривовато в итоге при таком подходе, на главной странице или в любом месте где выводится список новостей через news_showlist все будет ОК, а вот в полной новости список $list_id мы уже не будем иметь на руках. Так что нужно проверять еще в showNews если новость короткая, то есть $mode['style'] == 'short' , то использовать глобальный массив, который мы надеемся заполнен, а если полная ( $mode['style'] == 'full' ), то нужно делать другой запрос к таблице рейтига самостоятельно.

#683 Re: "А как сделать..." » Защита от накруток в плагине rating, запись IP-адреса юзера в БД » 2011-10-19 10:15:54

Жесть конечно

if(is_array($list_id) && count($list_id)){  // проверяем что $list_id  - это массив, в нем что-то есть =)
for ($a = 1; $a <= count($list_id); $a++) {
$out_db=$out_db."news_id='".$list_id[$a-1]."' or ";  // создаем кусок запроса к БД: "news_id=xx or news_id=xx ...."
 }
$rating_out_db=$mysql->select("select news_id from  ".prefix."_rating WHERE (user_id='".intval($userROW['id'])."' or ip=".db_squote($ip).") and (".substr($out_db, 0, strlen($out_db)-3).")"); // ищем все новости из списка ID`шников, за которые голосовал этот IP
for ($a = 1; $a <= count($rating_out_db); $a++) {
$rating_array[$a]=$rating_out_db[$a-1]['news_id'];  // создаем массив (глобальный) с ID`шниками новостей за которые голосовал этот IP
 }

вместо этого можно написать

$ids = array();
foreach($list_id as $id)
  $ids[] = "news_id = {$id}"; 

$rating_out_db=$mysql->select("select news_id from  ".prefix."_rating WHERE (user_id='".intval($userROW['id'])."' or ip=".db_squote($ip).") and (".implode(' OR  ', $ids).")");

$rating_array = array();
foreach($rating_out_db as $id)
  $rating_array[] = $id;

#686 Re: Страницы плагинов » Добавление новостей с сайта ( nsm ) » 2011-10-19 08:05:40

Ты мне скажи, что значит 

Данный код защищен авторскими правами

Лицензия плагина какая? smile

#688 Re: Страницы плагинов » simple_title_pro :: Управление заголовками страниц » 2011-10-18 11:40:30

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

#689 Re: "А как сделать..." » Защита от накруток в плагине rating, запись IP-адреса юзера в БД » 2011-10-17 08:17:04

vitaly пишет:

Wolverine, проблема в том, что полный список ID'шников ты узнаёшь в самом конце smile
Мысли на самом деле есть, возможно успею сделать до релиза smile

По идее можно сделать в showlist не     

foreach ($mysql->select($query['result']) as $row) {
		$i++;
		$nCount++;

а

$blablabla = $mysql->select($query['result']); # запихивам информацию о всех новостях

в global пишем ID'шники 

foreach($blablabla as $row) $global_var[] = $row['id'];

а дальше уже проходиться по каждой новости, генерируя её отображение, но в каждом вызове showNews уже будет доступна $global_var

foreach ($blablabla as $row) {
		$i++;
		$nCount++;

#690 Re: Тестирование версий » NGCMG версии 0.9.3 [Release Candidate 1][SVN 856] » 2011-10-17 08:10:19

vitaly пишет:

% Для статических страниц (при их отображении) добавлена глобальная переменная $SYSTEM_FLAGS['static']['db.id'] с ID статической страницы

% Для полной новости добавлена глобальная переменная $SYSTEM_FLAGS['news']['db.categories'] со списком ID категорий, которым принадлежит новость smile

#691 Re: "А как сделать..." » Защита от накруток в плагине rating, запись IP-адреса юзера в БД » 2011-10-16 22:12:46

vitaly пишет:

ikv777vlg, в твоей реализации полный список новостей ты получаешь на  самой последней новости, при этом даже не знаешь какая из них будет последней smile

По идее надо делать

global $TemplateCache;
if(!isset($TemplateCache['plugin']['rating']['info']))
 $TemplateCache['plugin']['rating']['info'] = получаем_данные_для всех_новостей;

Потом используем здесь же в новости, как if($TemplateCache['plugin']['rating'][$newsID] == true) Ну в зависимости от структуры данных на предыдущем этапе. Нам и знать не надо в какой из новостей получается список, данные получили при первом вызове, а во всех остальные они уже будут доступны без запросов.

#692 Re: "А как сделать..." » Защита от накруток в плагине rating, запись IP-адреса юзера в БД » 2011-10-16 22:02:08

ikv777vlg пишет:

И за 6 обращений к функции, вывод в браузер получается такой:

1;
1;
1;2;
1;2;
1;2;5;
1;2;5;

по 2 обращения на каждую новость

Вот именно, поэтому у тебя и запросы с дубликатами. Зачем у тебя два раза отрабатывает логика на каждую новость?

#694 Re: "А как сделать..." » Защита от накруток в плагине rating, запись IP-адреса юзера в БД » 2011-10-16 20:40:45

Надо vitaly спрашивать о внедрении такой возможности в news_showone, которая отображает все новости. Данные нужные там есть, осталось из записать в какую-нить глобальную переменную, типа $SYSTEM_FLAGS

#695 Re: "А как сделать..." » Защита от накруток в плагине rating, запись IP-адреса юзера в БД » 2011-10-16 20:25:04

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

#697 Re: Вопросы функционирования системы в целом » И снова о ЧПУ... » 2011-10-16 17:16:29

Первый вариант, второй не учитывает возможности разбить новость на страницы

#698 Re: "А как сделать..." » Защита от накруток в плагине rating, запись IP-адреса юзера в БД » 2011-10-16 00:02:28

is_array($userROW) выдает ID пользователя, а что?

не, is_array определяет, является ли переданный параметр массивом smile

#699 Re: "А как сделать..." » Защита от накруток в плагине rating, запись IP-адреса юзера в БД » 2011-10-15 18:25:15

В твоем случае UserID не нужен, один хрен разрешать голосовать или нет ты разрешаешь только по IP. В предложении Виталия предлагается дать возможность для голосования с одного IP, тебе это вроде как не нужно. Можно сделать две версии защиты, например, жестко считать только IP или давать возможность разным пользователям головать с одного IP

Подвал раздела

Работает на FluxBB