mirror of
https://github.com/Oreolek/ifhub.club.git
synced 2024-06-01 07:38:11 +03:00
Мелкие исправления
This commit is contained in:
parent
e3fe15e197
commit
7d2b9ab7d0
|
@ -1,17 +1,50 @@
|
|||
var ls = ls || {};
|
||||
|
||||
/**
|
||||
* JS функционал для блогов
|
||||
*/
|
||||
* Блоги
|
||||
*/
|
||||
|
||||
var ls = ls || {};
|
||||
|
||||
ls.blog = (function ($) {
|
||||
|
||||
"use strict";
|
||||
|
||||
/**
|
||||
* Дефолтные опции
|
||||
*/
|
||||
var defaults = {
|
||||
// Роутеры
|
||||
oRouters: {
|
||||
|
||||
},
|
||||
|
||||
// Селекторы
|
||||
selectors: {
|
||||
addBlogSelectType: '.js-blog-add-type'
|
||||
}
|
||||
};
|
||||
|
||||
/**
|
||||
* Инициализация
|
||||
*
|
||||
* @param {Object} options Опции
|
||||
*/
|
||||
this.init = function(options) {
|
||||
var self = this;
|
||||
|
||||
this.options = $.extend({}, defaults, options);
|
||||
|
||||
// Подгрузка информации о выбранном типе блога при создании блога
|
||||
$(this.options.selectors.addBlogSelectType).on('change', function (e) {
|
||||
ls.blog.loadInfoType($(this).val());
|
||||
});
|
||||
};
|
||||
|
||||
/**
|
||||
* Вступить или покинуть блог
|
||||
*/
|
||||
this.toggleJoin = function(obj, idBlog){
|
||||
var url = aRouter['blog']+'ajaxblogjoin/';
|
||||
var params = {idBlog: idBlog};
|
||||
|
||||
|
||||
ls.hook.marker('toggleJoinBefore');
|
||||
ls.ajax(url,params,function(result) {
|
||||
if (result.bStateError) {
|
||||
|
@ -19,15 +52,15 @@ ls.blog = (function ($) {
|
|||
} else {
|
||||
obj = $(obj);
|
||||
ls.msg.notice(null, result.sMsg);
|
||||
|
||||
|
||||
var text = result.bState
|
||||
? ls.lang.get('blog_leave')
|
||||
: ls.lang.get('blog_join')
|
||||
;
|
||||
|
||||
|
||||
obj.empty().text(text);
|
||||
obj.toggleClass('active');
|
||||
|
||||
|
||||
$('#blog_user_count_'+idBlog).text(result.iCountUser);
|
||||
ls.hook.run('ls_blog_toggle_join_after',[idBlog,result],obj);
|
||||
}
|
||||
|
@ -41,10 +74,10 @@ ls.blog = (function ($) {
|
|||
var sUsers = $('#blog_admin_user_add').val();
|
||||
if(!sUsers) return false;
|
||||
$('#blog_admin_user_add').val('');
|
||||
|
||||
|
||||
var url = aRouter['blog']+'ajaxaddbloginvite/';
|
||||
var params = {users: sUsers, idBlog: idBlog};
|
||||
|
||||
|
||||
ls.hook.marker('addInviteBefore');
|
||||
ls.ajax(url, params, function(result) {
|
||||
if (result.bStateError) {
|
||||
|
@ -66,7 +99,7 @@ ls.blog = (function ($) {
|
|||
ls.hook.run('ls_blog_add_invite_after',[idBlog,sUsers,result]);
|
||||
}
|
||||
});
|
||||
|
||||
|
||||
return false;
|
||||
};
|
||||
|
||||
|
@ -76,7 +109,7 @@ ls.blog = (function ($) {
|
|||
this.repeatInvite = function(idUser,idBlog) {
|
||||
var url = aRouter['blog']+'ajaxrebloginvite/';
|
||||
var params = {idUser: idUser, idBlog: idBlog};
|
||||
|
||||
|
||||
ls.hook.marker('repeatInviteBefore');
|
||||
ls.ajax(url, params, function(result){
|
||||
if (result.bStateError) {
|
||||
|
@ -86,7 +119,7 @@ ls.blog = (function ($) {
|
|||
ls.hook.run('ls_blog_repeat_invite_after',[idUser,idBlog,result]);
|
||||
}
|
||||
});
|
||||
|
||||
|
||||
return false;
|
||||
};
|
||||
|
||||
|
@ -111,26 +144,28 @@ ls.blog = (function ($) {
|
|||
|
||||
return false;
|
||||
};
|
||||
|
||||
|
||||
/**
|
||||
* Отображение информации о блоге
|
||||
*/
|
||||
this.loadInfo = function(idBlog) {
|
||||
var url = aRouter['blog']+'ajaxbloginfo/';
|
||||
var params = {idBlog: idBlog};
|
||||
|
||||
var block = $('#block_blog_info');
|
||||
|
||||
block.empty().addClass('loading');
|
||||
|
||||
ls.hook.marker('loadInfoBefore');
|
||||
ls.ajax(url, params, function(result){
|
||||
if (result.bStateError) {
|
||||
ls.msg.error(null, result.sMsg);
|
||||
} else {
|
||||
var block = $('#block_blog_info');
|
||||
block.html(result.sText);
|
||||
block.removeClass('loading').html(result.sText);
|
||||
ls.hook.run('ls_blog_load_info_after',[idBlog,result],block);
|
||||
}
|
||||
});
|
||||
};
|
||||
|
||||
|
||||
/**
|
||||
* Отображение информации о типе блога
|
||||
*/
|
||||
|
@ -167,13 +202,13 @@ ls.blog = (function ($) {
|
|||
$('#blog-more-content').slideToggle();
|
||||
var more = $('#blog-more');
|
||||
more.toggleClass('expanded');
|
||||
|
||||
|
||||
if(more.hasClass('expanded')) {
|
||||
more.html(ls.lang.get('blog_fold_info'));
|
||||
} else {
|
||||
more.html(ls.lang.get('blog_expand_info'));
|
||||
}
|
||||
|
||||
|
||||
return false;
|
||||
};
|
||||
|
||||
|
|
|
@ -21,7 +21,8 @@ ls.topic = (function ($) {
|
|||
previewImage: '.js-topic-preview-image',
|
||||
previewImageLoader: '.js-topic-preview-loader',
|
||||
previewTopicTextButton: '.js-topic-preview-text-button',
|
||||
previewTopicTextHideButton: '.js-topic-preview-text-hide-button'
|
||||
previewTopicTextHideButton: '.js-topic-preview-text-hide-button',
|
||||
addTopicTitle: '.js-topic-add-title'
|
||||
}
|
||||
};
|
||||
|
||||
|
@ -40,7 +41,7 @@ ls.topic = (function ($) {
|
|||
$(this).imagesLoaded(function () {
|
||||
var $this = $(this),
|
||||
$preview = $this.closest(self.options.selectors.previewImageLoader).removeClass('loading');
|
||||
|
||||
|
||||
$this.height() < $preview.height() && $this.css('top', ($preview.height() - $this.height()) / 2 );
|
||||
});
|
||||
});
|
||||
|
@ -50,10 +51,15 @@ ls.topic = (function ($) {
|
|||
self.showPreviewText('form-topic-add', 'topic-text-preview');
|
||||
});
|
||||
|
||||
// Закрытие превью
|
||||
// Закрытие превью текста
|
||||
$(document).on('click', this.options.selectors.previewTopicTextHideButton, function (e) {
|
||||
self.hidePreviewText();
|
||||
});
|
||||
|
||||
// Подгрузка информации о выбранном блоге при создании топика
|
||||
$(this.options.selectors.addTopicTitle).on('change', function (e) {
|
||||
ls.blog.loadInfo($(this).val());
|
||||
});
|
||||
};
|
||||
|
||||
/**
|
||||
|
|
|
@ -31,18 +31,18 @@
|
|||
|
||||
|
||||
{* Название блога *}
|
||||
{include file='forms/form.field.text.tpl'
|
||||
sFieldName = 'blog_title'
|
||||
{include file='forms/form.field.text.tpl'
|
||||
sFieldName = 'blog_title'
|
||||
sFieldRules = 'required="true" rangelength="[2,200]"'
|
||||
sFieldNote = $aLang.blog_create_title_notice
|
||||
sFieldNote = $aLang.blog_create_title_notice
|
||||
sFieldLabel = $aLang.blog_create_title}
|
||||
|
||||
{* URL блога *}
|
||||
{include file='forms/form.field.text.tpl'
|
||||
sFieldName = 'blog_url'
|
||||
{include file='forms/form.field.text.tpl'
|
||||
sFieldName = 'blog_url'
|
||||
sFieldRules = 'required="true" type="alphanum" rangelength="[2,50]"'
|
||||
bFieldIsDisabled = $_aRequest.blog_id && ! $oUserCurrent->isAdministrator()
|
||||
sFieldNote = $aLang.blog_create_url_notice
|
||||
sFieldNote = $aLang.blog_create_url_notice
|
||||
sFieldLabel = $aLang.blog_create_url}
|
||||
|
||||
|
||||
|
@ -59,7 +59,7 @@
|
|||
]}
|
||||
{/foreach}
|
||||
|
||||
{include file='forms/form.field.select.tpl'
|
||||
{include file='forms/form.field.select.tpl'
|
||||
sFieldName = 'blog_category'
|
||||
sFieldLabel = $aLang.blog_create_category
|
||||
sFieldNote = $aLang.blog_create_category_notice
|
||||
|
@ -75,19 +75,19 @@
|
|||
[ 'value' => 'close', 'text' => $aLang.blog_create_type_close ]
|
||||
]}
|
||||
|
||||
{include file='forms/form.field.select.tpl'
|
||||
{include file='forms/form.field.select.tpl'
|
||||
sFieldName = 'blog_type'
|
||||
sFieldLabel = $aLang.blog_create_type
|
||||
sFieldNote = $aLang.blog_create_type_open_notice
|
||||
sFieldClasses = 'width-200 js-blog-add-type'
|
||||
aFieldItems = $aBlogsType
|
||||
sFieldSelectedValue = $_aRequest.blog_type} {* TODO: Подсказка при смене типа *}
|
||||
sFieldSelectedValue = $_aRequest.blog_type}
|
||||
|
||||
|
||||
{* Описание блога *}
|
||||
{include file='forms/form.field.textarea.tpl'
|
||||
{include file='forms/form.field.textarea.tpl'
|
||||
sFieldName = 'blog_description'
|
||||
sFieldRules = 'required="true" rangelength="[10,3000]"'
|
||||
sFieldRules = 'required="true" rangelength="[10,3000]"'
|
||||
sFieldLabel = $aLang.blog_create_description
|
||||
sFieldClasses = 'width-full js-editor'}
|
||||
|
||||
|
@ -96,9 +96,9 @@
|
|||
{include file='forms/editor.help.tpl' sTagsTargetId='blog_description'}
|
||||
{/if}
|
||||
|
||||
|
||||
|
||||
{* Ограничение по рейтингу *}
|
||||
{include file='forms/form.field.text.tpl'
|
||||
{include file='forms/form.field.text.tpl'
|
||||
sFieldName = 'blog_limit_rating_topic'
|
||||
sFieldRules = 'required="true" type="number"'
|
||||
sFieldValue = '0'
|
||||
|
@ -116,13 +116,13 @@
|
|||
{include file='forms/form.field.checkbox.tpl' sFieldName='avatar_delete' bFieldNoMargin=true sFieldValue='on' sFieldLabel=$aLang.blog_create_avatar_delete}
|
||||
{/if}
|
||||
|
||||
{include file='forms/form.field.file.tpl'
|
||||
{include file='forms/form.field.file.tpl'
|
||||
sFieldName = 'avatar'
|
||||
sFieldLabel = $aLang.blog_create_avatar}
|
||||
|
||||
|
||||
{hook run='form_add_blog_end'}
|
||||
|
||||
|
||||
|
||||
{* Скрытые поля *}
|
||||
{include file='forms/form.field.hidden.security_key.tpl'}
|
||||
|
|
|
@ -168,6 +168,12 @@ jQuery(document).ready(function($){
|
|||
ls.pagination.init();
|
||||
|
||||
|
||||
/**
|
||||
* Blog
|
||||
*/
|
||||
ls.blog.init();
|
||||
|
||||
|
||||
/**
|
||||
* Photoset
|
||||
*/
|
||||
|
|
|
@ -49,20 +49,20 @@
|
|||
]}
|
||||
{/foreach}
|
||||
|
||||
{include file='forms/form.field.select.tpl'
|
||||
{include file='forms/form.field.select.tpl'
|
||||
sFieldName = 'blog_id'
|
||||
sFieldLabel = $aLang.topic_create_blog
|
||||
sFieldNote = $aLang.topic_create_blog_notice
|
||||
sFieldClasses = 'width-full js-topic-add-title'
|
||||
sFieldClasses = 'width-full js-topic-add-title'
|
||||
aFieldItems = $aBlogs
|
||||
sFieldSelectedValue = $_aRequest.blog_id} {* TODO: Подгрузка инфы при смене блога *}
|
||||
sFieldSelectedValue = $_aRequest.blog_id}
|
||||
|
||||
|
||||
{* Заголовок топика *}
|
||||
{include file='forms/form.field.text.tpl'
|
||||
sFieldName = 'topic_title'
|
||||
sFieldRules = 'required="true" rangelength="[2,200]"'
|
||||
sFieldNote = $aLang.topic_create_title_notice
|
||||
{include file='forms/form.field.text.tpl'
|
||||
sFieldName = 'topic_title'
|
||||
sFieldRules = 'required="true" rangelength="[2,200]"'
|
||||
sFieldNote = $aLang.topic_create_title_notice
|
||||
sFieldLabel = $aLang.topic_create_title}
|
||||
|
||||
|
||||
|
@ -71,10 +71,10 @@
|
|||
|
||||
{* Текст топика *}
|
||||
{* TODO: Max length for poll and link *}
|
||||
{include file='forms/form.field.textarea.tpl'
|
||||
{include file='forms/form.field.textarea.tpl'
|
||||
sFieldName = 'topic_text'
|
||||
sFieldRules = 'required="true" rangelength="[2,'|cat:$oConfig->Get('module.topic.max_length')|cat:']"'
|
||||
sFieldLabel = $aLang.topic_create_text
|
||||
sFieldRules = 'required="true" rangelength="[2,'|cat:$oConfig->Get('module.topic.max_length')|cat:']"'
|
||||
sFieldLabel = $aLang.topic_create_text
|
||||
sFieldClasses = 'width-full js-editor'}
|
||||
|
||||
{* Если визуальный редактор отключен выводим справку по разметке для обычного редактора *}
|
||||
|
@ -84,30 +84,30 @@
|
|||
|
||||
|
||||
{block name='add_topic_form_text_after'}{/block}
|
||||
|
||||
|
||||
|
||||
{* Теги *}
|
||||
{* TODO: Валидатор кол-ва тегов *}
|
||||
{include file='forms/form.field.text.tpl'
|
||||
{include file='forms/form.field.text.tpl'
|
||||
sFieldName = 'topic_tags'
|
||||
sFieldRules = 'required="true"'
|
||||
sFieldNote = $aLang.topic_create_tags_notice
|
||||
sFieldLabel = $aLang.topic_create_tags
|
||||
sFieldNote = $aLang.topic_create_tags_notice
|
||||
sFieldLabel = $aLang.topic_create_tags
|
||||
sFieldClasses = 'width-full autocomplete-tags-sep'}
|
||||
|
||||
|
||||
{* Запретить комментарии *}
|
||||
{include file='forms/form.field.checkbox.tpl'
|
||||
{include file='forms/form.field.checkbox.tpl'
|
||||
sFieldName = 'topic_forbid_comment'
|
||||
sFieldNote = $aLang.topic_create_forbid_comment_notice
|
||||
sFieldNote = $aLang.topic_create_forbid_comment_notice
|
||||
sFieldLabel = $aLang.topic_create_forbid_comment}
|
||||
|
||||
|
||||
{* Принудительный вывод топиков на главную (доступно только админам) *}
|
||||
{if $oUserCurrent->isAdministrator()}
|
||||
{include file='forms/form.field.checkbox.tpl'
|
||||
{include file='forms/form.field.checkbox.tpl'
|
||||
sFieldName = 'topic_publish_index'
|
||||
sFieldNote = $aLang.topic_create_publish_index_notice
|
||||
sFieldNote = $aLang.topic_create_publish_index_notice
|
||||
sFieldLabel = $aLang.topic_create_publish_index}
|
||||
{/if}
|
||||
|
||||
|
@ -119,7 +119,7 @@
|
|||
{* Скрытые поля *}
|
||||
{include file='forms/form.field.hidden.tpl' sFieldName='topic_type' value=$sTopicType}
|
||||
{include file='forms/form.field.hidden.security_key.tpl'}
|
||||
|
||||
|
||||
|
||||
{* Кнопки *}
|
||||
{if $sEvent == 'add' or ($oTopicEdit and $oTopicEdit->getPublish() == 0)}
|
||||
|
@ -128,9 +128,9 @@
|
|||
{$sSubmitInputText = $aLang.topic_create_submit_update}
|
||||
{/if}
|
||||
|
||||
{include file='forms/form.field.button.tpl'
|
||||
sFieldName = 'submit_topic_publish'
|
||||
sFieldStyle = 'primary'
|
||||
{include file='forms/form.field.button.tpl'
|
||||
sFieldName = 'submit_topic_publish'
|
||||
sFieldStyle = 'primary'
|
||||
sFieldClasses = 'fl-r'
|
||||
sFieldText = $sSubmitInputText}
|
||||
{include file='forms/form.field.button.tpl' sFieldType='button' sFieldClasses='js-topic-preview-text-button' sFieldText=$aLang.topic_create_submit_preview}
|
||||
|
|
|
@ -28,21 +28,21 @@
|
|||
<div class="photoset-upload">
|
||||
<header>
|
||||
<h2>{$aLang.topic_photoset_upload_title}</h2>
|
||||
|
||||
|
||||
<div class="note">
|
||||
{$aLang.topic_photoset_upload_rules|ls_lang:"SIZE%%`$oConfig->get('module.topic.photoset.photo_max_size')`":"COUNT%%`$oConfig->get('module.topic.photoset.count_photos_max')`"}
|
||||
</div>
|
||||
|
||||
<input type="hidden" name="topic_main_photo" id="topic_main_photo" value="{$_aRequest.topic_main_photo}" />
|
||||
</header>
|
||||
|
||||
|
||||
<ul class="photoset-upload-images" id="swfu_images">
|
||||
{if count($aPhotos)}
|
||||
{foreach $aPhotos as $oPhoto}
|
||||
{if $_aRequest.topic_main_photo && $_aRequest.topic_main_photo == $oPhoto->getId()}
|
||||
{$bIsMainPhoto = true}
|
||||
{/if}
|
||||
|
||||
|
||||
<li id="photo_{$oPhoto->getId()}" class="photoset-upload-images-item {if $bIsMainPhoto}marked-as-preview{/if}">
|
||||
<img src="{$oPhoto->getWebPath('100crop')}" alt="image" />
|
||||
<textarea onBlur="ls.photoset.setPreviewDescription({$oPhoto->getId()}, this.value)" class="width-full">{$oPhoto->getDescription()}</textarea><br />
|
||||
|
@ -55,12 +55,12 @@
|
|||
{/if}
|
||||
</span>
|
||||
</li>
|
||||
|
||||
|
||||
{$bIsMainPhoto = false}
|
||||
{/foreach}
|
||||
{/if}
|
||||
</ul>
|
||||
|
||||
|
||||
<footer>
|
||||
<a href="#" data-type="modal-toggle" data-option-target="modal-photoset-upload" class="link-dotted" id="photoset-start-upload">{$aLang.topic_photoset_upload_choose}</a>
|
||||
</footer>
|
||||
|
|
Loading…
Reference in a new issue