Здравствуйте, друзья!
Просьба в большей степени к разработчикам на базе InstantCMS:
Ваши пожелания в так называемых эвентах (cmsCore::callEvent()).
Укажите, где и каких не хватает.
Или же, где хотелось бы сделать плагин, но система этого не предусматривает.
На днях будет релиз InstantCMS 1.10.1, хотелось бы сразу добавить.
p.s. просьба не флудить
#1
26 декабря 2012 в 22:02
#2
27 декабря 2012 в 10:47
Ну например эвенты редактирования профиля и чтобы сохранялись в базу элементы массива, как при регистрации, а не чёткие переменные.
#3
27 декабря 2012 в 11:41
Ага предложение вообще убрать профиль лишние только JOIN'ы в запросах.
Сегодня в 22:46
#4
27 декабря 2012 в 11:50
maxisoft, чаще всего это лишь ради получения аватарки))
#5
27 декабря 2012 в 12:24
Не знаю насколько целесообразно, можно было бы в основном индексном файле /index.php вставить эвент. Даже без передачи туда каких либо данных. Мало ли кому по статистике или ещё для чего понадобится.
Можно конечно сделать эвентами cmsPage. В общем, вопрос на рассмотрение.
Можно конечно сделать эвентами cmsPage. В общем, вопрос на рассмотрение.
#6
27 декабря 2012 в 13:27
Марат, уже добавил, см. трак.
lokanaft, не нужно делать оптимизацию параноидальной.
lokanaft, не нужно делать оптимизацию параноидальной.
ничего не понялАга предложение вообще убрать профиль лишние только JOIN'ы в запросах.
как при регистрации это как? вернее в чем отличие? поясните, я же не телепат.Ну например эвенты редактирования профиля и чтобы сохранялись в базу элементы массива, как при регистрации, а не чёткие переменные.
Сделать в эвентах возможность прерывать события.
#8
27 декабря 2012 в 13:59
Сделать в эвентах возможность прерывать события.
поясните, я же не телепат.
Fuze, можно оффтопный вопрос с целью повышения личного образования?
в компоненте регистрации на эвентах до регистрации и после регистрации висит
$item['password'] = md5($pass);
почему он шифрованный отправляется в эвент? я использую его для регистрации в стороннем скрипте и туда надо отдавать чистый пароль, чтобы защифровать средствами другого скрипта
просто я не могу уловить логику зачем нужен на стороне для какого либо плагина уже зашифрованный пароль, по идее эти эвенты сделаны именно для регистраций в других приложениях/сервисах.
для себя добавляю просто строчку
$item['password2'] = $pass;
и проблема решена, но просто интересно стало, а повода спросить до этого не было.
А еще не хватает эвента на авторизацию пользователя, чтобы можно было при авторизации в стороннем скрипте передать id пользователя или его e-mail и авторизовать автоматом в инстанте.
в компоненте регистрации на эвентах до регистрации и после регистрации висит
$item['password'] = md5($pass);
почему он шифрованный отправляется в эвент? я использую его для регистрации в стороннем скрипте и туда надо отдавать чистый пароль, чтобы защифровать средствами другого скрипта
просто я не могу уловить логику зачем нужен на стороне для какого либо плагина уже зашифрованный пароль, по идее эти эвенты сделаны именно для регистраций в других приложениях/сервисах.
для себя добавляю просто строчку
$item['password2'] = $pass;
и проблема решена, но просто интересно стало, а повода спросить до этого не было.
А еще не хватает эвента на авторизацию пользователя, чтобы можно было при авторизации в стороннем скрипте передать id пользователя или его e-mail и авторизовать автоматом в инстанте.
Ааа))) я просто напомнил)) мы говориле на эту тему уже))))Сделать в эвентах возможность прерывать события.
Возможность эвентам прерывать выполения скрипта, выводя разные сообщения, типа. "Нет доступа". "Контент успешно перемещен в корзину" ну или ничего не выводя)))
Компонент клуб.
Евент вступления в клуб
Евент подачи заявки на вступление в клуб
#11
27 декабря 2012 в 14:53
Предложение, собрать все существующие евенты для наглядности
instantcms.ru/forum/thread6309.html
Прошлого года
instantcms.ru/forum/thread6309.html
Прошлого года
все есть и сейчас)Евент вступления в клуб Евент подачи заявки на вступление в клуб
что мешает сейчас в плагинах делатьВозможность эвентам прерывать выполения скрипта
cmsPage::includeTemplateFile('special/accessdenied.php'); cmsCore::halt();
cmsCore::addSessionMessage('Действие выполнено', 'success'); cmsCore::redirect('/куда_то_там');
см. класс юзерсА еще не хватает эвента на авторизацию пользователя
не могу ответить однозначно, со старых времен это идет. сделаю передачу чистого пароля.почему он шифрованный отправляется в эвент?
#13
27 декабря 2012 в 17:04
Вот регистрация:
как при регистрации это как? вернее в чем отличие? поясните, я же не телепат.Ну например эвенты редактирования профиля и чтобы сохранялись в базу элементы массива, как при регистрации, а не чёткие переменные.
cmsCore::callEvent('USER_BEFORE_REGISTER', $item); $item['id'] = $item['user_id'] = $inDB->insert('cms_users', $item);
А вот настройки профиля:
$sql = "UPDATE cms_user_profiles SET city = '$city', description = '$description', showmail='$showmail', showbirth='$showbirth', showicq='$showicq', allow_who='$allow_who', signature='$signature', signature_html='$signature_html', gender='$gender', formsdata='$formsdata', email_newmsg='$email_newmsg', cm_subscribe='$cm_subscribe' WHERE user_id = '$id'"; $inDB->query($sql) ; $sql = "UPDATE cms_users SET birthdate='$birthdate', email='$email', icq='$icq', nickname='$nickname' WHERE id = '$id'"; $inDB->query($sql) ;
Кстати вот как раз перед этим местом не хватает эвента.
И вот по поводу того, что максисофт говорил: кто решил icq и birthdate хранить в users, а аватарку например в user_profiles?
Ещё нужен эвент перед </body>, дабы на любой странице можно было потом яваскриптом что нибудь, куда нибудь поставить.
#14
27 декабря 2012 в 20:21
прошу прощения за офтоп, но оно как всегда понадобится когда начнешь писать)
#15
27 декабря 2012 в 21:38
lokanaft, благодарю за развернутый ответ, теперь гораздо яснее, сделаю.