Админпанель вер.1.1

Выложена версия 1.1. Наиболее значимая доработка, пожалуй, это функция удаления юзеров из базы.

Изменения в версии 1.1:

1. Добавление полей adm_vote_date в таблицы с голосованием для фиксации даты и времени голосования (не хотелось мне залезать в структуру таблиц, но пришлось). Благодаря этому удалось реализовать вывод ПОСЛЕДНИХ N результатов голосования пользователя за других пользователей, топики, комментарии (кстати, значение N задается в параметрах модуля)

2. Доработан поиск пользователей и исправлены известные ошибки:
— Возможен поиск не только по полному логину, но и по первым символам логина
— Исправлены ошибки при многостраничном результате поиска
— Параметры поиска сохраняются в сессии (со всеми вытекающими)
— Возможна сортировка по ID, логину, дате регистрации, дате посленей активности (как по возрастанию, так и по убыванию)

3. Доработан администраторский профиль пользователя:
— Кроме топиков и комментариев можно посмотреть список блогов пользователя (все типы блогов)
— Удаление блогов пользователя
— Удаление топиков пользователя прямо из их списка

4. Добавлено удаление пользователей непосредственно из базы данных вместе с их блогами, топиками, комментариями.
ВНИМАНИЕ: при удалении комментариев пользователя из базы возможна потеря «дерева комментариев», идущее от удаляемого комментария.

5. Немного изменен код работы с темами, улучшен интерфейс без изменения функционала, исправлены мелкие баги

Скачать можно здесь.

Топик про версию 1.0 с полным описанием функционала модуля

ВНИМАНИЕ! Еще раз напоминаю, что технически нет возможности отвечать на отзывы в разделе скачки модуля, поэтому все вопросы, проблемы, просьбы и пожелания — все это надо писать здесь (конечно, если есть желание, чтобы я ответил).

Модуль остается бесплатным, но для тех, кто в благородном порыве желает поощрить автора модуля, сообщаю реквизиты для добровольных пожертвований: кошельки WebMoney Z178319650868 или R312496642374, счет Яндекс.Деньги 41001176375531.



UPD. Версия 1.1.57 — livestreet.ru/blog/addons/2016.html

56 комментариев

avatar
и опять не рассылки пользователям на емаил :(
avatar
Извини, Лора, страшно сожалею, что тебя этим огорчаю, но с рассылками действительно не все так просто, как кажется на первый взгляд. Но я работаю над этим :)
avatar
пардон, но в чём именно?
avatar
Лора (и не только она) просила сделать рассылку писем юзерам. Можно, конечно, сделать очень просто — массовая отправка сообщений в приват. А движок ЛС, как положено, сам разошлет людям сообщения типа «У вас новое письмо». Но все это элементарно, если юзеров сравнительно немного. А если тысячи? А если десятки тысяч? Одномоментно такую массовую рассылку непосредственно через движок ЛС делать — это совсем не кошерно. Поэтому я признаю, что такой функционал нужен однозначно. Но его создание — не простая задача. Есть идея «подружить» с нормальным рассылочным сервисом. Но не хочу забегать вперед, как говорится, «следите за нашей рекламой» (с)…
avatar
Ну для начала хотябы обычным дедовским mail() организовать, раз все так хотят)) Тестил на пару сотен тысяч рассылку — всё нормально)) VPS 256 Мб. А позже можешь и подружить. Ибо вот мне, к прмиеру, ну совсем нивпёрлись какие-либо сторонние сервисы…
avatar
спасибо, терпеливо ждём ждём :)
avatar
лишь бы в сборку 0,4 было включена эта панелька :)
avadim, отличная работа!
avatar
Вопросик: вдруг возникло это

Cannot copy /home/u170670/avtoturistu.ru/www/update/modules/admin/install/classes/actions/ActionAdmin.class.php to /home/u170670/avtoturistu.ru/www/classes/actions/ActionAdmin.class.php

Права на папку ...www/classes/actions/ 777 поставил, но… Опять ошибочка. Что это могло бы быть?
avatar
А когда такое вылезает? Когда install запускаешь?
Могу предположить, что у файла /home/u170670/avtoturistu.ru/www/classes/actions/ActionAdmin.class.php стоят права, которые не позволяют его перезаписать.
avatar
Да, действительно, у файла прав не достаёт (и у прочих других). Это на безопасность не повлияет, если всем 777 расставить? (я — чайник:-)
avatar
По поводу безопасности есть много разных точек зрения. Кто-то считает, что достаточно грамотно задать права доступа в .htaccess (по умолчанию они уже стоят в ЛС). А кто-то настаивает на том, что скрипты должны иметь права 600.

