Submit
Path:
~
/
/
proc
/
thread-self
/
root
/
home
/
getwphos
/
www
/
ppine
/
wp-content
/
plugins
/
trx_addons
/
components
/
cpt
/
sport
/
File Content:
sport.php
<?php /** * ThemeREX Addons: Sports Reviews Management (SRM). * Support different sports, championships, rounds, matches and players. * * @package ThemeREX Addons * @since v1.6.17 */ // Don't load directly if ( ! defined( 'TRX_ADDONS_VERSION' ) ) { exit; } if ( ($fdir = trx_addons_get_file_dir(TRX_ADDONS_PLUGIN_CPT . "sport/sport.competitions.php")) != '') { include_once $fdir; } if ( ($fdir = trx_addons_get_file_dir(TRX_ADDONS_PLUGIN_CPT . "sport/sport.rounds.php")) != '') { include_once $fdir; } if ( ($fdir = trx_addons_get_file_dir(TRX_ADDONS_PLUGIN_CPT . "sport/sport.matches.php")) != '') { include_once $fdir; } if ( ($fdir = trx_addons_get_file_dir(TRX_ADDONS_PLUGIN_CPT . "sport/sport.players.php")) != '') { include_once $fdir; } // ----------------------------------------------------------------- // -- Custom post type registration // ----------------------------------------------------------------- // Add Admin menu item to show Sports management panel if (!function_exists('trx_addons_cpt_sport_admin_menu')) { add_action( 'admin_menu', 'trx_addons_cpt_sport_admin_menu' ); function trx_addons_cpt_sport_admin_menu() { add_menu_page( esc_html__('Sport', 'trx_addons'), //page_title esc_html__('Sport', 'trx_addons'), //menu_title 'edit_posts', //capability 'trx_addons_sport', //menu_slug 'trx_addons_sport_page', //callback 'dashicons-universal-access', //icon // From WordPress 5.3 'menu_position' must be only integer or null (default)! 40 //menu position ); } } /* ------------------- Old way - moved to the cpt.php now --------------------- // Add 'Sport' parameters in the ThemeREX Addons Options if (!function_exists('trx_addons_cpt_sport_options')) { add_filter( 'trx_addons_filter_options', 'trx_addons_cpt_sport_options'); function trx_addons_cpt_sport_options($options) { trx_addons_array_insert_after($options, 'cpt_section', trx_addons_cpt_sport_get_list_options()); return $options; } } // Return parameters list for plugin's options if (!function_exists('trx_addons_cpt_sport_get_list_options')) { function trx_addons_cpt_sport_get_list_options($add_parameters=array()) { return apply_filters('trx_addons_cpt_list_options', array( 'sport_info' => array( "title" => esc_html__('Sport', 'trx_addons'), "desc" => wp_kses_data( __('Settings of the sport reviews system', 'trx_addons') ), "type" => "info" ), 'sport_favorite' => array( "title" => esc_html__('Default sport', 'trx_addons'), "desc" => wp_kses_data( __('Select default sport for the shortcodes editor', 'trx_addons') ), "std" => '', "options" => is_admin() ? trx_addons_get_list_terms(false, TRX_ADDONS_CPT_COMPETITIONS_TAXONOMY) : array(), "type" => "select" ), 'competitions_style' => array( "title" => esc_html__('Style', 'trx_addons'), "desc" => wp_kses_data( __('Style of the competitions archive', 'trx_addons') ), "std" => 'default_3', "options" => apply_filters('trx_addons_filter_cpt_archive_styles', trx_addons_components_get_allowed_layouts('cpt', 'sport', 'arh'), TRX_ADDONS_CPT_COMPETITIONS_PT), "type" => "select" ) ), 'sport'); } } ------------------- /Old way --------------------- */ // Return true if it's sport page if ( !function_exists( 'trx_addons_is_sport_page' ) ) { function trx_addons_is_sport_page() { return defined('TRX_ADDONS_CPT_COMPETITIONS_PT') && !is_search() && ( (trx_addons_is_single() && in_array(get_post_type(), array(TRX_ADDONS_CPT_COMPETITIONS_PT, TRX_ADDONS_CPT_ROUNDS_PT, TRX_ADDONS_CPT_PLAYERS_PT, TRX_ADDONS_CPT_MATCHES_PT))) || is_post_type_archive(TRX_ADDONS_CPT_MATCHES_PT) || is_post_type_archive(TRX_ADDONS_CPT_PLAYERS_PT) || is_post_type_archive(TRX_ADDONS_CPT_ROUNDS_PT) || is_post_type_archive(TRX_ADDONS_CPT_COMPETITIONS_PT) || is_tax(TRX_ADDONS_CPT_COMPETITIONS_TAXONOMY) ); } } // Load required styles and scripts for the frontend if ( !function_exists( 'trx_addons_cpt_sport_load_scripts_front' ) ) { add_action("wp_enqueue_scripts", 'trx_addons_cpt_sport_load_scripts_front', TRX_ADDONS_ENQUEUE_SCRIPTS_PRIORITY); add_action( 'trx_addons_action_pagebuilder_preview_scripts', 'trx_addons_cpt_sport_load_scripts_front', 10, 1 ); function trx_addons_cpt_sport_load_scripts_front( $force = false ) { trx_addons_enqueue_optimized( 'cpt_sport', $force, array( 'css' => array( 'trx_addons-cpt_sport' => array( 'src' => TRX_ADDONS_PLUGIN_CPT . 'sport/sport.css' ), ), 'js' => array( 'trx_addons-cpt_sport' => array( 'src' => TRX_ADDONS_PLUGIN_CPT . 'sport/sport.js', 'deps' => 'jquery' ), ), 'need' => trx_addons_is_sport_page(), 'check' => array( // Matches array( 'type' => 'sc', 'sc' => 'trx_sc_matches' ), array( 'type' => 'gb', 'sc' => 'wp:trx-addons/matches' ), array( 'type' => 'elm', 'sc' => '"widgetType":"trx_sc_matches"' ), array( 'type' => 'elm', 'sc' => '"shortcode":"[trx_sc_matches' ), // Points array( 'type' => 'sc', 'sc' => 'trx_sc_points' ), array( 'type' => 'gb', 'sc' => 'wp:trx-addons/points' ), array( 'type' => 'elm', 'sc' => '"widgetType":"trx_sc_points"' ), array( 'type' => 'elm', 'sc' => '"shortcode":"[trx_sc_points' ), ) ) ); } } // Enqueue responsive styles for frontend if ( ! function_exists( 'trx_addons_cpt_sport_load_scripts_front_responsive' ) ) { add_action( 'wp_enqueue_scripts', 'trx_addons_cpt_sport_load_scripts_front_responsive', TRX_ADDONS_ENQUEUE_RESPONSIVE_PRIORITY ); add_action( 'trx_addons_action_load_scripts_front_cpt_sport', 'trx_addons_cpt_sport_load_scripts_front_responsive', 10, 1 ); function trx_addons_cpt_sport_load_scripts_front_responsive( $force = false ) { trx_addons_enqueue_optimized_responsive( 'cpt_sport', $force, array( 'css' => array( 'trx_addons-cpt_sport-responsive' => array( 'src' => TRX_ADDONS_PLUGIN_CPT . 'sport/sport.responsive.css', 'media' => 'md' ), ), ) ); } } // Merge shortcode's specific styles into single stylesheet if ( !function_exists( 'trx_addons_cpt_sport_merge_styles' ) ) { add_filter("trx_addons_filter_merge_styles", 'trx_addons_cpt_sport_merge_styles'); function trx_addons_cpt_sport_merge_styles($list) { $list[ TRX_ADDONS_PLUGIN_CPT . 'sport/sport.css' ] = false; return $list; } } // Merge shortcode's specific styles to the single stylesheet (responsive) if ( !function_exists( 'trx_addons_cpt_sport_merge_styles_responsive' ) ) { add_filter("trx_addons_filter_merge_styles_responsive", 'trx_addons_cpt_sport_merge_styles_responsive'); function trx_addons_cpt_sport_merge_styles_responsive($list) { $list[ TRX_ADDONS_PLUGIN_CPT . 'sport/sport.responsive.css' ] = false; return $list; } } // Merge shortcode's specific scripts into single file if ( !function_exists( 'trx_addons_cpt_sport_merge_scripts' ) ) { add_action("trx_addons_filter_merge_scripts", 'trx_addons_cpt_sport_merge_scripts'); function trx_addons_cpt_sport_merge_scripts($list) { $list[ TRX_ADDONS_PLUGIN_CPT . 'sport/sport.js' ] = false; return $list; } } // Load styles and scripts if present in the cache of the menu if ( !function_exists( 'trx_addons_cpt_sport_check_in_html_output' ) ) { add_filter( 'trx_addons_filter_get_menu_cache_html', 'trx_addons_cpt_sport_check_in_html_output', 10, 1 ); add_action( 'trx_addons_action_show_layout_from_cache', 'trx_addons_cpt_sport_check_in_html_output', 10, 1 ); add_action( 'trx_addons_action_check_page_content', 'trx_addons_cpt_sport_check_in_html_output', 10, 1 ); function trx_addons_cpt_sport_check_in_html_output( $content = '' ) { $args = array( 'check' => array( 'class=[\'"][^\'"]*sc_(sport|matches|points)', 'class=[\'"][^\'"]*type\\-(' . TRX_ADDONS_CPT_MATCHES_PT . '|' . TRX_ADDONS_CPT_PLAYERS_PT . '|' . TRX_ADDONS_CPT_ROUNDS_PT . '|' . TRX_ADDONS_CPT_COMPETITIONS_PT . ')', 'class=[\'"][^\'"]*' . TRX_ADDONS_CPT_COMPETITIONS_TAXONOMY . '\\-', ) ); if ( trx_addons_check_in_html_output( 'cpt_sport', $content, $args ) ) { trx_addons_cpt_sport_load_scripts_front( true ); } return $content; } } // Load required styles and scripts for the backend if ( !function_exists( 'trx_addons_cpt_sport_load_scripts_admin' ) ) { add_action("admin_enqueue_scripts", 'trx_addons_cpt_sport_load_scripts_admin'); function trx_addons_cpt_sport_load_scripts_admin() { wp_enqueue_script('trx_addons-cpt_sport', trx_addons_get_file_url(TRX_ADDONS_PLUGIN_CPT . 'sport/sport.admin.js'), array('jquery'), null, true ); } } // Admin utils // ----------------------------------------------------------------- // Add query vars to filter posts if (!function_exists('trx_addons_cpt_sport_pre_get_posts')) { add_action( 'pre_get_posts', 'trx_addons_cpt_sport_pre_get_posts' ); function trx_addons_cpt_sport_pre_get_posts($query) { if (!$query->is_main_query()) return; $post_type = $query->get('post_type'); // Filters and sort for the admin lists if (is_admin()) { $orderby = trx_addons_get_value_gp('orderby'); $order = trx_addons_get_value_gp('order'); if ($post_type == TRX_ADDONS_CPT_COMPETITIONS_PT) { // Sort competitions by start date if (empty($orderby) || $orderby=='trx_addons_competition_date') { $query->set('meta_key', 'trx_addons_competition_date'); $query->set('orderby', 'meta_value'); $query->set('order', $order == 'desc' ? 'DESC' : 'ASC'); } } else if (in_array($post_type, array(TRX_ADDONS_CPT_ROUNDS_PT, TRX_ADDONS_CPT_PLAYERS_PT))) { $competition = trx_addons_get_value_gp('competition'); if ((int) $competition > 0) { //$query->set('meta_key', 'trx_addons_competition'); //$query->set('meta_value', $competition); $query->set('post_parent', $competition); // Sort rounds by start date if ($post_type==TRX_ADDONS_CPT_ROUNDS_PT) { if (empty($orderby) || $orderby=='trx_addons_round_date') { $query->set('meta_key', 'trx_addons_round_date'); $query->set('orderby', 'meta_value'); $query->set('order', $order == 'desc' ? 'DESC' : 'ASC'); } // Sort players } else { if (empty($orderby) || $orderby=='trx_addons_player_points') { $query->set('meta_key', 'trx_addons_player_points'); $query->set('orderby', 'meta_value'); $query->set('order', $order == 'asc' ? 'ASC' : 'DESC'); } } } } else if ($post_type == TRX_ADDONS_CPT_MATCHES_PT) { $round = trx_addons_get_value_gp('round'); if ((int) $round > 0) { //$query->set('meta_key', 'trx_addons_round'); //$query->set('meta_value', $round); $query->set('post_parent', $round); // Sort matches by start date if (empty($orderby) || $orderby=='trx_addons_match_date') { $query->set('meta_key', 'trx_addons_match_date'); $query->set('orderby', 'meta_value'); $query->set('order', $order == 'desc' ? 'DESC' : 'ASC'); } } } // Filters and sort for the foreground lists } else { if ($post_type == TRX_ADDONS_CPT_COMPETITIONS_PT) { $sport = trx_addons_get_value_gp('sport'); // Filter competitions by sport if (!empty($sport)) { } $query->set('meta_key', 'trx_addons_competition_date'); $query->set('orderby', 'meta_value'); $query->set('order', 'ASC'); } else if (in_array($post_type, array(TRX_ADDONS_CPT_ROUNDS_PT, TRX_ADDONS_CPT_PLAYERS_PT))) { $competition = trx_addons_get_value_gp('competition'); // Filter rounds and players by competition if ((int) $competition > 0) { $query->set('post_parent', $competition); // Sort rounds by start date if ($post_type==TRX_ADDONS_CPT_ROUNDS_PT) { $query->set('meta_key', 'trx_addons_round_date'); $query->set('orderby', 'meta_value'); $query->set('order', 'ASC'); // Sort players } else { $query->set('meta_key', 'trx_addons_player_points'); $query->set('orderby', 'meta_value'); $query->set('order', 'DESC'); } } } else if ($post_type == TRX_ADDONS_CPT_MATCHES_PT) { $round = trx_addons_get_value_gp('round'); if ((int) $round > 0) { $query->set('post_parent', $round); $query->set('meta_key', 'trx_addons_match_date'); $query->set('orderby', 'meta_value'); $query->set('order', 'ASC'); } } } } } // Show breadcrumbs in the admin notices if ( !function_exists( 'trx_addons_cpt_sport_admin_notice' ) ) { add_action('admin_notices', 'trx_addons_cpt_sport_admin_notice', 1); function trx_addons_cpt_sport_admin_notice() { if (in_array(trx_addons_get_value_gp('action'), array('vc_load_template_preview'))) return; $screen = function_exists('get_current_screen') ? get_current_screen() : false; if (!is_object($screen) || !in_array($screen->post_type, array(TRX_ADDONS_CPT_COMPETITIONS_PT, TRX_ADDONS_CPT_ROUNDS_PT, TRX_ADDONS_CPT_PLAYERS_PT, TRX_ADDONS_CPT_MATCHES_PT)) || $screen->base=='edit-tags') return; global $post; ?> <div id="trx_addons_sport_breadcrumbs" class="notice notice-info"> <h3 class="trx_addons_sport_breadcrumbs_title"> <?php if ($screen->post_type == TRX_ADDONS_CPT_COMPETITIONS_PT) { $sport = trx_addons_get_value_gp('cpt_competitions_sports'); if ( empty($sport) ) { $terms = get_the_terms($post->ID, TRX_ADDONS_CPT_COMPETITIONS_TAXONOMY); if (is_array($terms) && count($terms)>0) $sport = $terms[0]; } else { $sport = get_term_by('slug', $sport, TRX_ADDONS_CPT_COMPETITIONS_TAXONOMY); } if (is_object($sport)) { if (substr($screen->id, 0, 5)!='edit-') { // Edit single competition ?><a href="<?php echo esc_url(get_admin_url(null, 'edit.php?post_type='.TRX_ADDONS_CPT_COMPETITIONS_PT.'&'.TRX_ADDONS_CPT_COMPETITIONS_TAXONOMY.'='.$sport->slug)); ?>" class="trx_addons_sport_breadcrumbs_item"><?php echo esc_html($sport->name); ?></a><span class="trx_addons_sport_breadcrumbs_item"><?php echo esc_html($post->post_title); ?></span><?php } else { // List of competitions ?><span class="trx_addons_sport_breadcrumbs_item"><?php echo esc_html($sport->name); ?></span><?php } } } else if ( in_array($screen->post_type, array(TRX_ADDONS_CPT_ROUNDS_PT, TRX_ADDONS_CPT_PLAYERS_PT, TRX_ADDONS_CPT_MATCHES_PT)) ) { // Detect round $round = null; if ($screen->post_type == TRX_ADDONS_CPT_MATCHES_PT) { $round = trx_addons_get_value_gp('round'); //if ( (int) $round == 0) $round = get_post_meta($post->ID, 'trx_addons_round', true); if ( (int) $round == 0) $round = $post->post_parent; $round = get_post($round); } // Detect competition $competition = trx_addons_get_value_gp('competition'); //if ( (int) $competition == 0) $competition = get_post_meta($post->ID, 'trx_addons_competition', true); if ( (int) $competition == 0) $competition = is_object($round) ? $round->post_parent : $post->post_parent; $competition = get_post($competition); // Detect sport $terms = get_the_terms($competition->ID, TRX_ADDONS_CPT_COMPETITIONS_TAXONOMY); $sport = is_array($terms) && count($terms)>0 ? $terms[0] : null; if (is_object($sport)) { ?><a href="<?php echo esc_url(get_admin_url(null, 'edit.php?post_type='.TRX_ADDONS_CPT_COMPETITIONS_PT.'&'.TRX_ADDONS_CPT_COMPETITIONS_TAXONOMY.'='.$sport->slug)); ?>" class="trx_addons_sport_breadcrumbs_item"><?php echo esc_html($sport->name); ?></a><?php } if (is_object($competition)) { // Competition link if (substr($screen->id, 0, 5)!='edit-' || $screen->post_type == TRX_ADDONS_CPT_MATCHES_PT) { ?><a href="<?php echo esc_url(get_admin_url(null, 'edit.php?post_type='.($screen->post_type == TRX_ADDONS_CPT_PLAYERS_PT ? TRX_ADDONS_CPT_PLAYERS_PT : TRX_ADDONS_CPT_ROUNDS_PT).'&competition='.intval($competition->ID))); ?>" class="trx_addons_sport_breadcrumbs_item"><?php echo esc_html($competition->post_title); ?></a><?php // Round link if ($screen->post_type == TRX_ADDONS_CPT_MATCHES_PT) { if (substr($screen->id, 0, 5)!='edit-') { ?><a href="<?php echo esc_url(get_admin_url(null, 'edit.php?post_type='.TRX_ADDONS_CPT_MATCHES_PT.'&competition='.intval($competition->ID).'&round='.intval($round->ID))); ?>" class="trx_addons_sport_breadcrumbs_item"><?php echo esc_html($round->post_title); ?></a><?php } else { // List of matches // Current round title ?><span class="trx_addons_sport_breadcrumbs_item"><?php echo esc_html($round->post_title); ?></span><?php } } else { if (substr($screen->id, 0, 5)!='edit-') { // Edit single round/player // Current round/player/match title ?><span class="trx_addons_sport_breadcrumbs_item"><?php echo !empty($post->post_title) ? esc_html($post->post_title) : esc_html__('New item', 'trx_addons'); ?></span><?php } } } else { // List of rounds/players // Current competition title ?><span class="trx_addons_sport_breadcrumbs_item"><?php echo esc_html($competition->post_title); ?></span><?php } } } ?> </h3> </div> <?php } } // Get list competitions by specified sport if ( !function_exists( 'trx_addons_cpt_sport_refresh_list_competitions' ) ) { add_filter('trx_addons_filter_refresh_list_competitions', 'trx_addons_cpt_sport_refresh_list_competitions', 10, 3); function trx_addons_cpt_sport_refresh_list_competitions($list, $sport, $not_selected=false) { return trx_addons_get_list_posts(false, array( 'post_type' => TRX_ADDONS_CPT_COMPETITIONS_PT, 'taxonomy' => TRX_ADDONS_CPT_COMPETITIONS_TAXONOMY, 'taxonomy_value' => $sport, 'meta_key' => 'trx_addons_competition_date', 'orderby' => 'meta_value', 'order' => 'ASC', 'not_selected' => $not_selected )); } } // Get list rounds by specified competition if ( !function_exists( 'trx_addons_cpt_sport_refresh_list_rounds' ) ) { add_filter('trx_addons_filter_refresh_list_rounds', 'trx_addons_cpt_sport_refresh_list_rounds', 10, 3); function trx_addons_cpt_sport_refresh_list_rounds($list, $competition, $not_selected=false) { return trx_addons_array_merge(array( 'last' => esc_html__('Last round', 'trx_addons'), 'next' => esc_html__('Next round', 'trx_addons') ), trx_addons_get_list_posts(false, array( 'post_type' => TRX_ADDONS_CPT_ROUNDS_PT, 'post_parent' => $competition, 'meta_key' => 'trx_addons_round_date', 'orderby' => 'meta_value', 'order' => 'ASC', 'not_selected' => $not_selected )) ); } } // Add shortcodes //---------------------------------------------------------------------------- require_once TRX_ADDONS_PLUGIN_DIR . TRX_ADDONS_PLUGIN_CPT . 'sport/sport-sc.php'; // Add shortcodes to Elementor if ( trx_addons_exists_elementor() && function_exists('trx_addons_elm_init') ) { require_once TRX_ADDONS_PLUGIN_DIR . TRX_ADDONS_PLUGIN_CPT . 'sport/sport-sc-elementor.php'; } // Add shortcodes to Gutenberg if ( trx_addons_exists_gutenberg() && function_exists( 'trx_addons_gutenberg_get_param_id' ) ) { require_once TRX_ADDONS_PLUGIN_DIR . TRX_ADDONS_PLUGIN_CPT . 'sport/sport-sc-gutenberg.php'; } // Add shortcodes to VC if ( trx_addons_exists_vc() && function_exists( 'trx_addons_vc_add_id_param' ) ) { require_once TRX_ADDONS_PLUGIN_DIR . TRX_ADDONS_PLUGIN_CPT . 'sport/sport-sc-vc.php'; }
Edit
Rename
Chmod
Delete
FILE
FOLDER
Name
Size
Permission
Action
gutenberg
---
0755
players.png
2088 bytes
0644
points.png
1347 bytes
0644
sport-sc-elementor.php
13902 bytes
0644
sport-sc-gutenberg.php
9013 bytes
0644
sport-sc-vc.php
10937 bytes
0644
sport-sc.php
4348 bytes
0644
sport.admin.js
3433 bytes
0644
sport.competitions.php
20138 bytes
0644
sport.css
11248 bytes
0644
sport.css.map
7108 bytes
0644
sport.elementor.editor.js
3730 bytes
0644
sport.js
464 bytes
0644
sport.matches.php
21214 bytes
0644
sport.php
19712 bytes
0644
sport.players.php
13279 bytes
0644
sport.png
2650 bytes
0644
sport.responsive.css
2090 bytes
0644
sport.responsive.css.map
1266 bytes
0644
sport.responsive.scss
2014 bytes
0644
sport.rounds.php
12652 bytes
0644
sport.scss
9454 bytes
0644
tpl.archive-item.php
5221 bytes
0644
tpl.archive.php
1983 bytes
0644
tpl.sc_matches.default-main.php
4373 bytes
0644
tpl.sc_matches.default-other.php
3346 bytes
0644
tpl.sc_matches.default.php
5000 bytes
0644
tpl.sc_points.default.php
3575 bytes
0644
tpl.single.competitions.php
7880 bytes
0644
tpl.single.matches.php
8215 bytes
0644
tpl.single.php
2950 bytes
0644
tpl.single.players.php
7094 bytes
0644
tpl.single.rounds.php
5039 bytes
0644
N4ST4R_ID | Naxtarrr