avatar
+19.03
38.572

Андрей

Создан и доступен трекер проекта. Теперь, те, кому интересно, могут отследить ход исправления ошибок здесь или посмотреть roadmap до версии 2 здесь
Спасибо, буду смотреть.
Проблема со сворачивающимся меню в мобильной версии была решена ошибочно (сейчас правится). Из-за этого закралась ненужная ошибка. Для решения уделите из фала common/templates/skin/charming/css/charming.css в самом его конце объявление стиля #area-form-file-img_file {left: -400px !important;}
Убрал требование капчи. Теперь можно войти на сайт сразу после заполнения формы регистрации.
Я с телефона захожу — тоже все нормально. Я сделал сайт несколько часов назад и, возможно, на все еще знают о его существовании (в Волгограде сайт доступен)
Сбросить кэш у браузера, открыть страничку в другом браузере?
Нет, не должно быть. Сейчас сайт доступен. Топиков будет больше, со временем накидаю.
Посмотреть модификацию в работе можно здесь gladcode.ru
Посмотреть можно здесь: gladcode.ru
Да, но есть особенность, логины пользователей скрыты, но они есть и формируются от хэша почты, поэтому в интернет магазине нужно будет обработать все операции с логинами, начиная с фронта (писем, сообщений и т.д) и заканчивая логикой проведения платежа.
Других помех вроде нет.
Спасибо
Да, вы правы. В коде тоже нужно закрывать. И не только для защиты от злоумышленников, а что бы снять лишнюю нагрузку тоже (немножко подробнее ответил выше). Знание движка здесь, действительно, лишним не будет.
Языковой файл один здесь common/templates/language/ru.php, и в каждом плагине тоже common/plugins/[ИМЯПЛАГИНА]/templates/language/russian.php.

Т.е. просто комментим все эти кнопки, верно?
По хорошему нужно в экшенах убирать всю подготовку данных для шаблона. Например, если на странице профиля /example.com/profile/[USERNAME]/ выводится список созданных пользователем блогов, то в шаблоне actions/ActionProfile/info.tpl если убрать строки
{if $aBlogsOwner}
    <li>
        <span>{$aLang.profile_blogs_self}:</span>
        <strong>
            {foreach $aBlogsOwner as $oBlog}
                <a href="{$oBlog->getUrlFull()}">
                    {$oBlog->getTitle()|escape:'html'}
                </a>{if !$oBlog@last}, {/if}
            {/foreach}
        </strong>
    </li>
{/if}

Тогда список блогов, которые создал пользователь перестанут выводится. Но, несмотря на то, что блог всего один, для каждого пользователя будет выполнятся поиск созданных им блогов — а это один лишний SQL-запрос (обращение к кэшу). Что бы этого избежать нужно в файле common/classes/actions/ActionProfile.class.php убрать сам запрос на получение данных.
И так для каждого случая вывода данных о блогах в шаблоне.
Я все правильно понял.
Если брать чистую установку, то после удаления персонального блога пользователи, да, не смогут вообще никуда писать. Но, как я указал выше — "2. Администратором сайта создаем новый блог стандартным способом", — то есть, вы создадите новый блог, и он будет единственным на сайте, даже персональных не будет — вы их удалили. Поэтому, пользователи смогут публиковаться только в этот, созданный вами, единственный блог. О чем вы и спрашивали.

Плюс, я забыл, а marques нет, что нужно запретить пользователям создавать свои блоги.

Ну а далее, как я и пояснил раньше, нужно убрать из шаблона всё, что касается упоминаний других блогов.
1. Как лучше всего отключить вообще все блоги, кроме одного. Т.е., нужна «пикабу-основа» (или другого аналогичного проекта — не сочтите за рекламу) — все пишут в один блог, рейтинговое попадает на отедльную (главную страницу). Ну вот, я так понимаю, mylig.ru/, тут это было реализовано.
Для Alto версии 1 задача решается в несколько шагов:
   1. Нужно в админке: «Админка-Настройки-Типы блогов» отключить использование персональных блогов. после этого пользователи вообще не смогут никуда писать.

   2. Администратором сайта создаем новый блог стандартным способом.
   3. Настраиваем виджеты. Из файла common/config/widgets.php в файл app/config/widgets.php переносим те, которые нужны (не нужны блоги).
   4. Из шаблона выпиливаем все упоминания блогов. Например на странице создания топика выпадающий список с блогами меняем на скрытый input… и так далее по шаблону

2. Как лучше всего наладить более плотную работу с тегами — возможность подписаться, либо наоборот — кинуть тег в «игнор»?
Средств из коробки для «расширенной» работы с тегами нет, скорее всего придется дописывать этот функционал.

Ну и третий, пожалуй, самый главный вопрос — что лучше — залить текущую актуальную версию на сервер и начать потихоньку ковырять, допиливая под свои нужды и добавляя контент, либо все же дождаться релиза?
Я думаю, лучше сразу новую версию. На нее переходить все равно прийдется — мое мнение.
Пока мысли кончились (.
Про соглашения согласен. Если определятся с правилами кодинга, то на всех используемых языках, а не только на PHP.

Нужно ли это оформлять, как jQuery-плагины?
Я считаю, что нужно — это, во первых, понизит «уровень вхождения» в код новых разработчиков. Во вторых, однообразит подход к разработке. В третьих, упростит читаемость кода…

Модульность js-скриптов
Я очень не уверен, что можно получить какие-то плюсы за счет манипуляций с кэшем и наборами скриптов. Модульный подход я рассматриваю как инструмент развития, который позволит построить более сложную систему в будущем.
Посмотрите в phpMyAdmin в таблице prefix_blog ограничения рейтинга в поле blog_limit_rating_topic. В персональном блоге должно стоять недостижимо низкое число, по умолчанию -1000. У вас, скорее всего, ограничение ==0. Исправьте и все заработает.
Даже не знаю в чем дело (. Попробую воспроизвести ситуацию у себя. Посмотрите в админке в списке блогов есть его персональный блог?
Согласен с предложением использовать триггеры, но есть еще особенности.
1. Сейчас весь js-функционал заключен в объект ls, который построен не по архитектуре плагинов jQuery. (Очень хороший топик по теме)

2. Объекты, входящие в состав частично не соответствуют jslint. Не обязательно, конечно, ему следовать, но все же… (http://habrahabr.ru/post/74419/)

3. Все объекты «ls.» подгружается полностью, и все его методы доступны на любой странице даже если они не используются. Я понимаю, что модульность в js это отдельная тема, но подгружать все скрипты, даже если они не нужны, тоже не стоит, imho. (Как вариант requirejs.ru/)

4. Нет системы используемых в коде js идентификаторов и классов кода html шаблонов.

Думаю, что стоит обратить внимание не только на триггеры, но и на общую архитектуру js-кода в Alto.