Поскольку я не являюсь большим специалистом в вопросах безопасности с точки зрения администрирования, то не хочу давать советов в духе «делай так и никак иначе». ИМХО, если у хостера грамотно все настроено (т.е. юзеры изолированы друг от друга), если в .htaccess все правильно прописано, а в самих скриптах «дыр» нет, то права на папки и файлы не так критичны. У меня на папку права стоят 755, а на файлы 644 (это, в большинстве случаев, значения по умолчанию), и все работает без проблем.
avatar
Впринципе сами по себе права 777 не столь критичны, как их малюют (если, как было уже замечено, юзеры изолированы друг от друга на сервере). Если уж зальют шелл, то вам никакие CMOD не помогут :) А хоть одна папка, да всегда будет под 777 правами.
avatar
Avadim'у, пора уже памятник начать пристраивать :)
У меня вообще создается впечатление, что человек с остервенением работает, с такой частотой выпускать обновления О_о, причем качественные обновления.
Модуль оброс впечатляющим функционалом, и превратился в мощный инструмент, для движка один из самых важных модулей.
имхо.
avatar
«Браво, браво!
Ну что вы, право?
Конечно, похвала — не отрава...» (с) Смехов, «Алибаба и 40 разбойников»
:)))
Какое там «с остервенением»? Пишется в свободное от работы и многих прочих дел время. По работе сейчас совсем не кодирую, так чтоб совсем не потерять квалификацию и не навыки вот нашел себе занятие. :)
avatar
Ну что вы, что вы :)
Просто обычно на себя примеряешь, я вот в свободное от работы время сначала в носу обковыряюсь, а уж потом если время останеться…
Так что я даже немного завидую трудоспособности и силе воли, правда работа у меня немного другая :)

оффтоп, извините
avatar
Большое спасибо! Работа гигантская!
очень приятно, что учли и мои пожелания

а по айпи нельзя сортировать?
avatar
А по айпи тоже надо? Можно, конечно…
avatar
да, было бы удобно
avatar
Отличное дополнение
Только вот не многофункциональная админка как на других движках.
Пожелание для след. версии — Редактирование меню TOP
;)
avatar
А сделать редактирование меню и станет такая же многофункциональная, как на других движках? :)

Как еще не хватает функций для «многофункциональности»?
avatar
елы-палы, хак сделать что ли для исправления опечаток?
avatar
редактирование постов — не помешало бы))
avatar
Из админки можно редактировать и посты и комменты
avatar
Я имел ввиду хак на фронт.
avatar
Как видно в моем посте я предложил то что хотел бы видеть:) я не утверждаю что это нужно реализовать ;)

Как еще не хватает функций для «многофункциональности»?

Под многофункциональностью я подразумевал полное управление из админки всеми частями сайта :D было бы неплохо
avatar
а я все про пользователей))
небольшие доработки:
1. Добавить еще сортировку по айпи регистрации, по айпи, и по полю забанен или нет.
2. Добавить еще один столбец в списке пользователей, где можно поставить галочки, а внизу выбрать что сделать: забанить или удалить несколько пользователей сразу
3. Еще вот что. Я например нашла пользователей по дате регистрации, он мне выдал список, я нахожусь на 6 странице этого списка, захожу в профиль одного из юзеров, нажимаю удалить, и возвращаюсь на 1 страницу списка. Т.е. нужно чтобы запоминал где я находилась и возвращал меня туда же.
avatar
По поводу айпи — ясно. А вот удалять/банить пачками — это круто! Мне казалось, это штучные операции, где не только лишний клик погоды не делает, но и лишний контроль с подтверждением только на пользу. Но раз так надо…

А по поводу страниц — да, верное замечание
avatar
А вот удалять/банить пачками — это круто!


))))
лишний контроль тоже нужно оставить, отдельно
т.е. оставить все как есть для тех случаев, когда операции разовые
но и добавить возможность массового удаления/бана
чтобы 2 варианта было — когда как удобно
avatar
посмотри в сторону yoast.com/articles/sortable-table/#example как пример (хотя есть и лучше)
avatar
Была мысля сделать яваскриптовую сортировку, но одно дело, когда таблица целиком, другое — разбита по страницам. Тут уже аяксом работать надо. Не сильно сложно, конечно, но пока ломает. А учитывая, что Макс какие-то навороты для работы с аяксом замутил, тем более стоит погодить :)
avatar
Есть готовые библиотеки с аяксом… просто поищи, я видел где-то.
avatar
А по поводу Макса и наворотов с аяксом — не думаю что будет таблицы сортировки хД
avatar
Avadim большое спасибо за обновление!!!
avatar
при открытии сайт.ру/admin/users/profile/имяюзера/blogs/ отображаются блоги пользователя, но при нажатии на ссылку блога выкидывает на сайт.ру/blog//

