Новости Joomla

20 лет Joomla: Ринат Кажетов.В 2025 году Joomla исполнилось 20 лет

20 лет Joomla: Ринат Кажетов.В 2025 году Joomla исполнилось 20 лет

👩‍💻 20 лет Joomla: Ринат Кажетов.В 2025 году Joomla исполнилось 20 лет. Вокруг неё сложилось большое интернациональное русскоязычное сообщество. На сайте нашего сообщества и на Хабре к юбилею были собраны интервью с его видными представителями. Сегодня мы читаем интервью с Ринатом Кажетовым (@rkazhet). Ринат - один из администраторов чата русскоязычного Joomla-сообщества, из Казахстана. Это человек, который всегда знает или найдёт нужную ссылку, пристально следит за новостями в мире Joomla, многое узнаёт первым и просто очень отзывчивый человек. Интервью с Ринатом взял Евгений Сивоконь.Читать интервью@joomlafeed#joomla #community

0 Пользователей и 1 Гость просматривают эту тему.
  • 11 Ответов
  • 5507 Просмотров
*

Zaicev

  • Захожу иногда
  • 120
  • 2 / 0
Кратко опишу инструкцию.
Идем по адресу /administrator/components/com_k2/models/ и открываем item.php
После строк (362 строка)
                $msg = JText::_('Item saved');
                $link = 'index.php?option=com_k2&view=item';
                break;
            case 'save':

Вставляем :
// alphauserpoints - add item
$api_AUP = JPATH_SITE.DS.'components'.DS.'com_alphauserpoints'.DS.'helper.php';
if ( file_exists($api_AUP))
{
require_once ($api_AUP);
AlphaUserPointsHelper::newpoints( 'plgaup_k2','', 'reference_key');

}
//end alphauserpoints - add item

И загружаем прикрепленное правило в AlphaUserPoints и назначаем количество балов. 
http://depositfiles.com/files/srj5dsydy
Все работает, сам проверял, балы даются только при первом сохранении, при редактирования ничего не насчитывает :).
Удачи!
*

yrygvay

  • Завсегдатай
  • 1293
  • 36 / 3
а что это вообще такое! расскажи!
Смотрю....
*

migus

  • Давно я тут
  • 992
  • 144 / 0
  • OPEN THE BOX
Все работает, сам проверял, балы даются только при первом сохранении, при редактирования ничего не насчитывает :).
Удачи!
У вас могут возникнуть коллизии при использовании такого кода:
Код: php-brief
// alphauserpoints - add item
$api_AUP = JPATH_SITE.DS.'components'.DS.'com_alphauserpoints'.DS.'helper.php';
if ( file_exists($api_AUP))
{
require_once ($api_AUP);
AlphaUserPointsHelper::newpoints( 'plgaup_k2','', 'reference_key');

}
//end alphauserpoints - add item
в строчке: AlphaUserPointsHelper::newpoints( 'plgaup_k2','', 'reference_key') вместо 'reference_key' лучше использовать переменную ID материала, заранее определив ее. Что-то вроде:
Код: php-brief
AlphaUserPointsHelper::newpoints( 'plgaup_k2','', $item->id)

- удачи ;)
"The Lord Of A SandBox"
*

Zaicev

  • Захожу иногда
  • 120
  • 2 / 0
migus спасибо!
*

Alex_P

  • Осваиваюсь на форуме
  • 34
  • 2 / 0
лучше использовать переменную ID материала, заранее определив ее.
можете для совсем нубов написать, как определить эту переменную(какой тип данных должен быть)? :)
« Последнее редактирование: 25.02.2011, 13:24:56 от Alex_P »
*

migus

  • Давно я тут
  • 992
  • 144 / 0
  • OPEN THE BOX
можете для совсем нубов написать, как определить эту переменную(какой тип данных должен быть)? :)
Если честно, не знаю, что объяснять... Сам К2 не пользуюсь, но у всякого материала должен быть уникальный id, который в этом случае позволяет указать в AUP, что эту статью юзер уже оплатил баллами, чтобы при ее повторном просмотре баллы не списывались.
В самой Joomla! это - контент, определяется как article->id... Может быть вам поможет Документация для разработчиков AUP

- удачи ;)
"The Lord Of A SandBox"
*

pikaper

  • Осваиваюсь на форуме
  • 17
  • 0 / 0
всем привет а вот интересно как можно сделать чтобы эти баллы получать была возможность только два раз в месяц? ну то есть материалов он добавил 5 в месяц а баллы на числились только 2 раза. Никто не сталкивался?
*

Zaicev

  • Захожу иногда
  • 120
  • 2 / 0
всем привет а вот интересно как можно сделать чтобы эти баллы получать была возможность только два раз в месяц? ну то есть материалов он добавил 5 в месяц а баллы на числились только 2 раза. Никто не сталкивался?

Уменьши число балов за публикацию статьи :)
А то отобьешь охоту у блогеров..
*

Dagiz

  • Захожу иногда
  • 78
  • 1 / 0
У меня K2 v2.4.1 и

$msg = JText::_('Item saved');
                $link = 'index.php?option=com_k2&view=item';
                break;
            case 'save':

находится на строке 638
« Последнее редактирование: 24.04.2011, 23:19:19 от Dagiz »
*

Dagiz

  • Захожу иногда
  • 78
  • 1 / 0
Все проверил, действительно вот так все работает  

// alphauserpoints - add item
$api_AUP = JPATH_SITE.DS.'components'.DS.'com_alphauserpoints'.DS.'helper.php';
if ( file_exists($api_AUP))
{
require_once ($api_AUP);
AlphaUserPointsHelper::newpoints( 'plgaup_k2','', $item->id);
 
}
//end alphauserpoints - add item

Но есть недочет, очки капают при каждом редактировании/сохранении материлов :D

посмотрел в документации 'reference_key'  Предотвращение присвоения баллов более одного раза за одно и то
же действие - значит за 2-рую статью баллы не дадут
« Последнее редактирование: 24.04.2011, 21:19:32 от Dagiz »
*

migus

  • Давно я тут
  • 992
  • 144 / 0
  • OPEN THE BOX
Вы неправильно поняли. Если reference-key указан корректно и будет записан в таблицу, то к элементам с этой записью правило применяться не будет. У каждой статьи свой уникальный id, который для этого вполне подходит, т.к. к статье по которой начисление уже производилось, правило не сработает, а новая статья будет иметь новый id и - правило будет применено.
Судя по вашим словам
очки капают при каждом редактировании/сохранении материалов
и коду, у вас не определен $item->id и вам надо искать другое определение для id статьи в вашем коде.
"The Lord Of A SandBox"
*

Dagiz

  • Захожу иногда
  • 78
  • 1 / 0
вот так вот выглядит ссылка на материал:
http://localhost/b/index.php?option=com_k2&view=item&id=45:название статьи

Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться