public static function page() { if (apply_filters('podlove_dashboard_page', false) !== false) { return; } \Podlove\load_template('settings/dashboard/dashboard'); }
public function embed_player() { if (!filter_input(INPUT_GET, 'podloveEmbed')) { return; } if (!is_single()) { return; } if (!($episode = Episode::find_or_create_by_post_id(get_the_ID()))) { return; } $css_path = plugins_url('css', __FILE__); $js_path = plugins_url('js', __FILE__); $player_config = (new PlayerConfig($episode))->get(); \Podlove\load_template('lib/modules/podlove_web_player/player_v3/views/embed_player', compact('episode', 'css_path', 'js_path', 'player_config')); exit; }
public static function content() { global $wpdb; $sql = "\n\t\tSELECT\n\t\t\tp.post_status,\n\t\t\tmf.episode_id,\n\t\t\tmf.episode_asset_id,\n\t\t\tmf.size,\n\t\t\tmf.id media_file_id\n\t\tFROM\n\t\t\t`" . Model\MediaFile::table_name() . "` mf\n\t\t\tJOIN `" . Model\Episode::table_name() . "` e ON e.id = mf.`episode_id`\n\t\t\tJOIN `" . $wpdb->posts . "` p ON e.`post_id` = p.`ID`\n\t\tWHERE\n\t\t\tp.`post_type` = 'podcast'\n\t\t\tAND p.post_status in ('private', 'draft', 'publish', 'pending', 'future')\n\t\t"; $rows = $wpdb->get_results($sql, ARRAY_A); $media_files = []; foreach ($rows as $row) { if (!isset($media_files[$row['episode_id']])) { $media_files[$row['episode_id']] = ['post_status' => $row["post_status"]]; } $media_files[$row['episode_id']][$row['episode_asset_id']] = ['size' => $row['size'], 'media_file_id' => $row['media_file_id']]; } $podcast = Model\Podcast::get(); $episodes = $podcast->episodes(); $assets = Model\EpisodeAsset::all(); $header = [__('Episode', 'podlove')]; foreach ($assets as $asset) { $header[] = $asset->title; } $header[] = __('Status', 'podlove'); \Podlove\load_template('settings/dashboard/file_validation', ['episodes' => $episodes, 'assets' => $assets, 'media_files' => $media_files, 'header' => $header]); }
public static function content() { \Podlove\load_template('settings/dashboard/about'); }
public static function content() { $episode_edit_url = site_url('/wp-admin/edit.php?post_type=podcast'); $statistics = self::prepare_statistics(); \Podlove\load_template('settings/dashboard/statistics', ['episode_edit_url' => $episode_edit_url, 'statistics' => $statistics]); }
public static function insert_script() { \Podlove\load_template('lib/modules/flattr/views/flattr_script'); }
public static function content() { $feeds = ['podlove' => ['link' => 'http://podlove.org/', 'url' => 'http://podlove.org/feed/', 'title' => 'Podlove News', 'items' => 5, 'show_summary' => 1, 'show_author' => 0, 'show_date' => 1]]; \Podlove\load_template('settings/dashboard/news', ['feeds' => $feeds]); }
public static function contributors_form_table($current_contributions = array(), $form_base_name = 'episode_contributor') { $contributors_roles = \Podlove\Modules\Contributors\Model\ContributorRole::selectOptions(); $contributors_groups = \Podlove\Modules\Contributors\Model\ContributorGroup::selectOptions(); $cjson = array(); // only valid contributions $current_contributions = array_filter($current_contributions, function ($c) { return $c->contributor_id > 0; }); $has_roles = count($contributors_roles) > 0; $has_groups = count($contributors_groups) > 0; $can_be_commented = $form_base_name == 'podlove_contributor_defaults[contributor]' ? 0 : 1; foreach (\Podlove\Modules\Contributors\Model\Contributor::all() as $contributor) { $show_contributions = \Podlove\Modules\Contributors\Model\ShowContribution::all("WHERE `contributor_id` = " . $contributor->id); if (empty($show_contributions)) { $cjson[$contributor->id] = array('id' => $contributor->id, 'slug' => $contributor->slug, 'role' => '', 'group' => '', 'realname' => $contributor->realname, 'avatar' => $contributor->avatar()->setWidth(45)->image()); } else { foreach ($show_contributions as $show_contribution) { $role_data = \Podlove\Modules\Contributors\Model\ContributorRole::find_one_by_id($show_contribution->role_id); $role_data == "" ? $role = '' : ($role = $role_data->id); $group_data = \Podlove\Modules\Contributors\Model\ContributorGroup::find_one_by_id($show_contribution->group_id); $group_data == "" ? $group = '' : ($group = $group_data->id); $cjson[$contributor->id] = array('id' => $contributor->id, 'slug' => $contributor->slug, 'role' => $role, 'group' => $group, 'realname' => $contributor->realname, 'avatar' => $contributor->avatar()->setWidth(45)->image()); } } } // override contributor roles and groups with scoped roles foreach ($current_contributions as $contribution_key => $current_contribution) { if ($role = $current_contribution->getRole()) { $cjson[$current_contribution->contributor_id]['role'] = $role->slug; } if ($group = $current_contribution->getGroup()) { $cjson[$current_contribution->contributor_id]['group'] = $group->slug; } } $contributors = \Podlove\Modules\Contributors\Model\Contributor::all(); $existing_contributions = array_filter(array_map(function ($c) { // Set default role $role_data = \Podlove\Modules\Contributors\Model\ContributorRole::find_by_id($c->role_id); if (isset($role_data)) { $role = $role_data->slug; } else { if (empty($c->role)) { $role = ''; } else { $role = $c->role->slug; } } // Set default group $group_data = \Podlove\Modules\Contributors\Model\ContributorGroup::find_by_id($c->group_id); if (isset($group_data)) { $group = $group_data->slug; } else { if (empty($c->group)) { $group = ''; } else { $group = $c->group->slug; } } if (is_object(\Podlove\Modules\Contributors\Model\Contributor::find_by_id($c->contributor_id))) { return array('id' => $c->contributor_id, 'role' => $role, 'group' => $group, 'comment' => $c->comment); } return ''; }, $current_contributions)); \Podlove\load_template('lib/modules/contributors/views/form_table', compact('has_groups', 'has_roles', 'can_be_commented', 'form_base_name', 'existing_contributions', 'cjson', 'contributors', 'contributors_groups', 'contributors_roles')); }