Commit Graph

444 Commits (f8b1f87a5fec23bf20485c409c0d216c4ab8e7fc)

Author SHA1 Message Date
Noah Hsu a181b56ea7 feat: optional forward direct link params (close #3123) 2023-02-07 16:39:14 +08:00
Andy Hsu 3d0065bdcf feat!: allow disable user (close #3241)
From this commit, the guest user will be disabled by default
2023-02-04 11:44:17 +08:00
Noah Hsu ce4a295008 fix!: check https with `X-Forwarded-Proto`
not read old setting `api_url` and `base_path` from this commit
2023-01-19 12:16:42 +08:00
BoYanZh be8a9c5f07
fix: mark progress as done after clear (#3086) 2023-01-18 09:39:32 +08:00
Wuxuan 530e74c70b
fix: avoid regular expression match current directory (#3078)
* fix: avoid regular expression match current directory

* fix: optimize and regexp exclude slash

Co-authored-by: wuxuan <refused@wuxuan.eu.org>
2023-01-17 21:54:25 +08:00
Noah Hsu 26fe0a7684 feat: customize index max depth
Because some driver's issue may cause infinite loop
2023-01-17 17:33:18 +08:00
itsHenry 83fe17c6ec
feat: support github login (#2639)
* Support Github Login

* improve according to codefactor

* fix due to last updates

* optimization

Co-authored-by: Noah Hsu <i@nn.ci>
2022-12-27 22:11:22 +08:00
Noah Hsu e118f4a3b9 feat: update index by `req.Paths` 2022-12-24 20:23:04 +08:00
BoYanZh 3af23f6792
feat: batch reload all storages (close #2762 pr #2775) 2022-12-21 19:21:18 +08:00
EzraRT 146619134d
feat: customize proxy ignore headers (close #2763 pr #2766)
* clean referer when use proxy

* feat: customize proxy ignore headers

Co-authored-by: Noah Hsu <i@nn.ci>
2022-12-20 16:08:32 +08:00
foxxorcat 62a06fa0f9
feat: optimize file operation interface (#2757)
* feat: optimize file operation interface

* chore: fix typo

Co-authored-by: Noah Hsu <i@nn.ci>
2022-12-20 15:02:40 +08:00
BoYanZh e2bcca2fbd
feat: static files for embed viewers (#2739) 2022-12-19 13:34:06 +08:00
BoYanZh 4568af9542
feat: better static file Cache-Control (#2751) 2022-12-19 13:32:00 +08:00
foxxorcat 6024e8d832
refactor: split the db package hook and cache to the op package (#2747)
* refactor:separate the setting method from the db package to the op package and add the cache

* refactor:separate the meta method from the db package to the op package

* fix:setting not load database data

* refactor:separate the user method from the db package to the op package

* refactor:remove user JoinPath error

* fix:op package user cache

* refactor:fs package list method

* fix:tile virtual paths (close #2743)

* Revert "refactor:remove user JoinPath error"

This reverts commit 4e20daaf9e.

* clean path directly may lead to unknown behavior

* fix: The path of the meta passed in must be prefix of reqPath

* chore: rename all virtualPath to mountPath

* fix: `getStoragesByPath` and `GetStorageVirtualFilesByPath`

is_sub_path:

/a/b isn't subpath of /a/bc

* fix: don't save setting if hook error

Co-authored-by: Noah Hsu <i@nn.ci>
2022-12-18 19:51:20 +08:00
foxxorcat fb64f00640
refactor: obj name mapping and internal path processing (#2733)
* refactor:Prepare to remove the get interface

* feat:add obj Unwarp interface

* refactor:obj name mapping and program internal path processing

* chore: fix typo

* feat: unwrap get

* fix: no use op.Get to get parent id

* fix: set the path uniformly

Co-authored-by: Noah Hsu <i@nn.ci>
2022-12-17 19:49:05 +08:00
BoYanZh e58ca686e3
feat: cache static files (#2715) 2022-12-15 17:48:29 +08:00
BoYanZh 7947ff1ae4
feat: limit max connection count (#2701) 2022-12-14 10:33:58 +08:00
BoYanZh a2e8e96c71
feat: respond static file on loading storages (#2686) 2022-12-12 20:17:58 +08:00
BoYanZh 6f1aeb47fd
feat: index enhancement (close #2632 pr #2636)
* feat: index paths as setting

* feat: clear index (#2632)

* feat: check indexMQ more frequently
2022-12-09 10:02:13 +08:00
Noah Hsu 1f7c1b4f43 fix(cors): allow all methods (close #2640) 2022-12-08 11:35:21 +08:00
Noah Hsu 2dd30f2b77 feat(search): support with password 2022-12-07 10:45:02 +08:00
BoYanZh 6e23c8b4c0
feat: partial update index (close #2593 close #2621 pr #2624) 2022-12-07 10:41:52 +08:00
Noah Hsu e65e8be59e fix(search): missed base_path of user for parent (close #2611) 2022-12-06 17:28:39 +08:00
Noah Hsu 5b7aa9c1cf feat: allow all cors headers (close #2571) 2022-12-05 20:05:20 +08:00
Noah Hsu bf8b6f4c2c feat: customize ignore paths of indexes 2022-12-05 16:45:11 +08:00
Noah Hsu bd33c200dc feat: optimize index build 2022-12-05 16:07:36 +08:00
BoYanZh 8c0dfe2f3d
feat: Search enhancement (#2562)
* feat: ignore AList storage on indexing

* fix: remove unused err in `walkFn`

* chore(ci): fix auto_lang trigger and run it

* feat: batch index

* feat: quit index & init index

* feat: set DocType for bleve data

* fix: build index cleanup check origin err
2022-12-05 13:28:39 +08:00
Ovear 0838feeb82
fix:introduce buffered response writer for webdav, fix status/error return failed. (#2544)
* fix: introduce buffered response writer for webdav, fix webdav status/error return failed.

* fix: bypass buffered writer for GET/HEAD/POST requests
2022-12-02 17:59:59 +08:00
浅秋枫影 ae791c8634
fix: hide check in `canAccess` (#2556)
修复 meta.Password 和 meta.Hide 都为空的情况下,会导致无权限访问
2022-12-02 17:44:29 +08:00
BoYanZh 4c5be5f07f
feat: only show `CanAccess` search results (#2548)
* feat: only show `CanAccess` search results

* have done in frontend

Co-authored-by: Noah Hsu <i@nn.ci>
2022-12-02 10:09:39 +08:00
Noah Hsu ff0bcfef8a feat: optional sign all files 2022-11-30 22:10:07 +08:00
Noah Hsu 4980b71ba3 fix: add hide check to `canAccess` (close #2532) 2022-11-30 22:01:33 +08:00
Noah Hsu b5bf5f4325 fix: check if the req path is relative path (close #2531) 2022-11-30 21:38:00 +08:00
SiHuaN f9788ea7cf
feat(webdav): delete privacy header and optimize 302 (#2534)
* fix: delete set-cookie from sharepoint webdav response header

* fix: avoid two redirects when using webdav

* fix: return the correct Content-Type instead of just `application/octet-stream`

* feat: webdav backend localOnly -> proxyOnly
2022-11-30 20:52:33 +08:00
Noah Hsu 83644dab85 fix: mapping filename in `GetName`
some missed filename mapping
2022-11-30 20:46:54 +08:00
Noah Hsu ddcba93eea
feat: multiple search indexes (#2514)
* refactor: abstract search interface

* wip: ~

* fix cycle import

* objs update hook

* wip: ~

* Delete search/none

* auto update index while cache changed

* db searcher

TODO: bleve init issue

cannot open index, metadata missing

* fix size type

why float64??

* fix typo

* fix nil pointer using

* api adapt ui

* bleve: fix clear & change struct
2022-11-28 13:45:25 +08:00
BoYanZh 330a767fd7
feat: build index & search with bleve (close #1740 pr #2386)
* feat: build index & search with bleve (#1740)

* delete unused struct

Co-authored-by: Noah Hsu <i@nn.ci>
2022-11-24 11:46:47 +08:00
Noah Hsu 85e1350af8 fix: check password while upload (close #2444) 2022-11-22 16:14:01 +08:00
Noah Hsu c09800790b feat: custom filename char mapping
fixes #2447 #2446 #2440 #2409 #2006 #1979 #1507 #324 #691 #518 #430
2022-11-22 15:54:18 +08:00
BoYanZh a02d9c8463
fix: check error type on file not found (#2383) 2022-11-18 01:30:37 +08:00
Noah Hsu 3b6d8987db chore: add id to resp of create storage 2022-11-13 20:17:10 +08:00
Gerhard Tan 00de9bf16d
fix!: sign with the raw path instead of filename (#2258) 2022-11-11 16:24:25 +08:00
Noah Hsu 26a29f20c3 fix: missed encode path while use down proxy (close #2208) 2022-11-06 14:46:47 +08:00
Noah Hsu 18cd45d257 fix: disable cache for 302 redirect (close #2216) 2022-11-05 15:54:51 +08:00
Noah Hsu e75f19e9c0 feat: add `Referrer-Policy` while redirect (pr #2160) 2022-11-01 19:19:08 +08:00
BoYanZh 5f79d665d9
feat: add alist v3 driver (close #1833 pr #2129)
* feat: add alist v3 driver (close #1833)

* chore: use generics

Co-authored-by: Noah Hsu <i@nn.ci>
2022-10-27 10:54:49 +08:00
BoYanZh 3e9c38697d
fix: use `utils.Log` during static file router init (#2100)
formerly the log is not in stderr
2022-10-24 23:33:57 +08:00
Noah Hsu 8c69260972 fix(webdav): set mime by ext if it's empty 2022-10-09 19:29:55 +08:00
Noah Hsu dc73c2e97d fix: custom token expires in doesn't work 2022-09-27 14:23:56 +08:00
Noah Hsu 9d9c79179b feat: custom token expires in 2022-09-27 14:05:00 +08:00
Noah Hsu b7479651e1 fix: incorrect base_path from site_url (close #1830) 2022-09-27 13:56:32 +08:00
Noah Hsu 7c32af4649 refactor!: move `api_url` and `base_path` to config file 2022-09-25 17:57:54 +08:00
Noah Hsu 0039dc18e1 fix: set cdn to basePath if cdn is empty 2022-09-22 17:11:45 +08:00
Noah Hsu 4d6ab53336 feat: add form upload api (close #1693 #1709) 2022-09-22 16:53:58 +08:00
Noah Hsu c7f6684eed chore: add `provider` to fs list resp 2022-09-22 16:04:10 +08:00
Noah Hsu ca177cc3b9 fix: set default mimetype to empty string (close #1710) 2022-09-19 18:58:40 +08:00
Noah Hsu 5548ab62ac fix: write does not take effect on the current dir (close #1711) 2022-09-19 13:35:37 +08:00
Noah Hsu d6d82c3138 fix: page crashes if ipa name contains chinese (close #1712) 2022-09-19 13:33:23 +08:00
Noah Hsu 2185839236 chore: safe base64 decode ipa name 2022-09-18 20:17:24 +08:00
Noah Hsu f80be96cf9 chore: replace sep `_` with `@` of ipa name 2022-09-18 16:53:39 +08:00
Noah Hsu b74b55fa4a feat: support custom `bundle-identifier` by filename 2022-09-17 21:33:39 +08:00
Noah Hsu d436a6e676 fix: use base64 encode for ipa install 2022-09-17 17:06:08 +08:00
Noah Hsu 7ad3748a46 feat: update cache after remove instead of clear 2022-09-14 20:28:52 +08:00
Noah Hsu 66b2562d03 fix: allow force root while fetch dirs (close #1671) 2022-09-14 19:57:39 +08:00
Noah Hsu 54ae6dce0b fix(fs/get): rawURL if use proxy (close #1664) 2022-09-13 20:02:57 +08:00
foxxorcat 6b5236f52e feat: add baidu_photo driver 2022-09-12 17:10:02 +08:00
Noah Hsu 6aedd0f425 fix: trim slash suffix of sign 2022-09-11 19:39:24 +08:00
Noah Hsu 5ff0d850d7 feat(aliyundrive): add doc and video preview api 2022-09-11 19:12:54 +08:00
Noah Hsu 77a6aa487b chore: cancel sign if no password 2022-09-11 14:14:14 +08:00
Noah Hsu 57bcd376b4 fix(webdav): incorrect href if base_path isn't root (close #1629) 2022-09-10 19:27:34 +08:00
Noah Hsu 5ad3849bb6 fix: if use down proxy url 2022-09-09 20:54:11 +08:00
Noah Hsu 362d48aa98 chore: replace main color 2022-09-08 22:21:52 +08:00
Noah Hsu 4ea19ae078 chore: replace `$version` of cdn with `webVersion` 2022-09-07 18:39:04 +08:00
Noah Hsu a24dfddc2a feat: add 189cloud driver 2022-09-06 14:39:21 +08:00
Noah Hsu 778cee4cdf fix: download sign check 2022-09-04 18:29:41 +08:00
Noah Hsu 7da9e33c4d fix: hide access_token in error message of `baidu_netdisk` 2022-09-03 19:48:11 +08:00
Noah Hsu 0f2425ce53 feat: add teambition driver 2022-09-02 18:24:14 +08:00
Noah Hsu bc155af255 chore: remove slash of cdn 2022-09-02 16:02:06 +08:00
Noah Hsu 7ac1d14eeb style: shorten name `operations` to `op` 2022-08-31 21:01:15 +08:00
Noah Hsu 59ec17a353 feat: add driver config in driver info 2022-08-30 14:39:10 +08:00
Noah Hsu 68a125491b chore: add refresh arg in list func 2022-08-29 19:15:52 +08:00
Noah Hsu d267c43556 feat: static file router 2022-08-28 23:13:03 +08:00
Noah Hsu e5480b99be chore: decode filePath in header 2022-08-28 20:46:33 +08:00
Noah Hsu 5ab5cc327f feat: generate plist for ipa 2022-08-28 15:23:00 +08:00
Noah Hsu 74007a1d45 chore: add pagination settings 2022-08-27 23:07:48 +08:00
Noah Hsu e9927806d4 fix(local): return `ObjectNotFound` if can't find file 2022-08-19 11:02:00 +08:00
Noah Hsu 02e2c809a8 chore: rename some request param 2022-08-14 23:52:14 +08:00
Noah Hsu 8cd05275f0 chore: change message type 2022-08-14 03:05:30 +08:00
Noah Hsu 06e15fc149 feat: encode path of url (close #1351) 2022-08-12 14:51:23 +08:00
Noah Hsu 0fdfd1f2c2 feat: load storages while starting 2022-08-11 21:32:33 +08:00
Noah Hsu 74f1154e5e feat: add disable option for storage (close #1476) 2022-08-11 21:08:50 +08:00
Noah Hsu af884010d1 feat: local storage image thumbnail 2022-08-11 20:32:17 +08:00
Noah Hsu 669ccc40a1 chore: change related of fs get api 2022-08-10 10:48:14 +08:00
Noah Hsu 2b04cf4ac3 feat: custom hide error message by regexp (close #1468) 2022-08-08 12:53:53 +08:00
Noah Hsu d6437a337f feat: add provider to obj get api 2022-08-08 00:58:32 +08:00
Noah Hsu 61fa6f38a8 feat: add type to fs read api 2022-08-08 00:51:05 +08:00
Noah Hsu 1fd4ebe53e feat: add related objs while get obj 2022-08-07 21:01:29 +08:00
Noah Hsu 0df3473337 feat: use cobra and add some command 2022-08-07 13:09:59 +08:00
Noah Hsu 2b5da3ef34 feat: cancel 2fa api 2022-08-07 11:59:33 +08:00
Noah Hsu d01958a6bf chore: and otp to current user resp 2022-08-06 17:21:32 +08:00
Noah Hsu a6ed4afdae feat: 2fa/otp support 2022-08-06 01:22:13 +08:00
Noah Hsu b51e664543 chore: go fmt 2022-08-03 14:26:59 +08:00
Noah Hsu 721f18a7f4 feat: fs other api 2022-08-03 14:14:37 +08:00
Noah Hsu 2a68c3cc7b feat: add thumbnail to list resp 2022-08-03 13:03:45 +08:00
Noah Hsu 71a6ebaf43 chore: dev test 2022-08-02 22:16:58 +08:00
Noah Hsu c7128133d6 chore: rename remove to delete 2022-07-31 21:42:01 +08:00
Noah Hsu cb06d3a19a feat: remove and clear task 2022-07-31 21:21:54 +08:00
Noah Hsu be452aafde chore: fix err nil pointer 2022-07-30 22:04:21 +08:00
Noah Hsu 53fd09814a feat: user and meta get api 2022-07-27 17:41:25 +08:00
Noah Hsu 5166d73b4d chore: unified function name 2022-07-23 21:49:09 +08:00
Noah Hsu 826e4807dc chore: add current user log 2022-07-23 21:33:53 +08:00
Noah Hsu 9d92834ee3 chore: password can be empty when update me 2022-07-23 20:49:16 +08:00
Noah Hsu 4f3129ec28 feat: change current user's profile 2022-07-23 20:42:12 +08:00
Noah Hsu 184b9d1e6c feat: get storage by id api 2022-07-18 23:02:14 +08:00
Noah Hsu a16da3b45e chore: fix typo 2022-07-12 18:41:16 +08:00
Noah Hsu fbc858b43c chore: optimize get settings 2022-07-12 14:03:03 +08:00
Noah Hsu 4ac312fd07 chore: add version to aria handle 2022-07-12 14:02:29 +08:00
Noah Hsu dc38f21294 chore: rename controllers to handles 2022-07-11 17:12:50 +08:00
Noah Hsu 8971a924f1 fix: clear password while get current user 2022-07-10 17:09:03 +08:00
Noah Hsu a25d76ef6e chore: fix typo 2022-07-10 16:20:13 +08:00
Noah Hsu 69d1287254 chore: remove wrapper of user 2022-07-10 15:47:09 +08:00
Noah Hsu f102b130db chore: public settings no auth required 2022-07-10 15:23:08 +08:00
Noah Hsu fc1204c914 chore: rename account to storage 2022-07-10 14:45:39 +08:00
Noah Hsu efa20cc7bd feat: dirs api 2022-07-10 14:09:31 +08:00
Noah Hsu e28c1e436d fix: only file have raw_url 2022-07-08 15:56:29 +08:00
Noah Hsu 90283ef29c chore: incorrect username retry count 2022-07-07 21:31:43 +08:00
Noah Hsu 156da2b794 fix: login don't need auth 2022-07-07 14:19:24 +08:00
Noah Hsu 9ba7cf0835 chore: add base path setting 2022-07-02 16:43:07 +08:00
Noah Hsu 8125fee3f9 feat: put directly api 2022-07-01 17:11:22 +08:00
Noah Hsu e3891246b9 feat: post messenger 2022-07-01 16:53:01 +08:00
Noah Hsu 4340a48633 fix: put as task from web 2022-07-01 15:11:18 +08:00
Noah Hsu 4d0ae6b1ef fix: webdav move contains rename 2022-06-30 22:55:23 +08:00
Noah Hsu 53416172e7 feat: clear cache after change 2022-06-30 22:51:49 +08:00
Noah Hsu 2b1726614b feat: webdav handle 2022-06-30 22:41:55 +08:00
Noah Hsu dd013ac0b2 chore: add webdav package 2022-06-30 18:27:26 +08:00
Noah Hsu 3934d9029e feat: hide objects 2022-06-30 16:09:06 +08:00
Noah Hsu fba96d024f feat: add write field to list resp 2022-06-30 15:53:57 +08:00
Noah Hsu 35b04ffa9c feat: add readme field to list resp 2022-06-30 15:41:58 +08:00
Noah Hsu f54418bdae fix: serialize task info 2022-06-29 20:28:02 +08:00
Noah Hsu 786e44d1d2 fix: init aria2 client 2022-06-29 20:07:33 +08:00
Noah Hsu 58d153e5ff fix: task list method 2022-06-29 18:56:31 +08:00
Noah Hsu 0bf724f447 feat: task manage api 2022-06-29 18:36:14 +08:00
Noah Hsu d24e51bc86 chore: user permissions 2022-06-29 18:03:12 +08:00
Noah Hsu 8abee6504f feat: set aria2 client and add url to aria2 api 2022-06-29 17:31:37 +08:00
Noah Hsu a09a1b814b chore: change permission check 2022-06-29 17:08:31 +08:00
Noah Hsu bf950ee6e1 feat: set raw url in get resp 2022-06-29 16:23:31 +08:00
Noah Hsu 40548926e6 feat: fs link api 2022-06-29 16:08:55 +08:00
Noah Hsu f275f83de0 feat: fs manage api 2022-06-29 15:01:22 +08:00
Noah Hsu 96380a50da feat: file proxy handle 2022-06-28 21:58:46 +08:00
Noah Hsu d1efec4539 chore: common err resp log 2022-06-28 18:12:53 +08:00