Adding scroll-to-top on index, merging track-types

This commit is contained in:
Zachary Klosko 2020-05-27 18:03:45 -04:00
parent 22e57e2a8b
commit d27c6e5e85
8 changed files with 84 additions and 69 deletions

View File

@ -12,6 +12,7 @@ favicon: favicon.ico
headimage: img/header.jpg headimage: img/header.jpg
headtext: Open Source Radio Automation headtext: Open Source Radio Automation
headsubtext: Everything you need to get your terrestrial / on-line radio station up and broadcasting like a pro - without breaking the bank! headsubtext: Everything you need to get your terrestrial / on-line radio station up and broadcasting like a pro - without breaking the bank!
# items below - only for first front page link
headbuttonurl: index#get-started headbuttonurl: index#get-started
headbuttontext: Get LibreTime headbuttontext: Get LibreTime

View File

@ -1,8 +1,12 @@
topnav: topnav:
- page: Introduction
url: index
- page: Docs - page: Docs
url: quickstart url: scheduling-shows
- page: Contribute - page: Contribute
url: contribute url: contribute
- page: <svg class="bi bi-people-fill" width="1em" height="1em" viewBox="0 0 16 16" fill="currentColor" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M7 14s-1 0-1-1 1-4 5-4 5 3 5 4-1 1-1 1H7zm4-6a3 3 0 1 0 0-6 3 3 0 0 0 0 6zm-5.784 6A2.238 2.238 0 0 1 5 13c0-1.355.68-2.75 1.936-3.72A6.325 6.325 0 0 0 5 9c-4 0-5 3-5 4s1 1 1 1h4.216zM4.5 8a2.5 2.5 0 1 0 0-5 2.5 2.5 0 0 0 0 5z"/></svg> Github
url: https://github.com/LibreTime/libretime
- page: <svg class="bi bi-heart-fill" width="1em" height="1em" viewBox="0 0 16 16" fill="currentColor" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M8 1.314C12.438-3.248 23.534 4.735 8 15-7.534 4.736 3.562-3.248 8 1.314z"/></svg> Sponsor - page: <svg class="bi bi-heart-fill" width="1em" height="1em" viewBox="0 0 16 16" fill="currentColor" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M8 1.314C12.438-3.248 23.534 4.735 8 15-7.534 4.736 3.562-3.248 8 1.314z"/></svg> Sponsor
url: https://opencollective.com/libretime url: https://opencollective.com/libretime
@ -15,9 +19,7 @@ docsnav:
url: host-configuration url: host-configuration
- page: 3. Setting the Server Time - page: 3. Setting the Server Time
url: setting-the-server-time url: setting-the-server-time
- page: 4. Configuring Track Types - page: 4. Setting up SSL
url: track-types
- page: 5. Setting up SSL
url: ssl-config url: ssl-config
- page: - page:
- section: Using LibreTime - section: Using LibreTime
@ -26,8 +28,6 @@ docsnav:
url: live-broadcast url: live-broadcast
- page: Dashboard and Calendar - page: Dashboard and Calendar
url: dashboard url: dashboard
- page: Help!
url: troubleshooting
- page: Listen To Your Stream - page: Listen To Your Stream
url: listen url: listen
- page: Managing Users - page: Managing Users
@ -54,6 +54,10 @@ docsnav:
url: interface-customization url: interface-customization
- page: Upgrading LibreTime - page: Upgrading LibreTime
url: upgrading url: upgrading
- section: Troubleshooting
contents:
- page: Basic Troubleshooting
url: troubleshooting
- section: Radio Broadcasting 101 - section: Radio Broadcasting 101
contents: contents:
- page: UNESCO Public Radio Guide - page: UNESCO Public Radio Guide

View File

@ -49,7 +49,6 @@
</nav> </nav>
<!-- Scroll to Top link --> <!-- Scroll to Top link -->
<a class="top-link hide" href="" id="js-top"> <a class="top-link hide" href="" id="js-top">
<svg class="bi bi-arrow-up-circle-fill" width="4em" height="4em" viewBox="0 0 16 16" fill="currentColor" xmlns="http://www.w3.org/2000/svg"> <svg class="bi bi-arrow-up-circle-fill" width="4em" height="4em" viewBox="0 0 16 16" fill="currentColor" xmlns="http://www.w3.org/2000/svg">
<path fill-rule="evenodd" d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-10.646.354a.5.5 0 1 1-.708-.708l3-3a.5.5 0 0 1 .708 0l3 3a.5.5 0 0 1-.708.708L8.5 6.207V11a.5.5 0 0 1-1 0V6.207L5.354 8.354z"/> <path fill-rule="evenodd" d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-10.646.354a.5.5 0 1 1-.708-.708l3-3a.5.5 0 0 1 .708 0l3 3a.5.5 0 0 1-.708.708L8.5 6.207V11a.5.5 0 0 1-1 0V6.207L5.354 8.354z"/>

View File

@ -55,6 +55,14 @@
</div> </div>
</div> </div>
</nav> </nav>
<!-- Scroll to Top link -->
<a class="top-link hide" href="" id="js-top">
<svg class="bi bi-arrow-up-circle-fill" width="4em" height="4em" viewBox="0 0 16 16" fill="currentColor" xmlns="http://www.w3.org/2000/svg">
<path fill-rule="evenodd" d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-10.646.354a.5.5 0 1 1-.708-.708l3-3a.5.5 0 0 1 .708 0l3 3a.5.5 0 0 1-.708.708L8.5 6.207V11a.5.5 0 0 1-1 0V6.207L5.354 8.354z"/>
</svg>
<span class="screen-reader-text">Back to top</span>
</a>
<!-- Splash Image --> <!-- Splash Image -->
<header class="masthead text-center text-white d-flex"> <header class="masthead text-center text-white d-flex">
@ -71,6 +79,7 @@
{{ site.headsubtext}} {{ site.headsubtext}}
</p> </p>
<a class="btn btn-primary btn-xl js-scroll-trigger" href="{{ site.headbuttonurl }}">{{ site.headbuttontext }}</a> <a class="btn btn-primary btn-xl js-scroll-trigger" href="{{ site.headbuttonurl }}">{{ site.headbuttontext }}</a>
<a class="btn btn-primary btn-xl js-scroll-trigger" href="scheduling-shows">Read the Docs</a>
</div> </div>
</div> </div>
</div> </div>
@ -141,6 +150,7 @@
</div> </div>
</section> </section>
<!-- Screenshots gallery -->
<section class="p-0" id="screenshots"> <section class="p-0" id="screenshots">
<div class="container-fluid p-0"> <div class="container-fluid p-0">
<div class="row no-gutters popup-gallery"> <div class="row no-gutters popup-gallery">
@ -169,7 +179,7 @@
</a> </a>
</div> </div>
<div class="col-lg-4 col-sm-6"> <div class="col-lg-4 col-sm-6">
<a class="portfolio-box" href="img/portfolio/scheduling.jpg"> <a class="portfolio-box" href="scheduling-shows">
<img class="img-fluid" src="img/portfolio/scheduling.jpg" alt=""> <img class="img-fluid" src="img/portfolio/scheduling.jpg" alt="">
<div class="portfolio-box-caption"> <div class="portfolio-box-caption">
<div class="portfolio-box-caption-content"> <div class="portfolio-box-caption-content">
@ -205,7 +215,7 @@
</a> </a>
</div> </div>
<div class="col-lg-4 col-sm-6"> <div class="col-lg-4 col-sm-6">
<a class="portfolio-box" href="img/portfolio/podcasts.jpg"> <a class="portfolio-box" href="podcasts-webstreams">
<img class="img-fluid" src="img/portfolio/podcasts.jpg" alt=""> <img class="img-fluid" src="img/portfolio/podcasts.jpg" alt="">
<div class="portfolio-box-caption"> <div class="portfolio-box-caption">
<div class="portfolio-box-caption-content"> <div class="portfolio-box-caption-content">
@ -282,5 +292,42 @@
<script src="https://code.jquery.com/jquery-3.5.1.slim.min.js" integrity="sha384-DfXdz2htPH0lsSSs5nCTpuj/zy4C+OGpamoFVy38MVBnE+IbbVYUew+OrCXaRkfj" crossorigin="anonymous"></script> <script src="https://code.jquery.com/jquery-3.5.1.slim.min.js" integrity="sha384-DfXdz2htPH0lsSSs5nCTpuj/zy4C+OGpamoFVy38MVBnE+IbbVYUew+OrCXaRkfj" crossorigin="anonymous"></script>
<script src="https://cdn.jsdelivr.net/npm/popper.js@1.16.0/dist/umd/popper.min.js" integrity="sha384-Q6E9RHvbIyZFJoft+2mJbHaEWldlvI9IOYy5n3zV9zzTtmI3UksdQRVvoxMfooAo" crossorigin="anonymous"></script> <script src="https://cdn.jsdelivr.net/npm/popper.js@1.16.0/dist/umd/popper.min.js" integrity="sha384-Q6E9RHvbIyZFJoft+2mJbHaEWldlvI9IOYy5n3zV9zzTtmI3UksdQRVvoxMfooAo" crossorigin="anonymous"></script>
<script src="https://stackpath.bootstrapcdn.com/bootstrap/4.5.0/js/bootstrap.min.js" integrity="sha384-OgVRvuATP1z7JjHLkuOU7Xw704+h835Lr+6QL9UvYjZE3Ipu6Tp75j7Bh/kR0JKI" crossorigin="anonymous"></script> <script src="https://stackpath.bootstrapcdn.com/bootstrap/4.5.0/js/bootstrap.min.js" integrity="sha384-OgVRvuATP1z7JjHLkuOU7Xw704+h835Lr+6QL9UvYjZE3Ipu6Tp75j7Bh/kR0JKI" crossorigin="anonymous"></script>
<!-- For Scroll to Top text; from https://getflywheel.com/layout/sticky-back-to-top-button-tutorial/ -->
<script>
// Set a variable for our button element.
const scrollToTopButton = document.getElementById('js-top');
const scrollFunc = () => {
// Get the current scroll value
let y = window.scrollY;
// If the scroll value is greater than the window height, let's add a class to the scroll-to-top button to show it!
if (y > 0) {
scrollToTopButton.className = "top-link show";
} else {
scrollToTopButton.className = "top-link hide";
}
};
window.addEventListener("scroll", scrollFunc);
const scrollToTop = () => {
// Let's set a variable for the number of pixels we are from the top of the document.
const c = document.documentElement.scrollTop || document.body.scrollTop;
// If that number is greater than 0, we'll scroll back to 0, or the top of the document.
// We'll also animate that scroll with requestAnimationFrame:
// https://developer.mozilla.org/en-US/docs/Web/API/window/requestAnimationFrame
if (c > 0) {
window.requestAnimationFrame(scrollToTop);
// ScrollTo takes an x and a y coordinate.
// Increase the '10' value to get a smoother/slower scroll!
window.scrollTo(0, c - c / 10);
}
};
// When the button is clicked, run our ScrolltoTop function above!
scrollToTopButton.onclick = function(e) {
e.preventDefault();
scrollToTop();
}
</script>
</body> </body>
</html> </html>

