siv1987
Пользователи
-
В сети
-
Количество сообщений
278 -
Reputation
98 siv1987's Reputation
Everything posted by siv1987
-
Создание плагина
Этот файл как раз для этого и преднозначен. Не хватает абстракции в одном файле, создавайте приложение и разделяйте код по логике. Вы для начало напишите эти 1000 строк а потом уже будете думать надо ли расширятся или нет. Это частая ошибка новичков когда они с самого начала хотят написать мега крутую аппликацию с сложной структурой. https://ru.m.wikipedia.org/wiki/Model-View-Controller Значит вы не знакомы с паттерными проектирования.
-
Создание плагина
Код, как сказали выше, надо разделять от представления - шаблона. Пишите свою логику в методах класса, там подсветка и проверка синтаксиса работает, а шаблоны используйте только для оформления. Что мешает написать в том же методе hookData логику работы а потом скомпилировать шаблон на основе этих данных? Зачем городить костыли с инклудом левого файла, а потом еще придумывать как этот файл записать на диске при установке. Возьмите пару тройку плагинов которые используют нужный вам принцип и посмотрите какм там это реализовано, не нужно изобретать свои велосипеды, особенно когда знания языка не особо это позволяет. Php в шаблоне по большему счету делать нечего. В шаблонизаторе используются только простые выражения, там подсветка не нужна, вся логика отдельно.
-
Создание плагина
Для гостей кешируется шаблон на небольшой срок. Пару секунд абсолютно не критично и, если не ошибаюсь это время можно настроить. Инклуды это дичь, и не знаю чем это спасет ситуацю, но если так сильно хочеться можете попробовать всунуть ваш код в файле хука, отдельно от класса.
-
Счетчик просмотров тем не обновляется
240млн просмотров? батенька да вы статистику накручиваете.
-
Фильтры слов
Правильно так и должно быть, незачем ломать смылки. Если не ошибаюсь можно запретить домены в ссылках, и это будет правильнее.
-
Member verification
Прямые руки нынче на вес золота.
-
IPS Developer Tools (Инструменты для разработчиков)
Ставьте больше. Если есть профайлер можно посмотреть время выполнения участков кода. Если не хочется парится то да, чистый форум спасает.
-
IPS Developer Tools (Инструменты для разработчиков)
Не запрещено. Почему нет смысла увеличить время выполнения?
-
Программа для импорта из excel
За небольшую мотивацию могут состряпать скрипт который распарсит csv файл экспортированный из excel и создаст по нему темы на форуме с указанными настройками. Больше увы я не готов делать.
-
Выполнение php после покупки продукта
Да не в коде, а в переменной. Где вы хотите получить, там и смотрите. $purchase->expire Если в том же месте где находится код для вставки в другую бд, то скорее всего так $purchase = $this->get_purchase(); $purchase->expire;
-
Выполнение php после покупки продукта
Не цитируйте пожалуйста длинные сообщения или сообщения с кодом, читать такие партянки очень не удобно. В $purchase что? Смотрели?
-
Выполнение php после покупки продукта
В таблицу? \IPS\Db::i('remote_database_name')->insert('your_table', array( 'license_key' => $this->key, 'field2' => 'value2', 'field3' => 'value2', ));
-
Выполнение php после покупки продукта
Нет. if ( !$this->key ) { do { $this->key = $this->generate(); } while ( \count( \IPS\Db::i()->select( '*', 'nexus_licensekeys', array( 'lkey_key=?', $this->key ) ) ) ); /* create external connect */ \IPS\Db::i( 'remote_database_name', array( 'sql_host' => 'host', 'sql_user' => 'user', 'sql_pass' => 'pass', 'sql_database' => 'database', ) ); \IPS\Db::i('remote_database_name')->insert('your_table', array('license_key' => $this->key)); }
-
Выполнение php после покупки продукта
SHOW TABLES FROM your_databases Пишите сами не копируйте запросы, чтото форум ломает при копирование текст SHOW DATABASES
-
Выполнение php после покупки продукта
Выполнить запрос SHOW DATABASES в админцентр форума > Support > SQL Toolbox Или посмотреть в phpmyadmin На какой хрен засорять тему, он у меня и так есть. Вставьте после while ( \count( \IPS\Db::i()->select( '*', 'nexus_licensekeys', array( 'lkey_key=?', $this->key ) ) ) );
-
Выполнение php после покупки продукта
mysql пользователь который использует форум имеет доступ к этой базе данных? Если да, то запрос можно выполнить от текущего подключения. Если нет то http://ipbskins.ru/forum/topic15779.html#entry105651 /* create external connect */ \IPS\Db::i( 'remote_database_name', array( 'sql_host' => 'host', 'sql_user' => 'user', 'sql_pass' => 'pass', 'sql_database' => 'database', ) ); \IPS\Db::i('remote_database_name')->insert('you_table', array('license_key' => $this->key));
-
Выполнение php после покупки продукта
А чем таблица форума не устраивает? Можно создать mysql триггер таблицы при inserte чтобы данные копировались в другую таблицы. wanted, достаточно будет в конце условия добавить \IPS\Db::i()->insert( 'your_table', array( 'license_key' => $this->key ) ); Только насколько я понял ТС нужно вставить еще и в другую бд. Тут либо создать другое подключение, либо если у mysql пользователя есть доступ к этой бд, использовать нативный метод \IPS\Db::i()->query с указанием таблицы другой базы данных INSERT INTO other_db.your_table
-
Не отправляет письмо активации (SMTP) IPB 3.4.6
Обновить файл /ips_kernel/classEmail.php от версии 3.4.9 http://ipbskins.ru/forum/topic14872.html#entry99413 Пофиксить команду HELO http://ipbskins.ru/forum/topic14312.html#entry96013
-
Программно изменить группу пользователю
Это оказывается setter, он отрабатывает в обоих случаях. Только если вызвать его напрямую, поле не устанавливается в "changed to update". Вообще что касается обновления в БД, методы set_ лучше не использовать.
-
Программно изменить группу пользователю
Хм, используйте первый вариант. Только методом set_member_group_id при сохранение значение в бд не обновляется.
-
Программно изменить группу пользователю
$member = \IPS\Member::loggedIn(); if( $member->member_id ) { $member->member_group_id = %new_group_id; $member->save(); } $member = \IPS\Member::loggedIn(); if( $member->member_id ) { $member->set_member_group_id( %new_group_id ); $member->save(); }
-
Проблема с темой после обновы на IPS 4.4.0
Так и перестраивается кеш через Саппорт. А почему у вас кеш шаблонов в uploads?.. Шаблон forumTable в версии 4.4 сильно ничем не отличается. Возможно дело не в нем самом, а в входящих данных. Нужно смотреть.
-
rest api
Форум использует запрос к бд для дополнительных полей. Отдельных методов нету. $profileFields = ['member_id' => %member_id, 'field_%id' => 'new_value']; \IPS\Db::i()->replace( 'core_pfields_content', $profileFields ); При большем желании можно написать плагин который добавит новый метод к \IPS\Member для обновления дополнительных полей.
-
Проблема с темой после обновы на IPS 4.4.0
Какбы не тоже самое. Вам нужно или перестроить кеш шаблонов или обновить до актуальной версии.
-
Ошибка EX0 при входе в профиль
Ничего странного как раз нету. В новой версии - новые файлы, а иногда и новая структура. При откате перезаливом сверху перезаписываются только пересекающиеся файлы, а новые, не совместимые со старой версии могут остаться вызывая проблемы.