Николай Ланец
21 авг. 2014 г., 2:37

Возобновление общения на сайте MODX-Клуба

Для начала немного истории сайта нашего Клуба... В январе прошлого года я на скорую руку на базе модуля modLivestreet (MODX Revolution + Livestreet) поднял первую версию сайта Клуба. Плюсы модуля: быстро поднимается хабра-подобный блог, можно сразу же приступать к общению на сайте. Минусы модуля: Livestreet все-таки довольно узкопрофильный движок, и даже в связке с MODX-ом особо было не разгуляться с функционалом.
Результат: год с лишним сайт почти не развивался. На нем было написано много полезного материала и много комментариев было, но сам он в развитии стоял жестко.
Я давно планировал переезд сайта на чистый MODX+modSociety, но все как-то не доходили руки, и времени не было. А тут вдруг 10 дней майских праздников, и появился карман в несколько дней. Вот я решил тогда воспользоваться моментом и переделать сайт на чистый MODX с полным переносом данных из ливстрита. Тогда мы (с Сергеем Прохоровым, Александром Марковым и другими замечательными ребятами) дней за пять полностью переделали сайт с нуля и импортнули туда все имеющиеся блоги, топики, комментарии, все с учетом политик доступов и т.п. (закрытые блоги и прочее). Но регистрацию пользователей мы тогда отключили, так как создание топиков, комментирование и т.п. не было еще реализовано на сайте. То есть процессоры все необходимые на это в общих чертах были, но для публичного использования их надо было докрутить по политикам безопасности, да редакторы текста хоть какие-то прикрутить. Тогда по моим оценкам на это надо было не один десяток человеко-часов потратить. В общем, я тогда решил немного отложить это дела, перенеся общение в нашу группу во вконтакте. А потом думаю "доработаю". Но тут нам упал очень крупный заказ на разработку HR-портала, про который мы еще будем писать очень много, ибо только вот на таких крупных проектах ты реально выходишь на новый уровень. К слову, демо-версия портала доступна здесь: hrcam.ru, советую посмотреть видео на главной, зарегистрироваться и попробовать записать видео о себе с камеры. И да, этот портал так же разрабатывается нами на MODX Revolution :)
В общем, три месяца мы фигачили этот портал не покладая рук и не видя света Божьего. Короче говоря, некогда было дописать функционал общения на сайте Клуба :) Но вот мы выкатили альфа-версию, и появилось немного свободного времени, чем я и поторопился воспользоваться...
Я скажу так: мы конечно итак очень хорошо стояли по MODX-технологиям, но на этом проекте мы прокачались как никогда! :) Я в ближайшее время напишу массу интересного и познавательного материала (правда по большей степени он все-таки будет рассчитан на уровень знаний выше среднего), а так же планируем значительно переделать и дополнить модули ShopModxBox и modSociety. Новые технологии позволяют значительно сократить код и увеличить скорость разработки, а так же управляемость проектом. Для сравнения скажу, что если в мае я понимал, что на прикручивание общения на нашем сайте надо будет не меньше нескольких десятков человекочасов (учитывая то, что это не сайт-визитка, а сайт сообщества, и здесь совершенно другие требования и к уровню безопасности, и нагрузки и т.д. и т.п.), то сейчас вот я выкатываю первую версию общалки после 13 часов работы в одиночку. Я за вчера и сегодня прикрутил и регистрацию, и активацию, и создание топиков, и комментарии (вместе с редакторами текста). И это при том, что я стараюсь верстки не касаться вообще, и если бы мне кто-то из команды помогал по фронту, то было бы и быстрее, и на фронте качественнее (но ребята пока заняты на других проектах). В общем, сейчас сайт Клуба будет активно развиваться. Есть масса идей, которые хотелось реализовать уже очень давно, но из-за того, что сайт не был на чистом MODX-е сделан, никак не получалось реализовать желаемого.
Пока что на сайте можно только писать новые топики и комментарии (без возможности редактирования их и сохранения в черновики), но скоро и это будет доделано. Аа, еще можно голоса отдавать за топики (голоса за комментарии будут чуть позже реализованы).
В общем, впереди ожидается много всего интересного! :)
P.S. и всех неравнодушных просим поддерживать проект копеечкой :) Чем больше денег будет приходить в виде донейтов, тем больше мы будем времени уделять на развитие наших модулей и написание полезных статей. И еще скажу: как только сайт Клуба будет доведен до стабильной версии (что подразумевает полную переработку и доведение до ума модуля modSociety и индивидуальных процессоров), будет собрана сборка сайта-блога, чтобы можно было как и Livestreet очень быстро поднять сайт-блог для общения на базе MODX Revolution. Данную сборку по традиции планируется распространять бесплатно (как и все остальные наши модули). Но это еще не все :) В новой версии modSociety мы планируем реализовать видео-конференции :) Прям на сайте можно будет создавать многопользовательские видео-конференции, со всеми необходимыми политиками безопасности и т.п. Все необходимые наработки у нас уже есть. В первую очередь это появится на сайте Клуба :)
Всем хорошего дня!
Отлично! Радует что есть реальный прогресс в деле Сообщества MODX клуба! Спасибо за сообщение данное, будем вновь чаще сюда заглядывать/читать/рассуждать/делать !!!)))
Моя сделать тестовый коммент, чтобы видеть, что все работает и радоваться ентому факту. Когда написал что-нибудь и проголосовал - текст пропадает. Ну, это так, на всякий. Потом сделаете аджаксом.
Рад что уведомили на почту, но зачем же это делать 40(!) раз?
Рад что уведомили на почту, но зачем же это делать 40(!) раз?
И при отправке комментариев как видите есть глюки...
Не надо так делать - https://yadi.sk/i/LVOdadZxaABqQ у меня по умолчанию алерты режутся, поэтому все дальнейшее выполнение кода прерывается, и отредактировать комменты нельзя, так что извините за множество разных.
Привет тестирую вас :)
Сегодня прикручу уведомления о новых комментариях, чтобы общение было еще более оперативным. Повеселее будет :)
Написал и пропадает текст - это комментарий написал? Можно чуть подробней о том, что делал и что произошло? Так как сейчас комментарии аджаксовые и худо-бедно с сервера приходит HTML с опубликованным комментом и он сразу подставляется в документ (правда без кнопки Ответить, но она и не нужна автору комментария).
Извини за спам :( Отписался по этому поводу здесь.
Редактировать не работает но в целом уже неплохо!
Спасибо за фидбэк! Да, скоро уведомления будут переделаны на нормальные. Просто я по фронту практически не работаю вообще, и вставил пока обычные алерты, а Сергей уехал отдыхать :) Вот вернется и приведет фронт в порядок.
Письмо об активации в спам пришло
Странно... Видимо гугль обиделся на нас сегодня за утрешнюю выходку :) А так вроде должно быть все ОК. И домен не новый, и rDNS прописан. Странно.
Написал комментарий -> не жмякая "опубликовать комментарий", нажал лайк темы (палец вверх который, там где Fi1osof 2014-08-21 14 4 ) - текст пропал.
Быстрофикс. Все-таки редактирование нужно. Да и предпросмотр не помешает Написал комментарий -> не жмякая "опубликовать комментарий", нажал лайк темы (палец вверх который, там где Fi1osof 2014-08-21 14 4 ) - текст пропал.
Ну да страанно Subjekt прописан откуда тоже написано всё гуд. Я от логина сколько делал тест регистрации ниразу в спам не залетало
Все когда-нибудь в первый раз. Вполне возможно из-за сегодняшней массовой спам-рассылки гугл начал нас немного фильтровать. Со временем все восстановится.
Ааа, понял. Да, после голосования страница обновляется. Да, эти неприятные мелочи обязательно будут поправлены.
Все будет. И редактирование, и удаление, и предпросмотр. Но чуть позже. Качественный фронт - это не я, а Сергей Прохоров. Вот вернется на следующей неделе и займется. А сегодня я сделаю емейл-уведомления различные :)
А сегодня я сделаю емейл-уведомления различные :)
А то ни уведомления о новых комментах/ответах, ни о новых топиках, ничего. Надо поправлять.
Согласен ато много время так теряешь проверять всё
Да нет, если зашел, то не долго - справа есть лента, да и страница всех комментариев есть. http://modxclub.ru/comments/ Но каждый раз заходить чтобы просто проверить писал кто-то что-то или нет - лениво.
Мне кажется, что последние комментарии в правом верхнем блоке было бы лучше выводить с группировкой по публикации, как в ливстрит. Ну и ссылкой на комментарий сделать текст (как в блоке последних публикаций), а не решетку (:
Да, подкинули мне задачку на часик... Проблема MySQL в том, что нельзя выполнить сначала сортировку, а потом группировку. Можно только выполнить группировку, а в ней сортировка уже на воле Ктулху. В итоге приходится лепить подзапрос, в котором сортируешь или выборку максимальных делаешь. А такая задача в одном объекте xPDOQuery нереальна. Вот подзапросик добавил в процессор:
// Получаем последние комментарии из этих топиков if($this->getProperty('one_comment_per_thread')){ $ids = array(); $sub_query = $this->modx->newQuery($this->classKey); $sub_query->select(array( "max(id) as id", "thread_id", )); $sub_query->groupby('thread_id'); $s = $sub_query->prepare(); $s->execute(); while($row = $s->fetch(PDO::FETCH_ASSOC)){ $ids[] = $row['id']; } if($ids){ $query->where(array( "id:in" => $ids, )); } }
Сейчас выборка последних комментов по одному на диалоговую ветку. А вот верстка будет позже подправлена.
Для полноты решения нужно еще добавить название топика, но это в общем-то мелочь. Интересно другое - если усложнить задачу, например, не 1 последний комментарий на публикацию, а 5. Тогда только xPDO->exec()?
С xPDO->exec() я ошибся, для выборки он не подойдет.
Не важно xPDO:exec() или что другое. Главное - это SQL правильный. Здесь сам принцип усложняется. Придется делать перебор всех последних веток и в цикле выдергивать по максимум 5 комментариев. Овчинка вообще не стоит выделки.

Добавить комментарий