View File

@ -10,8 +10,7 @@ title: Dashboard and Calendar
# Dashboard {#dashboard} # Dashboard {#dashboard}
The Dashboard is divided into two sections a Library section divided between The Dashboard is divided into two sections a Library section divided between
[Tracks](../tracks), [Playlists](../playlists), [Smart Blocks](../smartblocks), Tracks, Playlists, Smart Blocks, Webstreams, and Podcasts, with the **Scheduled
[Webstreams](../webstreams), and [Podcasts](../podcasts), with the **Scheduled
Shows** dialog on the right. This page provides an overview of the right-hand Shows** dialog on the right. This page provides an overview of the right-hand
interface. Check the links to see information about the other sections which interface. Check the links to see information about the other sections which
provide the content that can be scheduled. provide the content that can be scheduled.

View File

@ -5,6 +5,7 @@ title: Settings
> Quick Links: > Quick Links:
- [General Settings](#general) - [General Settings](#general)
- [Track Types](#types)
- [Stream Settings](#stream) - [Stream Settings](#stream)
- [LibreTime Status](#status) - [LibreTime Status](#status)
@ -93,10 +94,20 @@ their username on the right side of the menu bar.
---- ----
> Quick Links: # Track Types {#types}
- [General Settings](#general)
- [Stream Settings](#stream) ## Create track types
- [LibreTime Status](#status)
1. Click **Settings**
1. Click **Track Types**
1. Click **New Track Type**
1. On the "Code" field, type a unique code that can be easily identifiable. Example, for Music use "MUS" or for Sound Effects use something like "FX".
1. On the "Type Name" field, type a the name of the type of tracks. Example, "Station IDs".
1. On the "Description" field, enter the description of the type given.
1. On the "Visibility" drop down menu, choose to enable or disable the track type. By default, it is enabled. If disabled, it won't be shown across Libretime or in the API for developers.
1. Click **Save**.
----
# Stream Settings {#stream} # Stream Settings {#stream}
@ -181,10 +192,6 @@ Any connection problems between Liquidsoap and Icecast or SHOUTcast are shown on
------ ------
> Quick Links:
- [General Settings](#general)
- [Stream Settings](#stream)
- [LibreTime Status](#status)
# The Status page {#status} # The Status page {#status}

View File

@ -1,44 +0,0 @@
---
layout: docs
title: Working with Track Types
---
## Using track types when uploading tracks
1. Click **Upload**
1. The default track type is 'Music'
1. Click the drop down menu to select another type
Now when uploading tracks, you have the option to set a track type. This helps better identify and organize track files. If you have a group of files for commercials that needs to be uploaded, you can "Commercial" in the drop down menu and then upload the files. Commercial is included by default with LT, but you can create your own type in settings.
## Create track types
1. Click **Settings**
1. Click **Track Types**
1. Click **New Track Type**
1. On the "Code" field, type a unique code that can be easily identifiable. Example, for Music use "MUS" or for Sound Effects use something like "FX".
1. On the "Type Name" field, type a the name of the type of tracks. Example, "Station IDs".
1. On the "Description" field, enter the description of the type given.
1. On the "Visibility" drop down menu, choose to enable or disable the track type. By default, it is enabled. If disabled, it won't be shown across Libretime or in the API for developers.
1. Click **Save**.
## Using track types with the uploaded tracks
1. Click **Tracks**.
1. Select a track and click **Edit**
1. On "Track Type" drop down menu, select the type you would like use. Only the enabled track types that were added in Settings > Track Types will be shown here.
1. Click **Save**.
## Using track types with advanced search
1. Click **Tracks**.
1. Click on the down caret **▼** that is to the right inside search box
1. On **Type** select the type of track you're searching for.
## Using track types in Smart Blocks
1. Click **Smart Blocks**.
1. On "Select criteria" drop down menu, select "Track Type"
1. On "Select modifier" drop down menu, select "is" or "is not"
1. On "Select Track Type" drop down menu, select the track type.

View File

@ -76,9 +76,11 @@ where the hostname is *airtime.example.com*. If the hostname has changed, it may
3. Enter the following commands to set up authentication and grant permissions. The *rabbitmqctl add\_user* command requires the RabbitMQ password from the /etc/airtime/airtime.conf file as an argument. The *rabbitmqctl set\_permissions* command should be entered on one line, with the list of Airtime services repeated three times: 3. Enter the following commands to set up authentication and grant permissions. The *rabbitmqctl add\_user* command requires the RabbitMQ password from the /etc/airtime/airtime.conf file as an argument. The *rabbitmqctl set\_permissions* command should be entered on one line, with the list of Airtime services repeated three times:
rabbitmqctl add_vhost /airtime ```
rabbitmqctl add_user airtime XXXXXXXXXXXXXXXXXXXX rabbitmqctl add_vhost /airtime
rabbitmqctl set_permissions -p /airtime airtime rabbitmqctl add_user airtime XXXXXXXXXXXXXXXXXXXX
"airtime-pypo|pypo-fetch|airtime-analyzer|media-monitor" rabbitmqctl set_permissions -p /airtime airtime
  "airtime-pypo|pypo-fetch|airtime-analyzer|media-monitor" "airtime-pypo|pypo-fetch|airtime-analyzer|media-monitor"
 "airtime-pypo|pypo-fetch|airtime-analyzer|media-monitor"   "airtime-pypo|pypo-fetch|airtime-analyzer|media-monitor"
 "airtime-pypo|pypo-fetch|airtime-analyzer|media-monitor"
```