Fix: 本地策略上传

This commit is contained in:
HFO4 2019-11-25 20:53:09 +08:00
parent ebdcf5cdec
commit 5a77568a2c
42 changed files with 16510 additions and 1327 deletions

View File

@ -1,64 +0,0 @@
<!DOCTYPE html>
<html lang="zh-cn">
<head>
<meta charset="utf-8">
<link rel="shortcut icon" href="/favicon.ico">
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
<meta name="theme-color" content="{$options.themeColor}" />
<link rel="manifest" href="/manifest.json">
<title>我的文件 - {$options.siteName}</title>
<script type="text/javascript">colorTheme = {"palette":{"common":{"black":"#000","white":"#fff"},"background":{"paper":"#fff","default":"#fafafa"},"primary":{"light":"#7986cb","main":"#3f51b5","dark":"#303f9f","contrastText":"#fff"},"secondary":{"light":"#ff4081","main":"#f50057","dark":"#c51162","contrastText":"#fff"},"error":{"light":"#e57373","main":"#f44336","dark":"#d32f2f","contrastText":"#fff"},"text":{"primary":"rgba(0, 0, 0, 0.87)","secondary":"rgba(0, 0, 0, 0.54)","disabled":"rgba(0, 0, 0, 0.38)","hint":"rgba(0, 0, 0, 0.38)"},"explorer":{"filename":"#474849","icon":"#8f8f8f","bgSelected":"#D5DAF0","emptyIcon":"#e8e8e8"}}};
isHomePage = true;
pageId="";
isSharePage = false;
uploadConfig = {
saveType: "local",
maxSize: "10mb",
allowedType: [],
allowSource: "0",
upUrl: "/Upload",
allowShare: "1",
allowRemoteDownload: "0",
allowTorrentDownload: "0",
};
if(uploadConfig.saveType == "oss" || uploadConfig.saveType == "upyun" || uploadConfig.saveType == "s3"){
ChunkSize = "0";
}else if(uploadConfig.saveType == "qiniu" ){
ChunkSize = 4*1024*1024;
}else{
ChunkSize = 10485760;
}
apiURL = {
imgThumb: "/File/Thumb",
preview: "/File/Preview",
download: "/File/Download",
docPreiview: '/File/DocPreview',
listFile:"/File/ListFile"
};
userInfo = {
uid: 1,
nick: "Admin",
email: "admin@cloudreve.org",
group: "管理员",
groupId: 1,
groupColor: "danger",
};
siteInfo = {
mainTitle: "Cloudreve",
};
pathCache = {};
path = "/";
mediaType = {},
isMobile = window.innerWidth < 600;
</script>
</head>
<body>
<noscript>
You need to enable JavaScript to run this app.
</noscript>
<div id="root"></div>
</body>
</html>

View File

@ -1,47 +0,0 @@
<!DOCTYPE html>
<html lang="zh-cn">
<head>
<meta charset="utf-8">
<link rel="shortcut icon" href="/favicon.ico">
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
<meta name="theme-color" content="{$options.themeColor}" />
<link rel="manifest" href="/manifest.json">
<title>“{$keyWords}”搜索结果 - {$options.siteName}</title>
<script type="text/javascript">
colorTheme = {:json_encode($options["themeConfig"])};
isHomePage = false;
isSharePage = false;
pageId="shareLock";
list = {$list};
userInfo = {
uid: {$userData.uid},
nick: "{$userData.userNick}",
email: "{$userData.userMail}",
group: "{$userData.groupData.group_name}",
groupId: {$userData.groupData.id},
groupColor: "{$userData.groupData.color}",
};
siteInfo = {
mainTitle: "{$options.siteName}",
};
uploadConfig = {
allowSource: false,
allowShare: false,
allowRemoteDownload: "0",
allowTorrentDownload: "0",
};
isMobile = window.innerWidth < 600;
</script>
</head>
<body>
<noscript>
You need to enable JavaScript to run this app.
</noscript>
<div id="root"></div>
</body>
</html>

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.8 KiB

View File

@ -1,60 +0,0 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<link rel="shortcut icon" href="%PUBLIC_URL%/favicon.ico">
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
<!--
manifest.json provides metadata used when your web app is added to the
homescreen on Android. See https://developers.google.com/web/fundamentals/web-app-manifest/
-->
<link rel="manifest" href="%PUBLIC_URL%/manifest.json">
<!--
Notice the use of %PUBLIC_URL% in the tags above.
It will be replaced with the URL of the `public` folder during the build.
Only files inside the `public` folder can be referenced from the HTML.
Unlike "/favicon.ico" or "favicon.ico", "%PUBLIC_URL%/favicon.ico" will
work correctly both with client-side routing and a non-root public URL.
Learn how to configure a non-root public URL by running `npm run build`.
-->
<title>React App</title>
<script type="text/javascript">
uploadConfig={
saveType : "onedrive",
maxSize : "20000mb",
allowedType: [
],
allowSource : "0",
upUrl : "/Upload",
allowShare:"1",
allowRemoteDownload:"1",
allowTorrentDownload:"1",
};
</script>
<!-- <script src="http://lite.aoaoao.me/dev/moxie.js"></script>
<script src="http://lite.aoaoao.me/dev/plupload.dev.js"></script>
<script src="http://lite.aoaoao.me/dev/i18n/zh_CN.js"></script>
<script src="http://lite.aoaoao.me/dev/ui.js"></script>
<script src="http://lite.aoaoao.me/dev/qiniu.js"></script>
<script src="http://lite.aoaoao.me/dev/main.js"></script> -->
</head>
<body>
<noscript>
You need to enable JavaScript to run this app.
</noscript>
<div id="root"></div>
<!--
This HTML file is a template.
If you open it directly in the browser, you will see an empty page.
You can add webfonts, meta tags, or analytics to this file.
The build step will place the bundled scripts into the <body> tag.
To begin the development, run `npm start` or `yarn start`.
To create a production bundle, use `npm run build` or `yarn build`.
-->
</body>
</html>

View File

@ -1,60 +0,0 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<link rel="shortcut icon" href="%PUBLIC_URL%/favicon.ico">
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
<!--
manifest.json provides metadata used when your web app is added to the
homescreen on Android. See https://developers.google.com/web/fundamentals/web-app-manifest/
-->
<link rel="manifest" href="%PUBLIC_URL%/manifest.json">
<!--
Notice the use of %PUBLIC_URL% in the tags above.
It will be replaced with the URL of the `public` folder during the build.
Only files inside the `public` folder can be referenced from the HTML.
Unlike "/favicon.ico" or "favicon.ico", "%PUBLIC_URL%/favicon.ico" will
work correctly both with client-side routing and a non-root public URL.
Learn how to configure a non-root public URL by running `npm run build`.
-->
<title>React App</title>
<script type="text/javascript">
uploadConfig={
saveType : "onedrive",
maxSize : "20000mb",
allowedType: [
],
allowSource : "0",
upUrl : "/Upload",
allowShare:"1",
allowRemoteDownload:"1",
allowTorrentDownload:"1",
};
</script>
<!-- <script src="http://lite.aoaoao.me/dev/moxie.js"></script>
<script src="http://lite.aoaoao.me/dev/plupload.dev.js"></script>
<script src="http://lite.aoaoao.me/dev/i18n/zh_CN.js"></script>
<script src="http://lite.aoaoao.me/dev/ui.js"></script>
<script src="http://lite.aoaoao.me/dev/qiniu.js"></script>
<script src="http://lite.aoaoao.me/dev/main.js"></script> -->
</head>
<body>
<noscript>
You need to enable JavaScript to run this app.
</noscript>
<div id="root"></div>
<!--
This HTML file is a template.
If you open it directly in the browser, you will see an empty page.
You can add webfonts, meta tags, or analytics to this file.
The build step will place the bundled scripts into the <body> tag.
To begin the development, run `npm start` or `yarn start`.
To create a production bundle, use `npm run build` or `yarn build`.
-->
</body>
</html>

View File

@ -1,22 +0,0 @@
<!doctype html><html lang="zh-cn"><head><meta charset="utf-8"><link rel="shortcut icon" href="/favicon.ico"><meta name="viewport" content="width=device-width,initial-scale=1,shrink-to-fit=no"><meta name="theme-color" content="{$options.themeColor}"/><link rel="manifest" href="/manifest.json"><title>离线下载管理- {$options.siteName}</title><script type="text/javascript">colorTheme = {:json_encode($options["themeConfig"])};
isHomePage = false;
isSharePage = false;
pageId="shareLock";
userInfo = {
uid: {$userInfo.uid},
nick: "{$userInfo.userNick}",
email: "{$userInfo.userMail}",
group: "{$userInfo.groupData.group_name}",
groupId: {$userInfo.groupData.id},
groupColor: "{$userInfo.groupData.color}",
};
siteInfo = {
mainTitle: "离线下载",
};
uploadConfig = {
allowSource: false,
allowShare: false,
allowRemoteDownload: "0",
allowTorrentDownload: "0",
};
isMobile = window.innerWidth < 600;</script></head><body><noscript>You need to enable JavaScript to run this app.</noscript><div id="root"></div><script>!function(l){function e(e){for(var r,t,n=e[0],o=e[1],u=e[2],f=0,i=[];f<n.length;f++)t=n[f],p[t]&&i.push(p[t][0]),p[t]=0;for(r in o)Object.prototype.hasOwnProperty.call(o,r)&&(l[r]=o[r]);for(s&&s(e);i.length;)i.shift()();return c.push.apply(c,u||[]),a()}function a(){for(var e,r=0;r<c.length;r++){for(var t=c[r],n=!0,o=1;o<t.length;o++){var u=t[o];0!==p[u]&&(n=!1)}n&&(c.splice(r--,1),e=f(f.s=t[0]))}return e}var t={},p={20:0},c=[];function f(e){if(t[e])return t[e].exports;var r=t[e]={i:e,l:!1,exports:{}};return l[e].call(r.exports,r,r.exports,f),r.l=!0,r.exports}f.m=l,f.c=t,f.d=function(e,r,t){f.o(e,r)||Object.defineProperty(e,r,{enumerable:!0,get:t})},f.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},f.t=function(r,e){if(1&e&&(r=f(r)),8&e)return r;if(4&e&&"object"==typeof r&&r&&r.__esModule)return r;var t=Object.create(null);if(f.r(t),Object.defineProperty(t,"default",{enumerable:!0,value:r}),2&e&&"string"!=typeof r)for(var n in r)f.d(t,n,function(e){return r[e]}.bind(null,n));return t},f.n=function(e){var r=e&&e.__esModule?function(){return e.default}:function(){return e};return f.d(r,"a",r),r},f.o=function(e,r){return Object.prototype.hasOwnProperty.call(e,r)},f.p="/";var r=window.webpackJsonp=window.webpackJsonp||[],n=r.push.bind(r);r.push=e,r=r.slice();for(var o=0;o<r.length;o++)e(r[o]);var s=n;a()}([])</script><script src="/static/js/0.chunk.js"></script><script src="/static/js/2.chunk.js"></script><script src="/static/js/download.chunk.js"></script></body></html>

View File

@ -1,44 +0,0 @@
<!doctype html><html lang="zh-cn"><head><meta charset="utf-8"><link rel="shortcut icon" href="/favicon.ico"><meta name="viewport" content="width=device-width,initial-scale=1,shrink-to-fit=no"><meta name="theme-color" content="{$options.themeColor}"/><link rel="manifest" href="/manifest.json"><title>我的文件 - {$options.siteName}</title><script type="text/javascript">colorTheme = {:json_encode($options["themeConfig"])};
isHomePage = true;
pageId="";
isSharePage = false;
uploadConfig = {
saveType: "{$policyData.policy_type}",
maxSize: "{$policyData.max_size}mb",
allowedType: [{$extLimit}],
allowSource: "{$policyData.origin_link}",
upUrl: "{$policyData.server}",
allowShare: "{$groupData.allow_share}",
allowRemoteDownload: "{:explode(",",$groupData.aria2)[0]}",
allowTorrentDownload: "{:explode(",",$groupData.aria2)[1]}",
};
if(uploadConfig.saveType == "oss" || uploadConfig.saveType == "upyun" || uploadConfig.saveType == "s3"){
ChunkSize = "0";
}else if(uploadConfig.saveType == "qiniu" ){
ChunkSize = 4*1024*1024;
}else{
ChunkSize = {$chunkSize};
}
apiURL = {
imgThumb: "/File/Thumb",
preview: "/File/Preview",
download: "/File/Download",
docPreiview: '/File/DocPreview',
listFile:"/File/ListFile"
};
userInfo = {
uid: {$userInfo.uid},
nick: "{$userInfo.userNick}",
email: "{$userInfo.userMail}",
group: "{$userInfo.groupData.group_name}",
groupId: {$userInfo.groupData.id},
groupColor: "{$userInfo.groupData.color}",
};
siteInfo = {
mainTitle: "{$options.siteName}",
};
pathCache = {};
path = "{$path}";
mediaType = {},
isMobile = window.innerWidth < 600;</script></head><body><noscript>You need to enable JavaScript to run this app.</noscript><div id="root"></div>
</body></html>

View File

@ -1,161 +0,0 @@
<nav class="navbar navbar-inverse" >
<div class="container-fluid">
<!-- Brand and toggle get grouped for better mobile display -->
<div class="navbar-header">
<a class="navbar-brand" href="/">
</a>
<button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#bs-example-navbar-collapse-1" aria-expanded="false">
<span class="sr-only">Toggle navigation</span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</button>
</div>
<!-- Collect the nav links, forms, and other content for toggling -->
<div class="collapse navbar-collapse" id="bs-example-navbar-collapse-1">
<ul class="nav navbar-nav navbar-right">
<li class="dropdown">
<a href="#" class="dropdown-toggle avatar-a" data-toggle="dropdown" role="button" aria-haspopup="true" aria-expanded="false"><img src="/Member/Avatar/{$userInfo.uid}/s" class="img-circle avatar-s"> {$userInfo.userNick} <span class="caret"></span></a>
<ul class="dropdown-menu">
<li><a href="/Profile/{$userInfo.uid}">个人主页</a></li>
<li><a href="/Member/Setting">设置</a></li>
<li><a href="/Home/BuyGroup">升级用户组</a></li>
{eq name="$userInfo.groupId" value="1"}
<li><a href="/Admin">管理面板</a></li>
{/eq}
<li role="separator" class="divider"></li>
<li><a href="/Member/LogOut">退出登录</a></li>
</ul>
</li>
<li class="mobile-addition">
<a href="/Share/My" role="button" aria-haspopup="true" ><i class="fa fa-share-alt" aria-hidden="true"></i> 我的分享</a>
</li>
<li class="mobile-addition">
<a href="/Explore/Search" role="button" aria-haspopup="true" ><i class="fa fa-search" aria-hidden="true"></i> 搜索分享</a>
</li>
<li class="mobile-addition">
<a href="/Home/Album" role="button" aria-haspopup="true" ><i class="fa fa-picture-o" aria-hidden="true"></i> 图片集</a>
</li>
</ul>
</div><!-- /.navbar-collapse -->
</div><!-- /.container-fluid -->
</nav>
<!-- Modal -->
<div class="modal fade" id="upload_modal" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" aria-hidden="true">
<div class="modal-dialog" role="document">
<div class="modal-content">
<div class="modal-header">
<button type="button" class="close" onclick = "closeUpload()" data-dismiss="modal" aria-label="Close">
<span aria-hidden="true">&times;</span>
<span class="sr-only">Close</span>
</button>
<h4 class="modal-title" id="myModalLabel">上传文件</h4>
</div>
<div class="modal-body">
<div class="row" style="margin-top: 20px;">
<input type="hidden" id="domain" value="http://7xocov.com1.z0.glb.clouddn.com/">
<input type="hidden" id="uptoken_url" value="uptoken">
<div class="up_button col-md-4">
<div id="container">
<button class="btn btn-raised btn-info btn-lg upload_button" id="pickfiles" >
<i class="glyphicon glyphicon-plus"></i>
<span id="up_text"></span>
</button>
</div>
</div>
<div style="display:none" id="success" class="indo col-md-8">
<div class="alert alert-success">
队列全部文件处理完毕
</div>
</div>
<div class="col-md-12 " align="center">
<div class="info_box" id="info_box">
<br>
<div class="drag_info">
<span class="info_icon"><i class="glyphicon glyphicon-inbox"></i></span>
<div class="info_text">拖动文件至此开始上传</div>
</div>
</div>
<div class="upload_box" style="display:none;" id="upload_box">
<table class="table table-striped table-hover text-left" style="display:none;">
<thead>
<tr>
<th class="col-md-4">文件名</th>
<th class="col-md-2">大小</th>
<th class="col-md-6">进度</th>
</tr>
</thead>
<tbody id="fsUploadProgress">
</tbody>
</table>
</div>
</div>
<div class="container" style="display: none;">
<div class="body">
</div>
</div>
</div>
<div class="modal-footer">
</div>
</div>
</div>
</div>
</div>
<img onload="main(this)" src="/static/img/sign.png" style="display: none" />
<div class="col-md-2 s" id="side">
<div class="list-group" id="b">
<a href="/Home" class="list-group-item">
<i class="fa fa-file" aria-hidden="true"></i>&nbsp;&nbsp;&nbsp; 我的文件
</a>
<a href="/Share/My" class="list-group-item"> <i class="fa fa-share-alt" aria-hidden="true"></i>&nbsp;&nbsp;&nbsp; 我的分享
</a>
<a href="/Home/Quota" class="list-group-item"><i class="fa fa-database" aria-hidden="true"></i>&nbsp;&nbsp;&nbsp; 容量配额
</a>
<a href="/Explore/Search" class="list-group-item">
<i class="fa fa-search" aria-hidden="true"></i>&nbsp;&nbsp;&nbsp; 搜索分享
</a>
<a href="/Home/Album" class="list-group-item">
<i class="fa fa-picture-o" aria-hidden="true"></i>&nbsp;&nbsp;&nbsp; 图片集
</a>
{eq name=':(explode(",",$groupData.aria2)[0] OR explode(",",$groupData.aria2)[1])' value="1"}
<a href="/Home/Download" class="list-group-item">
<i class="fa fa-cloud-download" aria-hidden="true"></i>&nbsp;&nbsp;&nbsp; 离线下载
</a>
{/eq}
</div>
<div clss="usage" style=" visibility: visible;
position: absolute;
width: 100%;
height: 100px;
top: auto;
bottom: 0px;
background-color: #f9f9f9;padding: 15px">
<div class="usage-title">容量使用:</div>
<div class="usage-bar">
<div class="progress progress-striped active">
<div class="progress-bar" id="memory_bar"></div>
</div>
</div>
<div class="usage-text"><span id="used">--</span>/<span id="total">--</span></div>
</div>
</div>

View File

@ -1,26 +0,0 @@
<!doctype html><html lang="zh-cn"><head><meta charset="utf-8"><link rel="shortcut icon" href="/favicon.ico"><meta name="viewport" content="width=device-width,initial-scale=1,shrink-to-fit=no"><meta name="theme-color" content="{$options.themeColor}"/><link rel="manifest" href="/manifest.json"><title>{$title} - {$options.siteName}</title><script type="text/javascript">colorTheme = {:json_encode($options["themeConfig"])};
isHomePage = false;
isSharePage = false;
pageId="shareLock";
userInfo = {
uid: {$userInfo.uid},
nick: "{$userInfo.userNick}",
email: "{$userInfo.userMail}",
group: "{$userInfo.groupData.group_name}",
groupId: {$userInfo.groupData.id},
groupColor: "{$userInfo.groupData.color}",
};
siteInfo = {
mainTitle: "{$options.siteName}",
};
uploadConfig = {
allowSource: false,
allowShare: false,
allowRemoteDownload: "0",
allowTorrentDownload: "0",
};
list={$list};
pack_data={$options.pack_data};
group_data={$options.group_sell_data};
isMobile = window.innerWidth < 600;</script></head><body><noscript>You need to enable JavaScript to run this app.</noscript><div id="root"></div>
</body></html>

