Плагин не ставится

ЕСТЬ РЕШЕНИЕ ЗАКРЫТО
#1 4 июня 2012 в 15:29
Что я сделал неправильно, что Плагин не ставится, подскажите плз…
  1. <?php
  2. class p_usermaps_photo extends cmsPlugin
  3. {
  4. public function __construct()
  5. {
  6.  
  7. parent::__construct();
  8.  
  9. $this->info['plugin'] = 'p_userchat_av';
  10. $this->info['title'] = 'Чат с миром';
  11. $this->info['description'] = 'Позволяет общаться в чате непосредственно в вертуальном мире';
  12. $this->info['author'] = '';
  13. $this->info['version'] = '1.0';
  14. $this->events[] = 'USER_LOGIN';
  15. }
  16.  
  17. public function execute($event, $item)
  18. {
  19. parent::execute();
  20.  
  21. switch ($event)
  22. {
  23. case 'USER_LOGIN':
  24.  
  25. / / USERID $ _SESSION ['Avatarchat_uid'] = 'your_userid; / / USERNAME $ _SESSION ['Avatarchat_nickname'] = 'ваш_логин; / / ПОЛ - ввести 1 мужчины, 2 женщины $ _SESSION ['Avatarchat_gender'] = '1 '; / / ЧЛЕНОВ LEVEL - ввести 1 администратора и модов OR 0 постоянных членов $ _SESSION ['Avatarchat_userlevel'] = '0 '
  26.  
  27. break;
  28. }
  29. return;
  30. }
  31.  
  32.  
  33.  
  34.  
  35.  
  36.  
  37. public function execute($event, $item)
  38. {
  39. parent::execute();
  40.  
  41. switch ($event)
  42. {
  43. case 'USER_LOGOUT':
  44.  
  45. / / USERID $ _SESSION ['Avatarchat_uid'] = 'your_userid; / / USERNAME $ _SESSION ['Avatarchat_nickname'] = 'ваш_логин; / / ПОЛ - ввести 1 мужчины, 2 женщины $ _SESSION ['Avatarchat_gender'] = '1 '; / / ЧЛЕНОВ LEVEL - ввести 1 администратора и модов OR 0 постоянных членов $ _SESSION ['Avatarchat_userlevel'] = '0 '
  46.  
  47. break;
  48. }
  49. return;
  50. }
#2 4 июня 2012 в 15:32
class p_usermaps_photo
$this->info['plugin'] = 'p_userchat_av';

что-то одно выберите, названия должны быть одинаковыми
#3 4 июня 2012 в 15:41
не в этом дело! все изменил! один хрен не идет!
#4 4 июня 2012 в 15:44
Arioh, и в этом тоже дело
а может просто включить показ ошибок и посмотреть на что админка ругается?

две функции с таким названием — это специально?
public function execute($event, $item)
#5 4 июня 2012 в 15:46
Arioh, тут вообще код криво смотрится
могу предложить его без тега <code> опубликовать, тег убивает читабельность в данном случае
#6 4 июня 2012 в 15:49
  1.  
  2. // ==================================================================== //
  3.  
  4. /**
  5.   * Процедура установки плагина
  6.   * @return bool
  7.   */
  8. public function install(){
  9.  
  10. return parent::install();
  11.  
  12. }
  13.  
  14. // ==================================================================== //
  15.  
  16. /**
  17.   * Процедура обновления плагина
  18.   * @return bool
  19.   */
  20. public function upgrade(){
  21.  
  22. return parent::upgrade();
  23.  
  24. }
  25.  
  26. // ==================================================================== //
  27.  
  28. /**
  29.   * Обработка событий
  30.   * @param string $event
  31.   * @param mixed $item
  32.   * @return mixed
  33.   */
  34. public function execute($event, $item){
  35.  
откройте /plugins/p_demo/plugin.php и посмотрите как сделано ну и плюс ваш код не рабочий…
#7 4 июня 2012 в 16:47
так помогите, нужно сделать интеграцию.

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

  1. // USERID
  2. $_SESSION['avatarchat_uid'] = 'your_userid';
  3.  
  4. // USERNAME
  5. $_SESSION['avatarchat_nickname'] = 'your_username';
  6.  
  7. // GENDER - enter 1 male, 2 female
  8. $_SESSION['avatarchat_gender'] = '1';
  9.  
  10. // MEMBER LEVEL - enter 1 admin and mods OR 0 regular members
  11. $_SESSION['avatarchat_userlevel'] = '0';
#8 4 июня 2012 в 17:49
Пробовал так! также не пошло:

что неправильно делаю?
  1. <?php
  2. class p_avatarchat extends cmsPlugin
  3. {
  4. public function __construct()
  5. {
  6.  
  7. parent::__construct();
  8.  
  9. $this->info['plugin'] = 'p_avatarchat';
  10. $this->info['title'] = 'Чат с миром';
  11. $this->info['description'] = 'Позволяет общаться в чате непосредственно в вертуальном мире';
  12. $this->info['author'] = '';
  13. $this->info['version'] = '1.0';
  14. $this->events[] = 'USER_LOGIN'; }
  15.  
  16.  
  17.  
  18.  
  19. // ==================================================================== //
  20.  
  21. /**
  22.   * Процедура установки плагина
  23.   * @return bool
  24.   */
  25. public function install(){
  26.  
  27. return parent::install();
  28.  
  29. }
  30.  
  31. // ==================================================================== //
  32.  
  33. /**
  34.   * Процедура обновления плагина
  35.   * @return bool
  36.   */
  37. public function upgrade(){
  38.  
  39. return parent::upgrade();
  40.  
  41. }
  42.  
  43. // ==================================================================== //
  44.  
  45. /**
  46.   * Обработка событий
  47.   * @param string $event
  48.   * @param mixed $item
  49.   * @return mixed
  50.   */
  51. public function execute($event, $item){
  52.  
  53.  
  54. parent::execute();
  55.  
  56. switch ($event)
  57. {
  58. case 'USER_LOGOUT': $_SESSION['avatarchat_uid'] = 'your_userid'; $_SESSION['avatarchat_nickname'] = 'your_username'; $_SESSION['avatarchat_gender'] = '1'; $_SESSION['avatarchat_userlevel'] = '0';
  59. case 'USER_LOGIN': $_SESSION['avatarchat_uid'] = 'your_userid'; $_SESSION['avatarchat_nickname'] = 'your_username'; $_SESSION['avatarchat_gender'] = '1'; $_SESSION['avatarchat_userlevel'] = '0';
  60.  
  61.  
  62. }
  63.  
  64. return;
  65.  
  66. ?>
#9 4 июня 2012 в 18:49
Заметил несколько ошибок.
1.Обрабатываются 2 события ('USER_LOGIN', 'USER_LOGOUT'). А в отлавливаемых показали только одно:
  1. $this->events[] = 'USER_LOGIN';
Нужно ещё добавить
  1. $this->events[] = 'USER_LOGOUT';
Посмотрите в компоненте регистрация, на самом деле есть ли эти события.
2.Критично. Если плагин получает $item, то наверно должен и возвращать его обратно. А у вас стоит просто return;. Нужно return $item; Даже если ничего и не делаете с этим $item.
3. Некритично. Хотя это и необязательно по документации, но хороший тон ставить break; в конструкции switch-case
Это на беглый взгляд. Возможно есть ещё что-то. Надеюсь сам код запихнули в файл plugin.php. И на время отладки сделайте вывод ошибок. Это поможет. Если не получается, подробнее опишите, что хотите сделать и что именно не получается.
#10 4 июня 2012 в 18:55
Да ещё. Проверьте открывающие и закрывающие скобки "{}". Не вижу закрывающие скобки самого класса и функции execute(). Конечно же return $item; должен быть внутри блока функции execute().
#11 4 июня 2012 в 19:51
ооо спс… плагин стал! но только после этого эфектов никаких! смысл был! есть чат avatarchat, хотел чтобы при входе на него люди заходили без регистрации!
#12 5 июня 2012 в 00:08

но только после этого эфектов никаких!

Arioh
Да эффекта не будет. Вы присваиваете сессионной переменной простое строковое значение 'your_userid', которое будет одинаковое для всех пользователей. Я так полагаю, надо вставлять id пользователя инстанта. Также и другие поля.
И как происходит авторизация на чате? Только по $_SESSION['avatarchat_uid']? Без пароля? Регистрация как? Чат работает на вашем сервере? Каков механизм авторизации? В общем, куча вопросов, без которых невозможно дать точный ответ как сделать.
Когда то делал интеграцию стороннего чата с инстантом, можно посмотреть по ссылке. Только в виде модуля. Там при загрузке чата берутся данные пользователя инстанта с сессии и далее по ним производится авторизация на сайте. Не очень сложно, но нужно ковыряться в файлах самого чата.
#13 5 июня 2012 в 10:27
есть скрипт чата avatarchat.prochatrooms.com/

скрипт находится у меня на хосте, пользуется одной базой с инстантом…

комментарий скрипта:

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

Код PHP:
01
// USERID
02
$_SESSION['avatarchat_uid'] = 'your_userid';
03

04
// USERNAME
05
$_SESSION['avatarchat_nickname'] = 'your_username';
06

07
// GENDER — enter 1 male, 2 female
08
$_SESSION['avatarchat_gender'] = '1';
09

10
// MEMBER LEVEL — enter 1 admin and mods OR 0 regular members
11
$_SESSION['avatarchat_userlevel'] = '0';
#14 5 июня 2012 в 10:34

$_SESSION['avatarchat_uid'] = 'your_userid';
$_SESSION['avatarchat_nickname'] = 'your_username';


вы чересчур буквально поняли инструкцию, присваивать то нужно не эти слова(your_userid и your_username) — а реальные значения id и login.
#15 5 июня 2012 в 10:47
боюсь спросит! какие значения выводит instant чтобы уже точно!
Используя этот сайт, вы соглашаетесь с тем, что мы используем файлы cookie.