You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
299 lines
17 KiB
299 lines
17 KiB
<!DOCTYPE html>
|
|
<html>
|
|
|
|
<head>
|
|
<meta charset="utf-8">
|
|
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
|
<meta name="referer" content="never" />
|
|
<meta name="renderer" content="webkit">
|
|
<title>GFs文件管理</title>
|
|
<link rel="shortcut icon" href="/static/favicon.ico" type="image/x-icon" />
|
|
<link href="./static/ns/bootstrap-3.3.5/css/bootstrap.min.css" rel="stylesheet">
|
|
<link href="./static/ns/css/site.css?20191127={{g['version']}}" rel="stylesheet">
|
|
<link href="./static/ns/codemirror/lib/codemirror.css" rel="stylesheet">
|
|
<!--[if lte IE 9]>
|
|
<script src="/static/js/requestAnimationFrame.js"></script>
|
|
<![endif]-->
|
|
<style>
|
|
.top-tips {
|
|
height: 50px;
|
|
width: 100%;
|
|
color: red;
|
|
position: fixed;
|
|
top: 0;
|
|
z-index: 999;
|
|
background-color: white;
|
|
text-align: center;
|
|
line-height: 50px;
|
|
font-size: 20px;
|
|
border-bottom: 1px solid #f0f0f0;
|
|
font-weight: bold;
|
|
display: none;
|
|
}
|
|
</style>
|
|
</head>
|
|
|
|
<body>
|
|
<div class="bt-warp bge6">
|
|
<a style="display:none;" id="request_token_head" token="{{session['request_token_head']}}"></a>
|
|
<div id="container" class="container-fluid">
|
|
<div class="sidebar-scroll">
|
|
<div class="sidebar-auto">
|
|
<div id="task" class="task cw" onclick="messagebox()"></div>
|
|
<h3 class="mypcip"><span class="f14 cw">服务器:</span></h3>
|
|
<ul class="menu">
|
|
{% for menu in session['menus'] %}
|
|
{% if menu['href'] == g.uri %}
|
|
<li id="{{menu['id']}}" class="current"> <a class="{{menu['class']}}" href="{{menu['href']}}">{{menu['title']}}</a></li>
|
|
{% else %}
|
|
<li id="{{menu['id']}}"> <a class="{{menu['class']}}" href="{{menu['href']}}">{{menu['title']}}</a></li>
|
|
{% endif %}
|
|
{% endfor %}
|
|
</ul>
|
|
<div id="newbtpc"></div>
|
|
|
|
</div>
|
|
</div>
|
|
<button style="display: none;" id="bt_copys" class="bt_copy" data-clipboard-text=""></button>
|
|
<a style="display: none;" id="defaultPath">{{session['config']['sites_path']}}</a>
|
|
<script src="./static/ns/js/jquery-1.10.2.min.js"></script>
|
|
<script src="./static/ns/js/bootstrap.min.js"></script>
|
|
<script src="./static/ns/language/cn/lan.js?date={{g['version']}}"></script>
|
|
<script src="./static/ns/layer/layer.js?date={{g['version']}}"></script>
|
|
<script type="text/javascript" src="./static/ns/laydate/laydate.js?date=20180301"></script>
|
|
<script src="./static/ns/js/jquery.fly.min.js"></script>
|
|
<script src="./static/ns/codemirror/lib/codemirror.js"></script>
|
|
<script src="./static/ns/codemirror/addon/edit/editAll.js"></script>
|
|
<script src="./static/ns/codemirror/mode/modeAll.js"></script>
|
|
<script src="./static/ns/codemirror/addon/dialog/dialog.js"></script>
|
|
<script src="./static/ns/codemirror/addon/search/search.js"></script>
|
|
<script src="./static/ns/codemirror/addon/scroll/annotatescrollbar.js"></script>
|
|
<script src="./static/ns/js/jquery.qrcode.min.js"></script>
|
|
<script src="./static/ns/js/socket.io.min.js"></script>
|
|
<link rel="stylesheet" href="./static/ns/build/xterm.min.css" />
|
|
<link rel="stylesheet" href="./static/ns/build/addons/fullscreen/fullscreen.min.css" />
|
|
<script src="./static/ns/build/xterm.min.js"></script>
|
|
<script src="./static/ns/build/addons/attach/attach.min.js"></script>
|
|
<script src="./static/ns/build/addons/fit/fit.min.js"></script>
|
|
<script src="./static/ns/build/addons/fullscreen/fullscreen.min.js"></script>
|
|
<script src="./static/ns/build/addons/search/search.min.js"></script>
|
|
<script src="./static/ns/build/addons/winptyCompat/winptyCompat.js"></script>
|
|
<script type="text/javascript" src="./static/ns/js/clipboard.min.js"></script>
|
|
<script src="./static/ns/js/public.js?v20191219={{g['version']}}"></script>
|
|
<script src="./static/ns/js/public_backup.js?version_20191219={{g['version']}}"></script>
|
|
<script src="./static/ns/js/bt_upload.js?version={{g['version']}}"></script>
|
|
|
|
|
|
|
|
<div class="main-content">
|
|
<div class="container-fluid" style="padding-bottom:50px">
|
|
<div class="file-box bgw mtb15" style="position:relative; padding-top:110px">
|
|
<div id="tipTools" class="plr15">
|
|
<div class="ptb15">
|
|
<div class="clearfix">
|
|
<div class="pull-left">
|
|
<button id="backBtn"
|
|
class="backBtn btn btn-default btn-sm glyphicon glyphicon-arrow-left pull-left"
|
|
title="{{data['lan']['BTN1']}}" onClick="BackDir()"></button>
|
|
<button
|
|
class="backBtn refreshBtn btn btn-default btn-sm glyphicon glyphicon-refresh pull-right"
|
|
title="{{data['lan']['BTN2']}}" style="margin-left:-1px;"></button>
|
|
<span id='DirPathPlace' class="pull-left"><input id="fileInputPath"
|
|
type="text"></span>
|
|
<span id='PathPlaceBtn' class="pull-left"></span>
|
|
</div>
|
|
<div class="pull-left mlr15" style="line-height:26px"><span id='DirInfo'></span></div>
|
|
<div class="search pull-right" style="position: absolute; top: 6px; right: 5px;">
|
|
<div class="search_box">
|
|
<input id="search_all" type="checkbox">
|
|
<label for="search_all">包含子目录</label>
|
|
</div>
|
|
<form target="hid" onsubmit='GetFiles(1)'>
|
|
<input type="text" id="SearchValue" class="ser-text pull-left" placeholder="" />
|
|
<button type="button" class="ser-sub pull-left" onclick='GetFiles(1)'></button>
|
|
</form>
|
|
<iframe name='hid' id="hid" style="display:none"></iframe>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="clearfix ptb10">
|
|
<button class="btn btn-default btn-sm pull-left"
|
|
onclick="UploadFiles()">{{data['lan']['BTN3']}}</button>
|
|
<button class="btn btn-default btn-sm pull-left" onclick="DownloadFile()"
|
|
title="{{data['lan']['TI1']}}" style="margin:0 5px">{{data['lan']['BTN4']}}</button>
|
|
<span id='BarTools'></span>
|
|
<span id='Batch'
|
|
style="background-color:#fff;position:absolute;right:190px;z-index:10"></span>
|
|
<span id='comlist' class="comlist"></span>
|
|
<div class="btn-group btn-group-sm pull-right" style="margin-right:5px;">
|
|
<button id="set_icon" title="{{data['lan']['TI2']}}" type="button"
|
|
class="btn btn-default">
|
|
<i class="glyphicon glyphicon-th"></i>
|
|
</button>
|
|
<button id="set_list" title="{{data['lan']['TI3']}}" type="button"
|
|
class="btn btn-default active">
|
|
<i class="glyphicon glyphicon-th-list"></i>
|
|
</button>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="divtable pd15" id="fileCon"></div>
|
|
<div class="dataTables_paginate paging_bootstrap pagination plr15"
|
|
style="position: relative; top: -15px;">
|
|
<ul id="filePage" class="page"></ul>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<ul id="rmenu" class="dropdown-menu" style="display:none">
|
|
<li onclick="javascript:Batch(1);"><a style="cursor: pointer;">{{data['lan']['L1']}}</a></li>
|
|
<li onclick="javascript:Batch(2);"><a style="cursor: pointer;">{{data['lan']['L2']}}</a></li>
|
|
<li onclick="javascript:Batch(5);"><a style="cursor: pointer;">{{data['lan']['L3']}}</a></li>
|
|
<li onclick="javascript:Batch(3);"><a style="cursor: pointer;">{{data['lan']['L4']}}</a></li>
|
|
<li onclick="javascript:Batch(4);"><a style="cursor: pointer;">{{data['lan']['L5']}}</a></li>
|
|
</ul>
|
|
<link rel="stylesheet" href="./static/ns/ace/styles/icons.css">
|
|
<script type="text/tmplate" id="aceTmplate">
|
|
<div id="ace_conter">
|
|
<div class="ace_header">
|
|
<span class="saveFile"><i class="glyphicon glyphicon-floppy-disk" aria-hidden="true"></i>保存</span>
|
|
<span class="saveFileAll"><i class="glyphicon glyphicon-duplicate" aria-hidden="true"></i>全部保存</span>
|
|
<span class="refreshs"><i class="glyphicon glyphicon-refresh" aria-hidden="true"></i>刷新</span>
|
|
<span class="searchs"><i class="glyphicon glyphicon-search" aria-hidden="true"></i>搜索</span>
|
|
<span class="replaces"><i class="glyphicon glyphicon-retweet" aria-hidden="true"></i>替换</span>
|
|
<span class="fontSize"><i class="glyphicon glyphicon-text-width" aria-hidden="true"></i>字体</span>
|
|
<span class="themes"><i class="glyphicon glyphicon-magnet" aria-hidden="true"></i>主题</span>
|
|
<span class="helps"><i class="glyphicon glyphicon-question-sign" aria-hidden="true"></i>帮助</span>
|
|
<div class="pull-down" title="隐藏工具条"><i class="glyphicon glyphicon-menu-down" aria-hidden="true"></i></div>
|
|
</div>
|
|
<div class="ace_overall">
|
|
<!-- 编辑器目录 -->
|
|
<div class="ace_catalogue">
|
|
<div class="ace_catalogue_title">目录<div class="dir-menu-right"><span class="glyphicon glyphicon-minus" aria-hidden="true"></span></div></div>
|
|
<div class="ace_catalogue_list">
|
|
<ul class="cd-accordion-menu"></ul>
|
|
<ul class="ace_catalogue_menu">
|
|
<li data-type="0"><i class="folder-icon"></i>新建文件夹</li>
|
|
<li data-type="1"><i class="text-icon"></i>新建文件</li>
|
|
<li data-type="2"><i class="rename-icon img-icon"></i>重命名</li>
|
|
<li data-type="3"><i class="del-icon img-icon"></i>删除</li>
|
|
</ul>
|
|
</div>
|
|
<div class="ace_catalogue_drag_icon">
|
|
<div class="drag_icon_conter"></div>
|
|
<span class="fold_icon_conter" title="隐藏文件目录"></span>
|
|
</div>
|
|
|
|
</div>
|
|
<!-- 编辑内容 -->
|
|
<div class="ace_editor_main">
|
|
<div class="ace_conter_menu">
|
|
<div class="ace_editor_add" style="display:none;"><i class="fa fa-plus-square" aria-hidden="true"></i></div>
|
|
</div>
|
|
<div class="ace_conter_tips"><div class="tips"></div></div>
|
|
<div class="ace_editor_main_storey"></div>
|
|
<div class="ace_conter_editor"></div>
|
|
<div class="ace_conter_toolbar">
|
|
<div class="pull-left size_ellipsis">
|
|
<span data-type="path" class="size_ellipsis"></span>
|
|
</div>
|
|
<div class="pull-right">
|
|
<span data-type="cursor"></span>
|
|
<span data-type="history"></span>
|
|
<span data-type="tab"></span>
|
|
<span data-type="encoding"></span>
|
|
<span data-type="lang"></span>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="ace_toolbar_menu" style="display: none;">
|
|
<div class="menu-item menu-tabs" style="display: none;">
|
|
<div class="menu-title">设置制表符</div>
|
|
<ul class="tabsType">
|
|
<li data-value="nbsp">使用空格缩进</li>
|
|
<li data-value="tabs">使用 "Tab" 缩进</li>
|
|
</ul>
|
|
<div class="menu-title" style="margin-top:15px">设置制表符长度</div>
|
|
<ul class="tabsSize">
|
|
<li data-value="1">1</li>
|
|
<li data-value="2">2</li>
|
|
<li data-value="3">3</li>
|
|
<li data-value="4">4</li>
|
|
<li data-value="5">5</li>
|
|
<li data-value="6">6</li>
|
|
</ul>
|
|
</div>
|
|
<div class="menu-item menu-encoding" style="display: none;">
|
|
<div class="menu-title">设置文件保存编码格式</div>
|
|
<ul></ul>
|
|
</div>
|
|
<div class="menu-item menu-files" style="display: none;">
|
|
<div class="menu-conter">
|
|
<input type="text" class="menu-input" placeholder="输入语言模式">
|
|
<i class="fa fa-close" aria-hidden="true"></i>
|
|
</div>
|
|
<div class="menu-title">设置文件语言关联</div>
|
|
<ul></ul>
|
|
</div>
|
|
<div class="menu-item menu-fontSize" style="display: none;">
|
|
<div class="menu-title">设置编辑器字体大小</div>
|
|
<div class="menu-conter">
|
|
<div class="set_font_size">
|
|
<input type="number" min="12" max="45"/>
|
|
<span class="tips error">字体设置范围 12-45</span>
|
|
<button class="btn-save">保存</button>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="menu-item menu-themes" style="display: none;">
|
|
<div class="menu-title">设置编辑器主题</div>
|
|
<ul></ul>
|
|
</div>
|
|
<div class="menu-item menu-history" style="display: none;">
|
|
<div class="menu-title">文件历史版本</div>
|
|
<ul></ul>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</script>
|
|
<script src="./static/ns/js/jquery-ui.min.js"></script>
|
|
<script src="./static/ns/js/jquery.contextify.min.js"></script>
|
|
<script src="./static/ns/js/files.js?date20191219={{g.version}}"></script>
|
|
<script src="./static/ns/js/upload.js?date={{g.version}}"></script>
|
|
<script type="text/javascript" src="./static/ns/ace/ace.js?date=2"></script>
|
|
<script type="text/javascript" src="./static/ns/ace/ext-language_tools.js?date=2"></script>
|
|
<script type="text/javascript">
|
|
setTimeout(function () {
|
|
GetDisk();
|
|
}, 500);
|
|
var xPath = getCookie('Path');
|
|
setTimeout(function () {
|
|
GetFiles((xPath != undefined ? xPath : '/www/wwwroot'));
|
|
}, 800);
|
|
|
|
PathPlaceBtn((xPath != undefined ? xPath : '/www/wwwroot'));
|
|
setCookie('uploadSize', 1024 * 1024 * 1024);
|
|
if (getCookie('rank') == undefined || getCookie('rank') == null) {
|
|
setCookie('rank', 'a');
|
|
}
|
|
$("#set_icon").click(function () {
|
|
setCookie('rank', 'b');
|
|
$(this).addClass("active");
|
|
$("#set_list").removeClass("active");
|
|
GetFiles(getCookie('Path'));
|
|
});
|
|
$("#set_list").click(function () {
|
|
setCookie('rank', 'a');
|
|
$(this).addClass("active");
|
|
$("#set_icon").removeClass("active");
|
|
GetFiles(getCookie('Path'));
|
|
});
|
|
$(".refreshBtn").click(function () {
|
|
GetFiles(getCookie('Path'));
|
|
});
|
|
</script>
|
|
</div>
|
|
</body>
|
|
|
|
</html>
|