И все равно модуль класный!
avatar
Да, тоже заметил такое, но это только при нажатии на ссылку персонального блога, т.е. блог имени username. При нажатии на остальные открытые блоги переходит по ссылке нормально
http://site.ru/blog/blogname/
Модуль отличный!
avatar
а бан пользователей работает?
вот забанила один из аккаунтов, захожу под этим ником и свободно перемещаюсь по сайту, могу голосовать за топики, комментарии, могу нажать ссылку Добавить топик
думала может нужно подождать пока кеш обновится, подождала — все то же
проверьте, пожалуйста, у всех так или у меня косяк
avatar
а юзер помечен, как забаненый?
avatar
в админке — да
avatar
Вот под Оперой и Сафари проверил — работает
avatar
Вот только что проверил у себя под Firefox 3, IE 7 — работает.
И, кстати, это в старой версии не сразу бан срабатывал, а в этой — бан включается сразу же. Любой клик забаненного юзера — и он должен получить фигу
avatar
странно, я проверяла в Firefox 3, google chrome, IE 8
может мы какой-то файл не обновили? какой это может быть?
avatar
Если бан проходит, ошибок явных не видно, юзер показывается, как забаненный, то это, скорее всего, HookAdmin.class.php.

Последний билд, который я заливал сюда в раздел Модули был 54 (т.е. упакованный файл должен быть admin_1.1.54.zip)
avatar
такой и брали

вот еще момент: мы не делали install.php, а залили содержимое папки Install и в админке нажали «Обновить»
может из-за этого?
avatar
как бэ да…
avatar
Да вряд ли. Инсталлятор, в общем-то, просто раскидывает файлы по нужным папкам. Что-то даже ума не приложу, что эе это может быть…

А забаненный юзер, случаем, не в списке админов?
avatar
Поставил себе админку!
Очень удобно! И ставится быстро! главное сразу права 777 раскиать и все!
С Админкой система восринимается по новому =)
avatar
Пришло в голову предложение.
Вынести в конфигурацию формулы расчёта рейтинга: classes/modules/rating/Rating.class.php

Имхо будет очень полезно. Тут главное — юзабилити, ибо формулы достаточно сложно оформлять. Хотя для начала можно и отдельными инпутами сформировать. Если есть желание — покажу как наглядно это сделать и в плане дизайна и в плане программинга.
avatar
Да, мне кажется это будет нелишним. А админка класс, намного удобнее, те же конфиги править.
avatar
Согласен — полезно будет. Еще полезней было бы, если б не просто коэффициенты можно было бы менять, а вообще чтоб модуль расчет свой можно было подключать. Понятно, что «грязным хаком» и щас это делается на «раз», но правильней было б предусмотреть некий стандартный механизм.
avatar
+ мне не нравится оформление редактирования конфига. Если интересует моё представление — пиши в личку.
avatar
Интересует, конечно. Отписал
avatar
Мб создание нового пользователя в админке? Хоть и тупо, но некоторым нужно.
avatar
Просто констатация факта. Установлена админ-панель 1.1, юзер банится, но при этом продолжает голосовать и писать комментарии. Проект стартап, нагадить он успел порядком, я как администратор ничего не смог противопоставить.
Что хотелось бы, пофиксить баг с голосованием и комментами от забаненного юзера. Добавить возможность удаления юзера. Возможность блокировки по емэйлу и IP.
avatar
Удаление юзера есть (см. п.4 топика).
Бан по IP тоже есть. Делать бан по мылу смысла нет, если будет работать нормально бан по логину. А работает он или нет, прошу проверить в новом билде: livestreet.ru/blog/addons/2016.html
avatar
А можно со временем написать ФАК по «вживлению» админки на свой дизайн.
Т.е. какие переменные юзать, чтобы например, когда мы сидим под админом, возле ника пользователя были иконки «забанить» «посмотреть историю пользователя», а возле комментов — соответственно «редактировать».
avatar
Делаем новый обработчик в экшене модуля, либо в include/ajax, потом в шаблоне ссылаемся на необходимую ссылку.
Только зарегистрированные и авторизованные пользователи могут оставлять комментарии.