Posted June 17Jun 17 Can someone null this Wpcasterpro theme I will be gladly be thankful. I have shared the link of the untouch files. https://mega.nz/file/B98l1JIL#QGFbLwg02ovGulzC28ZeuD3D0x1F0lnS6B4rRzpA378
July 15Jul 15 @DoomApps first: install the theme without installing / activating the plugins than: Replace wpcasterpro/inc/tgm-plugin-activation/inc/welcome-page.php : <?php /** * @package TGM-Plugin-Activation * @subpackage qtt **/ if (!defined('ABSPATH')) { exit; // Exit if accessed directly. } /** * Disable activation link generation. * * @return string|null */ function qtt_disable_activation_link() { if (!isset($_GET)) { return null; } $qtt_iid = qtt_iid(); if (isset($_GET['qttm-tgm-remove-act-nonce']) && isset($_GET['qttm-tgm-remove-act'])) { $nonce = $_GET['qttm-tgm-remove-act-nonce']; if (wp_verify_nonce($nonce, 'remove-act-nonce')) { if (isset($_GET['qttm-tgm-remove-act-conf']) && $_GET['qttm-tgm-remove-act-conf'] == '2') { delete_option('qtt_' . 'ac' . 'k_' . $qtt_iid); } else { esc_html_e('Invalid request', 'wpcasterpro'); } } else { echo 'Invalid'; } } else { $urladmin = admin_url('themes.php?page=qttm-welcome'); $url = add_query_arg( array( 'qttm-tgm-remove-act' => '1', 'qttm-tgm-remove-act-conf' => '2', 'qttm-tgm-remove-act-nonce' => wp_create_nonce('remove-act-nonce') ), $urladmin ); ob_start(); ?> <p class="qttm-welcome__center"><?php esc_html_e("Please confirm to remove activation:", 'wpcasterpro') ?><a href="<?php echo esc_url($url); ?>"><?php esc_html_e('click here', 'wpcasterpro'); ?></a></p> <?php return ob_get_clean(); } return null; } /** * qtt Welcome Page Content. */ if (!function_exists('qtt_welcome_page_content')) { function qtt_welcome_page_content() { if (!is_admin()) { return; } $qtt_iid = qtt_iid(true); $msg_rem = qtt_disable_activation_link(); $current_theme = wp_get_theme(); if (is_child_theme()) { $current_theme = $current_theme->parent(); } $title = sprintf( esc_html__('Thank you for choosing %1$s %2$s', 'wpcasterpro'), $current_theme->name, $current_theme->version ); ?> <div class="qttm-welcome"> <div class="qttm-welcome__container"> <div class="qttm-welcome__wrapper"> <div class="qttm-welcome__logo"> <img src="<?php echo esc_url(get_theme_file_uri('/inc/tgm-plugin-activation/img/logo.png')); ?>" alt="<?php esc_attr_e('Logo', 'wpcasterpro'); ?>"> </div> <h1 class="qttm-welcome__title"><?php echo esc_html($title); ?></h1> <?php if (isset($msg_rem)) { ?> <p class="qttm-welcome__center"><?php echo wp_kses_post($msg_rem); ?></p><?php } ?> <form class="qttm-welcome__form" action="<?php echo esc_url(admin_url('themes.php?page=qttm-welcome')); ?>" method="post"> <label class="qttm-welcome__form-label" for="qttpcode"><?php esc_html_e('Please enter your purchase code:', 'wpcasterpro'); ?></label> <input class="qttm-welcome__form-input" type="text" id="qttpcode" name="qttpcode" value="" placeholder="<?php esc_attr_e('Enter your purchase code here', 'wpcasterpro'); ?>" required> <?php wp_nonce_field('action_verify', 'nonce_verify_pc'); ?> <button class="qttm-welcome__form-button" type="submit"><?php esc_html_e('Verify', 'wpcasterpro'); ?></button> </form> </div> </div> </div> <?php } } Replace wpcasterpro/inc/tgm-plugin-activation/inc/message.php : <?php /** * @package TGM-Plugin-Activation * @subpackage qtt **/ if (!defined('ABSPATH')) { exit; // Exit if accessed directly. } /** * Display activation message and other details. * * @return string */ function qtt_message_tgm() { ob_start(); $item_remote = qtt_iid(); ?> <?php /** * Display the product ID if set in remote */ if ('pending' !== $item_remote) { ?> <p><?php esc_html_e('Item ID: ', 'wpcasterpro'); echo esc_html($item_remote); ?></p> <?php } /** * Display a force refresh link. Can be used every 30 seconds. * Triggers product ID update as well */ if (get_transient('qtt_tgm_refreshed')) { ?> <p><?php esc_html_e("The plugins list is up to date.", 'wpcasterpro'); ?></p> <?php } else { $urladmin = admin_url('themes.php?page=' . qtt_tgmpa_page()); $url = add_query_arg( array( 'tgm-refresh-iid' => '1', 'tgmpa-force' => '1', 'tgmpa-force-nonce' => wp_create_nonce('tgmpa-force-nonce') ), $urladmin ); ?> <p><?php esc_html_e("If you just updated your theme, please ", 'wpcasterpro'); ?><a href="<?php echo esc_url($url); ?>"><?php esc_html_e('Try to refresh clicking here', 'wpcasterpro'); ?></a></p> <?php } return ob_get_clean(); } Replace wpcasterpro/inc/tgm-plugin-activation/inc/error.php : <?php /** * @package TGM-Plugin-Activation * @subpackage qtt **/ if (!defined('ABSPATH')) { exit; // Exit if accessed directly. } /** * Error notices */ // Success notice for plugins list update function qtt_plugins_refresh__success() { ?> <div class="notice notice-success is-dismissible"> <h4><?php esc_html_e('The plugins list was successfully updated', 'wpcasterpro'); ?></h4> </div> <?php } // Warning notice for refreshing too fast function qtt_tgm_remote_refreshed__message() { ?> <div class="notice notice-warning is-dismissible"> <h4><?php esc_html_e('Refreshing the page too often. Please wait a a few seconds to avoid overloads.', 'wpcasterpro'); ?></h4> </div> <?php } // Error notice for empty list of required plugins function qtt_plugins_notice__refresh() { $urladmin = admin_url('themes.php?page=' . qtt_tgmpa_page()); $url = add_query_arg( array( 'tgmpa-force' => '1', 'tgmpa-force-nonce2' => wp_create_nonce('tgmpa-force-nonce2'), 'tgmpa-force-nonce' => wp_create_nonce('tgmpa-force-nonce') ), $urladmin ); ?> <div class="notice notice-error is-dismissible"> <h3><?php esc_html_e('qtt Notice', 'wpcasterpro'); ?></h3> <p><?php esc_html_e('The stored list of required plugins is empty, do you want to try again?', 'wpcasterpro'); ?></p> <p><?php esc_html_e('If you need support please contact us via email providing the Envato purchase code.', 'wpcasterpro'); ?> <?php echo qtt_support_message(); ?></p> <p><?php esc_html_e('If you already tried this, please wait some time, the server can be under maintenance.', 'wpcasterpro'); ?></p> <p><a href="<?php echo esc_url($url); ?>"><?php esc_html_e('Try to refresh clicking here', 'wpcasterpro'); ?></a></p> </div> <?php } // Activation notice function qtt_plugins_notice__activationnag() { $scr = get_current_screen(); if ($scr->id !== 'appearance_page_' . qtt_tgmpa_page() && $scr->id !== 'appearance_page_qttm-welcome') { $current_theme = wp_get_theme(); if (is_child_theme()) { $current_theme = $current_theme->parent(); } $title = sprintf( esc_html__('Thank you for choosing %1$s', 'wpcasterpro'), $current_theme->name ); ?> <div class="notice notice-success is-dismissible qttm-welcome__notice"> <img src="<?php echo esc_url(get_theme_file_uri('/inc/tgm-plugin-activation/img/logo.png')); ?>" alt="<?php esc_attr_e('Logo', 'wpcasterpro'); ?>"> <h3><?php echo wp_strip_all_tags($title); ?></h3> <p><a href="<?php echo admin_url() . 'themes.php?page=qttm-welcome'; ?>"><?php esc_html_e('Please activate your license', 'wpcasterpro'); ?></a> <?php esc_html_e("to install the premium plugins and demo contents", 'wpcasterpro') ?></p> </div> <?php } } add_action('admin_notices', 'qtt_plugins_notice__activationnag'); /** * Add a one-time-only admin notice to check the documentation and support */ if (!function_exists('qtt_manual_notice')) { add_action('admin_notices', 'qtt_manual_link_notice'); function qtt_manual_link_notice() { $dismissed = get_option('qtt_manual_dismissed', false); if (!$dismissed && isset($_POST)) { if (array_key_exists('qtt_dismiss_docu_link', $_POST) && array_key_exists('qtt_manual_dismiss', $_POST)) { if ($_POST['qtt_dismiss_docu_link'] == 'yes') { if (!wp_verify_nonce($_POST['qtt_manual_dismiss'], 'qtt_action_dismiss_notice')) { wp_die('Verification error. The theme security system triggered a block. Please go back to your admin home.'); } else { add_option('qtt_manual_dismissed', '1', '', 'yes'); $dismissed = true; } } } } if (!$dismissed) { ?> <div class="notice notice-success qttm-welcome__notice"> <img src="<?php echo esc_url(get_theme_file_uri('/inc/tgm-plugin-activation/img/docs.png')); ?>" alt="<?php esc_attr_e('Logo', 'wpcasterpro'); ?>"> <form class="qttm-notice__form" method="post" action="<?php echo admin_url(); ?>"> <input type="hidden" name="qtt_dismiss_docu_link" id="qtt_dismiss_docu_link" value="yes"> <?php wp_nonce_field('qtt_action_dismiss_notice', 'qtt_manual_dismiss'); ?> <h3><?php esc_html_e('Theme documentation and support', 'wpcasterpro'); ?></h3> <p><?php esc_html_e("New to this theme? Please check our", 'wpcasterpro') ?> <a href="<?php echo qtt_connector_documentation_url(); ?>" target="_blank"><?php esc_html_e('documentation and support', 'wpcasterpro'); ?></a>. </p> <input type="submit" value="<?php echo esc_attr(_e('Dismiss notice for good', 'wpcasterpro')); ?>" class="qttm-btn button button-primary"> </form> </div> <?php } } } // Generic error notices // Error notice for generic plugin search error function qtt_plugins_notice__error() { ?> <div class="notice notice-error is-dismissible"> <h3><?php esc_html_e('qtt Notice', 'wpcasterpro'); ?></h3> <p><?php esc_html_e('We are experiencing an error while searching for the required plugins. Please make sure your server or firewall are not blocking outgoing requests to our server.', 'wpcasterpro'); ?></p> <p><?php esc_html_e('If you need support please contact us via email, providing the Envato purchase code.', 'wpcasterpro'); ?> <?php echo qtt_support_message(); ?></p> <p><a href="https://help.market.envato.com/hc/en-us/articles/202822600-Where-Is-My-Purchase-Code-" target="_blank"><?php esc_html_e('Where is my purchase code?', 'wpcasterpro'); ?></a></p> </div> <?php } // Warning notice for empty list of plugins function qtt_plugins_notice__nolist() { ?> <div class="notice notice-warning is-dismissible"> <h3><?php esc_html_e('qtt Notice', 'wpcasterpro'); ?></h3> <p><?php esc_html_e('It seems the list of plugins is actually empty. You can try searching again in a couple of minutes.', 'wpcasterpro'); ?></p> <p><?php esc_html_e('If you need support please contact us via email, providing the Envato purchase code.', 'wpcasterpro'); ?> <?php echo qtt_support_message(); ?></p> <p><a href="https://help.market.envato.com/hc/en-us/articles/202822600-Where-Is-My-Purchase-Code-" target="_blank"><?php esc_html_e('Where is my purchase code?', 'wpcasterpro'); ?></a></p> </div> <?php } // Error notice for database update error function qtt_plugins_update_error() { ?> <div class="notice notice-error is-dismissible"> <h3><?php esc_html_e('qtt TGM Notice', 'wpcasterpro'); ?></h3> <p><?php esc_html_e('There is some issue while saving data in your database, please check database permissions', 'wpcasterpro'); ?></p> <p><?php esc_html_e('If you need support please check the Support section of your manual.', 'wpcasterpro'); ?></p> <p><a href="https://help.market.envato.com/hc/en-us/articles/202822600-Where-Is-My-Purchase-Code-" target="_blank"><?php esc_html_e('Where is my purchase code?', 'wpcasterpro'); ?></a></p> </div> <?php } // Error notice for connection error function qtt_plugins_conn__error() { ?> <div class="notice notice-error is-dismissible"> <h3><?php esc_html_e('qtt Notice', 'wpcasterpro'); ?></h3> <p><?php esc_html_e('Your server is being blocked while searching for plugins. Please make sure your server or firewall are not blocking outgoing requests to our server.', 'wpcasterpro'); ?></p> <p><?php esc_html_e('If you need support please contact us via email at, providing the Envato purchase code.', 'wpcasterpro'); ?> <?php echo qtt_support_message(); ?></p> <p><a href="https://help.market.envato.com/hc/en-us/articles/202822600-Where-Is-My-Purchase-Code-" target="_blank"><?php esc_html_e('Where is my purchase code?', 'wpcasterpro'); ?></a></p> </div> <?php } // Error notice for server connection issue function qtt_plugins_conn__error_server() { ?> <div class="notice notice-error is-dismissible"> <h3><?php esc_html_e('qtt TGM Notice', 'wpcasterpro'); ?></h3> <p><?php esc_html_e('Sorry, our server is temporarily unable to retrieve the plugins list. You may try again in a few minutes or contact our helpdesk at, providing the Envato purchase code.', 'wpcasterpro'); ?> <?php echo qtt_support_message(); ?></p> <p><a href="https://help.market.envato.com/hc/en-us/articles/202822600-Where-Is-My-Purchase-Code-" target="_blank"><?php esc_html_e('Where is my purchase code?', 'wpcasterpro'); ?></a></p> </div> <?php } // Error notice for missing product ID function qtt_plugins_id_miss() { ?> <div class="notice notice-error is-dismissible"> <h3><?php esc_html_e('qtt TGM Notice', 'wpcasterpro'); ?></h3> <p><?php esc_html_e('Your server is not able to parse the product ID. Your firewall or server settings are blocking the request.', 'wpcasterpro'); ?></p> <p><?php esc_html_e('If you need support please contact us via email, providing the Envato purchase code.', 'wpcasterpro'); ?> <?php echo qtt_support_message(); ?></p> <p><a href="https://help.market.envato.com/hc/en-us/articles/202822600-Where-Is-My-Purchase-Code-" target="_blank"><?php esc_html_e('Where is my purchase code?', 'wpcasterpro'); ?></a></p> </div> <?php } // Error notice for server issue with product ID function qtt_plugins_id_miss_server() { ?> <div class="notice notice-error is-dismissible"> <h3><?php esc_html_e('qtt TGM Notice', 'wpcasterpro'); ?></h3> <p><?php esc_html_e('Sorry, our server is not able to handle your request. You may try again in a few minutes or contact our helpdesk, providing the Envato purchase code.', 'wpcasterpro'); ?> <?php echo qtt_support_message(); ?></p> <p><a href="https://help.market.envato.com/hc/en-us/articles/202822600-Where-Is-My-Purchase-Code-" target="_blank"><?php esc_html_e('Where is my purchase code?', 'wpcasterpro'); ?></a></p> </div> <?php } // Error notice for server responding incorrectly function qtt_plugins_conn__error_sever() { ?> <div class="notice notice-error is-dismissible"> <h3><?php esc_html_e('Activation required', 'wpcasterpro'); ?></h3> <p><?php esc_html_e('Premium plugins require a valid purchase code activation.', 'wpcasterpro'); ?> <?php echo qtt_support_message(); ?></p> </div> <?php } // Function to check if a purchase code is stored and valid function qtt_tgm_pcv($req = false) { if (!is_admin()) { return; } if (trim($req) == 'pending') { return true; } $rid = trim($req); $rok = get_option('qtt_ack_' . trim($rid)); if ($rok) { return true; } return false; } // Function to check if the domain matches the stored purchase code function is_valid_domain($rid) { $rok = get_option('qtt_ack_' . trim($rid)); if (json_decode(base64_decode(base64_decode($rok)))->url == str_replace(array('http://', 'https://'), '', get_site_url())) { return false; } }
Can someone null this Wpcasterpro theme I will be gladly be thankful. I have shared the link of the untouch files.
https://mega.nz/file/B98l1JIL#QGFbLwg02ovGulzC28ZeuD3D0x1F0lnS6B4rRzpA378