Skip to content
GitLab
Menu
Projects
Groups
Snippets
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Menu
Open sidebar
jinli gu
MCMS
Commits
da21280b
Commit
da21280b
authored
Jan 15, 2019
by
ms-dev
Browse files
配置文件更新
parent
33bb27de
Changes
67
Hide whitespace changes
Inline
Side-by-side
src/main/webapp/WEB-INF/manager/rf.html
0 → 100644
View file @
da21280b
<!DOCTYPE html>
<html
lang=
"en"
>
<head>
<META
HTTP-EQUIV=
"Refresh"
CONTENT=
"120"
>
</head>
<body>
***>
<
***
</
body
>
</html>
\ No newline at end of file
src/main/webapp/WEB-INF/manager/role/role.ftl
0 → 100644
View file @
da21280b
<@
ms
.html5
>
<@ms.nav title="角色设置" back=true>
<@ms.saveButton id="save"/>
<@ms.resetButton id="reset" value="重置" onclick=" " />
</@ms.nav>
<@ms.panel>
<@ms.form isvalidation=true name="saveRoleFrom" style="width: 55%" action="">
<@ms.text name="roleName" label="角色名称:" title="角色名称" maxlength="30" validation=
{
"required"
:
"true"
,
"data-bv-notempty-message"
:
"请填写标题"
}
/>
<#if flag == false><input type="hidden" name="roleId" value="$
{
role
.roleId
}
"/><input type="hidden" id="oldRoleName" name="oldRoleName" value="$
{
role
.roleName
}
"/></#if>
<!-- 树形模块菜单开始 -->
<#if listModel?has_content>
<@ms.tree label="模块列表:" treeId="tree" json="$
{
listModel
?
default
(
''
)}
" jsonId="modelId" jsonPid="modelModelId" jsonName="modelTitle" showIcon="true" expandAll="true" ischeck="true"/>
<#else>
<@ms.treeInput treeId="errorTree" buttonText="暂无数据"/>
</#if>
<!-- 树形模块菜单结束 -->
</@ms.form>
<#if !listModel?has_content>
<@ms.nodata/>
</#if>
</@ms.panel>
</@
ms
.html5
>
<script type="text/javascript">
<#if flag == true>
$("input[name='roleName']").attr("placeholder","请输入角色名称")
<#else>
$("input[name='roleName']").val("$
{
role
.roleName
}
");
</#if>
$(function ()
{
//前端验证角色名称是否存在
$
(
"input[name='roleName']"
)
.blur
(
function
(){
var
oldRoleName
=
$
(
"#oldRoleName"
)
.length
;
var
roleName
=
$
(
this
)
.val
()
;
if
((
oldRoleName
!=
0
&&
$
(
"#oldRoleName"
)
.val
()
!=
roleName
)
||
(
oldRoleName
==
0
)){
$
.ajax
({
type
:
"post"
,
dataType
:
"json"
,
url
:
"${managerPath}/role/judgeRoleNameExist.do"
,
data
:
"roleName="
+
roleName
,
success
:
function
(
msg
){
if
(
msg
){
<@
ms
.notify
msg
=
"该角色名称已存在,请再次输入"
type
=
"warning"
/>
$
(
"input[name='roleName']"
)
.val
(
null
)
;
}
}
})
;
}
})
;
//点击重置按钮取消树形菜单的选中
$
(
"#reset"
)
.click
(
function
(){
zTreeObjtree
.checkAllNodes
(
false
)
;
})
;
//更新角色时勾选出该角色所拥有的模块
var
nodes
=
zTreeObjtree
.transformToArray
(
zTreeObjtree
.getNodes
())
;
<#
if
listSelModel
?
has_content
>
<#
list
listSelModel
as
selModel
>
for
(
i
=
0
;
i
<
nodes
.length
;
i
++
){
if
(
nodes
[
i
]
.modelId
==$
{
selModel
.modelId
}){
zTreeObjtree
.checkNode
(
nodes
[
i
]
,
true
,
false
)
;
}
}
</#
list
>
</#
if
>
//声明需要获取的树形菜单的每一个子节点的
id
var
modelId
=
new
A
rray
()
;
//保存按钮点击提交表单
$
(
"#save"
)
.click
(
function
(){
if
(
$
(
"#saveRoleFrom"
)
.data
(
'
bootstrapValidator
'
)
.validate
()
.isValid
()){
$
(
this
)
.attr
(
"disabled"
,
"true"
)
;
var
nodes
=
zTreeObjtree
.getCheckedNodes
(
true
)
;
for
(
var
i
=
0
;
i
<
nodes
.length
;
i
++
){
modelId
[
i
]
=
nodes
[
i
]
.modelId
;
}
if
(
modelId
==
""
||
modelId
==
null
||
modelId
==
undefined
){
<@
ms
.notify
msg
=
"请选择功能模块!"
type
=
"warning"
/>
$
(
"#save"
)
.removeAttr
(
"disabled"
)
;
return
;
}
var
URL
=
"${managerPath}/role/<#if flag == true>save<#else>update</#if>.do"
;
$
.ajax
({
type
:
"post"
,
dataType
:
"json"
,
url
:
URL
,
data
:
$
(
"#saveRoleFrom"
)
.serialize
()
+
"&modelId="
+
modelId
,
beforeSend
:
function
(){
$
(
"#save"
)
.attr
(
"disabled"
,
true
)
;
},
success
:
function
(
msg
){
if
(
msg
.result
){
<#
if
flag
==
true
>
<@
ms
.notify
msg
=
"保存成功"
type
=
"success"
/>
<#
else
>
<@
ms
.notify
msg
=
"更新成功"
type
=
"warning"
/>
</#
if
>
location
.href
=
"${managerPath}/role/queryList.do"
;
}
else
{
$
(
'
.ms-notifications
'
)
.offset
({
top
:
43
})
.notify
({
type
:
'
warning
'
,
message
:
{
text
:
msg
.resultMsg
}
})
.show
()
;
}
$
(
"#save"
)
.removeAttr
(
"disabled"
)
;
},
error
:
function
(){
<@
ms
.notify
msg
=
"操作失败"
type
=
"danger"
/>
$
(
"#save"
)
.removeAttr
(
"disabled"
)
;
location
.href
=
"${managerPath}/role/queryList.do"
;
}
})
;
}
})
;
}
);
</script>
src/main/webapp/WEB-INF/manager/role/role_list.ftl
0 → 100644
View file @
da21280b
<!
DOCTYPE
html>
<
html
lang="en">
<
head
>
<#include "$
{
managerViewPath
}
/include/meta.ftl"/>
<#include "$
{
managerViewPath
}
/include/macro.ftl"/>
<
style
>
</
style
>
</
head
>
<
body
>
<@ms.content>
<@ms.contentBody>
<@ms.contentNav title="角色管理">
<@ms.panelNavBtnGroup>
<@ms.panelNavBtnAdd id="totalAdd"/>
<@ms.panelNavBtnDel id="totalDelete"/>
</@ms.panelNavBtnGroup>
</@ms.contentNav>
<@ms.contentPanel>
<@ms.table head=['<input type="checkbox" id="allCheck"/>,10','编号,50','角色名称']>
<#if listRole?has_content>
<#list listRole as role>
<tr>
<td>
<#if role.roleId!=managerRoleId>
<input type="checkbox" name="ids" value="$
{
role
.roleId
?
c
?
default
(
0
)}
">
</#if>
</td>
<input type="hidden" name="$
{
role
.roleId
?
c
?
default
(
0
)}
" />
<td>$
{
role
.roleId
?
c
?
default
(
0
)}
</td>
<td><a href="$
{
managerPath
}
/role/$
{
role
.roleId
}
/edit.do" target="_self">$
{
role
.roleName
?
default
(
"匿名"
)}
</a></td>
</tr>
</#list>
<#else>
<tr>
<td colspan="4" class="text-center">
<a href="$
{
managerPath
}
/role/add.do"><@ms.nodata/></a>
</td>
</tr>
</#if>
</@ms.table>
<@showPage page=page/>
</@ms.contentPanel>
</@ms.contentBody>
<!--=================模态框部分开始=================-->
<!--删除的模态框开始-->
<@ms.modal modalName="delete" title="删除角色">
<@ms.modalBody>
确定删除该角色吗?
</@ms.modalBody>
<@ms.modalButton>
<@ms.button value="返回" id="closeDelete"/>
<@ms.button class="btn btn-danger" id="deleteButton" value="删除"/>
</@ms.modalButton>
</@ms.modal>
<!--删除的模态框结束-->
<!--多选删除的模态框开始-->
<@ms.modal modalName="deleteAll" title="多选删除角色">
<@ms.modalBody>
您确定删除您所勾选的角色么?
</@ms.modalBody>
<@ms.modalButton>
<@ms.button value="返回" id="closeAllDelete"/>
<@ms.button class="btn btn-danger" id="deleteButtonAll" value="删除"/>
</@ms.modalButton>
</@ms.modal>
<!--多选删除的模态框结束-->
<!--=================模态框部分结束=================-->
</@ms.content>
<script type="text/javascript">
//触发模态框事件或者是模态框中按钮的事件
$(function()
{
var
roleId
;
//删除角色
$
(
".del-btn"
)
.on
(
"click"
,
function
(){
roleId
=
$
(
this
)
.attr
(
"data-id"
)
;
$
(
".delete"
)
.modal
()
;
})
;
$
(
"#deleteButton"
)
.click
(
function
(){
deleteRole
(
roleId
)
;
})
;
$
(
"#closeDelete"
)
.click
(
function
(){
$
(
".delete"
)
.modal
(
"hide"
)
;
})
;
$
(
"#totalDelete"
)
.click
(
function
(){
$
(
".deleteAll"
)
.modal
()
;
})
;
$
(
"#closeAllDelete"
)
.click
(
function
(){
$
(
".deleteAll"
)
.modal
(
"hide"
)
;
})
;
//全选
$
(
"#allCheck"
)
.on
(
"click"
,
function
(){
if
(
this
.checked
){
$
(
"input[name='ids']"
)
.each
(
function
(){
this
.checked
=
true
;
})
;
}
else
{
$
(
"input[name='ids']"
)
.each
(
function
(){
this
.checked
=
false
;
})
;
}
})
;
//批量删除
$
(
"#deleteButtonAll"
)
.on
(
"click"
,
function
(){
batchDelete
()
;
})
;
}
);
//删除角色
function deleteRole(roleId)
{
//拼接
ajax
地址
var
URL
=
"${managerPath}/role/"
+
roleId
+
"/delete.do"
;
$
(
"#deleteButtonAll"
)
.text
(
"删除中"
)
;
$
(
"#deleteButtonAll"
)
.attr
(
"disabled"
,
true
)
;
$
(
this
)
.request
({
url
:
URL
,
data
:
"roleId="
+
roleId
,
type
:
"json"
,
method
:
"post"
,
func
:
function
(
msg
)
{
//回调处理方式
if
(
msg
!=
0
)
{
$
(
"input[name="
+
roleId
+
"]"
)
.parent
()
.remove
()
;
<@
ms
.notify
msg
=
"删除角色成功!"
type
=
"success"
/>
if
(
$
(
"tbody tr"
)
.length
==
0
&&
msg
!=
1
){
location
.href
=
base
+
"${baseManager}/role/queryList.do?pageNo="
+
(
msg-1
)
;
}
else
{
location
.href
=
base
+
"${baseManager}/role/queryList.do?pageNo="
+
msg
;
}
}
else
{
<@
ms
.notify
msg
=
"删除失败"
type
=
"danger"
/>
}
location
.reload
()
;
}})
;
}
//批量删除角色
function batchDelete()
{
var
count
=
0
;
var
ids
=
$
(
"input[name='ids']"
)
.serialize
()
;
$
(
"input[name='ids']"
)
.each
(
function
(){
if
(
this
.checked
==
true
){
count
++;
}
})
;
if
(
ids
.length
!=
0
)
{
var
URL
=
"${managerPath}/role/allDelete.do"
;
$
(
"#deleteButtonAll"
)
.text
(
"删除中"
)
;
$
(
"#deleteButtonAll"
)
.attr
(
"disabled"
,
true
)
;
$
(
this
)
.request
({
url
:
URL
,
data
:
ids
,
type
:
"json"
,
method
:
"post"
,
func
:
function
(
msg
)
{
if
(
msg
!=
0
)
{
<@
ms
.notify
msg
=
"批量删除成功"
type
=
"success"
/>
if
(
$
(
"tbody tr"
)
.length
==
count
&&
msg
!=
1
){
location
.href
=
base
+
"${baseManager}/role/queryList.do?pageNo="
+
(
msg-1
)
;
}
else
{
location
.href
=
base
+
"${baseManager}/role/queryList.do?pageNo="
+
msg
;
}
}
else
{
<@
ms
.notify
msg
=
"删除角色失败"
type
=
"danger"
/>
$
(
"#deleteButtonAll"
)
.text
(
"删除"
)
;
$
(
"#deleteButtonAll"
)
.attr
(
"disabled"
,
false
)
;
$
(
".deleteAll"
)
.modal
(
"hide"
)
;
}
}})
;
}
else
{
<@
ms
.notify
msg
=
"删除失败,请先选择管理员"
type
=
"warning"
/>
$
(
".deleteAll"
)
.modal
(
"hide"
)
;
}
}
$("#totalAdd").click(function()
{
location
.href
=
"${managerPath}/role/add.do"
}
);
</script>
</
body
>
</
html
>
src/main/webapp/WEB-INF/manager/template/template_edit_file.ftl
0 → 100644
View file @
da21280b
<@ms.html5>
<@ms.nav title="编辑模版文件" back=true>
<@ms.savebutton id="update" value="修改"/>
</@ms.nav>
<@ms.panel>
<@ms.form name="form" id="editFileForm">
<!--文件名称-->
<@ms.text label="文件名称" value="$
{
name
?
default
(
''
)}
" readonly="readonly"/>
<@ms.hidden value="$
{
fileName
}
" name="fileName" />
<!--文件内容-->
<@ms.textarea name="fileContent" label="文件内容" wrap="Soft" rows="21" size="" value="$
{
fileContent
}
"/>
<@ms.hidden id="fileName" value="$
{
fileName
}
" />
<@ms.hidden id="fileNamePrefix" value="$
{
fileNamePrefix
}
" />
</@ms.form>
</@ms.panel>
</@ms.html5>
<script type="text/javascript">
$(function ()
{
//修改文件
$
(
"#update"
)
.on
(
"click"
,
function
(){
var
formData
=
$
(
"#editFileForm"
)
.serialize
()
;
var
URL
=
base
+
"${baseManager}/template/writeFileContent.do"
var
oldFileName
=
$
(
"#fileName"
)
.val
()
;
var
fileNamePrefix
=
$
(
"#fileNamePrefix"
)
.val
()
;
$
(
this
)
.text
(
"修改中"
)
;
$
(
this
)
.attr
(
"disabled"
,
true
)
;
$
(
this
)
.request
({
url
:
URL
,
type
:
"json"
,
method
:
"post"
,
data
:
formData
+
"&oldFileName="
+
oldFileName
+
"&fileNamePrefix="
+
fileNamePrefix
,
func
:
function
(
msg
)
{
//回调处理方式
if
(
msg
.result
){
<@
ms
.notify
msg
=
"修改模版文件成功"
type
=
"success"
/>
}
else
{
<@
ms
.notify
msg
=
"修改模版文件失败"
type
=
"warning"
/>
}
var
fileNameUrl
=
$
(
".fileNamePrefix"
)
.val
()
;
$
(
"#update"
)
.text
(
"修改"
)
;
$
(
"#update"
)
.attr
(
"disabled"
,
false
)
;
}})
;
})
;
}
);
</script>
src/main/webapp/WEB-INF/manager/template/template_file_list.ftl
0 → 100644
View file @
da21280b
<@
ms
.html5
>
<@ms.nav title="文件列表" back=true></@ms.nav>
<@ms.panel>
<@shiro.hasPermission name="template:upload"><@ms.uploadFile uploadFloderPath="$
{
uploadFileUrl
}
" path="" inputName="file" size="20" filetype="
*
.htm;
*
.html;
*
.jpg;
*
.gif;
*
.png;
*
.css;
*
.js;
*
.ico;
*
.swf;
*
.less" msg="建议上传5M以下htm/html/css/js/jpg/gif/png/swf文件" maxSize="5" callBack="refresh" isRename="false"/></@shiro.hasPermission>
<@ms.table head=['<th class="text-center">图标</th>','模板名称',"<th style='width:20%;text-align:center'>类型</th>","<th class='text-center' style='width:10%;'>操作</th>"]>
<#if fileNameList?has_content>
<#list fileNameList as fileName>
<tr>
<td style="width:10%" class="pic text-center"></td>
<td style="width:35%" class="name">$
{
fileName
?
replace
(
"
\\
"
,
"/"
)}
</td>
<td class="text-center type"></td>
<td style="width:10%;text-align:center">
<@shiro.hasPermission name="template:del">
<a class="btn btn-xs tooltips deleteIcon" data-toggle="tooltip" data-title="$
{
fileName
?
replace
(
"
\\
"
,
"/"
)}
" data-original-title="删除">
<i class="glyphicon glyphicon-trash" style="color:#428BCA"></i>
</a>
</@shiro.hasPermission>
<@shiro.hasPermission name="template:update">
<a class="btn btn-xs tooltips editFileBtn" data-toggle="tooltip" data-title="templets/$
{
websiteId
}
/$
{
fileName
?
replace
(
"
\\
"
,
"/"
)}
" data-original-title="编辑">
<i class="glyphicon glyphicon-pencil" style="color:#428BCA"></i>
</a>
</@shiro.hasPermission>
</td>
</tr>
</#list>
<#else>
<tr>
<td colspan="5" class="text-left">
<@ms.nodata/>
</td>
</tr>
</#if>
</@ms.table>
</@ms.panel>
</@
ms
.html5
>
<!--=================模态框部分开始=================-->
<@ms.modal modalName="delete" title="删除评论">
<@ms.modalBody>
确定删除该模板吗?
</@ms.modalBody>
<@ms.modalButton>
<@ms.button value="返回" id="closeDelete"/>
<@ms.button class="btn btn-danger" id="deleteButton" value="删除"/>
</@ms.modalButton>
</@ms.modal>
<!--=================模态框部分结束=================-->
<script type="text/javascript">
var fileName;
var isSuccess = false;
var fileUrl;
var skinFolderName = "$
{
uploadFileUrl
?
replace
(
"
\\
"
,
"/"
)}
";
var interval;
function refresh(e)
{
<@
ms
.notify
msg
=
"上传成功!"
type
=
"success"
/>
location
.reload
()
;
}
function chat()
{
var
temp
=
$
(
".deleteIcon"
)
.attr
(
"data-title"
)
;
if
(
temp
==
null
||
temp
==
""
){
temp
=
$
(
".editFileBtn"
)
.attr
(
"data-title"
)
;
}
if
(
temp
!=
null
&&
temp
!=
""
){
temp
=
temp
.substring
(
0
,
temp
.lastIndexOf
(
"/"
))
;
}
else
{
temp
=
skinFolderName
.substring
(
skinFolderName
.indexOf
(
"/"
))
;
temp
=
temp
.substring
(
temp
.indexOf
(
"/"
))
;
}
//若上传的为
zip
压缩文件则直接解压
if
(
$
(
"#file"
)
.val
()
.substring
(
$
(
"#file"
)
.val
()
.lastIndexOf
(
"."
)
+
1
)
==
"zip"
){
$
.ajax
({
type
:
"post"
,
url
:
base
+
"${baseManager}/template/unZip.do"
,
data
:
"fileUrl="
+
fileUrl
,
success
:
function
(
msg
){
location
.href
=
base
+
"${baseManager}/template/showChildFileAndFolder.do?skinFolderName="
+
temp
;
fileName
=
temp
+
fileUrl
.substring
(
fileUrl
.lastIndexOf
(
"/"
))
;
//
deleteTempletsFile
()
;
$
(
"#deleteButton"
)
.click
()
;
}
})
;
}
else
{
location
.href
=
base
+
"${baseManager}/template/showChildFileAndFolder.do?skinFolderName="
+
temp
;
}
}
//删除模版文件
$("#deleteButton").click(function()
{
var
URL
=
base
+
"${baseManager}/template/deleteTemplateFile.do"
;
var
DATA
=
"fileName="
+
fileName
;
$
(
this
)
.request
({
url
:
URL
,
data
:
DATA
,
type
:
"json"
,
method
:
"post"
,
func
:
function
(
msg
)
{
if
(
msg
!=
0
)
{
<@
ms
.notify
msg
=
"删除模版文件成功"
type
=
"success"
/>
location
.reload
()
;
}
else
{
<@
ms
.notify
msg
=
"删除模版文件失败"
type
=
"warning"
/>
}
}})
;
}
);
$(function ()
{
//加载页面时启动定时器
//若为文件夹,则左侧显示文件夹图标;若为文件,则左侧显示文件图标,且稍向右偏移
$
(
".name"
)
.each
(
function
(
i
){
var
temp
=
$
(
this
)
.html
()
;
if
(
temp
.indexOf
(
"."
)
>=
0
){
$
(
this
)
.parent
()
.find
(
".pic"
)
.prepend
(
"<span class='glyphicon glyphicon-file'></span>"
)
$
(
this
)
.parent
()
.find
(
".type"
)
.prepend
(
"文件"
)
}
else
{
$
(
this
)
.parent
()
.find
(
".pic"
)
.prepend
(
"<span class='glyphicon glyphicon-folder-close'></span>"
)
$
(
this
)
.parent
()
.find
(
".type"
)
.prepend
(
"文件夹"
)
$
(
this
)
.parent
()
.find
(
".editFileBtn"
)
.attr
(
"data-original-title"
,
"打开文件夹"
)
;
$
(
this
)
.parent
()
.find
(
".editFileBtn"
)
.find
(
".glyphicon"
)
.removeClass
(
"glyphicon-pencil"
)
;
$
(
this
)
.parent
()
.find
(
".editFileBtn"
)
.find
(
".glyphicon"
)
.addClass
(
"glyphicon-log-in"
)
;
$
(
this
)
.parent
()
.find
(
".deleteIcon"
)
.remove
()
;
}
var
suffix
=
temp
.substring
(
temp
.lastIndexOf
(
"."
)
+
1
)
;
if
(
suffix
==
"jpg"
||
suffix
==
"gif"
||
suffix
==
"png"
){
$
(
this
)
.parent
()
.find
(
".type"
)
.prepend
(
"图像"
)
$
(
this
)
.parent
()
.find
(
".editFileBtn"
)
.remove
()
;
}
})
;
//编辑模版文件,若为文件夹,则跳至显示子文件和子文件夹
action
;若为文件,则直接读取代码内容,且跳至模版文件修改页面
$
(
"table"
)
.delegate
(
".editFileBtn"
,
"click"
,
function
(){
fileName
=
$
(
this
)
.attr
(
"data-title"
)
;
if
(
fileName
.indexOf
(
"."
)
>=
0
){
location
.href
=
base
+
"${baseManager}/template/readFileContent.do?fileName="
+
encodeURIComponent
(
fileName
)
;
}
else
{
location
.href
=
base
+
"${baseManager}/template/showChildFileAndFolder.do?skinFolderName="
+
encodeURIComponent
(
fileName
)
;
}
})
;
//点击返回按钮,关闭模态框
$
(
"#closeDelete"
)
.click
(
function
()
{
$
(
".delete"
)
.modal
(
"hide"
)
;
})
//删除模版
$
(
"table"
)
.delegate
(
".deleteIcon"
,
"click"
,
function
(){
fileName
=
$
(
this
)
.attr
(
"data-title"
)
;
$
(
".delete"
)
.modal
()
;
})
;
}
);
</script>
\ No newline at end of file
src/main/webapp/WEB-INF/manager/template/template_list.ftl
0 → 100644
View file @
da21280b
<@
ms
.html5
>
<@ms.nav title="模板管理"></@ms.nav>
<@ms.panel>
<@shiro.hasPermission name="template:upload"><@ms.uploadFile path="" uploadFloderPath="templets/$
{
websiteId
}
/" inputName="websiteStyle" size="10" filetype="
*
.zip" msg="建议上传30M以下的zip文件,模版名称不能使用中文,zip的压缩方式为:存储" maxSize="30" callBack="setUrl" isRename="false"/></@shiro.hasPermission>
<@ms.table head=['<th class="text-center">图标</th>','模板名称',"<th style='width:20%;text-align:center'>类型</th>","<th class='text-center' style='width:10%;'>操作</th>"]>
<#if folderNameList?has_content>
<#list folderNameList as folderName>
<tr>
<td style="width:7%" class="pic text-center"><span class='glyphicon glyphicon-folder-close'></span></td>
<td style="width:35%">$
{
folderName
}
</td>
<td class="text-center">文件夹</td>
<td style="width:10%;text-align:center">
<@shiro.hasPermission name="template:del">
<a class="btn btn-xs tooltips deleteIcon" data-toggle="tooltip" data-title="$
{
folderName
}
" data-original-title="删除">
<i class="glyphicon glyphicon-trash" style="color:#428BCA"></i>
</a>
</@shiro.hasPermission>
<@shiro.hasPermission name="template:update">
<a class="btn btn-xs tooltips" href="$
{
managerPath
}
/template/showChildFileAndFolder.do?skinFolderName=templets/$
{
websiteId
}
/$
{
folderName
}
" data-toggle="tooltip" target="_self" data-original-title="打开文件夹" >
<i class="glyphicon glyphicon-log-in" style="color:#428BCA"></i>
</a>
</@shiro.hasPermission>
</td>
</tr>
</#list>
<#else>
<tr>
<td colspan="5" class="text-left">
<@ms.nodata/>
</td>
</tr>
</#if>
</@ms.table>
</@ms.panel>
</@
ms
.html5
>
<!--=================模态框部分开始=================-->
<@ms.modal modalName="delete" title="删除模板">
<@ms.modalBody>
确定删除该模板吗?
</@ms.modalBody>
<@ms.modalButton>
<@ms.button value="返回" id="closeDelete"/>
<@ms.button class="btn btn-danger" id="deleteButton" value="删除"/>
</@ms.modalButton>
</@ms.modal>
<!--=================模态框部分结束=================-->
<script type="text/javascript">
var name;
var fileUrl;
function setUrl(e)
{
fileUrl
=
e
;
$
.ajax
({
type
:
"post"
,
url
:
base
+
"${baseManager}/template/unZip.do"
,
data
:
"fileUrl="
+
fileUrl
,
success
:
function
(
msg
){
<@
ms
.notify
msg
=
"模版上传成功!"
type
=
"success"
/>
location
.href
=
base
+
"${baseManager}/template/queryTemplateSkin.do"
}
})
;
}
//点击返回按钮,关闭模态框
$("#closeDelete").click(function()
{
$
(
".delete"
)
.modal
(
"hide"
)
;
}
)
//点击删除按钮进行删除模版
$("#deleteButton").click(function()
{
var
URL
=
base
+
"${baseManager}/template/delete.do"
;
var
DATA
=
"fileName="
+
name
;
$
(
this
)
.attr
(
"disabled"
,
true
)
;
$
(
this
)
.text
(
"删除中"
)
;
$
(
this
)
.request
({
url
:
URL
,
data
:
DATA
,
type
:
"json"
,
method
:
"post"
,
func
:
function
(
msg
)
{
if
(
msg
){
<@
ms
.notify
msg
=
"删除模版成功"
type
=
"success"
/>
location
.href
=
base
+
"${baseManager}/template/queryTemplateSkin.do"
}
else
{
<@
ms
.notify
msg
=
"删除模版失败"
type
=
"warning"
/>
$
(
"#deleteButton"
)
.attr
(
"disabled"
,
false
)
;
$
(
"#deleteButton"
)
.text
(
"删除"
)
;
}
}})
;
}
);
//删除模版
$("table").delegate(".deleteIcon","click",function()
{
name
=
$
(
this
)
.attr
(
"data-title"
)
;
$
(
".delete"
)
.modal
()
;
}
);
</script>
src/main/webapp/WEB-INF/web.xml
0 → 100644
View file @
da21280b
<?xml version="1.0" encoding="UTF-8"?>
<web-app
xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance"
xmlns=
"http://java.sun.com/xml/ns/javaee"
xmlns:web=
"http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
xsi:schemaLocation=
"http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"
id=
"WebApp_ID"
version=
"3.0"
>
<display-name>
mybatis
</display-name>
<context-param>
<param-name>
contextConfigLocation
</param-name>
<param-value>
classpath:spring-mvc.xml,classpath:spring-mybatis.xml,classpath:spring-shiro.xml
</param-value>
</context-param>
<filter>
<description>
字符集过滤器
</description>
<filter-name>
encodingFilter
</filter-name>
<filter-class>
org.springframework.web.filter.CharacterEncodingFilter
</filter-class>
<init-param>
<description>
字符集编码
</description>
<param-name>
encoding
</param-name>
<param-value>
UTF-8
</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>
encodingFilter
</filter-name>
<url-pattern>
/*
</url-pattern>
</filter-mapping>
<listener>
<description>
spring监听器
</description>
<listener-class>
org.springframework.web.context.ContextLoaderListener
</listener-class>
</listener>
<!-- 防止spring内存溢出监听器 -->
<listener>
<listener-class>
org.springframework.web.util.IntrospectorCleanupListener
</listener-class>
</listener>
<!-- spring mvc servlet -->
<servlet>
<description>
spring mvc servlet
</description>
<servlet-name>
springMvc
</servlet-name>
<servlet-class>
org.springframework.web.servlet.DispatcherServlet
</servlet-class>
<init-param>
<description>
spring mvc 配置文件
</description>
<param-name>
contextConfigLocation
</param-name>
<param-value>
classpath:spring-mvc.xml
</param-value>
</init-param>
<load-on-startup>
1
</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>
springMvc
</servlet-name>
<url-pattern>
*.do
</url-pattern>
</servlet-mapping>
<!-- Apache Shiro -->
<filter>
<filter-name>
shiroFilter
</filter-name>
<filter-class>
org.springframework.web.filter.DelegatingFilterProxy
</filter-class>
<init-param>
<param-name>
targetFilterLifecycle
</param-name>
<param-value>
true
</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>
shiroFilter
</filter-name>
<url-pattern>
/*
</url-pattern>
</filter-mapping>
<welcome-file-list>
<welcome-file>
index
</welcome-file>
<welcome-file>
default.html
</welcome-file>
<welcome-file>
default.htm
</welcome-file>
<welcome-file>
index.htm
</welcome-file>
<welcome-file>
index.html
</welcome-file>
<welcome-file>
login.do
</welcome-file>
</welcome-file-list>
<!-- 配置session超时时间,单位分钟 -->
<error-page>
<error-code>
404
</error-code>
<location>
/error/404.do
</location>
</error-page>
<error-page>
<error-code>
500
</error-code>
<location>
/error/500.do
</location>
</error-page>
<error-page>
<error-code>
405
</error-code>
<location>
/error/405.do
</location>
</error-page>
<error-page>
<error-code>
504
</error-code>
<location>
/error/504.do
</location>
</error-page>
<session-config>
<session-timeout>
15
</session-timeout>
</session-config>
</web-app>
\ No newline at end of file
Prev
1
2
3
4
Next
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment