thanks !
The apps icons are found using the display name from the apps installed and available when loading the portal.
Example :
<span class="name">Paperless-ngx</span>
Would use the file Paperless-ngx.svg from :
/pictures/apps/Paperless-ngx.svg
I didn’t provide all the icons because there is hundreds of possible apps to cover. I added a few from the apps I currently use. I personally don’t like to read when browsing an app quickly and prefer visuals rather than 2 letters. External request would have been a problem too with CORS and all that jazz. That’s why I added this little feature, especially when you like clean icons and matching colors like me.
If someone has specific needs for other apps and dont want / have time to implement, feel free to open an issue
About the TOS/privacy. If you provide me an example text. I can push that on the repo and add an option to activate/deactivate it .
If I install a custom webapp and rename it to “my personal blog” than the svg file must have this name?
Yes, that’s it !
What about having two .md files named tos.md and privacy.md containing the text so anyone can put what he needs (or html files)
It sounds convenient, but you need an external lib to parse markdown to HTML. Injecting an HTML string also sounds like a bad practice.
An external HTML file would be out of the scope of the theme. The theme feature is limited by design. Despite having custom functions to inject custom code, the available information to work with are limited. At least it’s secure !
Well, I guess loading a .md file or string would be the best way to go. Then ready to be injected into a nice modal.
I’m surprised this feature is not already available in yunohost, to be honest. I will look into it before the end of the week.
Sounds good, I look forward to a nuxt version of the portal. The timing isn’t too bad, considering Debian LTS will change this summer. And it looks like the new portal is made for bookworm.
Wont upgrade until the end of the year though, especially if version 12 is a major version ahah.
A theme feature would defo be a must-have to be able to share theme to the community ! It also depends on the structure of the future portal, of course.
Would be great to open the portal to custom API end points to extend it towards a dashboard like portal. Per example, if I want to keep track of my disc space without an external app bound on a sub domain, just pop a small local HTTP server and grab the data from the frontend custom API block.
I will check the docker project, seems interesting !
So I have managed to install yuno-horizon and faced some issues that I fixed :
$ ssh using root user
$ cd /usr/share/ssowat/portal/assets/themes
$ git clone https://github.com/niemes/yuno-Horizon
Then I uploaded some icons to pictures/apps folder.
I didn’t see the icons, I looked in the console and it was full of not found. It turns out that the git clone created a folder named “yuno-Horizon”. I’ve renamed it to “Yuno-Horizon” (the folder name is case sensitive and the app icon also) and got it fixed like here :
I’ve updated the name of the repo to avoid the uppercase issue
About the TOS modal, I checked last weekend, it’s not hard to implement, I have a plan in mind and will implement this using the local storage. TOS usually needs to be accepted once and shouldn’t reappear for the same user after, so the portal needs to remember that on the frontend. Should work
I added the TOS Modal feature, It uses a markdown file with showdown and micromodal.js libs. Quite fast to parse and render.
Here are the options :
// ? Change to True if you want to use Term of Service Modal Feature
tosModal: true,
tosFeature: {
// ! Change to the url of the file !
markdownFile: `https://${document.location.hostname}/yunohost/sso/assets/themes/Yuno-Horizon/README.md`,
// ! Change to true if you want to redirect users rejecting the TOS.
redirectRejected: false,
rejectURL: "about:blank",
modal: {
title: 'TOS Yuno-Horizon Feature Title',
bottomMessage: "Modify this texte in your config file."
},
}
i tried your theme,
and a user told me portail fails if using opera as web-browser,
i just tried, and yes, only with opera, all link are following to the sso, not to the apps url.
i would open an issue on your github, but no issue available