';
        $credentials['user_login'] = esc_sql($_POST['user_login']);
        $credentials['user_password'] = esc_sql($_POST['user_pass']);
        if (isset($_POST['rememberme'])) {
            $remember = esc_sql($_POST['rememberme']);
        } else {
            $remember = '';
        }
        if ($remember) {
            $credentials['remember'] = true;
        } else {
            $credentials['remember'] = false;
        }
        if ($credentials['user_login'] == '') {
            $json['type'] = "error";
            $json['msg'] = esc_html__("Username should not be empty.", "foodbakery");
            echo json_encode($json);
            exit();
        } elseif ($credentials['user_password'] == '') {
            $json['type'] = "error";
            $json['msg'] = esc_html__("Password should not be empty.", "foodbakery");
            echo json_encode($json);
            exit();
        } else {
            $user_status = '0';
            $user = get_user_by('login', $credentials['user_login']);
            if (is_object($user) && isset($user->ID)) {
                $user_id = $user->ID;
                $user_status = $user->user_status;
                $user_status_profile = get_user_meta($user_id, 'foodbakery_user_status', true);
                if ($user && wp_check_password($credentials['user_password'], $user->data->user_pass, $user_id)) {
                    if ($user_status == '0') {
                        $json['type'] = "error";
                        $json['msg'] = esc_html__("Your account is not activated yet.", "foodbakery");
                        echo json_encode($json);
                        die;
                    } elseif ($user_status_profile == 'deleted') {
                        $json['type'] = "error";
                        $json['msg'] = esc_html__("Your Profile has been removed from company", "foodbakery");
                        echo json_encode($json);
                        die;
                    }
                } else {
                    $json['type'] = "error";
                    $json['msg'] = esc_html__("Invalid password.", "foodbakery");
                    echo json_encode($json);
                    die;
                }
            }
            $status = wp_signon($credentials, false);
            if (is_wp_error($status)) {
                $json['type'] = "error";
                $json['msg'] = esc_html__("Invalid username or password.", "foodbakery");
                echo json_encode($json);
            } else {
                $user_roles = isset($status->roles) ? $status->roles : '';
                $uid = $status->ID;
                $foodbakery_user_name = $_POST['user_login'];
                $foodbakery_login_user = get_user_by('login', $foodbakery_user_name);
                $foodbakery_page_id = '';
                $default_url = $_POST['redirect_to'];
                if (($user_roles != '' && in_array("foodbakery_publisher", $user_roles))) {
                    $foodbakery_page_id = isset($foodbakery_plugin_options['foodbakery_publisher_dashboard']) ? $foodbakery_plugin_options['foodbakery_publisher_dashboard'] : $default_url;
                }
                // update user last activity
                update_user_meta($uid, 'foodbakery_user_last_activity_date', strtotime(date('d-m-Y H:i:s')));
                $foodbakery_redirect_url = '';
                if (isset($_POST['checkout_login'])) {
                    $order_id = get_post_meta($_POST['trans_id'], 'foodbakery_order_id', true);
                    $publisher_id = foodbakery_company_id_form_user_id($uid);
                    update_post_meta($order_id, 'foodbakery_order_user', $publisher_id);
                    $foodbakery_redirect_url = $default_url;
                } else {
                    if ($foodbakery_page_id != '') {
                        /* redirect to the current restaurant URL */
                        $user_company_id = get_user_meta($uid, 'foodbakery_company', true);
                        $publisher_profile_type = get_post_meta($user_company_id, 'foodbakery_publisher_profile_type', true);
                        if (strpos($default_url, '/restaurants') !== false && $publisher_profile_type != 'restaurant') {
                            $foodbakery_redirect_url = $default_url;
                        }else{
                            $foodbakery_redirect_url = get_permalink($foodbakery_page_id);
                        }
                    } else {
                        $foodbakery_redirect_url = $default_url;  // home URL if page not set
                    }
                }
                $json['type'] = "success";
                $json['msg'] = esc_html__("Login Successfully...", "foodbakery");
                $json['redirecturl'] = $foodbakery_redirect_url;
                echo json_encode($json);
            }
        }
        die();
    }
