Compare commits

...

7 Commits

Author SHA1 Message Date
Simon Vieille 281e7e8de1 release v1.4.1 2020-05-05 18:53:04 +02:00
Simon Vieille d325d583d4 fix issue #15 and harmonization render with chrome browsers 2020-05-05 18:52:04 +02:00
Simon Vieille 63b03ae11e release v1.4.0 2020-04-29 09:07:07 +02:00
Simon Vieille ec50328f78 Merge branch 'feature/issue-12' into develop 2020-04-29 09:03:11 +02:00
Simon Vieille 4146e9c2a1 fix #12: add an option to hide the opener and the panel when there is no application 2020-04-29 09:03:03 +02:00
Simon Vieille 76ecd6aeaa Merge branch 'develop' into feature/issue-12 2020-04-29 08:44:10 +02:00
Simon Vieille a392bb07c0 first tests to solve issue #12 2020-04-26 21:36:54 +02:00
11 changed files with 69 additions and 28 deletions
+1 -1
View File
@@ -39,7 +39,7 @@ $ unzip -d side_menu /path/to/side_menu_vX.Y.Z.zip
![](https://upload.deblan.org/u/2020-03/5e81b219.jpg)
![](https://upload.deblan.org/u/2020-04/5ea68025.png)
![](https://upload.deblan.org/u/2020-04/5ea92746.png)
How to contribute?
+4 -4
View File
@@ -8,12 +8,12 @@ This application is rather suitable for instances that activate a lot of applica
Comptatible with AppOrder.
You can report a bug or request a feature by opening an issue
You can report a bug or request a feature by opening an issue.
]]></description>
<licence>agpl</licence>
<author mail="dev+sidemenu@deblan.fr" homepage="https://www.deblan.io/">Simon Vieille</author>
<version>1.3.4</version>
<author mail="contact@deblan.fr" homepage="https://www.deblan.io/">Simon Vieille</author>
<version>1.4.1</version>
<namespace>SideMenu</namespace>
<category>customization</category>
<website>https://gitnet.fr/deblan/side_menu</website>
@@ -21,7 +21,7 @@ You can report a bug or request a feature by opening an issue
<repository type="git">https://gitnet.fr/deblan/side_menu</repository>
<screenshot>https://upload.deblan.org/u/2020-03/5e7fab2b.jpg</screenshot>
<screenshot>https://upload.deblan.org/u/2020-03/5e81b219.jpg</screenshot>
<screenshot>https://upload.deblan.org/u/2020-04/5ea68025.png</screenshot>
<screenshot>https://upload.deblan.org/u/2020-04/5ea92746.png</screenshot>
<dependencies>
<nextcloud min-version="18" max-version="18"/>
</dependencies>
+7 -3
View File
@@ -49,7 +49,7 @@
border: 0;
}
#side-menu.hide-opener .side-menu-opener {
#side-menu.hide-opener .side-menu-opener, .side-menu-opener.hide {
display: none;
}
@@ -65,9 +65,13 @@
.side-menu-app-icon {
width: 20px;
vertical-align: middle;
vertical-align: top;
margin-right: 10px;
padding-top: 3px;
}
.side-menu-app-icon svg {
vertical-align: middle;
margin-top: -3px;
}
.side-menu-app a {
+1
View File
@@ -54,6 +54,7 @@ class JsController extends Controller
$parameters = [
'opener-position' => $this->config->getAppValue('side_menu', 'opener-position', 'before'),
'opener-hover' => (bool) $this->config->getAppValue('side_menu', 'opener-hover', '0'),
'hide-when-no-apps' => (bool) $this->config->getAppValue('side_menu', 'hide-when-no-apps', '0'),
];
$response = new TemplateResponse('side_menu', 'js/script', $parameters, 'blank');
+1
View File
@@ -61,6 +61,7 @@ class Admin implements ISettings
'opener-position' => $this->config->getAppValue('side_menu', 'opener-position', 'before'),
'opener-hover' => $this->config->getAppValue('side_menu', 'opener-hover', '0'),
'opener-only' => $this->config->getAppValue('side_menu', 'opener-only', '0'),
'hide-when-no-apps' => $this->config->getAppValue('side_menu', 'hide-when-no-apps', '0'),
'size-icon' => $this->config->getAppValue('side_menu', 'size-icon', 'normal'),
'size-text' => $this->config->getAppValue('side_menu', 'size-text', 'normal'),
];
+1
View File
@@ -30,6 +30,7 @@ const mountSideMenuComponent = () => {
if (sideMenuContainer) {
sideMenu.$mount('#side-menu')
$('body').trigger('side-menu.ready')
} else {
window.setTimeout(mountSideMenuComponent, 50)
+8 -2
View File
@@ -46,8 +46,8 @@ export default {
},
methods: {
retrieveApps() {
this.apps = [];
const links = document.querySelectorAll('#appmenu a');
this.apps = []
const links = document.querySelectorAll('#appmenu a')
for (let element of links) {
let href = element.getAttribute('href')
@@ -65,6 +65,12 @@ export default {
});
}
}
(function(apps) {
window.setTimeout(function() {
jQuery('body').trigger('side-menu.apps', [apps])
}, 1000)
})(this.apps)
},
retrieveLogo() {
const ncLogo = document.querySelector('#nextcloud .logo')
+1
View File
@@ -25,6 +25,7 @@ const elements = [
'side-menu-opener-hover',
'side-menu-opener-only',
'side-menu-display-logo',
'side-menu-hide-when-no-apps',
'side-menu-size-icon',
'side-menu-size-text',
'side-menu-cache',
+7 -7
View File
@@ -24,17 +24,17 @@
}
.side-menu-apps-list {
height: calc(100vh - 60px);
top: 60px;
height: calc(100vh - 49px);
top: 49px;
}
#side-menu.hide-opener .side-menu-header {
display: none;
visibility: hidden;
}
#side-menu.hide-opener .side-menu-apps-list {
height: calc(100vh);
top: 0;
/* height: calc(100vh);
top: 0; */
}
<?php if ($_['size-text'] === 'hidden'): ?>
@@ -48,9 +48,9 @@
#side-menu .side-menu-opener {
<?php if ($_['size-icon'] === 'big'): ?>
margin-left: 6px;
margin-left: 1px;
<?php else: ?>
margin-left: 4px;
margin-left: 0px;
<?php endif; ?>
}
<?php endif; ?>
+22 -11
View File
@@ -3,19 +3,21 @@
var sideMenuOpener = $('<button class="side-menu-opener"></button>')
var sideMenu = $('<div id="side-menu">')
var body = $('body')
body.append(sideMenuContainer)
sideMenuContainer.append(sideMenu)
<?php if ($_['opener-position'] === 'before'): ?>
sideMenuOpener.insertBefore('#nextcloud')
<?php else: ?>
sideMenuOpener.insertAfter('#nextcloud')
<?php endif; ?>
var isTouchDevice = window.matchMedia("(pointer: coarse)").matches
body.on('side-menu.apps', function(e, apps) {
<?php if ($_['hide-when-no-apps']): ?>
sideMenu = $('#side-menu')
if (apps.length === 0) {
sideMenu.removeClass('open')
sideMenuOpener.addClass('hide')
} else {
sideMenuOpener.removeClass('hide')
}
<?php endif; ?>
})
body.on('side-menu.ready', function() {
sideMenu = $('#side-menu')
@@ -54,4 +56,13 @@
sideMenu.removeClass('open');
})
})
body.append(sideMenuContainer)
sideMenuContainer.append(sideMenu)
<?php if ($_['opener-position'] === 'before'): ?>
sideMenuOpener.insertBefore('#nextcloud')
<?php else: ?>
sideMenuOpener.insertAfter('#nextcloud')
<?php endif; ?>
})();
+16
View File
@@ -151,6 +151,22 @@ $choicesSizes = [
<?php endforeach; ?>
</select>
</div>
<div>
<label for="side-menu-hide-when-no-apps" class="settings-hint">
<?php p($l->t('Do not display the side menu and the opener if there is no application (eg: public pages).')); ?>
</label>
</div>
<div>
<select id="side-menu-hide-when-no-apps" name="hide-when-no-apps">
<?php foreach ($choicesYesNo as $label => $value): ?>
<option value="<?php echo $value ?>" <?php if ($value === $_['hide-when-no-apps']): ?>selected<?php endif; ?>>
<?php echo $l->t($label); ?>
</option>
<?php endforeach; ?>
</select>
</div>
</div>
<div class="section">