2014-01-10 06:00:25 +02:00
|
|
|
|
{**
|
|
|
|
|
* Базовая форма создания топика
|
|
|
|
|
*
|
|
|
|
|
* @styles css/topic.css
|
|
|
|
|
*}
|
|
|
|
|
|
|
|
|
|
{extends file='layouts/layout.base.tpl'}
|
|
|
|
|
|
|
|
|
|
{block name='layout_options'}
|
|
|
|
|
{if $sEvent == 'add'}
|
|
|
|
|
{$sNav = 'create'}
|
|
|
|
|
{/if}
|
|
|
|
|
{/block}
|
|
|
|
|
|
|
|
|
|
{block name='layout_page_title'}
|
|
|
|
|
{if $sEvent == 'add'}
|
|
|
|
|
{$aLang.topic_create}
|
|
|
|
|
{else}
|
|
|
|
|
{$aLang.topic_topic_edit}
|
|
|
|
|
{/if}
|
|
|
|
|
{/block}
|
|
|
|
|
|
|
|
|
|
{block name='layout_content'}
|
|
|
|
|
{block name='add_topic_options'}{/block}
|
|
|
|
|
|
|
|
|
|
{* Подключение редактора *}
|
2014-01-11 18:27:27 +02:00
|
|
|
|
{$sMediaTargetId=''}
|
|
|
|
|
{if $oTopicEdit}
|
|
|
|
|
{$sMediaTargetId=$oTopicEdit->getId()}
|
|
|
|
|
{/if}
|
|
|
|
|
{include file='forms/editor.init.tpl' sMediaTargetType='topic' sMediaTargetId=$sMediaTargetId}
|
2014-01-10 06:00:25 +02:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
{hook run="add_topic_begin"}
|
|
|
|
|
{block name='add_topic_header_after'}{/block}
|
|
|
|
|
|
|
|
|
|
|
2014-01-11 18:27:27 +02:00
|
|
|
|
<form action="" method="POST" enctype="multipart/form-data" id="form-topic-add" class="js-form-validate" onsubmit="return false;">
|
2014-01-10 06:00:25 +02:00
|
|
|
|
{hook run="form_add_topic_begin"}
|
|
|
|
|
{block name='add_topic_form_begin'}{/block}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
{* Выбор блога *}
|
|
|
|
|
{$aBlogs[] = [
|
|
|
|
|
'value' => 0,
|
|
|
|
|
'text' => $aLang.topic_create_blog_personal
|
|
|
|
|
]}
|
|
|
|
|
|
|
|
|
|
{foreach $aBlogsAllow as $oBlog}
|
|
|
|
|
{$aBlogs[] = [
|
|
|
|
|
'value' => $oBlog->getId(),
|
|
|
|
|
'text' => $oBlog->getTitle()
|
|
|
|
|
]}
|
|
|
|
|
{/foreach}
|
|
|
|
|
|
2014-01-11 18:27:27 +02:00
|
|
|
|
{include file='forms/fields/form.field.select.tpl'
|
|
|
|
|
sFieldName = 'topic[blog_id]'
|
|
|
|
|
sFieldLabel = $aLang.topic_create_blog
|
|
|
|
|
sFieldNote = $aLang.topic_create_blog_notice
|
|
|
|
|
sFieldClasses = 'width-full js-topic-add-title'
|
|
|
|
|
aFieldItems = $aBlogs
|
|
|
|
|
sFieldSelectedValue = {($oTopicEdit) ? $oTopicEdit->getBlogId() : '' }}
|
2014-01-10 06:00:25 +02:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
{* Заголовок топика *}
|
2014-01-11 18:27:27 +02:00
|
|
|
|
{include file='forms/fields/form.field.text.tpl'
|
|
|
|
|
sFieldName = 'topic[topic_title]'
|
2014-01-13 13:07:18 +02:00
|
|
|
|
sFieldValue = {(($oTopicEdit) ? $oTopicEdit->getTitle() : '')|escape:'html' }
|
2014-01-11 18:27:27 +02:00
|
|
|
|
sFieldEntityField = 'topic_title'
|
|
|
|
|
sFieldEntity = 'ModuleTopic_EntityTopic'
|
|
|
|
|
sFieldNote = $aLang.topic_create_title_notice
|
|
|
|
|
sFieldLabel = $aLang.topic_create_title}
|
2014-01-10 06:00:25 +02:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
{block name='add_topic_form_text_before'}{/block}
|
|
|
|
|
|
|
|
|
|
|
2014-03-27 11:51:48 +02:00
|
|
|
|
|
2014-01-10 06:00:25 +02:00
|
|
|
|
{* Текст топика *}
|
2014-03-27 11:51:48 +02:00
|
|
|
|
{if $oTopicType->getParam('allow_text')}
|
|
|
|
|
{include file='forms/fields/form.field.textarea.tpl'
|
|
|
|
|
sFieldName = 'topic[topic_text_source]'
|
|
|
|
|
sFieldValue = {(($oTopicEdit) ? $oTopicEdit->getTextSource() : '')|escape:'html' }
|
|
|
|
|
sFieldRules = 'required="true" rangelength="[2,'|cat:$oConfig->Get('module.topic.max_length')|cat:']"'
|
|
|
|
|
sFieldLabel = $aLang.topic_create_text
|
|
|
|
|
sFieldClasses = 'width-full js-editor'}
|
|
|
|
|
|
|
|
|
|
{* Если визуальный редактор отключен выводим справку по разметке для обычного редактора *}
|
|
|
|
|
{if ! $oConfig->GetValue('view.wysiwyg')}
|
|
|
|
|
{include file='forms/editor.help.tpl' sTagsTargetId='topic_text'}
|
|
|
|
|
{/if}
|
2014-01-10 06:00:25 +02:00
|
|
|
|
{/if}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
{block name='add_topic_form_text_after'}{/block}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
{* Теги *}
|
2014-03-27 11:51:48 +02:00
|
|
|
|
{if $oTopicType->getParam('allow_tags')}
|
|
|
|
|
{include file='forms/fields/form.field.text.tpl'
|
|
|
|
|
sFieldName = 'topic[topic_tags]'
|
|
|
|
|
sFieldValue = {(($oTopicEdit) ? $oTopicEdit->getTags() : '')|escape:'html' }
|
|
|
|
|
sFieldRules = 'required="true" rangetags="[1,15]"'
|
|
|
|
|
sFieldNote = $aLang.topic_create_tags_notice
|
|
|
|
|
sFieldLabel = $aLang.topic_create_tags
|
|
|
|
|
sFieldClasses = 'width-full autocomplete-tags-sep'}
|
|
|
|
|
{/if}
|
2014-01-11 18:27:27 +02:00
|
|
|
|
|
|
|
|
|
{* Показывает дополнительные поля *}
|
|
|
|
|
{$aBlockParams = []}
|
2014-02-04 15:48:53 +02:00
|
|
|
|
{$aBlockParams.target_type = 'topic_'|cat:$oTopicType->getCode()}
|
2014-01-11 18:27:27 +02:00
|
|
|
|
{if $oTopicEdit}
|
|
|
|
|
{$aBlockParams.target_id = $oTopicEdit->getId()}
|
|
|
|
|
{/if}
|
2014-01-10 06:00:25 +02:00
|
|
|
|
|
2014-01-11 18:27:27 +02:00
|
|
|
|
{insert name="block" block="propertyUpdate" params=$aBlockParams}
|
2014-01-10 06:00:25 +02:00
|
|
|
|
|
2014-02-04 15:48:53 +02:00
|
|
|
|
{* Вставка опросов *}
|
|
|
|
|
{if $oTopicType->getParam('allow_poll')}
|
|
|
|
|
{include file='polls/poll.form.inject.tpl'
|
|
|
|
|
sTargetType = 'topic'
|
|
|
|
|
sTargetId = {($oTopicEdit) ? $oTopicEdit->getId() : '' }
|
|
|
|
|
}
|
|
|
|
|
{/if}
|
|
|
|
|
|
2014-01-10 06:00:25 +02:00
|
|
|
|
{* Запретить комментарии *}
|
2014-01-11 18:27:27 +02:00
|
|
|
|
{include file='forms/fields/form.field.checkbox.tpl'
|
|
|
|
|
sFieldName = 'topic[topic_forbid_comment]'
|
|
|
|
|
bFieldChecked = {($oTopicEdit && $oTopicEdit->getForbidComment()) ? true : false }
|
|
|
|
|
sFieldNote = $aLang.topic_create_forbid_comment_notice
|
|
|
|
|
sFieldLabel = $aLang.topic_create_forbid_comment}
|
2014-01-10 06:00:25 +02:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
{* Принудительный вывод топиков на главную (доступно только админам) *}
|
|
|
|
|
{if $oUserCurrent->isAdministrator()}
|
2014-01-11 18:27:27 +02:00
|
|
|
|
{include file='forms/fields/form.field.checkbox.tpl'
|
|
|
|
|
sFieldName = 'topic[topic_publish_index]'
|
|
|
|
|
bFieldChecked = {($oTopicEdit && $oTopicEdit->getPublishIndex()) ? true : false }
|
|
|
|
|
sFieldNote = $aLang.topic_create_publish_index_notice
|
|
|
|
|
sFieldLabel = $aLang.topic_create_publish_index}
|
2014-01-10 06:00:25 +02:00
|
|
|
|
{/if}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
{block name='add_topic_form_end'}{/block}
|
|
|
|
|
{hook run="form_add_topic_end"}
|
|
|
|
|
|
|
|
|
|
|
2014-01-11 18:27:27 +02:00
|
|
|
|
{* Скрытые поля *}
|
2014-02-04 15:48:53 +02:00
|
|
|
|
{include file='forms/fields/form.field.hidden.tpl' sFieldName='topic_type' sFieldValue=$oTopicType->getCode()}
|
2014-01-11 18:27:27 +02:00
|
|
|
|
|
|
|
|
|
|
2014-01-10 06:00:25 +02:00
|
|
|
|
{* Кнопки *}
|
|
|
|
|
{if $sEvent == 'add' or ($oTopicEdit and $oTopicEdit->getPublish() == 0)}
|
|
|
|
|
{$sSubmitInputText = $aLang.topic_create_submit_publish}
|
|
|
|
|
{else}
|
|
|
|
|
{$sSubmitInputText = $aLang.topic_create_submit_update}
|
|
|
|
|
{/if}
|
|
|
|
|
|
2014-01-11 18:27:27 +02:00
|
|
|
|
{if $oTopicEdit}
|
|
|
|
|
{include file="forms/fields/form.field.hidden.tpl" sFieldName='topic[id]' sFieldValue=$oTopicEdit->getId()}
|
|
|
|
|
{/if}
|
|
|
|
|
|
|
|
|
|
{include file='forms/fields/form.field.button.tpl'
|
|
|
|
|
sFieldId = {($oTopicEdit) ? 'submit-edit-topic-publish' : 'submit-add-topic-publish' }
|
|
|
|
|
sFieldStyle = 'primary'
|
|
|
|
|
sFieldClasses = 'fl-r'
|
|
|
|
|
sFieldText = $sSubmitInputText}
|
|
|
|
|
{include file='forms/fields/form.field.button.tpl' sFieldType='button' sFieldClasses='js-topic-preview-text-button' sFieldText=$aLang.topic_create_submit_preview}
|
|
|
|
|
{include file='forms/fields/form.field.button.tpl' sFieldId={($oTopicEdit) ? 'submit-edit-topic-save' : 'submit-add-topic-save' } sFieldText=$aLang.topic_create_submit_save}
|
|
|
|
|
</form>
|
2014-01-10 06:00:25 +02:00
|
|
|
|
|
|
|
|
|
|
2014-01-11 18:27:27 +02:00
|
|
|
|
{* Блок с превью текста *}
|
|
|
|
|
<div class="topic-preview" style="display: none;" id="topic-text-preview"></div>
|
2014-01-10 06:00:25 +02:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
{block name='add_topic_end'}{/block}
|
|
|
|
|
{hook run="add_topic_end"}
|
|
|
|
|
{/block}
|