pull/1/head
rekoe 2016-03-21 18:16:30 +08:00
parent 84eb3a9862
commit 2d25b3440f
508 changed files with 14219 additions and 0 deletions

View File

@ -0,0 +1,3 @@
Manifest-Version: 1.0
Class-Path:

View File

@ -0,0 +1,5 @@
<#ftl strip_whitespace=true>
<#include "ui/index.ftl"/>
<#include "operate_right.ftl"/>

View File

@ -0,0 +1,13 @@
<#macro operateRight operate checkRight="true">
<#if operate?starts_with('/')>
<#local opr=operate>
<#else>
<#local opr=request.getRequestURI()?substring(base?length,request.getRequestURI()?last_index_of('/')+1) + operate>
</#if>
<#if ((Session._user_key)?? && Session._user_key==1) || ((Session._rights_key)?? && Session._rights_key.contains(opr))>
<#--
<#if "false"==checkRight || ((Session._rights_key)?? && Session._rights_key.contains(opr))>
-->
<#nested/>
</#if>
</#macro>

View File

@ -0,0 +1,47 @@
<#--
<input type="button"/>
-->
<#macro button
value="" code=""
id="" name="" class="" style="" size="" title="" disabled="" tabindex="" accesskey=""
onclick="" ondblclick="" onmousedown="" onmouseup="" onmouseover="" onmousemove="" onmouseout="" onfocus="" onblur="" onkeypress="" onkeydown="" onkeyup="" onselect="" onchange=""
>
<input type="button"<#rt/>
<#if value!=""> value="${value}"<#elseif code!=""> value="<@s.m code/>"</#if><#rt/>
<#if id!=""> id="${id}"</#if><#rt/>
<#include "common-attributes.ftl"/><#rt/>
<#include "scripting-events.ftl"/><#rt/>
/><#rt/>
</#macro>
<#--
<input type="submit"/>
-->
<#macro submit
value="" code=""
id="" name="" class="submit" style="" size="" title="" disabled="" tabindex="" accesskey=""
onclick="" ondblclick="" onmousedown="" onmouseup="" onmouseover="" onmousemove="" onmouseout="" onfocus="" onblur="" onkeypress="" onkeydown="" onkeyup="" onselect="" onchange=""
>
<input type="submit"<#rt/>
<#if value!=""> value="${value}"<#elseif code!=""> value="<@s.m code/>"</#if><#rt/>
<#if id!=""> id="${id}"</#if><#rt/>
<#include "common-attributes.ftl"/><#rt/>
<#include "scripting-events.ftl"/><#rt/>
/><#rt/>
</#macro>
<#--
<input type="reset"/>
-->
<#macro reset
value="" code=""
id="" name="" class="reset" style="" size="" title="" disabled="" tabindex="" accesskey=""
onclick="" ondblclick="" onmousedown="" onmouseup="" onmouseover="" onmousemove="" onmouseout="" onfocus="" onblur="" onkeypress="" onkeydown="" onkeyup="" onselect="" onchange=""
>
<input type="reset"<#rt/>
<#if value!=""> value="${value}"<#elseif code!=""> value="<@s.m code/>"</#if><#rt/>
<#if id!=""> id="${id}"</#if><#rt/>
<#include "common-attributes.ftl"/><#rt/>
<#include "scripting-events.ftl"/><#rt/>
/><#rt/>
</#macro>

View File

@ -0,0 +1,18 @@
<#--
<input type="checkbox"/>
-->
<#macro checkbox
value="" cvalue="" labelFor="" readonly="" checked=""
label="" noHeight="false" required="false" colspan="" help="" helpPosition="3"
id="" name="" class="" style="" size="" title="" disabled="" tabindex="" accesskey=""
onclick="" ondblclick="" onmousedown="" onmouseup="" onmouseover="" onmousemove="" onmouseout="" onfocus="" onblur="" onkeypress="" onkeydown="" onkeyup="" onselect="" onchange=""
>
<input type="checkbox"<#rt/>
value="${value}"<#rt/>
id="${id+'-'+name}"<#rt/>
<#if readonly!=""> readonly="${readonly}"</#if><#rt/>
<#if checked!=""> checked="${checked}"<#elseif cvalue!="" && cvalue==value> checked="checked"</#if><#rt/>
<#include "common-attributes.ftl"/><#rt/>
<#include "scripting-events.ftl"/><#rt/>
/><#if labelFor!=""><label for="${id+'-'+name}">${labelFor}</label></#if>
</#macro>

View File

@ -0,0 +1,6 @@
<label><input type="checkbox"<#rt/>
value="${rkey}"<#rt/>
<#if valueList?seq_contains(rkey)> checked="checked"</#if><#rt/>
<#include "common-attributes.ftl"/><#rt/>
<#include "scripting-events.ftl"/><#rt/>
/>${rvalue}</label><#if hasNext> </#if>

View File

@ -0,0 +1,39 @@
<#--
<input type="checkbox"/>
-->
<#macro checkboxlist
list listKey="" listValue="" valueList=[]
label="" noHeight="false" required="false" colspan="" width="100" help="" helpPosition="2" colon=":" hasColon="true"
id="" name="" class="" style="" size="" title="" disabled="" tabindex="" accesskey=""
onclick="" ondblclick="" onmousedown="" onmouseup="" onmouseover="" onmousemove="" onmouseout="" onfocus="" onblur="" onkeypress="" onkeydown="" onkeyup="" onselect="" onchange=""
>
<#include "control.ftl"/><#rt/>
<#if list?is_sequence>
<#if listKey!="" && listValue!="">
<#list list as item>
<#local rkey=item[listKey]>
<#local rvalue=item[listValue]>
<#local index=item_index>
<#local hasNext=item_has_next>
<#include "checkboxlist-item.ftl"><#t/>
</#list>
<#else>
<#list list as item>
<#local rkey=item>
<#local rvalue=item>
<#local index=item_index>
<#local hasNext=item_has_next>
<#include "checkboxlist-item.ftl"><#t/>
</#list>
</#if>
<#else>
<#list list?keys as key>
<#local rkey=key/>
<#local rvalue=list[key]/>
<#local index=key_index>
<#local hasNext=key_has_next>
<#include "checkboxlist-item.ftl"><#t/>
</#list>
</#if>
<#include "control-close.ftl"/><#rt/>
</#macro>

View File

@ -0,0 +1,12 @@
<#if name!=""> name="${name}"</#if><#rt/>
<#if class!=""> class="${class}"</#if><#rt/>
<#if style!=""> style="${style}"</#if><#rt/>
<#if title!=""> title="${title}"</#if><#rt/>
<#if size!=""> size="${size}"</#if><#rt/>
<#if disabled!=""> disabled="${disabled}"</#if><#rt/>
<#if accesskey!=""> accesskey="${accesskey}"</#if><#rt/>
<#if tabindex!=""> tabindex="${tabindex}"</#if><#rt/>
<#if vld?? && vld!=""> vld="${vld}"</#if><#rt/>
<#if equalTo?? && equalTo!=""> equalTo="${equalTo}"</#if><#rt/>
<#if maxlength?? && maxlength!=""> maxlength="${maxlength}"</#if><#rt/>
<#if minlength?? && minlength!=""> minlength="${minlength}"</#if><#rt/>

View File

@ -0,0 +1,6 @@
<#if help!='' && helpPosition=='2'>
<span class="pn-fhelp"><@s.mt code=help text=help/></span><#rt/>
<#elseif help!='' && helpPosition=='3'>
<div class="pn-fhelp"><@s.mt code=help text=help/></div><#rt/>
</#if>
<#if label!=''></td><#if colspan==''></tr><tr></#if></#if>

View File

@ -0,0 +1,10 @@
<#--
label有label代表需要创建td和tr。
colspan有colspan代表不需要创建tr。
labelWidth需要form传递。
-->
<#if label!="">
<td width="${labelWidth}%" class="pn-flabel<#if noHeight=='false'> pn-flabel-h</#if>"><#if required!="false"><span class="pn-frequired">*</span></#if><@s.mt code=label text=label/><#if hasColon="true">${colon}</#if></td><#rt/>
<td<#if colspan!=""> colspan="${colspan?number*2-1}"</#if> width="${width?number-labelWidth?number}%" class="pn-fcontent"><#rt/>
</#if>
<#if help!="" && helpPosition=='1'><div class="pn-fhelp"><@s.mt code=help text=help/></div></#if>

View File

@ -0,0 +1,37 @@
<#--
<textarea name="textarea"></textarea>
-->
<#macro editor
name value="" height="175"
fullPage="false" toolbarSet="My"
label="" noHeight="false" required="false" colspan="" width="100" help="" helpPosition="2" colon=":" hasColon="true"
maxlength="65535"
onclick="" ondblclick="" onmousedown="" onmouseup="" onmouseover="" onmousemove="" onmouseout="" onfocus="" onblur="" onkeypress="" onkeydown="" onkeyup="" onselect="" onchange=""
>
<#include "control.ftl"/><#rt/>
<textarea id="${name!?js_string}" name="${name!?js_string}" style="width:450px; height:150px">${value!}</textarea>
<script type="text/javascript">
new TINY.editor.edit('editor',{
id:'${name!?js_string}',
width:'900',
height:140,
cssclass:'te',
controlclass:'tecontrol',
rowclass:'teheader',
dividerclass:'tedivider',
controls:['bold','italic','underline','strikethrough','|','subscript','superscript','|',
'orderedlist','unorderedlist','|','outdent','indent','|','leftalign',
'centeralign','rightalign','blockjustify','|','unformat','|','undo','redo','n',
'font','size','style','hr','link','unlink'],
footer:true,
fonts:['Verdana','Arial','Georgia','Trebuchet MS'],
xhtml:true,
cssfile:'${base}/tinyeditor/style.css',
bodyid:'editor',
footerclass:'tefooter',
toggle:{activetext:'wysiwyg',text:'source',cssclass:'toggle'},
resize:{cssclass:'resize'}
});
</script>
<#include "control-close.ftl"/><#rt/>
</#macro>

View File

@ -0,0 +1,19 @@
<#--
<input type="file"/>
-->
<#macro file
accept="" value=""
label="" noHeight="false" required="false" colspan="" width="100" help="" helpPosition="2" colon=":" hasColon="true"
id="" name="" class="" style="" size="" title="" disabled="" tabindex="" accesskey=""
onclick="" ondblclick="" onmousedown="" onmouseup="" onmouseover="" onmousemove="" onmouseout="" onfocus="" onblur="" onkeypress="" onkeydown="" onkeyup="" onselect="" onchange=""
>
<#include "control.ftl"/><#rt/>
<input type="file"<#rt/>
<#if id!=""> id="${id}"</#if><#rt/>
<#if accept!=""> accept="${accept}"</#if><#rt/>
<#if value!=""> value="${value}"</#if><#rt/>
<#include "common-attributes.ftl"/><#rt/>
<#include "scripting-events.ftl"/><#rt/>
/>
<#include "control-close.ftl"/><#rt/>
</#macro>

View File

@ -0,0 +1,30 @@
<#--
<form></form>
-->
<#macro form
action="" method="post" target="" enctype="" acceptCharset=""
theme="jeesys" width="100%" tableClass="pn-ftable" labelWidth="20" required="false" colspan="1"
id="" name="" class="" style="" size="" title="" disabled="" tabindex="" accesskey=""
onsubmit=""
>
<form<#rt/>
method="${method}"<#rt/>
action="${action}"<#rt/>
<#if id!=""> id="${id}"</#if><#rt/>
<#if target!=""> target="${target}"</#if><#rt/>
<#if enctype!=""> enctype="${enctype}"</#if><#rt/>
<#if onsubmit!=""> onsubmit="${onsubmit}"</#if><#rt/>
<#if acceptCharset!=""> accept-charset="${acceptCharset}"</#if><#rt/>
<#include "common-attributes.ftl"/><#rt/>
>
<#if theme!="simple">
<#assign labelWidth=labelWidth/>
<table width="${width}" class="${tableClass}" cellpadding="2" cellspacing="1" border="0">
<tr>
</#if>
<#nested/><#rt/>
<#if theme=="jeesys">
</tr></table>
</#if>
</form>
</#macro>

View File

@ -0,0 +1,12 @@
<#--
<input type="hidden"/>
-->
<#macro hidden
id="" name="" value=""
>
<input type="hidden"<#rt/>
<#if id!=""> id="${id}"</#if><#rt/>
<#if name!=""> name="${name}"</#if><#rt/>
<#if value?string!=""> value="${value}"</#if><#rt/>
/>
</#macro>

View File

@ -0,0 +1,21 @@
<#include "text.ftl"/>
<#include "select.ftl"/>
<#include "radio.ftl"/>
<#include "checkbox.ftl"/>
<#include "checkboxlist.ftl"/>
<#include "textarea.ftl"/>
<#include "hidden.ftl"/>
<#include "file.ftl"/>
<#include "tree.ftl"/>
<#include "table.ftl"/>
<#include "table-column.ftl"/>
<#include "button.ftl"/>
<#include "password.ftl"/>
<#include "editor.ftl"/>
<#include "form.ftl"/>
<#include "td.ftl"/>
<#include "tr.ftl"/>
<#include "span.ftl"/>
<#include "kindeditor.ftl"/>
<#include "self_define_widget.ftl"/>

View File

@ -0,0 +1,34 @@
<#--
<textarea name="textarea"></textarea>
-->
<#macro kindeditor
name id value="" height="230"
fullPage="false" toolbarSet="My"
label="" noHeight="false" required="false" colspan="" width="100" help="" helpPosition="2" colon=":" hasColon="true"
maxlength="65535"
onclick="" ondblclick="" onmousedown="" onmouseup="" onmouseover="" onmousemove="" onmouseout="" onfocus="" onblur="" onkeypress="" onkeydown="" onkeyup="" onselect="" onchange=""
>
<#include "control.ftl"/><#rt/>
<script type="text/javascript">
var editor = null;
KindEditor.ready(function(k){
editor = k.create('textarea[name="${name}"]',{
width: '100%',
height: 370,
resizeType: 1,
cssPath : ['${base}/thirdparty/kindeditor4/plugins/code/prettify.css'],
filterMode: true,
allowFileManager: true,
items : ['source', '|', 'fontname', 'fontsize', '|', 'forecolor', 'hilitecolor', 'bold', 'italic', 'underline',
'removeformat', '|', 'justifyleft', 'justifycenter', 'justifyright', 'insertorderedlist',
'insertunorderedlist', '|', 'emoticons', 'link'],
uploadJson: '${base}/admin/kindeditor/upload.rk',
fileManagerJson : '${base}/admin/kindeditor/manager.rk',
afterBlur: function(){this.sync();
}
});
});
</script>
<textarea id="${id}" name="${name}" cols="0" rows="0" style="visibility:hidden">${value}</textarea>
<#include "control-close.ftl"/><#rt/>
</#macro>

View File

@ -0,0 +1,21 @@
<#--
<input type="password"/>
-->
<#macro password
maxlength="" readonly="" value="" autocomplete="off"
label="" noHeight="false" required="false" colspan="" width="100" help="" helpPosition="2" colon=":" hasColon="true"
id="" name="" class="" style="" size="" title="" disabled="" tabindex="" accesskey=""
vld="" equalTo="" maxlength="" minlength=""
onclick="" ondblclick="" onmousedown="" onmouseup="" onmouseover="" onmousemove="" onmouseout="" onfocus="" onblur="" onkeypress="" onkeydown="" onkeyup="" onselect="" onchange=""
>
<#include "control.ftl"/><#rt/>
<input type="password" autocomplete="${autocomplete}"<#rt/>
<#if id!=""> id="${id}"</#if><#rt/>
<#if maxlength!=""> maxlength="${maxlength}"</#if><#rt/>
<#if readonly!=""> readonly="${readonly}"</#if><#rt/>
<#if value!=""> value="${value}"</#if><#rt/>
<#include "common-attributes.ftl"/><#rt/>
<#include "scripting-events.ftl"/><#rt/>
/>
<#include "control-close.ftl"/><#rt/>
</#macro>

