Ровно год назад я зарегистрировал доменное имя bezumkin.ru. Тогда особых планов не было, регистрировал «про запас».
Развивать сайт я начал где-то полгода назад, обкатывая на нём собственные разработки. Не сказать, чтобы проект превратился во что-то большое, но вот показатели:
400 зарегистрированных пользователей.
450 уникальных ip в сутки.
2000 — 2500 просмотров в сутки.
Около 300 статей и вопросов, еще около 50 страниц документации, в основном по miniShop.
Для персонального блога на пустом месте, считаю, неплохо.
Отличная новость, друзья. Дедушки Морозы из Simple Dream согласны профинансировать разработку miniShop 2.0 и предлагают собрать приблизительный список изменений.
Напоминаю, что разработка первого miniShop была начата ровно год назад, когда я знал и умел гораздо меньше, чем сегодня. Отсюда в нём куча E_NOTICE, странные решения с таблицами, неправильные названия объектов и еще много всякого.
Несмотря на эти недостатки, компонент завоевал определённое количество поклонников, которые скачали его без малого 5000 раз.
Теперь настало время переписать его по всем правилам. Оставить и улучшить нужное, выкинуть лишнее. Сделать его быстрее и удобней.
Сегодня задали вопрос: -а как выводить тикеты определённого пользователя, типа как персональный блог?
Ну, тут минимум 2 варианта:
1. Создать отдельный раздел для юзера.
2. Выделять тикеты юзера из общей кучи.
Первый вариант отметаем сразу по ряду причин:
— Нужно дать право юзеру на создание разделов.
— Нужно проверять, сколько он их создал (должно же быть не больше одного).
— Нужно назначать политики доступа так, чтобы туда мог написать только юзер.
— Куча ненужных никому разделов в админке
— Еще всякие непредвиденные сложности.
Если вы будуте создавать каждому юзеру блог самостоятельно в админке руками — еще куда ни шло. Но это не удобно + если юзеров много, то админка разрастётся до неприличных размеров.
Поэтому, мы пойдем вторым путём — выводом тикетов юзера по уникальному url. Я предлагаю site_name/section_name/user_name/.
Реализовал специальный тег spoiler, чтобы прятать куски текста. Работает при помощи новой возможности Jevix — cfgSetAutoPregReplace. Небольшая демонстрация
Круто, да?
Не знаю, все ли в курсе эпической битвы добра и зла в community.modx-cms.ru, но вот вам ссылка.
Если вкратце, один человек начал резко менять порядки под себя, за что получил заслуженную порцию недовольства. А потом это переросло в полноценное столкновение неравных сил — одного Д`Артатьяна против группы нормальных людей.
Итак, группу набрали, заявки больше не принимаются.
Стартуем в понедельник на секретном сайте modcoach.info. На выходных мы регистрируем всех учеников, делаем им тестовые сайты и присылаем эти данные на почту.
При прошлом обновлении все было круто, за исключением того, что Quip повел себя под нагрузкой как последняя скотина. Даже кэширование не спасло!
Загружать страницу 2-3 секунды нифига не интересно, поэтому я зарылся в код на двое суток и дописал комментарии до самостоятельного состояния.
Постоянно задают вопросы «а как при сохранении чистить кэш не всего сайта, а только обновляемого ресурса?».
А вот так:
Ну что, факир протрезвел и вопросы переехали на компонент Tickets, версии 0.1.1-beta.
Секрет в том, что если работать на копии сайта — то никуда не спешишь, и все отлично выходит.
Сегодня была произведена попытка переехать на новую версию Tickets, однако, факир пыл пьян — и фокус не удался.
Я был повержен коварностью системы прав на своем же сайте! Конечно, на чистом и свежем — все ок, а тут я что-то намутил.
Лучшая стадия любопытного разработчика — это когда он понимает, что работает с продуктами людей, которые умнее. И только умный разработчик достигает этой стадии неразочаровавшись.
Переведу: только умный человек понимает, что если он работает с чужими продуктами, то наверняка их сделали люди, умнее его. Иначе, было бы наоборот.
Вообще, америку и ее праздники не люблю, но это случай особый. Со времен Grim Fandango и Кошмар перед рождеством питаю некоторую симпатию к хэллоуину.