REDROOM
PHP 8.2.31
Path:
Logout
Edit File
Size: 25.47 KB
Close
/home/nshryvcy/taramarriagebureau.com/wp-content/plugins/trx_utils/trx_utils.php
Text
Base64
<?php /* Plugin Name: ThemeREX Utilities Plugin URI: http://themerex.net Description: Utils for files, directories, post type and taxonomies manipulations Version: 3.3.4 Author: ThemeREX Author URI: http://themerex.net */ // Plugin's storage if ( ! defined( 'TRX_UTILS_PLUGIN_DIR' ) ) define( 'TRX_UTILS_PLUGIN_DIR', plugin_dir_path( __FILE__ ) ); if ( ! defined( 'TRX_UTILS_PLUGIN_URL' ) ) define( 'TRX_UTILS_PLUGIN_URL', plugin_dir_url( __FILE__ ) ); if ( ! defined( 'TRX_UTILS_PLUGIN_BASE' ) ) define( 'TRX_UTILS_PLUGIN_BASE', dirname( plugin_basename( __FILE__ ) ) ); // Don't load directly if ( ! defined( 'ABSPATH' ) ) { die( '-1' ); } // Current version if ( ! defined( 'TRX_UTILS_VERSION' ) ) { define( 'TRX_UTILS_VERSION', '3.3.4' ); } global $TRX_UTILS_STORAGE; $TRX_UTILS_STORAGE = array( // Plugin's location and name 'plugin_dir' => plugin_dir_path(__FILE__), 'plugin_url' => plugin_dir_url(__FILE__), 'plugin_base'=> explode('/', plugin_basename(__FILE__)), 'plugin_active' => false, // Custom post types and taxonomies 'register_taxonomies' => array(), 'register_post_types' => array() ); if (!function_exists('trx_utils_wp_theme_setup')) { add_action( 'after_setup_theme', 'trx_utils_wp_theme_setup'); function trx_utils_wp_theme_setup() { add_action('wp_enqueue_scripts', 'trx_utils_core_frontend_scripts'); add_action('admin_enqueue_scripts', 'trx_utils_post_admin_scripts'); } } // Enqueue scripts and styles if ( !function_exists( 'trx_utils_core_frontend_scripts' ) ) { function trx_utils_core_frontend_scripts() { // Google map if ( planmyday_get_custom_option('show_googlemap')=='yes' && planmyday_get_theme_option('api_google') != '') { $api_key = planmyday_get_theme_option('api_google'); wp_enqueue_script( 'googlemap', planmyday_get_protocol().'://maps.google.com/maps/api/js'.($api_key ? '?key='.$api_key : ''), array(), null, true ); wp_enqueue_script( 'planmyday-googlemap-script', trx_utils_get_file_url('js/core.googlemap.js'), array(), null, true ); } if ( is_single() && planmyday_get_custom_option('show_reviews')=='yes' ) { wp_enqueue_script( 'planmyday-core-reviews-script', trx_utils_get_file_url('js/core.reviews.js'), array('jquery'), null, true ); } } } // Shortcodes init if (!function_exists('trx_utils_sc_init')) { add_action( 'after_setup_theme', 'trx_utils_sc_init'); function trx_utils_sc_init() { global $TRX_UTILS_STORAGE; if ( !($TRX_UTILS_STORAGE['plugin_active'] = apply_filters('trx_utils_active', $TRX_UTILS_STORAGE['plugin_active'])) ) return; // Include shortcodes require_once trx_utils_get_file_dir('shortcodes/core.shortcodes.php'); } } // Widgets init if (!function_exists('trx_utils_setup_widgets')) { add_action( 'widgets_init', 'trx_utils_setup_widgets', 9 ); function trx_utils_setup_widgets() { global $TRX_UTILS_STORAGE; if ( !($TRX_UTILS_STORAGE['plugin_active'] = apply_filters('trx_utils_active', $TRX_UTILS_STORAGE['plugin_active'])) ) return; //Include widgets require_once trx_utils_get_file_dir('widgets/calendar.php'); require_once trx_utils_get_file_dir('widgets/categories.php'); require_once trx_utils_get_file_dir('widgets/popular_posts.php'); require_once trx_utils_get_file_dir('widgets/recent_news.php'); require_once trx_utils_get_file_dir('widgets/recent_posts.php'); require_once trx_utils_get_file_dir('widgets/socials.php'); } } // Plugin activate hook if (!function_exists('trx_utils_activate')) { register_activation_hook(__FILE__, 'trx_utils_activate'); function trx_utils_activate() { update_option('trx_utils_just_activated', 'yes'); } } // Plugin init if (!function_exists('trx_utils_setup')) { add_action( 'init', 'trx_utils_setup', 8 ); function trx_utils_setup() { global $TRX_UTILS_STORAGE; // Load translation files trx_utils_load_plugin_textdomain(); if (count($TRX_UTILS_STORAGE['register_taxonomies']) > 0) { foreach ($TRX_UTILS_STORAGE['register_taxonomies'] as $name=>$args) { do_action('trx_utils_custom_taxonomy', $name, $args); } } if (count($TRX_UTILS_STORAGE['register_post_types']) > 0) { foreach ($TRX_UTILS_STORAGE['register_post_types'] as $name=>$args) { do_action('trx_utils_custom_post_type', $name, $args); } } // Check if this is first run if (get_option('trx_utils_just_activated')=='yes') { update_option('trx_utils_just_activated', 'no'); flush_rewrite_rules(); } } } // Admin scripts if (!function_exists('trx_utils_post_admin_scripts')) { function trx_utils_post_admin_scripts() { if (planmyday_storage_get_array('post_override_options', 'page')=='post' && planmyday_storage_isset('options', 'show_reviews')) wp_enqueue_script( 'planmyday-core-reviews-script', trx_utils_get_file_url('js/core.reviews.js'), array('jquery'), null, true ); } } /* Support for the custom post types and taxonomies ------------------------------------------------------ */ // Register theme required types and taxes if (!function_exists('trx_utils_theme_support')) { function trx_utils_theme_support($type, $name, $args=false) { global $TRX_UTILS_STORAGE; if ($type == 'taxonomy') $TRX_UTILS_STORAGE['register_taxonomies'][$name] = $args; else $TRX_UTILS_STORAGE['register_post_types'][$name] = $args; } } if (!function_exists('trx_utils_theme_support_pt')) { function trx_utils_theme_support_pt($name, $args=false) { global $TRX_UTILS_STORAGE; $TRX_UTILS_STORAGE['register_post_types'][$name] = $args; } } if (!function_exists('trx_utils_theme_support_tx')) { function trx_utils_theme_support_tx($name, $args=false) { global $TRX_UTILS_STORAGE; $TRX_UTILS_STORAGE['register_taxonomies'][$name] = $args; } } // Add rewrite rules for custom post type if (!function_exists('trx_utils_add_rewrite_rules')) { function trx_utils_add_rewrite_rules($name) { add_rewrite_rule(trim($name).'/?$', 'index.php?post_type='.trim($name), 'top'); // add_rewrite_rule(trim($name).'/([^/]+)/?$', 'index.php?'.trim($name).'=$matches[1]', 'top'); // add_rewrite_tag('%'.trim($name).'%', '([^&]+)'); } } // Include supported post types and taxonomies require_once 'includes/plugin.files.php'; require_once 'includes/plugin.debug.php'; require_once 'includes/plugin.html.php'; require_once 'includes/plugin.users.php'; require_once 'includes/support.attachment.php'; require_once 'includes/support.clients.php'; require_once 'includes/support.courses.php'; require_once 'includes/support.matches.php'; require_once 'includes/support.menuitems.php'; require_once 'includes/support.services.php'; require_once 'includes/support.team.php'; require_once 'includes/support.testimonials.php'; require_once 'includes/core.socials.php'; require_once 'includes/theme.shortcodes.php'; require_once trx_utils_get_file_dir('includes/core.reviews.php'); /* Load plugin's translation files ------------------------------------------------------------------- */ if ( !function_exists( 'trx_utils_load_plugin_textdomain' ) ) { function trx_utils_load_plugin_textdomain($domain='trx_utils') { if ( is_textdomain_loaded( $domain ) && !is_a( $GLOBALS['l10n'][ $domain ], 'NOOP_Translations' ) ) return true; return load_plugin_textdomain( $domain, false, plugin_basename( dirname( __FILE__ ) ) . '/languages' ); } } /* Load required styles and scripts for the frontend ------------------------------------------------------ */ if ( !function_exists( 'trx_utils_load_scripts_front' ) ) { add_action("wp_enqueue_scripts", 'trx_utils_load_scripts_front'); function trx_utils_load_scripts_front() { trx_utils_enqueue_script( 'trx_utils', trx_utils_get_file_url('js/trx_utils.js'), array('jquery'), null, true ); // Add variables into JS wp_localize_script( 'trx_utils', 'TRX_UTILS_STORAGE', apply_filters('trx_utils_localize_script', array( // AJAX parameters 'ajax_url' => esc_url(admin_url('admin-ajax.php')), 'ajax_nonce'=> esc_attr(wp_create_nonce(admin_url('admin-ajax.php'))), // Site base url 'site_url' => esc_url(get_site_url()), // User logged in 'user_logged_in'=> is_user_logged_in() ? 1 : 0, // E-mail mask to validate forms 'email_mask' => '^([a-zA-Z0-9_\\-]+\\.)*[a-zA-Z0-9_\\-]+@[a-z0-9_\\-]+(\\.[a-z0-9_\\-]+)*\\.[a-z]{2,6}$', // JS Messages 'msg_ajax_error' => addslashes(esc_html__('Invalid server answer!', 'trx_utils')), 'msg_error_global' => addslashes(esc_html__('Invalid field\'s value!', 'trx_utils')), 'msg_name_empty' => addslashes(esc_html__("The name can't be empty", 'trx_utils')), 'msg_email_empty' => addslashes(esc_html__('Too short (or empty) email address', 'trx_utils')), 'msg_email_not_valid' => addslashes(esc_html__('Invalid email address', 'trx_utils')), 'msg_text_empty' => addslashes(esc_html__("The message text can't be empty", 'trx_utils')), 'msg_send_complete' => addslashes(esc_html__("Send message complete!", 'trx_utils')), 'msg_send_error' => addslashes(esc_html__('Transmit failed!', 'trx_utils')), ) ) ); } } /* Shortcodes ------------------------------------------------------ */ // Register theme required shortcodes if (!function_exists('trx_utils_require_shortcode')) { function trx_utils_require_shortcode($name, $callback) { add_shortcode($name, $callback); } } // AJAX Callback: Send contact form data if ( !function_exists( 'planmyday_sc_form_send' ) ) { function planmyday_sc_form_send() { if ( !wp_verify_nonce( planmyday_get_value_gp('nonce'), admin_url('admin-ajax.php') ) ) die(); $response = array('error'=>''); if (!($contact_email = planmyday_get_theme_option('contact_email')) && !($contact_email = planmyday_get_theme_option('admin_email'))) $response['error'] = esc_html__('Unknown admin email!', 'trx_utils'); else { $type = planmyday_substr($_REQUEST['type'], 0, 7); parse_str($_POST['data'], $post_data); if (in_array($type, array('form_1', 'form_2'))) { $user_name = planmyday_strshort($post_data['username'], 100); $user_email = planmyday_strshort($post_data['email'], 100); $user_subj = planmyday_strshort($post_data['subject'], 100); $user_msg = planmyday_strshort($post_data['message'], planmyday_get_theme_option('message_maxlength_contacts')); $subj = sprintf(esc_html__('Site %s - Contact form message from %s', 'trx_utils'), get_bloginfo('site_name'), $user_name); $msg = "\n".esc_html__('Name:', 'trx_utils') .' '.esc_html($user_name) . "\n".esc_html__('E-mail:', 'trx_utils') .' '.esc_html($user_email) . "\n".esc_html__('Subject:', 'trx_utils').' '.esc_html($user_subj) . "\n".esc_html__('Message:', 'trx_utils').' '.esc_html($user_msg); } else { $subj = sprintf(esc_html__('Site %s - Custom form data', 'trx_utils'), get_bloginfo('site_name')); $msg = ''; if (is_array($post_data) && count($post_data) > 0) { foreach ($post_data as $k=>$v) { if (is_array($v) || is_object($v)) { $msg .= "\n{$k}: ["; foreach ($v as $k1=>$v1) $msg .= ($k1 > 0 ? ' ,' : '') . $v1; $msg .= ']'; } else $msg .= "\n{$k}: $v"; } } } $msg .= "\n\n............. " . get_bloginfo('site_name') . " (" . esc_url(home_url('/')) . ") ............"; $mail = planmyday_get_theme_option('mail_function') == 'mail' ? 'mail' : 'wp_mail'; if (is_email($contact_email) && !@$mail($contact_email, $subj, apply_filters('planmyday_filter_form_send_message', $msg))) { $response['error'] = esc_html__('Error send message!', 'trx_utils'); } echo json_encode($response); die(); } } } /* PHP settings ------------------------------------------------------ */ // Change memory limit if (!function_exists('trx_utils_set_memory')) { function trx_utils_set_memory($value) { @ini_set('memory_limit', $value); } } /* Twitter API ------------------------------------------------------ */ if (!function_exists('trx_utils_twitter_acquire_data')) { function trx_utils_twitter_acquire_data($cfg) { if (empty($cfg['mode'])) $cfg['mode'] = 'user_timeline'; $data = get_transient("twitter_data_".($cfg['mode'])); if (!$data) { require_once( plugin_dir_path( __FILE__ ) . 'lib/tmhOAuth/tmhOAuth.php' ); $tmhOAuth = new tmhOAuth(array( 'consumer_key' => $cfg['consumer_key'], 'consumer_secret' => $cfg['consumer_secret'], 'token' => $cfg['token'], 'secret' => $cfg['secret'] )); $code = $tmhOAuth->user_request(array( 'url' => $tmhOAuth->url(trx_utils_twitter_mode_url($cfg['mode'])) )); if ($code == 200) { $data = json_decode($tmhOAuth->response['response'], true); if (isset($data['status'])) { $code = $tmhOAuth->user_request(array( 'url' => $tmhOAuth->url(trx_utils_twitter_mode_url($cfg['oembed'])), 'params' => array( 'id' => $data['status']['id_str'] ) )); if ($code == 200) $data = json_decode($tmhOAuth->response['response'], true); } set_transient("twitter_data_".($cfg['mode']), $data, 60*60); } } else if (!is_array($data) && substr($data, 0, 2)=='a:') { $data = unserialize($data); } return $data; } } if (!function_exists('trx_utils_twitter_mode_url')) { function trx_utils_twitter_mode_url($mode) { $url = '/1.1/statuses/'; if ($mode == 'user_timeline') $url .= $mode; else if ($mode == 'home_timeline') $url .= $mode; return $url; } } // Add scroll to top button if (!function_exists('planmyday_footer_add_scroll_to_top')) { add_action('wp_footer', 'planmyday_footer_add_scroll_to_top', 1); function planmyday_footer_add_scroll_to_top() { ?><a href="#" class="scroll_to_top icon-up-small" title="<?php esc_attr_e('Scroll to top', 'trx_utils'); ?>"></a><?php } } /* LESS compilers ------------------------------------------------------ */ // Compile less-files if (!function_exists('trx_utils_less_compiler')) { function trx_utils_less_compiler($list, $opt) { $success = true; // Load and create LESS Parser if ($opt['compiler'] == 'lessc') { // 1: Compiler Lessc require_once( plugin_dir_path( __FILE__ ) . 'lib/lessc/lessc.inc.php' ); } else { // 2: Compiler Less require_once( plugin_dir_path( __FILE__ ) . 'lib/less/Less.php' ); } foreach($list as $file) { if (empty($file) || !file_exists($file)) continue; $file_css = substr_replace($file , 'css', strrpos($file , '.') + 1); // Check if time of .css file after .less - skip current .less if (!empty($opt['check_time']) && file_exists($file_css)) { $css_time = filemtime($file_css); if ($css_time >= filemtime($file) && ($opt['utils_time']==0 || $css_time > $opt['utils_time'])) continue; } // Compile current .less file try { // Create Parser if ($opt['compiler'] == 'lessc') { $parser = new lessc; if (!empty($opt['import'])) $parser->setImportDir($opt['import']); //$parser->registerFunction("replace", "trx_utils_less_func_replace"); if ($opt['compressed']) $parser->setFormatter("compressed"); } else { if ($opt['compressed']) $args = array('compress' => true); else { $args = array('compress' => false); if ($opt['map'] != 'no') { $args['sourceMap'] = true; if ($opt['map'] == 'external') { $args['sourceMapWriteTo'] = $file.'.map'; $args['sourceMapURL'] = str_replace( array(get_template_directory(), get_stylesheet_directory()), array(get_template_directory_uri(), get_stylesheet_directory_uri()), $file) . '.map'; } } } $parser = new Less_Parser($args); } // Parse main file $css = ''; if ($opt['map'] != 'no' || !empty($opt['parse_files'])) { if ($opt['map'] != 'no' || $opt['compiler'] == 'less') { // Parse main file $parser->parseFile( $file, ''); // Parse less utils if (is_array($opt['utils']) && count($opt['utils']) > 0) { foreach($opt['utils'] as $utility) { $parser->parseFile( $utility, ''); } } // Parse less vars (from Theme Options) if (!empty($opt['vars'])) { $parser->parse($opt['vars']); } // Get compiled CSS code $css = $parser->getCss(); // Reset LESS engine $parser->Reset(); } else { $css = $parser->compileFile($file); } } else if (($text = file_get_contents($file))!='') { $parts = $opt['separator'] != '' ? explode($opt['separator'], $text) : array($text); for ($i=0; $i<count($parts); $i++) { $text = $parts[$i] . (!empty($opt['utils']) ? $opt['utils'] : '') // Add less utils . (!empty($opt['vars']) ? $opt['vars'] : ''); // Add less vars (from Theme Options) // Get compiled CSS code if ($opt['compiler']=='lessc') $css .= $parser->compile($text); else { $parser->parse($text); $css .= $parser->getCss(); $parser->Reset(); } } if ($css && $opt['compiler']=='lessc' && $opt['compressed']) { $css = trx_utils_minify_css($css); } } if ($css) { if ($opt['map']=='no') { // If it main theme style - append CSS after header comments if ($file == get_template_directory(). '/style.less') { // Append to the main Theme Style CSS $theme_css = file_get_contents( get_template_directory() . '/style.css' ); $css = substr($theme_css, 0, strpos($theme_css, '*/')+2) . "\n\n" . $css; } else { $css = "/*" . "\n" . __('Attention! Do not modify this .css-file!', 'trx_utils') . "\n" . __('Please, make all necessary changes in the corresponding .less-file!', 'trx_utils') . "\n" . "*/" . "\n" . '@charset "utf-8";' . "\n\n" . $css; } } // Save compiled CSS file_put_contents( $file_css, $css); } } catch (Exception $e) { if (function_exists('dfl')) dfl($e->getMessage()); $success = false; } } return $success; } } // LESS function /* if (!function_exists('trx_utils_less_func_replace')) { function trx_utils_less_func_replace($arg) { return $arg; } } */ // Prepare required styles and scripts for admin mode if ( ! function_exists( 'trx_utils_admin_prepare_scripts' ) ) { add_action( 'admin_head', 'trx_utils_admin_prepare_scripts' ); function trx_utils_admin_prepare_scripts() { ?> <script> if ( typeof TRX_UTILS_GLOBALS == 'undefined' ) var TRX_UTILS_GLOBALS = {}; jQuery(document).ready(function() { TRX_UTILS_GLOBALS['admin_mode'] = true; TRX_UTILS_GLOBALS['ajax_nonce'] = "<?php echo wp_create_nonce('ajax_nonce'); ?>"; TRX_UTILS_GLOBALS['ajax_url'] = "<?php echo admin_url('admin-ajax.php'); ?>"; TRX_UTILS_GLOBALS['user_logged_in'] = true; }); </script> <?php } } // File functions if ( file_exists( TRX_UTILS_PLUGIN_DIR . 'includes/plugin.files.php' ) ) { require_once TRX_UTILS_PLUGIN_DIR . 'includes/plugin.files.php'; } // Third-party plugins support if ( file_exists( TRX_UTILS_PLUGIN_DIR . 'api/api.php' ) ) { require_once TRX_UTILS_PLUGIN_DIR . 'api/api.php'; } // Demo data import/export if ( file_exists( TRX_UTILS_PLUGIN_DIR . 'importer/importer.php' ) ) { require_once TRX_UTILS_PLUGIN_DIR . 'importer/importer.php'; } /* Support for meta boxes --------------------------------------------------- */ if (!function_exists('trx_utils_meta_box_add')) { add_action('add_meta_boxes', 'trx_utils_meta_box_add'); function trx_utils_meta_box_add() { // Custom theme-specific meta-boxes $boxes = apply_filters('trx_utils_filter_override_options', array()); if (is_array($boxes)) { foreach ($boxes as $box) { $box = array_merge(array('id' => '', 'title' => '', 'callback' => '', 'page' => null, // screen 'context' => 'advanced', 'priority' => 'default', 'callbacks' => null ), $box); add_meta_box($box['id'], $box['title'], $box['callback'], $box['page'], $box['context'], $box['priority'], $box['callbacks']); } } } } // Return text for the Privacy Policy checkbox if (!function_exists('trx_utils_get_privacy_text')) { function trx_utils_get_privacy_text() { $page = get_option('wp_page_for_privacy_policy'); $privacy_text = ''; if(function_exists('planmyday_get_theme_option')) $privacy_text = planmyday_get_theme_option( 'privacy_text' ); return apply_filters( 'trx_utils_filter_privacy_text', wp_kses_post( ($privacy_text != '' ? $privacy_text : __( 'I agree that my submitted data is being collected and stored.', 'trx_utils' )) . ( '' != $page // Translators: Add url to the Privacy Policy page ? ' ' . sprintf(__('For further details on handling user data, see our %s', 'trx_utils'), '<a href="' . esc_url(get_permalink($page)) . '" target="_blank">' . __('Privacy Policy', 'trx_utils') . '</a>') : '' ) ) ); } } // Disable a new Widgets block editor if (!function_exists('trx_utils_widgets_disable_block_editor')) { add_action( 'after_setup_theme', 'trx_utils_widgets_disable_block_editor' ); function trx_utils_widgets_disable_block_editor() { if ( function_exists('planmyday_get_theme_option') && planmyday_get_theme_option( 'disable_widgets_block_editor' ) == 'yes' ) { remove_theme_support( 'widgets-block-editor' ); } } } // Show widget contact-info-cart if (!function_exists('trx_utils_contact_info_cart')) { add_action( 'trx_utils_show_contact_info_cart', 'trx_utils_contact_info_cart' ); function trx_utils_contact_info_cart() { require trx_utils_get_file_dir('templates/contact-info-cart.php'); } } if ( ! function_exists( 'trx_utils_get_post_by_title' ) ) { /** * Return a post by the specified title * * @param string $title Post title * * @return object Post object */ function trx_utils_get_post_by_title( $title, $post_type = 'any', $post_status = 'all' ) { $posts = get_posts( array( 'post_type' => $post_type, 'title' => $title, 'post_status' => $post_status, 'numberposts' => 1, 'update_post_term_cache' => false, 'update_post_meta_cache' => false, 'orderby' => 'post_date ID', 'order' => 'DESC', ) ); $post_got_by_title = null; if ( ! empty( $posts[0] ) && is_object( $posts[0] ) ) { $post_got_by_title = $posts[0]; } return $post_got_by_title; } } if ( ! function_exists( 'trx_utils_get_page_by_title' ) ) { /** * Return a page by the specified title * * @param string $title Page title * * @return object Page object */ function trx_utils_get_page_by_title( $title ) { return trx_utils_get_post_by_title( $title, 'page' ); } } // str_replace with arrays and serialize support if ( ! function_exists('trx_utils_str_replace') ) { function trx_utils_str_replace( $from, $to, $str ) { if ( is_array( $str ) ) { foreach ( $str as $k => $v ) { $str[ $k ] = trx_utils_str_replace( $from, $to, $v ); } } else if ( is_object( $str ) ) { if ( '__PHP_Incomplete_Class' !== get_class( $str ) ) { foreach ( $str as $k => $v ) { $str->{$k} = trx_utils_str_replace( $from, $to, $v ); } } } else if ( is_string( $str ) ) { if ( is_serialized( $str ) ) { $str = serialize( trx_utils_str_replace( $from, $to, trx_utils_unserialize( $str ) ) ); } else { $str = str_replace( $from, $to, $str ); } } return $str; } } // Replace URLs in the string (array, object) if ( ! function_exists('trx_utils_url_replace') ) { function trx_utils_url_replace($from, $to, $str) { if ( substr($from, -1) == '/' ) { $from = substr($from, 0, strlen($from)-1); } if ( substr($to, -1) == '/' ) { $to = substr($to, 0, strlen($to)-1); } $from_clear = trx_utils_remove_protocol($from, true); $to_clear = trx_utils_remove_protocol($to, true); return trx_utils_str_replace( array( "http://{$from_clear}", // http://demo.domain/url str_replace('/', '\\/', "http://{$from_clear}"), // http:\/\/demo.domain\/url "https://{$from_clear}", // https://demo.domain/url str_replace('/', '\\/', "https://{$from_clear}"), // https:\/\/demo.domain\/url $from, // protocol://demo.domain/url str_replace('/', '\\/', $from), // protocol:\/\/demo.domain\/url "//{$from_clear}", // //demo.domain/url str_replace('/', '\\/', "//{$from_clear}"), // \/\/demo.domain\/url $from_clear, // demo.domain/url str_replace('/', '\\/', $from_clear) // demo.domain\/url ), array( trx_utils_get_protocol() . "://{$to_clear}", str_replace('/', '\\/', trx_utils_get_protocol() . "://{$to_clear}"), trx_utils_get_protocol() . "://{$to_clear}", str_replace('/', '\\/', trx_utils_get_protocol() . "://{$to_clear}"), $to, str_replace('/', '\\/', $to), "//{$to_clear}", str_replace('/', '\\/', "//{$to_clear}"), $to_clear, str_replace('/', '\\/', $to_clear) ), $str ); } } ?>
Save
Close
Exit & Reset
Text mode: syntax highlighting auto-detects file type.
Directory Contents
Dirs: 10 × Files: 1
Delete Selected
Select All
Select None
Sort:
Name
Size
Modified
Enable drag-to-move
Name
Size
Perms
Modified
Actions
api
DIR
-
drwxr-xr-x
2025-04-30 03:15:53
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
css
DIR
-
drwxr-xr-x
2025-04-30 03:15:52
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
importer
DIR
-
drwxr-xr-x
2025-04-30 03:15:52
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
includes
DIR
-
drwxr-xr-x
2025-04-30 03:15:52
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
js
DIR
-
drwxr-xr-x
2025-04-30 03:15:53
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
languages
DIR
-
drwxr-xr-x
2025-04-30 03:15:52
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
lib
DIR
-
drwxr-xr-x
2025-04-30 03:15:55
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
shortcodes
DIR
-
drwxr-xr-x
2025-04-30 03:15:55
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
templates
DIR
-
drwxr-xr-x
2025-04-30 03:15:53
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
widgets
DIR
-
drwxr-xr-x
2025-04-30 03:15:53
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
trx_utils.php
25.47 KB
lrw-r--r--
2025-04-30 03:15:53
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
Zip Selected
If ZipArchive is unavailable, a
.tar
will be created (no compression).