avatar
+62.91
154.072

Вадим

А ведь верно, извини, глаз замылился
Да, есть в модуле Viewer:
public function AddWidget($sGroup, $sName, $aParams = array(), $iPriority = 0)
yadi.sk/d/I3frHcU56vrAx
Это рабочий пример плагина с двумя виджетами, только что проверил
Думал об этом, много смотрел, где как это делается. Делать это костыльно — не хочется, делать серьезно, глубоко и грамотно — требуется немало ресурсов. Поэтому для начала решено было реализовать, как уже говорилось, возможность управления типами блогов. Т.е. возможность не только менять параметры «стандартных» типов блогов, какие есть в движке, но и свои добавлять.

Ведь смотрите, что получается — фактически, на уровне блога уже сейчас есть определенный набор ролей, хоть явно он и не прописан:
* администратор сайта
* администратор блога
* модератор блога
* подписант блога
* пользователь (зарегистрированный на сайте, но не подписавшийся на блог)
* гость (неавторизованный посетитель).

С первым все ясно — права на все на свете. Следующие два — см. этот топик. А вот для трех оставшихся права относительно блога могут задаваться настройками типа блога — кто может вступать, читать, писать, для кого блог будет виден, а для кого нет, и т.д.

Мне кажется, что этим функционалом, если его грамотно реализовать и умело им потом распоряжаться, можно покрыть львиную долю задач по разруливанию прав.
Проблема известна, и проблема действительно застарелая, и она прямо голосит, чтоб ее решили. Но я не рискну сейчас озвучить планы по ее решению
Такого плагина, насколько я знаю, нет
Честно говоря, работая с виджетами я про БЭМ даже не думал
Добавил в текст, как это можно сделать. Добавлю, что подразумевалось больше вариантов, но я проверил сейчас — для виджета плагина только один работает. В следующих версиях их обязательно будет больше.
Ответил отдельным топиком: altocms.ru/249.html
Боюсь, коротким комментом тут не получится отделаться, но для начала поясню хотя бы ключевые моменты.

Изменения в шаблонах можно на две группы разделить: функциональные и структурные (сейчас будет многабукафф, но иначе никак, извините).

Функциональные

1) Самое большое — это замена LS-блоков виджетами. Что за собой повлекло изменение в наименовании папок и файлов шаблонов и синтаксиса вставки виджетов в шаблоны (на самом деле изменений больше, но тут я с точки зрения шаблонов описываю). Львиная доля функционала плагина совместимости — обеспечить работу со старыми LS-блоками, как с родными Alto-виджетами. В ближайшее время я планирую серию статей про виджеты, где постараюсь все про них описать, в т.ч. и с точки зрения разработки шаблонов.

2) В Alto CMS есть функционал из коробки, отсутствующий в LS, который надо предусмотреть. Например, отказ от жесткого и предопределенного разделения на «просто топики», «топики-фотосеты», «топики-опросы», «топики-ссылки». Фотосеты, опросы и ссылки могут добавляться к любому топку (но возможность их добавления может включаться/выключаться в админке). Плюс — дополнительные поля, которые так же в админке могут задаваться.

3) Есть так же возможность редактирования комментов. По сравнению со всем тем, что выше написано, вроде мелочь, но тоже надо учесть это в верстке.

В принципе, все эти изменения понятны и можно все детально описать.

Структурные

А вот тут все непросто. Потому что на сегодняшний день уже есть, как минимум, три стиля создания шаблонов, у которых разная внутренняя организация, структура папок и принцип именования файлов:

1) Стиль «Олдскул» — нынешний LS-стиль, реализованный в версии 1.0.х. Практически все рабочие плагины для ЛС 1.0 заточены под этот стиль. Но если судить по изменения в гитхабе ЛС, есть решение от него отказаться.

2) Стиль «ЛС-новый» — тот стиль, котрый активно разрабатывается в ЛС сейчас. Это — использование принципов наследования, изменение структуры папок и принципов именования файлов. В стиле «ЛС-новый» в значительной мере реализуются идеи, которые я пытался продвинуть в ЛС примерно год назад.

3) Стиль «Альто-экспериментальный» — этот стиль частично реализован в mono. Как верно было замечено, я постарался изложить свои соображения относительно организации шаблонов в статьях Общий принцип организации шаблонов и CSS-классы — общий подход и стандарты (это была попытка высказанные в дискуссиях на ЛС идеи развернуть в практическое русло). Но, к сожалению, до конца эта работа не доведена ввиду жесткой нехватки времени.

Итак, ключевой вопрос: если говорить об адаптации шаблонов под Альто, то для начала надо решить — в каком стиле проводить эту адаптацию?
Извините, но флуд и взаимный переход на личности я удаляю. Про NiceURL я задал вопросы здесь: altocms.ru/blog/questions/235.html#comment3597 и хотел бы услышать ответы, если это возможно
Если сайт на каком-нибудь слабеньком VPS, то, вероятно, проблема из-за «перенаселения» и/или излишне активного «соседа»
В дальнейшем планируется ли добавление ссылок на сами комментарии?
Да
А, вот как, понял. Думаю, мы уберем тип в коде движка.
В каких-то случаях типизация аргументов функций, наверное, и нужна. Но я не очень понимаю, для чего она нужна в движке с динамическим автонаследованием. Поэтому в Альто типизацию убираем. Конфликтов это не вызовет, но сама ошибка, конечно, неприятна. Я бы просто делал небольшую правку устанавливаемых плагином, удаляя в аргументах функций типы ModuleTopic_EntityTopic
Да, одна из задач — это решение проблемы склонения, связанного с числами. В русском языке имеем три варианта, в английском — два (one topic — many topics), в испанском, как я смутно помню, немного сложнее ситуация (там, кажется, существительные мужского и женского рода как-то по-разному склоняются).

добавить «выкаблучивание»
Я еще не все примеры привел, какие могут быть, их там больше получается
Но повторять и сейчас приходится. Например в шаблоне пишем:
{$aLang.topic_question_create_answers_error_min}
А в языковом файле:
'topic_question_create_answers_error_min' => 'Вариантов ответа должно быть как минимум два',
Но я согласен, если в шаблоне писать большими полновесными человеческими фразами, то вероятность ошибки несколько увеличивается. Это как обычно — выигрываем в одном, проигрываем в другом. Вот и хотелось бы понять, будут ли «выигрыши» в итоге перевешивать «проигрыши»
На уровне движка будет реализация всего этого функционала. Но ничто не мешает поддерживать работу шаблонов, созданных по старой технологии. Поэтому речь, скорее, о проблеме обратной совместимости — сами шаблоны, локализованные таким образом, не будут работать на ЛС, и адаптировать их к ЛС будет делом трудоемким, об этом речь.
Раньше не думал об этом, и считал, что это поле заполняется только тогда, когда на самом деле топик прочитан. А оно, оказывается, заполняется, даже когда топик в списке показывается, что, на мой взгляд, неверно. Думаю, будем менять логику.
Скажите, а ведется ли средства Альто подсчет просмотров топика или только сторонними плагинами?
Возможность такая заложена, но реально она пока не используется