PowerPress Podcasting plugin by Blubrry - Version 8.2.3

Version Description

  • Released 2/13/2020
  • Added Remove Episode option back into episode box
  • Fixed a bug where title input wasn't showing up (for users who had selected to specify an episode title)
  • Season value is now allowed to be empty
  • Added a label for the explicit setting
  • Fixed a bug where the settings for the player size weren't showing up for video media
Download this release

Release Info

Developer benbeecroft
Plugin Icon 128x128 PowerPress Podcasting plugin by Blubrry
Version 8.2.3
Comparing to
See all releases

Code changes from version 8.2.2 to 8.2.3

css/episode-box.css CHANGED
@@ -340,11 +340,15 @@ div[id^="pp-edit-media-button"] {
340
  padding: 1ch 2em 1ch 2em;
341
  }
342
 
343
- div[id^="a-pp-selected-media"] {
344
- padding: 2em;
345
  background-color: #F5F5F5;
346
  }
347
 
 
 
 
 
348
  div[class^="metamark-preview-"] {
349
  font-weight: bold;
350
  }
340
  padding: 1ch 2em 1ch 2em;
341
  }
342
 
343
+ div[id^="a-pp-selected-media"], .powerpress_remove_container {
344
+ padding: 0 2em 2em 2em;
345
  background-color: #F5F5F5;
346
  }
347
 
348
+ div[class="powerpress_remove_container"] {
349
+ padding: 0 4em;
350
+ }
351
+
352
  div[class^="metamark-preview-"] {
353
  font-weight: bold;
354
  }
