Merge pull request #716 from frecuencialibre/podcast-ui-2

Clarify podcast settings and workflow
This commit is contained in:
Robb 2019-02-27 13:09:42 -05:00 committed by GitHub
commit bc14230281
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
42 changed files with 1859 additions and 213 deletions

View file

@ -63,6 +63,16 @@ final class LocaleController extends Zend_Controller_Action
//"Adding 1 Item" => _("Adding 1 Item"),
//"Adding %s Items" => _("Adding %s Items"),
//library/library.js
"Add" => _("Add"),
"New" => _("New"),
"Edit" => _("Edit"),
"Add to Schedule" => _("Add to Schedule"),
"Add to next show" => _("Add to next show"),
"Add to current show" => _("Add to current show"),
"Add after selected items" => _("Add after selected items"),
"Delete" => _("Delete"),
"Publish" => _("Publish"),
"Remove" => _("Remove"),
"Edit Metadata" => _("Edit Metadata"),
"Add to selected show" => _("Add to selected show"),
"Select" => _("Select"),
@ -108,6 +118,10 @@ final class LocaleController extends Zend_Controller_Action
"Are you sure you want to delete the selected item?" => _("Are you sure you want to delete the selected item?"),
"Uploading in progress..." => _("Uploading in progress..."),
"Retrieving data from the server..." => _("Retrieving data from the server..."),
//library/podcast.js
"Import" => _("Import"),
"Imported?" => _("Imported?"),
"View" => _("View"),
// SOUNDCLOUD
"Are you sure? SoundCloud stats and comments for this track will be permanently removed." => "Are you sure? SoundCloud stats and comments for this track will be permanently removed.",
"Your track is being deleted from SoundCloud" => "Your track is being deleted from SoundCloud",
@ -314,6 +328,7 @@ final class LocaleController extends Zend_Controller_Action
"Trim overbooked shows" => _("Trim overbooked shows"),
"Remove selected scheduled items" => _("Remove selected scheduled items"),
"Jump to the current playing track" => _("Jump to the current playing track"),
"Jump to Current" => _("Jump to Current"),
"Cancel current show" => _("Cancel current show"),
//already in schedule/schedule.js
//"Cancel Current Show?" => _("Cancel Current Show?"),
@ -355,6 +370,7 @@ final class LocaleController extends Zend_Controller_Action
"View listener stats" => _("View listener stats"),
//dataTables/ColVis.js
"Show / hide columns" => _("Show / hide columns"),
"Columns" => _("Columns"),
//datatables.columnFilter.js
"From {from} to {to}" => _("From {from} to {to}"),
"kbps" => _("kbps"),

View file

@ -117,13 +117,13 @@ class Application_Form_GeneralPreferences extends Zend_Form_SubForm
$podcast_album_override = new Zend_Form_Element_Radio('podcastAlbumOverride');
$podcast_album_override->setLabel(_('Podcast Metadata Override'));
$podcast_album_override->setLabel(_('Overwrite Podcast Episode Metatags'));
$podcast_album_override->setMultiOptions(array(
_("Disabled"),
_("Enabled"),
));
$podcast_album_override->setValue(Application_Model_Preference::GetPodcastAlbumOverride());
$podcast_album_override->setDescription(_('Enabling this means that podcast tracks will get their metadata set from the podcast feed values'));
$podcast_album_override->setDescription(_('Enabling this feature will cause podcast episode tracks to have their Artist, Title, and Album metatags set from podcast feed values. Note that enabling this feature is recommended in order to ensure reliable scheduling of episodes via smartblocks.'));
$podcast_album_override->setSeparator(' '); //No <br> between radio buttons
$podcast_album_override->addDecorator('HtmlTag', array('tag' => 'dd',
'id'=>"podcastAlbumOverride-element",
@ -132,14 +132,13 @@ class Application_Form_GeneralPreferences extends Zend_Form_SubForm
$this->addElement($podcast_album_override);
$podcast_auto_smartblock = new Zend_Form_Element_Radio('podcastAutoSmartblock');
$podcast_auto_smartblock->setLabel(_('Podcast Automatic Smartblock and Playlist'));
$podcast_auto_smartblock->setLabel(_('Generate a smartblock and a playlist upon creation of a new podcast'));
$podcast_auto_smartblock->setMultiOptions(array(
_("Disabled"),
_("Enabled"),
));
$podcast_auto_smartblock->setValue(Application_Model_Preference::GetPodcastAutoSmartblock());
$podcast_auto_smartblock->setDescription(_('Enabling this means that a smartblock and playlist matching the newest track of a
podcast will be created when a new podcast is added. This depends upon the Podcast Album Override to work.'));
$podcast_auto_smartblock->setDescription(_('If this option is enabled, a new smartblock and playlist matching the newest track of a podcast will be generated immediately upon creation of a new podcast. Note that the "Overwrite Podcast Episode Metatags" feature must also be enabled in order for smartblocks to reliably find episodes.'));
$podcast_auto_smartblock->setSeparator(' '); //No <br> between radio buttons
$podcast_auto_smartblock->addDecorator('HtmlTag', array('tag' => 'dd',
'id'=>"podcastAutoSmartblock-element",
@ -150,14 +149,14 @@ class Application_Form_GeneralPreferences extends Zend_Form_SubForm
//TODO add and insert Podcast Smartblock and Playlist autogenerate options
$third_party_api = new Zend_Form_Element_Radio('thirdPartyApi');
$third_party_api->setLabel(_('Public Airtime API'));
$third_party_api->setLabel(_('Public LibreTime API'));
$third_party_api->setDescription(_('Required for embeddable schedule widget.'));
$third_party_api->setMultiOptions(array(
_("Disabled"),
_("Enabled"),
));
$third_party_api->setValue(Application_Model_Preference::GetAllow3rdPartyApi());
$third_party_api->setDescription(_('Enabling this feature will allow Airtime to provide schedule data
$third_party_api->setDescription(_('Enabling this feature will allow LibreTime to provide schedule data
to external widgets that can be embedded in your website.'));
$third_party_api->setSeparator(' '); //No <br> between radio buttons
//$third_party_api->addDecorator(new Zend_Form_Decorator_Label(array('tag' => 'dd', 'class' => 'radio-inline-list')));

View file

@ -16,26 +16,18 @@
<a href="{{podcast.url}}" target="_blank" class="podcast-url">{{podcast.url}}</a>
</div>
<div class="podcast-metadata-row">
<label for="podcast_auto_ingest"><?php echo _("Download latest episodes:") ?></label>
<div>
<input name="podcast_auto_ingest" id="podcast_auto_ingest" ng-model="podcast.auto_ingest" type="checkbox"/>
</div>
<label for="podcast_auto_ingest"><?php echo _("Automatically download latest episodes") ?></label>
</div>
<div class="podcast-metadata-row">
<div>
<input name="podcast_album_override" id="podcast_album_override" ng-model="podcast.album_override" type="checkbox" />
</div>
<div>
<label for="podcast_album_override"><?php echo _("Overwrite episode track metadata"); ?></label> <span class='album_names help_icon'></span>
</div>
</div>
<div class="podcast-metadata-row" >
<div></div>
<label><?php echo _("Scheduling:") ?></label>
<div>
<button ng-click="createSmartblock()" ng-disabled="!podcast.album_override" class="btn" type="button" name="smartblock">
<?php echo _("Generate Smartblock and Playlist for Podcast") ?>
<button ng-click="createSmartblock()" class="btn" type="button" name="smartblock">
<?php echo _("Generate Smartblock and Playlist") ?>
</button>
<div class='pc-sb-success success' style='display:none'></span></div>
<div class='pc-sb-success success' style='display:none'>&quot;{{podcast.title}}&quot; <br> <?php echo _("Smartblock and Playlist generated") ?></span></div>
</div>
</div>
</form>
@ -54,6 +46,6 @@
<?php echo _("Save") ?>
</button>
</div>
<div class='success' style='display:none'></div>
<div class='pc-save-success success' style='display:none'></div>
</div>
</div>