Skip to content

Commit

Permalink
初始化版本,提供基本的用户的文件管理功能
Browse files Browse the repository at this point in the history
  • Loading branch information
zxl20070701 committed Apr 13, 2024
0 parents commit 45ec761
Show file tree
Hide file tree
Showing 62 changed files with 46,783 additions and 0 deletions.
12 changes: 12 additions & 0 deletions .github/FUNDING.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
# These are supported funding model platforms

github: # Replace with up to 4 GitHub Sponsors-enabled usernames e.g., [user1, user2]
patreon: # Replace with a single Patreon username
open_collective: # Replace with a single Open Collective username
ko_fi: # Replace with a single Ko-fi username
tidelift: # Replace with a single Tidelift platform-name/package-name e.g., npm/babel
community_bridge: # Replace with a single Community Bridge project-name e.g., cloud-foundry
liberapay: # Replace with a single Liberapay username
issuehunt: # Replace with a single IssueHunt username
otechie: # Replace with a single Otechie username
custom: ['https://zxl20070701.github.io/notebook/home.html']
42 changes: 42 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
.git

# compiled output
/dist
/node_modules

# Logs
logs
*.log
npm-debug.log*
pnpm-debug.log*
yarn-debug.log*
yarn-error.log*
lerna-debug.log*

# OS
.DS_Store

# Tests
/coverage
/.nyc_output

# IDEs and editors
/.idea
.project
.classpath
.c9/
*.launch
.settings/
*.sublime-workspace

# IDE - VSCode
.vscode/*
!.vscode/settings.json
!.vscode/tasks.json
!.vscode/launch.json
!.vscode/extensions.json

userspace
userlogin
FileSystem
*.zip
1 change: 1 addition & 0 deletions .mailmap
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
zxl20070701 <1904314465@qq.com>
6 changes: 6 additions & 0 deletions AUTHORS.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
Authors ordered by first contribution.

zxl20070701 <1904314465@qq.com> <https://github.com/zxl20070701>

-----------------------------------------------------
We thank all of them for their contributions!
18 changes: 18 additions & 0 deletions CHANGELOG
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
v0.1.0:
date:2024-04-13
changes:
- 初始化版本
1、用户相关
* 登录(单点登录)
* 退出登录
* 注册
* 找回密码
2、文件管理界面
* 文件夹
(包括:复制、粘贴、剪切、压缩文件夹、删除、拖拽上传)
* 文件
(包括:复制、粘贴、剪切、解压zip压缩包、下载到本地、删除、拖拽上传、拖拽下载)
* 双击文件打开
(包括:视频)
* 右键事件
* 底部操作按钮
21 changes: 21 additions & 0 deletions LICENSE
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
MIT License

Copyright (c) zxl20070701 走一步,再走一步

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
36 changes: 36 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
# [File System](https://github.com/zxl20070701/FileSystem)
🔥文件管理系统 ✨☁️📁✨ 支持:文件或文件夹的上传、下载、ZIP文件压缩与解压、在线查看等

## 如何开发

开发的时候,直接运行如下命令:

```
npm run start:dev
```

然后浏览器访问: ```http://127.0.0.1:30000/index.html```

> 别忘了配置 `./src/config.ts` 中的邮箱SMTP信息。
## 生产环境

开发完毕以后,需要发布的话,首先进行打包:

```
npm run build
```

然后启动:

```
npm run start:prod
```

> 别忘了配置 `./dist/config.js` 中的邮箱SMTP信息。
## 版权

MIT License

Copyright (c) [zxl20070701](https://zxl20070701.github.io/notebook/home.html) 走一步,再走一步
25 changes: 25 additions & 0 deletions build/index.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
const { copySync, deleteSync, log, error } = require("devby")
const compressing = require("compressing")
const pkg = require("../package.json")

deleteSync("./FileSystem")
deleteSync("./userlogin")
deleteSync("./client/userspace")

copySync("./dist", "./FileSystem/dist")
copySync("./client", "./FileSystem/client")
copySync("./.mailmap", "./FileSystem/.mailmap")
copySync("./AUTHORS.txt", "./FileSystem/AUTHORS.txt")
copySync("./CHANGELOG", "./FileSystem/CHANGELOG")
copySync("./LICENSE", "./FileSystem/LICENSE")
copySync("./package.json", "./FileSystem/package.json")
copySync("./package-lock.json", "./FileSystem/package-lock.json")
copySync("./README.md", "./FileSystem/README.md")

compressing.zip.compressDir("./FileSystem", "./FileSystem-v" + pkg.version + ".zip").then(() => {
deleteSync("./FileSystem")

log("打包完成\n")
}).catch((e) => {
error(e)
})
70 changes: 70 additions & 0 deletions client/htmls/forget/mod.css
Original file line number Diff line number Diff line change
@@ -0,0 +1,70 @@
.forget-view {
background-color: #dee6fe;
text-align: center;
height: 100vh;
padding-top: calc(50vh - 250px);
overflow: auto;
}

.forget-view>.content {
background-color: white;
width: 400px;
display: inline-block;
border-radius: var(--block-border-radius);
}

.forget-view>.content>h2 {
line-height: 100px;
text-align: left;
padding: 0 20px;
position: relative;
}

.forget-view>.content>.input {
padding-bottom: 20px;
}

.forget-view>.content>.input input {
height: 40px;
padding-left: 10px;
width: 90%;
border: none;
box-sizing: border-box;
background-color: #f4f8ff;
border-radius: 4px;
margin-bottom: 20px;
outline: none;
border: 1px solid rgb(196 203 208);
}

.forget-view>.content>.input>.email-vertify {
text-align: left;
margin: 0 20px;
font-size: 14px;
width: 100%;
position: relative;
}

.forget-view>.content>.input>.email-vertify>button {
width: 50px;
height: 30px;
position: absolute;
top: 5px;
right: 45px;
}

.forget-view>.content>.input button {
color: #fff;
background-color: #005980;
display: inline-block;
width: 90%;
height: 40px;
border-radius: 4px;
border: none;
outline: none;
cursor: pointer;
}

.forget-view>.content>.input>.login {
margin-top: 20px;
}
22 changes: 22 additions & 0 deletions client/htmls/forget/mod.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
<link rel="stylesheet" href="./htmls/forget/mod.css">
<div ng-init='initMethod()' class='forget-view'>
<div class="content">
<h2>
找回密码
</h2>
<div class="input">
<input type="text" ng-model="params.username" placeholder="请输入用户名">
<input type="text" ng-model="params.email" placeholder="请输入邮箱">
<div class="email-vertify">
<input type="text" ng-model="params.emailcode" placeholder="请输入邮箱验证码">
<button ng-click="sendEmail()">获取</button>
</div>
<input type="password" ng-model="params.password1" placeholder="请输入新密码" autocomplete="new-password">
<input type="password" ng-model="params.password2" placeholder="请再输入一次新密码" autocomplete="new-password">
<button ng-click="resetPassword()">提交</button>
<div class="login">
<span class="link" ng-click="goto('login')">想起密码了?返回登录</span>
</div>
</div>
</div>
</div>
49 changes: 49 additions & 0 deletions client/htmls/forget/mod.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,49 @@
ctrlapp.register.controller('ForgetController', ['$scope', '$url', '$fetch', function ($scope, $url, $fetch) {

$scope.initMethod = function () {
$scope.params = {
username: "",
email: "",
emailcode: "",
password1: "",
password2: ""
};

};

// 发送验证邮件
$scope.sendEmail = function () {
if ($scope.params.email) {
$fetch.post("/verification/email", {
type: "forget",
email: $scope.params.email
}).then(function (res) {
alert(res.msg);
});
} else {
alert("邮箱不可以为空!");
}
};

// 修改密码
$scope.resetPassword = function () {
if (!$scope.params.username) {
alert("用户名不可以为空!");
} else if (!$scope.params.email) {
alert("邮箱不可以为空!");
} else if (!$scope.params.emailcode) {
alert("邮箱验证码不可以为空!");
} else if (!$scope.params.password1) {
alert("密码不可以为空!");
} else if ($scope.params.password1 != $scope.params.password2) {
alert("两次密码不一致!");
} else {
$fetch.post("/verification/resetPassword", $scope.params).then(function (res) {
alert(res.msg);
$scope.goto("login");
});
}

};

}]);
Loading

0 comments on commit 45ec761

Please sign in to comment.