View File

@ -0,0 +1,6 @@
<label><input type="radio"<#rt/>
value="${rkey}"<#rt/>
<#if (rkey?string=="" && (!value?? || value?string=="")) || (value?? && value?string!="" && value?string==rkey?string)> checked="checked"</#if><#rt/>
<#include "common-attributes.ftl"/><#rt/>
<#include "scripting-events.ftl"/><#rt/>
/><@s.mt code=rvalue text=rvalue/></label><#if hasNext> </#if>

View File

@ -0,0 +1,40 @@
<#--
<input type="radio"/>
-->
<#macro radio
list listKey="" listValue="" value=""
label="" noHeight="false" required="false" colspan="" width="100" help="" helpPosition="2" colon=":" hasColon="true"
id="" name="" class="" style="" size="" title="" disabled="" tabindex="" accesskey=""
onclick="" ondblclick="" onmousedown="" onmouseup="" onmouseover="" onmousemove="" onmouseout="" onfocus="" onblur="" onkeypress="" onkeydown="" onkeyup="" onselect="" onchange=""
>
<#include "control.ftl"/><#rt/>
<#if list?is_sequence>
<#if listKey!="" && listValue!="">
<#list list as item>
<#local rkey=item[listKey]>
<#local rvalue=item[listValue]>
<#local index=item_index>
<#local hasNext=item_has_next>
<#include "radio-item.ftl"><#t/>
</#list>
<#else>
<#list list as item>
<#local rkey=item>
<#local rvalue=item>
<#local index=item_index>
<#local hasNext=item_has_next>
<#include "radio-item.ftl"><#t/>
</#list>
</#if>
<#else>
<#list list?keys as key>
<#local rkey=key/>
<#local rvalue=list[key]/>
<#local index=key_index>
<#local hasNext=key_has_next>
<#include "radio-item.ftl"><#t/>
</#list>
</#if>
<#include "control-close.ftl"/>
</#macro>

View File

@ -0,0 +1,14 @@
<#if onclick!=""> onclick="${onclick}"</#if><#rt/>
<#if ondblclick!=""> ondblclick="${ondblclick}"</#if><#rt/>
<#if onmousedown!=""> onmousedown="${onmousedown}"</#if><#rt/>
<#if onmouseup!=""> onmouseup="${onmouseup}"</#if><#rt/>
<#if onmouseover!=""> onmouseover="${onmouseover}"</#if><#rt/>
<#if onmousemove!=""> onmousemove="${onmousemove}"</#if><#rt/>
<#if onmouseout!=""> onmouseout="${onmouseout}"</#if><#rt/>
<#if onfocus!=""> onfocus="${onfocus}"</#if><#rt/>
<#if onblur!=""> onblur="${onblur}"</#if><#rt/>
<#if onkeypress!=""> onkeypress="${onkeypress}"</#if><#rt/>
<#if onkeydown!=""> onkeydown="${onkeydown}"</#if><#rt/>
<#if onkeyup!=""> onkeyup="${onkeyup}"</#if><#rt/>
<#if onselect!=""> onselect="${onselect}"</#if><#rt/>
<#if onchange!=""> onchange="${onchange}"</#if><#rt/>

View File

@ -0,0 +1,46 @@
<#--
<select><option></option></select>
-->
<#macro select
list value="" multiple="" headerKey="" headerValue="" listKey="" listValue="" listDeep="" headerButtom="false"
label="" noHeight="false" required="false" colspan="" width="100" help="" helpPosition="2" colon=":" hasColon="true"
id="" name="" class="" style="" size="" title="" disabled="" tabindex="" accesskey=""
vld=""
onclick="" ondblclick="" onmousedown="" onmouseup="" onmouseover="" onmousemove="" onmouseout="" onfocus="" onblur="" onkeypress="" onkeydown="" onkeyup="" onselect="" onchange=""
>
<#include "control.ftl"/><#rt/>
<select<#rt/>
<#if id!=""> id="${id}"</#if><#rt/>
<#if multiple!=""> multiple="${multiple}"</#if><#rt/>
<#include "common-attributes.ftl"/><#rt/>
<#include "scripting-events.ftl"/><#rt/>
><#rt/>
<#if headerButtom=="false">
<#if headerKey!="" || headerValue!="">
<option value="${headerKey}"<#if headerKey==value?string> selected="selected"</#if>><@s.mt code=headerValue text=headerValue/></option><#t/>
</#if>
</#if>
<#if list?is_sequence>
<#if listKey!="" && listValue!="">
<#if listDeep!="" && list?size gt 0><#local origDeep=list[0][listDeep]+1/></#if>
<#list list as item>
<option value="${item[listKey]}"<#if item[listKey]?string==value?string> selected="selected"</#if>><#if listDeep!="" && item[listDeep] gte origDeep><#list origDeep..item[listDeep] as i>&nbsp;&nbsp;</#list>></#if>${item[listValue]!}</option><#t/>
</#list>
<#else>
<#list list as item>
<option value="${item}"<#if item==value> selected="selected"</#if>>${item}</option><#t/>
</#list>
</#if>
<#else>
<#list list?keys as key>
<option value="${key}"<#if key==value?string> selected="selected"</#if>><@s.mt code=list[key] text=list[key]/></option><#t/>
</#list>
</#if>
<#if headerButtom!="false">
<#if headerKey!="" || headerValue!="">
<option value="${headerKey}"<#if headerKey==value> selected="selected"</#if>><@s.mt code=headerValue text=headerValue/></option><#t/>
</#if>
</#if>
</select>
<#include "control-close.ftl"/><#rt/>
</#macro>

View File

@ -0,0 +1,36 @@
<#--自定义组件
type"1":"字符串文本","2":"整型文本","3":"浮点型文本","4":"文本区","5":"日期","6":"下拉列表","7":"复选框","8":"单选框"
name
label
help
value
size
rows
cols
colspan
width
-->
<#macro selfDefineWidget
type="1" name="" label="" value="" help="" size="" rows="" cols="" list=""
colspan="" width="100" helpPosition="2"
>
<#if type=="1" || type=="2" || type=="3">
<#if type=="1"><#local vld="{maxlength:255}"/>
<#elseif type="2"><#local vld="{digits:true,maxlength:20}"/>
<#elseif type="3"><#local vld="{number:true,maxlength:20}"/>
</#if>
<@p.text colspan=colspan width=width label=label name=name value=value size=size help=help helpPosition=helpPosition vld=vld/>
<#elseif type=="4">
<@p.textarea colspan=colspan width=width label=label name=name value=value help=help cols=cols?string rows=rows?string helpPosition=helpPosition maxlength="255"/>
<#elseif type=="5">
<@p.text colspan=colspan width=width label=label name=name value=value readonly="readonly" onclick="WdatePicker({dateFmt:'yyyy-MM-dd'})" class="Wdate" size=size?string help=help helpPosition=helpPosition/>
<#elseif type=="6">
<@p.select colspan=colspan width=width label=label name=name value=value help=help list=list!?split(",") helpPosition=helpPosition/>
<#elseif type=="7">
<@p.checkboxlist colspan=colspan width=width label=label name=name valueList=value!?split(",") list=list!?split(",") help=help helpPosition=helpPosition/>
<#elseif type=="8">
<@p.radio colspan=colspan width=width label=label name=name value=value list=list!?split(",") help=help helpPosition=helpPosition/>
<#else>
not support type: "${type}"
</#if>
</#macro>

View File

@ -0,0 +1,18 @@
<#--
<span/>
-->
<#macro span
maxlength="" readonly="" value=""
label="" noHeight="false" required="false" colspan="" width="100" help="" helpPosition="2" colon=":" hasColon="true"
id="" name="" class="" style="" size="" title="" disabled="" tabindex="" accesskey=""
vld="" equalTo="" maxlength="" minlength="" max="" min="" rname="" rvalue=""
onclick="" ondblclick="" onmousedown="" onmouseup="" onmouseover="" onmousemove="" onmouseout="" onfocus="" onblur="" onkeypress="" onkeydown="" onkeyup="" onselect="" onchange=""
>
<#include "control.ftl"/><#rt/>
<span><font color="red"><#rt/>
<#if value?? && value?string!=""> ${value?html}</#if><#rt/>
<#include "common-attributes.ftl"/><#rt/>
<#include "scripting-events.ftl"/><#rt/>
</font></span><#rt/>
<#include "control-close.ftl"/><#rt/>
</#macro>

View File

@ -0,0 +1,16 @@
<#if (batchOperate?size > 0)>
<div class="pn-lbopt">
<#list batchOperate as operate>
<@p.operateRight operate=operate['action'] checkRight=checkRight>
<#if (operate.confirm)??>
<input type="submit" value="${operate['name']}" onclick="if(confirm('${operate.confirm}')){this.form.action='${operate["action"]+actionSuffix}';return true;}else{return false;}"/>
<#else>
<input type="submit" value="${operate['name']}" onclick="this.form.action='${operate["action"]+actionSuffix}';"/>
</#if>
</@p.operateRight>
</#list>
<#if wholeOptName!="">
&nbsp; <input type="submit" value="${wholeOptName}" onclick="this.form.action='${wholeOptAction+actionSuffix}';this.form.onsubmit=null;"/>
</#if>
</div>
</#if>

View File

@ -0,0 +1,17 @@
<#--
表格列标签:展示数据列。
title标题列头。直接显示字符串。默认""。
code标题列头。显示国际化信息。默认""。
width列宽。默认""。
align对齐方式。
classcss样式class
stylecss样式style
-->
<#macro column title="" code="" width="" align="" class="" style="" rowspan="">
<#if title="" && code=""><td>title and code all not assign!</td><#return></#if>
<#if i==-1>
<th <#if width!=""> width="${width}"</#if><#if class!=""> class="${class}"</#if><#if style!=""> style="${style}"</#if>><#if code!=""><@s.mt code=code text=code/><#else>${title}</#if></th><#rt/>
<#else>
<td nowrap <#if align!=""> align="${align}"</#if><#if rowspan!=""> rowspan="${rowspan}"</#if><#if class!=""> class="${class}"</#if><#if style!=""> style="${style}"</#if> <#if title!=""> title="${title}" </#if>><#nested/></td><#rt/>
</#if>
</#macro>

View File

@ -0,0 +1,54 @@
<#--
表格标签:用于显示列表数据。
value列表数据可以是Pagination也可以是List。
classtable的class样式。默认"pn-ltable"。
sytletable的style样式。默认""。
width表格的宽度。默认100%。
-->
<#macro table value listAction="" class="pn-ltable" style="" theadClass="pn-lthead" tbodyClass="pn-ltbody" width="100%">
<table class="${class}" style="${style}" width="${width}" cellspacing="1" cellpadding="0" border="0">
<#if listAction=="">
<#assign listAction="list">
</#if>
<#if value?is_sequence><#local pageList=value/><#else><#local pageList=value.list/></#if>
<#list pageList as row>
<#if row_index==0>
<#assign i=-1/>
<thead class="${theadClass}"><tr><#nested row,i,true/></tr></thead>
</#if>
<#assign i=row_index has_next=row_has_next/>
<#if row_index==0><tbody class="${tbodyClass}"><tr onmouseover="this.bgColor='#eeeeee'" onmouseout="this.bgColor='#ffffff'"><#else><tr onmouseover="this.bgColor='#eeeeee'" onmouseout="this.bgColor='#ffffff'"></#if><#nested row,row_index,row_has_next/>
<#if !row_has_next>
</tr></tbody>
<#else>
</tr>
</#if>
</#list>
</table>
<#if !value?is_sequence>
<table width="100%" border="0" cellpadding="0" cellspacing="0"><tr><td align="center" class="pn-sp">
共 ${value.totalCount} 条&nbsp;
每页<input type="text" value="${value.pageSize}" style="width:30px" onfocus="this.select();" onblur="$.cookie('_cookie_page_size',this.value,{expires:3650});" onkeypress="if(event.keyCode==13){$(this).blur();return false;}"/>条&nbsp;
<input class="first-page" type="button" value="首 页" onclick="_gotoPage('1');"<#if value.firstPage> disabled="disabled"</#if>/>
<input class="pre-page" type="button" value="上一页" onclick="_gotoPage('${value.prePage}');"<#if value.firstPage> disabled="disabled"</#if>/>
<input class="next-page" type="button" value="下一页" onclick="_gotoPage('${value.nextPage}');"<#if value.lastPage> disabled="disabled"</#if>/>
<input class="last-page" type="button" value="尾 页" onclick="_gotoPage('${value.totalPage}');"<#if value.lastPage> disabled="disabled"</#if>/>&nbsp;
当前 ${value.pageNo}/${value.totalPage} 页 &nbsp;转到第<input type="text" id="_goPs" style="width:50px" onfocus="this.select();" onkeypress="if(event.keyCode==13){$('#_goPage').click();return false;}"/>页
<input class="go" id="_goPage" type="button" value="转" onclick="_gotoPage($('#_goPs').val());"<#if value.totalPage==1> disabled="disabled"</#if>/>
</td></tr></table>
<script type="text/javascript">
function _gotoPage(pageNo) {
try{
var tableForm = getTableForm();
$("input[name=pageNumber]").val(pageNo);
tableForm.action="${listAction}";
tableForm.onsubmit=null;
tableForm.submit();
} catch(e) {
alert(e);
alert('_gotoPage(pageNo)方法出错');
}
}
</script>
</#if>
</#macro>

View File

