Связка MODx Revolution + LiveStreet
Уважаемое сообщество!
У меня для вас сразу две заметки.
Первая для новичков: кто еще не освоил создание плагинов под Livestreet с нуля, подробная мана: modxlivestreet.ru/blog/livestreet-lessons/9.html
А вот вторая — повод для холиваров, которые мы уже развернули на хабре ( habrahabr.ru/post/155063/ ) и community.modx-cms.ru ( community.modx-cms.ru/blog/social-network/8766.html ) (правда в MODX-сообществе отдельные люди оценили идею и скорее всего в ближайшее время мыс моим модулем будем осуществлять перенос сообщество с MODx Evolution + Livestreet на MODX Revolution). Заметки об этой связке MODX-сообщества уже были здесь ( livestreet.ru/blog/sites/2111.html ).
В чем суть этого модуля? Этот модуль позволяет подружить MODX Revolution с Livestreet. Вот посмотрите на мой сайт: modxlivestreet.ru/
Типичный с виду Livestreet. Да только не совсем типичный. Вообще-то это MODX. Просто он дергает нужный ему контент из Livestreet.
Обратите внимание на регистрацию.
В первом случае Livestreet ругается на то, что пароль должен быть не менее 5-ти символов.

Все положенные для себя проверки в полной мере выполняет Livestreet.
А вот это та же регистрация, только не смотря на то, что пароль уже 6 символов, все равно выходит сообщение, что пароль слишком короткий. А это уже MODX ругается… Он хочет минимум 8 символов.

Это демонстрация синхронизированной регистрации в Livestreet и MODX. Сначала MODX перед сохранением пользователя делает свои первичные проверочки, затем позволяет Livetreet попытаться зарегистрировать у себя пользователя, и уже только тогда, когда пользователь зарегистрирован в LS, он регистрирует этого пользователя у себя.
Точно так же, когда мы регистрируем пользователей через админку MODX, пользователи так же синхронно создаются и в LS.
В общем, лично я уверен, что этот модуль нужен как MODX-девелоперам (так как под MODX нет ни одного комплексного решения для создания социалки), так и LS-девелоперам, потому что для LS даже админки толком нет. Так что вероятно стоит ожидать новой волны интереса и к LS, и к MODX, так как вместе они позволят сделать что угодно и в самые сжатые сроки.
Я пока в самом начале пути, но сделано уже многое. В данный проект верю, так как интернет-разработками занимаюсь не первый год, и вижу, какие здесь открываются перспективы.
А вам обещаюсь в течение недели продемонстрировать небольшую админку для Livestreet.
У меня для вас сразу две заметки.
Первая для новичков: кто еще не освоил создание плагинов под Livestreet с нуля, подробная мана: modxlivestreet.ru/blog/livestreet-lessons/9.html
А вот вторая — повод для холиваров, которые мы уже развернули на хабре ( habrahabr.ru/post/155063/ ) и community.modx-cms.ru ( community.modx-cms.ru/blog/social-network/8766.html ) (правда в MODX-сообществе отдельные люди оценили идею и скорее всего в ближайшее время мыс моим модулем будем осуществлять перенос сообщество с MODx Evolution + Livestreet на MODX Revolution). Заметки об этой связке MODX-сообщества уже были здесь ( livestreet.ru/blog/sites/2111.html ).
В чем суть этого модуля? Этот модуль позволяет подружить MODX Revolution с Livestreet. Вот посмотрите на мой сайт: modxlivestreet.ru/
Типичный с виду Livestreet. Да только не совсем типичный. Вообще-то это MODX. Просто он дергает нужный ему контент из Livestreet.
Обратите внимание на регистрацию.
В первом случае Livestreet ругается на то, что пароль должен быть не менее 5-ти символов.

Все положенные для себя проверки в полной мере выполняет Livestreet.
А вот это та же регистрация, только не смотря на то, что пароль уже 6 символов, все равно выходит сообщение, что пароль слишком короткий. А это уже MODX ругается… Он хочет минимум 8 символов.

