Идеи на будущее
- Zahhar Kirillov: Формат даты/времени. Всё-таки для русского языка более привычна запись ДД.ММ.ГГГГ ЧЧ:ММ, нежели использующееся сейчас значение поля datetime. Хорошо было бы включить в каждую языковую локализацию настройки формата даты/времени с возможностью их переопределения юзером. Хотя, имхо, можно сделать это не через языковые настройки, а через форматтеры.
- Писать не просто «Правка :: 2003–04–16 13:55:53 " а что-то типа «Правка 5 часов назад» – считать в уме меньше =)
- Кусо Мендокуси: идея забавная, однако тогда сложнее будет сделать так, чтобы «5 часов назад» ассоциировалось с ревижнами. Кучка стандартно выглядящих «системных» цифр имхо неплохо справлялось
- Же Не: вот как это сдалано в ЖЖ: Date updated: 2003–05–10 00:15:12, 22 hours ago
- СергейКоневских А можно сделать так? Админ, заходя на страницу пользователя, имеет в нижнем меню дополнительный пункт – управление ACL пользователя.
- RomanIvanov: нельзя. Представьте: мне никто не мешает завести сейчас здесь пользователя с именем Wakka To Do. От этого данная страница не станет его личной страницой.
- СергейКоневских А как тогда в текущей реализации разрешаются подобные (маловероятные) коллизии? Если кто-то ввел страницу Вася Пупкин, а потом вдруг пришел Вася Пупкин и решил о себе что-то написать. Получается, что человека лишат его личной страницы? :)
С другой стороны, если кто-то решил называться Wakka To Do и более того, зашел в систему под этим именем, то будет абсолютно нормально, на мой взгляд, если правки по принадлежности такого пользователя к группам будут привязаны к странице с этим именем. (Сама-то страница всяко не будет бродить по сайту :))
- RomanIvanov: Всё-таки, почему «редактировать» пользователя вам кажется удобнее в любом произвольном месте ваки, а не в специально отведённом месте типа /admin/users?
- СергейКоневских Я исхожу из того, что пользователи, которые регистрируются в системе, чаще всего неизвестны администратору лично. И (ну, может быть, в каких-то вариантах использования, конечно) для принятия решения о включении пользователя в ту или иную группу доступа все равно надо будет смотреть (по его личной странице), что он там о себе написал. Опять же, самый простой переход на пользователя (хотя бы и с этой вот страницы – типа админ посмотрел на его реплики / конкретный запрос и принял решение, что его можно / нужно куда-то включить) – через его имя на личную страницу.
Можно, конечно, сделать задание прав пользователя с выбором их из единого списка, но, во-первых, с возможностью посмотреть страницу пользователя из области задания прав. А во-вторых, это просто другой интерфейс задания. В идеале было бы хорошо иметь и то, и то. :) Мой вариант удобнее для работы с одиночным пользователем, ваш – для какой-то групповой работы. Хотя, конечно, главное – чтобы оно было, а в каком варианте – это уже менее важно.
- Andrey Cherezov: Вот сколько не играюсь с вакой после Php Wiki, столько не могу себе ответить на вопрос: зачем в ваке сделано различие между Actions и Handlers??
- RomanIvanov: ну, include вряд ли может быть хэндлером, как и print – экшном. Экшн включается внутрь страницы, хэндлер — грубо говоря, обработчик страницы. Понятно, что в идеале должно быть так: если экшн имеет смысл как хэндлер, то его можно так вызывать, и наоборот.
- Andrey Cherezov: Вот например, action Back Links и handler Referrers – суть одно и то же (выводят ссылки на эту страницу из других мест!), но правила доступа к ним совсем разные: /referers можно ставить в линк и вешать на кнопку, а аналогично поставить /backlinks – не работает.
- Andrey Cherezov: И наоборот – как вставить список рефереров прямо встраницу (как с action Back Links)?
- RomanIvanov: не могу себе вообразить, зачем бы это было надо, но см. выше.
- Andrey Cherezov: Imho, подход Php Wiki более логичный и гибкий (страницы, вызывающие plugin'ы c параметрами). Впрочем, поконкретному вопросу с Back Links понятно: если бы он в ваке принимал параметр page, как в Php Wiki, то можно было «эмулировать» нужное поведение, – но не логичным для ваки образом (логично было бы просто ставить /backlinks в конце урла). Хорошо хоть, что referers выводит и Back Links заодно.
- Andrey Cherezov: То что pagename/referers не ведет на редактируемую страницу /referers, где можно было бы изменить вид страницы со списками – жаль. Может я в ваке еще плохо разобрался?
- RomanIvanov: Этого я вообще не понял. Это как это — редактируемую? Очень хочу понять.
- Andrey Cherezov: ForthWiki:BackLinks – страница, в которой можно изменить и формат списка Back Links, и текст вокруг свой понаписать.
- Как изменить формат списка?
- Andrey Cherezov: это же plugin, у него могут быть параметры
- (P.S. текст вокруг вызова экшна можно написать точно так же, как и вокруг вызова плагина.
- Andrey Cherezov: это если экшен, то да (но и то – только для этой страницы; а если надо для всех, кто его вызывает?). А если не экшн, а /referers: на выдаваемую им страницу не повлияешь – текст не допишешь.
- Как воспользоваться страницей ForthWiki:BackLinks для того, чтобы посмотреть бэклинки на ForthWiki:HomePage?).
- Andrey Cherezov: элементарно. На странице ForthWiki:HomePage жмем на заголовок Home Page, и попадаем на список Back Links, причем обрамляющий текст берется со страницы Back Links. Т.е. фактически просто попадаем на страницу Back Links, внутри которой отрабатывает <plugin backlinks>. Вот и у вас всякие там Page Name / edit?, Page Name / referers?, Page Name / backlinks? (если сделать :) могли бы вести на одноименные страницы, где задавался бы внешний вид формы или отчета (включая параметры для вида списка referers и backlinks).
- Andrey Cherezov: я вообще не о конкретно backlinks, а об основной идее: экшены и хэндлеры могут быть одним и тем же, и могут быть страницей с вызовом плагина (ну или экшена {{ }}, тут уж всё равно как обозвать и вызывать, правда plugin подразумевает расширябельность этого механизма).
- Кусо:
- Actions == Handler — это функциональность Нпж
- Редактируемый внешний вид для actions — ещё один способ, куда может пригодится содержимое каталога handers/actions/, кроме acl
- Что такое Нпж :
http://kee.sharpdesign.ru/wacko/nashiproekty/netproektzhurnal (как бы получить права на прочтение сего?, а то ссылаетесь в ответе на это, а прочесть я не могу ;)
- Резюме: до R5 редактируемый вид экшнов не планируется точно. Извините.
- Евгений Неделько: А кстати branching тут есть? :-)
- Ку Куц — пока нету.
- RomanIvanov (он же) — ускорить очень просто: нужно описать функциональность.
- Же Не: Я не думаю, что это нужно в ближайшее время. И вообще не уверен, что это нужно. Может в R6?
- RomanIvanov ага.
- export/import. Вот хочу я забрать все документы по Нп Ж. как проще?
- Ку Ме: 1 — сделать возможность скачать документ с под-документами (почему именно так? это позволяет не давать скачать весь сайт =)).
- Ку Ме: вынести функциональность из вики-движка, но задействовать его, чтобы получать страницы. отдельные header/footer. вынести затем, что это не попадает в парадигму, имхо. а значит должно архитектурно делаться «на стороне».
- Ку Ме: 2 — сделать возможность получить XML или линк-лист для качалок?
- Ку Ме: достаточно эффективно решается Topic Search? + версия для печати. Возможно, action Cluster Tree?, Cluster Recent Changes?
- Grigory Bakunov: Может быть сделать возможность получить просто XML? А потом его во что угодно через XSLT преобразовать можно.
- Ку Ме: а в чём его XML-ность?
- Ку Ме: 3 — а зачем?
- Ку Ме: для чтения в оффлайне. для генерации статичной документации.
- Ку Ме: 4 — Роман Иванов, это кстати для Нпж интересно =)
- Meta Wizard: ну сделайте хоть документ, который бы инклудил все документы по Нп Ж, в том порядке, как их надо читать. Я его открою и почитаю в офлайне. Может поумнею... Я думаю это не одному мне пригодиться...
- Alexander Drunin: Экспорт/импорт всего контента в XML (для бэкапа).
- RomanIvanov: Александр, дайте, плз, на отдельной странице пример файла экспорта и файла для импорта.
- Alexander Drunin: Формат не важен, важно, что вака может себя сохранить-восстановить.
- RomanIvanov: Хмм. Что-то я не уверен. Она не сможет себя восстановит за те 30 секунд, что есть у любого php-приложения. ИМХО, проще пользоваться дампом БД, например при помощи phpMyAdmin.
- Andrey Cherezov: В Php Wiki бэкап работает хорошо – в простые email-подобные файлики. Я так с одного сервера на другой перенес
http://wiki.forth.org.ru. Не перенеслись кажется только хиты страниц. 30 секунд можно увеличить из php-программы, есть функция, забыл название. Я использовал, когда на shared-хостинге жил на Sun'е, работало.
- Ku Me: safe_mode, yep?
- RomanIvanov: Мы совершенно точно не будем писать бекапер БД. Он уже написан господами разработчиками phpMyAdmin. Я не вижу смысла делать в этом движке плохо то, что уже решено хорошо в сторонней программе, специально для этого предназначенной.
- Кусо согласен. Если делать Cluster XML?, то он тем более включает в себя эту функциональность.
BTW, будет полезно собрать где-нибудь ссылки на ближайшие вики-аналоги, а также на сравнения движков (и/или честно сравнить свой с ближайшими конкурентами).