function podPress_stop_statistics($action = 'stop') { $podpress_config = podPress_get_option('podPress_config'); $do_update = FALSE; $result = FALSE; if (TRUE === is_Array($podpress_config) and TRUE === isset($podpress_config['enableStats'])) { switch ($action) { case 'stop': $podpress_config['enableStats'] = FALSE; $do_update = TRUE; break; case 'start': $podpress_config['enableStats'] = TRUE; $do_update = TRUE; break; } if (TRUE === $do_update) { $result = podPress_update_option('podPress_config', $podpress_config); } } echo '{ "code": "' . $podpress_config . ' - ' . $result . '" , "result": "' . $action . '" }'; }
function podPress_remote_version_check() { $current = PODPRESS_VERSION; $latestVersionCache = podPress_get_option('podPress_versionCheck'); if ($latestVersionCache['cached'] + 86400 < time()) { $current = $latestVersionCache['version']; } elseif (class_exists(snoopy)) { $client = new Snoopy(); $client->_fp_timeout = 10; if (@$client->fetch('http://www.mightyseek.com/podpress_downloads/versioncheck.php?url=' . get_option('siteurl') . '¤t=' . PODPRESS_VERSION) === false) { return -1; } else { $remote = $client->results; if (!$remote || strlen($remote) > 8) { return -1; } $current = $remote; } delete_option('podPress_versionCheck'); podPress_add_option('podPress_versionCheck', array('version' => $current, 'cached' => time()), 'Latest version available', 'yes'); } if ($current > PODPRESS_VERSION) { return 1; } else { return 0; } }
function do_legacy_upgrades($current) { global $wpdb; while (TRUE == version_compare(PODPRESS_VERSION, $current, '>=') and TRUE == version_compare('8.8', $current, '>=')) { settype($current, 'string'); switch ($current) { case '0': $current = PODPRESS_VERSION; break; case '1.4': $posts_that_need_upgrades = array(); $posts = $wpdb->get_results("SELECT ID, post_content FROM " . $wpdb->posts); if ($posts) { foreach ($posts as $post) { if (preg_match($this->podcasttag_regexp, $post->post_content, $matches)) { $podcastTagFileName = $matches[1]; } else { $podcastTagFileName = false; } if ($podcastTagFileName) { $posts_that_need_upgrades[$post->ID] = $post->post_content; } } reset($posts_that_need_upgrades); foreach ($posts_that_need_upgrades as $key => $value) { $wpdb->query("UPDATE " . $wpdb->posts . " SET post_content = '" . preg_replace($this->podcasttag_regexp, '', $value) . "' WHERE ID=" . $key); if (preg_match($this->podcasttag_regexp, $content, $matches)) { $podcastTagFileName = $matches[1]; } else { $podcastTagFileName = false; } delete_post_meta($key, 'podPress_podcastStandardAudio'); add_post_meta($key, 'podPress_podcastStandardAudio', $podcastTagFileName, true); } } break; case '3.8': $this->settings['audioWebPath'] = get_option('podPress_audioWebPath'); $this->settings['audioFilePath'] = get_option('podPress_audioFilePath'); if ($this->settings['audioWebPath'] == '') { add_option('podPress_mediaWebPath', $this->settings['audioWebPath'], "Web path to Podcast media files", true); $this->settings['audioWebPath'] = $this->settings['audioWebPath']; delete_option('podPress_audioWebPath'); } if ($this->settings['audioFilePath'] == '') { add_option('podPress_mediaFilePath', $this->settings['audioFilePath'], "File path to Podcast media files", true); $this->settings['mediaFilePath'] = $this->settings['audioFilePath']; delete_option('podPress_audioFilePath'); } $posts = $wpdb->get_results("SELECT ID FROM " . $wpdb->prefix . "posts"); if ($posts) { foreach ($posts as $post) { $sql = "SELECT meta_key, meta_value\n\t\t\t\t\t\t\t\t FROM " . $wpdb->prefix . "postmeta \n\t\t\t\t\t\t\t\t\tWHERE meta_key IN(\n\t\t\t\t\t\t\t\t\t\t'podPress_podcastStandardAudio', \n\t\t\t\t\t\t\t\t\t\t'podPress_podcastStandardAudioSize',\n\t\t\t\t\t\t\t\t\t\t'podPress_podcastStandardAudioDuration',\n\t\t\t\t\t\t\t\t\t\t'podPress_podcastEnhancedAudio',\n\t\t\t\t\t\t\t\t\t\t'podPress_podcastEnhancedAudioSize',\n\t\t\t\t\t\t\t\t\t\t'podPress_podcastEnhancedAudioDuration',\n\t\t\t\t\t\t\t\t\t\t'podPress_podcastVideo',\n\t\t\t\t\t\t\t\t\t\t'podPress_podcastVideoSize',\n\t\t\t\t\t\t\t\t\t\t'podPress_podcastVideoDuration',\n\t\t\t\t\t\t\t\t\t\t'podPress_podcastVideoDimension',\n\t\t\t\t\t\t\t\t\t\t'podPress_webVideo',\n\t\t\t\t\t\t\t\t\t\t'podPress_webVideoSize',\n\t\t\t\t\t\t\t\t\t\t'podPress_webVideoDuration',\n\t\t\t\t\t\t\t\t\t\t'podPress_webVideoDimension',\n\t\t\t\t\t\t\t\t\t\t'podPress_podcastEbook',\n\t\t\t\t\t\t\t\t\t\t'podPress_podcastEbookSize',\n\t\t\t\t\t\t\t\t\t\t'itunes:duration',\n\t\t\t\t\t\t\t\t\t\t'enclosure'\n\t\t\t\t\t\t\t\t\t) AND post_id = " . $post->ID; $metadata = $wpdb->get_results($sql); if ($metadata) { $posts2convert = array(); foreach ($metadata as $stat) { $posts2convert[$post->ID][$stat->meta_key] = $stat->meta_value; } $rssaddedyet = false; $podPressMedia = array(); foreach ($posts2convert as $key => $val) { if (isset($val['enclosure'])) { $encParts = split("\n", $val['enclosure']); $data = $this->upgrade_convert39to40mediaFile(trim(htmlspecialchars($encParts[0])), trim(htmlspecialchars($encParts[1]))); if (!$rssaddedyet) { $rssaddedyet = true; $data['rss'] = 'on'; } $podPressMedia[] = $data; } if (isset($val['podPress_podcastStandardAudio'])) { $data = $this->upgrade_convert39to40mediaFile($val['podPress_podcastStandardAudio'], $val['podPress_podcastStandardAudioSize'], $val['podPress_podcastStandardAudioDuration']); if (!$rssaddedyet) { $rssaddedyet = true; $data['rss'] = 'on'; } $podPressMedia[] = $data; } if (isset($val['podPress_podcastEnhancedAudio'])) { $data = $this->upgrade_convert39to40mediaFile($val['podPress_podcastEnhancedAudio'], $val['podPress_podcastEnhancedAudioSize'], $val['podPress_podcastEnhancedAudioDuration']); if (!$rssaddedyet) { $rssaddedyet = true; $data['rss'] = 'on'; } $podPressMedia[] = $data; } if (isset($val['podPress_podcastVideo'])) { $data = $this->upgrade_convert39to40mediaFile($val['podPress_podcastVideo'], $val['podPress_podcastVideoSize'], $val['podPress_podcastVideoDuration'], $val['podPress_podcastVideoDimension']); if (!$rssaddedyet) { $rssaddedyet = true; $data['rss'] = 'on'; } $podPressMedia[] = $data; } if (isset($val['podPress_webVideo'])) { $data = $this->upgrade_convert39to40mediaFile($val['podPress_webVideo'], $val['podPress_webVideoSize'], $val['podPress_webVideoDuration'], $val['podPress_webVideoDimension']); $podPressMedia[] = $data; } if (isset($val['podPress_podcastEbook'])) { $data = $this->upgrade_convert39to40mediaFile($val['podPress_podcastEbook'], $val['podPress_podcastEbookSize']); if (!$rssaddedyet) { $rssaddedyet = true; $data['rss'] = 'on'; } $podPressMedia[] = $data; } } if (is_array($podPressMedia)) { delete_post_meta($post->ID, 'podPressMedia'); podPress_add_post_meta($post->ID, 'podPressMedia', $podPressMedia, true); } } } } $sql = "UPDATE " . $wpdb->prefix . "postmeta SET meta_key='enclosure_hold' WHERE meta_key='enclosure'"; $wpdb->query($sql); break; case '4.2': $playerOptions['bg'] = str_replace('0x', '#', get_option('podPress_player_bgcolor')); delete_option('podPress_player_bgcolor'); $playerOptions['text'] = str_replace('0x', '#', get_option('podPress_player_textcolor')); delete_option('podPress_player_textcolor'); $playerOptions['leftbg'] = str_replace('0x', '#', get_option('podPress_player_leftbgcolor')); delete_option('podPress_player_leftbgcolor'); $playerOptions['lefticon'] = str_replace('0x', '#', get_option('podPress_player_lefticoncolor')); delete_option('podPress_player_lefticoncolor'); $playerOptions['rightbg'] = str_replace('0x', '#', get_option('podPress_player_rightbgcolor')); delete_option('podPress_player_rightbgcolor'); $playerOptions['rightbghover'] = str_replace('0x', '#', get_option('podPress_player_rightbghovercolor')); delete_option('podPress_player_rightbghovercolor'); $playerOptions['righticon'] = str_replace('0x', '#', get_option('podPress_player_righticoncolor')); delete_option('podPress_player_righticoncolor'); $playerOptions['righticonhover'] = str_replace('0x', '#', get_option('podPress_player_righticonhovercolor')); delete_option('podPress_player_righticonhovercolor'); $playerOptions['slider'] = str_replace('0x', '#', get_option('podPress_player_slidercolor')); delete_option('podPress_player_slidercolor'); $playerOptions['track'] = str_replace('0x', '#', get_option('podPress_player_trackcolor')); delete_option('podPress_player_trackcolor'); $playerOptions['loader'] = str_replace('0x', '#', get_option('podPress_player_loadercolor')); delete_option('podPress_player_loadercolor'); $playerOptions['border'] = str_replace('0x', '#', get_option('podPress_player_bordercolor')); delete_option('podPress_player_bordercolor'); podPress_update_option('podPress_playerOptions', $playerOptions); break; case '4.4': if (!is_array($this->settings['iTunes'])) { $this->settings['iTunes'] = array(); } $x = stripslashes(get_option('itunesAdminName')); delete_option('itunesAdminName'); if (!empty($x)) { $this->settings['iTunes']['author'] = $x; } $this->settings['iTunes']['block'] = 'No'; $this->settings['iTunes']['category'] = array(); $cat1 = get_option('itunesCategory1'); $cat2 = get_option('itunesCategory2'); $cat3 = get_option('itunesCategory3'); if (!empty($cat1)) { $this->settings['iTunes']['category'][] = $cat1; } if (!empty($cat2)) { $this->settings['iTunes']['category'][] = $cat2; } if (!empty($cat3)) { $this->settings['iTunes']['category'][] = $cat3; } $x = stripslashes(get_option('itunesImageBig')); delete_option('itunesImageBig'); if (!empty($x)) { $this->settings['iTunes']['image'] = $x; } $x = stripslashes(get_option('itunesDefaultExplicit')); delete_option('itunesDefaultExplicit'); if (!empty($x)) { $this->settings['iTunes']['explicit'] = $x; } $x = stripslashes(get_option('itunesFeedKeywords')); delete_option('itunesFeedKeywords'); if (!empty($x)) { $this->settings['iTunes']['keywords'] = $x; } $x = stripslashes(get_option('podcastdescription')); delete_option('podcastdescription'); if (!empty($x)) { $this->settings['iTunes']['summary'] = $x; } $x = stripslashes(get_option('itunesFeedID')); delete_option('itunesFeedID'); if (!empty($x)) { $this->settings['iTunes']['FeedID'] = $x; } delete_option('itunesUseKeyword'); delete_option('itunesFeedURL'); $x = stripslashes(get_option('itunesImageSmall')); delete_option('itunesImageSmall'); if (!empty($x)) { add_option('rss_image', $x); } $x = stripslashes(get_option('itunesTTL')); delete_option('itunesTTL'); if (!empty($x)) { add_option('rss_ttl', $x); } $x = stripslashes(get_option('downloadLinksInRSS')); delete_option('downloadLinksInRSS'); if (!empty($x)) { add_option('podPress_rss_showlinks', $x); } $x = stripslashes(get_option('channelCat')); delete_option('channelCat'); if (!empty($x)) { add_option('podPress_rss_category', $x); } delete_option('podPress_iTunes'); podPress_add_option('podPress_iTunes', $this->settings['iTunes']); $x = podPress_get_option('podPress_playerOptions'); delete_option('podPress_playerOptions'); if (!empty($x)) { podPress_add_option('podPress_playerSettings', $x); } $x = stripslashes(get_option('podPress_BeforeMore')); delete_option('podPress_BeforeMore'); if (!empty($x)) { add_option('podPress_contentBeforeMore', $x); } $sql = "SELECT media, \n\t\t\t\t\t\t method, \n\t\t\t\t\t\t COUNT(media) as cnt_total, \n\t\t\t\t\t\t COUNT(CASE WHEN method = 'feed' THEN 1 END) as cnt_feed ,\n\t\t\t\t\t\t COUNT(CASE WHEN method = 'web' THEN 1 END) as cnt_web ,\n\t\t\t\t\t\t COUNT(CASE WHEN method = 'play' THEN 1 END) as cnt_play \n\t\t\t\t\t\t FROM " . $wpdb->prefix . "podpress_stats \n\t\t\t\t\t\t GROUP BY media \n\t\t\t\t\t\t ORDER BY cnt_total DESC"; $stats = $wpdb->get_results($sql); if ($stats) { $i = 0; foreach ($stats as $stat) { ++$i; $sqlI = "INSERT INTO " . $wpdb->prefix . "podpress_statcounts (media, total, feed, web, play) VALUES ('" . $stat->media . "', " . $stat->cnt_total . ", " . $stat->cnt_feed . ", " . $stat->cnt_web . ", " . $stat->cnt_play . ")"; $wpdb->query($sqlI); } } break; case '4.5': $x = stripslashes(get_option('channelCat')); delete_option('channelCat'); if (!empty($x)) { add_option('podPress_rss_category', $x); } break; case '5.3': $posts = $wpdb->get_results("SELECT ID FROM " . $wpdb->prefix . "posts"); if ($posts) { foreach ($posts as $post) { $x['itunes:subtitle'] = get_post_meta($post->ID, 'itunes:subtitle', true); delete_post_meta($post->ID, 'itunes:subtitle'); if (!isset($x['itunes:subtitle'])) { unset($x['itunes:subtitle']); } $x['itunes:summary'] = get_post_meta($post->ID, 'itunes:summary', true); delete_post_meta($post->ID, 'itunes:summary'); if (!isset($x['itunes:summary'])) { unset($x['itunes:summary']); } $x['itunes:keywords'] = get_post_meta($post->ID, 'itunes:keywords', true); delete_post_meta($post->ID, 'itunes:keywords'); if (!isset($x['itunes:keywords'])) { unset($x['itunes:keywords']); } $x['itunes:author'] = get_post_meta($post->ID, 'itunes:author', true); delete_post_meta($post->ID, 'itunes:author'); if (!isset($x['itunes:author'])) { unset($x['itunes:author']); } $x['itunes:explicit'] = get_post_meta($post->ID, 'itunes:explicit', true); delete_post_meta($post->ID, 'itunes:explicit'); if (!isset($x['itunes:explicit'])) { unset($x['itunes:explicit']); } $x['itunes:block'] = get_post_meta($post->ID, 'itunes:block', true); delete_post_meta($post->ID, 'itunes:block'); if (!isset($x['itunes:block'])) { unset($x['itunes:block']); } if (!empty($x)) { podPress_add_post_meta($post->ID, 'podPressPostSpecific', $x, true); } } } break; case '5.6': $x = podPress_get_option('podPress_config'); $y = true; if ($y) { $newSettings = array(); $newSettings['enableStats'] = get_option('podPress_enableStats'); $newSettings['statMethod'] = get_option('podPress_statMethod'); $newSettings['statLogging'] = get_option('podPress_statLogging'); $newSettings['enablePodTracStats'] = get_option('podPress_enablePodTracStats'); $newSettings['enablePremiumContent'] = get_option('podPress_enablePremiumContent'); $newSettings['enableTorrentCasting'] = get_option('podPress_enableTorrentCasting'); $newSettings['mediaWebPath'] = get_option('podPress_mediaWebPath'); $newSettings['mediaFilePath'] = get_option('podPress_mediaFilePath'); $newSettings['contentBeforeMore'] = get_option('podPress_contentBeforeMore'); $newSettings['contentLocation'] = get_option('podPress_contentLocation'); $newSettings['contentImage'] = get_option('podPress_contentImage'); $newSettings['contentPlayer'] = get_option('podPress_contentPlayer'); $newSettings['contentDownload'] = get_option('podPress_contentDownload'); $newSettings['contentDownloadText'] = get_option('podPress_contentDownloadText'); $newSettings['contentDownloadStats'] = get_option('podPress_contentDownloadStats'); $newSettings['contentDuration'] = get_option('podPress_contentDuration'); $newSettings['rss_showlinks'] = get_option('podPress_rss_showlinks'); $newSettings['rss_category'] = get_option('podPress_rss_category'); $newSettings['enableFooter'] = get_option('podPress_enableFooter'); $newSettings['player'] = podPress_get_option('podPress_playerSettings'); $newSettings['iTunes'] = podPress_get_option('podPress_iTunes'); delete_option('podPress_config'); add_option('podPress_config', $newSettings, "podPress Configuration", true); } break; case '5.7': // in the next release I will clean up old crap data that is still laying around delete_option('podPress_enableStats'); delete_option('podPress_statMethod'); delete_option('podPress_statLogging'); delete_option('podPress_enablePodTracStats'); delete_option('podPress_enablePremiumContent'); delete_option('podPress_enableTorrentCasting'); delete_option('podPress_mediaWebPath'); delete_option('podPress_mediaFilePath'); delete_option('podPress_contentBeforeMore'); delete_option('podPress_contentLocation'); delete_option('podPress_contentImage'); delete_option('podPress_contentPlayer'); delete_option('podPress_contentDownload'); delete_option('podPress_contentDownloadText'); delete_option('podPress_contentDownloadStats'); delete_option('podPress_contentDuration'); delete_option('podPress_rss_showlinks'); delete_option('podPress_rss_category'); delete_option('podPress_enableFooter'); delete_option('podPress_iTunes'); delete_option('podPress_playerSettings'); delete_option('podPress_enableLogging'); delete_option('podPress_downloadLinksInRSS'); delete_option('podPress_categoryCasting'); delete_option('podPress_beforeMore'); $sql = "DELETE FROM " . $wpdb->prefix . "postmeta WHERE meta_key='podPressiTunesPostSpecific'"; $wpdb->query($sql); break; case '6.3': $x = podPress_get_option('podPress_config'); $x['iTunes']['category'][0] = podPress_upgradeCategory($x['iTunes']['category'][0]); if (isset($x['iTunes']['category'][1])) { $x['iTunes']['category'][1] = podPress_upgradeCategory($x['iTunes']['category'][1]); } if (isset($x['iTunes']['category'][2])) { $x['iTunes']['category'][2] = podPress_upgradeCategory($x['iTunes']['category'][2]); } podPress_update_option('podPress_config', $x); break; case '6.7': $create_table = "ALTER TABLE " . $wpdb->prefix . "podpress_statcounts ADD COLUMN postID int(11) NOT NULL DEFAULT 0 FIRST;"; podPress_maybe_add_column($wpdb->prefix . 'podpress_statcounts', 'postID', $create_table); $sql = 'ALTER TABLE ' . $wpdb->prefix . 'podpress_statcounts ADD PRIMARY KEY (media(255),postID), DROP PRIMARY KEY;'; $wpdb->get_results($sql); $create_table = "ALTER TABLE " . $wpdb->prefix . "podpress_stats ADD COLUMN postID int(11) NOT NULL DEFAULT 0 AFTER id;"; podPress_maybe_add_column($wpdb->prefix . 'podpress_stats', 'postID', $create_table); $mappings = array(); $sql = "SELECT * FROM " . $wpdb->prefix . "postmeta WHERE meta_key = 'podPressMedia' ORDER BY meta_id;"; $posts = $wpdb->get_results($sql); if ($posts) { foreach ($posts as $post) { $mediaFiles = unserialize($post->meta_value); if (is_array($mediaFiles)) { foreach ($mediaFiles as $mediaFile) { if (!isset($mappings[$mediaFile['URI']])) { $filename = podPress_getFileName($mediaFile['URI']); $mappings[$filename] = $post->post_id; } } } } reset($mappings); foreach ($mappings as $key => $val) { $wpdb->query('UPDATE ' . $wpdb->prefix . "podpress_statcounts SET postID = '" . $val . "' WHERE media='" . $key . "'"); $wpdb->query('UPDATE ' . $wpdb->prefix . "podpress_stats SET postID = '" . $val . "' WHERE media='" . $key . "'"); } } case '7.9': $create_table = "ALTER TABLE " . $wpdb->prefix . "podpress_stats ADD COLUMN completed TINYINT(1) UNSIGNED DEFAULT 0;"; podPress_maybe_add_column($wpdb->prefix . 'podpress_stats', 'completed', $create_table); break; case '8.3': if ($this->settings['enablePodTracStats']) { $this->settings['enable3rdPartyStats'] = 'PodTrac'; } break; default: // do nothing break; } if (function_exists('wp_cache_flush')) { wp_cache_flush(); } if (version_compare(PODPRESS_VERSION, $current, '>=')) { update_option('podPress_version', $current); } $current = $current + 0.1; } }
function edit_category_form($input) { global $wp_version, $action; //~ echo "\n<pre>\n"; //~ var_dump('in function edit_category_form'); //~ var_dump($input); //~ var_dump($input->taxonomy); //~ var_dump($action); //~ var_dump($_GET['action']); //~ var_dump($wp_version); //~ echo "\n</pre>\n"; if ('edit' == $_GET['action'] and TRUE == version_compare($wp_version, '2.7', '>=') or 'editedcat' == $action) { // show the following form only when an existing category is going to be edited. if (FALSE === isset($input->taxonomy) or TRUE === empty($input->taxonomy) or 'post_tag' !== $input->taxonomy and 'category' !== $input->taxonomy) { $taxonomy = 'misc'; $taxonomy_str = __('Taxonomy', 'podpress'); } else { $taxonomy = $input->taxonomy; switch ($taxonomy) { case 'post_tag': $taxonomy_str = __('Tag', 'podpress'); break; case 'category': $taxonomy_str = __('Category', 'podpress'); break; } } //~ printphpnotices_var_dump('print edit_'.$taxonomy.'_form'); //~ printphpnotices_var_dump($input); $data = podPress_get_option('podPress_' . $taxonomy . '_' . $input->term_id); $blog_charset = get_bloginfo('charset'); if (empty($data['podcastFeedURL'])) { if (TRUE == version_compare($wp_version, '2.9.3', '>')) { // since WP 3.0 the cat_ID isreplaced by tag_ID $data['podcastFeedURL'] = get_term_feed_link($input->term_id, $taxonomy); } elseif (TRUE == version_compare($wp_version, '2.9.3', '<=') and TRUE == version_compare($wp_version, '2.4', '>')) { switch ($taxonomy) { default: case 'post_tag': $data['podcastFeedURL'] = get_tag_feed_link($input->term_id); break; case 'category': $data['podcastFeedURL'] = get_category_feed_link($input->term_id); break; } } else { $data['podcastFeedURL'] = site_url() . '/?feed=rss2&cat=' . $input->term_id; } } else { $url_parts = parse_url($data['podcastFeedURL']); if (isset($url_parts['query'])) { $output = ''; parse_str($url_parts['query'], $output); if (TRUE === isset($output['cat']) and FALSE !== empty($output['cat'])) { if (TRUE == version_compare($wp_version, '2.9.3', '>')) { // since WP 3.0 the cat_ID isreplaced by tag_ID $data['podcastFeedURL'] = get_term_feed_link($input->term_id, $taxonomy); } elseif (TRUE == version_compare($wp_version, '2.9.3', '<=') and TRUE == version_compare($wp_version, '2.4', '>')) { switch ($taxonomy) { default: case 'post_tag': $data['podcastFeedURL'] = get_tag_feed_link($input->term_id); break; case 'category': $data['podcastFeedURL'] = get_category_feed_link($input->term_id); break; } } else { $data['podcastFeedURL'] = site_url() . '/?feed=rss2&cat=' . $input->term_id; } } } } // some ids of category input fields have changed with WP 3.0 $wp_version_parts = explode('.', $wp_version); if (is_array($wp_version_parts)) { $main_wp_version = $wp_version_parts[0]; } else { $main_wp_version = 0; } echo '<div class="wrap">' . "\n"; if (TRUE == version_compare($wp_version, '2.7', '>=')) { echo '<div id="podpress-icon" class="icon32"><br /></div>'; } echo ' <h2>' . sprintf(__('podPress %1$s Casting', 'podpress'), $taxonomy_str) . '</h2>' . "\n"; echo ' <label for="categoryCasting"><strong>' . sprintf(__('Enable %1$s Casting', 'podpress'), $taxonomy_str) . '</strong></label> <a href="javascript:void(null);" onclick="javascript: podPressShowHideDiv(\'categoryCastingHelp\');">(?)</a>:'; echo ' <input type="checkbox" name="categoryCasting" id="categoryCasting" '; if ($data['categoryCasting'] == 'true') { echo 'checked="checked"'; } echo ' onclick="javascript: podPress_updateCategoryCasting(' . $main_wp_version . ', \'' . $taxonomy . '\');"/>' . "\n"; echo ' <div id="categoryCastingHelp" style="display: none;">' . "\n"; echo ' ' . __('This feature is for cases in which you want to host more than one podcast in one blog or if you want to have different podcast feeds with different media files of certain file types per feed (e.g a feed which contains only .mp3 files).<br />Basically this feature gives you the opportunity to modify some of the feed elements and set them to other then as the general value from the Feed/iTunes Settings of podPress.<br/>For instance: If you organize your audio episodes in one category and the video episodes in a different category then you can modify the feed content describing values like the title or the description in the form below. This your category feeds will be more distinguishable from another.', 'podpress') . '<br />' . "\n"; echo ' </div>' . "\n"; echo ' <div class="wrap" id="iTunesSpecificSettings" style="display: none; border: 0;">' . "\n"; podPress_DirectoriesPreview('edit_category_form'); echo ' <fieldset class="options">' . "\n"; echo ' <legend>' . sprintf(__('%1$s Feed Options', 'podpress'), $taxonomy_str) . '</legend>' . "\n"; echo ' <h3>' . __('iTunes Settings', 'podpress') . '</h3>' . "\n"; echo ' <table class="podpress_feed_gensettings">' . "\n"; echo ' <tr>' . "\n"; echo ' <th>'; echo ' <label for="iTunesSubtitleChoice">' . __('iTunes:Subtitle', 'podpress') . '</label>' . "\n"; echo ' </th>'; echo ' <td colspan="2">'; echo ' <select id="iTunesSubtitleChoice" name="iTunesSubtitleChoice" onchange="javascript: podPress_updateCategoryCasting(' . $main_wp_version . ', \'' . $taxonomy . '\');">' . "\n"; echo ' <option value="Global" '; if ($data['iTunesSubtitleChoice'] != 'Custom') { echo 'selected="selected"'; } echo '>' . __('Use Global', 'podpress') . '</option>' . "\n"; echo ' <option value="Custom" '; if ($data['iTunesSubtitleChoice'] == 'Custom') { echo 'selected="selected"'; } echo '>' . __('Insert custom value', 'podpress') . '</option>' . "\n"; echo ' </select>' . "\n"; echo ' <div id="iTunesSubtitleWrapper" style="display: none;">' . "\n"; echo ' <textarea name="iTunesSubtitle" class="podpress_wide_text_field" rows="2" cols="40">' . stripslashes($data['iTunesSubtitle']) . '</textarea>' . "\n"; echo ' </div>' . "\n"; echo ' <div id="iTunesSubtitleHelp">' . "\n"; echo ' ' . __('A few words which describe the feed title a little bit more (max. 255 characters).', 'podpress') . ' ' . __('By default this is taken from the default iTunes:subtitle.', 'podpress') . "\n"; echo ' </div>' . "\n"; echo ' </td>' . "\n"; echo ' </tr>' . "\n"; echo ' <tr>' . "\n"; echo ' <th>'; echo ' <label for="iTunesSummaryChoice">' . __('iTunes:Summary', 'podpress') . '</label>' . "\n"; echo ' </th>'; echo ' <td colspan="2">'; echo ' <select id="iTunesSummaryChoice" name="iTunesSummaryChoice" onchange="javascript: podPress_updateCategoryCasting(' . $main_wp_version . ', \'' . $taxonomy . '\');">' . "\n"; echo ' <option value="Global" '; if ($data['iTunesSummaryChoice'] != 'Custom') { echo 'selected="selected"'; } echo '>' . __('Use Global', 'podpress') . '</option>' . "\n"; echo ' <option value="Custom" '; if ($data['iTunesSummaryChoice'] == 'Custom') { echo 'selected="selected"'; } echo '>' . __('Insert custom value', 'podpress') . '</option>' . "\n"; echo ' </select>' . "\n"; echo ' <input type="hidden" id="global_iTunesSummary" value="' . attribute_escape(stripslashes($this->settings['iTunes']['summary'])) . '" />' . "\n"; echo ' <div id="iTunesSummaryWrapper" style="display: none;">' . "\n"; echo ' <textarea name="iTunesSummary" id="iTunesSummary" class="podpress_wide_text_field" rows="6" cols="40" onchange="javascript: podPress_updateCategoryCasting(' . $main_wp_version . ', \'' . $taxonomy . '\');">' . stripslashes($data['iTunesSummary']) . '</textarea>' . "\n"; echo ' </div>' . "\n"; echo ' <div id="iTunesSummaryHelp">' . "\n"; echo ' ' . __('The description of the podcast.', 'podpress') . ' ' . __('By default this is taken from the default iTunes:Summary or the default description.', 'podpress') . "\n"; echo ' </div>' . "\n"; echo ' </td>' . "\n"; echo ' </tr>' . "\n"; echo ' <tr>' . "\n"; echo ' <th>'; echo ' <label for="iTunesImageChoice">' . __('iTunes:Image', 'podpress') . '</label>' . "\n"; echo ' </th>'; echo ' <td colspan="2">'; echo ' ' . __('The iTunes image should be a square image with <a href="http://www.apple.com/itunes/podcasts/specs.html#image" target="_blank">at least 1400 x 1400 pixels</a> as Apple writes in "<a href="http://www.apple.com/itunes/podcasts/specs.html" target="_blank">Making a Podcast</a>" of their own Podcasting Resources. iTunes supports JPEG and PNG images (the file name extensions should ".jpg" or ".png").', 'podpress') . "\n"; echo ' <br/>'; echo ' <select id="iTunesImageChoice" name="iTunesImageChoice" onchange="javascript: podPress_updateCategoryCasting(' . $main_wp_version . ', \'' . $taxonomy . '\');">' . "\n"; echo ' <option value="Global" '; if ($data['iTunesImageChoice'] != 'Custom') { echo 'selected="selected"'; } echo '>' . __('Use Global', 'podpress') . '</option>' . "\n"; echo ' <option value="Custom" '; if ($data['iTunesImageChoice'] == 'Custom') { echo 'selected="selected"'; } echo '>' . __('Insert custom value', 'podpress') . '</option>' . "\n"; echo ' </select>' . "\n"; echo ' <div id="iTunesImageWrapper" style="display: none;">' . "\n"; echo ' <br/>'; echo ' <input id="iTunesImage" type="text" name="iTunesImage" value="' . $data['iTunesImage'] . '" class="podpress_wide_text_field" size="40" onchange="podPress_updateCategoryCasting(' . $main_wp_version . ', \'' . $taxonomy . '\');"/>' . "\n"; echo ' <input id="global_iTunesImage" type="hidden" value="' . $this->settings['iTunes']['image'] . '"/>' . "\n"; echo ' </div>' . "\n"; echo ' <br/>'; echo ' <img id="itunes_image_display" style="width:300px; height:300px;" alt="' . __('Podcast Image - Big (If you can not see an image then the URL is wrong.)', 'podpress') . '" src="" /><br />' . "\n"; echo ' <em>' . __('(This image is only a preview which is limited to 300 x 300 pixels.) ', 'podpress') . '</em>'; echo ' </td>' . "\n"; echo ' </tr>' . "\n"; echo ' <tr>' . "\n"; echo ' <th>'; echo ' <label for="iTunesAuthorChoice">' . __('iTunes:Author/Owner', 'podpress') . '</label>' . "\n"; echo ' </th>'; echo ' <td colspan="2">'; echo ' <select id="iTunesAuthorChoice" name="iTunesAuthorChoice" onchange="javascript: podPress_updateCategoryCasting(' . $main_wp_version . ', \'' . $taxonomy . '\');">' . "\n"; echo ' <option value="Global" '; if ($data['iTunesAuthorChoice'] != 'Custom') { echo 'selected="selected"'; } echo '>' . __('Use Global', 'podpress') . ' (' . podPress_stringLimiter(ucfirst(stripslashes($this->settings['iTunes']['author'])), 40) . ')</option>' . "\n"; echo ' <option value="Custom" '; if ($data['iTunesAuthorChoice'] == 'Custom') { echo 'selected="selected"'; } echo '>' . __('Insert custom value', 'podpress') . '</option>' . "\n"; echo ' </select>' . "\n"; echo ' <div id="iTunesAuthorWrapper" style="display: none;">' . "\n"; echo ' <input type="text" name="iTunesAuthor" class="podpress_wide_text_field" size="40" id="iTunesAuthor" value="' . attribute_escape(stripslashes($data['iTunesAuthor'])) . '" onchange="javascript: podPress_updateCategoryCasting(' . $main_wp_version . ', \'' . $taxonomy . '\');"/>'; echo ' <input type="hidden" id="global_iTunesAuthor" value="' . attribute_escape(stripslashes($this->settings['iTunes']['author'])) . '" />' . "\n"; echo ' </div>' . "\n"; echo ' <div id="iTunesAuthorHelp">' . "\n"; echo ' ' . __('Used if this Author is different than the feeds author.', 'podpress') . "\n"; echo ' </div>' . "\n"; echo ' </td>' . "\n"; echo ' <tr>' . "\n"; echo ' </tr>' . "\n"; echo ' <th>'; echo ' <label for="iTunesAuthorEmailChoice">' . __('Owner E-mail address', 'podpress') . '</label>' . "\n"; echo ' </th>'; echo ' <td colspan="2">'; echo ' <select id="iTunesAuthorEmailChoice" name="iTunesAuthorEmailChoice" onchange="javascript: podPress_updateCategoryCasting(' . $main_wp_version . ', \'' . $taxonomy . '\');">' . "\n"; echo ' <option value="Global" '; if ($data['iTunesAuthorEmailChoice'] != 'Custom') { echo 'selected="selected"'; } echo '>' . __('Use Global', 'podpress') . ' (' . podPress_stringLimiter(ucfirst(stripslashes(get_option('admin_email'))), 40) . ')</option>' . "\n"; echo ' <option value="Custom" '; if ($data['iTunesAuthorEmailChoice'] == 'Custom') { echo 'selected="selected"'; } echo '>' . __('Insert custom value', 'podpress') . '</option>' . "\n"; echo ' </select>' . "\n"; echo ' <div id="iTunesAuthorEmailWrapper" style="display: none;">' . "\n"; echo ' <input type="text" name="iTunesAuthorEmail" class="podpress_wide_text_field" size="40" id="iTunesAuthorEmail" value="' . attribute_escape(stripslashes($data['iTunesAuthorEmail'])) . '" onchange="javascript: podPress_updateCategoryCasting(' . $main_wp_version . ', \'' . $taxonomy . '\');"/>'; echo ' <input type="hidden" id="global_iTunesAuthorEmail" value="' . attribute_escape(stripslashes(get_option('admin_email'))) . '" />' . "\n"; echo ' </div>' . "\n"; echo ' <div id="iTunesAuthorEmailHelp">' . "\n"; echo ' ' . __('Used if the owner of this category is different than the feeds owner.', 'podpress') . "\n"; echo ' </div>' . "\n"; echo ' </td>' . "\n"; echo ' </tr>' . "\n"; echo ' <tr>' . "\n"; echo ' <th>'; echo ' <label for="iTunesKeywordsChoice">' . __('iTunes:Keywords', 'podpress') . '</label>' . "\n"; echo ' </th>'; echo ' <td colspan="2">'; echo ' <select id="iTunesKeywordsChoice" name="iTunesKeywordsChoice" onchange="javascript: podPress_updateCategoryCasting(' . $main_wp_version . ', \'' . $taxonomy . '\');">' . "\n"; echo ' <option value="Global" '; if ($data['iTunesKeywordsChoice'] != 'Custom') { echo 'selected="selected"'; } echo '>' . __('Use Global', 'podpress') . ' (' . podPress_stringLimiter(stripslashes($this->settings['iTunes']['keywords']), 40) . ')</option>' . "\n"; echo ' <option value="Custom" '; if ($data['iTunesKeywordsChoice'] == 'Custom') { echo 'selected="selected"'; } echo '>' . __('Insert custom value', 'podpress') . '</option>' . "\n"; echo ' </select>' . "\n"; echo ' <div id="iTunesKeywordsWrapper">' . "\n"; echo ' ' . __('a list of max. 12 comma separated words', 'podpress') . '<br/><textarea name="iTunesKeywords" rows="4" cols="40">' . stripslashes($data['iTunesKeywords']) . '</textarea>' . "\n"; echo ' </div>' . "\n"; echo ' <div id="iTunesKeywordsHelp">' . "\n"; echo ' ' . __('Not visible in iTunes, but used for searches.', 'podpress') . "\n"; echo ' </div>' . "\n"; echo ' </td>' . "\n"; echo ' </tr>' . "\n"; echo ' <tr> ' . "\n"; echo ' <th>'; echo ' <label for="iTunesCategory_0">' . __('iTunes:Categories', 'podpress') . '</label>'; echo ' </th>'; echo ' <td colspan="2">'; echo ' <select id="iTunesCategory_0" name="iTunesCategory[0]" onchange="podPress_updateCategoryCasting(' . $main_wp_version . ', \'' . $taxonomy . '\');">' . "\n"; echo ' <optgroup label="' . __('Select Primary', 'podpress') . '">' . "\n"; if ('' == trim($this->settings['iTunes']['category'][0])) { $current_global = '[ ' . __('nothing', 'podpress') . ' ]'; } else { $current_global = $this->settings['iTunes']['category'][0]; } echo ' <option value="##Global##" '; if ($data['iTunesCategory'][0] == '##Global##' || empty($data['iTunesCategory'][0])) { echo 'selected="selected"'; } echo '>' . __('Use Global', 'podpress') . ' (' . $current_global . ')</option>' . "\n"; if (empty($data['iTunesCategory'][0])) { podPress_itunesCategoryOptions('##Global##'); } else { podPress_itunesCategoryOptions(stripslashes($data['iTunesCategory'][0])); } echo ' </optgroup>' . "\n"; echo ' </select><br/>' . "\n"; echo ' <input type="hidden" id="global_iTunesCategory" value="' . attribute_escape($this->settings['iTunes']['category'][0]) . '" />' . "\n"; echo ' <select name="iTunesCategory[1]">' . "\n"; echo ' <optgroup label="' . __('Select Second', 'podpress') . '">' . "\n"; if ('' == trim($this->settings['iTunes']['category'][1])) { $current_global = '[ ' . __('nothing', 'podpress') . ' ]'; } else { $current_global = $this->settings['iTunes']['category'][1]; } echo ' <option value="##Global##" '; if ($data['iTunesCategory'][1] == '##Global##' || empty($data['iTunesCategory'][1])) { echo 'selected="selected"'; } echo '>' . __('Use Global', 'podpress') . ' (' . $current_global . ')</option>' . "\n"; if (empty($data['iTunesCategory'][1])) { podPress_itunesCategoryOptions('##Global##'); } else { podPress_itunesCategoryOptions(stripslashes($data['iTunesCategory'][1])); } echo ' </optgroup>' . "\n"; echo ' </select><br/>' . "\n"; echo ' <select name="iTunesCategory[2]">' . "\n"; echo ' <optgroup label="' . __('Select Third', 'podpress') . '">' . "\n"; if ('' == trim($this->settings['iTunes']['category'][2])) { $current_global = '[ ' . __('nothing', 'podpress') . ' ]'; } else { $current_global = $this->settings['iTunes']['category'][2]; } echo ' <option value="##Global##" '; if ($data['iTunesCategory'][2] == '##Global##' || empty($data['iTunesCategory'][2])) { echo 'selected="selected"'; } echo '>' . __('Use Global', 'podpress') . ' (' . $current_global . ')</option>' . "\n"; if (empty($data['iTunesCategory'][2])) { podPress_itunesCategoryOptions('##Global##'); } else { podPress_itunesCategoryOptions(stripslashes($data['iTunesCategory'][2])); } echo ' </optgroup>' . "\n"; echo ' </select>' . "\n"; echo ' </td>' . "\n"; echo ' </tr>' . "\n"; echo ' <tr>' . "\n"; echo ' <th>'; echo ' <label for="iTunesExplicit">' . __('iTunes:Explicit', 'podpress') . '</label>' . "\n"; echo ' </th>'; echo ' <td colspan="2">'; echo ' <select id="iTunesExplicit" name="iTunesExplicit" onchange="javascript: podPress_updateCategoryCasting(' . $main_wp_version . ', \'' . $taxonomy . '\');">' . "\n"; echo ' <option value="##Global##" '; if ($data['iTunesExplicit'] == '##Global##' || empty($data['iTunesExplicit'])) { echo 'selected="selected"'; } echo '>' . __('Use Global', 'podpress') . ' (' . $this->settings['iTunes']['explicit'] . ')</option>' . "\n"; echo ' <option value="No" '; if ($data['iTunesExplicit'] == 'No') { echo 'selected="selected"'; } echo '>' . __('No', 'podpress') . '</option>' . "\n"; echo ' <option value="Yes" '; if ($data['iTunesExplicit'] == 'Yes') { echo 'selected="selected"'; } echo '>' . __('Yes', 'podpress') . '</option>' . "\n"; echo ' <option value="Clean" '; if ($data['iTunesExplicit'] == 'Clean') { echo 'selected="selected"'; } echo '>' . __('Clean', 'podpress') . '</option>' . "\n"; echo ' </select>' . "\n"; echo ' <div id="iTunesExplicitHelp">' . "\n"; echo ' ' . __('Setting to indicate (in iTunes) whether or not your podcast contains explicit language or adult content', 'podpress') . "\n"; echo ' <br/>' . __('"No" (default) - no indicator will show up', 'podpress') . "\n"; echo ' <br/>' . __('"Yes" - an "EXPLICIT" parental advisory graphic will appear next to your podcast artwork or name in iTunes', 'podpress') . "\n"; echo ' <br/>' . __('"Clean" - means that you are sure that no explicit language or adult content is included any of the episodes, and a "CLEAN" graphic will appear', 'podpress') . "\n"; echo ' <p>' . __('You have also the possibility to adjust this option for each post or page with at least one podcast episode (in the post/page editor).', 'podpress') . '</p>' . "\n"; echo ' </div>' . "\n"; echo ' </td>' . "\n"; echo ' </tr>' . "\n"; echo ' <tr>' . "\n"; echo ' <th>'; echo ' <label for="iTunesBlock">' . __('iTunes:Block', 'podpress') . '</label>' . "\n"; echo ' </th>'; echo ' <td colspan="2">'; echo ' <select id="iTunesBlock" name="iTunesBlock" onchange="javascript: podPress_updateCategoryCasting(' . $main_wp_version . ', \'' . $taxonomy . '\');">' . "\n"; echo ' <option value="##Global##" '; if ($data['iTunesBlock'] != '##Global##' || empty($data['itunesBlock'])) { echo 'selected="selected"'; } echo '>' . __('Use Global', 'podpress') . ' (' . $this->settings['iTunes']['block'] . ')</option>' . "\n"; echo ' <option value="No" '; if ($data['iTunesBlock'] == 'No') { echo 'selected="selected"'; } echo '>' . __('No', 'podpress') . '</option>' . "\n"; echo ' <option value="Yes" '; if ($data['iTunesBlock'] == 'Yes') { echo 'selected="selected"'; } echo '>' . __('Yes', 'podpress') . '</option>' . "\n"; echo ' </select>' . "\n"; echo ' <div id="itunesBlockHelp">' . "\n"; echo ' ' . __('Use this if you are no longer creating a podcast and you want it removed from the iTunes Store.', 'podpress') . "\n"; echo ' <br/>' . __('"No" (default) - the podcast appears in the iTunes Podcast directory', 'podpress') . "\n"; echo ' <br/>' . __('"Yes" - prevent the entire podcast from appearing in the iTunes Podcast directory', 'podpress') . "\n"; echo ' <p>' . __('You can also use such an option for each of your podcast episodes (in the post/page editor).', 'podpress') . '</p>' . "\n"; echo ' </div>' . "\n"; echo ' </td>' . "\n"; echo ' </tr>' . "\n"; echo ' <tr> ' . "\n"; echo ' <th>'; echo ' <label for="iTunesFeedID">' . __('iTunes:FeedID', 'podpress') . '</label>'; echo ' </th>'; echo ' <td colspan="2">'; echo ' <input name="iTunesFeedID" id="iTunesFeedID" type="text" value="' . attribute_escape($data['iTunesFeedID']) . '" size="10" /> ' . __('(Only relevant for the podPress Feed Buttons widget)', 'podpress'); echo ' </td>' . "\n"; echo ' </tr>' . "\n"; echo ' <tr> ' . "\n"; echo ' <th>'; echo ' <label for="iTunesNewFeedURL">' . __('iTunes:New-Feed-Url', 'podpress') . '</label>'; echo ' </th>'; echo ' <td>'; echo ' <select name="iTunesNewFeedURL" id="iTunesNewFeedURL">' . "\n"; echo ' <option value="##Global##" '; if ($data['iTunesNewFeedURL'] == '##Global##' || empty($data['iTunesNewFeedURL'])) { echo 'selected="selected"'; } echo '>' . __('Use Global', 'podpress') . '</option>' . "\n"; echo ' <option value="Disable" '; if ($data['iTunesNewFeedURL'] == 'Disable') { echo 'selected="selected"'; } echo '>' . __('Disable', 'podpress') . '</option>' . "\n"; echo ' <option value="Enable" '; if ($data['iTunesNewFeedURL'] == 'Enable') { echo 'selected="selected"'; } echo '>' . __('Enable', 'podpress') . '</option>' . "\n"; echo ' </select>' . "\n"; echo ' </td>'; echo ' <td>'; echo ' ' . __('If you want to change the URL of your podcast feed which you have used in the iTunes Store then change the "Podcast Feed URL" and set this option to "Enable" until the iTunes Store recognizes the new URL. This may take several days. "Enable" will add the <code><itunes:new-feed-url></code> tag to the RSS feeds and set the "Podcast Feed URL" as the new URL. For further information about "<a href="http://www.apple.com/itunes/podcasts/specs.html#changing" title="iTunes Podcasting Resources: Changing Your Feed URL" target="_blank">Changing Your Feed URL</a>" read on in the <a href="http://www.apple.com/itunes/podcasts/specs.html" target="_blank" title="iTunes Podcasting Resources: Making a Podcast">iTunes Podcasting Resources</a>.', 'podpress') . "\n"; echo ' <p><label for="podcastFeedURL"><strong>' . __('the new Feed URL', 'podpress') . '</strong></label>'; echo ' <br/>'; echo ' <input type="text" id="podcastFeedURL" name="podcastFeedURL" class="podpress_wide_text_field" size="40" value="' . attribute_escape($data['podcastFeedURL']) . '" /><br />' . __('The URL of your Podcast Feed. If you want to register your podcast at the iTunes Store or if your podcast is already listed there then this input field should contain the same URL as in the iTunes Store settings. If you want change the URL at the iTunes Store then please read first the help text of the iTunes:New-Feed-Url option.', 'podpress'); echo ' <br /><input type="button" value="' . __('Validate your Feed', 'podpress') . '" onclick="javascript: if(document.getElementById(\'podcastFeedURL\').value != \'\') { window.open(\'http://www.feedvalidator.org/check.cgi?url=\'+document.getElementById(\'podcastFeedURL\').value); }"/>' . "\n"; echo ' </p></td>' . "\n"; echo ' </tr>' . "\n"; echo ' </table>' . "\n"; echo ' <h3>' . __('General Feed Settings', 'podpress') . '</h3>' . "\n"; echo ' <table class="podpress_feed_gensettings">' . "\n"; echo ' <tr>' . "\n"; echo ' <th>'; echo ' <label for="blognameChoice">' . __('Podcast title / Feed title', 'podpress') . '</label>'; echo ' </th>'; echo ' <td colspan="2">'; echo ' <select id="blognameChoice" name="blognameChoice" onchange="javascript: podPress_updateCategoryCasting(' . $main_wp_version . ', \'' . $taxonomy . '\');">' . "\n"; echo ' <option value="Append" '; if ($data['blognameChoice'] == 'Append' || empty($data['blognameChoice'])) { echo 'selected="selected"'; } echo '>' . sprintf(__('Use the Site Title and append the name of the %1$s', 'podpress'), $taxonomy_str) . '</option>' . "\n"; echo ' <option value="Global" '; if ($data['blognameChoice'] == 'Global') { echo 'selected="selected"'; } echo '>' . __('Use the Site Title', 'podpress') . '</option>' . "\n"; echo ' <option value="CategoryName" '; if ($data['blognameChoice'] == 'CategoryName') { echo 'selected="selected"'; } echo '>' . __('Use the name of the category', 'podpress') . '</option>' . "\n"; echo ' </select>' . "\n"; echo ' <input type="hidden" id="global_blogname" value="' . attribute_escape(stripslashes(get_option('blogname'))) . '" /></td>' . "\n"; echo ' </td>' . "\n"; echo ' </tr>' . "\n"; echo ' <tr>' . "\n"; echo ' <th>'; echo ' <label for="blogdescriptionChoice">' . __('Description (Tagline)', 'podpress') . '</label>' . "\n"; echo ' </th>'; echo ' <td colspan="2">'; echo ' <select id="blogdescriptionChoice" name="blogdescriptionChoice" onchange="javascript: podPress_updateCategoryCasting(' . $main_wp_version . ', \'' . $taxonomy . '\');">' . "\n"; echo ' <option value="Global" '; if ($data['blogdescriptionChoice'] != 'CategoryDescription') { echo 'selected="selected"'; } echo '>' . __('Use Global', 'podpress') . '</option>' . "\n"; echo ' <option value="CategoryDescription" '; if ($data['blogdescriptionChoice'] == 'CategoryDescription') { echo 'selected="selected"'; } echo '>' . sprintf(__('Use %1$s Description', 'podpress'), $taxonomy_str) . '</option>' . "\n"; echo ' </select>' . "\n"; echo ' <input type="hidden" id="global_blogdescription" value="' . attribute_escape(stripslashes(get_option('blogdescription'))) . '" />' . "\n"; echo ' </td>' . "\n"; echo ' </tr>' . "\n"; echo ' <tr>' . "\n"; echo ' <th>'; echo ' <label for="rss_imageChoice">' . __('Blog/RSS Image (144 x 144 pixels)', 'podpress') . '</label>' . "\n"; echo ' </th>'; echo ' <td colspan="2">'; echo ' <select id="rss_imageChoice" name="rss_imageChoice" onchange="javascript: podPress_updateCategoryCasting(' . $main_wp_version . ', \'' . $taxonomy . '\');">' . "\n"; echo ' <option value="Global" '; if ($data['rss_imageChoice'] != 'Custom') { echo 'selected="selected"'; } echo '>' . __('Use Global', 'podpress') . '</option>' . "\n"; echo ' <option value="Custom" '; if ($data['rss_imageChoice'] == 'Custom') { echo 'selected="selected"'; } echo '>' . __('Insert custom value', 'podpress') . '</option>' . "\n"; echo ' </select>' . "\n"; echo ' <div id="rss_imageWrapper" style="display: none;">' . "\n"; echo ' <br/>'; echo ' <input id="rss_image" type="text" name="rss_image" value="' . $data['rss_image'] . '" class="podpress_wide_text_field" size="40" onchange="javascript: podPress_updateCategoryCasting(' . $main_wp_version . ', \'' . $taxonomy . '\');"/>' . "\n"; echo ' <input id="global_rss_image" type="hidden" value="' . get_option('rss_image') . '"/>' . "\n"; echo ' </div>' . "\n"; echo ' <br/>'; echo ' <img id="rss_image_Display" style="width:144px; height:144px;" alt="' . __('Podcast Image - Small (If you can not see an image then the URL is wrong.)', 'podpress') . '" src="" />' . "\n"; echo ' </td>' . "\n"; echo ' </tr>' . "\n"; echo ' <tr>' . "\n"; echo ' <th>'; echo ' <label for="rss_language">' . __('Language', 'podpress') . '</label>' . "\n"; echo ' </th>'; echo ' <td colspan="2">'; $langs = podPress_itunesLanguageArray(); echo ' <select id="rss_language" name="rss_language" onchange="javascript: podPress_updateCategoryCasting(' . $main_wp_version . ', \'' . $taxonomy . '\');">' . "\n"; echo ' <optgroup label="' . __('Select Language', 'podpress') . '">' . "\n"; echo ' <option value="##Global##" '; if ($data['rss_language'] == '##Global##' || empty($data['rss_language'])) { echo 'selected="selected"'; } echo '>' . __('Use Global', 'podpress') . ' - ' . $langs[get_option('rss_language')] . ' [' . get_option('rss_language') . ']</option>' . "\n"; podPress_itunesLanguageOptions($data['rss_language']); echo ' </optgroup>' . "\n"; echo ' </select>' . "\n"; echo ' <input type="hidden" id="global_rss_language" value="' . $langs[get_option('rss_language')] . '[' . attribute_escape(get_option('rss_language')) . ']" /></td>' . "\n"; echo ' </td>' . "\n"; echo ' </tr>' . "\n"; echo ' </table>' . "\n"; echo ' <h3>' . __('Further Feed Settings', 'podpress') . '</h3>' . "\n"; echo ' <table class="podpress_feed_gensettings">' . "\n"; echo ' <tr>' . "\n"; echo ' <th>' . "\n"; echo ' <label for="rss_copyrightChoice">' . __('Feed Copyright / license name', 'podpress') . '</label>' . "\n"; echo ' </th>'; echo ' <td colspan="2">'; echo ' <select id="rss_copyrightChoice" name="rss_copyrightChoice" onchange="javascript: podPress_updateCategoryCasting(' . $main_wp_version . ', \'' . $taxonomy . '\');">' . "\n"; echo ' <option value="Global" '; if ($data['rss_copyrightChoice'] != 'Custom') { echo 'selected="selected"'; } echo '>' . __('Use Global', 'podpress') . ' (' . podPress_stringLimiter(ucfirst(stripslashes($this->settings['rss_copyright'])), 40) . ')</option>' . "\n"; echo ' <option value="Custom" '; if ($data['rss_copyrightChoice'] == 'Custom') { echo 'selected="selected"'; } echo '>' . __('Insert custom value', 'podpress') . '</option>' . "\n"; echo ' </select>' . "\n"; echo ' <div id="rss_copyrightWrapper" style="display: none;">' . "\n"; echo ' <input type="text" name="rss_copyright" class="podpress_wide_text_field" size="40" id="rss_copyright" value="' . attribute_escape(stripslashes($data['rss_copyright'])) . '" onchange="javascript: podPress_updateCategoryCasting(' . $main_wp_version . ', \'' . $taxonomy . '\');"/>'; echo ' </div>' . "\n"; echo ' <input type="hidden" id="global_rss_copyright" value="' . attribute_escape(stripslashes($this->settings['rss_copyright'])) . '" />' . "\n"; echo ' <div id="rss_copyrightHelp">' . "\n"; echo ' ' . __('Enter the copyright string or license name. For example: Copyright © by Jon Doe, 2009 OR <a href="http://creativecommons.org/licenses/by-nc-sa/2.5/" target="_blank">CreativeCommons Attribution-Noncommercial-Share Alike 2.5</a>', 'podpress') . "\n"; echo ' <p>' . "\n"; echo ' ' . __('Used if this copyright phrase should be different than the global copyright phrase.', 'podpress') . "\n"; echo ' </p>' . "\n"; echo ' </div>' . "\n"; echo ' </td>' . "\n"; echo ' </tr>' . "\n"; echo ' <tr>' . "\n"; echo ' <th>' . "\n"; echo ' <label for="rss_license_urlChoice">' . __('URL to the full Copyright / license text', 'podpress') . '</label>' . "\n"; echo ' </th>'; echo ' <td colspan="2">'; echo ' <select id="rss_license_urlChoice" name="rss_license_urlChoice" onchange="javascript: podPress_updateCategoryCasting(' . $main_wp_version . ', \'' . $taxonomy . '\');">' . "\n"; echo ' <option value="Global" '; if ($data['rss_license_urlChoice'] != 'Custom') { echo 'selected="selected"'; } echo '>' . __('Use Global', 'podpress') . ' (' . podPress_stringLimiter(ucfirst(stripslashes($this->settings['rss_license_url'])), 40) . ')</option>' . "\n"; echo ' <option value="Custom" '; if ($data['rss_license_urlChoice'] == 'Custom') { echo 'selected="selected"'; } echo '>' . __('Insert custom value', 'podpress') . '</option>' . "\n"; echo ' </select>' . "\n"; echo ' <div id="rss_license_urlWrapper" style="display: none;">' . "\n"; echo ' <input name="rss_license_url" type="text" id="rss_license_url" class="podpress_wide_text_field" value="' . attribute_escape($data['rss_license_url']) . '" size="65%" />' . "\n"; echo ' </div>' . "\n"; echo ' <input type="hidden" id="global_rss_license_url" value="' . attribute_escape($this->settings['rss_license_url']) . '" />' . "\n"; echo ' <div id="rss_license_urlHelp">' . "\n"; echo ' ' . __('If you use a special license like a <a href="http://creativecommons.org/licenses" target="_blank" title="Creative Commons">Creative Commons</a> License for your news feeds then enter the complete URL (e.g. <a href="http://creativecommons.org/licenses/by-nc-sa/2.5/" target="_blank">http://creativecommons.org/licenses/by-nc-sa/2.5/</a>) to the full text of this particular license here.', 'podpress') . "\n"; echo ' <p>' . __('Used if this license URL should be different than the global license URL.', 'podpress') . '</p>' . "\n"; echo ' </div>' . "\n"; echo ' </td>' . "\n"; echo ' </tr>' . "\n"; echo ' <tr>' . "\n"; $filetypes = podPress_filetypes(); $selected_types = $data['FileTypes']; if (FALSE === is_array($data['FileTypes'])) { $selected_types = array(); } echo ' <th>'; echo ' ' . __('inlude only files of this(these) type(s)', 'podpress'); echo ' </th>' . "\n"; echo ' <td>'; echo ' <select id="filenameextensionfilter" name="FileTypes[]" size="5" multiple="multiple" style="height:15em;">' . "\n"; echo ' <optgroup label="' . attribute_escape(__('Select file types', 'podpress')) . '">' . "\n"; foreach ($filetypes as $key => $value) { if (TRUE == in_array($key, $selected_types)) { $selected = ' selected="selected"'; } else { $selected = ''; } if ($key !== 'audio_mp4') { echo ' <option value="' . $key . '"' . $selected . '>' . $value . '</option>'; } } echo ' </optgroup>' . "\n"; echo ' </select>' . "\n"; echo ' </td>' . "\n"; echo ' <td>'; echo ' ' . __('You can select one or more media file types and limit by this choice the number of posts which will appear in the this Feed. For instance: if you select MP4 Video then this Feed will only contain posts (of this category) with MP4 files. If a post has also files of other types then only the files of the selected type will be attached in this feed. (This filter bypasses the "Included in:" selection.)', 'podpress') . '</p><p>' . __('Hold the key [SHIFT] or [CTRL] and use the left mouse button to select more than one value.<br />Hold [CTRL] and use the left mouse button to deselect values.', 'podpress'); echo ' </td>' . "\n"; echo ' </tr>' . "\n"; echo ' <tr>' . "\n"; echo ' <th>'; echo ' <label for="show_only_podPress_podcasts">' . __('Include only posts with podPress attachments in this Feed', 'podpress') . '</label>' . "\n"; echo ' </th>' . "\n"; echo ' <td>'; if (TRUE == isset($data['show_only_podPress_podcasts']) and FALSE === $data['show_only_podPress_podcasts']) { echo ' <input type="checkbox" name="show_only_podPress_podcasts" id="show_only_podPress_podcasts" value="yes" />' . "\n"; } else { echo ' <input type="checkbox" name="show_only_podPress_podcasts" id="show_only_podPress_podcasts" value="yes" checked="checked" />' . "\n"; } echo ' </td>' . "\n"; echo ' <td>'; echo ' ' . __('works only while the File Type Filter is not in use', 'podpress'); echo ' </td>' . "\n"; echo ' </tr>' . "\n"; echo ' </table>' . "\n"; echo ' </fieldset>' . "\n"; echo ' </div>' . "\n"; echo '<script type="text/javascript">podPress_updateCategoryCasting(' . $main_wp_version . ', \'' . $taxonomy . '\'); </script>'; echo '</div>' . "\n"; } }
function checkSettings() { global $wp_object_cache, $wp_rewrite, $wp_version; if (!is_array($this->settings)) { $this->settings = podPress_get_option('podPress_config'); if (!is_array($this->settings)) { $this->settings = array(); } } $this->settings['lastChecked'] = PODPRESS_VERSION; // Make sure some standard values are set. $x = get_option('rss_language'); if (!$x || empty($x)) { add_option('rss_language', 'en'); } $x = get_option('rss_image'); if (!$x || empty($x)) { podPress_update_option('rss_image', podPress_url() . 'images/powered_by_podpress.jpg'); } // ntm: these settings are for the theme compatibility check resp. message. It seems to me that this checker was not in place at least since 8.8. // I could not find the routine which searches through the theme files for the wp_head and get_header etc. calls. Until there is such a test, I will set these values to TRUE. //~ if($this->settings['compatibilityChecks']['themeTested'] !== true) { //~ $this->settings['compatibilityChecks']['themeTested'] = false; //~ } //~ if($this->settings['compatibilityChecks']['wp_head'] !== true) { //~ $this->settings['compatibilityChecks']['wp_head'] = false; //~ } //~ if($this->settings['compatibilityChecks']['wp_footer'] !== true) { //~ $this->settings['compatibilityChecks']['wp_footer'] = false; //~ } $this->settings['compatibilityChecks']['themeTested'] = TRUE; $this->settings['compatibilityChecks']['wp_head'] = TRUE; $this->settings['compatibilityChecks']['wp_footer'] = TRUE; if (!is_bool($this->settings['enableStats'])) { if ($this->settings['enableStats'] == 'true') { $this->settings['enableStats'] = true; } else { $this->settings['enableStats'] = false; } } // no dashboardwidget support for WP 2.5.x and WP 2.6.x if (TRUE == isset($this->settings['disabledashboardwidget']) and TRUE === $this->settings['disabledashboardwidget'] or TRUE == version_compare($wp_version, '2.5', '>=') and TRUE == version_compare($wp_version, '2.7', '<')) { $this->settings['disabledashboardwidget'] = TRUE; } else { $this->settings['disabledashboardwidget'] = FALSE; } if (!$this->settings['statMethod'] || empty($this->settings['statMethod']) || $this->settings['statMethod'] == 'htaccess') { $this->settings['statMethod'] = 'permalinks'; } if (!$this->settings['statLogging'] || empty($this->settings['statLogging'])) { $this->settings['statLogging'] = 'Counts'; } if (empty($this->settings['enable3rdPartyStats'])) { $this->settings['enable3rdPartyStats'] = 'No'; } if (!is_bool($this->settings['enableBlubrryStats'])) { if ($this->settings['enableBlubrryStats'] == 'true') { $this->settings['enableBlubrryStats'] = true; } else { $this->settings['enableBlubrryStats'] = false; } } if (!$this->settings['rss_copyright'] || empty($this->settings['rss_copyright'])) { $this->settings['rss_copyright'] = __('Copyright', 'podpress') . ' © ' . get_bloginfo('blogname') . ' ' . date('Y', time()); } if (podPress_WPVersionCheck('2.0.0')) { if (!is_bool($this->settings['enablePremiumContent'])) { if ($this->settings['enablePremiumContent'] == 'true') { $this->settings['enablePremiumContent'] = true; } else { $this->settings['enablePremiumContent'] = false; } } } else { $this->settings['enablePremiumContent'] = false; } if (empty($this->settings['premiumMethod'])) { $this->settings['premiumMethod'] = 'Digest'; } if (!defined('PODPRESS_PREMIUM_METHOD')) { define('PODPRESS_PREMIUM_METHOD', $this->settings['premiumMethod']); } if (!is_bool($this->settings['enableTorrentCasting'])) { if ($this->settings['enableTorrentCasting'] == 'true') { $this->settings['enableTorrentCasting'] = true; } else { $this->settings['enableTorrentCasting'] = false; } } if (empty($this->settings['podcastFeedURL'])) { if (podPress_WPVersionCheck('2.1')) { //~ $this->settings['podcastFeedURL'] = site_url().'/?feed=podcast'; $this->settings['podcastFeedURL'] = get_feed_link('podcast'); } else { $this->settings['podcastFeedURL'] = site_url() . '/?feed=rss2'; } } if (FALSE == isset($this->settings['mediaWebPath']) or TRUE == empty($this->settings['mediaWebPath'])) { $this->settings['mediaWebPath'] = $this->uploadurl; } $this->checkLocalPathToMediaFiles(); if (empty($this->settings['maxMediaFiles']) || $this->settings['maxMediaFiles'] < 1) { $this->settings['maxMediaFiles'] = 10; } if (!$this->settings['contentBeforeMore'] || empty($this->settings['contentBeforeMore'])) { $this->settings['contentBeforeMore'] = 'yes'; } if (!$this->settings['contentLocation'] || empty($this->settings['contentLocation'])) { $this->settings['contentLocation'] = 'end'; } if (!$this->settings['contentImage'] || empty($this->settings['contentImage'])) { $this->settings['contentImage'] = 'button'; } if (!$this->settings['contentPlayer'] || empty($this->settings['contentPlayer'])) { $this->settings['contentPlayer'] = 'both'; } if (!$this->settings['contentHidePlayerPlayNow'] || empty($this->settings['contentHidePlayerPlayNow'])) { $this->settings['contentHidePlayerPlayNow'] = 'enabled'; } if (FALSE == isset($this->settings['videoPreviewImage']) or empty($this->settings['videoPreviewImage'])) { $this->settings['videoPreviewImage'] = PODPRESS_URL . '/images/vpreview_center.png'; } if (!is_bool($this->settings['disableVideoPreview'])) { if ($this->settings['disableVideoPreview'] == 'true') { $this->settings['disableVideoPreview'] = true; } else { $this->settings['disableVideoPreview'] = false; } } if (!$this->settings['contentDownload'] || empty($this->settings['contentDownload'])) { $this->settings['contentDownload'] = 'enabled'; } if (!$this->settings['contentDownloadText'] || empty($this->settings['contentDownloadText'])) { $this->settings['contentDownloadText'] = 'enabled'; } if (!$this->settings['contentDownloadStats'] || empty($this->settings['contentDownloadStats'])) { $this->settings['contentDownloadStats'] = 'enabled'; } if (!$this->settings['contentDuration'] || empty($this->settings['contentDuration'])) { $this->settings['contentDuration'] = 'enabled'; } if (FALSE == isset($this->settings['contentfilesize']) or TRUE == empty($this->settings['contentfilesize'])) { $this->settings['contentfilesize'] = 'disabled'; } if (FALSE == isset($this->settings['incontentandexcerpt'])) { $this->settings['incontentandexcerpt'] = 'in_content_and_excerpt'; } if (!is_bool($this->settings['contentAutoDisplayPlayer'])) { if ($this->settings['contentAutoDisplayPlayer'] == 'false') { $this->settings['contentAutoDisplayPlayer'] = false; } else { $this->settings['contentAutoDisplayPlayer'] = true; } } if (FALSE == is_bool($this->settings['enableFooter'])) { $this->settings['enableFooter'] = false; } if (FALSE == isset($this->settings['mp3Player'])) { $this->settings['mp3Player'] = '1pixelout'; } if ($this->settings['player']['bg'] == '') { $this->resetPlayerSettings(); } if (empty($this->settings['iTunes']['summary'])) { $this->settings['iTunes']['summary'] = stripslashes(get_option('blogdescription')); } else { $this->settings['iTunes']['summary'] = stripslashes($this->settings['iTunes']['summary']); } $this->settings['iTunes']['keywords'] = stripslashes($this->settings['iTunes']['keywords']); $this->settings['iTunes']['subtitle'] = stripslashes($this->settings['iTunes']['subtitle']); $this->settings['iTunes']['author'] = stripslashes($this->settings['iTunes']['author']); $this->settings['iTunes']['FeedID'] = stripslashes($this->settings['iTunes']['FeedID']); $this->settings['iTunes']['FeedID'] = str_replace(' ', '', $this->settings['iTunes']['FeedID']); if (!empty($this->settings['iTunes']['FeedID']) && !is_numeric($this->settings['iTunes']['FeedID'])) { $this->settings['iTunes']['FeedID'] = settype($this->settings['iTunes']['FeedID'], 'double'); } if (empty($this->settings['iTunes']['explicit'])) { $this->settings['iTunes']['explicit'] = 'No'; } if (empty($this->settings['iTunes']['image'])) { $x = get_option('rss_image'); if (FALSE !== $x && $x != podPress_url() . 'images/powered_by_podpress.jpg') { $this->settings['iTunes']['image'] = $x; } else { $this->settings['iTunes']['image'] = podPress_url() . 'images/powered_by_podpress_large.jpg'; } } if (FALSE == isset($this->settings['iTunes']['new-feed-url']) or 'Enable' != $this->settings['iTunes']['new-feed-url'] and 'Disable' != $this->settings['iTunes']['new-feed-url']) { $this->settings['iTunes']['new-feed-url'] = 'Disable'; } if (FALSE == isset($this->settings['iTunes']['block']) or 'Yes' != $this->settings['iTunes']['block'] and 'No' != $this->settings['iTunes']['block']) { $this->settings['iTunes']['block'] = 'No'; } if (FALSE == isset($this->settings['rss_license_url'])) { $this->settings['rss_license_url'] = ''; } // since 8.8.8: default settings for the fully customizable feeds if (FALSE == is_array($this->settings['podpress_feeds']) or empty($this->settings['podpress_feeds'])) { $email = get_option('admin_email'); if (FALSE === $email) { $email = ''; } $tagline = $this->settings['iTunes']['subtitle']; if (FALSE === $tagline) { $tagline = ''; } $blog_charset = get_bloginfo('charset'); $rss_language = get_option('rss_language'); if (FALSE === $rss_language) { $rss_language = 'en'; } $rss_image = get_option('rss_image'); if (FALSE === $rss_image or TRUE == empty($rss_image)) { $rss_image = PODPRESS_URL . '/images/powered_by_podpress.jpg'; } $ttl = get_option('rss_ttl'); if (FALSE === $ttl or !empty($ttl) && $ttl < 1440) { $ttl = 1440; } //~ if ( defined('PODPRESS_TAKEOVER_OLD_SETTINGS') AND TRUE === constant('PODPRESS_TAKEOVER_OLD_SETTINGS') ) { if (FALSE == is_array($this->settings['iTunes']['category'])) { $itunescategory = array(); } $this->settings['podpress_feeds'][0] = array('use' => TRUE, 'premium' => FALSE, 'name' => __('Podcast Feed', 'podpress'), 'slug' => 'podcast', 'feedtitle' => 'append', 'subtitle' => $tagline, 'itunes-newfeedurl' => 'Disable', 'descr' => $this->settings['iTunes']['summary'], 'itunes-category' => $itunescategory, 'rss_category' => $this->settings['rss_category'], 'itunes-keywords' => $this->settings['iTunes']['keywords'], 'itunes-author' => $this->settings['iTunes']['author'], 'email' => $email, 'itunes-image' => $this->settings['iTunes']['image'], 'rss_image' => $rss_image, 'copyright' => $this->settings['rss_copyright'], 'license_url' => $this->settings['rss_license_url'], 'language' => $rss_language, 'charset' => $blog_charset, 'FileTypes' => array(), 'inclCategories' => array(), 'show_only_podPress_podcasts' => TRUE, 'bypass_incl_selection' => FALSE, 'itunes-explicit' => $this->settings['iTunes']['explicit'], 'feedtype' => 'rss', 'ttl' => $ttl, 'itunes-feedid' => $this->settings['iTunes']['FeedID'], 'itunes-block' => $this->settings['iTunes']['block'], 'use_headerlink' => FALSE); $this->settings['podpress_feeds'][1] = array('use' => FALSE, 'premium' => FALSE, 'name' => __('Enhanced Podcast Feed', 'podpress'), 'slug' => 'enhancedpodcast', 'feedtitle' => 'append', 'subtitle' => $tagline, 'itunes-newfeedurl' => 'Disable', 'descr' => $this->settings['iTunes']['summary'], 'itunes-category' => $itunescategory, 'rss_category' => $this->settings['rss_category'], 'itunes-keywords' => $this->settings['iTunes']['keywords'], 'itunes-author' => $this->settings['iTunes']['author'], 'email' => $email, 'itunes-image' => $this->settings['iTunes']['image'], 'rss_image' => $rss_image, 'copyright' => $this->settings['rss_copyright'], 'license_url' => $this->settings['rss_license_url'], 'language' => $rss_language, 'charset' => $blog_charset, 'FileTypes' => array('audio_m4a', 'video_m4v'), 'inclCategories' => array(), 'show_only_podPress_podcasts' => TRUE, 'bypass_incl_selection' => FALSE, 'itunes-explicit' => $this->settings['iTunes']['explicit'], 'feedtype' => 'atom', 'ttl' => $ttl, 'itunes-feedid' => $this->settings['iTunes']['FeedID'], 'itunes-block' => $this->settings['iTunes']['block'], 'use_headerlink' => FALSE); $this->settings['podpress_feeds'][2] = array('use' => FALSE, 'premium' => FALSE, 'name' => __('Torrent Feed', 'podpress'), 'slug' => 'torrent', 'feedtitle' => 'append', 'subtitle' => $tagline, 'itunes-newfeedurl' => 'Disable', 'descr' => $this->settings['iTunes']['summary'], 'itunes-category' => $itunescategory, 'rss_category' => $this->settings['rss_category'], 'itunes-keywords' => $this->settings['iTunes']['keywords'], 'itunes-author' => $this->settings['iTunes']['author'], 'email' => $email, 'itunes-image' => $this->settings['iTunes']['image'], 'rss_image' => $rss_image, 'copyright' => $this->settings['rss_copyright'], 'license_url' => $this->settings['rss_license_url'], 'language' => $rss_language, 'charset' => $blog_charset, 'FileTypes' => array('torrent'), 'inclCategories' => array(), 'show_only_podPress_podcasts' => TRUE, 'bypass_incl_selection' => FALSE, 'itunes-explicit' => $this->settings['iTunes']['explicit'], 'feedtype' => 'atom', 'ttl' => $ttl, 'itunes-feedid' => $this->settings['iTunes']['FeedID'], 'itunes-block' => $this->settings['iTunes']['block'], 'use_headerlink' => FALSE); if (FALSE == defined('PODPRESS_DEACTIVATE_PREMIUM') or FALSE === constant('PODPRESS_DEACTIVATE_PREMIUM')) { $this->settings['podpress_feeds'][3] = array('use' => FALSE, 'premium' => TRUE, 'name' => __('Premium Feed', 'podpress'), 'slug' => 'premium', 'feedtitle' => 'append', 'subtitle' => $tagline, 'itunes-newfeedurl' => 'Disable', 'descr' => $this->settings['iTunes']['summary'], 'itunes-category' => $itunescategory, 'rss_category' => $this->settings['rss_category'], 'itunes-keywords' => $this->settings['iTunes']['keywords'], 'itunes-author' => $this->settings['iTunes']['author'], 'email' => $email, 'itunes-image' => $this->settings['iTunes']['image'], 'rss_image' => $rss_image, 'copyright' => $this->settings['rss_copyright'], 'license_url' => $this->settings['rss_license_url'], 'language' => $rss_language, 'charset' => $blog_charset, 'FileTypes' => array(), 'inclCategories' => array(), 'show_only_podPress_podcasts' => TRUE, 'bypass_incl_selection' => FALSE, 'itunes-explicit' => $this->settings['iTunes']['explicit'], 'feedtype' => 'rss', 'ttl' => $ttl, 'itunes-feedid' => $this->settings['iTunes']['FeedID'], 'itunes-block' => $this->settings['iTunes']['block'], 'use_headerlink' => FALSE); } //~ } else { //~ // in case it is a first time installation //~ $this->settings['podpress_feeds'][0] = array( //~ 'use' => TRUE, //~ 'premium' => FALSE, //~ 'name' => __('Podcast Feed', 'podpress'), //~ 'slug' => 'podcast', //~ 'feedtitle' => 'append', //~ 'subtitle' => '', //~ 'itunes-newfeedurl' => 'Disable', //~ 'descr' => '', //~ 'itunes-category' => Array(), //~ 'rss_category' => '', //~ 'itunes-keywords' => '', //~ 'itunes-author' => '', //~ 'email' => '', //~ 'itunes-image' => $this->settings['iTunes']['image'], //~ 'rss_image' => $rss_image, //~ 'copyright' => $this->settings['rss_copyright'], //~ 'license_url' => '', //~ 'language' => $rss_langauge, //~ 'charset' => $blog_charset, //~ 'FileTypes' => Array(), //~ 'itunes-explicit' => 'No', //~ 'feedtype' => 'rss', //~ 'ttl' => $ttl, //~ 'itunes-feedid' => '', //~ 'itunes-block' => 'No' //~ ); //~ } } podPress_update_option('podPress_config', $this->settings); if (is_object($wp_rewrite) && is_array($wp_object_cache) && is_array($wp_object_cache['cache']) && is_array($wp_object_cache['cache']['options']) && is_array($wp_object_cache['cache']['options']['alloptions']) && is_array($wp_object_cache['cache']['options']['alloptions']['rewrite_rules']) && !strpos($wp_object_cache['cache']['options']['alloptions']['rewrite_rules'], 'playlist.xspf')) { $wp_rewrite->flush_rules(); } }