- ucoz перестал отслеживать вызов кода
$AJAX_JS$
. Поэтому изящный метод подстановки скриптов там, где это нужно, больше не работает. Подстановка происходит автоматически перед тегом</head>
, либо, если его нет - перед</title>
. Здравствуйте старые костыли!
Добавлен хэлпер для отрисовки "расовых" кнопок, предполагается использовать его для страниц с юнитами и магией, как для D2 так и для D3.
Добавлена задача для автоматического обновления шаблонов! Пока поддерживаются только контентные страницы.
Проба пера в рефакторинге контента, исправлена страница с лидерами проклятых (D2).
Соответственно добавлены хэлперы для генерации табличек со статами, теперь они будут унифицированы.
Теперь есть возможность программно получать доступ к сайту из под определённого
пользователя (HTTPEngine.with_auth
). Это позволит написать кучу полезных
rake-задач, для автоматического обновления шаблонов, контентных страниц, и т. д.
Теперь можно отправлять сообщения в миничат в PDA-режиме.
Подробнее в самом шаблоне.
-
Добавлен хэлпер
u_default
, который позволяет указывать значение по умолчанию для какого-либо юкозового кода (аналог выраженияvariable || 'default'
в js и ruby)Пример:
u_default '$AVATAR_URL$', '/.s/img/icon/profile.png'
Результат:
<?if($AVATAR_URL$)?>$AVATAR_URL$<?else?>/.s/img/icon/profile.png<?endif?>
-
А хэлперу
rating_stars
теперь можно передавать аргументы так же, как и оригинальному коду$RSTARS$
.
Убрал старый костыльный метод вывода аватарок в миничате.
Оказывается когда-то была добавлена поддержка аватарок "из коробки"
(код $AVATAR_URL$
).
Для класса UcozConditionStatement
добавлена поддержка выражения elsif
.
- Полностью переделан миничат: наконец-то мы избавились от фрейма!
В связи с этим также:
- Добавлен хэлпер
minichat_form
, который из кучи мусора вырезает только форму для миничата. - Добавлен хэлпер
autoupdate_selectbox
, для нормальной привязки скриптов. - Добавлен хэлпер
mc_message_field
, для нормальной подстановкиplaceholder
иrequired
.
- Добавлен хэлпер
- Используем гем Autoprefixer.
- Добавлен хелпер
rank_name
, выводящий span-тег для названия ранга пользователя. Используется пока только на странице пользователя и сообщениях на форуме.
-
К ссылкам подключения стилей и скриптов теперь прибавляется восьмизначный хэш, чтобы избежать проблем с кэшированными файлами при обновлении.
Чтобы собрать архив с правильными ссылками нужно перед этим скомпилировать стили и скрипты. -
Добавлен хэлпер
female
, призванный улучшить читабельность кода и уменьшить количество магических чисел.female # => "$USER_GENDER_ID$=2" female('$_GENDER_ID$') # => "$_GENDER_ID$=2"
- Добавлена rake-задача для проверки FTP соединения (
ftp:test
). - И ещё одна, для удобной загрузки css и js файлов (
ftp:load_assets
).
- Добавлен хелпер
rating_stars
.
Он используется для вывода и настройки кода$RSTARS$
.
- Добавлена rake-задача для автоматической загрузки архива с шаблонами на сервер.
Реквизиты FTP доступа настраиваются в конфиге:config/ftp.yml
.
- Добавлена rake-задача для автоматического обновления vendor-файлов.
Список этих файлов настраивается в конфиге:config/vendor_files.yml
.
- Теперь
UcozConditionStatement
можно использовать для рендера в строку.
Может быть полезно при объявлении переменных (пример).
- Комментарии через ВКонтакте API больше не нужны.
http://blog.ucoz.ru/blog/2014-06-16-329
- Добавлен хелпер
remove_admin_bar!
.
Он используется в шаблонах, где$ADMIN_BAR$
не должен быть показан.
Это bang-метод, поэтому его результат можно не выводить (т.е. использовать<% %>
вместо<%= %>
).
- Добавлен файл
config/deprecated_codes.yml
, куда будут добавляться коды, которые нежелательно использовать.
Использование таких кодов провоцирует warn-лог, в котором написано что лучше использовать взамен.
- Добавлена задача для генерации страниц (конечный HTML). Пока поддерживается только подстановка кодов, в планах условные операторы и инъекции.
- Добавлен config файл для приложения:
/config/application.rb
Пока там только один параметр,home_url
, но в дальнейшем будут появляться ещё.
- Добавлен хелпер
render
для вставки повторяющегося кода из партиалов.
- Добавлен хелпер
ucoz_code
(c
) для вставки юкоз-кодов в шаблоны. - Добавлен хелпер
ucoz_injection
(i
) для инъекций серверных вызовов. - Добавлена поддержка однострочных условных операторов (
inline_if[not]
).
- Да здравствуют тесты!
- Используем гем uglifier, для минификации JS.
- Добавлен специальный класс для юкозовских условных операторов.
- Для использования этого класса объявлены хелперы
ucoz_if
иucoz_ifnot
.
Теперь:-
условия записываются в виде erb-инъекций (IDE теперь не будет ругаться):
<% ucoz_if(group_is('$GROUP_ID$', :admin)) { %> admin code <% }.else { %> dummy code <% }.endif! %>
-
для блока с условием определены простейшие валидации, как то невозможность указать несколько
else
илиendif
; -
если в шаблоне обнаружены незакрытые
if
(ifnot
) теги, произойдёт ошибка, и шаблон не соберётся.
-
- Добавлена папка для хелперов, теперь их будет много.
- Добавлено два хелпера для условных операторов:
code_is
иgroup_is
.
- Используем SASS для стилей!
- Добавлен хелпер
vk_like_btn
. Так как имеется возможность поделиться понравившимся материалом с помощью этой кнопки, кнопку share выпилил. - Добавлен хелпер для генерации блока ВКомментариев:
vk_comments_box
. Имеет один аргумент -UID
.
Добавлен хелпер home_url
.
Также добавлен хелпер для перенаправления, для использования нужно указать:
@params[:redirect][:path] = '/dir/6'
Тогда в layout автоматически добавится следующее:
<meta http-equiv="refresh" content="0; url=#{@params[:redirect][:path]}">
<script type="text/javascript">location.replace("#{home_url}#{@params[:redirect][:path]}");</script>
Поддержка ERB, использование хелперов, а также layouts в шаблонах (во избежание дублирования кода).
Добавлены rake
задачи для:
- генерации архива с шаблонами;
- генерации assets-файлов.
- Добавлен новый глобальный блок:
$GLOBAL_AJAXJS$
. Он содержит в себе стандартные подключаемые (css, js) файлы. При сохранении система прячет код$AJAX_JS$
, следует учитывать это при необходимости редактирования шаблона.
-
Для указания пользовательской фракции использовать класс
fraction-name$_MSN$
, для отображения знамени:
А для вывода текстового описания ранга:
```html
<span class="rank-$_RANK$-$_MSN$ <?if($_GENDER_ID$='2')?>rank-$_RANK$-$_MSN$-f<?endif?>"></span>
- Для всех prompt-ссылок добавлен единый класс
prompt-link
, который активирует нужный js-скрипт. Для его использования нужно заполнить аттрибутыtitle
иhref
.
-
Переход на блочную верстку.
-
Вынесение части кода в подключаемые css и js файлы.
-
Срараемся соблюдать идеалогию "ненавязчивого" javascript.
-
Вместо
$PROFILE_URL$
, генерирующего ужас:
Tester
используется класс `profile-link` и любая валидная ссылка на профиль
(`/index/8-$USER_ID$` или `/index/8-0-$USERNAME$`) в атрибуте `href`.