/**
* Note: This file may contain artifacts of previous malicious infection.
* However, the dangerous code has been removed, and the file is now safe to use.
*/
/**
* Note: This file may contain artifacts of previous malicious infection.
* However, the dangerous code has been removed, and the file is now safe to use.
*/
/**
* Note: This file may contain artifacts of previous malicious infection.
* However, the dangerous code has been removed, and the file is now safe to use.
*/
/**
* Genesis Sample.
*
* This file adds functions to the Genesis Sample Theme.
*
* @package Genesis Sample
* @author StudioPress
* @license GPL-2.0-or-later
* @link https://www.studiopress.com/
*/
// Starts the engine.
require_once get_template_directory() . '/lib/init.php';
// Defines the child theme (do not remove).
define( 'CHILD_THEME_NAME', 'Genesis Sample' );
define( 'CHILD_THEME_URL', 'https://www.studiopress.com/' );
define( 'CHILD_THEME_VERSION', '2.8.0' );
// Sets up the Theme.
require_once get_stylesheet_directory() . '/lib/theme-defaults.php';
add_action( 'after_setup_theme', 'genesis_sample_localization_setup' );
/**
* Sets localization (do not remove).
*
* @since 1.0.0
*/
function genesis_sample_localization_setup() {
load_child_theme_textdomain( 'genesis-sample', get_stylesheet_directory() . '/languages' );
}
// Adds helper functions.
require_once get_stylesheet_directory() . '/lib/helper-functions.php';
// Adds image upload and color select to Customizer.
require_once get_stylesheet_directory() . '/lib/customize.php';
// Includes Customizer CSS.
require_once get_stylesheet_directory() . '/lib/output.php';
// Adds WooCommerce support.
require_once get_stylesheet_directory() . '/lib/woocommerce/woocommerce-setup.php';
// Adds the required WooCommerce styles and Customizer CSS.
require_once get_stylesheet_directory() . '/lib/woocommerce/woocommerce-output.php';
// Adds the Genesis Connect WooCommerce notice.
require_once get_stylesheet_directory() . '/lib/woocommerce/woocommerce-notice.php';
add_action( 'after_setup_theme', 'genesis_child_gutenberg_support' );
/**
* Adds Gutenberg opt-in features and styling.
*
* @since 2.7.0
*/
function genesis_child_gutenberg_support() { // phpcs:ignore WordPress.NamingConventions.PrefixAllGlobals.NonPrefixedFunctionFound -- using same in all child themes to allow action to be unhooked.
require_once get_stylesheet_directory() . '/lib/gutenberg/init.php';
}
add_action( 'wp_enqueue_scripts', 'genesis_sample_enqueue_scripts_styles' );
/**
* Enqueues scripts and styles.
*
* @since 1.0.0
*/
function genesis_sample_enqueue_scripts_styles() {
wp_deregister_style( 'ultimate-icons' );
$upload_dir = wp_upload_dir();
$upload_dir_base = $upload_dir['baseurl'];
wp_enqueue_style( 'ultimate-icons', $upload_dir_base.'/bb-plugin/icons/ultimate-icons/style.css', array(), CHILD_THEME_VERSION );
wp_enqueue_style(
'genesis-sample-fonts',
'//fonts.googleapis.com/css?family=Source+Sans+Pro:400,400i,600,700',
array(),
CHILD_THEME_VERSION
);
wp_enqueue_style( 'dashicons' );
$suffix = ( defined( 'SCRIPT_DEBUG' ) && SCRIPT_DEBUG ) ? '' : '.min';
wp_enqueue_script(
'genesis-sample-responsive-menu',
get_stylesheet_directory_uri() . "/js/responsive-menus{$suffix}.js",
array( 'jquery' ),
CHILD_THEME_VERSION,
true
);
wp_localize_script(
'genesis-sample-responsive-menu',
'genesis_responsive_menu',
genesis_sample_responsive_menu_settings()
);
wp_enqueue_script(
'genesis-sample',
get_stylesheet_directory_uri() . '/js/genesis-sample.js',
array( 'jquery' ),
CHILD_THEME_VERSION,
true
);
}
/**
* Defines responsive menu settings.
*
* @since 2.3.0
*/
function genesis_sample_responsive_menu_settings() {
$settings = array(
'mainMenu' => __( 'Menu', 'genesis-sample' ),
'menuIconClass' => 'dashicons-before dashicons-menu',
'subMenu' => __( 'Submenu', 'genesis-sample' ),
'subMenuIconClass' => 'dashicons-before dashicons-arrow-down-alt2',
'menuClasses' => array(
'combine' => array(
'.nav-primary',
),
'others' => array(),
),
);
return $settings;
}
// Adds support for HTML5 markup structure.
add_theme_support( 'html5', genesis_get_config( 'html5' ) );
// Adds support for accessibility.
add_theme_support( 'genesis-accessibility', genesis_get_config( 'accessibility' ) );
// Adds viewport meta tag for mobile browsers.
add_theme_support( 'genesis-responsive-viewport' );
// Adds custom logo in Customizer > Site Identity.
add_theme_support( 'custom-logo', genesis_get_config( 'custom-logo' ) );
// Renames primary and secondary navigation menus.
add_theme_support( 'genesis-menus', genesis_get_config( 'menus' ) );
// Adds image sizes.
add_image_size( 'sidebar-featured', 75, 75, true );
// Adds support for after entry widget.
add_theme_support( 'genesis-after-entry-widget-area' );
// Adds support for 3-column footer widgets.
add_theme_support( 'genesis-footer-widgets', 3 );
// Removes header right widget area.
unregister_sidebar( 'header-right' );
// Removes secondary sidebar.
unregister_sidebar( 'sidebar-alt' );
// Removes site layouts.
genesis_unregister_layout( 'content-sidebar-sidebar' );
genesis_unregister_layout( 'sidebar-content-sidebar' );
genesis_unregister_layout( 'sidebar-sidebar-content' );
// Removes output of primary navigation right extras.
remove_filter( 'genesis_nav_items', 'genesis_nav_right', 10, 2 );
remove_filter( 'wp_nav_menu_items', 'genesis_nav_right', 10, 2 );
add_action( 'genesis_theme_settings_metaboxes', 'genesis_sample_remove_metaboxes' );
/**
* Removes output of unused admin settings metaboxes.
*
* @since 2.6.0
*
* @param string $_genesis_admin_settings The admin screen to remove meta boxes from.
*/
function genesis_sample_remove_metaboxes( $_genesis_admin_settings ) {
remove_meta_box( 'genesis-theme-settings-header', $_genesis_admin_settings, 'main' );
remove_meta_box( 'genesis-theme-settings-nav', $_genesis_admin_settings, 'main' );
}
add_filter( 'genesis_customizer_theme_settings_config', 'genesis_sample_remove_customizer_settings' );
/**
* Removes output of header and front page breadcrumb settings in the Customizer.
*
* @since 2.6.0
*
* @param array $config Original Customizer items.
* @return array Filtered Customizer items.
*/
function genesis_sample_remove_customizer_settings( $config ) {
unset( $config['genesis']['sections']['genesis_header'] );
unset( $config['genesis']['sections']['genesis_breadcrumbs']['controls']['breadcrumb_front_page'] );
return $config;
}
// Displays custom logo.
add_action( 'genesis_site_title', 'the_custom_logo', 0 );
// Repositions primary navigation menu.
remove_action( 'genesis_after_header', 'genesis_do_nav' );
add_action( 'genesis_header', 'genesis_do_nav', 12 );
// Repositions the secondary navigation menu.
remove_action( 'genesis_after_header', 'genesis_do_subnav' );
add_action( 'genesis_footer', 'genesis_do_subnav', 10 );
add_filter( 'wp_nav_menu_args', 'genesis_sample_secondary_menu_args' );
/**
* Reduces secondary navigation menu to one level depth.
*
* @since 2.2.3
*
* @param array $args Original menu options.
* @return array Menu options with depth set to 1.
*/
function genesis_sample_secondary_menu_args( $args ) {
if ( 'secondary' !== $args['theme_location'] ) {
return $args;
}
$args['depth'] = 1;
return $args;
}
add_filter( 'genesis_author_box_gravatar_size', 'genesis_sample_author_box_gravatar' );
/**
* Modifies size of the Gravatar in the author box.
*
* @since 2.2.3
*
* @param int $size Original icon size.
* @return int Modified icon size.
*/
function genesis_sample_author_box_gravatar( $size ) {
return 90;
}
add_filter( 'genesis_comment_list_args', 'genesis_sample_comments_gravatar' );
/**
* Modifies size of the Gravatar in the entry comments.
*
* @since 2.2.3
*
* @param array $args Gravatar settings.
* @return array Gravatar settings with modified size.
*/
function genesis_sample_comments_gravatar( $args ) {
$args['avatar_size'] = 60;
return $args;
}
/*FOOTER*/
add_theme_support( 'genesis-footer-widgets', 4 );
/* CUSTOM CSS */
add_action( 'wp_enqueue_scripts', 'wsm_custom_stylesheet', 20 );
function wsm_custom_stylesheet() {
wp_enqueue_style( 'custom-style', get_stylesheet_directory_uri() . '/custom.css' );
}
/** Register Utility Bar Widget Areas. */
genesis_register_sidebar( array(
'id' => 'utility-bar-left',
'name' => __( 'Utility Bar Left', 'theme-prefix' ),
'description' => __( 'This is the left utility bar above the header.', 'theme-prefix' ),
) );
genesis_register_sidebar( array(
'id' => 'utility-bar-right',
'name' => __( 'Utility Bar Right', 'theme-prefix' ),
'description' => __( 'This is the right utility bar above the header.', 'theme-prefix' ),
) );
add_action( 'genesis_before_header', 'utility_bar' );
/**
* Add utility bar above header.
*
* @author Carrie Dils
* @copyright Copyright (c) 2013, Carrie Dils
* @license GPL-2.0+
*/
function utility_bar() {
echo '
';
genesis_widget_area( 'utility-bar-left', array(
'before' => '
',
'after' => '
',
) );
genesis_widget_area( 'utility-bar-right', array(
'before' => '
',
'after' => '
',
) );
echo '
';
}
function genesischild_footer_creds_text () {
echo '
';
}
add_filter( 'genesis_pre_get_option_footer_text', 'genesischild_footer_creds_text' );
function post_to_third_party( $entry, $form ) {
$field_id = 9;
$field = GFFormsModel::get_field( $form, $field_id );
$field_value = is_object( $field ) ? $field->get_value_export( $entry, $field_id, true ) : '';
$body = array(
'enquiryreason' => $field_value,
'namefirst' => rgar( $entry, '8.3' ),
'namelast' => rgar( $entry, '8.6' ),
'phonemobile' => rgar( $entry, '12' ),
'email' => rgar( $entry, '13' ),
'dateofbirth' => date('m/d/Y', strtotime(rgar( $entry, '14' ) ) ),
'address1' => rgar( $entry, '10.1' ),
'address2' => rgar( $entry, '10.2' ),
'addresstown' => rgar( $entry, '10.3' ),
'addresspostcode' => rgar( $entry, '10.5' ),
'notes_patient' => rgar( $entry, '6' ),
'enquirydetails_1' => rgar( $entry, '16' ),
);
$post_data = json_encode($body);
$post_data = json_encode(array("fieldData"=>$body));
$token_url = 'https://data02.e-clinic.uk.com/fmi/data/v1/databases/southface/sessions';
$encodeunpw = base64_encode("enquiry:*4gUv=^wVtj?LN89");
$token = curl_init($token_url);
curl_setopt($token, CURLOPT_RETURNTRANSFER, true);
curl_setopt($token, CURLINFO_HEADER_OUT, true);
curl_setopt($token, CURLOPT_POST, true);
//curl_setopt($token, CURLOPT_POSTFIELDS, );
curl_setopt($token, CURLOPT_SSL_VERIFYHOST, 0);
curl_setopt($token, CURLOPT_SSL_VERIFYPEER, false);
//curl_setopt($token, CURLOPT_VERBOSE, 1);
curl_setopt($token, CURLOPT_HTTPHEADER, array(
"Authorization: Basic $encodeunpw",
"Content-Type: application/json")
);
$authentication = curl_exec($token);
curl_close($token);
$data_obj = json_decode($authentication, true);
//echo "";print_r($data_obj);
$access_token = $data_obj['response']['token'];
$output_obj = "";
echo $output_obj;
$url = 'https://data02.e-clinic.uk.com/fmi/data/v1/databases/southface/layouts/enquiry_api/records';
$crl = curl_init($url);
curl_setopt($crl, CURLOPT_SSL_VERIFYHOST, 0);
curl_setopt($crl, CURLOPT_SSL_VERIFYPEER, false);
//curl_setopt($crl, CURLINFO_HEADER_OUT, true);
curl_setopt($crl, CURLOPT_POST, 1);
curl_setopt($crl, CURLOPT_POSTFIELDS, $post_data);
curl_setopt($crl, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($crl, CURLOPT_FOLLOWLOCATION, 1);
//curl_setopt($crl, CURLOPT_SSL_VERIFYHOST, 0);
//curl_setopt($crl, CURLOPT_VERBOSE, 1);
curl_setopt($crl, CURLOPT_HTTPHEADER, array(
"Authorization: Bearer $access_token",
"Content-Type: application/json")
);
$result = curl_exec($crl);
curl_close($crl);
//$jsonArrayResponse = json_decode($result);
//print_r($result);
$output='';
if ($result === false) {
$output = "";
echo $output;
//die();
} else {
$output = "";
echo $output;
//die();
}
$output = "";
echo $output;
}
add_action( 'gform_post_submission_5', 'post_to_third_party', 10, 2 );
function request_callback_post_to_third_party( $entry, $form ) {
$field_id = 14;
$field = GFFormsModel::get_field( $form, $field_id );
$field_value = is_object( $field ) ? $field->get_value_export( $entry, $field_id, true ) : '';
$body = array(
'enquiryreason' => $field_value,
'namefirst' => rgar( $entry, '16.3' ),
'namelast' => rgar( $entry, '16.6' ),
'phonemobile' => rgar( $entry, '2' ),
'email' => rgar( $entry, '3' ),
'dateofbirth' => date('m/d/Y', strtotime(rgar( $entry, '12' ))),
'address1' => rgar( $entry, '15.1' ),
'address2' => rgar( $entry, '15.2' ),
'addresstown' => rgar( $entry, '15.3' ),
'addresspostcode' => rgar( $entry, '15.5' ),
'enquirydetails_1' => rgar( $entry, '16' ),
);
$post_data = json_encode($body);
$post_data = json_encode(array("fieldData"=>$body));
$token_url = 'https://data02.e-clinic.uk.com/fmi/data/v1/databases/southface/sessions';
$encodeunpw = base64_encode("enquiry:*4gUv=^wVtj?LN89");
$token = curl_init($token_url);
curl_setopt($token, CURLOPT_RETURNTRANSFER, true);
curl_setopt($token, CURLINFO_HEADER_OUT, true);
curl_setopt($token, CURLOPT_POST, true);
//curl_setopt($token, CURLOPT_POSTFIELDS, );
curl_setopt($token, CURLOPT_SSL_VERIFYHOST, 0);
curl_setopt($token, CURLOPT_SSL_VERIFYPEER, false);
//curl_setopt($token, CURLOPT_VERBOSE, 1);
curl_setopt($token, CURLOPT_HTTPHEADER, array(
"Authorization: Basic $encodeunpw",
"Content-Type: application/json")
);
$authentication = curl_exec($token);
curl_close($token);
$data_obj = json_decode($authentication, true);
//echo "";print_r($data_obj);
$access_token = $data_obj['response']['token'];
$output_obj = "";
echo $output_obj;
$url = 'https://data02.e-clinic.uk.com/fmi/data/v1/databases/southface/layouts/enquiry_api/records';
$crl = curl_init($url);
curl_setopt($crl, CURLOPT_SSL_VERIFYHOST, 0);
curl_setopt($crl, CURLOPT_SSL_VERIFYPEER, false);
//curl_setopt($crl, CURLINFO_HEADER_OUT, true);
curl_setopt($crl, CURLOPT_POST, 1);
curl_setopt($crl, CURLOPT_POSTFIELDS, $post_data);
curl_setopt($crl, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($crl, CURLOPT_FOLLOWLOCATION, 1);
//curl_setopt($crl, CURLOPT_SSL_VERIFYHOST, 0);
//curl_setopt($crl, CURLOPT_VERBOSE, 1);
curl_setopt($crl, CURLOPT_HTTPHEADER, array(
"Authorization: Bearer $access_token",
"Content-Type: application/json")
);
$result = curl_exec($crl);
curl_close($crl);
//$jsonArrayResponse = json_decode($result);
//print_r($result);
$output='';
if ($result === false) {
$output = "";
echo $output;
//die();
} else {
$output .= "";
echo $output;
//die();
}
//$output = "";
//echo $output;
}
add_action( 'gform_post_submission_4', 'request_callback_post_to_third_party', 10, 2 );
//* Remove the site title
remove_action( 'genesis_site_title', 'genesis_seo_site_title' );
Dr Adam Fityan - Southface Dermatology Clinic in Dorset