js/admin.js CHANGED
@@ -174,7 +174,8 @@ function powerpress_changeMediaFile(el) {
174
  function powerpress_saveMediaFile(el) {
175
  let feed_slug = el.id.replace("save-media-", "");
176
  powerpress_get_media_info(feed_slug);
177
- let poster = jQuery("#powerpress_thumbnail_container_" + feed_slug);
 
178
  let link = jQuery("#pp-url-input-container-" + feed_slug + " > input").val();
179
  let display_filename = jQuery("#ep-box-filename-" + feed_slug);
180
  let link_parts = "";
@@ -186,23 +187,27 @@ function powerpress_saveMediaFile(el) {
186
  let above_label = jQuery("#pp-url-input-above-" + feed_slug);
187
  let below_label = jQuery("#pp-url-input-below-" + feed_slug);
188
  if (link !== '') {
189
- if (link.includes("/")) {
190
- link_parts = link.split("/");
191
- } else {
192
- link_parts = link.split("\\");
193
- }
194
  let video_types = [".mp4", ".m4v", ".webm", ".ogg", ".ogv"];
195
  let video = false;
196
  video_types.forEach(function(element) {
197
- if (link.includes(element)) {
198
- poster.removeAttr("style");
199
- poster.attr("style", "display: block");
 
 
200
  video = true;
201
  }
202
  });
203
  if (!video) {
204
- poster.removeAttr("style");
205
- poster.attr("style", "display: none");
 
 
 
 
 
 
 
206
  }
207
  let fname = link_parts.pop();
208
  display_filename.html(fname);
@@ -227,7 +232,8 @@ function powerpress_saveMediaFile(el) {
227
  function powerpress_continueToEpisodeSettings(el) {
228
  let feed_slug = el.id.replace("continue-to-episode-settings-", "");
229
  powerpress_get_media_info(feed_slug);
230
- let poster = jQuery("#powerpress_thumbnail_container_" + feed_slug);
 
231
  let link = jQuery("#pp-url-input-container-" + feed_slug + " > input").val();
232
  let file_input = jQuery("#pp-url-input-container-" + feed_slug);
233
  let file_show = jQuery("#powerpress_url_show_" + feed_slug);
@@ -243,24 +249,28 @@ function powerpress_continueToEpisodeSettings(el) {
243
  let container = jQuery("#a-pp-selected-media-" + feed_slug);
244
  let details = jQuery("#media-file-details-" + feed_slug);
245
  if (link.length > 0) {
246
- file_show.attr("title", link);
247
- if (link.includes("/")) {
248
- link_parts = link.split("/");
249
- } else {
250
- link_parts = link.split("\\");
251
- }
252
  let video_types = [".mp4", ".m4v", ".webm", ".ogg", ".ogv"];
253
  let video = false;
254
  video_types.forEach(function(element) {
255
- if (link.includes(element)) {
256
- poster.removeAttr("style");
257
- poster.attr("style", "display: block");
 
 
258
  video = true;
259
  }
260
  });
261
  if (!video) {
262
- poster.removeAttr("style");
263
- poster.attr("style", "display: none");
 
 
 
 
 
 
 
 
264
  }
265
  let fname = link_parts.pop();
266
  display_filename.html(fname);
174
  function powerpress_saveMediaFile(el) {
175
  let feed_slug = el.id.replace("save-media-", "");
176
  powerpress_get_media_info(feed_slug);
177
+ let player_size = jQuery("#pp-player-size-" + feed_slug);
178
+ let player_size_line = jQuery("#line-above-player-size-" + feed_slug);
179
  let link = jQuery("#pp-url-input-container-" + feed_slug + " > input").val();
180
  let display_filename = jQuery("#ep-box-filename-" + feed_slug);
181
  let link_parts = "";
187
  let above_label = jQuery("#pp-url-input-above-" + feed_slug);
188
  let below_label = jQuery("#pp-url-input-below-" + feed_slug);
189
  if (link !== '') {
 
 
 
 
 
190
  let video_types = [".mp4", ".m4v", ".webm", ".ogg", ".ogv"];
191
  let video = false;
192
  video_types.forEach(function(element) {
193
+ if (link.endsWith(element)) {
194
+ player_size.removeAttr("style");
195
+ player_size.attr("style", "display: block");
196
+ player_size_line.removeAttr("style");
197
+ player_size_line.attr("style", "display: block");
198
  video = true;
199
  }
200
  });
201
  if (!video) {
202
+ player_size.removeAttr("style");
203
+ player_size.attr("style", "display: none");
204
+ player_size_line.removeAttr("style");
205
+ player_size_line.attr("style", "display: none");
206
+ }
207
+ if (link.includes("/")) {
208
+ link_parts = link.split("/");
209
+ } else {
210
+ link_parts = link.split("\\");
211
  }
212
  let fname = link_parts.pop();
213
  display_filename.html(fname);
232
  function powerpress_continueToEpisodeSettings(el) {
233
  let feed_slug = el.id.replace("continue-to-episode-settings-", "");
234
  powerpress_get_media_info(feed_slug);
235
+ let player_size = jQuery("#pp-player-size-" + feed_slug);
236
+ let player_size_line = jQuery("#line-above-player-size-" + feed_slug);
237
  let link = jQuery("#pp-url-input-container-" + feed_slug + " > input").val();
238
  let file_input = jQuery("#pp-url-input-container-" + feed_slug);
239
  let file_show = jQuery("#powerpress_url_show_" + feed_slug);
249
  let container = jQuery("#a-pp-selected-media-" + feed_slug);
250
  let details = jQuery("#media-file-details-" + feed_slug);
251
  if (link.length > 0) {
 
 
 
 
 
 
252
  let video_types = [".mp4", ".m4v", ".webm", ".ogg", ".ogv"];
253
  let video = false;
254
  video_types.forEach(function(element) {
255
+ if (link.endsWith(element)) {
256
+ player_size.removeAttr("style");
257
+ player_size.attr("style", "display: block");
258
+ player_size_line.removeAttr("style");
259
+ player_size_line.attr("style", "display: block");
260
  video = true;
261
  }
262
  });
263
  if (!video) {
264
+ player_size.removeAttr("style");
265
+ player_size.attr("style", "display: none");
266
+ player_size_line.removeAttr("style");
267
+ player_size_line.attr("style", "display: none");
268
+ }
269
+ file_show.attr("title", link);
270
+ if (link.includes("/")) {
271
+ link_parts = link.split("/");
272
+ } else {
273
+ link_parts = link.split("\\");
274
  }
275
  let fname = link_parts.pop();
276
  display_filename.html(fname);
powerpress.php CHANGED
@@ -3,7 +3,7 @@
3
  Plugin Name: Blubrry PowerPress
4
  Plugin URI: http://create.blubrry.com/resources/powerpress/
5
  Description: <a href="https://create.blubrry.com/resources/powerpress/" target="_blank">Blubrry PowerPress</a> is the No. 1 Podcasting plugin for WordPress. Developed by podcasters for podcasters; features include Simple and Advanced modes, multiple audio/video player options, subscribe to podcast tools, podcast SEO features, and more! Fully supports Apple Podcasts (previously iTunes), Google Podcasts, Spotify, Stitcher, and Blubrry Podcasting directories, as well as all podcast applications and clients.
6
- Version: 8.2.2
7
  Author: Blubrry
8
  Author URI: https://blubrry.com/
9
  Requires at least: 3.6
@@ -36,7 +36,7 @@ if( !function_exists('add_action') ) {
36
 
37
  // WP_PLUGIN_DIR (REMEMBER TO USE THIS DEFINE IF NEEDED)
38
 
39
- define('POWERPRESS_VERSION', '8.2.2' );
40
 
41
  // Translation support:
42
  if ( !defined('POWERPRESS_ABSPATH') )
3
  Plugin Name: Blubrry PowerPress
4
  Plugin URI: http://create.blubrry.com/resources/powerpress/
5
  Description: <a href="https://create.blubrry.com/resources/powerpress/" target="_blank">Blubrry PowerPress</a> is the No. 1 Podcasting plugin for WordPress. Developed by podcasters for podcasters; features include Simple and Advanced modes, multiple audio/video player options, subscribe to podcast tools, podcast SEO features, and more! Fully supports Apple Podcasts (previously iTunes), Google Podcasts, Spotify, Stitcher, and Blubrry Podcasting directories, as well as all podcast applications and clients.
6
+ Version: 8.2.3
7
  Author: Blubrry
8
  Author URI: https://blubrry.com/
9
  Requires at least: 3.6
36
 
37
  // WP_PLUGIN_DIR (REMEMBER TO USE THIS DEFINE IF NEEDED)
38
 
39
+ define('POWERPRESS_VERSION', '8.2.3' );
40
 
41
  // Translation support:
42
  if ( !defined('POWERPRESS_ABSPATH') )
powerpressadmin-basic.php CHANGED
@@ -1047,7 +1047,7 @@ function powerpressadmin_welcome($GeneralSettings)
1047
  ?>
1048
  <div>
1049
  <div class="powerpress-welcome-news">
1050
- <h2><?php echo __('Blubrry PowerPress and Community Podcast', 'powerpress'); ?></h2>
1051
  <?php powerpressadmin_community_news(); ?>
1052
  <p style="margin-bottom: 0; font-size: 85%;">
1053
  <input type="checkbox" name="General[disable_dashboard_news]" value="1" <?php echo (empty($GeneralSettings['disable_dashboard_news'])?'':'checked'); ?> /> <?php echo __('Remove from dashboard', 'powerpress'); ?>
1047
  ?>
1048
  <div>
1049
  <div class="powerpress-welcome-news">
1050
+ <h2><?php echo __('Podcast Insider by Blubrry', 'powerpress'); ?></h2>
1051
  <?php powerpressadmin_community_news(); ?>
1052
  <p style="margin-bottom: 0; font-size: 85%;">
1053
  <input type="checkbox" name="General[disable_dashboard_news]" value="1" <?php echo (empty($GeneralSettings['disable_dashboard_news'])?'':'checked'); ?> /> <?php echo __('Remove from dashboard', 'powerpress'); ?>
powerpressadmin-dashboard.php CHANGED
@@ -3,8 +3,8 @@
3
  if( !function_exists('add_action') )
4
  die("access denied.");
5
 
6
- define('POWERPRESS_FEED_HIGHLIGHTED', 'http://www.powerpresspodcast.com/category/highlighted/feed/?order=ASC');
7
- define('POWERPRESS_FEED_NEWS', 'http://www.powerpresspodcast.com/feed/');
8
 
9
  function powerpress_get_news($feed_url, $limit=10)
10
  {
@@ -286,7 +286,7 @@ function powerpress_dashboard_setup()
286
  }
287
 
288
  if( $NewsDashboard )
289
- wp_add_dashboard_widget( 'powerpress_dashboard_news', __( 'Blubrry PowerPress & Community Podcast', 'powerpress'), 'powerpress_dashboard_news_content' );
290
 
291
  if( !empty($_GET['powerpressdash']) && $_GET['powerpressdash'] == 3 ) {
292
  return;
3
  if( !function_exists('add_action') )
4
  die("access denied.");
5
 
6
+ define('POWERPRESS_FEED_HIGHLIGHTED', 'https://blubrry.com/podcast-insider/category/highlighted/feed/?order=ASC');
7
+ define('POWERPRESS_FEED_NEWS', 'https://blubrry.com/podcast-insider/feed/podcast/');
8
 
9
  function powerpress_get_news($feed_url, $limit=10)
10
  {
286
  }
287
 
288
  if( $NewsDashboard )
289
+ wp_add_dashboard_widget( 'powerpress_dashboard_news', __( 'Podcast Insider by Blubrry', 'powerpress'), 'powerpress_dashboard_news_content' );
290
 
291
  if( !empty($_GET['powerpressdash']) && $_GET['powerpressdash'] == 3 ) {
292
  return;
powerpressadmin-metabox.php CHANGED
@@ -227,7 +227,7 @@ function episode_box_top($EnclosureURL, $FeedSlug, $ExtraData, $GeneralSettings,
227
  }
228
 
229
 
230
- function seo_tab($FeedSlug, $ExtraData, $iTunesExplicit, $canSetSeason, $iTunesSubtitle, $iTunesSummary, $iTunesAuthor, $iTunesOrder, $iTunesBlock, $object)
231
  {
232
  ?>
233
  <!-- Tab content -->
@@ -258,7 +258,7 @@ function seo_tab($FeedSlug, $ExtraData, $iTunesExplicit, $canSetSeason, $iTunesS
258
  <div class="pp-tooltip-right" style="margin: 1ch 0 0 1ch;">i
259
  <span class="text-pp-tooltip" style="top: -50%; min-width: 200px;"><?php echo __('Please enter your episode title in the space for post title, above the post description.', 'powerpress'); ?></span>
260
  </div>
261
- <?php if (!empty($GeneralSettings['seo_feed_title'])) { ?>
262
  <div class="powerpress_row">
263
  <div class="powerpress_row_content">
264
  <input type="text" id="powerpress_feed_title_<?php echo $FeedSlug; ?>" title="<?php echo __("Episode title","powerpress"); ?>"
@@ -266,8 +266,9 @@ function seo_tab($FeedSlug, $ExtraData, $iTunesExplicit, $canSetSeason, $iTunesS
266
  name="Powerpress[<?php echo $FeedSlug; ?>][feed_title]"
267
  value="<?php echo esc_attr($ExtraData['feed_title']); ?>"
268
  placeholder="<?php echo __('Custom episode title', 'powerpress'); ?>"
269
- style="width: 100%; margin-top: 1em;"/>
270
  </div>
 
271
  </div>
272
  <?php } else { ?>
273
  <p class="ep-box-text"><?php echo __("The episode title is pulled from your WordPress post title at the top of this page.", 'powerpress'); ?></p>
@@ -297,6 +298,7 @@ function seo_tab($FeedSlug, $ExtraData, $iTunesExplicit, $canSetSeason, $iTunesS
297
 
298
  ?>
299
  </select>
 
300
  <div id="explicit-switch-base-<?php echo $FeedSlug; ?>">
301
  <div id="not-set-<?php echo $FeedSlug; ?>" title="<?php echo __("No explicit selected","powerpress"); ?>"
302
  onclick="powerpress_changeExplicitSwitch(this)"<?php echo $iTunesExplicit == 2 ? ' style="border-right: 1px solid #b3b3b3;"' : '' ?>
@@ -340,23 +342,7 @@ function seo_tab($FeedSlug, $ExtraData, $iTunesExplicit, $canSetSeason, $iTunesS
340
  <input class="apple-opt-input" type="number" onclick="powerpress_setCurrentSeason(this)"
341
  id="powerpress_episode_season_<?php echo $FeedSlug; ?>"
342
  name="Powerpress[<?php echo $FeedSlug; ?>][season]" title="<?php echo __("Apple Podcasts season number","powerpress"); ?>"
343
- value="<?php //if ($canSetSeason) {
344
- if (isset($ExtraData['season']) && $ExtraData['season']) {
345
- echo esc_attr($ExtraData['season']) . "\"/>";
346
- } elseif (isset($GeneralSettings['current_season'])) {
347
- echo esc_attr($GeneralSettings['current_season']) . "\"/>";
348
- } else {
349
- echo "1\" style=\"width: 100%;\"/>";
350
- }
351
- /*} else {
352
- if (isset($ExtraData['season']) && $ExtraData['season']) {
353
- $season = esc_attr($ExtraData['season']);
354
- } else {
355
- $season = '1';
356
- }
357
- echo "$season\" style=\"display: none\"/>";
358
- echo "<input class='ep-box-input' type='number' style='width: 100%;' id='powerpress_episode_season_disabled_$FeedSlug' value='$season' disabled \>";
359
- }*/ ?>
360
  <input id="most-recent-season-<?php echo $FeedSlug; ?>" type="number"
361
  name="General[current_season]" style="display: none;" value="1" />
362
  </div>
@@ -457,7 +443,7 @@ function seo_tab($FeedSlug, $ExtraData, $iTunesExplicit, $canSetSeason, $iTunesS
457
  <?php
458
  }
459
 
460
- function artwork_tab($FeedSlug, $ExtraData, $object, $IsVideo, $CoverImage)
461
  {
462
  ?>
463
 
@@ -500,47 +486,38 @@ function artwork_tab($FeedSlug, $ExtraData, $object, $IsVideo, $CoverImage)
500
  style="font-weight: bold;margin: 3px;"><?php echo get_filename_from_path(esc_attr($ExtraData['itunes_image'])); ?></p>
501
  </div>
502
  </div>
503
- <?php //Setting for poster image
504
- if ($IsVideo) {
505
- $display = "none";
506
- } else {
507
- $display = "block";
508
- }?>
509
- <div class="ep-box-line-margin"></div>
510
- <div id="powerpress_thumbnail_container_<?php echo $FeedSlug; ?>" class="pp-section-container" style="display: <?php echo $display; ?>">
511
- <div class="powerpress-art-text">
512
- <h4 class="pp-section-title"><?php echo __('Thumbnail Image', 'powerpress'); ?></h4>
513
- <div class="pp-tooltip-right">i
514
- <span class="text-pp-tooltip"><?php echo __('This setting is displayed because your podcast media is a video file.', 'powerpress'); ?></span>
515
- </div>
516
- <br/> <br/>
517
- <input type="text" class="ep-box-input" id="powerpress_image_<?php echo $FeedSlug; ?>"
518
- name="Powerpress[<?php echo $FeedSlug; ?>][image]" title="<?php echo __("Poster image URL","powerpress"); ?>"
519
- value="<?php echo esc_attr($CoverImage); ?>"
520
- placeholder="<?php echo htmlspecialchars(__('e.g. http://example.com/path/to/image.jpg', 'powerpress')); ?>"
521
- style="font-size: 90%;" size="250" oninput="powerpress_insertArtIntoPreview(this)"/>
522
- <br/>
523
- <label class="ep-box-caption"
524
- for="powerpress_image_<?php echo $FeedSlug; ?>"><?php echo __('Poster image for video (m4v, mp4, ogv, webm, etc..)', 'powerpress'); ?></label>
525
- <br/>
526
- <a href="<?php echo $form_action_url; ?>" class="thickbox powerpress-image-browser"
527
- id="powerpress_image_browser_<?php echo $FeedSlug; ?>"
528
- title="<?php echo __('Select Poster Image', 'powerpress'); ?>">
529
- <button class="pp-gray-button"><?php echo __('UPLOAD THUMBNAIL', 'powerpress'); ?></button>
530
- </a>
531
- </div>
532
- <div class="powerpress-art-preview">
533
- <p class="pp-section-subtitle"
534
- style="font-weight: bold;"><?php echo __('PREVIEW', 'powerpress'); ?></p>
535
- <img id="poster-pp-image-preview-<?php echo $FeedSlug; ?>"
536
- src="<?php echo esc_attr($CoverImage); ?>" alt="No thumbnail selected"/>
537
- <p id="poster-pp-image-preview-caption-<?php echo $FeedSlug; ?>" class="pp-section-subtitle"
538
- style="font-weight: bold;margin: 3px;"><?php echo get_filename_from_path(esc_attr($CoverImage)); ?></p>
539
  </div>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
540
  </div>
541
- <?php
542
- //}
543
- ?>
 
 
 
 
 
 
544
  </div>
545
 
546
  <?php
@@ -571,25 +548,27 @@ function display_tab($FeedSlug, $IsVideo, $NoPlayer, $NoLinks, $Width, $Height,
571
  </div>
572
 
573
  <?php //Setting for audio player size
574
- if ($IsVideo) { ?>
575
- <div id="pp-player-size-<?php echo $FeedSlug; ?>" class="pp-section-container">
576
- <h4 class="pp-section-title"><?php echo __('Video Player Size', 'powerpress') ?></h4>
577
- <div class="powerpress_row_content">
578
- <input type="text" id="powerpress_episode_player_width_<?php echo $FeedSlug; ?>" title="<?php echo __("Player width","powerpress"); ?>"
579
- class="ep-box-input" placeholder="<?php echo htmlspecialchars(__('Width', 'powerpress')); ?>"
580
- name="Powerpress[<?php echo $FeedSlug; ?>][width]" value="<?php echo esc_attr($Width); ?>"
581
- style="width: 40%;font-size: 90%;" size="5"/>
582
- x
583
- <input type="text" id="powerpress_episode_player_height_<?php echo $FeedSlug; ?>"
584
- class="ep-box-input"
585
- placeholder="<?php echo htmlspecialchars(__('Height', 'powerpress')); ?>" title="<?php echo __("Player height","powerpress"); ?>"
586
- name="Powerpress[<?php echo $FeedSlug; ?>][height]" value="<?php echo esc_attr($Height); ?>"
587
- style="width: 40%; font-size: 90%;" size="5"/>
588
- </div>
 
 
 
 
589
  </div>
590
- <?php
591
- }
592
- ?>
593
  <div class="ep-box-line"></div>
594
  <div id="player-shortcode-<?php echo $FeedSlug; ?>" class="pp-section-container">
595
  <h4 class="pp-section-title-block"><?php echo __('Display Player Anywhere on Page', 'powerpress'); ?></h4>
@@ -610,7 +589,7 @@ function display_tab($FeedSlug, $IsVideo, $NoPlayer, $NoLinks, $Width, $Height,
610
  <div class="powerpress_row_content">
611
  <textarea class="ep-box-input" id="powerpress_embed_<?php echo $FeedSlug; ?>"
612
  name="Powerpress[<?php echo $FeedSlug; ?>][embed]" title="<?php echo __("Media Embed","powerpress"); ?>"
613
- style="font-size: 14px; width: 90%; height: 80px;"
614
  onfocus="this.select();"><?php echo esc_textarea($Embed); ?></textarea>
615
  </div>
616
  </div>
227
  }
228
 
229
 
230
+ function seo_tab($FeedSlug, $ExtraData, $iTunesExplicit, $seo_feed_title, $iTunesSubtitle, $iTunesSummary, $iTunesAuthor, $iTunesOrder, $iTunesBlock, $object)
231
  {
232
  ?>
233
  <!-- Tab content -->
258
  <div class="pp-tooltip-right" style="margin: 1ch 0 0 1ch;">i
259
  <span class="text-pp-tooltip" style="top: -50%; min-width: 200px;"><?php echo __('Please enter your episode title in the space for post title, above the post description.', 'powerpress'); ?></span>
260
  </div>
261
+ <?php if ($seo_feed_title) { ?>
262
  <div class="powerpress_row">
263
  <div class="powerpress_row_content">
264
  <input type="text" id="powerpress_feed_title_<?php echo $FeedSlug; ?>" title="<?php echo __("Episode title","powerpress"); ?>"
266
  name="Powerpress[<?php echo $FeedSlug; ?>][feed_title]"
267
  value="<?php echo esc_attr($ExtraData['feed_title']); ?>"
268
  placeholder="<?php echo __('Custom episode title', 'powerpress'); ?>"
269
+ style="width: 96%; margin-top: 1em;"/>
270
  </div>
271
+ <label class="ep-box-label-under"><?php echo __("Leave blank to use WordPress post title at the top of this page.", 'powerpress'); ?></label>
272
  </div>
273
  <?php } else { ?>
274
  <p class="ep-box-text"><?php echo __("The episode title is pulled from your WordPress post title at the top of this page.", 'powerpress'); ?></p>
298
 
299
  ?>
300
  </select>
301
+ <label class="ep-box-label" for="explicit-switch-base-<?php echo $FeedSlug; ?>"><?php echo __("Explicit Setting", "powerpress"); ?></label>
302
  <div id="explicit-switch-base-<?php echo $FeedSlug; ?>">
303
  <div id="not-set-<?php echo $FeedSlug; ?>" title="<?php echo __("No explicit selected","powerpress"); ?>"
304
  onclick="powerpress_changeExplicitSwitch(this)"<?php echo $iTunesExplicit == 2 ? ' style="border-right: 1px solid #b3b3b3;"' : '' ?>
342
  <input class="apple-opt-input" type="number" onclick="powerpress_setCurrentSeason(this)"
343
  id="powerpress_episode_season_<?php echo $FeedSlug; ?>"
344
  name="Powerpress[<?php echo $FeedSlug; ?>][season]" title="<?php echo __("Apple Podcasts season number","powerpress"); ?>"
345
+ style="width: 100%;"/>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
346
  <input id="most-recent-season-<?php echo $FeedSlug; ?>" type="number"
347
  name="General[current_season]" style="display: none;" value="1" />
348
  </div>
443
  <?php
444
  }
445
 
446
+ function artwork_tab($FeedSlug, $ExtraData, $object, $CoverImage)
447
  {
448
  ?>
449
 
486
  style="font-weight: bold;margin: 3px;"><?php echo get_filename_from_path(esc_attr($ExtraData['itunes_image'])); ?></p>
487
  </div>
488
  </div>
489
+ <div class="ep-box-line-margin"></div>
490
+ <div id="powerpress_thumbnail_container_<?php echo $FeedSlug; ?>" class="pp-section-container">
491
+ <div class="powerpress-art-text">
492
+ <h4 class="pp-section-title"><?php echo __('Thumbnail Image', 'powerpress'); ?></h4>
493
+ <div class="pp-tooltip-right">i
494
+ <span class="text-pp-tooltip"><?php echo __('This artwork only shows up if your podcast media is a video file.', 'powerpress'); ?></span>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
495
  </div>
496
+ <br/> <br/>
497
+ <input type="text" class="ep-box-input" id="powerpress_image_<?php echo $FeedSlug; ?>"
498
+ name="Powerpress[<?php echo $FeedSlug; ?>][image]" title="<?php echo __("Poster image URL","powerpress"); ?>"
499
+ value="<?php echo esc_attr($CoverImage); ?>"
500
+ placeholder="<?php echo htmlspecialchars(__('e.g. http://example.com/path/to/image.jpg', 'powerpress')); ?>"
501
+ style="font-size: 90%;" size="250" oninput="powerpress_insertArtIntoPreview(this)"/>
502
+ <br/>
503
+ <label class="ep-box-caption"
504
+ for="powerpress_image_<?php echo $FeedSlug; ?>"><?php echo __('Poster image for video (m4v, mp4, ogv, webm, etc..)', 'powerpress'); ?></label>
505
+ <br/>
506
+ <a href="<?php echo $form_action_url; ?>" class="thickbox powerpress-image-browser"
507
+ id="powerpress_image_browser_<?php echo $FeedSlug; ?>"
508
+ title="<?php echo __('Select Poster Image', 'powerpress'); ?>">
509
+ <button class="pp-gray-button"><?php echo __('UPLOAD THUMBNAIL', 'powerpress'); ?></button>
510
+ </a>
511
  </div>
512
+ <div class="powerpress-art-preview">
513
+ <p class="pp-section-subtitle"
514
+ style="font-weight: bold;"><?php echo __('PREVIEW', 'powerpress'); ?></p>
515
+ <img id="poster-pp-image-preview-<?php echo $FeedSlug; ?>"
516
+ src="<?php echo esc_attr($CoverImage); ?>" alt="No thumbnail selected"/>
517
+ <p id="poster-pp-image-preview-caption-<?php echo $FeedSlug; ?>" class="pp-section-subtitle"
518
+ style="font-weight: bold;margin: 3px;"><?php echo get_filename_from_path(esc_attr($CoverImage)); ?></p>
519
+ </div>
520
+ </div>
521
  </div>
522
 
523
  <?php
548
  </div>
549
 
550
  <?php //Setting for audio player size
551
+ if ($IsVideo) {
552
+ $display = "block";
553
+ } else {
554
+ $display = "none";
555
+ } ?>
556
+ <div id="line-above-player-size-<?php echo $FeedSlug; ?>" style="display: <?php echo $display; ?>" class="ep-box-line"></div>
557
+ <div id="pp-player-size-<?php echo $FeedSlug; ?>" style="display: <?php echo $display; ?>" class="pp-section-container">
558
+ <h4 class="pp-section-title" style="width: 100%;"><?php echo __('Video Player Size', 'powerpress') ?></h4>
559
+ <div class="label-container">
560
+ <input type="text" id="powerpress_episode_player_width_<?php echo $FeedSlug; ?>" title="<?php echo __("Player width","powerpress"); ?>"
561
+ class="ep-box-input" placeholder="<?php echo htmlspecialchars(__('Width', 'powerpress')); ?>"
562
+ name="Powerpress[<?php echo $FeedSlug; ?>][width]" value="<?php echo esc_attr($Width); ?>"
563
+ style="width: 40%;font-size: 90%;" size="5"/>
564
+ x
565
+ <input type="text" id="powerpress_episode_player_height_<?php echo $FeedSlug; ?>"
566
+ class="ep-box-input"
567
+ placeholder="<?php echo htmlspecialchars(__('Height', 'powerpress')); ?>" title="<?php echo __("Player height","powerpress"); ?>"
568
+ name="Powerpress[<?php echo $FeedSlug; ?>][height]" value="<?php echo esc_attr($Height); ?>"
569
+ style="width: 40%; font-size: 90%;" size="5"/>
570
  </div>
571
+ </div>
 
 
572
  <div class="ep-box-line"></div>
573
  <div id="player-shortcode-<?php echo $FeedSlug; ?>" class="pp-section-container">
574
  <h4 class="pp-section-title-block"><?php echo __('Display Player Anywhere on Page', 'powerpress'); ?></h4>
589
  <div class="powerpress_row_content">
590
  <textarea class="ep-box-input" id="powerpress_embed_<?php echo $FeedSlug; ?>"
591
  name="Powerpress[<?php echo $FeedSlug; ?>][embed]" title="<?php echo __("Media Embed","powerpress"); ?>"
592
+ style="font-size: 14px; width: 95%; height: 80px;"
593
  onfocus="this.select();"><?php echo esc_textarea($Embed); ?></textarea>
594
  </div>
595
  </div>
readme.txt CHANGED
@@ -4,7 +4,7 @@ Tags: podcasting, podcast, podcaster, powerpress, itunes, apple, apple podcasts,
4
  Requires at least: 3.6
5
  Requires PHP: 5.2
6
  Tested up to: 5.3.2
7
- Stable tag: 8.2.2
8
  Donate link: https://create.blubrry.com/resources/podcast-media-hosting/
9
  License: GPLv2 or later
10
 
@@ -236,6 +236,14 @@ To install Blubrry PowerPress manually, follow these steps:
236
  = Fan of PowerPress and want to show your support? =
237
  If you are a fan of PowerPress, we would greatly appreciate it if you could take a moment and [leave us a review on WordPress.org](https://wordpress.org/support/plugin/powerpress/reviews/?rate=5#new-post). Your support is greatly appreciated!
238
 
 
 
 
 
 
 
 
 
239
  = 8.2.2 =
240
  * Released 2/12/2020
241
  * Tweaked id3 library so as to prevent php compatibility errors
4
  Requires at least: 3.6
5
  Requires PHP: 5.2
6
  Tested up to: 5.3.2
7
+ Stable tag: 8.2.3
8
  Donate link: https://create.blubrry.com/resources/podcast-media-hosting/
9
  License: GPLv2 or later
10
 
236
  = Fan of PowerPress and want to show your support? =
237
  If you are a fan of PowerPress, we would greatly appreciate it if you could take a moment and [leave us a review on WordPress.org](https://wordpress.org/support/plugin/powerpress/reviews/?rate=5#new-post). Your support is greatly appreciated!
238
 
239
+ = 8.2.3 =
240
+ * Released 2/13/2020
241
+ * Added Remove Episode option back into episode box
242
+ * Fixed a bug where title input wasn't showing up (for users who had selected to specify an episode title)
243
+ * Season value is now allowed to be empty
244
+ * Added a label for the explicit setting
245
+ * Fixed a bug where the settings for the player size weren't showing up for video media
246
+
247
  = 8.2.2 =
248
  * Released 2/12/2020
249
  * Tweaked id3 library so as to prevent php compatibility errors
views/episode-box.php CHANGED
@@ -164,11 +164,12 @@ function powerpress_meta_box($object, $box)
164
  // Check for HD Video formats
165
  if( preg_match('/\.(mp4|m4v|webm|ogg|ogv)$/i', $EnclosureURL ) )
166
  {
167
- echo $EnclosureURL;
168
  $IsVideo = true;
169
  }
170
 
171
  } // if ($object->ID)
 
 
172
  require_once(POWERPRESS_ABSPATH .'/powerpressadmin-metabox.php');
173
  global $current_screen;
174
  $current_screen = get_current_screen();
@@ -190,6 +191,13 @@ function powerpress_meta_box($object, $box)
190
  echo "<input style=\"display:none\" type=\"checkbox\" name=\"Powerpress[$FeedSlug][change_podcast]\"";
191
  echo "id=\"powerpress_change_$FeedSlug\" value=\"1\" checked/>";
192
  echo "</div>";
 
 
 
 
 
 
 
193
  }
194
  episode_box_top($EnclosureURL, $FeedSlug, $ExtraData, $GeneralSettings, $EnclosureLength, $DurationHH, $DurationMM, $DurationSS);
195
  echo "<div id=\"tab-container-$FeedSlug\" style=\"$style\">";
@@ -200,8 +208,8 @@ function powerpress_meta_box($object, $box)
200
  echo "<button class=\"tablinks\" id=\"2$FeedSlug\" title='{$titles['website']}' onclick=\"powerpress_openTab(event, 'display-$FeedSlug')\">" . __('Website Display', 'powerpress') . "</button>";
201
  echo "<button class=\"tablinks\" id=\"3$FeedSlug\" title='{$titles['advanced']}' onclick=\"powerpress_openTab(event, 'notes-$FeedSlug')\">" . __('Advanced', 'powerpress') . "</button>";
202
  echo "</div>";
203
- seo_tab($FeedSlug, $ExtraData, $iTunesExplicit, $canSetSeason, $iTunesSubtitle, $iTunesSummary, $iTunesAuthor, $iTunesOrder, $iTunesBlock, $object);
204
- artwork_tab($FeedSlug, $ExtraData, $object, $IsVideo, $CoverImage);
205
  display_tab($FeedSlug, $IsVideo, $NoPlayer, $NoLinks, $Width, $Height, $Embed);
206
  notes_tab($FeedSlug, $object);
207
  echo "</div>";
164
  // Check for HD Video formats
165
  if( preg_match('/\.(mp4|m4v|webm|ogg|ogv)$/i', $EnclosureURL ) )
166
  {
 
167
  $IsVideo = true;
168
  }
169
 
170
  } // if ($object->ID)
171
+ $seo_feed_title = !empty($GeneralSettings['seo_feed_title']);
172
+
173
  require_once(POWERPRESS_ABSPATH .'/powerpressadmin-metabox.php');
174
  global $current_screen;
175
  $current_screen = get_current_screen();
191
  echo "<input style=\"display:none\" type=\"checkbox\" name=\"Powerpress[$FeedSlug][change_podcast]\"";
192
  echo "id=\"powerpress_change_$FeedSlug\" value=\"1\" checked/>";
193
  echo "</div>";
194
+ echo "<div class=\"powerpress_remove_container\">";
195
+ echo "<label><b>" . __('Remove', 'powerpress') . "</b></label>";
196
+ echo "<div class=\"powerpress_row_content\">";
197
+ echo "<input type=\"checkbox\" class='ep-box-checkbox' name=\"Powerpress[$FeedSlug][remove_podcast]\" id=\"powerpress_remove_$FeedSlug\" value=\"1\" onchange=\"javascript:document.getElementById('a-pp-selected-media-$FeedSlug').style.display=(this.checked?'none':'block');javascript:document.getElementById('tab-container-$FeedSlug').style.display=(this.checked?'none':'block');\" />";
198
+ echo __('Podcast episode will be removed from this post upon save', 'powerpress');
199
+ echo "</div>";
200
+ echo "</div>";
201
  }
202
  episode_box_top($EnclosureURL, $FeedSlug, $ExtraData, $GeneralSettings, $EnclosureLength, $DurationHH, $DurationMM, $DurationSS);
203
  echo "<div id=\"tab-container-$FeedSlug\" style=\"$style\">";
208
  echo "<button class=\"tablinks\" id=\"2$FeedSlug\" title='{$titles['website']}' onclick=\"powerpress_openTab(event, 'display-$FeedSlug')\">" . __('Website Display', 'powerpress') . "</button>";
209
  echo "<button class=\"tablinks\" id=\"3$FeedSlug\" title='{$titles['advanced']}' onclick=\"powerpress_openTab(event, 'notes-$FeedSlug')\">" . __('Advanced', 'powerpress') . "</button>";
210
  echo "</div>";
211
+ seo_tab($FeedSlug, $ExtraData, $iTunesExplicit, $seo_feed_title, $iTunesSubtitle, $iTunesSummary, $iTunesAuthor, $iTunesOrder, $iTunesBlock, $object);
212
+ artwork_tab($FeedSlug, $ExtraData, $object, $CoverImage);
213
  display_tab($FeedSlug, $IsVideo, $NoPlayer, $NoLinks, $Width, $Height, $Embed);
214
  notes_tab($FeedSlug, $object);
215
  echo "</div>";