Webserver: Dynamic pages
The interesting part are the pages with dynamic content. A large part of the content is controlled by the URL parameters. For linking the pages among each other through the templates, the URLs must be provided with the appropriate parameters. Depending on the page there are different parameters.
/player
The page that displays the current title and, if applicable, elements for control of the player. Whether elements for controlling the player are displayed on this page is controlled by the template and/or by the access rights set in the options dialog.
/playlist
Display of the playlist. This page does not need any parameters either. The only thing worth mentioning is the /playlist#currentTrack anchor, which allows the browser to scroll to the currently playing track.
/playlist_details and /library_details
These two pages show the detail information about a track from the playlist or media library. Expected here is a parameter id, e.g. /playlist_details?id=12345. The ID is the internally used unique ID to a file that Nemp assigns at startup. This ID may continue to be valid after a restart of the server or Nemp, but this is not guaranteed.
/search
For the search in the media library there is the search page /search. This expects a parameter "query=".
Example: /search?query=nightwish lists all titles that contain the term "nightwish".
At the end, also such results are output, which do not contain the search term exactly. This means that a fuzzy search is performed, which allows typing errors. It can also happen that titles are listed that do not appear to be correct at first glance. This is because the search also takes into account fields such as comment or the file path, which are not displayed in the web server.
/library
The media library page has several parameters. Not all parameters are always necessary, or some parameters are ignored in case of doubt.
Parameter "mode="
The mode parameter controls how the media library should be browsed.
Possible values are
- mode=artist
- mode=album
- mode=genre
Example: /library?mode=artist
Parameter "l="
For the cases "artist" and "album" the parameter l (like "letter") is used to separate by initial letter. If the parameter is not specified, the value A is used as default value. If no artists or albums are found for the default letter, Nemp switches to the next one that is not empty.
Possible values are
- l=0 (zero)
- l=A, ..., l=Z
- l=other (for names that do not start with a number or A-Z)
Since the number of genres is limited, the "genre" mode does not have this partitioning.
Example: /library?mode=artist&l=N shows all artists starting with "N"
Parameter "other="
In larger media libraries, it can happen that there are many artists who are featured with only one or two titles. This often makes the display of all artists confusing. Therefore the parameter other= can be used in the "artist" mode.
Possible values are
- other=0 (shows only artists who are represented with at least 5 titles in the media library)
- other=1 (displays only the artists represented with 4 titles or less)
Example: /library?mode=artist&l=N&other=1 displays all artists with "N", of which there are at most 4 titles in the media library.
This distinction is skipped if the number of artists with an initial letter is 50 or less, or if one of the lists contains 5 or less entries. In these cases all artists are output.
This subdivision does not exist for albums.
Parameter "albumsortmode="
When browsing for albums, one question is a matter of taste: Which part is relevant with regard to the initial letter? That means: Do you find the album "Error" by "The Warning" under "E", because the title of the album starts with "E", or under "T", because the name of the band starts with "T"?
To not having to answer this question, or to leave it up to the user, there is the parameter albumsortmode=.
Possible values are
- albumsortmode=artist
- albumsortmode=album
Example: /library?mode=album&albumsortmode=artist&l=N shows all albums of artists or bands whose name starts with "N".
If this parameter is not specified, albums will be grouped and sorted by album title.
Parameter "id="
To display all tracks of a specific album, artist or genre, the parameter "id=" can be used. Possible values are the unique IDs assigned by Nemp for the albums, artists and genres. The parameter "mode=" must also be specified so that Nemp can decide which object group the ID refers to.
Example: /library?mode=album&id=4395 shows all tracks of the album with ID 4395.
If the id parameter is present, any other parameters may still be used for highlighting in the navigation menu, but those are otherwise irrelevant.
Parameter "start="
If a very long file list is to be output, the web server splits it into blocks of 100 titles each. Which part is displayed (or transmitted to the browser at all) is determined by the start parameter.
Example: /library?start=50&mode=artist&id=6974 displays (at most) 100 titles from the list of all titles of the artist with ID 6974, starting at the 50th title in this list.
This parameter is also used on the search page if there are too many results for a search term.