File Editor
Directories:
.. (Back)
Files:
Auth.php
Connector.php
PUE.php
View.php
Create New File
Create
Edit File: View.php
<?php /** * Class Tribe__Promoter__View */ class Tribe__Promoter__View extends Tribe__Template { /** * Tribe__Promoter__View constructor. * * @since 4.9 */ public function __construct() { $this->set_template_origin( Tribe__Main::instance() ); $this->set_template_folder( 'src/views/promoter' ); $this->set_template_context_extract( true ); $this->set_template_folder_lookup( true ); } /** * Add the rewrite rules and tags. * * @since 4.9 */ public function add_rewrites() { add_rewrite_rule( 'tribe-promoter-auth/?$', 'index.php?tribe-promoter-auth-check=1', 'top' ); add_rewrite_tag( '%tribe-promoter-auth-check%', '([^&]+)' ); } /** * Get the redirect URL for finishing onboarding * * @since 4.9.6 * * @return string Redirect URL for completing onboarding. */ public function authorized_redirect_url() { $url = 'https://promoter.theeventscalendar.com/welcome/review'; if ( defined( 'TRIBE_PROMOTER_AUTHORIZED_REDIRECT_URL' ) ) { $url = TRIBE_PROMOTER_AUTHORIZED_REDIRECT_URL; } /** * The url for redirecting in order to complete onboarding * * @since 4.9.6 * * @param string $url Redirect URL. */ return apply_filters( 'tribe_promoter_authorized_redirect_url', $url ); } /** * Display the auth check page when the correct permalink is loaded. * * @since 4.9 */ public function display_auth_check_view() { global $wp_query; $promoter_key = tribe_get_request_var( 'promoter_key' ); $license_key = tribe_get_request_var( 'license_key' ); if ( empty( $promoter_key ) || empty( $wp_query->query_vars['tribe-promoter-auth-check'] ) ) { return; } $is_admin = is_user_logged_in() && current_user_can( 'manage_options' ) && current_user_can( 'read_private_posts' ); $authorized = false; $auth_error = false; if ( $is_admin && ! empty( $_POST['promoter_authenticate'] ) ) { /** @var Tribe__Promoter__Auth $promoter_auth */ $promoter_auth = tribe( 'promoter.auth' ); $authorized = $promoter_auth->authorize_with_connector(); $auth_error = ! $authorized; } if ( $authorized ) { wp_redirect( esc_url_raw( $this->authorized_redirect_url() ) ); } else { $this->template( 'auth', [ 'authorized' => $authorized, 'auth_error' => $auth_error, 'logged_in' => is_user_logged_in(), 'admin' => $is_admin, 'promoter_key' => $promoter_key, 'license_key' => $license_key, ], true ); } tribe_exit(); } }
Save Changes
Rename File
Rename