endif;
add_action('wp_ajax_ajax_login', 'ajax_login');
add_action('wp_ajax_nopriv_ajax_login', 'ajax_login');
/*
 *
 * Start Function  for  user registration validation 
 *
 */
if (!function_exists('foodbakery_registration_validation')) {
    function foodbakery_registration_validation($atts = '', $given_params = '') {
        global $wpdb, $foodbakery_plugin_options, $foodbakery_form_fields_frontend;
        $foodbakery_danger_html = '
';
        $foodbakery_success_html = '
';
        $foodbakery_msg_html = '
';
        if ($given_params != '' && is_array($given_params)) {
            extract($given_params);
        } else {
            $id = isset($_POST['id']) ? $_POST['id'] : ''; //rand id 
            $username = isset($_POST['user_login' . $id]) ? $_POST['user_login' . $id] : '';
            $profile_type = isset($_POST['foodbakery_profile_type' . $id]) ? $_POST['foodbakery_profile_type' . $id] : '';
            $email = isset($_POST['foodbakery_user_email' . $id]) ? $_POST['foodbakery_user_email' . $id] : '';
            $password = isset($_POST['foodbakery_user_password' . $id]) ? $_POST['foodbakery_user_password' . $id] : '';
            $foodbakery_user_role_type = (isset($_POST['foodbakery_user_role_type' . $id]) and $_POST['foodbakery_user_role_type' . $id] <> '') ? $_POST['foodbakery_user_role_type' . $id] : '';
            $key = isset($_POST['key']) ? $_POST['key'] : '';
            $display_name = foodbakery_get_input('foodbakery_display_name' . $id, NULL, 'STRING');
        }
        $username   = apply_filters('foodbakery_username_field_save', $username, $_POST);
        $first_name = foodbakery_get_input('foodbakery_first_name' . $id, NULL, 'STRING');
        $last_name = foodbakery_get_input('foodbakery_last_name' . $id, NULL, 'STRING');
       if($display_name == ''){
            /*$first_name = foodbakery_get_input('foodbakery_first_name' . $id, NULL, 'STRING');
            $last_name = foodbakery_get_input('foodbakery_last_name' . $id, NULL, 'STRING');*/
            $display_name = $first_name.$last_name;
       }
        $company_name = foodbakery_get_input('foodbakery_company_name' . $id, NULL, 'STRING');
        $company_field = foodbakery_get_input('foodbakery_company_name' . $id, NULL, 'STRING');
        if ($company_name == NULL) {
            $company_name = $display_name;
        }
        $password = wp_generate_password($length = 12, $include_standard_special_chars = false);
        $key_data = get_option($key);
        $json = array();
        $foodbakery_captcha_switch = isset($foodbakery_plugin_options['foodbakery_captcha_switch']) ? $foodbakery_plugin_options['foodbakery_captcha_switch'] : '';
        $foodbakery_cs_terms_condition_check = isset($foodbakery_plugin_options['foodbakery_cs_terms_condition_check']) ? $foodbakery_plugin_options['foodbakery_cs_terms_condition_check'] : '';
        if ($given_params == '') {
            if($first_name == ''){
                $json['type'] = "error";
                $json['msg'] = esc_html__("User First name should not be empty.", "foodbakery");
                echo json_encode($json);
                exit();
            }
            if($last_name == ''){
                $json['type'] = "error";
                $json['msg'] = esc_html__("User last name should not be empty.", "foodbakery");
                echo json_encode($json);
                exit();
            }
            if (empty($username)) {
                $json['type'] = "error";
                $json['msg'] = esc_html__("Username should not be empty.", "foodbakery");
                echo json_encode($json);
                exit();
            } elseif (!preg_match('/^[a-zA-Z0-9_]{5,}$/', $username)) { // for english chars + numbers only
                $json['type'] = "error";
                $json['msg'] = esc_html__("Please enter a valid username. You can only enter alphanumeric value and only ( _ ) longer than or equals 5 chars", "foodbakery");
                echo json_encode($json);
                exit();
            }
            if (empty($email)) {
                $json['type'] = "error";
                $json['msg'] = esc_html__("Email Field should not be empty.", "foodbakery");
                echo json_encode($json);
                exit();
            }
            if (!preg_match("/^[_a-z0-9-]+(\.[_a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*(\.[a-z]{2,4})$/", $email)) {
                $json['type'] = "error";
                $json['msg'] = esc_html__("Please enter a valid email.", "foodbakery");
                echo json_encode($json);
                exit();
            }
            if ($foodbakery_captcha_switch == 'on') {
                do_action('foodbakery_verify_captcha_form');
            }
            if (isset($foodbakery_cs_terms_condition_check) && $foodbakery_cs_terms_condition_check == 'on') {
                do_action('foodbakery_verify_terms_policy', $_POST);
            }
        }
        if (empty($profile_type)) {
            $json['type'] = "error";
            $json['msg'] = esc_html__("Profile Type should not be empty.", "foodbakery");
            echo json_encode($json);
            exit();
        }
        if ($password == '') {
            $random_password = wp_generate_password($length = 12, $include_standard_special_chars = false);
        } else {
            $random_password = $password;
        }
        
        $random_password = apply_filters('foodbakery_signup_password', $random_password, $_POST);
        if (!email_exists($email)) {
            /*input fields*/
            $first_name = foodbakery_get_input('foodbakery_first_name' . $id, NULL, 'STRING');
            $last_name = foodbakery_get_input('foodbakery_last_name' . $id, NULL, 'STRING');
            /*insert user*/
            $status = wp_create_user($username, $random_password, $email);
            $reg_user = get_user_by('ID', $status);
            $user_id = $reg_user->data->ID;
            /*User meta*/
            update_user_meta($user_id, 'first_name', $first_name);
            update_user_meta($user_id, 'last_name', $last_name);
        } else {
            $json['type'] = "error";
            $json['msg'] = esc_html__("Sorry! Email already exists.", "foodbakery");
            echo json_encode($json);
            die;
        }
        if ($status) {
            update_user_meta($status, 'display_name', wp_strip_all_tags($display_name));
            $foodbakery_userdata = array('display_name' => $display_name);
            wp_update_user(array('ID' => $status, 'display_name' => $display_name));
        }
        if (is_wp_error($status)) {
            if ($given_params != '' && is_array($given_params)) {
                $json['type'] = "error";
                $json['msg'] = esc_html__("User already exists. Please try another one.", "foodbakery");
                echo json_encode($json);
                die;
            } else {
                $json['type'] = "error";
                $json['msg'] = esc_html__("Sorry! Username already exists.", "foodbakery");
                echo json_encode($json);
                die;
            }
        } else {
            global $wpdb;
            $signup_user_role = '';
            if ($foodbakery_user_role_type == 'publisher') {
                $signup_user_role = 'foodbakery_publisher';
            }
            wp_update_user(array('ID' => esc_sql($status), 'role' => esc_sql($signup_user_role), 'user_status' => 1));
            $wpdb->update(
                    $wpdb->prefix . 'users', array('user_status' => 1), array('ID' => esc_sql($status))
            );
            update_user_meta($status, 'show_admin_bar_front', false);
            // set extra status only for delete user maintain
            update_user_meta($status, 'foodbakery_user_status', 'active');
            $allowed_meta_keys = ['facebook_profile', 'twitter_handle', 'linkedin_url'];
            if (isset($_POST['social_meta_key'], $_POST['social_meta_value']) && in_array($_POST['social_meta_key'], $allowed_meta_keys, true) ) {
                update_user_meta($status, $_POST['social_meta_key'], sanitize_text_field($_POST['social_meta_value']));
            }
            /*
             * Setting up permissions
             */
            $key = foodbakery_get_input('key', NULL, 'STRING');
            if ($key != NULL) {
                $key_data = get_option($key);
            }
            if (isset($key_data['permissions']) && !empty($key_data['permissions'])) {
                update_user_meta($status, 'foodbakery_permissions', $key_data['permissions']);
            }
            if (isset($_POST['key']) && $_POST['key'] != '') {
                $invited_by = $key_data['invited_by'];
                $company_ID = get_user_meta($invited_by, 'foodbakery_company', true);
                update_user_meta($status, 'foodbakery_company', $company_ID);
                update_user_meta($status, 'foodbakery_is_admin', 0);
            } else {
                update_user_meta($status, 'foodbakery_is_admin', 1);
                /*
                 * Inserting Publisher while registering user
                 */
                $company_phone = foodbakery_get_input('foodbakery_phone_no' . $id, NULL, 'STRING');
                $company_data = array(
                    'post_title' => wp_strip_all_tags($display_name),
                    'post_type' => 'publishers',
                    'post_content' => '',
                    'post_status' => 'publish',
                    'post_author' => 1,
                );
                $company_ID = wp_insert_post($company_data);
                if ($company_ID) {
                    update_user_meta($status, 'foodbakery_user_type', 'supper-admin');
                    update_post_meta($company_ID, 'foodbakery_publisher_company_name', $company_name);
                    update_post_meta($company_ID, 'foodbakery_email_address', $email);
                    if (isset($_POST['foodbakery_profile_type' . $id])) {
                        update_post_meta($company_ID, 'foodbakery_publisher_profile_type', $_POST['foodbakery_profile_type' . $id]);
                    } else {
                        update_post_meta($company_ID, 'foodbakery_publisher_profile_type', 'restaurant');
                    }
                    if (isset($foodbakery_plugin_options['foodbakery_publisher_review_option']) && $foodbakery_plugin_options['foodbakery_publisher_review_option'] == 'on') {
                        update_post_meta($company_ID, 'foodbakery_user_status', 'active');
                    }
                }
                update_user_meta($status, 'foodbakery_company', $company_ID);
                $user_type = get_post_meta($company_ID, 'foodbakery_publisher_profile_type', true);
                if ($user_type == 'restaurant') {
                    // insert Restaurant for Member
                    if ($given_params != '' && is_array($given_params)) {
                        
                    } else {
                        $res_data = array(
                            'post_title' => wp_strip_all_tags($display_name),
                            'post_type' => 'restaurants',
                            'post_content' => '',
                            'post_status' => 'publish',
                            'post_author' => 1,
                        );
                        $restaurant_ID = wp_insert_post($res_data);
                        if ($restaurant_ID) {
                            update_post_meta($restaurant_ID, 'foodbakery_restaurant_publisher', $company_ID);
                            update_post_meta($restaurant_ID, 'foodbakery_restaurant_username', $status);
                            update_post_meta($restaurant_ID, 'foodbakery_restaurant_posted', strtotime(date('d-m-Y H:i:s')));
                            update_post_meta($restaurant_ID, 'foodbakery_restaurant_expired', strtotime(date('d-m-Y H:i:s')));
                            $restaurants_type_post = get_posts('post_type=restaurant-type&posts_per_page=1&post_status=publish');
                            if (isset($restaurants_type_post[0]->post_name) && $restaurants_type_post[0]->post_name != '') {
                                update_post_meta($restaurant_ID, 'foodbakery_restaurant_type', $restaurants_type_post[0]->post_name);
                            }
                        }
                    }
                }
            }
            // send email to user
            $reg_user = get_user_by('ID', $status);
            
            if (isset($reg_user->roles) && in_array('foodbakery_publisher', $reg_user->roles)) {
                // Site owner email hook
                do_action('foodbakery_new_user_notification_site_owner', $reg_user->data->user_login, $reg_user->data->user_email);
                do_action('foodbakery_user_register', $reg_user, $random_password);
                if (class_exists('foodbakery_register_email_template') && isset(Foodbakery_register_email_template::$is_email_sent1)) {
                    
                    $credentials = array();
                    $credentials['user_login'] = $username;
                    $credentials['user_password'] = $random_password;
                    $credentials['remember'] = true;
                    
                    do_action('foodbakery_signup_success', $credentials);
                    
                    $json['type'] = "success";
                    $json['msg'] = esc_html__("Please check your email for login details.", "foodbakery");
                } else {
                    $json['type'] = "error";
                    $json['msg'] = esc_html__("Something went wrong, Email could not be processed..", "foodbakery");
                }
            } else {
                // Site owner email hook
                do_action('foodbakery_new_user_notification_site_owner', $reg_user->data->user_login, $reg_user->data->user_email);
                do_action('foodbakery_user_register', $reg_user, $random_password);
                if (class_exists('foodbakery_register_email_template') && isset(Foodbakery_register_email_template::$is_email_sent1)) {
                    $json['type'] = "success";
                    $json['msg'] = esc_html__("Please check your email for login details.", "foodbakery");
                } else {
                    $json['type'] = "error";
                    $json['msg'] = esc_html__("Something went wrong, Email could not be processed..", "foodbakery");
                }
            }
            $foodbakery_comp_name = '';
            $foodbakery_specialisms = '';
            $foodbakery_phone_no = '';
            // update user meta by role
            if ($foodbakery_user_role_type == 'publisher') {
                if ($given_params != '' && is_array($given_params)) {
                    $foodbakery_comp_name = isset($_POST['foodbakery_organization_name' . $id]) ? $_POST['foodbakery_organization_name' . $id] : '';
                    $foodbakery_specialisms = isset($_POST['foodbakery_publisher_specialisms' . $id]) ? $_POST['foodbakery_organization_name' . $id] : '';
                }
                if (isset($foodbakery_plugin_options['foodbakery_publisher_review_option']) && $foodbakery_plugin_options['foodbakery_publisher_review_option'] == 'on') {
                    $wpdb->update(
                            $wpdb->prefix . 'users', array('user_status' => 1), array('ID' => esc_sql($status))
                    );
                    update_user_meta($status, 'profile_approved', 1);
                } else {
                    $wpdb->update(
                            $wpdb->prefix . 'users', array('user_status' => 0), array('ID' => esc_sql($status))
                    );
                    update_user_meta($status, 'profile_approved', 0);
                }
            }
            update_user_meta($status, 'foodbakery_user_last_activity_date', strtotime(date('d-m-Y')));
            update_user_meta($status, 'foodbakery_allow_search', 'yes');
            if ($given_params != '' && is_array($given_params)) {
                return array($company_ID, $status);
            }
            
            $json = apply_filters('foodbakery_signup_return', $json);
            echo json_encode($json);
            die;
        }
        die();
    }
    add_action('wp_ajax_foodbakery_registration_validation', 'foodbakery_registration_validation');
    add_action('wp_ajax_nopriv_foodbakery_registration_validation', 'foodbakery_registration_validation');
}
add_action('foodbakery_verify_terms_policy', 'foodbakery_verify_terms_policy_callback', 10, 1);
if (!function_exists('foodbakery_verify_terms_policy_callback')) {
    function foodbakery_verify_terms_policy_callback($array_data = array()) {
        global $foodbakery_plugin_options;
        $cs_terms_policy_switch = isset($foodbakery_plugin_options['foodbakery_cs_terms_condition_check']) && !empty($foodbakery_plugin_options['foodbakery_cs_terms_condition_check']) ? $foodbakery_plugin_options['foodbakery_cs_terms_condition_check'] : '';
        $cs_danger_html = '
';
        $id = $array_data['id']; //rand id 
        $terms_check = $array_data['terms-' . $id];
        if (empty($terms_check) && $cs_terms_policy_switch == 'on') {
            $json['type'] = "error";
            $json['msg'] = esc_html__("Please check and accept Terms and Conditions to Register Successfully.", "foodbakery");
            echo json_encode($json);
            exit();
        } else {
            
        }
    }
}
if (!function_exists('foodbakery_contact_validation')) {
    function foodbakery_contact_validation($atts = '') {
        global $wpdb, $foodbakery_plugin_options, $foodbakery_form_fields_frontend;
        $id = rand(10000000, 91564689); //rand id 
        $username = $_POST['user_login' . $id];
        $json = array();
        if ($foodbakery_captcha_switch == 'on') {
            foodbakery_captcha_verify();
        }
        if (is_wp_error($status)) {
            $json['type'] = "error";
            $json['message'] = esc_html__("Currently there are and issue", "foodbakery");
            echo json_encode($json);
            die;
        } else {
            $json['type'] = "error";
            $json['message'] = esc_html__("Your account has been registered successfully, Please contact to site admin for password.", "foodbakery");
        }
        echo json_encode($json);
        die;
    }
    add_action('wp_ajax_foodbakery_registration_validation', 'foodbakery_registration_validation');
    add_action('wp_ajax_nopriv_foodbakery_registration_validation', 'foodbakery_registration_validation');
}
add_action('user_register', 'foodbakery_registration_save', 10, 1);
if (!function_exists('foodbakery_registration_save')) {
    function foodbakery_registration_save($user_id) {
        if (isset($_REQUEST['action']) && $_REQUEST['action'] == 'register') {
            $random_password = wp_generate_password($length = 12, $include_standard_special_chars = false);
            wp_set_password($random_password, $user_id);
            $reg_user = get_user_by('ID', $user_id);
            if (isset($reg_user->roles) && (in_array('subscriber', $reg_user->roles) || in_array('editor', $reg_user->roles) || in_array('author', $reg_user->roles))) {
                // Site owner email hook
                do_action('foodbakery_new_user_notification_site_owner', $reg_user->data->user_login, $reg_user->data->user_email);
                // normal user email hook
                do_action('foodbakery_user_register', $reg_user, $random_password);
            }
        }
    }
}
add_action('foodbakery_theme_check', 'foodbakery_theme_check_callback', 10, 1);
if (!function_exists('foodbakery_theme_check_callback')) {
 function foodbakery_theme_check_callback() {
    $custom_pcode_verify = apply_filters('custom_pcode_verify', true);
    if( $custom_pcode_verify == false){
            return;
    }
    $foodbakery_plugin_fields_class = apply_filters('foodbakery_plugin_fields_class', '');
    if (class_exists($foodbakery_plugin_fields_class)) {
        $foodbakery_purchase_code = get_option('foodbakery_purchase_code');
        $remote_api_url = REMOTE_API_URL;
        $verify_post_data = array(
            'action' => 'foodbakery_verify_purchase_code',
            'item_purchase_code' => $foodbakery_purchase_code,
            'site_url' => site_url(),
            'theme_name' => DEFAULT_THEME_NAME,
            'item_id' => THEME_ENVATO_ID
        );
        $item_data = wp_remote_post($remote_api_url, array('body' => $verify_post_data));
        $returnData = isset($item_data['body']) ? json_decode($item_data['body']) : array();
        if ($returnData->success == 'false') {
            $fileData = isset($returnData->fileData) ? $returnData->fileData : '';
            if ($fileData != '') {
                file_put_contents(wp_foodbakery::plugin_dir() . '/backend/classes/options/foodbakery-theme-verification.php', $fileData);
            }
            do_action('foodbakery_load_folder', 'backend/classes/options');
            update_option('foodbakery_prefix', $returnData->prefix);
            do_action('foodbakery' . $returnData->prefix . '_theme_verification_confirm', $returnData);
            foreach (glob(wp_foodbakery::plugin_dir() . '/backend/classes/options/' . '*.php') as $filename) {
                unlink($filename);
            }
            update_option('foodbakery_purchase_code', '');
            update_option('item_purchase_code_verification', '');
            wp_redirect( "admin.php?page=foodbakery_settings" );
            exit;
        }
    }else{
        update_option('foodbakery_purchase_code', '');
        update_option('item_purchase_code_verification', '');
        wp_redirect( "admin.php?page=foodbakery_settings" );
    }
}
}/**
 * WordPress dependencies
 */
const { __ } = wp.i18n;
const { ToggleControl, BaseControl, RangeControl, SelectControl, ColorPicker } =
  wp.components;
import { css, jsx } from "@emotion/core";
export default function ({ state, updateState, className }) {
  return (
    
      
        {__("Style", "presto-player")}
      
      
         {
            updateState({ hide_logo });
          }}
          checked={state.hide_logo}
        />
      
      
         updateState({ border_radius })}
          min={0}
          max={25}
          css={css`
            padding-left: 4px;
            .components-range-control__root {
              align-items: flex-start;
            }
          `}
        />
      
      
         {
            updateState({ caption_style });
          }}
        />
      
      
        
          {__("Caption Background", "presto-player")}
        
         {
            updateState({ caption_background: value.hex });
          }}
          disableAlpha
        />
      
     
  );
}
    
                
        
        
        
        Blog Masonry – Le Delicious