@ -0,0 +1,133 @@
<#macro otable cols normalOperate=[] batchOperate=[] wholeOptName="" wholeOptAction="" keepParams=[] gotoPageAction="Com_list"
actionSuffix=".do" keyId="id" batchId="ids" wholeId="wids" value=pagination isPagination=true rowIndex=true operateCol="操作" checkRight="true"
width="100%">
<script language="javascript">
<#list normalOperate as operate>
var ${operate["action"]} = {action:"${operate["action"]+actionSuffix}"<#if operate['confirm']??>,msg:"${operate['confirm']}"</#if>};
</#list>
function _gotoPage(pageNo) {
try{
var tableForm = document.getElementById('tableForm');
tableForm.pageNo.value = pageNo;
<#if gotoPageAction!="">
tableForm.action="${gotoPageAction + actionSuffix}";
</#if>
tableForm.onsubmit=null;
tableForm.submit();
} catch(e) {
alert('gotoPage(pageNo)方法出错或不存在');
}
}
function _operate(op,id) {
if(op.msg && !confirm(op.msg)) {
return;
}
var tableForm = document.getElementById('tableForm');
tableForm.onsubmit=null;
tableForm.action=op.action;
tableForm.${keyId}.value = id;
tableForm.submit();
}
function _validateBatch() {
var batchChecks = document.getElementsByName('${batchId}');
var hasChecked = false;
for(var i=0; i<batchChecks.length; i++) {
if(batchChecks[i].checked) {
hasChecked = true;
break;
}
}
if(!hasChecked) {alert('请选择要操作的数据!')};
return hasChecked;
}
</script>
<form id="tableForm" method="post" onsubmit="return _validateBatch();">
<table class="pn-ltable" width="${width}" cellspacing="1" cellpadding="0" border="0">
<thead class="pn-lthead">
<tr>
<#if batchOperate?size gt 0>
<th width="20px"><input type="checkbox" id="allCheck" value="checkbox" onclick="Pn.checkBox('${batchId}',this.checked);"/></th>
</#if>
<#if rowIndex>
<th width="20px">#</th>
</#if>
<#list cols as col>
<th>${col["label"]}</th>
</#list>
<#if normalOperate?size != 0>
<th>${operateCol}</th>
</#if>
</tr>
</thead>
<tbody class="pn-ltbody">
<#if isPagination>
<#if value.list??>
<#assign pageList=value.list>
</#if>
<#else>
<#assign pageList=value>
</#if>
<#if pageList?? && pageList?size gt 0>
<#list pageList as row>
<tr onmouseover="Pn.LTable.lineOver(this);" onmouseout="Pn.LTable.lineOut(this);" onclick="Pn.LTable.lineSelect(this);">
<#if batchOperate?size gt 0>
<td><input type="checkbox" name="${batchId}" value="${row[keyId]}"/></td>
</#if>
<#if rowIndex>
<td>${row_index+1}</td>
</#if>
<#list cols as col>
<td<#if col['width']??> width="${col['width']}"</#if><#if col['title']??> title="${(col['title']?eval)!}"</#if>><#rt/>
<#if col['length']??><div style="width:${col['length']}px;overflow-x:hidden;word-break:keep-all;text-overflow:ellipsis;" title="${(col['name']?eval)!?html}"></#if><#t/>
<#if col['type']?? && col['type']=='input'>
<input type="text" name="${col['inputName']}" value="${(col['name']?eval)!}" size="${col['size']!7}" onfocus="this.select();" onkeypress="if(event.keyCode==13){this.blur();return false;}"/><#t/>
<#else>
<#if (col['name']?eval)??><#if col['escape']!true>${(col['name']?eval)!?html}<#else>${(col['name']?eval)!}</#if><#else>${col['default']!}</#if><#t/>
</#if>
<#if col['length']??></div></#if><#t/>
</td><#lt/>
</#list>
<td class="pn-lopt"><#rt/>
<#if wholeOptName!=""><input type="hidden" name="${wholeId}" value="${row[keyId]}"/></#if><#t/>
<#list normalOperate as operate>
<#local opDisabled = operate['displayExp']?? && !operate['displayExp']?eval />
<@p.operateRight operate=operate['action'] checkRight=checkRight><a<#if opDisabled> disabled="disabled" style="background-color:#CCCCCC;"<#else> href="javascript:_operate(${operate['action']},'${row[keyId]}');"</#if> class="pn-loperator">${operate["name"]}</a><#if operate_has_next>┆</#if></@p.operateRight><#t/>
</#list><#t/>
</td><#lt/>
</tr>
</#list>
</#if>
</tbody>
</table>
<#if !pageList?? || pageList?size <= 0>
<div class="pn-lnoresult">没有相关数据!</div>
<#else>
<input type="hidden" name="${keyId}"/>
<@p.hidden name="pageNo" />
<#list keepParams as keep>
<@p.hidden name="${keep}" />
</#list>
<#list Parameters?keys as pkey>
<#if pkey!=keyId && pkey!=batchId && !keepParams?seq_contains(pkey) && pkey?starts_with('query')>
<@p.hidden name="${pkey}" />
</#if>
</#list>
<#if isPagination>
<div class="pn-sp">
<div class="pn-sp-left">共 ${value.totalCount} 条 &nbsp;每页
<input type="text" value="${value.pageSize}" size="2" onfocus="this.select();" onblur="new Pn.Cookie().set(Pn.Cookie.countPerPage,this.value,10*365*24*60*60);" onkeypress="if(event.keyCode==13){$(this).blur();return false;}"/> 条</div>
<div class="pn-sp-right">
<input type="button" value="首 页" onclick="_gotoPage('1');"<#if value.firstPage> disabled="disabled"</#if>/>&nbsp;
<input type="button" value="上一页" onclick="_gotoPage('${value.prePage}');"<#if value.firstPage> disabled="disabled"</#if>/>&nbsp;
<input type="button" value="下一页" onclick="_gotoPage('${value.nextPage}');"<#if value.lastPage> disabled="disabled"</#if>/>&nbsp;
<input type="button" value="尾 页" onclick="_gotoPage('${value.totalPage}');"<#if value.lastPage> disabled="disabled"</#if>/> &nbsp;
当前 ${value.pageNo}/${value.totalPage} 页 &nbsp;转到第 <input type="text" id="_goPs" size="2" onfocus="this.select();" onkeypress="if(event.keyCode==13){$('#_goPage').click();return false;}"/> 页
<input id="_goPage" type="button" value="转" onclick="_gotoPage($('#_goPs').val());"<#if value.totalPage==1> disabled="disabled"</#if>/>
</div>
<div class="clear"></div>
</div>
</#if>
<#include "table-batchoperate.ftl" />
</#if>
</form>
</#macro>

View File

@ -0,0 +1,23 @@
<#--
构建一个没有内容的label或者没有label的行。
用于自定义内容和无label的行。
<td></td>
-->
<#macro td id=""
label="" noHeight="false" required="false" colspan="" width="100" help="" helpPosition="2" colon=":" hasColon="true"
>
<#if label!="">
<td<#if id?? && id!=""> id="${id}"</#if> width="${labelWidth}%" class="pn-flabel<#if noHeight=='false'> pn-flabel-h</#if>"><#if required!="false"><span class="pn-frequired">*</span></#if><@s.mt code=label text=label/><#if hasColon="true">${colon}</#if></td><#rt/>
<td<#if colspan!=""> colspan="${colspan?number*2-1}"</#if> width="${width?number-labelWidth?number}%" class="pn-fcontent"><#rt/>
<#else>
<td<#if id?? && id!=""> id="${id}"</#if> colspan="<#if colspan=="">2<#else>${colspan?number*2}</#if>" class="pn-fbutton"><#rt/>
</#if>
<#if help!="" && helpPosition=='1'><div class="pn-fhelp"><@s.mt code=help text=help/></div></#if>
<#nested/>
<#if help!='' && helpPosition=='2'>
<span class="pn-fhelp"><@s.mt code=help text=help/></span><#rt/>
<#elseif help!='' && helpPosition=='3'>
<div class="pn-fhelp"><@s.mt code=help text=help/></div><#rt/>
</#if>
</td><#rt/>
</#macro>

View File

@ -0,0 +1,28 @@
<#--
<input type="text"/>
-->
<#macro text
maxlength="" readonly="" value=""
label="" noHeight="false" required="false" colspan="" width="100" help="" helpPosition="2" colon=":" hasColon="true"
id="" name="" class="" style="" size="" title="" disabled="" tabindex="" accesskey=""
vld="" equalTo="" maxlength="" minlength="" max="" min="" rname="" rvalue=""
onclick="" ondblclick="" onmousedown="" onmouseup="" onmouseover="" onmousemove="" onmouseout="" onfocus="" onblur="" onkeypress="" onkeydown="" onkeyup="" onselect="" onchange=""
>
<#include "control.ftl"/><#rt/>
<#if readonly!="">
${value?html}
<#else>
<input type="text"<#rt/>
<#if id!=""> id="${id}"</#if><#rt/>
<#if maxlength!=""> maxlength="${maxlength}"</#if><#rt/>
<#if max?string!=""> max="${max}"</#if><#rt/>
<#if min?string!=""> min="${min}"</#if><#rt/>
<#if rname!=""> rname="${rname}"</#if><#rt/>
<#if rvalue!=""> rvalue="${rvalue}"</#if><#rt/>
<#if value?? && value?string!=""> value="${value?html}"</#if><#rt/>
<#include "common-attributes.ftl"/><#rt/>
<#include "scripting-events.ftl"/><#rt/>
/><#rt/>
<#include "control-close.ftl"/><#rt/>
</#if>
</#macro>

View File

@ -0,0 +1,22 @@
<#--
<textarea name="textarea"></textarea>
-->
<#macro textarea
wrap="" readonly="" cols="" rows="" value=""
label="" noHeight="false" required="false" colspan="" width="100" help="" helpPosition="2" colon=":" hasColon="true"
id="" name="" class="" style="" size="" title="" disabled="" tabindex="" accesskey=""
vld="" equalTo="" maxlength="" minlength=""
onclick="" ondblclick="" onmousedown="" onmouseup="" onmouseover="" onmousemove="" onmouseout="" onfocus="" onblur="" onkeypress="" onkeydown="" onkeyup="" onselect="" onchange=""
>
<#include "control.ftl"/><#rt/>
<textarea<#rt/>
<#if id!=""> id="${id}"</#if><#rt/>
<#if wrap!=""> wrap="${wrap}"</#if><#rt/>
<#if readonly!=""> readonly="${readonly}"</#if><#rt/>
<#if cols!=""> cols="${cols}"</#if><#rt/>
<#if rows!=""> rows="${rows}"</#if><#rt/>
<#include "common-attributes.ftl"/><#rt/>
<#include "scripting-events.ftl"/><#rt/>
><#if value!="">${value!?html}</#if></textarea>
<#include "control-close.ftl"/><#rt/>
</#macro>

View File

@ -0,0 +1,6 @@
<#--
<tr></tr>
-->
<#macro tr id="">
</tr><tr<#if id!=""> id="${id}"</#if>><#rt/>
</#macro>

View File

@ -0,0 +1,17 @@
<#macro tree list value="" multiple="" headerKey="" headerValue="" listKey="" listValue="" listDeep="" headerButtom="false"
label="" noHeight="false" required="false" colspan="" width="100" help="" helpPosition="2" colon=":" hasColon="true"
id="" name="" class="" style="" size="" title="" disabled="" tabindex="" accesskey=""
vld="" category = false
onclick="" ondblclick="" onmousedown="" onmouseup="" onmouseover="" onmousemove="" onmouseout="" onfocus="" onblur="" onkeypress="" onkeydown="" onkeyup="" onselect="" onchange=""
>
<#include "control.ftl"/><#rt/>
<select<#rt/>
<#if name!=""> name="${name}"</#if> <#if id!=""> name="${id}"</#if><#rt/>
><#rt/>
<#if category>
<option value=""><@s.m "admin.articleCategory.root" /></option>
</#if>
<@article_category_tree categoryid = value/>
</select>
<#include "control-close.ftl"/><#rt/>
</#macro>

View File

@ -0,0 +1,14 @@
<#ftl strip_whitespace=true>
<#--
* message as m
*
* Macro to translate a message code into a message.
-->
<#macro m code>${mvcs[(code)]}</#macro>
<#--
* messageText as mt
*
* Macro to translate a message code into a message,
* using the given default text if no message found.
-->
<#macro mt code, text>${mvcs[(code)]}</#macro>

View File

@ -0,0 +1,59 @@
<%@page import="org.nutz.lang.Strings"%>
<%@page import="java.util.Enumeration"%>
<%@page import="java.io.ByteArrayOutputStream"%>
<%@page import="java.io.PrintWriter"%>
<%@page import="org.nutz.mvc.Mvcs"%>
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8" isErrorPage="true" trimDirectiveWhitespaces="true"
session="false"%>
<% response.setStatus(500); %>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>出错啦</title>
</head>
<body>
<div>
<%
Throwable e = exception;
if (e == null) {
Object obj = request.getAttribute("obj");
if (obj != null && obj instanceof Throwable) {
e = (Throwable)obj;
} else {
if (Mvcs.getActionContext() != null) {
e = Mvcs.getActionContext().getError();
}
}
}
%>
<h2>请求的路径: <%=(request.getAttribute("javax.servlet.forward.request_uri") + (request.getQueryString() == null ? "" : "?" + request.getQueryString())) %></h2><p/>
<%
if (Mvcs.getActionContext() != null) {
%>
<h2>请求的方法: <%=Mvcs.getActionContext().getMethod() %></h2><p/>
<%
}
if (e != null) {
%>
<h2>异常堆栈如下:</h2><p/>
<pre>
<code class="lang-java">
<%
ByteArrayOutputStream bao = new ByteArrayOutputStream();
PrintWriter pw = new PrintWriter(bao);
e.printStackTrace(pw);
pw.flush();
%>
<%=Strings.escapeHtml(new String(bao.toByteArray())) %>
</code>
</pre>
<%
}
%>
</div>
</body>
</html>

View File

@ -0,0 +1,64 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
<title></title>
<#include "/template/admin/head.ftl"/>
<script type="text/javascript">
$().ready(function() {
$("#jvForm").validate({
rules: {
newpwd: {
required: true,
minlength: 5
},
repwd: {
required: true,
minlength: 5,
equalTo: "#newpwd"
}
},
messages: {
newpwd: {
required: "<@s.m "login.input.request.password"/>",
minlength: jQuery.format("<@s.m "login.input.request.password.len"/>")
},
repwd: {
required: "<@s.m "login.input.request.password"/>",
minlength: "<@s.m "login.input.request.password.len"/>",
equalTo: "<@s.m "login.input.request.password.same"/>"
}
}
});
});
function updatepwd()
{
$.post("pwd_updata", {
"oldpwd" : $('#oldpwd').val(),
"newpwd" : $('#newpwd').val(),
"rewpwd" : $('#rewpwd').val()
}, function(data) {
if (data.ok==true) {
$.dialog({type: "success", content: '<@s.m "button.submit.success"/>', modal: true, autoCloseTime: 3000});
} else {
$.dialog({type: "error", content: data.msg, modal: true, autoCloseTime: 3000});
}
}, "json");
}
</script>
</head>
<body>
<div class="box-positon">
<div class="rpos"><@s.m "global.position"/>: <@s.m "cmsAdminGlobal.function"/> - <@s.m "global.add"/></div>
<div class="clear"></div>
</div>
<div class="body-box">
<@p.form id="jvForm" action="pwd_updata" labelWidth="50" onsubmit="updatepwd();return false;">
<@p.password width="50" colspan="1" label="login.input.old.password" id="oldpwd" name="oldpwd" maxlength="100" class="required" required="true"/><@p.tr/>
<@p.password width="50" colspan="1" label="login.input.new.password" id="newpwd" name="newpwd" maxlength="100" class="required" required="true"/><@p.tr/>
<@p.password width="50" colspan="1" label="login.input.re.password" id="rewpwd" name="rewpwd" maxlength="100" class="required" required="true"/><@p.tr/>
<@p.td colspan="1"><@p.submit code="global.submit"/> &nbsp; <@p.reset code="global.reset"/></@p.td>
</@p.form>
</div>
</body>
</html>

View File

@ -0,0 +1,25 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
<title>cms-left</title>
<#include "/template/admin/head.ftl"/>
<script type="text/javascript">
$(function() {
Cms.lmenu('lmenu');
});
</script>
<style>
h3{ padding:0; margin:0; font-weight:normal; font-size:12px;}
</style>
</head>
<body class="lbody">
<div class="left">
<#include "/template/admin/date.ftl"/>
<ul class="w-lful">
<li><a href="user_pwd_right" target="rightFrame"><@s.m "global.admin.index"/></a></li>
<li><a href="${base}/admin/user/change_pwd" target="rightFrame"><@s.m "user.change.pwd"/></a></li>
</ul>
</div>
</body>
</html>

View File

@ -0,0 +1,12 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
<title>修改密码</title>
</head>
<frameset cols="227,*" frameborder="0" border="0" framespacing="0">
<frame src="left" name="leftFrame" noresize="noresize" id="leftFrame" />
<frame src="right" name="rightFrame" id="rightFrame" />
</frameset>
<noframes><body></body></noframes>
</html>

View File

@ -0,0 +1,22 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8" />
<title><@s.m "admin.error.title" /> - Powered By Rekoe Cms</title>
<meta name="author" content="Rekoe Cms Team" />
<meta name="copyright" content="Rekoe Cms" />
<link href="${base}/res/common/css/common.css" rel="stylesheet" type="text/css" />
<link href="${base}/res/common/css/error.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div class="wrap">
<div class="error">
<dl>
<dt><@s.m "admin.error.message" /></dt>
<dd>${obj.content}</dd>
<dd><a href="javascript:;" onclick="window.history.back(); return false;"><@s.m "admin.error.back" /></a></dd>
</dl>
</div>
</div>
</body>
</html>

View File

@ -0,0 +1,23 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8" />
<title>Lock Account - Powered By ShangGame</title>
<meta name="author" content="ShangGame Team" />
<meta name="copyright" content="ShangGame" />
<meta name="keywords" content="ShangGame Game" />
<meta name="description" content="ShangGame Game" />
<link href="${base}/resources/admin/css/common.css" rel="stylesheet" type="text/css" />
<link href="${base}/resources/admin/css/error.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div class="wrap">
<div class="error">
<dl>
<dt>Your account is banned</dt>
<dd>Please connect CS team for more details</dd>
</dl>
</div>
</div>
</body>
</html>

View File

@ -0,0 +1,12 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
<title>cms-main</title>
</head>
<frameset cols="227,*" frameborder="0" border="0" framespacing="0">
<frame src="left" name="leftFrame" noresize="noresize" id="leftFrame" />
<frame src="right" name="rightFrame" id="rightFrame" />
</frameset>
<noframes><body></body></noframes>
</html>

View File

@ -0,0 +1,7 @@
<div class="date">
<span>
<script language="javascript">
document.write("<@currentTime/>");
</script>
</span>
</div>

View File

@ -0,0 +1,78 @@
<p><!--[if gte mso 9]><xml>
<w:WordDocument>
<w:View>Normal</w:View>
<w:Zoom>0</w:Zoom>
<w:PunctuationKerning />
<w:DrawingGridVerticalSpacing>7.8 磅</w:DrawingGridVerticalSpacing>
<w:DisplayHorizontalDrawingGridEvery>0</w:DisplayHorizontalDrawingGridEvery>
<w:DisplayVerticalDrawingGridEvery>2</w:DisplayVerticalDrawingGridEvery>
<w:ValidateAgainstSchemas />
<w:SaveIfXMLInvalid>false</w:SaveIfXMLInvalid>
<w:IgnoreMixedContent>false</w:IgnoreMixedContent>
<w:AlwaysShowPlaceholderText>false</w:AlwaysShowPlaceholderText>
<w:Compatibility>
<w:SpaceForUL />
<w:BalanceSingleByteDoubleByteWidth />
<w:DoNotLeaveBackslashAlone />
<w:ULTrailSpace />
<w:DoNotExpandShiftReturn />
<w:AdjustLineHeightInTable />
<w:BreakWrappedTables />
<w:SnapToGridInCell />
<w:WrapTextWithPunct />
<w:UseAsianBreakRules />
<w:DontGrowAutofit />
<w:UseFELayout />
</w:Compatibility>
<w:BrowserLevel>MicrosoftInternetExplorer4</w:BrowserLevel>
</w:WordDocument>
</xml><![endif]--></p>
<p><!--[if gte mso 9]><xml>
<w:LatentStyles DefLockedState="false" LatentStyleCount="156">
</w:LatentStyles>
</xml><![endif]--><!--[if gte mso 10]>
<style>
/* Style Definitions */
table.MsoNormalTable
{mso-style-name:普通表格;
mso-tstyle-rowband-size:0;
mso-tstyle-colband-size:0;
mso-style-noshow:yes;
mso-style-parent:"";
mso-padding-alt:0cm 5.4pt 0cm 5.4pt;
mso-para-margin:0cm;
mso-para-margin-bottom:.0001pt;
mso-pagination:widow-orphan;
font-size:10.0pt;
font-family:"Times New Roman";
mso-fareast-font-family:"Times New Roman";
mso-ansi-language:#0400;
mso-fareast-language:#0400;
mso-bidi-language:#0400;}
</style>
<![endif]-->
<table width="100%" cellspacing="1" cellpadding="1" border="0" class="MsoNormalTable" style="width:100%;mso-cellspacing:.7pt;margin-left:0pt;mso-padding-alt:0cm 0cm 0cm 0cm">
<tbody>
<tr style="mso-yfti-irow:0;mso-yfti-firstrow:yes;height:22.7pt">
<td width="14%" style="width:14.86%;background:#00CCFF;padding:0cm 0cm 0cm 0cm;height:22.7pt"><p align="center" class="MsoNormal" style="text-align:center;mso-pagination:widow-orphan"><span style="font-family:宋体;mso-ascii-font-family:&quot;Times New Roman&quot;;mso-hansi-font-family:&quot;Times New Roman&quot;">操作用户</span></p></td>
<td width="12%" style="width:14.94%;background:#00CCFF;padding:0cm 0cm 0cm 0cm;height:22.7pt"><p align="center" class="MsoNormal" style="text-align:center;mso-pagination:widow-orphan"><span style="font-family:宋体;mso-ascii-font-family:&quot;Times New Roman&quot;;mso-hansi-font-family:&quot;Times New Roman&quot;;background:#00CCFF">操作</span><span style="font-family:宋体;mso-ascii-font-family:&quot;Times New Roman&quot;;mso-hansi-font-family:&quot;Times New Roman&quot;">服务器</span></p></td>
<td width="21%" style="width:26.2%;background:#00CCFF;padding:0cm 0cm 0cm 0cm;height:22.7pt"><p align="center" class="MsoNormal" style="text-align:center;mso-pagination:widow-orphan"><span style="font-family:宋体;mso-ascii-font-family:&quot;Times New Roman&quot;;mso-hansi-font-family:&quot;Times New Roman&quot;">创建时间</span></p></td>
<td width="13%" style="width:20.7%;background:#00CCFF;padding:0cm 0cm 0cm 0cm;height:22.7pt"><p align="center" class="MsoNormal" style="text-align:center;mso-pagination:widow-orphan"><span style="font-family:宋体;mso-ascii-font-family:&quot;Times New Roman&quot;;mso-hansi-font-family:&quot;Times New Roman&quot;">目标用户</span></p></td>
<td width="9%" style="width:9.3%;background:#00CCFF;padding:0cm 0cm 0cm 0cm;height:22.7pt"><p align="center" class="MsoNormal" style="text-align:center;mso-pagination:widow-orphan"><span style="font-family:宋体;mso-ascii-font-family:&quot;Times New Roman&quot;;mso-hansi-font-family:&quot;Times New Roman&quot;">操作类型</span></p></td>
<td width="9%" style="width:9.3%;background:#00CCFF;padding:0cm 0cm 0cm 0cm;height:22.7pt"><p align="center" class="MsoNormal" style="text-align:center;mso-pagination:widow-orphan"><span style="font-family:宋体;mso-ascii-font-family:&quot;Times New Roman&quot;;mso-hansi-font-family:&quot;Times New Roman&quot;">数据类型</span></p></td>
<td width="9%" style="width:9.3%;background:#00CCFF;padding:0cm 0cm 0cm 0cm;height:22.7pt"><p align="center" class="MsoNormal" style="text-align:center;mso-pagination:widow-orphan"><span style="font-family:宋体;mso-ascii-font-family:&quot;Times New Roman&quot;;mso-hansi-font-family:&quot;Times New Roman&quot;">ItemId</span></p></td>
<td width="5%" style="width:13.0%;background:#00CCFF;padding:0cm 0cm 0cm 0cm;height:22.7pt"><p align="center" class="MsoNormal" style="text-align:center;mso-pagination:widow-orphan"><span style="font-size:12.0pt;font-family:宋体;mso-bidi-font-family:宋体;mso-font-kerning:0pt">数量</span></p></td>
</tr>
<tr style="mso-yfti-irow:1;mso-yfti-lastrow:yes;height:22.75pt">
<td width="14%" style="width:14.86%;background:#EEEEEE;padding:0cm 0cm 0cm 0cm;height:22.75pt"><p align="center" class="MsoNormal" style="text-align:center;mso-pagination:widow-orphan"><span style="font-size:12.0pt;font-family:宋体;mso-bidi-font-family:宋体;mso-font-kerning:0pt">${userLog.userName}</span></p></td>
<td width="12%" style="width:14.94%;background:#EEEEEE;padding:0cm 0cm 0cm 0cm;height:22.75pt"><p align="center" class="MsoNormal" style="text-align:center;mso-pagination:widow-orphan"><span style="font-size:12.0pt;font-family:宋体;mso-bidi-font-family:宋体;mso-font-kerning:0pt">${userLog.serverName}</span></p></td>
<td width="21%" style="width:26.2%;background:#EEEEEE;padding:0cm 0cm 0cm 0cm;height:22.75pt"><p align="center" class="MsoNormal" style="text-align:center;mso-pagination:widow-orphan"><span lang="EN-US" style="font-size:12.0pt;font-family:宋体;mso-bidi-font-family:宋体;mso-font-kerning:0pt">${userLog.createTime?string('yyyy-MM-dd HH:mm:ss')}</span></p></td>
<td width="13%" style="width:20.7%;background:#EEEEEE;padding:0cm 0cm 0cm 0cm;height:22.75pt"><p align="center" class="MsoNormal" style="text-align:center;mso-pagination:widow-orphan"><span style="font-size:12.0pt;font-family:宋体;mso-bidi-font-family:宋体;mso-font-kerning:0pt">${userLog.desc}</span></p></td>
<td width="9%" style="width:9.3%;background:#EEEEEE;padding:0cm 0cm 0cm 0cm;height:22.75pt"><p align="center" class="MsoNormal" style="text-align:center;mso-pagination:widow-orphan"><span style="font-size:12.0pt;font-family:宋体;mso-bidi-font-family:宋体;mso-font-kerning:0pt"><#if userLog.type=1>添加物品<#elseif userLog.type=2>添加经验<#elseif userLog.type=3>添加金币<#elseif userLog.type= 4>添加免费军令<#elseif userLog.type=5>设置波次的星级</#if></span></p></td>
<td width="9%" style="width:9.3%;background:#EEEEEE;padding:0cm 0cm 0cm 0cm;height:22.75pt"><p align="center" class="MsoNormal" style="text-align:center;mso-pagination:widow-orphan"><span style="font-size:12.0pt;font-family:宋体;mso-bidi-font-family:宋体;mso-font-kerning:0pt"><#if userLog.type=1><#if userLog.itemType=1>货币<#elseif userLog.itemType=2>装备<#elseif userLog.itemType=3>物品<#elseif userLog.itemType=4>礼包<#elseif userLog.itemType=5>武将碎片<#elseif userLog.itemType=6>军旗<#elseif userLog.itemType=10>武将</#if><#elseif userLog.type=2>添加经验<#elseif userLog.type=3>添加金币<#elseif userLog.type= 4>添加免费军令<#elseif userLog.type=5>设置波次的星级</#if></span></p></td>
<td width="9%" style="width:9.3%;background:#EEEEEE;padding:0cm 0cm 0cm 0cm;height:22.75pt"><p align="center" class="MsoNormal" style="text-align:center;mso-pagination:widow-orphan"><span style="font-size:12.0pt;font-family:宋体;mso-bidi-font-family:宋体;mso-font-kerning:0pt"><#if userLog.type=1><#if userLog.itemType=1><#if userLog.itemId=1>银币<#elseif userLog.itemId=2>金币<#elseif userLog.itemId=3>功勋<#elseif userLog.itemId=4>经验<#elseif userLog.itemId=5>军令</#if><#else>${userLog.itemId}</#if></#if></span></p></td>
<td width="5%" style="width:13.0%;background:#EEEEEE;padding:0cm 0cm 0cm 0cm;height:22.75pt"><p align="center" class="MsoNormal" style="text-align:center;mso-pagination:widow-orphan"><span lang="EN-US" style="font-size:12.0pt;font-family:宋体;mso-bidi-font-family:宋体;mso-font-kerning:0pt">${userLog.itemNum}</span></p></td>
</tr>
</tbody>
</table>
</p>

View File

@ -0,0 +1 @@
${message}

View File

@ -0,0 +1,18 @@
<link href="${base}/res/cms/css/admin.css?20150524" rel="stylesheet" type="text/css"/>
<link href="${base}/res/cms/css/common.css" rel="stylesheet" type="text/css"/>
<link href="${base}/res/common/css/theme.css?20150524" rel="stylesheet" type="text/css"/>
<link href="${base}/res/common/css/jquery.validate.css" rel="stylesheet" type="text/css"/>
<link href="${base}/res/common/css/jquery.treeview.css" rel="stylesheet" type="text/css"/>
<link href="${base}/res/common/css/jquery.ui.css" rel="stylesheet" type="text/css"/>
<link href="${base}/res/common/css/base.css" rel="stylesheet" type="text/css"/>
<link href="${base}/tinyeditor/style.css" rel="stylesheet" type="text/css"/>
<script src="${base}/thirdparty/My97DatePicker/WdatePicker.js" type="text/javascript"></script>
<script src="${base}/res/common/js/jquery.js?20160305" type="text/javascript"></script>
<script src="${base}/res/common/js/jquery-ui-1.10.4.min.js" type="text/javascript"></script>
<script src="${base}/res/common/js/jquery.ext.js" type="text/javascript"></script>
<script src="${base}/tinyeditor/tinyeditor.js?20140529" type="text/javascript"></script>
<script type="text/javascript" src="${base}/thirdparty/kindeditor4/kindeditor-min.js"></script>
<script type="text/javascript" src="${base}/thirdparty/kindeditor4/lang/zh_CN.js"></script>
<script src="${base}/res/cms/js/admin.js?2016012002" type="text/javascript"></script>
<script src="${base}/res/common/js/base.js?201400623" type="text/javascript"></script>
<script src="${base}/res/common/js/pony.js" type="text/javascript"></script>

View File

@ -0,0 +1,14 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
<title>Administrator's Control Panel</title>
</head>
<frameset rows="72,*" frameborder="0" border="0" framespacing="0">
<frame src="top.rk" name="topFrame" noresize="noresize" id="leftFrame"/>
<frame src="index_main" name="mainFrame" id="rightFrame"/>
</frameset>
<noframes><body>
<p>该后台使用了框架技术,但是您的浏览器不支持框架,请升级您的浏览器以便正常访问该后台。</p>
</body></noframes>
</html>

View File

@ -0,0 +1,26 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
<title>cms-left</title>
<#include "/template/admin/head.ftl"/>
<script type="text/javascript">
$(function(){
Cms.lmenu('lmenu');
});
</script>
</head>
<body class="lbody">
<div class="left">
<#include "/template/admin/date.ftl"/>
<div class="fresh">
<table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td align="right" width="47"><img src="${base}/res/cms/img/admin/sxicon.gif" /></td>
<td height="28" align="left" width="60">&nbsp;&nbsp;<a href="javascript:location.href=location.href"><@s.m "global.refresh"/></a></td>
</tr>
</table>
</div>
</div>
</body>
</html>

View File

@ -0,0 +1,3 @@
<#list list as bean>
${bean.context}<br/>
</#list>

View File

@ -0,0 +1,104 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
<title>Administrator's Control Panel</title>
<#include "/template/admin/head.ftl"/>
<script type="text/javascript">
if(top!=this) {
top.location=this.location;
}
$(function() {
$("#username").focus();
$("#jvForm").validate();
});
function check_name(){
var url = '${base}/user/reg/check/name/';
$.ajax({
type: "post",
url: url,
data:{name:encodeURI($("#username").val())},
dataType: "json",
success: function(data){
var ok = data.ok;
if(ok)
{
$('#name_msg').html('可以使用次名字').show();
}else{
$('#name_msg').html('此名字已被占用');
}
},
error: function(XMLHttpRequest, textStatus, errorThrown){
alert(errorThrown);
}
});
}
</script>
<style type="text/css">
body{margin:0;padding:0;font-size:12px;background:url(${base}/res/cms/img/login/bg.jpg) top repeat-x;}
.input{width:150px;height:17px;border-top:1px solid #404040;border-left:1px solid #404040;border-right:1px solid #D4D0C8;border-bottom:1px solid #D4D0C8;}
</style>
</head>
<body>
<form id="jvForm" action="${base}/user/reg/save/name/" method="post">
<#if returnUrl??><input type="hidden" name="returnUrl" value="${returnUrl}"/></#if>
<#if processUrl??><input type="hidden" name="processUrl" value="${processUrl}"/></#if>
<table width="750" border="0" align="center" cellpadding="0" cellspacing="0">
<tr>
<td height="200">&nbsp;</td>
</tr>
<tr>
<td><table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td width="423" height="280" valign="top"><table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td><img src="${base}/res/cms/img/login/ltop.jpg" /></td>
</tr>
<tr>
<td><img src="${base}/res/cms/img/login/llogo.jpg" /></td>
</tr>
</table></td>
<td width="40" align="center" valign="bottom"><img src="${base}/res/cms/img/login/line.jpg" width="23" height="232" /></td>
<td valign="top"><table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td height="90" align="center" valign="bottom"><img src="${base}/res/cms/img/login/ltitle.jpg" /></td>
</tr>
<tr>
<td>
<div>
<ul>
<li>${obj}</li>
</ul>
</div>
<table width="100%" border="0" align="center" cellpadding="0" cellspacing="5">
<tr>
<td width="91" height="40" align="right"><strong> <@s.m "login.username"/></strong></td>
<td width="211"><input type="input" id="username" name="username" value="admin" vld="{required:true}" maxlength="100" class="input" onblur="check_name()"/><div id="name_msg" style="display:block;"></div></td>
</tr>
<#if errorRemaining?? && errorRemaining<=0>
<tr>
<td colspan="2" align="center"><img src="${base}/captcha.svl" onclick="this.src='${base}/captcha.svl?d='+new Date()*1"/></td>
</tr>
<tr>
<td height="40" align="right"><strong></strong></td>
<td><input name="captcha" type="text" id="captcha" vld="{required:true}" class="input"/></td>
</tr>
</#if>
<tr>
<td height="40" colspan="2" align="center">
<input type="image" src="${base}/res/cms/img/login/login.jpg" name="submit" />
&nbsp; &nbsp; <img name="reg" style="cursor: pointer" src="${base}/res/cms/img/login/reset.jpg" onclick="document.forms[0].reset()" /> </td>
</tr>
</table></td>
</tr>
</table></td>
</tr>
</table></td>
</tr>
</table>
</form>
<#include "../common/alert_message.html"/>
</body>
</html>

View File

@ -0,0 +1,12 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
<title>Administrator's Control Panel</title>
</head>
<frameset cols="227,*" frameborder="0" border="0" framespacing="0">
<frame src="left" name="leftFrame" noresize="noresize" id="leftFrame" />
<frame src="right" name="rightFrame" id="rightFrame" />
</frameset>
<noframes><body></body></noframes>
</html>

View File

@ -0,0 +1,59 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
<title>cms-left</title>
<#include "/template/admin/head.ftl"/>
<script type="text/javascript">
$(function() {
var msg = '欢迎登陆';
$.message({type: "warn", content: msg});
});
</script>
</head>
<body>
<div class="box-positon">
<h1><@s.m "global.position"/>: <@s.m "global.admin.home"/> - <@s.m "global.admin.index"/></h1>
</div>
<div class="body-box">
<div class="welcom-con">
<div class="we-txt">
<p>
</p>
</div>
<ul class="ms">
<li class="wxx">访问量</li><li class="attribute"><@s.m "system.server.select"/>  系统属性</li>
</ul>
<div class="ms-xx">
<div class="xx-xx">
</div>
<div class="attribute-xx" style="float:left">
<table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td width="30%" height="30" align="right">操作系统版本:</td>
<td height="30"><span class="black">${props['os.name']!} ${props['os.version']!}</span></td>
</tr>
<tr>
<td width="30%" height="30" align="right">操作系统类型:</td>
<td height="30"><span class="black">${props['os.arch']!} ${props['sun.arch.data.model']!}位</span> </td>
</tr>
<tr>
<td width="30%" height="30" align="right">用户、目录、临时目录:</td>
<td height="30"><span class="black">${props['user.name']!}, ${props['user.dir']!}, ${props['java.io.tmpdir']!}</span></td>
</tr><tr>
<td width="30%" height="30" align="right">JAVA运行环境</td>
<td height="30"><span>${props['java.runtime.name']!} ${props['java.runtime.version']!}</span></td>
</tr>
<tr>
<td width="30%" height="30" align="right">JAVA虚拟机</td>
<td height="30"> <span>${props['java.vm.name']!} ${props['java.vm.version']!}</span></td>
</tr>
</table>
</div>
</div>
</div>
</body>
</html>

View File

@ -0,0 +1,147 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
<title>Administrator's Control Panel - Powered by Rekoe</title>
<#include "/template/admin/head.ftl"/>
<style type="text/css">
*{margin:0;padding:0}
a:focus {outline:none;}
html{height:100%;overflow:hidden;}
body{height:100%;}
#top{ background-color:#1d63c6; height:71px; width:100%;}
.logo{width:209px; height:71px;}
.topbg{ height:71px;}
.login-welcome{padding-left:20px; color:#8099ae; font-size:12px;}
.login-welcome a:link,.login-welcome a:visited{color:#8099ae; text-decoration:none;}
#welcome {color: #8099ae;padding: 0 30px 0 5px;}
#logout {color: #8099ae; padding-left: 5px;}
.nav{height:28px; overflow:hidden;}
.nav-menu{ height:28px; list-style:none; font-size:13px;}
.nav .current {background: url(${base}/res/cms/img/admin/top_menu_selected.png) no-repeat center; color:#fff; text-align:center; width:100px; height:28px;}
.nav .current a{color:#093153;}
.nav-menu li {height:28px;text-align:center; line-height:28px; float:left; }
.nav-menu li a{color:#fff; font-weight:bold;}
.nav-menu li.sep{background: url(${base}/res/cms/img/admin/top_menu_Divideline.png) no-repeat; width:3px; height:13px; margin:9px 0 0 0;}
.nav .normal{text-align:center; width:100px;}
.undis{display:none;}
.dis{display:block;}
</style>
<script type="text/javascript">
function g(o){
return document.getElementById(o);
}
function HoverLi(m,n,counter){
for(var i=1;i<=counter;i++){
var a = g('tb_'+m+i);
if(a != null)
{
a.className='normal';
}
}
g('tb_'+m+n).className='current';
}
function changeSite(siteId) {
}
function redirectUrl(){
window.location.href = "${base}/user/login"
}
function logout()
{
$.dialog({type: "warn", content: "您确定要退出吗?", ok: "确 定", cancel: "取 消", modal: true, okCallback: redirectUrl});
$.message({type: data.status, content: data.message});
return true;
}
$(function(){
$('a').bind("focus", function(){
$(this).blur();
});
});
function bao(s){
$.get('${base}/admin/game_server/change/'+s, function(data) {
if (data['ok']) {
$("#s_selected option[value='+'s'+']").attr("selected","selected");
}
}, "json");
}
</script>
</head>
<body>
<div id="top">
<div class="top">
<table width="100%" border="0" cellspacing="0" cellpadding="0" style="background:url(${base}/res/cms/img/admin/newtopbg2.jpg) repeat-x;">
<tr>
<td width="209"><div class="logo"><img src="${base}/res/cms/img/admin/logo.gif" width="209" height="71" /></div></td>
<td valign="top" style="background:url(${base}/res/cms/img/admin/newtopbg1.jpg) no-repeat;">
<div class="topbg">
<div class="login-welcome">
<table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td width="320" height="38">
<img src="${base}/res/cms/img/admin/top_useinfo_icon_01.png"/>&nbsp;<span id="welcome"><@s.m code="global.admin.welcome"/> <@shiro.principal property="name"/></span>
<img src="${base}/res/cms/img/admin/top_useinfo_icon_02.png"/><a href="${base}/user/login" target="_top" id="logout" onclick="return confirm('<@s.m "global.confirm.logout"/>');"><@s.m "global.admin.logout"/></a>
</td>
<td align="right"></td>
<td width="100">
&nbsp;<a id="view_index" href="#" target="_blank"></a>
&nbsp;<a style="color:#FFF" href="javascript:alert($(document).width()+','+$(document).height())">【窗口大小】</a>
</td>
</tr>
</table>
</div>
<div class="nav" style="Z-INDEX:-1;">
<table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td></td>
<td>
<#assign max = 20>
<ul class="nav-menu">
<li class="current" id="tb_11" onclick="HoverLi(1,1,${max});"><a href="index_main" target="mainFrame"><@s.m "global.admin.home"/></a></li>
<@perm_chow perm="system.user,system.role,system.permission">
<li class="sep"></li><li class="normal" id="tb_12" onclick="HoverLi(1,2,${max});"><a href="frame/user/main" target="mainFrame">账号管理</a></li>
</@perm_chow>
<@perm_chow perm="oauth.client">
<li class="sep"></li><li class="normal" id="tb_13" onclick="HoverLi(1,3,${max});"><a href="frame/oauth_client/main" target="mainFrame">OauthClient</a></li>
</@perm_chow>
<@perm_chow perm="oauth.user">
<li class="sep"></li><li class="normal" id="tb_14" onclick="HoverLi(1,4,${max});"><a href="frame/oauth_user/main" target="mainFrame">OauthUser</a></li>
</@perm_chow>
<@perm_chow perm="system.notice">
<li class="sep"></li><li class="normal" id="tb_15" onclick="HoverLi(1,5,${max});"><a href="frame/notice/main" target="mainFrame">公告管理</a></li>
</@perm_chow>
<@perm_chow perm="game.server">
<li class="sep"></li><li class="normal" id="tb_16" onclick="HoverLi(1,6,${max});"><a href="frame/server/main" target="mainFrame"><@s.m "top.frame.server"/></a></li>
</@perm_chow>
<@perm_chow perm="admin:pay:refund">
<li class="sep"></li><li class="normal" id="tb_17" onclick="HoverLi(1,7,${max});"><a href="frame/pay_refund/main" target="mainFrame">退单处理</a></li>
</@perm_chow>
<@perm_chow perm="app.account">
<li class="sep"></li><li class="normal" id="tb_18" onclick="HoverLi(1,8,${max});"><a href="app/frame/account/main" target="mainFrame">平台账号</a></li>
</@perm_chow>
<@perm_chow perm="system.cdkey">
<li class="sep"></li><li class="normal" id="tb_19" onclick="HoverLi(1,9,${max});"><a href="frame/cdkey/main" target="mainFrame">CDKey</a></li>
</@perm_chow>
<@perm_chow perm="report">
<li class="sep"></li><li class="normal" id="tb_20" onclick="HoverLi(1,20,${max});"><a href="frame/report/main" target="mainFrame">数据汇报</a></li>
</@perm_chow>
<#if obj=true>
<li class="sep"></li><li class="normal" id="tb_21" onclick="HoverLi(1,21,${max});"><a href="frame/account/main" target="mainFrame">修改密码</a></li>
</#if>
</ul>
</td>
</tr>
</table>
</div>
</div>
</tr>
</table>
</div>
</div>
<div class="top-bottom"></div>
</body>
</html>

View File

@ -0,0 +1,31 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
<title></title>
<#include "/template/admin/head.ftl"/>
<script type="text/javascript">
$(function() {
$("#jvForm").validate();
});
</script>
</head>
<body>
<div class="box-positon">
<div class="rpos"><@s.m "global.position"/>: <@s.m "cmsAdminGlobal.function"/> - <@s.m "global.add"/></div>
<form class="ropt">
<input type="submit" value="<@s.m "global.backToList"/>" onclick="this.form.action='list.do';" class="return-button"/>
</form>
<div class="clear"></div>
</div>
<div class="body-box">
<#assign usernameExist><@s.m "error.usernameExist"/></#assign>
<@p.form id="jvForm" action="save" labelWidth="12">
<@p.text width="50" colspan="1" label="cmsUser.username" name="user.username" required="true" maxlength="100" vld="{required:true,username:true,remote:'check/username',messages:{remote:'${usernameExist}'}}"/><@p.tr/>
<@p.password width="50" colspan="1" label="cmsUser.password" id="userpassword" name="user.password" maxlength="100" class="required" required="true"/><@p.tr/>
<@p.radio width="50" colspan="1" label="cmsUser.status" name="user.state" value="false" list={"true":"global.true","false":"global.false"} required="true" help="cmsUser.status.help"/><@p.tr/>
<@p.td colspan="1"><@p.submit code="global.submit"/> &nbsp; <@p.reset code="global.reset"/></@p.td>
</@p.form>
</div>
</body>
</html>

View File

@ -0,0 +1,31 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
<title></title>
<#include "/template/admin/head.ftl"/>
<script type="text/javascript">
$(function() {
$("#jvForm").validate();
});
</script>
</head>
<body>
<div class="box-positon">
<div class="rpos"><@s.m "global.position"/>: <@s.m "cmsAdminGlobal.function"/> - <@s.m "global.add"/></div>
<form class="ropt">
<input type="submit" value="<@s.m "global.backToList"/>" onclick="this.form.action='list.do';" class="return-button"/>
</form>
<div class="clear"></div>
</div>
<div class="body-box">
<#assign usernameExist><@s.m "error.usernameExist"/></#assign>
<@p.form id="jvForm" action="save_user" labelWidth="12">
<@p.text width="50" colspan="1" label="cmsUser.name" name="user.name" required="true" maxlength="100" vld="{required:true,username:true,remote:'check/username',messages:{remote:'${usernameExist}'}}"/><@p.tr/>
<@p.password width="50" colspan="1" label="cmsUser.password" id="user.password" name="user.password" maxlength="100" class="required" required="true"/><@p.tr/>
<@p.radio width="50" colspan="1" label="cmsUser.status" name="user.accountLocked" value="false" list={"true":"global.true","false":"global.false"} required="true" help="cmsUser.status.help"/><@p.tr/>
<@p.td colspan="1"><@p.submit code="global.submit"/> &nbsp; <@p.reset code="global.reset"/></@p.td>
</@p.form>
</div>
</body>
</html>

View File

@ -0,0 +1,97 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
<title></title>
<#include "/template/admin/head.ftl"/>
<script type="text/javascript">
$(function() {
$("#serverDialog").dialog({
autoOpen: false,
modal: true,
width: 280,
height: 420,
position: ["center",20],
buttons: {
"OK": function() {
$(this).dialog("close");
}
},
close: function(event, ui) {
var s="";
$('#serverids option:selected').each(function(){
s += "<input type='hidden' name='serverIds' value='" +$(this).val()+ "'/>";
});
$("#serverIdsContainer").empty().append(s);
}
});
var servers_opened = false;
$('#server').click(function(){
if(!servers_opened) {
$.get("${base}/admin/server/v_servers_edit",{"id":${obj.id}},function(s) {
$(s).appendTo("#serverids");
});
servers_opened = true;
}
$('#serverDialog').dialog('open');
return false;
});
});
function disservers(chk) {
$("#allServer").val(chk);
if(chk) {
$("#serverids").addClass("disabled").attr("disabled","disabled").children().each(function(){$(this).removeAttr("selected")});
$("#serverIdsContainer").empty();
} else {
$("#serverids").removeAttr("disabled").removeClass("disabled");
}
}
</script>
</head>
<body>
<div class="box-positon">
<div class="rpos"><@s.m "global.position"/>: <@s.m "cmsAdminGlobal.function"/> - <@s.m "global.add"/></div>
<form class="ropt">
<input type="submit" value="<@s.m "global.backToList"/>" onclick="this.form.action='list';" class="return-button"/>
</form>
<div class="clear"></div>
</div>
<div class="body-box">
<@p.form id="jvForm" action="update" labelWidth="12">
<input type="hidden" name="id" value=${obj.id}>
<@p.td width="50" colspan="1" label="cmsUser.username">${obj.name}</@p.td><@p.tr/>
<@p.td colspan="1" label="cmsRole.group">
<#list roleList as role>
<#assign isContain = false>
<#list obj.roles as urole>
<#if role.id== urole.id>
<#assign isContain = true>
<#break>
</#if>
</#list>
<label><input value="${role.id}" type="checkbox" name="roleIds" <#if isContain>checked="checked"</#if> />${role.description}</label><br />
</#list></@p.td><@p.tr/>
<@p.td colspan="1" label="cms.server.set" required="true">
<input id="server" type="button" value="<@s.m "cms.server.select"/>"/>
<input type="hidden" id="allServer" name="allServer" value="${allServer?string('true','false')}"/>
<span id="serverIdsContainer">
<#list serverList as cid>
<#list obj.servers?keys as key>
<#if key==cid.id>
<input type="hidden" name="serverIds" value="${cid.id}"/>
<#break>
</#if>
</#list>
</#list>
</span>
<div id="serverDialog" title="<@s.m "cmsUser.channels"/><@s.m "cms.server.list"/>" style="display:none;">
<label><input type="checkbox" onclick="disservers(this.checked)"<#if allServer> checked="checked"</#if>/><@s.m "cmsUser.servers.allserver"/></label>
<select id="serverids"<#if allServer> disabled="disabled" class="disabled"</#if> multiple="multiple" size="15" style="width:100%;" name="serverids"></select>
</div>
<div style="clear:both"></div>
</@p.td><@p.tr/>
<@p.td colspan="1"><@p.submit code="global.submit"/> &nbsp; <@p.reset code="global.reset"/></@p.td><@p.tr/>
</@p.form>
</div>
</body>
</html>

View File

@ -0,0 +1,44 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
<title></title>
<#include "/template/admin/head.ftl"/>
<script type="text/javascript">
$(function(){
<#list m.roles as role>
$("#c_${role.id}").attr("checked",true);
</#list>
});
function setRole(o){
var id = o.value;
var u = ${m.id};
var action = o.checked;
var url='${base}/admin/admin/user/role';
$.post(url,{id:u,role:id,action:action},function(data){
if(!data.success){
alert("<@s.m "cmsRole.setrole.err.function"/>);
}
},'json');
}
</script>
</head>
<body>
<div class="box-positon">
<div class="rpos"><@s.m "global.position"/>: <@s.m "cmsAdminGlobal.function"/> - <@s.m "global.list"/></div>
<div class="clear"></div>
</div>
<div class="body-box">
<form id="tableForm" method="post">
<input type="hidden" name="pageNumber" value="${pageNo!}"/>
<@p.table value=pagination;role,i,has_next><#rt/>
<@p.column title="ID" align="center">${role.id}</@p.column><#t/>
<@p.column code="cmsRole.name" align="center">${role.name}</@p.column><#t/>
<@p.column code="global.operate" align="center">
<input type="checkbox" value="${role.id}" onclick="setRole(this)" id="c_${role.id}"/>
</@p.column><#t/>
</@p.table>
</form>
</div>
</body>
</html>

View File

@ -0,0 +1,39 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
<title>GM-ManagerSystem</title>
<#include "/template/admin/head.ftl"/>
<script type="text/javascript">
$(function(){
Cms.lmenu('lmenu');
});
</script>
<style>
h3{ padding:0; margin:0; font-weight:normal; font-size:12px;}
</style>
</head>
<body class="lbody">
<div class="left">
<#include "/template/admin/date.ftl"/>
<ul class="w-lful"><li><a href="right.rk" target="rightFrame"><@s.m "global.admin.index"/></a></li></ul>
<@perm_chow perm="system.user">
<h3>账号管理</h3>
<div style="margin:0; padding:0;">
<div class="leftmenuBG"><a href="${base}/admin/user/list" target="rightFrame"><@s.m "cmsAdminGlobal.function"/></a></div>
<div class="leftmenuBG"><a href="${base}/admin/user/add_user" target="rightFrame"><@s.m "cms.function.add.user"/></a></div>
</div>
</@perm_chow>
<@perm_chow perm="system.role">
<ul class="w-lful"><li><a href="${base}/admin/role/list" target="rightFrame"><@s.m "cmsRole.function"/></a></li></ul>
</@perm_chow>
<@perm_chow perm="system.permission">
<h3>权限管理</h3>
<div style="margin:0; padding:0;">
<div class="leftmenuBG"><a href="${base}/admin/permission/list" target="rightFrame">权限列表</a></div>
<div class="leftmenuBG"><a href="${base}/admin/permission/category/list" target="rightFrame"><@s.m "admin.main.permissionCategory"/></a></div>
</div>
</@perm_chow>
</div>
</body>
</html>

View File

@ -0,0 +1,12 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
<title>cms-main</title>
</head>
<frameset cols="227,*" frameborder="0" border="0" framespacing="0">
<frame src="left" name="leftFrame" noresize="noresize" id="leftFrame" />
<frame src="right" name="rightFrame" id="rightFrame" />
</frameset>
<noframes><body></body></noframes>
</html>

View File

@ -0,0 +1,16 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
<title>cms-left</title>
<#include "/template/admin/head.ftl"/>
</head>
<body>
<div class="box-positon">
<div class="rpos"><@s.m "global.position"/>: <@s.m "global.admin.home"/> - <@s.m "global.admin.index"/></div>
<div class="clear"></div>
</div>
<div class="body-box">
</div>
</body>
</html>

View File

@ -0,0 +1,67 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
<title></title>
<#include "/template/admin/head.ftl"/>
<script type="text/javascript">
$().ready(function(){
function redirectUrl(){
window.location.href = "list.action"
}
})
function getTableForm() {
return document.getElementById('tableForm');
}
function lockUser(id,isLocked) {
$.dialog({
type: "warn",
content: '<@s.m "admin.dialog.updateConfirm"/>',
ok: '<@s.m "admin.dialog.ok"/>',
cancel: '<@s.m "admin.dialog.cancel"/>',
onOk: function() {
$.ajax({
url: "lock.rk",
type: "POST",
data: {"id":id},
dataType: "json",
cache: false,
success: function(message) {
$.message(message);
if (message.type == "success")
{
window.location.href = "list.rk"
}
}
});
}
});
}
</script>
</head>
<body>
<div class="box-positon">
<div class="rpos"><@s.m "global.position"/>: <@s.m "cmsAdminGlobal.function"/> - <@s.m "global.list"/></div>
<div class="clear"></div>
</div>
<div class="body-box">
<form id="tableForm" method="post">
<input type="hidden" name="pageNumber" value="${pageNo!}"/>
<@p.table value=obj;cmsUser,i,has_next><#rt/>
<@p.column title="ID" align="center">${i+1}</@p.column><#t/>
<@p.column code="login.username" align="center">${cmsUser.name}</@p.column><#t/>
<@p.column code="user.lastlogintime" align="center">${cmsUser.createDate?string('yyyy-MM-dd HH:mm:ss')}</@p.column><#t/>
<@p.column code="user.lastloginip" align="center">${cmsUser.registerIp}</@p.column><#t/>
<@shiro.hasPermission name="system.user.update">
<@p.column code="user.lock" align="center"><div id="lock_${cmsUser.id}"><#if cmsUser.locked><span style="color:red"><@s.m "global.true"/></span><#else><@s.m "global.false"/></#if></div></@p.column><#t/>
<@p.column code="global.operate" align="center">
<a href="edit?id=${cmsUser.id}" class="pn-opt"><@s.m "global.edit"/></a> <#rt/>
<a href="javascript:void(0)" onclick="lockUser('${cmsUser.id}','<#if cmsUser.locked>true<#else>false</#if>')" class="pn-opt"><#if cmsUser.locked><span style="color:red"><@s.m "user.unlock"/></span><#else><@s.m "user.lock"/></#if></a><#t/>
</@p.column><#t/>
</@shiro.hasPermission>
</@p.table>
</form>
</div>
</body>
</html>

View File

@ -0,0 +1,37 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
<title></title>
<#include "/template/admin/head.ftl"/>
</head>
<body>
<div class="box-positon">
<div class="rpos"><@s.m "global.position"/>: <@s.m "permission.permissionCategory"/> - <@s.m "global.add"/></div>
<form class="ropt">
<input type="submit" value="<@s.m "global.backToList"/>" onclick="this.form.action='list';" class="return-button"/>
</form>
<div class="clear"></div>
</div>
<div class="body-box">
<@p.form id="jvForm" action="save" labelWidth="15" method="post">
<@p.text colspan="1" width="45" label="cmsRole.name" name="name" required="true" value="" class="required" maxlength="100"/><@p.tr/>
<tr>
<th width="15%" class="pn-flabel pn-flabel-h"><span class="pn-frequired">*</span><@s.m "permission.permissionCategory" />:</th>
<td width="30%" class="pn-fcontent">
<select name="permissionCategoryId" >
<#list obj as permissionCategory>
<option value="${permissionCategory.id}">${permissionCategory.name}</option>
</#list>
</select>
</td>
</tr>
<tr>
<th width="15%" class="pn-flabel pn-flabel-h"><@s.m "permission.description" />:</th>
<td width="30%" class="pn-fcontent"><textarea name="description" cols="50" rows="5" class="textbox"></textarea></td>
</tr>
<@p.td colspan="2"><@p.submit code="global.submit"/> &nbsp; <@p.reset code="global.reset"/></@p.td>
</@p.form>
</div>
</body>
</html>

View File

@ -0,0 +1,40 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
<title></title>
<#include "/template/admin/head.ftl"/>
</head>
<body>
<div class="box-positon">
<div class="rpos"><@s.m "global.position"/>: <@s.m "permission.permissionCategory"/> - <@s.m "global.add"/></div>
<form class="ropt">
<input type="submit" value="<@s.m "global.backToList"/>" onclick="this.form.action='list';" class="return-button"/>
</form>
<div class="clear"></div>
</div>
<div class="body-box">
<@p.form id="jvForm" action="update" labelWidth="15" method="post">
<input type="hidden" name="permission.id" value="${permission.id}" />
<@p.text colspan="1" width="45" label="cmsRole.name" name="name" required="true" value=permission.name class="required" maxlength="100"/><@p.tr/>
<tr>
<th width="15%" class="pn-flabel pn-flabel-h"><span class="pn-frequired">*</span><@s.m "permission.permissionCategory" />:</th>
<td width="30%" class="pn-fcontent">
<select name="permission.permissionCategoryId" >
<#list obj as permissionCategory>
<option value="${permissionCategory.id}"<#if permission.permissionCategoryId == permissionCategory.id> selected="selected"</#if>>
${permissionCategory.name}
</option>
</#list>
</select>
</td>
</tr>
<tr>
<th width="15%" class="pn-flabel pn-flabel-h"><@s.m "permission.description" />:</th>
<td width="30%" class="pn-fcontent"><textarea name="description" cols="50" rows="5" class="textbox">${permission.description?html}</textarea></td>
</tr>
<@p.td colspan="2"><@p.submit code="global.submit"/> &nbsp; <@p.reset code="global.reset"/></@p.td>
</@p.form>
</div>
</body>
</html>

View File

@ -0,0 +1,44 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
<title></title>
<#include "/template/admin/head.ftl"/>
<script type="text/javascript">
function getTableForm() {
return document.getElementById('tableForm');
}
</script>
</head>
<body>
<div class="box-positon">
<div class="rpos"><@s.m "global.position"/>: <@s.m "cmsRole.function"/> - <@s.m "global.list"/></div>
<@shiro.hasPermission name="system.role.permission">
<form class="ropt">
<input class="add" type="submit" value="<@s.m "global.add"/>" onclick="this.form.action='add';"/>
</form>
</@shiro.hasPermission>
<div class="clear"></div>
</div>
<div class="body-box">
<form id="tableForm" method="post">
<input type="hidden" name="pageNumber" value="${pageNumber!}"/>
<@p.table value=obj;permission,i,has_next><#rt/>
<@p.column title="ID" align="center">${permission.id}</@p.column><#t/>
<@p.column title="名称" align="center">&nbsp;&nbsp;${permission.name}</@p.column><#t/>
<@p.column title="描述" align="center">&nbsp;&nbsp;<@htmlCut s=permission.description len=50 append='...' /></@p.column><#t/>
<@shiro.hasPermission name="system.permission:edit">
<@p.column code="button.submit.opt" align="center">
<a href="edit?id=${permission.id}" class="pn-opt"><@s.m "global.edit.role.permission"/></a><#rt/>
</@p.column><#t/>
</@shiro.hasPermission>
<@shiro.hasPermission name="system.permission:delete">
<@p.column code="button.submit.opt" align="center">
<a href="edit?id=${permission.id}" class="pn-opt"><@s.m "global.edit.role.permission"/></a><#rt/>
</@p.column><#t/>
</@shiro.hasPermission>
</@p.table>
</form>
</div>
</body>
</html>

View File

@ -0,0 +1,28 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
<title></title>
<#include "/template/admin/head.ftl"/>
<script type="text/javascript">
$(function(){
$("#jvForm").validate();
});
</script>
</head>
<body>
<div class="box-positon">
<div class="rpos"><@s.m "global.position"/>: <@s.m "admin.main.permissionCategory"/> - <@s.m "global.add"/></div>
<form class="ropt">
<input type="submit" value="<@s.m "global.backToList"/>" onclick="this.form.action='list';" class="return-button"/>
</form>
<div class="clear"></div>
</div>
<div class="body-box">
<@p.form id="jvForm" action="save" labelWidth="15" method="post">
<@p.text colspan="1" width="45" label="permissionCategory.name" name="name" required="true" value="" class="required" maxlength="100"/><@p.tr/>
<@p.td colspan="2"><@p.submit code="global.submit"/> &nbsp; <@p.reset code="global.reset"/></@p.td>
</@p.form>
</div>
</body>
</html>

View File

@ -0,0 +1,29 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
<title></title>
<#include "/template/admin/head.ftl"/>
<script type="text/javascript">
$(function(){
$("#jvForm").validate();
});
</script>
</head>
<body>
<div class="box-positon">
<div class="rpos"><@s.m "global.position"/>: <@s.m "permission.permissionCategory"/> - <@s.m "global.add"/></div>
<form class="ropt">
<input type="submit" value="<@s.m "global.backToList"/>" onclick="this.form.action='list';" class="return-button"/>
</form>
<div class="clear"></div>
</div>
<div class="body-box">
<@p.form id="jvForm" action="update" labelWidth="15" method="post">
<input type="hidden" name="id" value="${obj.id}" />
<@p.text colspan="1" width="45" label="cmsRole.name" name="name" required="true" value=obj.name class="required" maxlength="100"/><@p.tr/>
<@p.td colspan="2"><@p.submit code="global.submit"/> &nbsp; <@p.reset code="global.reset"/></@p.td>
</@p.form>
</div>
</body>
</html>

View File

@ -0,0 +1,40 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
<title></title>
<#include "/template/admin/head.ftl"/>
<script type="text/javascript">
function getTableForm() {
return document.getElementById('tableForm');
}
</script>
</head>
<body>
<div class="box-positon">
<div class="rpos"><@s.m "global.position"/>: <@s.m "cmsRole.function"/> - <@s.m "global.list"/></div>
<@shiro.hasPermission name="system.role.permissioncategory">
<form class="ropt">
<input class="add" type="submit" value="<@s.m "global.add"/>" onclick="this.form.action='add';"/>
</form>
</@shiro.hasPermission>
<div class="clear"></div>
</div>
<div class="body-box">
<form id="tableForm" method="post">
<input type="hidden" name="pageNumber" value="${pageNumber!}"/>
<@p.table value=obj;permissionCategory,i,has_next><#rt/>
<@p.column title="ID" align="center">${permissionCategory.id}</@p.column><#t/>
<@p.column title="名称" align="center">&nbsp;&nbsp;${permissionCategory.name}</@p.column><#t/>
<@shiro.hasPermission name="system.role.permissioncategory">
<@p.column code="button.submit.opt" align="center">
<a href="edit.rk?id=${permissionCategory.id}">[<@s.m "admin.common.edit" />]</a>
<a href="javascript:;" class="delete" val="${permissionCategory.id}">[<@s.m "admin.common.delete" />]</a>
<a href="${base}/admin/permission/list_category/${permissionCategory.id}.rk">[<@s.m "admin.common.view" />]</a>
</@p.column><#t/>
</@shiro.hasPermission>
</@p.table>
</form>
</div>
</body>
</html>

View File

@ -0,0 +1,38 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
<title></title>
<#include "/template/admin/head.ftl"/>
</head>
<body>
<div class="box-positon">
<div class="rpos"><@s.m "global.position"/>: <@s.m "cmsRole.group"/> - <@s.m "global.add"/></div>
<form class="ropt">
<input type="submit" value="<@s.m "global.backToList"/>" onclick="this.form.action='list';" class="return-button"/>
</form>
<div class="clear"></div>
</div>
<div class="body-box">
<@p.form id="jvForm" action="save" labelWidth="15" method="post">
<@p.text colspan="1" width="45" label="cmsRole.name" name="name" required="true" value="" class="required" maxlength="100"/><@p.tr/>
<@p.text colspan="1" width="45" label="描述" name="description" required="true" value="" class="required" maxlength="100"/><@p.tr/>
<#list obj as permissionCategory>
<#if permissionCategory.id!="2">
<tr class="authorities">
<th width="15%" class="pn-flabel pn-flabel-h"><a href="javascript:;" class="selectAll" title="<@s.m "admin.role.selectAll" />">${permissionCategory.name}</a></th>
<td width="30%" class="pn-fcontent">
<span class="fieldSet">
<#list permissionCategory.permissions as permission>
<label><input value="${permission.id}" type="checkbox" name="authorities">${permission.description} </label>
</#list>
</span>
</td>
</tr>
</#if>
</#list>
<@p.td colspan="2"><@p.submit code="global.submit"/> &nbsp; <@p.reset code="global.reset"/></@p.td>
</@p.form>
</div>
</body>
</html>

View File

@ -0,0 +1,72 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
<title></title>
<#include "/template/admin/head.ftl"/>
<style type="text/css">
.authorities label {
min-width: 120px;
_width: 120px;
display: block;
float: left;
padding-right: 4px;
_white-space: nowrap;
}
</style>
<script type="text/javascript">
$().ready(function() {
var $inputForm = $("#jvForm");
var $selectAll = $("#jvForm .selectAll");
$selectAll.click(function() {
var $this = $(this);
var $thisCheckbox = $this.closest("tr").find(":checkbox");
if ($thisCheckbox.filter(":checked").size() > 0) {
$thisCheckbox.prop("checked", false);
} else {
$thisCheckbox.prop("checked", true);
}
return false;
});
});
</script>
</head>
<body>
<div class="box-positon">
<div class="rpos"><@s.m "global.position"/>: <@s.m "cmsRole.function"/> - <@s.m "global.add"/></div>
<form class="ropt">
<input type="submit" value="<@s.m "global.backToList"/>" onclick="this.form.action='list';" class="return-button"/>
</form>
<div class="clear"></div>
</div>
<div class="body-box">
<@p.form id="jvForm" action="update" labelWidth="15" method="post">
<input type="hidden" name="role.id" value=${obj.id}>
<@p.text colspan="1" width="45" label="cmsRole.name" name="name" required="true" value=obj.name class="required" maxlength="100"/><@p.tr/>
<@p.text colspan="1" width="45" label="cmsRole.name" name="role.description" required="true" value=obj.description class="required" maxlength="100"/><@p.tr/>
<#list pcList as permissionCategory>
<#if permissionCategory.id!="2">
<tr class="authorities">
<th width="15%" class="pn-flabel pn-flabel-h"><a href="javascript:;" class="selectAll" title="<@s.m "admin.role.selectAll" />">${permissionCategory.name}</a></th>
<td width="30%" class="pn-fcontent">
<span class="fieldSet">
<#list permissionCategory.permissions as permission>
<label><input value="${permission.id}" type="checkbox"
<#list obj.permissions as p>
<#if permission.id = p.id>
checked="checked"
<#break>
</#if>
</#list>
name="authorities">${permission.description} </label>
</#list>
</span>
</td>
</tr>
</#if>
</#list>
<@p.td colspan="2"><@p.submit code="global.submit"/> &nbsp; <@p.reset code="global.reset"/></@p.td>
</@p.form>
</div>
</body>
</html>

View File

@ -0,0 +1,38 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
<title></title>
<#include "/template/admin/head.ftl"/>
<script type="text/javascript">
function getTableForm() {
return document.getElementById('tableForm');
}
</script>
</head>
<body>
<div class="box-positon">
<div class="rpos"><@s.m "global.position"/>: <@s.m "cmsRole.function"/> - <@s.m "global.list"/></div>
<@shiro.hasPermission name="system.role.add">
<form class="ropt">
<input class="add" type="submit" value="<@s.m "global.add"/>" onclick="this.form.action='add';"/>
</form>
</@shiro.hasPermission>
<div class="clear"></div>
</div>
<div class="body-box">
<form id="tableForm" method="post">
<@p.table value=obj;cmsRole,i,has_next><#rt/>
<@p.column title="ID" align="center">${cmsRole.id}</@p.column><#t/>
<@p.column code="cmsRole.name">&nbsp;&nbsp;${cmsRole.name}</@p.column><#t/>
<@p.column code="cmsRole.forfirst">&nbsp;&nbsp;${cmsRole.description}</@p.column><#t/>
<@shiro.hasPermission name="system.role.edit">
<@p.column code="button.submit.opt" align="center">
<a href="edit?id=${cmsRole.id}" class="pn-opt"><@s.m "global.edit.role.permission"/></a><#rt/>
</@p.column><#t/>
</@shiro.hasPermission>
</@p.table>
</form>
</div>
</body>
</html>

View File

@ -0,0 +1,85 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8" />
<title><@s.m "front.account.create" />- Powered By Rekoe Cms</title>
<meta name="author" content="Rekoe Cms Team" />
<meta name="copyright" content="Rekoe Cms" />
<meta name="keywords" content="Rekoe Cms Game" />
<meta name="description" content="Rekoe Cms Game" />
<link href="${base}/res/common/css/common.css" rel="stylesheet" type="text/css" />
<link href="${base}/res/common/css/error.css" rel="stylesheet" type="text/css" />
<script type="text/javascript" src="${base}/res/common/js/jquery.js"></script>
<script type="text/javascript" src="${base}/res/common/js/jquery.ext.js"></script>
<script type="text/javascript">
$(function(){
var $inputForm = $("#inputForm");
$inputForm.validate({
rules: {
username: {
required: true,
pattern: /^[0-9a-z_A-Z\u4e00-\u9fa5]+$/,
minlength: 1,
maxlength: 10,
remote: {
url: "admin/check/username",
cache: false
}
},
password: {
required: true,
pattern: /^[^\s&\"<>]+$/,
minlength: 1,
maxlength: 10
},
rePassword: {
required: true,
equalTo: "#password"
}
},
messages: {
username: {
pattern: "<@s.m "admin.validate.illegal" />",
remote: "<@s.m "admin.member.disabledExist" />"
},
password: {
pattern: "<@s.m "admin.validate.illegal" />"
}
}
});
});
</script>
</head>
<body>
<div class="container articleList">
<div class="path">
<a href="${base}/admin/common/index.rk"><@s.m "admin.path.index" /></a> &raquo; <@s.m "admin.member.reg" />
</div>
<form id="inputForm" action="${base}/admin/admin/profile/re_update" method="post">
<table class="input tabContent">
<tr>
<th><span class="requiredField">*</span><@s.m "Member.username" />:</th>
<td><input type="text" name="username" class="text" maxlength="20" /></td>
</tr>
<tr>
<th><span class="requiredField">*</span><@s.m "Member.password" />:</th>
<td><input type="password" id="password" name="password" class="text" maxlength="20" /></td>
</tr>
<tr>
<th><span class="requiredField">*</span><@s.m "admin.member.rePassword" />:</th>
<td><input type="password" name="rePassword" class="text" maxlength="20" /></td>
</tr>
</table>
<table class="input">
<tr>
<th>&nbsp;</th>
<td>
<input type="submit" class="button" value="<@s.m "admin.common.submit" />" />
<input type="button" id="backButton" class="button" value="<@s.m "admin.common.back" />" />
</td>
</tr>
</table>
</form>
</div>
</body>
</html>

View File

@ -0,0 +1,207 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "//www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="//www.w3.org/1999/xhtml" xml:lang="en" lang="en" xmlns:fb="//www.facebook.com/2008/fbml">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Hero</title>
<script type="text/javascript">
document.domain = "shanggame.net";
</script>
<script type="text/javascript" src="${base}/res/common/js/jquery.js"></script>
<script src="${base}/res/front/facebook/js/facebook.js?20140923" type="text/javascript"></script>
<script type="text/javascript" src="${base}/res/front/facebook/js/common.js?2010043004"></script>
<link rel="stylesheet" href="${base}/res/front/facebook/css/style.css?2015100814" />
<script type="text/javascript" src="${base}/res/front/facebook/js/full.js?10"></script>
<div id="fb-root"></div>
<script>
window.fbAsyncInit = function() {
FB.init({
appId : '${appId}', // App ID from the App Dashboard
channelUrl : '', // Channel File for x-domain communication
status : true, // check the login status upon init?
cookie : true, // set sessions cookies to allow your server to access the session?
xfbml : true, // parse XFBML tags on this page?
version : 'v2.0'
});
};
// Load the SDK's source Asynchronously
// Note that the debug version is being actively developed and might
// contain some type checks that are overly strict.
// Please report such bugs using the bugs tool.
(function(d, debug){
var js, id = 'facebook-jssdk', ref = d.getElementsByTagName('script')[0];
if (d.getElementById(id)) {return;}
js = d.createElement('script'); js.id = id; js.async = true;
js.src = "//connect.facebook.net/en_US/sdk.js#version=v2.0&xfbml=1&appId=${appId}";
ref.parentNode.insertBefore(js, ref);
}(document, /*debug*/ false));
function game_feed(picture, name, caption, description, shareid) {
//postToFeed("https://apps.facebook.com/${namespace}/", picture, name, caption, description, shareid);
postToFeed("${feed_upstream_url}", picture, name, caption, description, shareid);
}
function friendsList()
{
friendList('${user.id}');
}
var server_sid = ${zone.sid};
$(function(){
$("a[href^='mailto:']").on("click",function() {
window.top.location = $(this).prop("href");
return false;
});
$("#one5").bind("click",function(){
flush_v(1);
});
$("#inputForm").submit();
});
function selectServer(sid) {
window.onbeforeunload = function(e) {
return;
};
if (server_sid == sid) {
$(".header_tab li").eq(0).click();
} else {
$.ajax({
type: "POST",
contentType: "application/json",
dataType: "json",
url: '${base}/facebook/change/' + sid +'/'+${user.id},
success: function (data) {
if(data.ok)
{
$("#inputForm").attr("action", data.data.url+'/facebook/login/');
$("#v").val(0);
$("#inputForm").submit();
$("#server_select").html('S'+data.data.sid+':'+data.data.name);
server_sid = data.data.sid;
}
$(".header_tab li").eq(0).click();
}
});
}
}
function flush_v(v) {
window.onbeforeunload = function(e) {
return;
};
$("#v").val(v);
$("#inputForm").submit();
}
</script>
</head>
<body style="background:url(${base}/res/front/facebook/images/body_bg.jpg) repeat 0px 5px;">
<div class="oas_top">
<div class="oastop_right">
<div class="oastop_close"><img src="${base}/res/front/facebook/images/close.png" alt="close"></div>
<div class="time">
<span>Server time:</span>
<p class="time_num"></p>
</div>
</div>
<script type="text/javascript">
function Estime(){
d=new Date(); //创建一个Date对象
localTime = d.getTime();
localOffset=d.getTimezoneOffset()*60000; //获得当地时间偏移的毫秒数
utc = localTime + localOffset; //utc即GMT时间
offset = +17; //时区
hawaii = utc + (3600000*offset);
nd = new Date(hawaii);
var Hours = nd.getHours();
if(Hours<10){
Hours = "0"+Hours;
}
var Minutes = nd.getMinutes();
if(Minutes<10){
Minutes = "0"+Minutes;
}
var Seconds = nd.getSeconds();
if(Seconds<10){
Seconds = "0"+Seconds;
}
$(".time_num").html(Hours+":"+Minutes+":"+Seconds);
setTimeout("Estime()",1000);
}
Estime();
</script>
</div>
<div id='wrap' class='w980'>
<div class='wrap_content'>
<div id='mask'></div>
<div class='tc_box' style='display:none;'>
<a href='javascript:void(0);' class='close_c'><img src='${base}/res/front/facebook/images/close_c.png' border='0' /></a>
<p style='margin-top:30px;'>
<b>添加到收藏夹:</b><br /> 首页在Facebook 保护发现左侧边栏点击铅笔标记, 您可以添加游戏到您的收藏夹。然后我的最爱 您可以轻松地登录使用的防护收藏夹.
</p>
<p class='clearfix' style='padding-bottom:40px;'>
<img src='${base}/res/front/facebook/images/tc_img01.jpg' border='0' />
<img src='${base}/res/front/facebook/images/tc_img03.jpg' border='0' style='margin-top:190px;' />
<img src='${base}/res/front/facebook/images/tc_img02.jpg' border='0' />
</p>
</div>
<div class='wrap_header'>
<div class='logo'>
<img src='${base}/res/front/facebook/images/logo.png' border='0' />
</div>
<!-- <div style='z-index:9;'>
<div id='invited_id' onclick="facebook_inviteFriend();"></div>
</div> -->
<ul class='header_tab clearfix'>
<li id='one1' class='tab_bg_a'></li>
<li id='one2' class='tab_bg_b'></li>
<li id='one3' class='tab_bg_c' onclick="pay();return false;"></li>
<li id="one4" onclick="window.open('https://www.facebook.com/mjfxtd')" class="tab_bg_d"></li>
<!-- li id="one7" onclick="window.open('https://apps.facebook.com/${namespace}/faq/content.html')" class="tab_bg_e"></li -->
<li id='one5' class='tab_bg_f'></li>
</ul>
<p class='fwq' id="server_select" style="cursor:pointer" title="(click to change server)">S${zone.sid}:${zone.name}</p>
<div class='like'>
<iframe src="//www.facebook.com/plugins/like.php?href=https%3A%2F%2Fwww.facebook.com%2Fherodefenseonline&amp;width&amp;layout=button_count&amp;action=like&amp;show_faces=true&amp;share=false&amp;height=21&amp;appId=${appId}" scrolling="no" frameborder="0" style="border:none; overflow:hidden; height:21px;" allowTransparency="true"></iframe>
</div>
</div>
<div class='game_box' style='min-height:600px;'>
<div id='con_one_1' class='con_main m1'>
<div id="content_game" style='width:100%;height:100%;'>
<iframe allowtransparency="true" frameborder="0" name="gameiframe" id="gameiframe" src="javascript:''" scrolling="no" style='background:none;'></iframe>
<form id="inputForm" method=post action="${zone.url}/facebook/login/" target="gameiframe">
<input type="hidden" name="signed_request" value="${code}">
<input type="hidden" name="ads" value="${ads!}">
</form>
</div>
</div>
<div id='con_one_2' class='con_main m2'>
<div class="service_list" id="service_list">
<a class="close_to_game" href="javascript:void(0);" style="position:absolute;right:10px;top:10px;"><img src="${base}/res/front/facebook/images/close.png" border="0"></a>
<div class="list_main clearfix">
<div class="list_msg">
<p><strong>UserName : </strong>${user.name}</p>
<p><strong>UID : </strong>${user.id}</p>
<h3>Last Login Server</h3>
<ul>
<li onclick="selectServer(${userHistory.sid})">S${userHistory.sid}: <@sid_name sid=userHistory.sid pid=1002 /></li>
</ul>
</div>
<div class="list_content">
<p>Recommend :</p>
<ul class="clearfix">
<li onclick="selectServer(${top.sid})">S${top.sid}: ${top.name }</li>
</ul>
<div class="list_content_main">
<ul class="clearfix">
<#list zones as zone>
<li onclick="selectServer(${zone.sid})">S${zone.sid}: ${zone.name}</li>
</#list>
</ul>
</div>
</div>
</div>
</div>
</div>
</div>
<div class='user_title'>
<em>UID:${user.id}</em>
<span><b><font color="#000000">Copyright © 2014 Top1Play. All Rights Reserved.</font></b></span><span align="right"><a href="https://apps.facebook.com/${namespace}/content/privacy.html" target="_blank">Privacy</a> | <a href="https://apps.facebook.com/${namespace}/content/terms.html" target="_blank">Terms</a> | <a href="mailto:cs@top1play.com">Support</a></span>
</div>
</div>
<div class='wrap_bottom'></div>
</div>
</body>
</html>

View File

@ -0,0 +1,110 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
<title>Administrator's Control Panel</title>
<#include "/template/admin/head.ftl"/>
<script type="text/javascript">
if(top!=this) {
top.location=this.location;
}
$(function() {
$("#password").focus();
$().ready( function() {
var $loginForm = $("#jvForm");
var $username = $("#username");
var $password = $("#password");
// 表单验证、记住用户名
$loginForm.submit( function() {
if ($username.val() == "") {
$.message("warn", "请输入用户名");
return false;
}
if ($password.val() == "") {
$.message("warn", "请输入密码");
return false;
}
});
<#if obj??>
$.message("error", "${obj}");
</#if>
});
});
</script>
<style type="text/css">
body{margin:0;padding:0;font-size:12px;background:url(${base}/res/cms/img/login/bg.jpg) top repeat-x;}
.input{width:150px;height:17px;border-top:1px solid #404040;border-left:1px solid #404040;border-right:1px solid #D4D0C8;border-bottom:1px solid #D4D0C8;}
.captcha {
width: 90px;
text-transform: uppercase;
ime-mode: disabled;
}
.captchaImage {
margin-left: 10px;
vertical-align: middle;
cursor: pointer;
}
</style>
</head>
<body>
<form id="jvForm" action="${base}/admin/login" method="post">
<table width="750" border="0" align="center" cellpadding="0" cellspacing="0">
<tr>
<td height="200">&nbsp;</td>
</tr>
<tr>
<td><table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td width="423" height="280" valign="top"><table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td><img src="${base}/res/cms/img/login/ltop.jpg" /></td>
</tr>
<tr>
<td><img src="${base}/res/cms/img/login/llogo.png" /></td>
</tr>
</table></td>
<td width="40" align="center" valign="bottom"><img src="${base}/res/cms/img/login/line.jpg" width="23" height="232" /></td>
<td valign="top"><table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td height="90" align="center" valign="bottom"><img src="${base}/res/cms/img/login/ltitle.jpg" /></td>
</tr>
<tr>
<td>
<div>
<#if obj??>
<ul>
<li>${obj}</li>
</ul>
<#else>
<ul>
<li><@shiro.guest>Hello guest!</@shiro.guest></li>
</ul>
</#if>
</div>
<table width="100%" border="0" align="center" cellpadding="0" cellspacing="5">
<tr>
<td width="91" height="40" align="right"><strong> <@s.m "login.username"/></strong></td>
<td width="211"><input type="input" id="username" name="username" value="" vld="{required:true}" maxlength="100" class="input"/></td>
</tr>
<tr>
<td height="40" align="right"><strong><@s.m "login.password"/></strong></td>
<td><input name="password" type="password" id="password" maxlength="32" vld="{required:true}" value="" class="input"/></td>
</tr>
<tr>
<td height="40" colspan="2" align="center">
<input type="image" src="${base}/res/cms/img/login/login.jpg" name="submit" />
&nbsp; &nbsp; <img name="reg" style="cursor: pointer" src="${base}/res/cms/img/login/reset.jpg" onclick="document.forms[0].reset()" /> </td>
</tr>
<tr>
<td height="40" colspan="2" align="center"><div class="topNav clearfix"><a href="/user/login/qq"><img src="http://nutz.cn/rs/images/qq_connect.png" class="vm" alt="QQ登录"></a></td>
</tr>
</table></td>
</tr>
</table></td>
</tr>
</table></td>
</tr>
</table>
</form>
</body>
</html>

View File

@ -0,0 +1,72 @@
<?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"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
id="WebApp_ID" version="2.5">
<display-name>nutzbook</display-name>
<listener>
<listener-class>org.apache.shiro.web.env.EnvironmentLoaderListener</listener-class>
</listener>
<filter>
<filter-name>ShiroFilter</filter-name>
<filter-class>org.apache.shiro.web.servlet.ShiroFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>ShiroFilter</filter-name>
<url-pattern>/*</url-pattern>
<dispatcher>REQUEST</dispatcher>
<dispatcher>FORWARD</dispatcher>
<dispatcher>INCLUDE</dispatcher>
<dispatcher>ERROR</dispatcher>
</filter-mapping>
<filter>
<filter-name>DruidWebStatFilter</filter-name>
<filter-class>com.alibaba.druid.support.http.WebStatFilter</filter-class>
<init-param>
<param-name>exclusions</param-name>
<param-value>*.js,*.gif,*.jpg,*.png,*.css,*.ico,/druid/*,/res/*,/thirdparty/*,/tinyeditor/*</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>DruidWebStatFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<filter>
<filter-name>nutz</filter-name>
<filter-class>com.rekoe.mvc.RkCmsNutFilter</filter-class>
<init-param>
<param-name>modules</param-name>
<param-value>com.rekoe.MainModule</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>nutz</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<servlet>
<servlet-name>DruidStatView</servlet-name>
<servlet-class>com.alibaba.druid.support.http.StatViewServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>DruidStatView</servlet-name>
<url-pattern>/druid/*</url-pattern>
</servlet-mapping>
<welcome-file-list>
<welcome-file>index.html</welcome-file>
<welcome-file>index.htm</welcome-file>
<welcome-file>index.jsp</welcome-file>
<welcome-file>default.html</welcome-file>
<welcome-file>default.htm</welcome-file>
<welcome-file>default.jsp</welcome-file>
</welcome-file-list>
<error-page>
<error-code>500</error-code>
<location>/WEB-INF/jsp/500.jsp</location>
</error-page>
<session-config>
<!-- 一年 -->
<session-timeout>946080000</session-timeout>
</session-config>
</web-app>

View File

@ -0,0 +1,9 @@
<html>
<head>
<meta name="google-site-verification" content="i3v_VDQM6Q_kSSmc8V2oh89NkUW8yhlYtSDDNMCgC5s" />
<title> 我的标题 </title>
</head>
<body>
网页内容
</body>
</html>

View File

@ -0,0 +1,90 @@
body{margin:0;padding:0;font-size:12px;color:#364f56;background:url(../img/admin/allBG.jpg) #e9f4f8 repeat-x;}
img{border:0;}
form{margin:0; padding:0;}
input[type=text],input[type=password],textarea{border-top:1px solid #404040;border-left:1px solid #404040;border-right:1px solid #D4D0C8;border-bottom:1px solid #D4D0C8;}
input[type=text][disabled=disabled],.disabled{background:#D4D0C8;}
input[type=text],input[type=password]{height:17px;}
input[type=text]:focus,input[type=password]:focus,textarea:focus{border:1px solid #000000;}
ul{list-style:none;}
/*链接总的css定义*/
a{text-decoration:none;}
a:link{color:#364f56;}
a:visited{color:#333333;}
a:hover{color: #ae0927;}
a:active {color: #0000ff;}
/*菜单链接*/
a.channel:link {color:#ffffff;}
a.channel:visited {color:#ffffff;}
a.channel:hover{color:#ffff00;}
a.channel:active {color:#ffffff;}
/*菜单链接*/
a.normal{text-decoration:underline;}
.clear{clear:both; height:0;}
/*后台管理界面body体*/
.body-box{width:100%;margin:0px auto;margin-right:auto;}
/*后台左页body*/
.lbody{background:url(../img/admin/lbg.jpg) #e9f4f8 right repeat-y;color:#666666;margin-right:6px;}
/*后台左页菜单*/
.lmenu{margin:1px 0 0 0;padding:0;list-style-type:none;}
.lmenu li{padding:7px 0 7px 30px;background-image:url(../img/admin/circle.gif);background-repeat:no-repeat;background-position:15px -1px;}
.leftmenuBG{ background:url(../../common/img/theme/leftBg.jpg); width:208px; line-height:30px; text-indent:9em;}
.lmenu-focus{background-color:#DDECEF;}
/*后台左页树*/
.lttop{padding:10px 0px 2px 0px;text-align:center;}
/*后台右页头部*/
.rhead{border-bottom:#dddddd 1px solid;padding:5px 15px;margin-top:5px;}
/*后台右页当前位置*/
.rpos{float:left;line-height:26px; font-weight:normal; background:url(../img/admin/house.jpg) no-repeat 15px 5px; text-indent:40px;color:#ffffff;}
/*后台右页操作*/
.ropt{float:right;padding-top:5px; padding-right:15px;}
/*----------------left-----------------*/
.left{width:210px;background-color:#e9f4f8;}
.date{background:url(../img/admin/dateBG.gif) repeat-x; width:209px; height:26px; line-height:26px; margin-bottom:1px;}
.date span{background:url(../img/admin/time.gif) no-repeat 36px 6px; text-indent:25px; display:block; color:#ffffff; text-align:center;}
.fresh11{background:url(../img/admin/bg.png) repeat-x 0px -78px; height:35px; text-align:center;}
.fresh11 a{color:#326ba2; text-indent:25px; height:35px; width:55px; line-height:35px;font-size:12px;}
.fresh{background:url(../img/admin/shuxinBG.gif) repeat-x; height:28px; text-align:center; width:209px;}
.fresh a{color:#14436b; text-indent:25px; height:28px; width:55px; line-height:28px; font-size:12px;}
.w-lful{width:209px; margin:0 auto; padding:0px;}
/*.w-lful li{background:url(../img/admin/LMBg2.jpg) no-repeat; width:208px; height:27px; line-height:27px; margin-top:1px; color:#14436b; text-indent:9em;}*/
.w-lful li a{color:#14436b;}
.leftCurr/*当前菜单*/{ cursor:pointer; background:url(../img/admin/LMBg1.jpg); width:209px; height:27px; line-height:27px; color:#fff; margin-top:1px; text-indent:9em;}
.leftNol{ cursor:pointer; background:url(../img/admin/LMBg2.jpg); width:209px; height:27px; line-height:27px; color:#14436b; margin-top:1px; text-indent:9em;}
/*----------------right-----------------*/
.box-positon{background:url(../img/admin/dqwzBG.jpg); height:26px;}
.box-positon h1{color:#ffffff; font-size:12px; line-height:26px; font-weight:normal; background:url(../img/admin/house.jpg) no-repeat 15px 5px; text-indent:40px; margin:0;}
.welcom-con{ margin:0 auto; width:100%;}
.we-txt{ margin-top:2px;}
.we-txt ul{ margin:0; padding:0;}
.we-txt ul li{line-height:27px; padding-left:10px; background:#dceef4; border-bottom:1px solid #ffffff; font-family:Arial;}
.we-txt ul li a{color:#f5a24d;}
.ms{height:27px; margin:1px 0 0 0; padding:0px; }
.ms li{color:#094f97; font-weight:bold; float:left; line-height:27px;}
.wxx{width:50%;}
.attribute{width:50%; text-indent:25px;}
.ms-xx{}
.xx-xx{float:left; width:50%;}
.green{color:#048e05;}
.black{color:#1c1c1c;}
.yy{width:15%; float:left;}
#jsddm{margin:0; padding:0; width:78px;}
#jsddm li{list-style:none;}
#jsddm li a{display:block; width:78px; color:#fff;}
#jsddm li a:hover/*鼠标经过添加按钮*/{}
#jsddm li ul{margin:0; padding:0; position:absolute; visibility:hidden;border-left:1px solid #97b7d7; border-right:1px solid #97b7d7; border-bottom:1px solid #97b7d7; width:78px; background:#fff;}
#jsddm li ul li{}
#jsddm li ul li a{color:#010101; width:78px; border-bottom:1px solid #d0e6ec; height:24px; line-height:24px; margin:auto; text-align:center;}
#jsddm li ul li a:hover{background:#f1fbff;}
.attribute-xx{width:50%;}
.status{text-align:center; position:absolute; z-index:20;margin-top:-5px;}
.step{height:24px; padding-left:5px; padding-right:5px;line-height:24px; margin-top:12px; background:#ffffe1; border:1px solid #dcdcdc; font-size:12px;display:none; position:absolute; z-index:100;}

File diff suppressed because it is too large Load Diff

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 908 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 198 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 97 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 301 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 365 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 407 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.3 KiB

Some files were not shown because too many files have changed in this diff Show More