forked from deblan/side_menu
Compare commits
1 commit
develop
...
renovate/p
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
3491c4bfcc |
7 changed files with 10 additions and 35 deletions
13
CHANGELOG.md
13
CHANGELOG.md
|
|
@ -1,18 +1,5 @@
|
||||||
## [Unreleased]
|
## [Unreleased]
|
||||||
|
|
||||||
## 5.0.3
|
|
||||||
### Fixed
|
|
||||||
* fix #422: undefined array key "HTTP_USER_AGENT"
|
|
||||||
|
|
||||||
## 5.0.2
|
|
||||||
### Fixed
|
|
||||||
* fix #413: add user-agent check for memories mobile app
|
|
||||||
* fix #418: allow non admin user to access their settings
|
|
||||||
|
|
||||||
## 5.0.1
|
|
||||||
### Fixed
|
|
||||||
* fix(StandardMenu): appLimit must return a value > 0
|
|
||||||
|
|
||||||
## 5.0.0
|
## 5.0.0
|
||||||
### Fixed
|
### Fixed
|
||||||
* fix apps's order in the standard menu
|
* fix apps's order in the standard menu
|
||||||
|
|
|
||||||
|
|
@ -24,7 +24,8 @@ You like this app and you want to support me? ☕ [Buy me a coffee](https://www.
|
||||||
Requirements
|
Requirements
|
||||||
------------
|
------------
|
||||||
|
|
||||||
* PHP >= 8.1
|
* PHP >= 8.0
|
||||||
|
* App `theming` enabled
|
||||||
|
|
||||||
Installation and upgrade
|
Installation and upgrade
|
||||||
------------------------
|
------------------------
|
||||||
|
|
@ -40,7 +41,7 @@ If you want to install it from source, go to https://gitnet.fr/deblan/side_menu/
|
||||||
|
|
||||||
```
|
```
|
||||||
$ cd /path/to/nextcloud/apps
|
$ cd /path/to/nextcloud/apps
|
||||||
$ VERSION=x.y.z; curl -sS https://gitnet.fr/deblan/side_menu/releases/download/v${VERSION}/side_menu_v${VERSION}.tar.gz | tar xvfz -
|
$ curl -sS https://gitnet.fr/attachments/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx | tar xvfz -
|
||||||
```
|
```
|
||||||
|
|
||||||
Administrators can edit many settings using the administration page.
|
Administrators can edit many settings using the administration page.
|
||||||
|
|
|
||||||
|
|
@ -30,7 +30,7 @@ Notice
|
||||||
Because I believe in a free and decentralized Internet, [Gitnet](https://gitnet.fr) is **self-hosted at home**.
|
Because I believe in a free and decentralized Internet, [Gitnet](https://gitnet.fr) is **self-hosted at home**.
|
||||||
In case of downtime, you can download **Custom Menu** from [here](https://kim.deblan.fr/~side_menu/).
|
In case of downtime, you can download **Custom Menu** from [here](https://kim.deblan.fr/~side_menu/).
|
||||||
]]></description>
|
]]></description>
|
||||||
<version>5.0.3</version>
|
<version>5.0.0</version>
|
||||||
<licence>agpl</licence>
|
<licence>agpl</licence>
|
||||||
<author mail="contact@deblan.fr" homepage="https://www.deblan.fr/">Simon Vieille</author>
|
<author mail="contact@deblan.fr" homepage="https://www.deblan.fr/">Simon Vieille</author>
|
||||||
<namespace>SideMenu</namespace>
|
<namespace>SideMenu</namespace>
|
||||||
|
|
|
||||||
|
|
@ -49,11 +49,6 @@ class Application extends App implements IBootstrap
|
||||||
*/
|
*/
|
||||||
protected $user;
|
protected $user;
|
||||||
|
|
||||||
/**
|
|
||||||
* @var Request
|
|
||||||
*/
|
|
||||||
protected $request;
|
|
||||||
|
|
||||||
public function __construct(array $urlParams = [])
|
public function __construct(array $urlParams = [])
|
||||||
{
|
{
|
||||||
parent::__construct(self::APP_ID, $urlParams);
|
parent::__construct(self::APP_ID, $urlParams);
|
||||||
|
|
@ -101,7 +96,6 @@ class Application extends App implements IBootstrap
|
||||||
$this->config = \OC::$server->getConfig();
|
$this->config = \OC::$server->getConfig();
|
||||||
$this->cspnm = \OC::$server->getContentSecurityPolicyNonceManager();
|
$this->cspnm = \OC::$server->getContentSecurityPolicyNonceManager();
|
||||||
$this->user = \OC::$server[IUserSession::class]->getUser();
|
$this->user = \OC::$server[IUserSession::class]->getUser();
|
||||||
$this->request = \OC::$server->getRequest();
|
|
||||||
|
|
||||||
if (!$this->isEnabled()) {
|
if (!$this->isEnabled()) {
|
||||||
return;
|
return;
|
||||||
|
|
@ -112,10 +106,6 @@ class Application extends App implements IBootstrap
|
||||||
|
|
||||||
protected function isEnabled(): bool
|
protected function isEnabled(): bool
|
||||||
{
|
{
|
||||||
if (isset($this->request->server['HTTP_USER_AGENT']) && preg_match('/MemoriesNative/', $this->request->server['HTTP_USER_AGENT'])) {
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
$enabled = true;
|
$enabled = true;
|
||||||
$isForced = (bool) $this->config->getAppValue(self::APP_ID, 'force', '0');
|
$isForced = (bool) $this->config->getAppValue(self::APP_ID, 'force', '0');
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -98,7 +98,6 @@ class PersonalSettingController extends Controller
|
||||||
}
|
}
|
||||||
|
|
||||||
#[NoCSRFRequired]
|
#[NoCSRFRequired]
|
||||||
#[NoAdminRequired]
|
|
||||||
#[FrontpageRoute(verb: 'GET', url: '/user/config')]
|
#[FrontpageRoute(verb: 'GET', url: '/user/config')]
|
||||||
public function configuration(): JSONResponse
|
public function configuration(): JSONResponse
|
||||||
{
|
{
|
||||||
|
|
|
||||||
|
|
@ -40,7 +40,7 @@
|
||||||
"file-loader": "^6.2.0",
|
"file-loader": "^6.2.0",
|
||||||
"mini-css-extract-plugin": "^2.9.1",
|
"mini-css-extract-plugin": "^2.9.1",
|
||||||
"postcss-loader": "^8.1.1",
|
"postcss-loader": "^8.1.1",
|
||||||
"prettier": "3.4.2",
|
"prettier": "3.5.3",
|
||||||
"sass": "^1.78.0",
|
"sass": "^1.78.0",
|
||||||
"sass-loader": "^16.0.1",
|
"sass-loader": "^16.0.1",
|
||||||
"source-map-loader": "^5.0.0",
|
"source-map-loader": "^5.0.0",
|
||||||
|
|
|
||||||
|
|
@ -142,7 +142,7 @@ const appLimit = () => {
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
return Math.max(0, Math.floor((body.offsetWidth - size) / 70))
|
return Math.floor((body.offsetWidth - size) / 70)
|
||||||
}
|
}
|
||||||
|
|
||||||
const makeStyle = (app) => {
|
const makeStyle = (app) => {
|
||||||
|
|
@ -158,11 +158,6 @@ const computeLists = () => {
|
||||||
popoverAppList.value = appList.value.slice(appLimit()).sort((a, b) => a.order - b.order)
|
popoverAppList.value = appList.value.slice(appLimit()).sort((a, b) => a.order - b.order)
|
||||||
}
|
}
|
||||||
|
|
||||||
const reComputeLists = (delay) => {
|
|
||||||
window.clearTimeout(resizeTimeout)
|
|
||||||
resizeTimeout = window.setTimeout(computeLists, delay || 100)
|
|
||||||
}
|
|
||||||
|
|
||||||
onMounted(async () => {
|
onMounted(async () => {
|
||||||
const config = await configStore.getConfig()
|
const config = await configStore.getConfig()
|
||||||
|
|
||||||
|
|
@ -174,7 +169,10 @@ onMounted(async () => {
|
||||||
|
|
||||||
setApps(await navStore.getCoreApps())
|
setApps(await navStore.getCoreApps())
|
||||||
|
|
||||||
window.addEventListener('resize', reComputeLists)
|
window.addEventListener('resize', () => {
|
||||||
|
window.clearTimeout(resizeTimeout)
|
||||||
|
resizeTimeout = window.setTimeout(computeLists, 100)
|
||||||
|
})
|
||||||
})
|
})
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue