Joshua Boniface 2a79ae0a6e Normalize baseUrl behaviour
Fully normalizes the baseUrl behaviour to better match how this sort of
feature works in other programs.

1. The baseUrl is always appended to paths, even the built-in `/emby`
and `/mediabrowser` paths.
2. The baseUrl is set statically at class instance creation, to ensure
it persists through changes until the next restart.
3. Configuration is normalized using a function when set, to ensure it's
in a standard `/mypath` format with leading `/`.
4. Cleans up the conditionals around default redirects. For sanity after
changing the URL, it will match *any* path that doesn't match the
current baseUrl and redirect it back to the main page (with baseUrl).
5. Adds a second method, NormalizeUrlPath, to avoid lots of `+ "/" +`
string manipulations which are unclean - we should always have a leading
slash.
6. Sets the default baseUrl to an empty string to avoid unexpected
behaviour, though this would be worked-around automatically.
7. Adds some debug logs whenever a URL is normalized, to help track down
issues with this code (if any arise).
2019-10-08 18:06:03 -04:00
2019-02-15 10:22:52 -05:00
2019-10-04 15:07:59 -04:00
2019-09-23 20:32:44 +02:00
2019-10-06 22:26:17 +02:00
2019-08-16 19:05:30 +02:00
2019-08-29 22:28:33 +02:00
2019-09-01 18:39:23 +02:00
2019-09-27 23:58:04 +02:00
2019-09-23 20:32:44 +02:00
2019-03-13 20:37:08 +01:00
2019-06-08 19:56:08 +02:00
2019-09-09 17:40:51 -04:00
2019-08-31 21:39:10 -04:00
2019-10-05 18:38:55 -04:00
2019-06-08 19:56:08 +02:00
2019-10-04 14:37:36 -04:00
2019-08-31 21:39:10 -04:00

Jellyfin

The Free Software Media System


Logo banner

GPL 2.0 License Current Release Translations Azure DevOps builds Docker Pull Count
Donate Submit and vote on feature requests Discuss on our Forum Chat on Matrix Join our Subreddit


Jellyfin is a Free Software Media System that puts you in control of managing and streaming your media. It is an alternative to the proprietary Emby and Plex, to provide media from a dedicated server to end-user devices via multiple apps. Jellyfin is descended from Emby's 3.5.2 release and ported to the .NET Core framework to enable full cross-platform support. There are no strings attached, no premium licenses or features, and no hidden agendas: just a team who want to build something better and work together to achieve it. We welcome anyone who is interested in joining us in our quest!

For further details, please see our documentation page. To receive the latest updates, get help with Jellyfin, and join the community, please visit one of our communication channels on Matrix/Riot or social media.

For more information about the project, please see our about page.

Want to get started? Choose from Prebuilt Packages or Build from Source, then see our quick start guide.

Want to contribute? Check out our documentation for guidelines.

New idea or improvement? Check out our feature request hub.

Something not working right? Open an Issue.

Description
Languages
C# 99.7%
HTML 0.2%