View File

@ -1,44 +1,38 @@
<!doctype html><html lang="zh-cn"><head><meta charset="utf-8"><link rel="shortcut icon" href="/favicon.ico"><meta name="viewport" content="width=device-width,initial-scale=1,shrink-to-fit=no"><meta name="theme-color" content="{$options.themeColor}"/><link rel="manifest" href="/manifest.json"><title>我的文件 - {$options.siteName}</title><script type="text/javascript">colorTheme = {:json_encode($options["themeConfig"])};
isHomePage = true;
pageId="";
isSharePage = false;
uploadConfig = {
saveType: "{$policyData.policy_type}",
maxSize: "{$policyData.max_size}mb",
allowedType: [{$extLimit}],
allowSource: "{$policyData.origin_link}",
upUrl: "{$policyData.server}",
allowShare: "{$groupData.allow_share}",
allowRemoteDownload: "{:explode(",",$groupData.aria2)[0]}",
allowTorrentDownload: "{:explode(",",$groupData.aria2)[1]}",
<!doctype html><html lang="zh-cn"><head><meta charset="utf-8"><link rel="shortcut icon" href="/favicon.ico"><meta name="viewport" content="width=device-width,initial-scale=1,shrink-to-fit=no"><meta name="theme-color" content="{$options.themeColor}"/><link rel="manifest" href="/manifest.json"><title>标题</title><script type="text/javascript">colorTheme = {"palette":{"common":{"black":"#000","white":"#fff"},"background":{"paper":"#fff","default":"#fafafa"},"primary":{"light":"#7986cb","main":"#3f51b5","dark":"#303f9f","contrastText":"#fff"},"secondary":{"light":"#ff4081","main":"#f50057","dark":"#c51162","contrastText":"#fff"},"error":{"light":"#e57373","main":"#f44336","dark":"#d32f2f","contrastText":"#fff"},"text":{"primary":"rgba(0, 0, 0, 0.87)","secondary":"rgba(0, 0, 0, 0.54)","disabled":"rgba(0, 0, 0, 0.38)","hint":"rgba(0, 0, 0, 0.38)"},"explorer":{"filename":"#474849","icon":"#8f8f8f","bgSelected":"#D5DAF0","emptyIcon":"#e8e8e8"}}};
isHomePage = false;
isSharePage = false;
captcha = "0";
regCaptcha = "0";
findPwdCaptcha = "1";
qqLogin = "1";
pageId="login";
userInfo = {
uid: -1,
};
siteInfo = {
mainTitle: "Cloudreve演示站",
};
uploadConfig = {
saveType: "local",
maxSize: "10mb",
allowedType: [],
allowSource: "0",
upUrl: "/Upload",
allowShare: "1",
allowRemoteDownload: "0",
allowTorrentDownload: "0",
};
if(uploadConfig.saveType == "oss" || uploadConfig.saveType == "upyun" || uploadConfig.saveType == "s3"){
ChunkSize = "0";
}else if(uploadConfig.saveType == "qiniu" ){
ChunkSize = 4*1024*1024;
}else{
ChunkSize = {$chunkSize};
ChunkSize = 10485760;
}
apiURL = {
imgThumb: "/File/Thumb",
preview: "/File/Preview",
download: "/File/Download",
docPreiview: '/File/DocPreview',
listFile:"/File/ListFile"
};
userInfo = {
uid: {$userInfo.uid},
nick: "{$userInfo.userNick}",
email: "{$userInfo.userMail}",
group: "{$userInfo.groupData.group_name}",
groupId: {$userInfo.groupData.id},
groupColor: "{$userInfo.groupData.color}",
};
siteInfo = {
mainTitle: "{$options.siteName}",
};
isMobile = window.innerWidth < 600;
// 保留
pathCache = {};
path = "{$path}";
mediaType = {},
isMobile = window.innerWidth < 600;</script></head><body><noscript>You need to enable JavaScript to run this app.</noscript><div id="root"></div>
</script></head><body><noscript>You need to enable JavaScript to run this app.</noscript><div id="root"></div>
</body></html>

View File

@ -1,60 +0,0 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<link rel="shortcut icon" href="%PUBLIC_URL%/favicon.ico">
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
<!--
manifest.json provides metadata used when your web app is added to the
homescreen on Android. See https://developers.google.com/web/fundamentals/web-app-manifest/
-->
<link rel="manifest" href="%PUBLIC_URL%/manifest.json">
<!--
Notice the use of %PUBLIC_URL% in the tags above.
It will be replaced with the URL of the `public` folder during the build.
Only files inside the `public` folder can be referenced from the HTML.
Unlike "/favicon.ico" or "favicon.ico", "%PUBLIC_URL%/favicon.ico" will
work correctly both with client-side routing and a non-root public URL.
Learn how to configure a non-root public URL by running `npm run build`.
-->
<title>React App</title>
<script type="text/javascript">
uploadConfig={
saveType : "onedrive",
maxSize : "20000mb",
allowedType: [
],
allowSource : "0",
upUrl : "/Upload",
allowShare:"1",
allowRemoteDownload:"1",
allowTorrentDownload:"1",
};
</script>
<!-- <script src="http://lite.aoaoao.me/dev/moxie.js"></script>
<script src="http://lite.aoaoao.me/dev/plupload.dev.js"></script>
<script src="http://lite.aoaoao.me/dev/i18n/zh_CN.js"></script>
<script src="http://lite.aoaoao.me/dev/ui.js"></script>
<script src="http://lite.aoaoao.me/dev/qiniu.js"></script>
<script src="http://lite.aoaoao.me/dev/main.js"></script> -->
</head>
<body>
<noscript>
You need to enable JavaScript to run this app.
</noscript>
<div id="root"></div>
<!--
This HTML file is a template.
If you open it directly in the browser, you will see an empty page.
You can add webfonts, meta tags, or analytics to this file.
The build step will place the bundled scripts into the <body> tag.
To begin the development, run `npm start` or `yarn start`.
To create a production bundle, use `npm run build` or `yarn build`.
-->
</body>
</html>

View File

@ -1,15 +0,0 @@
{
"short_name": "React App",
"name": "Create React App Sample",
"icons": [
{
"src": "favicon.ico",
"sizes": "64x64 32x32 24x24 16x16",
"type": "image/x-icon"
}
],
"start_url": ".",
"display": "standalone",
"theme_color": "#000000",
"background_color": "#ffffff"
}

View File

@ -1,60 +0,0 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<link rel="shortcut icon" href="%PUBLIC_URL%/favicon.ico">
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
<!--
manifest.json provides metadata used when your web app is added to the
homescreen on Android. See https://developers.google.com/web/fundamentals/web-app-manifest/
-->
<link rel="manifest" href="%PUBLIC_URL%/manifest.json">
<!--
Notice the use of %PUBLIC_URL% in the tags above.
It will be replaced with the URL of the `public` folder during the build.
Only files inside the `public` folder can be referenced from the HTML.
Unlike "/favicon.ico" or "favicon.ico", "%PUBLIC_URL%/favicon.ico" will
work correctly both with client-side routing and a non-root public URL.
Learn how to configure a non-root public URL by running `npm run build`.
-->
<title>React App</title>
<script type="text/javascript">
uploadConfig={
saveType : "onedrive",
maxSize : "20000mb",
allowedType: [
],
allowSource : "0",
upUrl : "/Upload",
allowShare:"1",
allowRemoteDownload:"1",
allowTorrentDownload:"1",
};
</script>
<!-- <script src="http://lite.aoaoao.me/dev/moxie.js"></script>
<script src="http://lite.aoaoao.me/dev/plupload.dev.js"></script>
<script src="http://lite.aoaoao.me/dev/i18n/zh_CN.js"></script>
<script src="http://lite.aoaoao.me/dev/ui.js"></script>
<script src="http://lite.aoaoao.me/dev/qiniu.js"></script>
<script src="http://lite.aoaoao.me/dev/main.js"></script> -->
</head>
<body>
<noscript>
You need to enable JavaScript to run this app.
</noscript>
<div id="root"></div>
<!--
This HTML file is a template.
If you open it directly in the browser, you will see an empty page.
You can add webfonts, meta tags, or analytics to this file.
The build step will place the bundled scripts into the <body> tag.
To begin the development, run `npm start` or `yarn start`.
To create a production bundle, use `npm run build` or `yarn build`.
-->
</body>
</html>

View File

@ -1,60 +0,0 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<link rel="shortcut icon" href="%PUBLIC_URL%/favicon.ico">
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
<!--
manifest.json provides metadata used when your web app is added to the
homescreen on Android. See https://developers.google.com/web/fundamentals/web-app-manifest/
-->
<link rel="manifest" href="%PUBLIC_URL%/manifest.json">
<!--
Notice the use of %PUBLIC_URL% in the tags above.
It will be replaced with the URL of the `public` folder during the build.
Only files inside the `public` folder can be referenced from the HTML.
Unlike "/favicon.ico" or "favicon.ico", "%PUBLIC_URL%/favicon.ico" will
work correctly both with client-side routing and a non-root public URL.
Learn how to configure a non-root public URL by running `npm run build`.
-->
<title>React App</title>
<script type="text/javascript">
uploadConfig={
saveType : "onedrive",
maxSize : "20000mb",
allowedType: [
],
allowSource : "0",
upUrl : "/Upload",
allowShare:"1",
allowRemoteDownload:"1",
allowTorrentDownload:"1",
};
</script>
<!-- <script src="http://lite.aoaoao.me/dev/moxie.js"></script>
<script src="http://lite.aoaoao.me/dev/plupload.dev.js"></script>
<script src="http://lite.aoaoao.me/dev/i18n/zh_CN.js"></script>
<script src="http://lite.aoaoao.me/dev/ui.js"></script>
<script src="http://lite.aoaoao.me/dev/qiniu.js"></script>
<script src="http://lite.aoaoao.me/dev/main.js"></script> -->
</head>
<body>
<noscript>
You need to enable JavaScript to run this app.
</noscript>
<div id="root"></div>
<!--
This HTML file is a template.
If you open it directly in the browser, you will see an empty page.
You can add webfonts, meta tags, or analytics to this file.
The build step will place the bundled scripts into the <body> tag.
To begin the development, run `npm start` or `yarn start`.
To create a production bundle, use `npm run build` or `yarn build`.
-->
</body>
</html>

View File

@ -1,60 +0,0 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<link rel="shortcut icon" href="%PUBLIC_URL%/favicon.ico">
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
<!--
manifest.json provides metadata used when your web app is added to the
homescreen on Android. See https://developers.google.com/web/fundamentals/web-app-manifest/
-->
<link rel="manifest" href="%PUBLIC_URL%/manifest.json">
<!--
Notice the use of %PUBLIC_URL% in the tags above.
It will be replaced with the URL of the `public` folder during the build.
Only files inside the `public` folder can be referenced from the HTML.
Unlike "/favicon.ico" or "favicon.ico", "%PUBLIC_URL%/favicon.ico" will
work correctly both with client-side routing and a non-root public URL.
Learn how to configure a non-root public URL by running `npm run build`.
-->
<title>React App</title>
<script type="text/javascript">
uploadConfig={
saveType : "onedrive",
maxSize : "20000mb",
allowedType: [
],
allowSource : "0",
upUrl : "/Upload",
allowShare:"1",
allowRemoteDownload:"1",
allowTorrentDownload:"1",
};
</script>
<!-- <script src="http://lite.aoaoao.me/dev/moxie.js"></script>
<script src="http://lite.aoaoao.me/dev/plupload.dev.js"></script>
<script src="http://lite.aoaoao.me/dev/i18n/zh_CN.js"></script>
<script src="http://lite.aoaoao.me/dev/ui.js"></script>
<script src="http://lite.aoaoao.me/dev/qiniu.js"></script>
<script src="http://lite.aoaoao.me/dev/main.js"></script> -->
</head>
<body>
<noscript>
You need to enable JavaScript to run this app.
</noscript>
<div id="root"></div>
<!--
This HTML file is a template.
If you open it directly in the browser, you will see an empty page.
You can add webfonts, meta tags, or analytics to this file.
The build step will place the bundled scripts into the <body> tag.
To begin the development, run `npm start` or `yarn start`.
To create a production bundle, use `npm run build` or `yarn build`.
-->
</body>
</html>

View File

@ -1,79 +0,0 @@
<!DOCTYPE html>
<html lang="zh-cn">
<head>
<meta charset="utf-8">
<link rel="shortcut icon" href="/favicon.ico">
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
<meta name="theme-color" content="{$options.themeColor}" />
<!--
manifest.json provides metadata used when your web app is added to the
homescreen on Android. See https://developers.google.com/web/fundamentals/web-app-manifest/
-->
<link rel="manifest" href="/manifest.json">
<!--
Notice the use of %PUBLIC_URL% in the tags above.
It will be replaced with the URL of the `public` folder during the build.
Only files inside the `public` folder can be referenced from the HTML.
Unlike "/favicon.ico" or "favicon.ico", "%PUBLIC_URL%/favicon.ico" will
work correctly both with client-side routing and a non-root public URL.
Learn how to configure a non-root public URL by running `npm run build`.
-->
<title>用户主页 - {$options.siteName}</title>
<script type="text/javascript">
colorTheme = {:json_encode($options["themeConfig"])};
isHomePage = false;
isSharePage = false;
pageId="profile";
taegetUserInfo = {
uid:{$targetUserInfo.id},
nickname:"{$targetUserInfo.user_nick}",
regDate:"{$targetUserInfo.user_date}",
shareCount:"{$shareCount}",
group:"{$groupData.group_name}",
};
userInfo = {
uid: {$userInfo.uid},
nick: "{$userInfo.userNick}",
email: "{$userInfo.userMail}",
group: "{$userInfo.groupData.group_name}",
groupId: {$userInfo.groupData.id},
groupColor: "{$userInfo.groupData.color}",
regTime: "{$userSQL.user_date}",
homePage: "{$userSQL.profile}",
twoFactor: "{$userSQL.two_step}",
webdav:"{$userInfo.groupData.webdav}",
};
siteInfo = {
mainTitle: "{$options.siteName}",
};
uploadConfig = {
allowSource: false,
allowShare: false,
allowRemoteDownload: "0",
allowTorrentDownload: "0",
};
isMobile = window.innerWidth < 600;
</script>
</head>
<body>
<noscript>
You need to enable JavaScript to run this app.
</noscript>
<div id="root"></div>
<!--
This HTML file is a template.
If you open it directly in the browser, you will see an empty page.
You can add webfonts, meta tags, or analytics to this file.
The build step will place the bundled scripts into the <body> tag.
To begin the development, run `npm start` or `yarn start`.
To create a production bundle, use `npm run build` or `yarn build`.
-->
</body>
</html>

View File

@ -1,60 +0,0 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<link rel="shortcut icon" href="%PUBLIC_URL%/favicon.ico">
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
<!--
manifest.json provides metadata used when your web app is added to the
homescreen on Android. See https://developers.google.com/web/fundamentals/web-app-manifest/
-->
<link rel="manifest" href="%PUBLIC_URL%/manifest.json">
<!--
Notice the use of %PUBLIC_URL% in the tags above.
It will be replaced with the URL of the `public` folder during the build.
Only files inside the `public` folder can be referenced from the HTML.
Unlike "/favicon.ico" or "favicon.ico", "%PUBLIC_URL%/favicon.ico" will
work correctly both with client-side routing and a non-root public URL.
Learn how to configure a non-root public URL by running `npm run build`.
-->
<title>React App</title>
<script type="text/javascript">
uploadConfig={
saveType : "onedrive",
maxSize : "20000mb",
allowedType: [
],
allowSource : "0",
upUrl : "/Upload",
allowShare:"1",
allowRemoteDownload:"1",
allowTorrentDownload:"1",
};
</script>
<!-- <script src="http://lite.aoaoao.me/dev/moxie.js"></script>
<script src="http://lite.aoaoao.me/dev/plupload.dev.js"></script>
<script src="http://lite.aoaoao.me/dev/i18n/zh_CN.js"></script>
<script src="http://lite.aoaoao.me/dev/ui.js"></script>
<script src="http://lite.aoaoao.me/dev/qiniu.js"></script>
<script src="http://lite.aoaoao.me/dev/main.js"></script> -->
</head>
<body>
<noscript>
You need to enable JavaScript to run this app.
</noscript>
<div id="root"></div>
<!--
This HTML file is a template.
If you open it directly in the browser, you will see an empty page.
You can add webfonts, meta tags, or analytics to this file.
The build step will place the bundled scripts into the <body> tag.
To begin the development, run `npm start` or `yarn start`.
To create a production bundle, use `npm run build` or `yarn build`.
-->
</body>
</html>

View File

@ -1,48 +0,0 @@
<!doctype html><html lang="zh-cn"><head><meta charset="utf-8"><link rel="shortcut icon" href="/favicon.ico"><meta name="viewport" content="width=device-width,initial-scale=1,shrink-to-fit=no"><meta name="theme-color" content="{$options.themeColor}"/><link rel="manifest" href="/manifest.json"><title>{$dirData.folder_name} - {$options.siteName}</title><script type="text/javascript">colorTheme = {:json_encode($options["themeConfig"])};
isHomePage = false;
isSharePage = true;
pageId="";
apiURL = {
imgThumb: "/Share/Thumb/{$shareData.share_key}",
preview: "/Share/Preview/{$shareData.share_key}",
download: "/Share/Download/{$shareData.share_key}",
docPreiview: '/Share/DocPreview/{$shareData.share_key}',
listFile:'/Share/ListFile/{$shareData.share_key}'
};
userInfo = {
uid: {$userData.uid},
nick: "{$userData.userNick}",
email: "{$userData.userMail}",
group: "{$userData.groupData.group_name}",
groupId: {$userData.groupData.id},
groupColor: "{$userData.groupData.color}",
};
siteInfo = {
mainTitle: "{$dirData.folder_name}",
};
path = "{$path}";
uploadConfig = {
allowSource: false,
allowShare: false,
allowRemoteDownload: "0",
allowTorrentDownload: "0",
};
shareInfo={
shareDate : "{$shareData.share_time}",
ownerUid:"{$userInfo.id}",
ownerNick:"{$userInfo.user_nick}",
downloadNum:"{$shareData.download_num}",
ViewNum:"{$shareData.view_num}",
shareId:"{$shareData.share_key}",
dirName:"{$dirData.folder_name}",
groupName:"{$groupData.group_name}",
color:"{$groupData.color}",
{eq name="$loginStatus" value="1"}
allowPreview:true,
{else/}
allowPreview:{$allowPreview},
{/eq}
};
mediaType = {},
isMobile = window.innerWidth < 600;</script></head><body><noscript>You need to enable JavaScript to run this app.</noscript><div id="root"></div>
</body></html>

View File

@ -1,22 +0,0 @@
<!doctype html><html lang="zh-cn"><head><meta charset="utf-8"><link rel="shortcut icon" href="/favicon.ico"><meta name="viewport" content="width=device-width,initial-scale=1,shrink-to-fit=no"><meta name="theme-color" content="{$options.themeColor}"/><link rel="manifest" href="/manifest.json"><title>我的分享- {$options.siteName}</title><script type="text/javascript">colorTheme = {:json_encode($options["themeConfig"])};
isHomePage = false;
isSharePage = false;
pageId="shareLock";
userInfo = {
uid: {$userData.uid},
nick: "{$userData.userNick}",
email: "{$userData.userMail}",
group: "{$userData.groupData.group_name}",
groupId: {$userData.groupData.id},
groupColor: "{$userData.groupData.color}",
};
siteInfo = {
mainTitle: "{$options.siteName}",
};
uploadConfig = {
allowSource: false,
allowShare: false,
allowRemoteDownload: "0",
allowTorrentDownload: "0",
};
isMobile = window.innerWidth < 600;</script></head><body><noscript>You need to enable JavaScript to run this app.</noscript><div id="root"></div></body></html>

View File

@ -1,28 +0,0 @@
<!doctype html><html lang="zh-cn"><head><meta charset="utf-8"><link rel="shortcut icon" href="/favicon.ico"><meta name="viewport" content="width=device-width,initial-scale=1,shrink-to-fit=no"><meta name="theme-color" content="{$options.themeColor}"/><link rel="manifest" href="/manifest.json"><title>私密分享 - {$options.siteName}</title><script type="text/javascript">colorTheme = {:json_encode($options["themeConfig"])};
isHomePage = false;
isSharePage = false;
pageId="shareLock";
userInfo = {
uid: {$userData.uid},
nick: "{$userData.userNick}",
email: "{$userData.userMail}",
group: "{$userData.groupData.group_name}",
groupId: {$userData.groupData.id},
groupColor: "{$userData.groupData.color}",
};
siteInfo = {
mainTitle: "{$options.siteName}",
};
uploadConfig = {
allowSource: false,
allowShare: false,
allowRemoteDownload: "0",
allowTorrentDownload: "0",
};
shareInfo={
shareDate : "{$shareData.share_time}",
shareId : "{$shareData.share_key}",
ownerUid:"{$userInfo.id}",
ownerNick:"{$userInfo.user_nick}",
};
isMobile = window.innerWidth < 600;</script></head><body><noscript>You need to enable JavaScript to run this app.</noscript><div id="root"></div></body></html>

View File

@ -1,48 +0,0 @@
<!doctype html><html lang="zh-cn"><head><meta charset="utf-8"><link rel="shortcut icon" href="/favicon.ico"><meta name="viewport" content="width=device-width,initial-scale=1,shrink-to-fit=no"><meta name="theme-color" content="{$options.themeColor}"/><link rel="manifest" href="/manifest.json"><title>{$fileData.orign_name} - {$options.siteName}</title><script type="text/javascript">colorTheme = {:json_encode($options["themeConfig"])};
isHomePage = false;
isSharePage = true;
pageId="fileShare";
apiURL = {
imgThumb: "/Share/Thumb/{$shareData.share_key}",
preview: "/Share/Preview/{$shareData.share_key}",
download: "/Share/Download/{$shareData.share_key}",
docPreiview: '/Share/DocPreview/{$shareData.share_key}',
listFile:'/Share/ListFile/{$shareData.share_key}'
};
userInfo = {
uid: {$userData.uid},
nick: "{$userData.userNick}",
email: "{$userData.userMail}",
group: "{$userData.groupData.group_name}",
groupId: {$userData.groupData.id},
groupColor: "{$userData.groupData.color}",
};
siteInfo = {
mainTitle: "{$fileData.orign_name}",
};
path = "{$path}";
uploadConfig = {
allowSource: false,
allowShare: false,
allowRemoteDownload: "0",
allowTorrentDownload: "0",
};
shareInfo={
fileSize : "{$fileData.size}",
shareDate : "{$shareData.share_time}",
ownerUid:"{$userInfo.id}",
ownerNick:"{$userInfo.user_nick}",
downloadNum:"{$shareData.download_num}",
ViewNum:"{$shareData.view_num}",
shareId:"{$shareData.share_key}",
fileName:"{$fileData.orign_name}",
picSize:"{$fileData.pic_info}",
{eq name="$loginStatus" value="1"}
allowPreview:true,
{else/}
allowPreview:{$allowPreview},
{/eq}
};
mediaType = {},
isMobile = window.innerWidth < 600;</script></head><body><noscript>You need to enable JavaScript to run this app.</noscript><div id="root"></div>
</body></html>

View File

@ -0,0 +1,2 @@
// Chinese (China) (zh_CN)
plupload.addI18n({"Stop Upload":"停止上传","Upload URL might be wrong or doesn't exist.":"上传的URL可能是错误的或不存在。","tb":"tb","Size":"大小","Close":"关闭","Init error.":"初始化错误。","Add files to the upload queue and click the start button.":"将文件添加到上传队列,然后点击”开始上传“按钮。","Filename":"文件名","Image format either wrong or not supported.":"图片格式错误或者不支持。","Status":"状态","HTTP Error.":"HTTP 错误。","Start Upload":"开始上传","mb":"mb","kb":"kb","Duplicate file error.":"重复文件错误。","File size error.":"文件大小错误。","N/A":"N/A","gb":"gb","Error: Invalid file extension:":"错误:无效的文件扩展名:","Select files":"选择文件","%s already present in the queue.":"%s 已经在当前队列里。","File: %s":"文件: %s","b":"b","Uploaded %d/%d files":"已上传 %d/%d 个文件","Upload element accepts only %d file(s) at a time. Extra files were stripped.":"每次只接受同时上传 %d 个文件,多余的文件将会被删除。","%d files queued":"%d 个文件加入到队列","File: %s, size: %d, max file size: %d":"文件: %s, 大小: %d, 最大文件大小: %d","Drag files here.":"把文件拖到这里。","Runtime ran out of available memory.":"运行时已消耗所有可用内存。","File count error.":"文件数量错误。","File extension error.":"文件扩展名错误。","Error: File too large:":"错误: 文件太大:","Add Files":"增加文件"});

View File

@ -0,0 +1,274 @@
// /*global Qiniu */
// /*global plupload */
// /*global FileProgress */
// /*global hljs */
// function getCookieByString(cookieName){
// var start = document.cookie.indexOf(cookieName+'=');
// if (start == -1) return false;
// start = start+cookieName.length+1;
// var end = document.cookie.indexOf(';', start);
// if (end == -1) end=document.cookie.length;
// return document.cookie.substring(start, end);
// }
// if(uploadConfig.saveType == "oss" || uploadConfig.saveType == "upyun" || uploadConfig.saveType == "s3"){
// ChunkSize = "0";
// }else{
// ChunkSize = "4mb";
// }
// uploader = Qiniu.uploader({
// runtimes: 'html5,flash,html4',
// browse_button: 'pickfiles',
// container: 'container',
// drop_element: 'container',
// max_file_size: uploadConfig.maxSize,
// flash_swf_url: '/bower_components/plupload/js/Moxie.swf',
// dragdrop: true,
// chunk_size: ChunkSize,
// filters: {
// mime_types :uploadConfig.allowedType,
// },
// multi_selection: !(moxie.core.utils.Env.OS.toLowerCase() === "ios"),
// uptoken_url: "/Upload/Token",
// // uptoken_func: function(){
// // var ajax = new XMLHttpRequest();
// // ajax.open('GET', $('#uptoken_url').val(), false);
// // ajax.setRequestHeader("If-Modified-Since", "0");
// // ajax.send();
// // if (ajax.status === 200) {
// // var res = JSON.parse(ajax.responseText);
// // console.log('custom uptoken_func:' + res.uptoken);
// // return res.uptoken;
// // } else {
// // console.log('custom uptoken_func err');
// // return '';
// // }
// // },
// domain: $('#domain').val(),
// get_new_uptoken: true,
// // downtoken_url: '/downtoken',
// // unique_names: true,
// // save_key: true,
// // x_vars: {
// // 'id': '1234',
// // 'time': function(up, file) {
// // var time = (new Date()).getTime();
// // // do something with 'time'
// // return time;
// // },
// // },
// auto_start: true,
// log_level: 5,
// init: {
// 'FilesAdded': function(up, files) {
// $('table').show();
// $('#upload_box').show();
// $('#success').hide();
// $('#info_box').hide();
// $.cookie('path', decodeURI(getCookieByString("path_tmp")));
// plupload.each(files, function(file) {
// var progress = new FileProgress(file, 'fsUploadProgress');
// progress.setStatus("等待...");
// progress.bindUploadCancel(up);
// });
// },
// 'BeforeUpload': function(up, file) {
// var progress = new FileProgress(file, 'fsUploadProgress');
// var chunk_size = plupload.parseSize(this.getOption('chunk_size'));
// if (up.runtime === 'html5' && chunk_size) {
// progress.setChunkProgess(chunk_size);
// }
// },
// 'UploadProgress': function(up, file) {
// var progress = new FileProgress(file, 'fsUploadProgress');
// var chunk_size = plupload.parseSize(this.getOption('chunk_size'));
// progress.setProgress(file.percent + "%", file.speed, chunk_size);
// },
// 'UploadComplete': function(up, file) {
// $('#success').show();
// toastr["success"]("队列全部文件处理完毕");
// getMemory();
// },
// 'FileUploaded': function(up, file, info) {
// var progress = new FileProgress(file, 'fsUploadProgress');
// progress.setComplete(up, info);
// },
// 'Error': function(up, err, errTip) {
// $('#upload_box').show();
// $('table').show();
// $('#info_box').hide();
// var progress = new FileProgress(err.file, 'fsUploadProgress');
// progress.setError();
// progress.setStatus(errTip);
// toastr["error"]("上传时遇到错误");
// }
// // ,
// // 'Key': function(up, file) {
// // var key = "";
// // // do something with key
// // return key
// // }
// }
// });
// uploader.bind('FileUploaded', function(up,file) {
// console.log('a file is uploaded');
// });
// $('#container').on(
// 'dragenter',
// function(e) {
// e.preventDefault();
// $('#container').addClass('draging');
// e.stopPropagation();
// }
// ).on('drop', function(e) {
// e.preventDefault();
// $('#container').removeClass('draging');
// e.stopPropagation();
// }).on('dragleave', function(e) {
// e.preventDefault();
// $('#container').removeClass('draging');
// e.stopPropagation();
// }).on('dragover', function(e) {
// e.preventDefault();
// $('#container').addClass('draging');
// e.stopPropagation();
// });
// $('#show_code').on('click', function() {
// $('#myModal-code').modal();
// $('pre code').each(function(i, e) {
// hljs.highlightBlock(e);
// });
// });
// $('body').on('click', 'table button.btn', function() {
// $(this).parents('tr').next().toggle();
// });
// var getRotate = function(url) {
// if (!url) {
// return 0;
// }
// var arr = url.split('/');
// for (var i = 0, len = arr.length; i < len; i++) {
// if (arr[i] === 'rotate') {
// return parseInt(arr[i + 1], 10);
// }
// }
// return 0;
// };
// $('#myModal-img .modal-body-footer').find('a').on('click', function() {
// var img = $('#myModal-img').find('.modal-body img');
// var key = img.data('key');
// var oldUrl = img.attr('src');
// var originHeight = parseInt(img.data('h'), 10);
// var fopArr = [];
// var rotate = getRotate(oldUrl);
// if (!$(this).hasClass('no-disable-click')) {
// $(this).addClass('disabled').siblings().removeClass('disabled');
// if ($(this).data('imagemogr') !== 'no-rotate') {
// fopArr.push({
// 'fop': 'imageMogr2',
// 'auto-orient': true,
// 'strip': true,
// 'rotate': rotate,
// 'format': 'png'
// });
// }
// } else {
// $(this).siblings().removeClass('disabled');
// var imageMogr = $(this).data('imagemogr');
// if (imageMogr === 'left') {
// rotate = rotate - 90 < 0 ? rotate + 270 : rotate - 90;
// } else if (imageMogr === 'right') {
// rotate = rotate + 90 > 360 ? rotate - 270 : rotate + 90;
// }
// fopArr.push({
// 'fop': 'imageMogr2',
// 'auto-orient': true,
// 'strip': true,
// 'rotate': rotate,
// 'format': 'png'
// });
// }
// $('#myModal-img .modal-body-footer').find('a.disabled').each(function() {
// var watermark = $(this).data('watermark');
// var imageView = $(this).data('imageview');
// var imageMogr = $(this).data('imagemogr');
// if (watermark) {
// fopArr.push({
// fop: 'watermark',
// mode: 1,
// image: 'http://www.b1.qiniudn.com/images/logo-2.png',
// dissolve: 100,
// gravity: watermark,
// dx: 100,
// dy: 100
// });
// }
// if (imageView) {
// var height;
// switch (imageView) {
// case 'large':
// height = originHeight;
// break;
// case 'middle':
// height = originHeight * 0.5;
// break;
// case 'small':
// height = originHeight * 0.1;
// break;
// default:
// height = originHeight;
// break;
// }
// fopArr.push({
// fop: 'imageView2',
// mode: 3,
// h: parseInt(height, 10),
// q: 100,
// format: 'png'
// });
// }
// if (imageMogr === 'no-rotate') {
// fopArr.push({
// 'fop': 'imageMogr2',
// 'auto-orient': true,
// 'strip': true,
// 'rotate': 0,
// 'format': 'png'
// });
// }
// });
// var newUrl = Qiniu.pipeline(fopArr, key);
// var newImg = new Image();
// img.attr('src', 'images/loading.gif');
// newImg.onload = function() {
// img.attr('src', newUrl);
// img.parent('a').attr('href', newUrl);
// };
// newImg.src = newUrl;
// return false;
// });
// function t(){
// uploader.getNewUpToken();
// }

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1 @@
Path

View File

@ -0,0 +1,278 @@
/*global plupload */
/*global qiniu */
function FileProgress(file, targetID) {
this.fileProgressID = file.id;
this.file = file;
this.opacity = 100;
this.height = 0;
this.fileProgressWrapper = $('#' + this.fileProgressID);
if (!this.fileProgressWrapper.length) {
// <div class="progress">
// <div class="progress-bar progress-bar-info" role="progressbar" aria-valuenow="20" aria-valuemin="0" aria-valuemax="100" style="width: 20%">
// <span class="sr-only">20% Complete</span>
// </div>
// </div>
this.fileProgressWrapper = $('<tr></tr>');
var Wrappeer = this.fileProgressWrapper;
Wrappeer.attr('id', this.fileProgressID).addClass('progressContainer');
var progressText = $("<td/>");
progressText.addClass('progressName').text(file.name);
var fileSize = plupload.formatSize(file.size).toUpperCase();
var progressSize = $("<td/>");
progressSize.addClass("progressFileSize").text(fileSize);
var progressBarTd = $("<td/>");
var progressBarBox = $("<div/>");
progressBarBox.addClass('info');
var progressBarWrapper = $("<div/>");
progressBarWrapper.addClass("progress progress-striped");
var progressBar = $("<div/>");
progressBar.addClass("progress-bar progress-bar-info")
.attr('role', 'progressbar')
.attr('aria-valuemax', 100)
.attr('aria-valuenow', 0)
.attr('aria-valuein', 0)
.width('0%');
var progressBarPercent = $('<span class=sr-only />');
progressBarPercent.text(fileSize);
var progressCancel = $('<a href=javascript:; />');
progressCancel.show().addClass('progressCancel').text('×');
progressBar.append(progressBarPercent);
progressBarWrapper.append(progressBar);
progressBarBox.append(progressBarWrapper);
progressText.append(progressCancel);
var progressBarStatus = $('<div class="status text-center"/>');
progressBarBox.append(progressBarStatus);
progressBarTd.append(progressBarBox);
Wrappeer.append(progressText);
Wrappeer.append(progressSize);
Wrappeer.append(progressBarTd);
$('#' + targetID).append(Wrappeer);
} else {
this.reset();
}
this.height = this.fileProgressWrapper.offset().top;
this.setTimer(null);
}
FileProgress.prototype.setTimer = function(timer) {
this.fileProgressWrapper.FP_TIMER = timer;
};
FileProgress.prototype.getTimer = function(timer) {
return this.fileProgressWrapper.FP_TIMER || null;
};
FileProgress.prototype.reset = function() {
this.fileProgressWrapper.attr('class', "progressContainer");
this.fileProgressWrapper.find('td .progress .progress-bar-info').attr('aria-valuenow', 0).width('0%').find('span').text('');
this.appear();
};
FileProgress.prototype.setChunkProgess = function(chunk_size) {
var chunk_amount = Math.ceil(this.file.size / chunk_size);
if (chunk_amount === 1) {
return false;
}
var viewProgess = $('<button class="btn btn-default">查看分块上传进度</button>');
var progressBarChunkTr = $('<tr class="chunk-status-tr"><td colspan=3></td></tr>');
var progressBarChunk = $('<div/>');
for (var i = 1; i <= chunk_amount; i++) {
var col = $('<div class="col-md-2"/>');
var progressBarWrapper = $('<div class="progress progress-striped"></div');
var progressBar = $("<div/>");
progressBar.addClass("progress-bar progress-bar-info text-left")
.attr('role', 'progressbar')
.attr('aria-valuemax', 100)
.attr('aria-valuenow', 0)
.attr('aria-valuein', 0)
.width('0%')
.attr('id', this.file.id + '_' + i)
.text('');
var progressBarStatus = $('<span/>');
progressBarStatus.addClass('chunk-status').text();
progressBarWrapper.append(progressBar);
progressBarWrapper.append(progressBarStatus);
col.append(progressBarWrapper);
progressBarChunk.append(col);
}
if(!this.fileProgressWrapper.find('td:eq(2) .btn-default').length){
this.fileProgressWrapper.find('td>div').append(viewProgess);
}
progressBarChunkTr.hide().find('td').append(progressBarChunk);
progressBarChunkTr.insertAfter(this.fileProgressWrapper);
};
FileProgress.prototype.setProgress = function(percentage, speed, chunk_size) {
this.fileProgressWrapper.attr('class', "progressContainer green");
var file = this.file;
var uploaded = file.loaded;
var size = plupload.formatSize(uploaded).toUpperCase();
var formatSpeed = plupload.formatSize(speed).toUpperCase();
var progressbar = this.fileProgressWrapper.find('td .progress').find('.progress-bar-info');
if (this.fileProgressWrapper.find('.status').text() === '取消上传'){
return;
}
this.fileProgressWrapper.find('.status').text("已上传: " + size + " 上传速度: " + formatSpeed + "/s");
percentage = parseInt(percentage, 10);
if (file.status !== plupload.DONE && percentage === 100) {
percentage = 99;
}
progressbar.attr('aria-valuenow', percentage).css('width', percentage + '%');
if (chunk_size) {
var chunk_amount = Math.ceil(file.size / chunk_size);
if (chunk_amount === 1) {
return false;
}
var current_uploading_chunk = Math.ceil(uploaded / chunk_size);
var pre_chunk, text;
for (var index = 0; index < current_uploading_chunk; index++) {
pre_chunk = $('#' + file.id + "_" + index);
pre_chunk.width('100%').removeClass().addClass('alert alert-success').attr('aria-valuenow', 100);
text = "块" + index + "上传进度100%";
pre_chunk.next().html(text);
}
var currentProgessBar = $('#' + file.id + "_" + current_uploading_chunk);
var current_chunk_percent;
if (current_uploading_chunk < chunk_amount) {
if (uploaded % chunk_size) {
current_chunk_percent = ((uploaded % chunk_size) / chunk_size * 100).toFixed(2);
} else {
current_chunk_percent = 100;
currentProgessBar.removeClass().addClass('alert alert-success');
}
} else {
var last_chunk_size = file.size - chunk_size * (chunk_amount - 1);
var left_file_size = file.size - uploaded;
if (left_file_size % last_chunk_size) {
current_chunk_percent = ((uploaded % chunk_size) / last_chunk_size * 100).toFixed(2);
} else {
current_chunk_percent = 100;
currentProgessBar.removeClass().addClass('alert alert-success');
}
}
currentProgessBar.width(current_chunk_percent + '%');
currentProgessBar.attr('aria-valuenow', current_chunk_percent);
text = "块" + current_uploading_chunk + "上传进度" + current_chunk_percent + '%';
currentProgessBar.next().html(text);
}
this.appear();
};
FileProgress.prototype.setComplete = function(up, info) {
var td = this.fileProgressWrapper.find('td:eq(2)'),
tdProgress = td.find('.progress');
var res;
var url;
if(uploadConfig.saveType == "oss"){
url = "oss";
str = "<div class='success_text'>上传成功</div>";
}else{
res = $.parseJSON(info);
if (res.url) {
url = res.url;
str = "<div class='success_text'>上传成功</div>";
} else {
var domain = up.getOption('domain');
url = domain + encodeURI(res.key);
var link = domain + res.key;
str = "<div class='success_text'>上传成功</div>";
}
}
tdProgress.html(str).removeClass().next().next('.status').hide();
this.fileProgressWrapper.find('td:eq(0) .progressCancel').hide();
td.find('.status').hide();
angular.element(document.querySelector('angular-filemanager > div')).scope().fileNavigator.refresh();
};
FileProgress.prototype.setError = function() {
this.fileProgressWrapper.find('td:eq(2)').attr('class', 'text-warning');
this.fileProgressWrapper.find('td:eq(2) .progress').css('width', 0).hide();
this.fileProgressWrapper.find('button').hide();
this.fileProgressWrapper.next('.chunk-status-tr').hide();
};
FileProgress.prototype.setCancelled = function(manual) {
var progressContainer = 'progressContainer';
if (!manual) {
progressContainer += ' red';
}
this.fileProgressWrapper.attr('class', progressContainer);
this.fileProgressWrapper.find('td .progress').remove();
this.fileProgressWrapper.find('td:eq(2) .btn-default').hide();
this.fileProgressWrapper.find('td:eq(0) .progressCancel').hide();
};
FileProgress.prototype.setStatus = function(status, isUploading) {
if (!isUploading) {
this.fileProgressWrapper.find('.status').text(status).attr('class', 'status text-left');
}
};
// 绑定取消上传事件
FileProgress.prototype.bindUploadCancel = function(up) {
var self = this;
if (up) {
self.fileProgressWrapper.find('td:eq(0) .progressCancel').on('click', function(){
self.setCancelled(false);
self.setStatus("取消上传");
self.fileProgressWrapper.find('.status').css('left', '0');
up.removeFile(self.file);
});
}
};
FileProgress.prototype.appear = function() {
if (this.getTimer() !== null) {
clearTimeout(this.getTimer());
this.setTimer(null);
}
if (this.fileProgressWrapper[0].filters) {
try {
this.fileProgressWrapper[0].filters.item("DXImageTransform.Microsoft.Alpha").opacity = 100;
} catch (e) {
// If it is not set initially, the browser will throw an error. This will set it if it is not set yet.
this.fileProgressWrapper.css('filter', "progid:DXImageTransform.Microsoft.Alpha(opacity=100)");
}
} else {
this.fileProgressWrapper.css('opacity', 1);
}
this.fileProgressWrapper.css('height', '');
this.height = this.fileProgressWrapper.offset().top;
this.opacity = 100;
this.fileProgressWrapper.show();
};

File diff suppressed because it is too large Load Diff

View File

@ -1,60 +0,0 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<link rel="shortcut icon" href="%PUBLIC_URL%/favicon.ico">
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
<!--
manifest.json provides metadata used when your web app is added to the
homescreen on Android. See https://developers.google.com/web/fundamentals/web-app-manifest/
-->
<link rel="manifest" href="%PUBLIC_URL%/manifest.json">
<!--
Notice the use of %PUBLIC_URL% in the tags above.
It will be replaced with the URL of the `public` folder during the build.
Only files inside the `public` folder can be referenced from the HTML.
Unlike "/favicon.ico" or "favicon.ico", "%PUBLIC_URL%/favicon.ico" will
work correctly both with client-side routing and a non-root public URL.
Learn how to configure a non-root public URL by running `npm run build`.
-->
<title>React App</title>
<script type="text/javascript">
uploadConfig={
saveType : "onedrive",
maxSize : "20000mb",
allowedType: [
],
allowSource : "0",
upUrl : "/Upload",
allowShare:"1",
allowRemoteDownload:"1",
allowTorrentDownload:"1",
};
</script>
<!-- <script src="http://lite.aoaoao.me/dev/moxie.js"></script>
<script src="http://lite.aoaoao.me/dev/plupload.dev.js"></script>
<script src="http://lite.aoaoao.me/dev/i18n/zh_CN.js"></script>
<script src="http://lite.aoaoao.me/dev/ui.js"></script>
<script src="http://lite.aoaoao.me/dev/qiniu.js"></script>
<script src="http://lite.aoaoao.me/dev/main.js"></script> -->
</head>
<body>
<noscript>
You need to enable JavaScript to run this app.
</noscript>
<div id="root"></div>
<!--
This HTML file is a template.
If you open it directly in the browser, you will see an empty page.
You can add webfonts, meta tags, or analytics to this file.
The build step will place the bundled scripts into the <body> tag.
To begin the development, run `npm start` or `yarn start`.
To create a production bundle, use `npm run build` or `yarn build`.
-->
</body>
</html>

View File

@ -1,74 +0,0 @@
<!DOCTYPE html>
<html lang="zh-cn">
<head>
<meta charset="utf-8">
<link rel="shortcut icon" href="/favicon.ico">
<link rel="stylesheet" href="/static/css/mdeditor/editormd.min.css" />
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
<meta name="theme-color" content="{$options.themeColor}" />
<!--
manifest.json provides metadata used when your web app is added to the
homescreen on Android. See https://developers.google.com/web/fundamentals/web-app-manifest/
-->
<link rel="manifest" href="/manifest.json">
<!--
Notice the use of %PUBLIC_URL% in the tags above.
It will be replaced with the URL of the `public` folder during the build.
Only files inside the `public` folder can be referenced from the HTML.
Unlike "/favicon.ico" or "favicon.ico", "%PUBLIC_URL%/favicon.ico" will
work correctly both with client-side routing and a non-root public URL.
Learn how to configure a non-root public URL by running `npm run build`.
-->
<title>{$fileName} - {$options.siteName}</title>
<script type="text/javascript">
colorTheme = {:json_encode($options["themeConfig"])};
isHomePage = false;
isSharePage = false;
pageId="";
apiURL={
imgThumb:"/File/Thumb",
preview:"/File/Preview",
download:"/File/Download",
docPreiview:'/File/DocPreview',
};
userInfo={
uid:{$userInfo.uid},
nick:"{$userInfo.userNick}",
email:"{$userInfo.userMail}",
group:"{$userInfo.groupData.group_name}",
groupId:{$userInfo.groupData.id},
groupColor:"{$userInfo.groupData.color}",
};
siteInfo = {
mainTitle:"{$fileName}",
};
fileInfo={
url:"{$url}",
name:"{$fileName}",
path:"{$path}",
};
mediaType = {},
isMobile = window.innerWidth<600;
</script>
</head>
<body>
<noscript>
You need to enable JavaScript to run this app.
</noscript>
<div id="root"></div>
<!--
This HTML file is a template.
If you open it directly in the browser, you will see an empty page.
You can add webfonts, meta tags, or analytics to this file.
The build step will place the bundled scripts into the <body> tag.
To begin the development, run `npm start` or `yarn start`.
To create a production bundle, use `npm run build` or `yarn build`.
-->
</body>
<script src="/static/js/jquery.min.js"></script>
<script src="/static/js/mdeditor/editormd.min.js"></script>
</html>

View File

@ -1,70 +0,0 @@
<!DOCTYPE html>
<html lang="zh-cn">
<head>
<meta charset="utf-8">
<link rel="shortcut icon" href="/favicon.ico">
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
<meta name="theme-color" content="{$options.themeColor}" />
<!--
manifest.json provides metadata used when your web app is added to the
homescreen on Android. See https://developers.google.com/web/fundamentals/web-app-manifest/
-->
<link rel="manifest" href="%PUBLIC_URL%/manifest.json">
<!--
Notice the use of %PUBLIC_URL% in the tags above.
It will be replaced with the URL of the `public` folder during the build.
Only files inside the `public` folder can be referenced from the HTML.
Unlike "/favicon.ico" or "favicon.ico", "%PUBLIC_URL%/favicon.ico" will
work correctly both with client-side routing and a non-root public URL.
Learn how to configure a non-root public URL by running `npm run build`.
-->
<title>{$fileName} - {$options.siteName}</title>
<script type="text/javascript">
colorTheme = {:json_encode($options["themeConfig"])};
isHomePage = false;
isSharePage = false;
pageId="";
apiURL={
imgThumb:"/File/Thumb",
preview:"/File/Preview",
download:"/File/Download",
docPreiview:'/File/DocPreview',
};
userInfo={
uid:{$userInfo.uid},
nick:"{$userInfo.userNick}",
email:"{$userInfo.userMail}",
group:"{$userInfo.groupData.group_name}",
groupId:{$userInfo.groupData.id},
groupColor:"{$userInfo.groupData.color}",
};
siteInfo = {
mainTitle:"{$fileName}",
};
videoInfo={
url:"{$url}",
name:"{$fileName}"
};
mediaType = {},
isMobile = window.innerWidth<600;
</script>
</head>
<body>
<noscript>
You need to enable JavaScript to run this app.
</noscript>
<div id="root"></div>
<!--
This HTML file is a template.
If you open it directly in the browser, you will see an empty page.
You can add webfonts, meta tags, or analytics to this file.
The build step will place the bundled scripts into the <body> tag.
To begin the development, run `npm start` or `yarn start`.
To create a production bundle, use `npm run build` or `yarn build`.
-->
</body>
</html>

View File

@ -41,7 +41,7 @@ export default function App() {
<React.Fragment>
<ThemeProvider theme={theme}>
<div className={classes.root} id="container">
<CssBaseline />
<CssBaseline />
<AlertBar />
<Navbar />
<main className={classes.content}>

View File

@ -24,20 +24,20 @@ const styles = theme => ({
"&:hover": {
border: "1px solid #d0d0d0",
},
backgroundColor: theme.palette.explorer.bgSelected,
backgroundColor: theme.palette.type == "dark" ? "#fff" : theme.palette.explorer.bgSelected,
},
notSelected: {
"&:hover": {
backgroundColor: "#f9f9f9",
backgroundColor: theme.palette.background.default,
border: "1px solid #d0d0d0",
},
backgroundColor: theme.palette.background.paper,
},
button: {
border: "1px solid #dadce0",
border: "1px solid "+theme.palette.divider,
width: "100%",
borderRadius: "6px",
boxSizing: "border-box",
@ -46,11 +46,11 @@ const styles = theme => ({
display: "initial",
},
folderNameSelected: {
color: theme.palette.primary.dark,
color: theme.palette.type == "dark" ? theme.palette.background.paper : theme.palette.primary.dark,
fontWeight: "500",
},
folderNameNotSelected: {
color: theme.palette.explorer.filename,
color: theme.palette.text.secondary,
},
folderName: {
marginTop: "15px",

View File

@ -15,13 +15,13 @@ const styles = theme => ({
"&:hover": {
border: "1px solid #d0d0d0",
},
backgroundColor: theme.palette.explorer.bgSelected,
backgroundColor: theme.palette.type == "dark" ? "#fff" : theme.palette.explorer.bgSelected,
},
notSelected: {
"&:hover": {
backgroundColor: "#f9f9f9",
backgroundColor: theme.palette.background.default,
border: "1px solid #d0d0d0",
},
backgroundColor: theme.palette.background.paper,
@ -29,7 +29,7 @@ const styles = theme => ({
button: {
height: "50px",
border: "1px solid #dadce0",
border: "1px solid "+theme.palette.divider,
width: "100%",
borderRadius: "6px",
boxSizing: "border-box",
@ -48,11 +48,11 @@ const styles = theme => ({
color: theme.palette.explorer.icon,
},
folderNameSelected: {
color: theme.palette.primary.dark,
color: theme.palette.type == "dark" ? theme.palette.background.paper : theme.palette.primary.dark,
fontWeight: "500",
},
folderNameNotSelected: {
color: theme.palette.explorer.filename,
color: theme.palette.text.secondary,
},
folderName: {
marginTop: "15px",

View File

@ -112,7 +112,7 @@ const styles = theme => ({
},
height:"48px",
overflow:"hidden",
backgroundColor:"#fff",
backgroundColor:theme.palette.background.paper,
},
navigatorContainer:{
"display": "flex",

View File

@ -22,13 +22,12 @@ const styles = theme => ({
"&:hover": {
border: "1px solid #d0d0d0",
},
backgroundColor: theme.palette.explorer.bgSelected,
backgroundColor: theme.palette.type == "dark" ? "#fff" : theme.palette.explorer.bgSelected,
},
notSelected: {
"&:hover": {
backgroundColor: "#f9f9f9",
backgroundColor: theme.palette.background.default,
border: "1px solid #d0d0d0",
},
backgroundColor: theme.palette.background.paper,
@ -36,7 +35,7 @@ const styles = theme => ({
button: {
height: "50px",
border: "1px solid #dadce0",
border: "1px solid "+theme.palette.divider,
width: "100%",
borderRadius: "6px",
boxSizing: "border-box",
@ -55,11 +54,11 @@ const styles = theme => ({
color: theme.palette.explorer.icon,
},
folderNameSelected: {
color: theme.palette.primary.dark,
color: theme.palette.type == "dark" ? theme.palette.background.paper : theme.palette.primary.dark,
fontWeight: "500",
},
folderNameNotSelected: {
color: theme.palette.explorer.filename,
color: theme.palette.text.secondary,
},
folderName: {
marginTop: "15px",
@ -233,7 +232,9 @@ class SmallIconCompoment extends Component {
<Typography className={classNames(classes.folderName, {
[classes.folderNameSelected]: isSelected,
[classes.folderNameNotSelected]: !isSelected,
})}>{this.props.file.name}</Typography>
})}
variant="body2"
>{this.props.file.name}</Typography>
</Tooltip>
</ButtonBase>
);

View File

@ -27,12 +27,12 @@ import { withStyles, TableCell, TableRow, Typography } from "@material-ui/core";
const styles = theme => ({
selected: {
"&:hover": {},
backgroundColor: theme.palette.explorer.bgSelected
backgroundColor: theme.palette.type == "dark" ? theme.palette.background.paper : theme.palette.explorer.bgSelected,
},
notSelected: {
"&:hover": {
backgroundColor: "#ececec"
backgroundColor: theme.palette.background.default,
}
},
icon: {
@ -106,12 +106,12 @@ const styles = theme => ({
verticalAlign: "middle"
},
folderNameSelected: {
color: theme.palette.primary.dark,
color: theme.palette.type == "dark" ? "#fff" : theme.palette.primary.dark,
fontWeight: "500",
userSelect: "none"
},
folderNameNotSelected: {
color: theme.palette.explorer.filename,
color: theme.palette.text.secondary,
userSelect: "none"
},
folderName: {

View File

@ -93,7 +93,7 @@ class FileList extends Component {
updateStatus(file){
var filesNow = this.state.files;
var fileID = filesNow.findIndex((f) => { return f.id === file.id });
if (fileID !== -1) {
if (!file.errMsg) {
if(filesNow[fileID].status!==4){
filesNow[fileID] = file;
this.setState({
@ -203,6 +203,7 @@ class FileList extends Component {
}else{
progressItem = (<ListItemText className={classes.listAction} primary={item.name} secondary={item.status} />);
}
return (
<div key={i}>
<ListItem button >

View File

@ -3,6 +3,7 @@ import scriptLoader from "../loader/index.js";
import { connect } from "react-redux";
import { refreshFileList, refreshStorage } from "../actions/index";
import FileList from "./Upload/FileList.js";
import Auth from "../middleware/Auth"
let loaded = false;
@ -53,21 +54,26 @@ class UploaderCompoment extends Component {
return;
}
loaded = true;
var user = Auth.GetUser();
window.uploadConfig = user.policy;
console.log(window.uploadConfig);
this.uploader = window.Qiniu.uploader({
runtimes: "html5",
browse_button: "pickfiles",
container: "container",
drop_element: "container",
max_file_size: window.uploadConfig.maxSize,
max_file_size: user.policy.maxSize,
dragdrop: true,
chunk_size: window.ChunkSize,
chunk_size: user.policy.saveType == "qiniu" ? 4*1024*1024 : 0,
filters: {
mime_types: window.uploadConfig.allowedType
mime_types: user.policy.allowedType
},
// iOS不能多选
multi_selection: true,
uptoken_url: "/Upload/Token",
uptoken_url: "/api/v3/file/token",
uptoken:user.policy.saveType == "local" ? "token" : null,
domain: "s",
max_retries:0,
get_new_uptoken: true,
auto_start: true,
log_level: 5,
@ -86,6 +92,7 @@ class UploaderCompoment extends Component {
this.setState({ queued: up.total.queued });
},
UploadProgress: (up, file) => {
console.log("UploadProgress",file);
this.fileList["updateStatus"](file);
},
UploadComplete: (up, file) => {

View File

@ -109,7 +109,7 @@ const defaultStatus = InitSiteConfig({
}
});
let store = createStore(cloureveApp, defaultStatus);
let store = createStore(cloureveApp, defaultStatus,window.__REDUX_DEVTOOLS_EXTENSION__ && window.__REDUX_DEVTOOLS_EXTENSION__());
UpdateSiteConfig(store);
ReactDOM.render(

View File

@ -165,6 +165,38 @@ const cloudreveApp = (state = [], action) => {
});
case 'NAVIGATOR_TO':
return doNavigate(action.path,state);
case 'TOGGLE_DAYLIGHT_MODE':
const copy = Object.assign({}, state);
if (copy.siteConfig.theme.palette.type === undefined || copy.siteConfig.theme.palette.type === "light"){
return {
...state,
siteConfig: {
...state.siteConfig,
theme:{
...state.siteConfig.theme,
palette:{
...state.siteConfig.theme.palette,
type:"dark",
}
},
},
};
}
return {
...state,
siteConfig: {
...state.siteConfig,
theme:{
...state.siteConfig.theme,
palette:{
...state.siteConfig.theme.palette,
type:"light",
}
},
},
};
return copy
case 'APPLY_THEME':
if (state.siteConfig.themes !== null){
let themes = JSON.parse(state.siteConfig.themes);

View File

@ -1,35 +0,0 @@
const proxy = require('http-proxy-middleware');
module.exports = function(app) {
app.use('/File', proxy({
target: 'https://lite.aoaoao.me',
changeOrigin: true,
onProxyReq (proxyReq, req) {
// 将本地请求的头信息复制一遍给代理。
// 包含cookie信息这样就能用登录后的cookie请求相关资源
Object.keys(req.headers).forEach(function (key) {
proxyReq.setHeader(key, req.headers[key])
})
},
onProxyRes (proxyRes, req, res) {
// 将服务器返回的头信息,复制一遍给本地请求的响应。
// 这样就能实现 执行完登录后本地的返回请求中也有相关cookie从而实现登录功能代理。
Object.keys(proxyRes.headers).forEach(function (key) {
res.append(key, proxyRes.headers[key])
})
}
}));
app.use('/static/js/uploader', proxy({
target: 'https://lite.aoaoao.me',
changeOrigin: true,
}));
app.use('/static/js/uploader', proxy({
target: 'https://lite.aoaoao.me',
changeOrigin: true,
}));
app.use('/Member', proxy({
target: 'https://lite.aoaoao.me',
changeOrigin: true,
}));
};