0.00
Рейтинг
0.00
Сила

Вопрос по доп полям!

Я задал вопрос ORT:

можно ли как то добавить поля к анкете пользователя аналогично таким

Он ответил:

(http://ios.iotgn.ru/admin/users/contact-fields/ ) но что бы они не в контактах блоке были.
Можно попробовать добаить новый тип для этих полей, по идеи он не должен будет выводиться в контактах + сделать его вывод в нужном месте. По дефолту там добавлены два типа — social и contact

Кто сможет подсказать как добавить типы???

ЛС-2

Как прикрутить Категории(поведения-behaivor) к Топику? ЛС 2

Вопрос освещённый, но не получилось докрутить поведения…

Использовал как исходную информацию:
1. раз
2. два
3. Категории, прикрученные к Блогам.

Что сделано:
1. В класс топика добавлен:
protected $aBehaviors = array(
        'category' => array(
            'class'       => 'ModuleCategory_BehaviorModule',
            'target_type' => 'topic',
        ),
    );

2. В класс сущности:
protected $aBehaviors = array(
        /**
         * Дополнительные поля
         */
        'property' => 'ModuleProperty_BehaviorEntity',
        /**
         * Настройка категорий
         */
        'category' => array(
            'class'                          => 'ModuleCategory_BehaviorEntity',
            'target_type'                    => 'topic',
            'form_field'                     => 'category',
            'multiple'                       => true,
        ),

    );

ЗЫ. Свойства уже были…

3. В шаблон добавления\редактирования добавил :
{insert name='block' block='fieldCategory' params=[ 'target' => $topic, 'entity' => 'ModuleTopic_EntityTopic' ]}


4. В функциях экшенов создания(EventAjaxAdd) и редактирования(EventAjaxEdit) перед публикацией\отправкой в черновик добавлено:
$oTopic->category->CallbackAfterSave();


В итоге:
При открытии формы создания\редактирования категории подтягиваются, но при сохранении\создании
топика в таблицу не записываются значения.

Вопросы:
Запись не происходит, потому что Топик не является ORM объектом?
Что необходимо ещё прикрутить, чтобы запись происходила?
Какими вызовами в дальнейшем пользоваться, чтобы получать категорию(и) текущего объекта\списка?

Топик 404 not found (Решено)

Пробую перенести сайт на базе LS-0.4.2 на VDS хостинг. Веб-сервер nginx+apche. При попытке открыть любой топик nginx отдаёт 404, при этом все остальные ссылки работают (открываются профили, клубы, теги, работает пагинация, стена и т.д). Поиск по теме ничего не дал. Подскажите, пожалуйста, в чём может быть проблема.

Механизм обновления плагинов

В новой версии мы внедрили функционал миграций (обновлений) для плагинов. Функционал позволит разработчикам удобно выполнять обновления своих плагинов, в особенности, если эти обновления затрагивают изменения базы данных.

Как это работает
Пользователь заливает новую версию плагина в каталог /plugins/. Система сравнивает текущую версию плагина с версией этого плагина в БД. И если версия в БД старее, то в админке появляется кнопка «Применить обновление», которая автоматически запустит необходимые скрипты для обновления.


Скрипты (классы) для обновления у плагина находятся в каталоге /update/, который в свою очередь содержит каталоги с номерами версий. Для каждой версии можно создать несколько скриптов с произвольным названием, главное, что нужно помнить — названия файлов должно быть уникальным в рамках всего плагина для всех его версий.
Файл с обновлением представляет собой класс наследник от базового класса ModulePluginManager_EntityUpdate и название класса является производным от имени файла — Plugin[plugin_name]_Update_[file_name]. Например, для файла /update/1.0/CreateTable.php класс будет таким:
<?php

class PluginArticle_Update_CreateTable extends ModulePluginManager_EntityUpdate {
	/**
	 * Выполняется при обновлении версии
	 */
	public function up() {
		if (!$this->isTableExists('prefix_article')) {
			/**
			 * При активации выполняем SQL дамп
			 */
			$this->exportSQL(Plugin::GetPath(__CLASS__).'/dump.sql');
		}
	}

	/**
	 * Выполняется при откате версии
	 */
	public function down() {
		$this->exportSQLQuery('DROP TABLE prefix_article;');
	}
}

Как видно из примера, класс содержит два метода up и down. Первый выполняется при обновлении до версии, второй при откате версии. В этих методах может быть не только работа с БД, но и другая необходимая для обновления логика.

При удалении плагина из админки выполняется автоматический откат всех изменений всех версий (метод down).
Данный поход позволит «разгрузить» у плагинов методы Activate и Deactivate от лишней логики и дать удобный механизм обновления версий. Для корректной работы данного механизма, необходимо версии плагинов именовать используя вот этот стандарт — ru2.php.net/manual/ru/function.version-compare.php, он позволит правильно сортировать версии.

Как изменить главную страницу сайта?

Читать конфиг движка — задача не из легких :), поэтому иногда я наблюдаю вопросы о том, как сменить главную страницу движка.

Все до банальности просто:

Читать дальше →

Система блоков - расставляем точки...

Была потребность разобраться с системой блоков. Очень много чего перечитал с сайта. Например, Система блоков. Ниже будет краткое изложение полученных знаний. Попытаюсь рассказать про систему блоков простым языком, чтобы и новички поняли.

Самое главное, что я выяснил:
1. Блоки можно создавать самостоятельно.
2. Блоки можно размещать в произвольном месте страницы (нужно заранее указать эти места)
3. Блоки могут отображаться в зависимости от Action'ов и Event'ов
4. Блоки могут отображаться в зависимости от адреса страницы. Адрес страницы можно задать с помощью регулярных выражений.
Итак, основные моменты.
Читать дальше →

Боевой курс новичка или "всем новеньким - сюда"

Это краткое FAQ.

Читать дальше →

Система блоков

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


Читать дальше →

SITE_CLOSE_MODE для страниц и разделов

Подскажите решение, как сделать закрытыми для гостей некоторые разделы или страницы, например site.ru/people/ или site.ru/page/.../.

По образцу настройки SITE_CLOSE_MODE: Использовать закрытый режим работы сайта, сайт будет доступен только авторизованным пользователям.