You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

343 lines
16 KiB
HTML

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

<extend name="Public/base" />
<!-- 子导航 -->
<block name="body">
<script type="text/javascript" src="__STATIC__/uploadify/jquery.uploadify.min.js"></script>
<style>
.tabcon1711 select[disabled]{background:#e7e7e7;}
</style>
<div class="cf main-place top_nav_list navtab_list">
{:W('Index/CateGroupTree',array('cate_id'=>I('cate_id')))}
<h3 class="page_title">编辑文章</h3>
<p class="description_text"></p>
</div>
<!-- 标签页导航 -->
<div class="tab-wrap">
<div class="tab_nav stabnav17112 jstabnav ">
<ul>
<volist name=":parse_config_attr($model['field_group'])" id="group">
<li data-tab="tab{$key}" <eq name="key" value="1">class="current"</eq>><a href="javascript:void(0);">{$group}</a></li>
</volist>
</ul></div>
<div class="tab-content tabcon1711 tabcon17112">
<!-- 表单 -->
<form id="form" action="{:U('update')}" method="post" class="form-horizontal form_info_ml">
<!-- 基础文档模型 -->
<volist name=":parse_config_attr($model['field_group'])" id="group">
<div id="tab{$key}" class="tab-pane <eq name="key" value="1">in</eq> tab{$key}">
<table border="0" cellspacing="0" cellpadding="0" style="width:100%;">
<tbody>
<volist name="fields[$key]" id="field">
<if condition="$field['is_show'] == 1 || $field['is_show'] == 3">
<tr class="<eq name='field.type' value='picture'>picbox<else /><eq name='field.type' value='file'>picbox</eq></eq>">
<if condition="$field['title'] eq '标题' || $field['title'] eq '文章内容' || $field['title'] eq '封面' || $field['title'] eq '封面图2'"><td class="l noticeinfo"><i class="mustmark" style="margin-left:-7px">*</i><if condition="$field['title'] eq '封面' ">封面图1<else />{$field['title']}</if></td>
<else/><td class="l noticeinfo">{$field['title']}</td></if>
<td class="r table_radio">
<switch name="field.type">
<case value="num">
<input type="text" class="text input-mid" name="{$field.name}" value="{$data[$field['name']]}">
</case>
<case value="string">
<input type="text" class="text input-large" name="{$field.name}" value="{$data[$field['name']]}">
</case>
<case value="textarea">
<span class="form_textarea"><textarea name="{$field.name}">{$data[$field['name']]}</textarea>
</span>
</case>
<case value="date">
<div class="form_input"><input type="text" name="{$field.name}" class="text date" value="{$data[$field['name']]|date='Y-m-d',###}" placeholder="请选择日期" />
</div>
</case>
<case value="datetime">
<div class="form_input"><input type="text" name="{$field.name}" class="text time" value="{:set_show_time($data[$field['name']],'','other')}" placeholder="请选择时间" />
</div>
</case>
<case value="bool">
<span class="form_select"><select name="{$field.name}">
<volist name=":parse_field_attr($field['extra'])" id="vo">
<option value="{$key}" <eq name="data[$field['name']]" value="$key">selected</eq>>{$vo}</option>
</volist>
</select></span>
</case>
<case value="select">
<if condition="$field.name eq game_id">
<span class="form_select"><select name="{$field.name}" disabled readonly>
<option value="" <if condition="$data[$field['name']] eq ''"> selected="selected"</if>>选择所属游戏</option>
<!-- <volist name=":get_list_data('selfbuilt')" id="vo">
<option value="{$vo.id}" <eq name="data[$field['name']]" value="$vo['id']">selected</eq>>{:get_gamename($vo['gameid'])}</option>
</volist> -->
<volist name=":get_game_list()" id="vo">
<option value="{$vo.id}" <eq name="data[$field['name']]" value="$vo['id']">selected</eq> >{$vo.game_name}</option>
</volist>
</select></span>
<else/>
<span class="form_select"><select name="{$field.name}">
<volist name=":parse_field_attr($field['extra'])" id="vo">
<option value="{$key}" <eq name="data[$field['name']]" value="$key">selected</eq>>{$vo}</option>
</volist>
</select></span>
</if>
</case>
<case value="radio">
<span class="form_radio">
<volist name=":parse_field_attr($field['extra'])" id="vo">
<label>
<input type="radio" value="{$key}" name="{$field.name}" <eq name="data[$field['name']]" value="$key">checked="checked"</eq>> {$vo}
</label>
</volist></span>
</case>
<case value="checkbox">
<span class="form_checkbox">
<volist name=":parse_field_attr($field['extra'])" id="vo">
<label>
<input type="checkbox" value="{$key}" name="{$field.name}[]" <if condition="check_document_position($data[$field['name']],$key)">checked="checked"</if>> {$vo}
</label>
</volist>
</div>
</case>
<case value="editor">
<span class="form_textarea">
<textarea name="{$field.name}">{$data[$field['name']]}</textarea>
{:hook('adminArticleEdit', array('name'=>$field['name'],'value'=>$data[$field['name']]))}
</span>
</case>
<case value="picture"><div class="form_main form_picture">
<div class="controls">
<input type="file" id="upload_picture_{$field.name}">
<input type="hidden" name="{$field.name}" id="cover_id_{$field.name}" value="{$data[$field['name']]}"/>
<div class="upload-img-box">
<notempty name="data[$field['name']]">
<div class="upload-pre-item">
<span class="placeholder-graphic placeholder-graphic_{:strtolower($field['name'])}"><img src="{$data[$field['name']]|get_cover='path'}"/></span>
</div>
</notempty>
</div>
</div>
<script type="text/javascript">
//上传图片
/* 初始化上传插件 */
$("#upload_picture_{$field.name}").uploadify({
"height" : 30,
"swf" : "__STATIC__/uploadify/uploadify.swf",
"fileObjName" : "download",
"buttonText" : "上传图片",
"uploader" : "{:U('File/uploadPicture',array('session_id'=>session_id(),'flag'=>true))}",
"width" : 120,
'removeTimeout' : 1,
'fileTypeExts' : '*.jpg; *.jpeg; *.png; *.gif;',
"onUploadSuccess" : uploadPicture{$field.name},
'onFallback' : function() {
alert('未检测到兼容版本的Flash.');
}
});
function uploadPicture{$field.name}(file, data){
var data = $.parseJSON(data);
var src = '';
if(data.status){
$("#cover_id_{$field.name}").val(data.id);
src = data.url || '__ROOT__' + data.path
$("#cover_id_{$field.name}").parent().find('.upload-img-box').html(
'<div class="upload-pre-item"><span class="placeholder-graphic placeholder-graphic_{:strtolower($field['name'])}"><img src="' + src + '"/></span></div>'
);
} else {
updateAlert(data.info);
setTimeout(function(){
$('#top-alert').find('button').click();
$(that).removeClass('disabled').prop('disabled',false);
},1500);
}
}
</script></div>
</case>
<case value="file">
<div class="form_main form_file">
<div class="controls">
<input type="file" id="upload_file_{$field.name}">
<input type="hidden" name="{$field.name}" value="{:think_encrypt(json_encode(get_table_field($data[$field['name']],'id','','File')))}"/>
<div class="upload-img-box">
<present name="data[$field['name']]">
<div class="upload-pre-file"><span class="upload_icon_all"></span>{$data[$field['name']]|get_table_field=###,'id','name','File'}</div>
</present>
</div>
</div>
<script type="text/javascript">
//上传图片
/* 初始化上传插件 */
$("#upload_file_{$field.name}").uploadify({
"height" : 30,
"swf" : "__STATIC__/uploadify/uploadify.swf",
"fileObjName" : "download",
"buttonText" : "上传附件",
"uploader" : "{:U('File/upload',array('session_id'=>session_id(),'flag'=>true))}",
"width" : 120,
'removeTimeout' : 1,
"onUploadSuccess" : uploadFile{$field.name},
'onFallback' : function() {
alert('未检测到兼容版本的Flash.');
}
});
function uploadFile{$field.name}(file, data){
var data = $.parseJSON(data);
if(data.status){
var name = "{$field.name}";
$("input[name="+name+"]").val(data.data);
$("input[name="+name+"]").parent().find('.upload-img-box').html(
"<div class=\"upload-pre-file\"><span class=\"upload_icon_all\"></span>" + data.info + "</div>"
);
} else {
updateAlert(data.info);
setTimeout(function(){
$('#top-alert').find('button').click();
$(that).removeClass('disabled').prop('disabled',false);
},1500);
}
}
</script></div>
</case>
<default/>
<input type="text" class="text input-large" name="{$field.name}" value="{$data[$field['name']]}">
</switch>
<span class="notice-text"><notempty name="field['remark']">{$field['remark']}</notempty></span>
</td>
</tr>
</if>
</volist>
</tbody>
</table>
</div>
</volist>
<div class="form-item cf">
<button class="submit_btn ajax-post mlspacing" id="submit" type="submit" target-form="form-horizontal">确 定</button>
<a style="display: inline-table" class="submit_btn" href="{$Think.cookie.__forward__}">返 回</a>
<if condition="C('OPEN_DRAFTBOX') and (ACTION_NAME eq 'add' or $data['status'] eq 3)">
<button class="submit_btn" url="{:U('article/autoSave')}" target-form="form-horizontal" id="autoSave">
存草稿
</button>
</if>
<input type="hidden" name="id" value="{$data.id|default=''}"/>
<input type="hidden" name="pid" value="{$data.pid|default=''}"/>
<input type="hidden" name="model_id" value="{$data.model_id|default=''}"/>
<input type="hidden" name="group_id" value="{$data.group_id|default=''}"/>
<input type="hidden" name="category_id" value="{$data.category_id|default=''}">
</div>
</form>
</div>
</div>
<div class="common_settings">
<span class="plus_icon"><span><img src="__IMG__/zwmimages/icon_jia.png"></span></span>
<form class="addShortcutIcon">
<input type="hidden" name="title" value="{$Think.const.M_TITLE}">
<input type="hidden" name="url" value="{$Think.const.M_URL}">
</form>
<a class="ajax-post add-butn <notempty name='commonset'>addSIsetted</notempty>" href="javascript:;" target-form="addShortcutIcon" url="{:U('Think/addShortcutIcon')}"><img src="__IMG__/zwmimages/icon_jia.png"><span><notempty name='Think.const.COMMONSET'>已添加<else />添加至常用设置</notempty></span></a>
</div>
</block>
<block name="script">
<link href="__STATIC__/datetimepicker/css/datetimepicker.css" rel="stylesheet" type="text/css">
<php>if(C('COLOR_STYLE')=='blue_color') echo '<link href="__STATIC__/datetimepicker/css/datetimepicker_blue.css" rel="stylesheet" type="text/css">';</php>
<link href="__STATIC__/datetimepicker/css/dropdown.css" rel="stylesheet" type="text/css">
<script type="text/javascript" src="__STATIC__/datetimepicker/js/bootstrap-datetimepicker.min.js"></script>
<script type="text/javascript" src="__STATIC__/datetimepicker/js/locales/bootstrap-datetimepicker.zh-CN.js" charset="UTF-8"></script>
<script type="text/javascript">
Think.setValue("type", {$data.type|default='""'});
Think.setValue("display", {$data.display|default=0});
highlight_subnav('{:get_highlight_subnav($_GET["cate_id"],"Article/index","cate_id")}');
$('#submit').click(function(){
$('#form').submit();
});
$(function(){
$('.date').datetimepicker({
format: 'yyyy-mm-dd',
language:"zh-CN",
minView:2,
autoclose:true
});
$('.time').datetimepicker({
language:"zh-CN",
hour: 13,
minute: 15
});
showTab();
<if condition="C('OPEN_DRAFTBOX') and (ACTION_NAME eq 'add' or $data['status'] eq 3)">
//保存草稿
var interval;
$('#autoSave').click(function(){
var target_form = $(this).attr('target-form');
var target = $(this).attr('url')
var form = $('.'+target_form);
var query = form.serialize();
var that = this;
$(that).addClass('disabled').attr('autocomplete','off').prop('disabled',true);
$.post(target,query).success(function(data){
if (data.status==1) {
updateAlert(data.info ,'alert-success');
$('input[name=id]').val(data.data.id);
}else{
updateAlert(data.info);
}
setTimeout(function(){
$('#top-alert').find('button').click();
$(that).removeClass('disabled').prop('disabled',false);
},1500);
})
//重新开始定时器
clearInterval(interval);
autoSaveDraft();
return false;
});
//Ctrl+S保存草稿
$('body').keydown(function(e){
if(e.ctrlKey && e.which == 83){
$('#autoSave').click();
return false;
}
});
//每隔一段时间保存草稿
function autoSaveDraft(){
interval = setInterval(function(){
//只有基础信息填写了,才会触发
var title = $('input[name=title]').val();
var name = $('input[name=name]').val();
var des = $('textarea[name=description]').val();
if(title != '' || name != '' || des != ''){
$('#autoSave').click();
}
}, 1000*parseInt({:C('DRAFT_AOTOSAVE_INTERVAL')}));
}
autoSaveDraft();
</if>
});
</script>
</block>