Это демонстрация синхронизированной регистрации в Livestreet и MODX. Сначала MODX перед сохранением пользователя делает свои первичные проверочки, затем позволяет Livetreet попытаться зарегистрировать у себя пользователя, и уже только тогда, когда пользователь зарегистрирован в LS, он регистрирует этого пользователя у себя.
Точно так же, когда мы регистрируем пользователей через админку MODX, пользователи так же синхронно создаются и в LS.
В общем, лично я уверен, что этот модуль нужен как MODX-девелоперам (так как под MODX нет ни одного комплексного решения для создания социалки), так и LS-девелоперам, потому что для LS даже админки толком нет. Так что вероятно стоит ожидать новой волны интереса и к LS, и к MODX, так как вместе они позволят сделать что угодно и в самые сжатые сроки.
Я пока в самом начале пути, но сделано уже многое. В данный проект верю, так как интернет-разработками занимаюсь не первый год, и вижу, какие здесь открываются перспективы.
А вам обещаюсь в течение недели продемонстрировать небольшую админку для Livestreet.
86 комментариев
Сделать можно практически все, но социальность — белое пятно в MODX.
Я же говорю о готовом решении. За час можно развернуть отличный сайт с админкой, политиками безопасности, мультидоменностью, мультиязычностью, пакетами из репозитариев и т.п. Этого вам Кохана не даст.
Давайте немного расставлю точки над i, что это вообще будет такое. Кто знаком с админкой MODX, тем проще будет понять.
В общем это будет сама по себе админка MODX для управления сайтом на MODX, но на нее можно будет ставить дополнительные компоненты (создавать новые пункты меню админки, странички управления и т.п.). В общем типа как когда вы в LS ставите через управление плагинами новый плагин и у него есть управляющие функции, вы как бы получаете дополнение к своей админке. Только здесь круче.
Так как здесь фотки ужмутся, да и много фото в комменте — не круто, вот создал фотосет со скринами из админки MODX в части управления модулем modLivestreet: livestreet.ru/blog/12820.html
Вот как раз на базе этого и будет делаться админка. То есть управление LS-ом будет производиться из админки MODX. Но пока не пугайтесь. Когда я выложу админку и вы ее поюзаете, вы поймете, что это очень даже не плохо.
Так вот мне и надо список хотелок, к примеру: нам надо, чтобы мы могли редактировать пользователей (менять им емейлы, кармы, описание, блокировать/разблокировать и т.п.).
Зачем мне это? Я в первую очередь хочу сделать то, чего нет. Если есть модуль под LS который позволяет все это делать легко, зачем мне это делать? Но так как LS-ом я раньше не пользовался, я не знаю что есть под него, а чего нет.
Но поверьте мне, что это достаточно нативное решение будет. Непосредственно серверная логика по части LS будет выполняться через LS-плагин. MODX же будет выполнять роль визуализации, авторизаций, проверки доступов на право выполнения тех или иных действий и т.д.
Вообщее, что такое MODX? По сути это xPDO (MODX-расширение PDO) + Smarty + ExtJS/Sencha. Улавливаете мысль? Это независимые технологии собранные в кучу в один продукт. У кого-то есть аргументы, что к этому нельзя примешать плагины LS?
Но это сам LS, его API.
Я же говорю про компоненты LS, то есть различные плюшки. Я не собираюсь ставить и разбирать все компоненты под LS, чтобы понять что уже сделано для него, а чего нет.
А поделиться своими знаниями с сообществом — не только хороший тон, но и общее развитие сообщества в целом. Потому и выкладываю в паблик.
Теперь по теме топика. Ознакомившись со статьями, пришел к выводу, что все это дело будет полезно только MODX, которому нужно добавить социальности. Что от этого будет иметь LS? Админка, как я понял, в полном объеме интегрироваться не будет. А чем тогда порадуете?
Я же говорю о том, что под MODX будет модуль, который позволит управлять Livestreet-ом. Это все равно как вам на хостинге ставят Plesk для того, чтобы вы могли управлять своими доменами, почтой, апачем и т.п. Это же не является частью того, чем вы через нее управляете, хотя пользуетесь этим. Хотел бы я посмотреть на веб-мастера, который потребует от хостинга «а ну напрограммируйте мне средства управления уроном средствами самого крона»…
В общем, если кому-то пока не ясно зачем все это, просто немного подождите до релиза. Но все равно пока выскажитесь, кому чего не хватает в админке Livestreet-а, чтобы быстрее получить то, что требуется.
если будет все работать и админка качественная — переезжаем =)
Попутного ветра и всяческих удач, я думаю сообщество с восторгом поддержит начинание, по правде говоря я даже не задумывался ниразу о таком симбиозе, оно великолепно.
Но в крайнем случае система модульная, потому наверняка сообщество начнет и от себя что-то добавлять.
С моим модулем этого недостатка нет, только надо в конфиге указать для кукисов не жестко домен site.ru, а корень .site.ru и будет вам счастье.
А так коммент вообще ни о чем. На грани троллинга.
Не надо вам, не вопрос, но не говорите за всех.
Здесь и на хабре в общей сложности уже почти десять раз спросили, зачем это и какие возможности даст. В ответ вы создаете циклические ссылки на собственные комментарии или отвечаете максимально широко. Может быть, юзкейсы чересчур очевидны — но, видимо, всё-таки не для всех. Это, ну не знаю, всё равно что приварить грузовик к моторной лодке — просто любопытный эксперимент и практика программирования. Тоже, в общем-то, благая цель.
Лично меня совершенно не смущает то, что на моем сайте на MODX крутится социалка на Livestreet и меня совершенно не смущает то, что этим же Livestreet я буду управлять из той же самой админки на MODX.
На чем вы делаете акцент? Клиентам, которые платят деньги, плевать какие вы технологии используют, им нужен продукт. То, что я делаю, позволяет быстро создать конечный продукт и красиво его оформить. Много у вас восхищенных клиентов, которых надо учить как ставить плегины
Продолжу. Так много таких заказчиков? А много ли заказчиков, которые заказывают интернет-магазины или каталоги на LS? Сейчас ваш ценовой сегмент — блоги за 1000 рублей, и то для тех, кто не умеет даже СУКу развернуть самостоятельно. Потому что это блог, его поставил и пусть общаются. Для него и админки вменяемой нет, только потому что админить нечего, кроме как комменты отредактировать и т.п.
Мое же решение выведет LS на новый уровень. Потому что можно будет очень быстро разворачивать магазины и корпоративные сайты с социалками. У меня уже сейчас два заказа на 230 000. А каковы ваши гонорары с чистой и не оскверненной сторонними технологиями LS?
Но чтобы вы знали, мой проект — единственный купонный сайт, который предоставляет личный кабинет для организаторов акций, где они сами создают свои акции, редактируют их, продлевают и т.п. Мое дело — только проверить акцию, чуть-чуть подчистить код и все. У проекта в целом очень низкие издержки, которые сводятся только к оплате хостинга и моей занятости +-1 час в день. При этом мой сайт акций дает столько же, сколько более старшие конкуренты. И проект начал приносить денег с первых же дней запуска. Чтобы вы знали, я отклонил предложение по инвестициям на 1 500 000 рублей.
И в то время как сейчас рынок просел и наши конкуренты уже начали разоряться, наш проект как минимум на собственном балансе держится, дожидаясь оттепели.
Там очень много напрограммировано того, чего вам не будет видно в принципе, и при этом есть плюшки, которых нет у других купонных сайтов. Если бы я стал перечислять все, что там есть, это бы было оооочень много буков. При этом я сделал все сам.
А вы похвастайтесь каким-нибудь своим проектом.
modx-2.2.5-pl.zip 8548296
Но это архивы. Файлов у него конечно значительно больше.
Но он не очень требовательный. Плюс не забывайте, что не обязательно прогонять LS через него, то есть вы можете держать свой сайт для пользователей самостоятельно, а админку вообще на другой поддомен перетащить со своей DOCUMENT_ROOT и все.
Но все равно плохо, что вместо того, чтобы мне все-таки сказать чего же не хватает LS-у, упорно ведем споры по нужности или не нужности.
В «голом» LS много чего не хватает — посмотрите каталог плагинов, они все призваны восполнить «хотелки» тех, кто делает сайты на ЛС. Но я сильно сомневаюсь, что много ЛС-девелоперов вашу затею примут на «ура». Выше было абсолютно верно отмечено: зачем MODx эта связка — понятно, зачем она LS — непонятно (подчеркну — комменты тут читал, холивар на хабре тоже, но все равно непонятно)
Почитайте вот это: habrahabr.ru/post/154081/
А вот это вам о чем-нибудь говорит?
Это PDO (хотя в случае с MODX правильней говорить xPDO). Во-первых, мы можем легко мигрировать с одной БД на другую (к примеру MSSQL), при этом не меняя своего кода. Как минимум.
А еще меня убивает, что чтобы не приходилось писать под LS, обязательно классы надо создавать, для чего нужно лезть на сервер.
А как на счет этого?
Извините, но Livestreet под стол ходит пешком по сравнению с MODX-ом. Основа очень неплохая, но чисто под социальность. Много просто не напрограммировано.
Ребята, все, я замахался. Извините за грубость, но я выполнил десятки проектов на различных платформах, в том числе и самописок. За свою практику я не раз слышал лестные слова от программистов с более чем 20-тилетним стажем, и я устал что-то объяснять тем, кто кроме своего любимого движка мало что знает, и кто часто единственное что может, так это поставить написанный кем-то плагин и порадоваться достижению.
Я торможу диалог. Дальше я буду только анонсировать новые релизы, а ваше дело или принимать их, или нет. Право ваше.
Вы написали: «если LS-девелоперы получат дополнительные удобства...», на что я ответил, что пока не вижу никаких удобств, кроме неудобств. И вместо того, чтоб попытаться объяснить эти удобства, Вы достали из широких штанин… измерительный прибор.
Да, у MODx есть масса преимуществ по сравнению с LS. И мне лчино далеко не все нравится в LS. Но речь тут не о том, какой движок лучше. А о том, что непонятно, зачем ЛС-разработчику связка с MODx. Не можете по существу вести диалог — действительно лучше даже и не ввязываться.
Извините, но хотя вы и не желаете «меряться письками», ваши топики с заголовками «Админка — наконец-то редактируем конфиг!» вообще не заставляют видеть в вас невероятного программера. То, что вы много лет чем-то занимаетесь, еще вообще не делает чести.
Видимо очень сложно было реализовать…
В общем, не можете ничего сказать кроме как «не верю», вероятнее всего стоит помолчать. Я может и программирую всего лет пять, но поверьте мне, что опыта у меня достаточно, чтобы запихнуть вас за пазуху в плане кодинга.
Достаточно?
И вполне достаточно, чтобы понять, что удобств мне это не добавит. Использование «API MODX внутри LS» подразумевает, что мне нужно будет либо лезть руками в сам движок LS, что очень плохо. Либо писать плагины для переопределения функционала и завязывания его на MODX. Что тоже ни разу не есть гуд. Ибо вряд ли это будет эффективное решение — лучше уж сразу писать нативный LS-плагин с требуемым функционалом. Тем более, что Вы сами отметили, что модули под LS предельно легко и просто делаются
Все, разумеется, глубоко ИМХО
Вот объединять пользователей в группы (сообщества), это уже правильней. Блоги для группы такой-то, такой-то. Право доступа к таким-то или таким-то блогам. Что у вас есть? Единственные права: ограничение по рейтингу и закрытый блог или нет. А создайте-ка такой блог, в который могут самостоятельно войти и писать пользователи с кармой 5, но только определенной группы.
Вот скрины.
Это не в MODX уже, это в LS выводится.
Повторюсь: это было сделано максимум за 20 минут. За день можно написать полноценный модуль со всеми хуками и т.п. так, что это будет в LS как родное.
Но это не сегодня. На ближайшие пару дней у меня другие задачи.
Все скрины ниже по ходу.
А код:
И то только потому что лень было файлы для плагина создавать.
$modx->hasPermission('ls_allow_comments_in_super');
Затем качаете мой модуль и устанавливаете в MODX, только пока требование — MODX и LS должны стаять на одной машине, чтобы доступ к файловой системе LS был.
Как ставить пакеты в MODX документации полно, но можно и здесь глянуть. Правда там для более старенького MODX, но в общих чертах то же самое. Но так как пакет не из репозитария, то перед установкой вам надо будет закинуть его в папку /core/packages/ и через админку для установки выбрать «Искать пакеты локально».
После установки лезете в настройки и корректируете что надо. Скрины выкладывал здесь: livestreet.ru/blog/12820.html
Новые модули будут так же поставляться пакетами, что позволит дополнять и обновлять уже имеющиеся.
Вообще-то modxlivestreet.ru/ — Это MODX, просто я ему задал в качестве раздела для LS — сразу корень, потому вы и видите LS, хотя это MODX подгружает контент из LS.
А все как обычно. Если будет найдена MODX-страница, то будет выводиться страница MODX (другое дело, что в этой странице может быть указан вывод какой-нибудь страницы из LS, к примеру скрытый блог). А если не найдена, то будет выводиться контент LS. Настройки модуля смотрите здесь: livestreet.ru/blog/12820.html
В общем, все что вы описали, вот это все модуль и дает.
А для тех, кому лень было зайти на хабр, вывожу схемы работы MODX с модулем и без Здесь, так как эти схемы объясняют наглядно принцип работы модуля.
Сам я с Drupal не работал, но знаю, что это тоже мощный фреймворк. Но вот если я не ошибаюсь, там нет такой системы управления пакетами, как в MODX? Поправьте меня, если я не прав.
Могу допустить такой вариант, что если бы под MODX нельзя было собирать пакеты, то скорее всего для паблик я вообще бы не разрабатывал этот модуль, так как, как я говорил в другом топике, слишком много телодвижений необходимо делать при установке. А так пакет собран, установил его в три клика и все.