Merge branch 'master' of kv/DashMachine into develop
@ -81,3 +81,73 @@ url = 192.168.39.175:9117
|
|||||||
icon = static/images/apps/jackett.png
|
icon = static/images/apps/jackett.png
|
||||||
description = API Support for your favorite torrent trackers
|
description = API Support for your favorite torrent trackers
|
||||||
open_in = this_tab
|
open_in = this_tab
|
||||||
|
|
||||||
|
[Riot]
|
||||||
|
prefix = https://
|
||||||
|
url = your-website.com
|
||||||
|
icon = static/images/apps/riot.png
|
||||||
|
description = A glossy Matrix collaboration client for the web
|
||||||
|
open_in = this_tab
|
||||||
|
|
||||||
|
[Jellyfin]
|
||||||
|
prefix = https://
|
||||||
|
url = your-website.com
|
||||||
|
icon = static/images/apps/jellyfin.png
|
||||||
|
description = The Free Software Media System
|
||||||
|
open_in = this_tab
|
||||||
|
|
||||||
|
[Lidarr]
|
||||||
|
prefix = http://
|
||||||
|
url = 192.168.39.175:8686
|
||||||
|
icon = static/images/apps/lidarr.png
|
||||||
|
description = Looks and smells like Sonarr but made for music
|
||||||
|
open_in = this_tab
|
||||||
|
|
||||||
|
[Airsonic]
|
||||||
|
prefix = http://
|
||||||
|
url = 192.168.39.175:4040
|
||||||
|
icon = static/images/apps/airsonic.png
|
||||||
|
description = A Free and Open Source community driven media server
|
||||||
|
open_in = this_tab
|
||||||
|
|
||||||
|
[Tautulli]
|
||||||
|
prefix = http://
|
||||||
|
url = 192.168.39.175:8181
|
||||||
|
icon = static/images/apps/tautulli.png
|
||||||
|
description = A Python based monitoring and tracking tool for Plex Media Server
|
||||||
|
open_in = this_tab
|
||||||
|
|
||||||
|
[Bazarr]
|
||||||
|
prefix = http://
|
||||||
|
url = 192.168.39.175:6767
|
||||||
|
icon = static/images/apps/bazarr.png
|
||||||
|
description = A companion application to Sonarr and Radarr
|
||||||
|
open_in = this_tab
|
||||||
|
|
||||||
|
[Ombi]
|
||||||
|
prefix = http://
|
||||||
|
url = 192.168.39.175:3579
|
||||||
|
icon = static/images/apps/ombi.png
|
||||||
|
description = Want a Movie or TV Show on Plex or Emby? Use Ombi!
|
||||||
|
open_in = this_tab
|
||||||
|
|
||||||
|
[Syncthing]
|
||||||
|
prefix = http://
|
||||||
|
url = 192.168.39.175:8384
|
||||||
|
icon = static/images/apps/Syncthing.png
|
||||||
|
description = Open Source Continuous File Synchronization
|
||||||
|
open_in = this_tab
|
||||||
|
|
||||||
|
[The Lounge]
|
||||||
|
prefix = http://
|
||||||
|
url = 192.168.39.175:9000
|
||||||
|
icon = static/images/apps/thelounge.png
|
||||||
|
description = Modern, responsive, cross-platform, self-hosted web IRC client
|
||||||
|
open_in = this_tab
|
||||||
|
|
||||||
|
[Traefik]
|
||||||
|
prefix = http://
|
||||||
|
url = 192.168.39.175:8080
|
||||||
|
icon = static/images/apps/traefik.png
|
||||||
|
description = The Cloud Native Edge Router
|
||||||
|
open_in = this_tab
|
||||||
|
BIN
dashmachine/static/images/apps/Syncthing.png
Normal file
After Width: | Height: | Size: 41 KiB |
BIN
dashmachine/static/images/apps/airsonic.png
Normal file
After Width: | Height: | Size: 3.2 KiB |
BIN
dashmachine/static/images/apps/bazarr.png
Normal file
After Width: | Height: | Size: 15 KiB |
BIN
dashmachine/static/images/apps/jellyfin.png
Normal file
After Width: | Height: | Size: 17 KiB |
BIN
dashmachine/static/images/apps/lidarr.png
Normal file
After Width: | Height: | Size: 43 KiB |
BIN
dashmachine/static/images/apps/ombi.png
Normal file
After Width: | Height: | Size: 9.9 KiB |
BIN
dashmachine/static/images/apps/riot.png
Normal file
After Width: | Height: | Size: 13 KiB |
BIN
dashmachine/static/images/apps/tautulli.png
Normal file
After Width: | Height: | Size: 12 KiB |
BIN
dashmachine/static/images/apps/thelounge.png
Normal file
After Width: | Height: | Size: 7.1 KiB |
BIN
dashmachine/static/images/apps/traefik.png
Normal file
After Width: | Height: | Size: 34 KiB |
2
dashmachine/user_system/forms.py
Executable file → Normal file
@ -8,7 +8,7 @@ from wtforms.validators import DataRequired, Length
|
|||||||
|
|
||||||
|
|
||||||
class UserForm(FlaskForm):
|
class UserForm(FlaskForm):
|
||||||
username = StringField(validators=[DataRequired(), Length(min=4, max=120)])
|
username = StringField(validators=[DataRequired(), Length(min=1, max=120)])
|
||||||
|
|
||||||
password = PasswordField(validators=[DataRequired(), Length(min=8, max=120)])
|
password = PasswordField(validators=[DataRequired(), Length(min=8, max=120)])
|
||||||
|
|
||||||
|