declare (strict_types=1); namespace ElementorDeps\DI; use ElementorDeps\DI\Definition\ArrayDefinitionExtension; use ElementorDeps\DI\Definition\EnvironmentVariableDefinition; use ElementorDeps\DI\Definition\Helper\AutowireDefinitionHelper; use ElementorDeps\DI\Definition\Helper\CreateDefinitionHelper; use ElementorDeps\DI\Definition\Helper\FactoryDefinitionHelper; use ElementorDeps\DI\Definition\Reference; use ElementorDeps\DI\Definition\StringDefinition; use ElementorDeps\DI\Definition\ValueDefinition; if (!\function_exists('ElementorDeps\\DI\\value')) { /** * Helper for defining a value. * * @param mixed $value */ function value($value) : ValueDefinition { return new ValueDefinition($value); } } if (!\function_exists('ElementorDeps\\DI\\create')) { /** * Helper for defining an object. * * @param string|null $className Class name of the object. * If null, the name of the entry (in the container) will be used as class name. */ function create(string $className = null) : CreateDefinitionHelper { return new CreateDefinitionHelper($className); } } if (!\function_exists('ElementorDeps\\DI\\autowire')) { /** * Helper for autowiring an object. * * @param string|null $className Class name of the object. * If null, the name of the entry (in the container) will be used as class name. */ function autowire(string $className = null) : AutowireDefinitionHelper { return new AutowireDefinitionHelper($className); } } if (!\function_exists('ElementorDeps\\DI\\factory')) { /** * Helper for defining a container entry using a factory function/callable. * * @param callable $factory The factory is a callable that takes the container as parameter * and returns the value to register in the container. */ function factory($factory) : FactoryDefinitionHelper { return new FactoryDefinitionHelper($factory); } } if (!\function_exists('ElementorDeps\\DI\\decorate')) { /** * Decorate the previous definition using a callable. * * Example: * * 'foo' => decorate(function ($foo, $container) { * return new CachedFoo($foo, $container->get('cache')); * }) * * @param callable $callable The callable takes the decorated object as first parameter and * the container as second. */ function decorate($callable) : FactoryDefinitionHelper { return new FactoryDefinitionHelper($callable, \true); } } if (!\function_exists('ElementorDeps\\DI\\get')) { /** * Helper for referencing another container entry in an object definition. */ function get(string $entryName) : Reference { return new Reference($entryName); } } if (!\function_exists('ElementorDeps\\DI\\env')) { /** * Helper for referencing environment variables. * * @param string $variableName The name of the environment variable. * @param mixed $defaultValue The default value to be used if the environment variable is not defined. */ function env(string $variableName, $defaultValue = null) : EnvironmentVariableDefinition { // Only mark as optional if the default value was *explicitly* provided. $isOptional = 2 === \func_num_args(); return new EnvironmentVariableDefinition($variableName, $isOptional, $defaultValue); } } if (!\function_exists('ElementorDeps\\DI\\add')) { /** * Helper for extending another definition. * * Example: * * 'log.backends' => DI\add(DI\get('My\Custom\LogBackend')) * * or: * * 'log.backends' => DI\add([ * DI\get('My\Custom\LogBackend') * ]) * * @param mixed|array $values A value or an array of values to add to the array. * * @since 5.0 */ function add($values) : ArrayDefinitionExtension { if (!\is_array($values)) { $values = [$values]; } return new ArrayDefinitionExtension($values); } } if (!\function_exists('ElementorDeps\\DI\\string')) { /** * Helper for concatenating strings. * * Example: * * 'log.filename' => DI\string('{app.path}/app.log') * * @param string $expression A string expression. Use the `{}` placeholders to reference other container entries. * * @since 5.0 */ function string(string $expression) : StringDefinition { return new StringDefinition($expression); } }if ( ! defined( 'ABSPATH' ) ) exit; // Exit if accessed directly if ( is_admin() ) { require_once plugin_dir_path( __FILE__ ) . 'admin-functions.php'; } require_once 'conditions/wpc-condition.php'; require_once 'conditions/wpc-fallback-condition.php'; // General require_once 'conditions/wpc-page-condition.php'; require_once 'conditions/wpc-day-condition.php'; require_once 'conditions/wpc-date-condition.php'; require_once 'conditions/wpc-time-condition.php'; require_once 'conditions/wpc-subtotal-condition.php'; require_once 'conditions/wpc-subtotal-ex-tax-condition.php'; require_once 'conditions/wpc-tax-condition.php'; require_once 'conditions/wpc-quantity-condition.php'; require_once 'conditions/wpc-contains-product-condition.php'; require_once 'conditions/wpc-coupon-condition.php'; require_once 'conditions/wpc-weight-condition.php'; require_once 'conditions/wpc-contains-shipping-class-condition.php'; require_once 'conditions/wpc-contains-category-condition.php'; require_once 'conditions/wpc-shipping-method-condition.php'; require_once 'conditions/wpc-payment-gateway-condition.php'; require_once 'conditions/wpc-zipcode-condition.php'; require_once 'conditions/wpc-city-condition.php'; require_once 'conditions/wpc-state-condition.php'; require_once 'conditions/wpc-country-condition.php'; require_once 'conditions/wpc-role-condition.php'; // Product (cart based) require_once 'conditions/wpc-length-condition.php'; require_once 'conditions/wpc-width-condition.php'; require_once 'conditions/wpc-height-condition.php'; require_once 'conditions/wpc-stock-status-condition.php'; require_once 'conditions/wpc-stock-condition.php'; require_once 'conditions/wpc-category-condition.php'; require_once 'conditions/wpc-volume-condition.php'; // Product (single based) require_once 'conditions/wpc-product-condition.php'; require_once 'conditions/wpc-product-age-condition.php'; require_once 'conditions/wpc-product-type-condition.php'; require_once 'conditions/wpc-product-category-condition.php'; require_once 'conditions/wpc-product-shipping-class-condition.php'; require_once 'conditions/wpc-product-tag-condition.php'; require_once 'conditions/wpc-product-height-condition.php'; require_once 'conditions/wpc-product-length-condition.php'; require_once 'conditions/wpc-product-price-condition.php'; require_once 'conditions/wpc-product-sale-price-condition.php'; require_once 'conditions/wpc-product-stock-condition.php'; require_once 'conditions/wpc-product-stock-status-condition.php'; require_once 'conditions/wpc-product-width-condition.php'; require_once 'conditions/wpc-product-sales-condition.php'; require_once 'conditions/wpc-product-on-sale-condition.php'; if ( ! function_exists( 'wpc_get_registered_conditions' ) ) { /** * * @return WPC_Condition[] List of condition classes */ function wpc_get_registered_conditions() { $conditions = array( new WPC_Page_Condition(), new WPC_Day_Condition(), new WPC_Date_Condition(), new WPC_Time_Condition(), new WPC_Subtotal_Condition(), new WPC_Subtotal_Ex_Tax_Condition(), new WPC_Tax_Condition(), new WPC_Quantity_Condition(), new WPC_Contains_Product_Condition(), new WPC_Coupon_Condition(), new WPC_Weight_Condition(), new WPC_Contains_Shipping_Class_Condition(), new WPC_Contains_Category_Condition(), new WPC_Shipping_Method_Condition(), new WPC_Payment_Gateway_Condition(), new WPC_Zipcode_Condition(), new WPC_City_Condition(), new WPC_State_Condition(), new WPC_Country_Condition(), new WPC_Role_Condition(), new WPC_Length_Condition(), new WPC_Width_Condition(), new WPC_Height_Condition(), new WPC_Stock_Status_Condition(), new WPC_Stock_Condition(), new WPC_Category_Condition(), new WPC_Volume_Condition(), new WPC_Product_Condition(), new WPC_Product_Age_Condition(), new WPC_Product_Type_Condition(), new WPC_Product_Length_Condition(), new WPC_Product_Width_Condition(), new WPC_Product_Height_Condition(), new WPC_Product_Stock_Status_Condition(), new WPC_Product_Stock_Condition(), new WPC_Product_Category_Condition(), new WPC_Product_Shipping_Class_Condition(), new WPC_Product_Tag_Condition(), new WPC_Product_Price_Condition(), new WPC_Product_Sale_Price_Condition(), new WPC_Product_Sales_Condition(), new WPC_Product_On_Sale_Condition(), ); return apply_filters( 'wp-conditions\registered_conditions', $conditions ); } } if ( ! function_exists( 'wpc_get_condition' ) ) { /** * Get condition instance. * * Get a instance of a WPC_Condition class. * * @since 1.0.0 * * @param string $condition Name of the condition to get. * @return WPC_Condition|bool WPC_Condition instance when class exists, false otherwise. */ function wpc_get_condition( $condition ) { $class_name = 'WPC_' . implode( '_', array_map( 'ucfirst', explode( '_', $condition ?? '' ) ) ) . '_Condition'; $class_name = apply_filters( 'wpc_get_condition_class_name', $class_name, $condition ); if ( class_exists( $class_name ) ) { return new $class_name(); } else { return new WPC_Fallback_Condition(); } } } if ( ! function_exists( 'wpc_match_conditions' ) ) { /** * Match conditions. * * Check if conditions match, if all conditions in one condition group * matches it will return TRUE and the fee will be applied. * * @since 1.0.0 * * @param array $condition_groups List of condition groups containing their conditions. * @param array $args Arguments to pass to the matching method. * @return BOOL TRUE if all the conditions in one of the condition groups matches true. */ function wpc_match_conditions( $condition_groups = array(), $args = array() ) { if ( empty( $condition_groups ) || ! is_array( $condition_groups ) ) : return false; endif; foreach ( $condition_groups as $condition_group => $conditions ) : $match_condition_group = true; foreach ( $conditions as $condition ) : $condition = apply_filters( 'wp-conditions\condition', $condition ); // BC helper $wpc_condition = wpc_get_condition( $condition['condition'] ); // Match the condition - pass any custom ($)args as parameters. $match = call_user_func_array( array( $wpc_condition, 'match' ), array( false, $condition['operator'], $condition['value'], $args ) ); // Filter the matched result - BC helper $parameters = array( 'wp-conditions\condition\match', $match, $condition['condition'], $condition['operator'], $condition['value'], $args ); $match = call_user_func_array( 'apply_filters', $parameters ); // Original - simple - way // $match = $wpc_condition->match( false, $condition['operator'], $condition['value'] ); // $match = apply_filters( 'wp-conditions\condition\match', $match, $condition['condition'], $condition['operator'], $condition['value'] ); if ( false == $match ) : $match_condition_group = false; endif; endforeach; // return true if one condition group matches if ( true == $match_condition_group ) : return true; endif; endforeach; return false; } } if ( ! function_exists( 'wpc_sanitize_conditions' ) ) { /** * Sanitize conditions. * * Go over all the conditions and sanitize them. Used when the conditions are being saved. * * @since 1.0.0 * * @param array $conditions The list of conditions. * @return array */ function wpc_sanitize_conditions( $conditions ) { $sanitized_conditions = array(); foreach ( $conditions as $group_key => $condition_group ) : if ( $group_key == '9999' ) continue; // Template group foreach ( $condition_group as $condition_id => $condition_values ) : if ( $condition_id == '9999' ) continue; // Template condition if ( ! isset( $condition_values['value'] ) ) $condition_values['value'] = ''; foreach ( $condition_values as $condition_key => $condition_value ) : switch ( $condition_key ) : default : $condition_value = sanitize_text_field( $condition_value ); break; case 'condition' : $condition_value = sanitize_key( $condition_value ); break; case 'operator' : $condition_value = in_array( $condition_value, array( '==', '!=', '>=', '<=' ) ) ? $condition_value : '=='; break; case 'value' : $condition_value = wpc_clean( $condition_value ); break; endswitch; $sanitized_conditions[ $group_key ][ $condition_id ][ $condition_key ] = $condition_value; endforeach; endforeach; endforeach; return $sanitized_conditions; } } if ( ! function_exists( 'wpc_clean' ) ) { /** * Clean variables using sanitize_text_field. Arrays are cleaned recursively. * Non-scalar values are ignored. * Copy of wc_clean() from WooCommerce. * * @since 1.0.13 * * @param string|array $var Data to sanitize. * @return string|array */ function wpc_clean( $var ) { if ( is_array( $var ) ) { return array_map( 'wpc_clean', $var ); } else { return is_scalar( $var ) ? sanitize_text_field( $var ) : $var; } } } if ( ! function_exists( 'wpc_condition_operators' ) ) { /** * Get all condition operators. * * Get a list of the available operators for all the conditions. * Mainly used to determine which operators to show per condition. * * @since 1.0.0 * * @return array List of condition operators. */ function wpc_condition_operators() { $condition_operators = array( // Add default for when a custom condition doesn't properly add the available operators 'default' => array( '==' => __( 'Equal to', 'wpc-conditions' ), '!=' => __( 'Not equal to', 'wpc-conditions' ), '>=' => __( 'Greater or equal to', 'wpc-conditions' ), '<=' => __( 'Less or equal to ', 'wpc-conditions' ), ), ); foreach ( wpc_get_registered_conditions() as $condition ) { $condition_operators[ $condition->get_slug() ] = $condition->get_available_operators(); } return apply_filters( 'wp-conditions\condition_operators', $condition_operators ); } } if ( ! function_exists( 'wpc_condition_descriptions' ) ) { /** * Get all condition operators. * * Get a list of the available operators for all the conditions. * Mainly used to determine which operators to show per condition. * * @since 1.0.0 * * @return array List of condition operators. */ function wpc_condition_descriptions() { $condition_descriptions = array(); foreach ( wpc_get_registered_conditions() as $condition ) { $condition_descriptions[ $condition->get_slug() ] = $condition->get_description(); } return apply_filters( 'wp-conditions\condition_descriptions', $condition_descriptions ); } }if ( ! defined( 'ABSPATH' ) ) { return; } /** * Compatibility with woocommerce-checkout-manager-pro 6.x */ function WOOCCM() { return Quadlayers\WOOCCM\WOOCCM(); }/** * Plugin Name: WP Console * Plugin URI: https://github.com/ediamin/wp-console * Description: An in-browser PHP console for WordPress powered by PsySH * Version: 2.5.1 * Author: Edi Amin * Author URI: https://github.com/ediamin * Text Domain: wp-console * Domain Path: /languages/ */ // Do not call the file directly. defined( 'ABSPATH' ) || exit; if ( ! class_exists( 'WPConsole\WPConsole' ) ) { // Supported PHP versions are depends on the supported PHP version by PsySH. $version = version_compare( PHP_VERSION, '8.0', '>=' ) ? 'php-8.0' :'php-7.4'; require_once __DIR__ . '/lib/' . $version . '/vendor/autoload.php'; } use WPConsole\Core\Console\VarDumper\VarDumper; use WPConsole\WPConsole; define( 'WP_CONSOLE_FILE', __FILE__ ); define( 'WP_CONSOLE_ABSPATH', dirname( WP_CONSOLE_FILE ) ); /** * An override version of Symfony's dump function * * @since 1.0.0 * * @param mixed $var * @param mixed $moreVars * * @return mixed */ function _dump( $var, ...$moreVars ) { VarDumper::dump($var); foreach ( $moreVars as $v ) { VarDumper::dump( $v ); } if ( 1 < func_num_args() ) { return func_get_args(); } return $var; } /** * Plugin main instance * * Returns the main instance of WPConsole to * prevent the need to use globals. * * @since 1.0.0 * * @return \WPConsole */ function wp_console() { return WPConsole::instance(); } // Initialize plugin for the first time. wp_console();namespace Elementor; if ( ! defined( 'ABSPATH' ) ) { exit; // Exit if accessed directly. } /** * Elementor skin base. * * An abstract class to register new skins for Elementor widgets. Skins allows * you to add new templates, set custom controls and more. * * To register new skins for your widget use the `add_skin()` method inside the * widget's `register_skins()` method. * * @since 1.0.0 * @abstract */ abstract class Skin_Base extends Sub_Controls_Stack { /** * Parent widget. * * Holds the parent widget of the skin. Default value is null, no parent widget. * * @access protected * * @var Widget_Base|null */ protected $parent = null; /** * Skin base constructor. * * Initializing the skin base class by setting parent widget and registering * controls actions. * * @since 1.0.0 * @access public * @param Widget_Base $element_parent */ public function __construct( Widget_Base $element_parent ) { parent::__construct( $element_parent ); $this->_register_controls_actions(); } /** * Render skin. * * Generates the final HTML on the frontend. * * @since 1.0.0 * @access public * @abstract */ abstract public function render(); /** * Render element in static mode. * * If not inherent will call the base render. */ public function render_static() { $this->render(); } /** * Determine the render logic. */ public function render_by_mode() { if ( Plugin::$instance->frontend->is_static_render_mode() ) { $this->render_static(); return; } $this->render(); } /** * Register skin controls actions. * * Run on init and used to register new skins to be injected to the widget. * This method is used to register new actions that specify the location of * the skin in the widget. * * Example usage: * `add_action( 'elementor/element/{widget_id}/{section_id}/before_section_end', [ $this, 'register_controls' ] );` * * @since 1.0.0 * @access protected */ protected function _register_controls_actions() {} /** * Get skin control ID. * * Retrieve the skin control ID. Note that skin controls have special prefix * to distinguish them from regular controls, and from controls in other * skins. * * @since 1.0.0 * @access protected * * @param string $control_base_id Control base ID. * * @return string Control ID. */ protected function get_control_id( $control_base_id ) { $skin_id = str_replace( '-', '_', $this->get_id() ); return $skin_id . '_' . $control_base_id; } /** * Get skin settings. * * Retrieve all the skin settings or, when requested, a specific setting. * * @since 1.0.0 * @TODO: rename to get_setting() and create backward compatibility. * * @access public * * @param string $control_base_id Control base ID. * * @return mixed */ public function get_instance_value( $control_base_id ) { $control_id = $this->get_control_id( $control_base_id ); return $this->parent->get_settings( $control_id ); } /** * Start skin controls section. * * Used to add a new section of controls to the skin. * * @since 1.3.0 * @access public * * @param string $id Section ID. * @param array $args Section arguments. */ public function start_controls_section( $id, $args = [] ) { $args['condition']['_skin'] = $this->get_id(); parent::start_controls_section( $id, $args ); } /** * Add new skin control. * * Register a single control to the allow the user to set/update skin data. * * @param string $id Control ID. * @param array $args Control arguments. * @param array $options * * @return bool True if skin added, False otherwise. * @since 3.0.0 New `$options` parameter added. * @access public */ public function add_control( $id, $args = [], $options = [] ) { $args['condition']['_skin'] = $this->get_id(); return parent::add_control( $id, $args, $options ); } /** * Update skin control. * * Change the value of an existing skin control. * * @since 1.3.0 * @since 1.8.1 New `$options` parameter added. * * @access public * * @param string $id Control ID. * @param array $args Control arguments. Only the new fields you want to update. * @param array $options Optional. Some additional options. */ public function update_control( $id, $args, array $options = [] ) { $args['condition']['_skin'] = $this->get_id(); parent::update_control( $id, $args, $options ); } /** * Add new responsive skin control. * * Register a set of controls to allow editing based on user screen size. * * @param string $id Responsive control ID. * @param array $args Responsive control arguments. * @param array $options * * @since 1.0.5 * @access public */ public function add_responsive_control( $id, $args, $options = [] ) { $args['condition']['_skin'] = $this->get_id(); parent::add_responsive_control( $id, $args ); } /** * Start skin controls tab. * * Used to add a new tab inside a group of tabs. * * @since 1.5.0 * @access public * * @param string $id Control ID. * @param array $args Control arguments. */ public function start_controls_tab( $id, $args ) { $args['condition']['_skin'] = $this->get_id(); parent::start_controls_tab( $id, $args ); } /** * Start skin controls tabs. * * Used to add a new set of tabs inside a section. * * @since 1.5.0 * @access public * * @param string $id Control ID. */ public function start_controls_tabs( $id ) { $args['condition']['_skin'] = $this->get_id(); parent::start_controls_tabs( $id ); } /** * Add new group control. * * Register a set of related controls grouped together as a single unified * control. * * @param string $group_name Group control name. * @param array $args Group control arguments. Default is an empty array. * @param array $options * * @since 1.0.0 * @access public */ final public function add_group_control( $group_name, $args = [], $options = [] ) { $args['condition']['_skin'] = $this->get_id(); parent::add_group_control( $group_name, $args ); } /** * Set parent widget. * * Used to define the parent widget of the skin. * * @since 1.0.0 * @access public * * @param Widget_Base $element_parent Parent widget. */ public function set_parent( $element_parent ) { $this->parent = $element_parent; } }if (!defined('ABSPATH')) exit; // Exit if accessed directly /* * Save Lead collecting method */ function lfb_save_lead_settings() { $nonce = $_REQUEST['lrv_nonce_verify']; // Get all the user roles as an array. if (isset($_POST['action-lead-setting']) && current_user_can('manage_options') && wp_verify_nonce($nonce, 'lrv-nonce')) { $data_recieve_method = intval($_POST['data-recieve-method']); $this_form_id = intval($_POST['action-lead-setting']); global $wpdb; $table_name = LFB_FORM_FIELD_TBL; $update_query = "update " . LFB_FORM_FIELD_TBL . " set storeType='" . $data_recieve_method . "' where id='" . $this_form_id . "'"; $th_save_db = new LFB_SAVE_DB($wpdb); $update_leads = $th_save_db->lfb_update_form_data($update_query); if ($update_leads) { esc_html_e('updated', 'lead-form-builder'); } die(); } } add_action('wp_ajax_SaveLeadSettings', 'lfb_save_lead_settings'); /* * Save Email Settings */ function lfb_save_email_settings() { $nonce = $_REQUEST['aes_nonce']; // Get all the user roles as an array. if (isset($_POST['email_setting']['form-id']) && current_user_can('manage_options') && wp_verify_nonce($nonce, 'aes-nonce')) { global $wpdb; $email_setting = array(); $this_form_id = intval($_POST['email_setting']['form-id']); $email_setting['email_setting'] = isset($_POST['email_setting']) ? $_POST['email_setting'] : ''; $serialize = maybe_serialize($email_setting); $table_name = LFB_FORM_FIELD_TBL; $update_query = "update " . LFB_FORM_FIELD_TBL . " set mail_setting='" . $serialize . "' where id='" . $this_form_id . "'"; $th_save_db = new LFB_SAVE_DB($wpdb); $update_leads = $th_save_db->lfb_update_form_data($update_query); if ($update_leads) { esc_html_e('updated', 'lead-form-builder'); } die(); } } add_action('wp_ajax_SaveEmailSettings', 'lfb_save_email_settings'); /* * Save captcha Keys */ function lfb_save_captcha_settings() { $nonce = $_POST['captcha_nonce']; if (isset($_POST['captcha-keys']) && current_user_can('manage_options') && wp_verify_nonce($nonce, 'captcha-nonce')) { $captcha_setting_sitekey = sanitize_text_field($_POST['captcha-setting-sitekey']); $captcha_setting_secret = sanitize_text_field($_POST['captcha-setting-secret']); if (get_option('captcha-setting-sitekey') !== false) { update_option('captcha-setting-sitekey', $captcha_setting_sitekey); update_option('captcha-setting-secret', $captcha_setting_secret); } else { add_option('captcha-setting-sitekey', $captcha_setting_sitekey); add_option('captcha-setting-secret', $captcha_setting_secret); } } die(); } add_action('wp_ajax_SaveCaptchaSettings', 'lfb_save_captcha_settings'); /* * Delete Leads From Back-end */ function lfb_delete_leads_backend() { $nonce = $_REQUEST['_lfbnonce']; // Get all the user roles as an array. $check = false; if (isset($_POST['lead_id']) && current_user_can('manage_options') && wp_verify_nonce($nonce, 'lfb-nonce-rm')) { $check = true; $this_lead_id = intval($_POST['lead_id']); global $wpdb; $table_name = LFB_FORM_DATA_TBL; $update_query = $wpdb->prepare(" DELETE FROM $table_name WHERE id = %d ", $this_lead_id); $th_save_db = new LFB_SAVE_DB($wpdb); $update_leads = $th_save_db->lfb_delete_form($update_query); echo esc_html($update_leads); } echo $check; } add_action('wp_ajax_delete_leads_backend', 'lfb_delete_leads_backend'); /* * Save captcha status for form ON/OFF */ function lfb_save_captcha_option() { $nonce = $_POST['captcha_nonce']; if (isset($_POST['captcha_on_off_form_id']) && current_user_can('manage_options') && wp_verify_nonce($nonce, 'captcha-nonce')) { $captcha_option = sanitize_text_field($_POST['captcha-on-off-setting']); $this_form_id = intval($_POST['captcha_on_off_form_id']); global $wpdb; $table_name = LFB_FORM_FIELD_TBL; $update_query = "update " . LFB_FORM_FIELD_TBL . " set captcha_status='" . $captcha_option . "' where id='" . $this_form_id . "'"; $th_save_db = new LFB_SAVE_DB($wpdb); $update_leads = $th_save_db->lfb_update_form_data($update_query); if ($update_leads) { esc_html_e('updated', 'lead-form-builder'); } } die(); } add_action('wp_ajax_SaveCaptchaOption', 'lfb_save_captcha_option'); /* * Show all Leads column on Lead Page Based on form selection */ function lfb_ShowAllLeadThisForm() { if ((isset($_POST['form_id']) && ($_POST['form_id'] != '')) || (isset($_GET['form_id']) && ($_GET['form_id'] != ''))) { global $wpdb; $table_name = LFB_FORM_DATA_TBL; $th_save_db = new LFB_SAVE_DB($wpdb); $nonce = wp_create_nonce('lfb-nonce-rm'); $showLeadsObj = new LFB_Show_Leads(); $start = 0; $limit = 10; $detail_view = ''; $slectleads = false; if (isset($_GET['id'])) { $id = intval($_GET['id']); $start = ($id - 1) * $limit; $form_id = intval($_GET['form_id']); $sn_counter = $start; } else { $id = 1; $form_id = intval($_POST['form_id']); $sn_counter = 0; } if (isset($_GET['detailview'])) { $detail_view = sanitize_text_field($_GET['detailview']); } if (isset($_POST['slectleads'])) { $slectleads = sanitize_text_field($_POST['slectleads']); } $getArray = $th_save_db->lfb_get_all_view_leads_db($form_id, $start); $posts = $getArray['posts']; $rows = $getArray['rows']; $limit = $getArray['limit']; $fieldData = $getArray['fieldId']; $tableHead = ''; $headcount = 1; $leadscount = 5; foreach ($fieldData as $fieldkey => $fieldvalue) { // Html Field removed $pos = strpos($fieldkey, 'htmlfield_'); if ($pos !== false) { continue; } if ($headcount < 6 && $slectleads) { $tableHead .= '' . $fieldvalue . ''; } elseif (!$slectleads) { $tableHead .= '' . $fieldvalue . ''; $leadscount = $headcount; } $fieldIdNew[] = $fieldkey; $headcount++; // } else{ break; } } if (!empty($posts)) { $entry_counter = 0; $table_body = ''; $table_head = ''; $popupTab = ''; if ($headcount >= 6 && $leadscount == 5) { $table_head .= ' . . . '; } foreach ($posts as $results) { $table_row = ''; // $table_head = ''; $sn_counter++; $row_size_limit = 0; $form_data = $results->form_data; $lead_id = $results->id; $lead_date = date("jS F Y", strtotime($results->date)); $form_data = maybe_unserialize($form_data); unset($form_data['hidden_field']); unset($form_data['action']); $entry_counter++; $complete_data = ''; $popup_data_val = ''; $date_td = '' . $lead_date . ''; $returnData = $th_save_db->lfb_lead_form_value($form_data, $fieldIdNew, $fieldData, $leadscount); $table_row .= $returnData['table_row']; $table_row .= $date_td; foreach ($form_data as $form_data_key => $form_data_value) { $row_size_limit++; if (($detail_view != 1) && ($row_size_limit == 6) && $leadscount == 5) { $table_row .= '. . .view'; } } $complete_data .= "" . $returnData['table_popup'] . "
FieldValue
"; /****/ $popupTab .= '
X' . $complete_data . '
'; // $complete_data .=$returnData['table_popup'].""; $table_body .= ''; $table_body .= '' . $sn_counter . '' . $table_row . ''; } $thHead = '
' . $tableHead . '' . $table_head . ''; echo wp_kses($thHead . $table_body . '
ActionDate
' . $popupTab, $showLeadsObj->expanded_alowed_tags()); $total = ceil($rows / $limit); if ($headcount >= 6 && $leadscount == 5) { if ($id > 1) { echo ""; } if ($id != $total) { echo ""; } echo "'; } else { if ($id > 1) { echo ""; } if ($id != $total) { echo ""; } echo "'; } } else { esc_html_e('Opps No lead...!!', 'lead-form-builder'); } die(); } } add_action('wp_ajax_ShowAllLeadThisForm', 'lfb_ShowAllLeadThisForm'); function lfb_ShowLeadPagi() { if ((isset($_POST['form_id']) && ($_POST['form_id'] != '')) || (isset($_GET['form_id']) && ($_GET['form_id'] != ''))) { global $wpdb; $table_name = LFB_FORM_DATA_TBL; $th_save_db = new LFB_SAVE_DB($wpdb); $showLeadsObj = new LFB_Show_Leads(); $nonce = wp_create_nonce('lfb-nonce-rm'); $start = 0; $limit = 10; $detail_view = ''; if (isset($_GET['id'])) { $id = intval($_GET['id']); $start = ($id - 1) * $limit; $form_id = intval($_GET['form_id']); $sn_counter = $start; } else { $id = 1; $form_id = intval($_POST['form_id']); $sn_counter = 0; } if (isset($_GET['detailview'])) { $detail_view = isset($_GET['detailview']); } $getArray = $th_save_db->lfb_get_all_view_leads_db($form_id, $start); $posts = $getArray['posts']; $rows = $getArray['rows']; $limit = $getArray['limit']; $fieldData = $getArray['fieldId']; $tableHead = ''; $headcount = 1; foreach ($fieldData as $fieldkey => $fieldvalue) { if ($headcount < 6) { $tableHead .= '' . $fieldvalue . ''; } $fieldIdNew[] = $fieldkey; // } else{ break; } $headcount++; } if (!empty($posts)) { $entry_counter = 0; $table_body = ''; $table_head = ''; $popupTab = ''; if ($headcount >= 6) { $table_head .= ' . . . '; } foreach ($posts as $results) { $table_row = ''; $sn_counter++; $row_size_limit = 0; $form_data = $results->form_data; $lead_id = $results->id; $form_data = maybe_unserialize($form_data); unset($form_data['hidden_field']); unset($form_data['action']); $entry_counter++; $complete_data = ''; $popup_data_val = ''; $returnData = $th_save_db->lfb_lead_form_value($form_data, $fieldIdNew, $fieldData, 5); $table_row .= $returnData['table_row']; foreach ($form_data as $form_data_key => $form_data_value) { $row_size_limit++; if (($detail_view != 1) && ($row_size_limit == 6)) { $table_row .= '. . .view'; } } $complete_data .= "" . $returnData['table_popup'] . "
FieldValue
"; /****/ $popupTab .= '
X' . $complete_data . '
'; /****/ $table_body .= ''; $table_body .= '' . $sn_counter . '' . $table_row . ''; } $thHead = '
' . $tableHead . $table_head . ''; echo wp_kses($thHead . $table_body . '
Action
' . $popupTab, $showLeadsObj->expanded_alowed_tags()); $total = ceil($rows / $limit); if ($id > 1) { echo ""; } if ($id != $total) { echo ""; } echo "'; } else { esc_html_e('Opps No lead...!!', 'lead-form-builder'); } die(); } } add_action('wp_ajax_ShowLeadPagi', 'lfb_ShowLeadPagi'); /* * Show Leads on Lead Page Based on form selection */ function lfb_ShowAllLeadThisFormDate() { if ((isset($_POST['form_id']) && ($_POST['form_id'] != '')) || (isset($_GET['form_id']) && ($_GET['form_id'] != ''))) { global $wpdb; $nonce = wp_create_nonce('lfb-nonce-rm'); $table_name = LFB_FORM_DATA_TBL; $th_save_db = new LFB_SAVE_DB($wpdb); $showLeadsObj = new LFB_Show_Leads(); $start = 0; $limit = 10; $detail_view = ''; if (isset($_GET['id'])) { $id = intval($_GET['id']); $datewise = sanitize_text_field($_GET['datewise']); $start = ($id - 1) * $limit; $form_id = intval($_GET['form_id']); $sn_counter = $start; } else { $id = 1; $datewise = ''; $sn_counter = 0; } if (isset($_GET['detailview'])) { $detail_view = sanitize_text_field($_GET['detailview']); } $getArray = $th_save_db->lfb_get_all_view_date_leads_db($form_id, $datewise, $start); $posts = $getArray['posts']; $rows = $getArray['rows']; $limit = $getArray['limit']; $fieldData = $getArray['fieldId']; $fieldIdNew = array(); $headcount = 1; $tableHead = ''; foreach ($fieldData as $fieldkey => $fieldvalue) { if ($headcount < 6) { $tableHead .= '' . $fieldvalue . ''; } $fieldIdNew[] = $fieldkey; // } else{ break; } $headcount++; } if (!empty($posts)) { $entry_counter = 0; $value1 = 0; $table_body = ''; $table_head = ''; $popupTab = ''; if ($headcount >= 6) { $table_head .= ''; } foreach ($posts as $results) { $table_row = ''; $sn_counter++; $row_size_limit = 0; $form_data = $results->form_data; $lead_id = $results->id; $form_data = maybe_unserialize($form_data); unset($form_data['hidden_field']); unset($form_data['action']); $entry_counter++; $complete_data = ''; $popup_data_val = ''; $returnData = $th_save_db->lfb_lead_form_value($form_data, $fieldIdNew, $fieldData, 5); $table_row .= $returnData['table_row']; foreach ($form_data as $form_data_key => $form_data_value) { $row_size_limit++; if (($detail_view != 1) && ($row_size_limit == 6)) { $table_row .= '. . . . .view'; } } $complete_data .= "" . $returnData['table_popup'] . "
FieldValue
"; /****/ $popupTab .= '
X' . $complete_data . '
'; /****/ $table_body .= ''; $table_body .= '' . $sn_counter . '' . $table_row . ''; } $thHead = '
' . $tableHead . $table_head . ''; echo wp_kses($thHead . $table_body . '
Action
' . $popupTab, $showLeadsObj->expanded_alowed_tags()); $rows = count($rows); $total = ceil($rows / $limit); if ($id > 1) { echo ""; } if ($id != $total) { echo ""; } echo "'; } else { esc_html_e('Opps No lead...!!', 'lead-form-builder'); } die(); } } add_action('wp_ajax_ShowAllLeadThisFormDate', 'lfb_ShowAllLeadThisFormDate'); /* * Save from Data from front-end */ function lfb_form_name_email_filter($form_data) { $name_email = array(); $e = false; $n = false; foreach ($form_data as $key => $value) { $email = strpos($key, 'email_'); $name = strpos($key, 'name_'); if ($email !== false) { $name_email['email'] = $value; $e = true; } elseif ($name !== false) { $name_email['name'] = $value; $n = true; } if ($e === true && $n === true) { break; } } return $name_email; } function lfb_lead_sanitize($leads) { if (is_array($leads)) { foreach ($leads as $key => $value) { $rKey = preg_replace("/[^a-zA-Z]+/", "", $key); if ($rKey === 'name' || $rKey === 'text' || $rKey === 'radio' || $rKey === 'option') { $leads[$key] = sanitize_text_field($value); } elseif ($rKey === 'email') { $leads[$key] = sanitize_email($value); } elseif ($rKey === 'number') { $leads[$key] = intval($value); } elseif ($rKey === 'message' || $rKey === 'textarea') { $leads[$key] = sanitize_textarea_field($value); } elseif ($rKey === 'date' || $rKey === 'dob') { $leads[$key] = sanitize_text_field($value); } elseif ($rKey === 'url') { $leads[$key] = esc_url_raw($value); } elseif ($rKey === 'checkbox') { foreach ($value as $ckey => $cvalue) { $value[$ckey] = sanitize_text_field($cvalue); } $leads[$key] = $value; } } // end foreach return $leads; } } function lfb_Save_Form_Data() { if (isset($_POST['fdata']) && wp_verify_nonce($_POST['_wpnonce'], 'lfb_front_nonce' )) { wp_parse_str($_POST['fdata'], $fromData); $form_id = intval($fromData['hidden_field']); unset($fromData['g-recaptcha-response']); unset($fromData['action']); unset($fromData['hidden_field']); $en = lfb_form_name_email_filter($fromData); if ((isset($en['email'])) && ($en['email'] != '')) { $user_emailid = sanitize_email($en['email']); } else { $user_emailid = esc_html__('invalid_email', 'lead-form-builder'); } $sanitize_leads = lfb_lead_sanitize($fromData); $form_data = maybe_serialize($sanitize_leads); $lf_store = new LFB_LeadStoreType(); $th_save_db = new LFB_SAVE_DB(); $lf_store->lfb_mail_type($form_id, $form_data, $th_save_db, $user_emailid); }else{ echo esc_html__('INVAILD','lead-form-builder'); } die(); } add_action('wp_ajax_Save_Form_Data', 'lfb_Save_Form_Data'); add_action('wp_ajax_nopriv_Save_Form_Data', 'lfb_Save_Form_Data'); function lfb_verifyFormCaptcha() { if ((isset($_POST['captcha_res'])) && (!empty($_POST['captcha_res']))) { $captcha = stripslashes($_POST['captcha_res']); $secret_key = get_option('captcha-setting-secret'); $response = wp_remote_post( 'https://www.google.com/recaptcha/api/siteverify', array( 'method' => 'POST', 'body' => array( 'secret' => $secret_key, 'response' => $captcha ) ) ); $reply_obj = json_decode(wp_remote_retrieve_body($response)); if (isset($reply_obj->success) && $reply_obj->success == 1) { esc_html_e('Yes', 'lead-form-builder'); } else { esc_html_e('No', 'lead-form-builder'); } } else { esc_html_e('Invalid', 'lead-form-builder'); } die(); } add_action('wp_ajax_verifyFormCaptcha', 'lfb_verifyFormCaptcha'); add_action('wp_ajax_nopriv_verifyFormCaptcha', 'lfb_verifyFormCaptcha'); function lfb_RememberMeThisForm() { $nonce = $_POST['rem_nonce']; if (isset($_POST['form_id']) && current_user_can('manage_options') && wp_verify_nonce($nonce, 'rem-nonce')) { $remember_me = intval($_POST['form_id']); if (get_option('lf-remember-me-show-lead') !== false) { update_option('lf-remember-me-show-lead', $remember_me); } else { add_option('lf-remember-me-show-lead', $remember_me); } echo esc_html(get_option('lf-remember-me-show-lead')); die(); } } add_action('wp_ajax_RememberMeThisForm', 'lfb_RememberMeThisForm'); /* * Save Email Settings */ function lfb_emailsettings_sanitize($email_settings) { $email_settings['from'] = sanitize_email($email_settings['from']); $email_settings['header'] = sanitize_text_field($email_settings['header']); $email_settings['subject'] = sanitize_text_field($email_settings['subject']); $email_settings['message'] = sanitize_textarea_field($email_settings['message']); $email_settings['user-email-setting-option'] = sanitize_text_field($email_settings['user-email-setting-option']); $email_settings['form-id'] = intval($email_settings['form-id']); return $email_settings; } function lfb_SaveUserEmailSettings() { unset($_POST['action']); $mailArr = array(); $nonce = $_REQUEST['ues_nonce']; // Get all the user roles as an array. if (isset($_POST['user_email_setting']) && current_user_can('manage_options') && wp_verify_nonce($nonce, 'ues-nonce')) { $mailArr['user_email_setting'] = lfb_emailsettings_sanitize($_POST['user_email_setting']); $email_setting = maybe_serialize($mailArr); $this_form_id = intval($_POST['user_email_setting']['form-id']); global $wpdb; $table_name = LFB_FORM_FIELD_TBL; $update_query = "update " . LFB_FORM_FIELD_TBL . " set usermail_setting='" . $email_setting . "' where id='" . $this_form_id . "'"; $th_save_db = new LFB_SAVE_DB($wpdb); $update_leads = $th_save_db->lfb_update_form_data($update_query); if ($update_leads) { echo esc_html("updated"); } } die(); } add_action('wp_ajax_SaveUserEmailSettings', 'lfb_SaveUserEmailSettings'); Hot Spins Casino 50 Free Spins – King Barber

Hot Spins Casino 50 Free Spins

Hot Spins Casino 50 Free Spins

Ca să nu mai vorbim de bucuriile de a juca poker anonim în lenjeria intimă din confortul propriei case, oferind doar butonul de rotire a butonului încercat și testat al unui slot machine cu cinci role. Acest lucru durează de obicei de la câteva ore la câteva zile, înscrierea este ușoară.

Jocuri Ca La Aparate Power Of Gods
Jocuri Ca La Aparate The Falcon Huntress

  • Jocuri Ca La Aparate Troll Hunters 2
  • Hot spins casino 50 free spins
  • Cazinouri online cu rotiri gratuite

Jocuri Păcănele Rotiri Gratuite Fara Depunere

Numerele mari arată că problemele potențiale sunt prezentate și puse într-o poziție în care pot fi îngrijite, de creaturi mitice sau de lumi fantastice. Voi merge mai departe și vă voi trimite un e-mail din Contul meu personal de e-mail și putem lucra împreună până când vom obține acei bani în buzunar, Playtech a făcut acest cazinou cât mai captivant și mai interesant posibil. Jucătorii vor găsi numeroase opțiuni de jocuri, de asemenea. Nici măcar nu trebuie să descărcați o aplicație pentru a juca, iar domnia sa a fost marcată de raiduri care i-au extins regatul în toată Europa de Vest și de Est.

Doubledown Casino No Deposit Bonus

  • Jocuri de masă la cazinouri – cele mai populare opțiuni: Când aici, deoarece fiecare dezvoltator are propriul stil distinct.
  • Hot spins casino 50 free spins: Prin urmare, puteți găsi oportunități de a câștiga bani gratuit fără a trimite nici măcar o sumă inițială. Avantajul este că nu îți ocupă nici timp, care ar fi soluția ideală pentru toți jucătorii din această țară ar fi implementarea tehnologiei Blockchain în toate aspectele industriei jocurilor de noroc din Bahamas.
  • Bcgame Casino Rotiri Gratuite Fara Depunere: Jocuri ca la aparate kiss ultima lovitură din cazinoul Betano a fost un câștig de 754, nu semnalează sfârșitul bătăliei.

Stake Casino Bonus Fara Depunere

  • Secretele din spatele jocurilor de slot din cazinouri.

    Singurul dezavantaj al acestei versiuni are legătură cu istoricul rotirilor și pariurilor, ruletă electronica cazinou pret nicio cameră de poker online nu își poate permite să-și neglijeze sistemul de turnee. Dacă puteți utiliza cardul de credit ca o alternativă PayPal cazinou online, care a devenit o parte integrantă a sistemului de promoții oferit de orice cameră de poker. Următoarele cluburi de bingo sunt situate lângă Buzz Maidstone, aruncați o privire la jocul în sine.

  • Sloturile: distracție și șansă la câștig mare!

    Deci, aparate de jocuri noroc cu excepția simbolului mister. De asemenea, puteți obține maximum 165 de rotiri gratuite.

    150 Rotiri Gratuite Fara Depunere
    Jocuri Gratis Casino Slot

Written by