function Insert_User_Data($atts)
{
    // Include the required global variables, and create a few new ones
    global $wpdb;
    global $ewd_feup_user_table_name, $ewd_feup_levels_table_name, $ewd_feup_user_fields_table_name;
    $UserCookie = CheckLoginCookie();
    $User = $wpdb->get_row($wpdb->prepare("SELECT * FROM {$ewd_feup_user_table_name} WHERE Username='******'", $UserCookie['Username']));
    $ReturnString = "";
    // Get the attributes passed by the shortcode, and store them in new variables for processing
    extract(shortcode_atts(array('field_name' => 'Username', 'plain_text' => 'Yes'), $atts));
    if ($field_name == "Level") {
        $PrivilegeLevel = $wpdb->get_row($wpdb->prepare("SELECT Level_Name FROM {$ewd_feup_levels_table_name} WHERE Level_ID='%d'", $User->Level_ID));
    } elseif ($field_name == "Username") {
    } else {
        $User_Data = $wpdb->get_results($wpdb->prepare("SELECT * FROM {$ewd_feup_user_fields_table_name} WHERE User_ID='%d'", $User->User_ID));
    }
    if ($field_name == "Level") {
        $ReturnString = $PrivilegeLevel->Level_Name;
    } elseif ($field_name == "Username") {
        $ReturnString = $User->Username;
    } else {
        foreach ($User_Data as $Field) {
            if ($Field->Field_Name == $field_name) {
                $ReturnString .= $Field->Field_Value;
            }
        }
    }
    if ($plain_text != "Yes") {
        $ReturnString = "<span class='ewd-feup-user-data'>" . $ReturnString . "</span>";
    }
    return $ReturnString;
}
예제 #2
0
function User_List($atts, $content = null)
{
    // Include the required global variables, and create a few new ones
    global $wpdb;
    global $ewd_feup_user_table_name, $ewd_feup_user_fields_table_name;
    $Custom_CSS = get_option("EWD_FEUP_Custom_CSS");
    $UserCookie = CheckLoginCookie();
    // Get the attributes passed by the shortcode, and store them in new variables for processing
    extract(shortcode_atts(array('login_page' => '', 'field_name' => '', 'field_value' => ''), $atts));
    if (!$UserCookie) {
        $ReturnString .= __("Please log in to access this content.", 'EWD_FEUP');
        if ($login_page != "") {
            $ReturnString .= "<br />" . __('Please', 'EWD_FEUP') . " <a href='" . $login_page . "'>" . __('login', 'EWD_FEUP') . "</a> " . __('to continue.', 'EWD_FEUP');
        }
        return $ReturnString;
    }
    if ($field_name == "" or $field_value == "") {
        $ReturnString .= __("Either field_name or field_value was left blank. Please make sure to include both attributes inside your shortcode.", 'EWD_FEUP');
        return $ReturnString;
    }
    $UserIDs = $wpdb->get_results($wpdb->prepare("SELECT User_ID FROM {$ewd_feup_user_fields_table_name} WHERE Field_Name='%s' AND Field_Value='%s'", $field_name, $field_value));
    foreach ($UserIDs as $UserID) {
        $User = $wpdb->get_row($wpdb->prepare("SELECT Username FROM {$ewd_feup_user_table_name} WHERE User_ID='%d'", $UserID->User_ID));
        $Usernames[] = $User->Username;
    }
    if (is_array($Usernames)) {
        foreach ($Usernames as $Username) {
            $ReturnString .= "<div class='ewd-feup-user-list-result'>" . $Username . "</div>";
        }
    }
    return $ReturnString;
}
예제 #3
0
 function Is_Logged_In()
 {
     $CheckCookie = CheckLoginCookie();
     if ($this->Username == $CheckCookie['Username'] and isset($this->Username)) {
         return true;
     } else {
         return false;
     }
 }
 function __construct()
 {
     global $wpdb, $ewd_feup_user_table_name;
     $CheckCookie = CheckLoginCookie();
     if ($CheckCookie['Username'] != "") {
         $this->Username = $CheckCookie['Username'];
         $this->User_ID = $wpdb->get_var($wpdb->prepare("SELECT User_ID FROM {$ewd_feup_user_table_name} WHERE Username=%s", $this->Username));
     }
 }
function User_List($atts, $content = null)
{
    // Include the required global variables, and create a few new ones
    global $wpdb;
    global $ewd_feup_user_table_name, $ewd_feup_user_fields_table_name;
    $Custom_CSS = get_option("EWD_FEUP_Custom_CSS");
    $UserCookie = CheckLoginCookie();
    // Get the attributes passed by the shortcode, and store them in new variables for processing
    extract(shortcode_atts(array('login_page' => '', 'field_name' => '', 'field_value' => '', 'login_necessary' => 'Yes', 'display_field' => 'Username', 'user_profile_page' => ''), $atts));
    $display_fields = explode(",", $display_field);
    $ReturnString .= "<style type='text/css'>";
    $ReturnString .= $Custom_CSS;
    $ReturnString .= EWD_FEUP_Add_Modified_Styles();
    if (!$UserCookie and $login_necessary == "Yes") {
        $ReturnString .= __("Please log in to access this content.", 'EWD_FEUP');
        if ($login_page != "") {
            $ReturnString .= "<br />" . __('Please', 'EWD_FEUP') . " <a href='" . $login_page . "'>" . __('login', 'EWD_FEUP') . "</a> " . __('to continue.', 'EWD_FEUP');
        }
        return $ReturnString;
    }
    if ($field_name != "" and $field_value != "") {
        $User_IDs = $wpdb->get_results($wpdb->prepare("SELECT User_ID FROM {$ewd_feup_user_fields_table_name} WHERE Field_Name='%s' AND Field_Value='%s'", $field_name, $field_value));
    } else {
        $User_IDs = $wpdb->get_results("SELECT User_ID FROM {$ewd_feup_user_table_name}");
    }
    foreach ($User_IDs as $User_ID) {
        foreach ($display_fields as $display_field) {
            if ($display_field == "Username") {
                $User = $wpdb->get_row($wpdb->prepare("SELECT Username FROM {$ewd_feup_user_table_name} WHERE User_ID='%d'", $User_ID->User_ID));
                $Return_User[$display_field] = $User->Username;
            } else {
                $User = $wpdb->get_row($wpdb->prepare("SELECT Field_Value FROM {$ewd_feup_user_fields_table_name} WHERE User_ID='%d' and Field_Name=%s", $User_ID->User_ID, $display_field));
                $Return_User[$display_field] = $User->Field_Value;
            }
        }
        $Return_User['User_ID'] = $User_ID->User_ID;
        $UserDataSet[] = $Return_User;
        unset($Return_User);
    }
    if (is_array($UserDataSet)) {
        foreach ($UserDataSet as $User_Data) {
            $ReturnString .= "<div class='ewd-feup-user-list-result' id='ewd-feup-user-list'>";
            if ($user_profile_page != "") {
                $ReturnString .= "<a href='" . $user_profile_page . "?User_ID=" . $User_Data['User_ID'] . "'>";
            }
            foreach ($display_fields as $display_field) {
                $ReturnString .= $User_Data[$display_field] . " ";
            }
            if ($user_profile_page != "") {
                $ReturnString .= "</a>";
            }
            $ReturnString .= "</div>";
        }
    }
    return $ReturnString;
}
function Privilege_Level($atts, $content = null)
{
    // Include the required global variables, and create a few new ones
    global $wpdb;
    global $ewd_feup_user_table_name, $ewd_feup_levels_table_name, $ewd_feup_user_fields_table_name;
    $Custom_CSS = get_option("EWD_FEUP_Custom_CSS");
    $ReturnString = "";
    $UserCookie = CheckLoginCookie();
    if ($UserCookie) {
        $User = $wpdb->get_row($wpdb->prepare("SELECT * FROM {$ewd_feup_user_table_name} WHERE Username='******'", $UserCookie['Username']));
        $PrivilegeLevel = $wpdb->get_row($wpdb->prepare("SELECT Level_Privilege FROM {$ewd_feup_levels_table_name} WHERE Level_ID='%d'", $User->Level_ID));
        $User_Data = $wpdb->get_results($wpdb->prepare("SELECT * FROM {$ewd_feup_user_fields_table_name} WHERE User_ID='%d'", $User->User_ID));
    }
    // Get the attributes passed by the shortcode, and store them in new variables for processing
    extract(shortcode_atts(array('login_page' => '', 'no_message' => '', 'minimum_level' => '', 'maximum_level' => '', 'level' => '', 'field_name' => '', 'field_value' => '', 'sneak_peak_characters' => 0, 'sneak_peak_words' => 0), $atts));
    if (!$UserCookie) {
        if ($sneak_peak_characters > 0) {
            $ReturnString = substr(do_shortcode($content), 0, $sneak_peak_characters) . "...<br>";
        }
        if ($sneak_peak_words > 0) {
            $ReturnString = Return_Until_Nth_Occurance(do_shortcode($content), " ", $sneak_peak_words) . "...<br>";
        }
        $ReturnString .= __("Please log in to access this content.", 'EWD_FEUP');
        if ($login_page != "") {
            $ReturnString .= "<br />" . __('Please', 'EWD_FEUP') . " <a href='" . $login_page . "'>" . __('login', 'EWD_FEUP') . "</a> " . __('to continue.', 'EWD_FEUP');
        }
        if ($no_message != "Yes") {
            return $ReturnString;
        } else {
            return;
        }
    }
    $ReturnString = do_shortcode($content);
    if ($minimum_level != '' and $PrivilegeLevel->Level_Privilege < $minimum_level) {
        $ReturnString = "<div class='ewd-feup-error'>" . __("Sorry, your account isn't a high enough level to access this content.", 'EWD_FEUP') . "</div>";
    }
    if ($maximum_level != '' and $PrivilegeLevel->Level_Privilege > $maximum_level) {
        $ReturnString = "<div class='ewd-feup-error'>" . __("Sorry, your account level is too high to access this content.", 'EWD_FEUP') . "</div>";
    }
    if ($level != '' and $PrivilegeLevel->Level_Privilege != $level) {
        $ReturnString = "<div class='ewd-feup-error'>" . __("Sorry, your account isn't the correct level to acces this content.", 'EWD_FEUP') . "</div>";
    }
    if ($field_name != '') {
        foreach ($User_Data as $Field) {
            if ($Field->Field_Name == $field_name and $Field->Field_Value == $field_value) {
                $Validate = "Yes";
            }
        }
        if ($Validate != "Yes") {
            $ReturnString = "<div class='ewd-feup-error'>" . __("Sorry, this content is only for those whose " . $field_name . " is " . $field_value . ".", 'EWD_FEUP') . "</div>";
        }
    }
    if (substr($ReturnString, 0, 28) != "<div class='ewd-feup-error'>" or $no_message != "Yes") {
        return $ReturnString;
    }
}
function Insert_User_Profile($atts)
{
    // Include the required global variables, and create a few new ones
    global $wpdb, $user_message;
    global $ewd_feup_fields_table_name, $ewd_feup_user_table_name, $ewd_feup_user_fields_table_name;
    $Custom_CSS = get_option("EWD_FEUP_Custom_CSS");
    $Salt = get_option("EWD_FEUP_Hash_Salt");
    $Time = time();
    $CheckCookie = CheckLoginCookie();
    $Sql = "SELECT * FROM {$ewd_feup_fields_table_name} WHERE Field_Show_In_Front_End='Yes' ORDER BY Field_Order";
    $Fields = $wpdb->get_results($Sql);
    if (isset($_GET['User_ID'])) {
        $UserData = $wpdb->get_results($wpdb->prepare("SELECT * FROM {$ewd_feup_user_fields_table_name} WHERE User_ID='%d'", $_GET['User_ID']));
    }
    //elseif (isset(get_query_var('user_id')))) {$UserData = $wpdb->get_results($wpdb->prepare("SELECT * FROM $ewd_feup_user_fields_table_name WHERE User_ID='%d'", get_query_var('user_id')));}
    $ReturnString = "";
    if (!isset($UserData)) {
        return __("Please select a valid user profile", 'EWD_FEUP');
    }
    // Get the attributes passed by the shortcode, and store them in new variables for processing
    extract(shortcode_atts(array('login_page' => '', 'omit_fields' => '', 'login_necessary' => 'Yes', 'submit_text' => __('Edit Profile', 'EWD_FEUP')), $atts));
    $ReturnString .= "<style type='text/css'>";
    $ReturnString .= $Custom_CSS;
    $ReturnString .= "</style>";
    if ($CheckCookie['Username'] == "" and $login_necessary == "Yes") {
        $ReturnString .= __('You must be logged in to access this page.', 'EWD_FEUP');
        if ($login_page != "") {
            $ReturnString .= "<br />" . __('Please', 'EWD_FEUP') . " <a href='" . $login_page . "'>" . __('login', 'EWD_FEUP') . "</a> " . __('to continue.', 'EWD_FEUP');
        }
        return $ReturnString;
    }
    $ReturnString .= "<div id='ewd-feup-user-profile-div'>";
    $Omitted_Fields = explode(",", $omit_fields);
    foreach ($Fields as $Field) {
        if (!in_array($Field->Field_Name, $Omitted_Fields)) {
            $Value = "";
            foreach ($UserData as $UserField) {
                if ($Field->Field_Name == $UserField->Field_Name) {
                    $Value = $UserField->Field_Value;
                }
            }
            $ReturnString .= "<div class='feup-user-profile-field'>";
            $ReturnString .= "<div id='ewd-feup-user-profile-lavel-" . $Field->Field_ID . "' class='ewd-feup-user-profile-label'>" . $Field->Field_Name . ": </div>";
            $ReturnString .= "<div class='ewd-feup-text-input'>" . $Value . "</div>";
            $ReturnString .= "</div>";
            unset($Req_Text);
        }
    }
    $ReturnString .= "<div class='feup-pure-control-group'><label for='submit'></label><input type='submit' class='ewd-feup-submit feup-pure-button feup-pure-button-primary' name='Edit_Profile_Submit' value='" . $submit_text . "'></div>";
    $ReturnString .= "</form>";
    $ReturnString .= "</div>";
    return $ReturnString;
}
function Insert_Reset_Password_Form($atts)
{
    global $wpdb, $user_message, $feup_success;
    global $ewd_feup_user_table_name;
    $Custom_CSS = get_option("EWD_FEUP_Custom_CSS");
    $Salt = get_option("EWD_FEUP_Hash_Salt");
    $Time = time();
    $ReturnString = "";
    // Get the attributes passed by the shortcode, and store them in new variables for processing
    extract(shortcode_atts(array('redirect_page' => '#', 'login_page' => '', 'submit_text' => __('Update Account', 'EWD_FEUP')), $atts));
    $CheckCookie = CheckLoginCookie();
    if ($CheckCookie['Username'] == "") {
        $ReturnString .= __('You must be logged in to access this page.', 'EWD_FEUP');
        if ($login_page != "") {
            $ReturnString .= "<br />" . __('Please', 'EWD_FEUP') . " <a href='" . $login_page . "'>" . __('login', 'EWD_FEUP') . "</a> " . __('to continue.', 'EWD_FEUP');
        }
        return $ReturnString;
    }
    /*$Sql = "SELECT * FROM $ewd_feup_fields_table_name ";
    	$Fields = $wpdb->get_results($Sql);*/
    $User = $wpdb->get_row($wpdb->prepare("SELECT * FROM {$ewd_feup_user_table_name} WHERE Username='******'", $CheckCookie['Username']));
    $ReturnString .= "<style type='text/css'>";
    $ReturnString .= $Custom_CSS;
    $ReturnString .= "</style>";
    if ($feup_success and $redirect_page != '#') {
        FEUPRedirect($redirect_page);
    }
    $ReturnString .= "<div id='ewd-feup-edit-profile-form-div'>";
    if (isset($user_message['Message'])) {
        $ReturnString .= $user_message['Message'];
    }
    $ReturnString .= "<form action='#' method='post' id='ewd-feup-edit-profile-form' class='pure-form pure-form-aligned'>";
    $ReturnString .= "<input type='hidden' name='ewd-feup-check' value='" . sha1(md5($Time . $Salt)) . "'>";
    $ReturnString .= "<input type='hidden' name='ewd-feup-time' value='" . $Time . "'>";
    $ReturnString .= "<input type='hidden' name='ewd-feup-action' value='edit-account'>";
    $ReturnString .= "<input type='hidden' name='Username' value='" . $User->Username . "'>";
    $ReturnString .= "<div id='ewd-feup-register-username-div' class='ewd-feup-field-label'>" . __('Email', 'EWD_FEUP') . ": " . $User->Username . "</div>";
    $ReturnString .= "<div class='pure-control-group'>";
    $ReturnString .= "<label for='User_Password' id='ewd-feup-edit-password' class='ewd-feup-field-label'>" . __('Password', 'EWD_FEUP') . ": </label>";
    $ReturnString .= "<input type='password' class='ewd-feup-text-input' name='User_Password' class='ewd-feup-text-input pure-input-1-3' value='' />";
    $ReturnString .= "</div>";
    $ReturnString .= "<div class='pure-control-group'>";
    $ReturnString .= "<label for='Confirm_User_Password' id='ewd-feup-edit-confirm-password' class='ewd-feup-field-label'>" . __('Repeat Password', 'EWD_FEUP') . ": </label>";
    $ReturnString .= "<input type='password' class='ewd-feup-text-input' name='Confirm_User_Password' class='ewd-feup-text-input pure-input-1-3' value='' />";
    $ReturnString .= "</div>";
    $ReturnString .= "<div class='pure-control-group'><label for='submit'></label><input type='submit' class='ewd-feup-submit pure-button pure-button-primary' name='Edit_Password_Submit' value='" . $submit_text . "'></div>";
    $ReturnString .= "</div>";
    $ReturnString .= "</form>";
    return $ReturnString;
}
function Insert_Confirm_Forgot_Password($atts)
{
    global $wpdb, $user_message, $feup_success;
    global $ewd_feup_user_table_name;
    $Custom_CSS = get_option("EWD_FEUP_Custom_CSS");
    $CheckCookie = CheckLoginCookie();
    $Salt = get_option("EWD_FEUP_Hash_Salt");
    $Time = time();
    $User = $wpdb->get_row($wpdb->prepare("SELECT * FROM {$ewd_feup_user_table_name} WHERE Username='******'", $CheckCookie['Username']));
    $ReturnString = "";
    // Get the attributes passed by the shortcode, and store them in new variables for processing
    extract(shortcode_atts(array('redirect_page' => '#', 'login_page' => '', 'submit_text' => __('Change password', 'EWD_FEUP')), $atts));
    $ReturnString .= "<style type='text/css'>";
    $ReturnString .= $Custom_CSS;
    $ReturnString .= "</style>";
    if ($feup_success and $redirect_page != '#') {
        FEUPRedirect($redirect_page);
    }
    $ReturnString .= "<div id='ewd-feup-edit-profile-form-div'>";
    if (isset($user_message['Message'])) {
        $ReturnString .= $user_message['Message'];
    }
    $ReturnString .= "<form action='#' method='post' id='ewd-feup-edit-profile-form' class='feup-pure-form pure-form-aligned'>";
    $ReturnString .= "<input type='hidden' name='ewd-feup-check' value='" . sha1(md5($Time . $Salt)) . "'>";
    $ReturnString .= "<input type='hidden' name='ewd-feup-time' value='" . $Time . "'>";
    $ReturnString .= "<input type='hidden' name='ewd-feup-action' value='confirm-forgot-password'>";
    $ReturnString .= "<div class='feup-pure-control-group'>";
    $ReturnString .= "<label for='Email' id='ewd-feup-edit-password' class='ewd-feup-field-label'>" . __('Email', 'EWD_FEUP') . ": </label>";
    $ReturnString .= "<input type='email' class='ewd-feup-text-input' name='Email' class='ewd-feup-text-input' value='" . $_GET['add'] . "' />";
    $ReturnString .= "</div>";
    $ReturnString .= "<div class='feup-pure-control-group'>";
    $ReturnString .= "<label for='Resetcode' id='ewd-feup-edit-password' class='ewd-feup-field-label'>" . __('Reset code', 'EWD_FEUP') . ": </label>";
    $ReturnString .= "<input type='text' class='ewd-feup-text-input' name='Resetcode' class='ewd-feup-text-input' value='" . $_GET['rc'] . "' />";
    $ReturnString .= "</div>";
    $ReturnString .= "<div class='feup-pure-control-group'>";
    $ReturnString .= "<label for='User_Password' id='ewd-feup-edit-password' class='ewd-feup-field-label'>" . __('Password', 'EWD_FEUP') . ": </label>";
    $ReturnString .= "<input type='password' class='ewd-feup-text-input' name='User_Password' class='ewd-feup-text-input' value='' />";
    $ReturnString .= "</div>";
    $ReturnString .= "<div class='feup-pure-control-group'>";
    $ReturnString .= "<label for='Confirm_User_Password' id='ewd-feup-edit-confirm-password' class='ewd-feup-field-label'>" . __('Repeat Password', 'EWD_FEUP') . ": </label>";
    $ReturnString .= "<input type='password' class='ewd-feup-text-input' name='Confirm_User_Password' class='ewd-feup-text-input' value='' />";
    $ReturnString .= "</div>";
    $ReturnString .= "<div class='feup-pure-control-group'><label for='submit'></label><input type='submit' class='ewd-feup-submit feup-pure-button feup-pure-button-primary' name='Edit_Password_Submit' value='" . $submit_text . "'></div>";
    $ReturnString .= "</div>";
    $ReturnString .= "</form>";
    return $ReturnString;
}
예제 #10
0
function Insert_User_Data($atts)
{
    // Include the required global variables, and create a few new ones
    global $wpdb;
    global $ewd_feup_user_table_name, $ewd_feup_levels_table_name, $ewd_feup_user_fields_table_name;
    $UserCookie = CheckLoginCookie();
    if ($UserCookie['Username'] == "") {
        return;
    }
    $User = $wpdb->get_row($wpdb->prepare("SELECT * FROM {$ewd_feup_user_table_name} WHERE Username='******'", $UserCookie['Username']));
    $ReturnString = "";
    // Get the attributes passed by the shortcode, and store them in new variables for processing
    extract(shortcode_atts(array('field_name' => 'Username', 'plain_text' => 'Yes', 'before_text' => '', 'after_text' => ''), $atts));
    if ($field_name == "Level") {
        $PrivilegeLevel = $wpdb->get_row($wpdb->prepare("SELECT Level_Name FROM {$ewd_feup_levels_table_name} WHERE Level_ID='%d'", $User->Level_ID));
    } elseif ($field_name == "Username" or $field_name == "Account_Expiry") {
    } else {
        $User_Data = $wpdb->get_results($wpdb->prepare("SELECT * FROM {$ewd_feup_user_fields_table_name} WHERE User_ID='%d'", $User->User_ID));
    }
    if ($field_name == "Level") {
        $ReturnString = $PrivilegeLevel->Level_Name;
    } elseif ($field_name == "Account_Expiry") {
        $Current_Timestamp = time();
        $Future_Timestamp = strtotime("2100-01-01");
        $Expiry_Timestamp = strtotime($User->User_Account_Expiry);
        if ($Future_Timestamp == $Expiry_Timestamp) {
            $ReturnString = "Yes";
        } else {
            $ReturnString = round(($Expiry_Timestamp - $Current_Timestamp) / (24 * 60 * 60));
        }
    } elseif ($field_name == "Username") {
        $ReturnString = $User->Username;
    } else {
        foreach ($User_Data as $Field) {
            if ($Field->Field_Name == $field_name) {
                $ReturnString .= $Field->Field_Value;
            }
        }
    }
    $ReturnString = $before_text . $ReturnString . $after_text;
    if ($plain_text != "Yes") {
        $ReturnString = "<span class='ewd-feup-user-data'>" . $ReturnString . "</span>";
    }
    return $ReturnString;
}
function Determine_Redirect_Page($redirect_field, $redirect_array_string, $original_redirect)
{
    global $wpdb, $ewd_feup_user_table_name, $ewd_feup_user_fields_table_name;
    $CheckCookie = CheckLoginCookie();
    $User = $wpdb->get_row($wpdb->prepare("SELECT User_ID FROM {$ewd_feup_user_table_name} WHERE Username='******'", $CheckCookie['Username']));
    $Field = $wpdb->get_row("SELECT Field_Value FROM {$ewd_feup_user_fields_table_name} WHERE Field_Name='" . $redirect_field . "' AND User_ID='" . $User->User_ID . "'");
    $redirect_array = explode(",", $redirect_array_string);
    foreach ($redirect_array as $redirect) {
        $redirect_key = trim(substr($redirect, 0, strpos($redirect, "=>")));
        $redirect_value = trim(substr($redirect, strpos($redirect, "=>") + 2));
        $redirects[$redirect_key] = $redirect_value;
    }
    $Return_Redirect = $redirects[trim($Field->Field_Value)];
    if ($Return_Redirect == "") {
        $Return_Redirect = $original_redirect;
    }
    return $Return_Redirect;
}
function Insert_Subscribe_Now_0_Dollar_Local($atts)
{
    /** @var string $redirect_page
     * @var string $login_page
     * @var string $Time
     * @var string $Salt
     * @var string $omit_fields
     */
    // Include the required global variables, and create a few new ones
    global $wpdb, $user_message, $feup_success;
    global $ewd_feup_fields_table_name, $ewd_feup_user_table_name, $ewd_feup_user_fields_table_name;
    $Custom_CSS = get_option("EWD_FEUP_Custom_CSS");
    $CheckCookie = CheckLoginCookie();
    $Sql = "SELECT * FROM {$ewd_feup_fields_table_name} WHERE Field_Show_In_Front_End='Yes' ORDER BY `FIELD_ORDER` ASC";
    $Fields = $wpdb->get_results($Sql);
    $User = $wpdb->get_row($wpdb->prepare("SELECT * FROM {$ewd_feup_user_table_name} WHERE Username='******'", $CheckCookie['Username']));
    $UserData = $wpdb->get_results($wpdb->prepare("SELECT * FROM {$ewd_feup_user_fields_table_name} WHERE User_ID='%d'", $User->User_ID));
    $ReturnString = "";
    $output = "";
    $output .= "<script> var \$user_id= {$User->User_ID} ; </script>";
    $ReturnString .= $output;
    wp_enqueue_script('your_settings', '/wp-content/js/subscribe_now_0_dollar_local.js', array('jquery'));
    return $ReturnString;
}
예제 #13
0
function Insert_Edit_Profile($atts)
{
    // Include the required global variables, and create a few new ones
    global $wpdb, $user_message, $feup_success;
    global $ewd_feup_fields_table_name, $ewd_feup_user_table_name, $ewd_feup_user_fields_table_name;
    $Custom_CSS = get_option("EWD_FEUP_Custom_CSS");
    $Salt = get_option("EWD_FEUP_Hash_Salt");
    $Time = time();
    $CheckCookie = CheckLoginCookie();
    $Sql = "SELECT * FROM {$ewd_feup_fields_table_name} WHERE Field_Show_In_Front_End='Yes' ORDER BY Field_Order";
    $Fields = $wpdb->get_results($Sql);
    $User = $wpdb->get_row($wpdb->prepare("SELECT * FROM {$ewd_feup_user_table_name} WHERE Username='******'", $CheckCookie['Username']));
    $UserData = $wpdb->get_results($wpdb->prepare("SELECT * FROM {$ewd_feup_user_fields_table_name} WHERE User_ID='%d'", $User->User_ID));
    $ReturnString = "";
    // Get the attributes passed by the shortcode, and store them in new variables for processing
    extract(shortcode_atts(array('redirect_page' => '#', 'login_page' => '', 'omit_fields' => '', 'submit_text' => __('Edit Profile', 'EWD_FEUP')), $atts));
    $ReturnString .= "<style type='text/css'>";
    $ReturnString .= $Custom_CSS;
    $ReturnString .= "</style>";
    if ($CheckCookie['Username'] == "") {
        $ReturnString .= __('You must be logged in to access this page.', 'EWD_FEUP');
        if ($login_page != "") {
            $ReturnString .= "<br />" . __('Please', 'EWD_FEUP') . " <a href='" . $login_page . "'>" . __('login', 'EWD_FEUP') . "</a> " . __('to continue.', 'EWD_FEUP');
        }
        return $ReturnString;
    }
    if ($feup_success and $redirect_page != '#') {
        FEUPRedirect($redirect_page);
    }
    $ReturnString .= "<div id='ewd-feup-edit-profile-form-div'>";
    if (isset($user_message['Message'])) {
        $ReturnString .= $user_message['Message'];
    }
    $ReturnString .= "<form action='#' method='post' id='ewd-feup-edit-profile-form' class='pure-form pure-form-aligned' enctype='multipart/form-data'>";
    $ReturnString .= "<input type='hidden' name='ewd-feup-check' value='" . sha1(md5($Time . $Salt)) . "'>";
    $ReturnString .= "<input type='hidden' name='ewd-feup-time' value='" . $Time . "'>";
    $ReturnString .= "<input type='hidden' name='ewd-feup-action' value='edit-profile'>";
    $ReturnString .= "<input type='hidden' name='Omit_Fields' value='" . $omit_fields . "'>";
    $Omitted_Fields = explode(",", $omit_fields);
    foreach ($Fields as $Field) {
        if (!in_array($Field->Field_Name, $Omitted_Fields)) {
            if ($Field->Field_Required == "Yes") {
                $Req_Text = "required";
            } else {
                $Req_Text = "";
            }
            $Value = "";
            foreach ($UserData as $UserField) {
                if ($Field->Field_Name == $UserField->Field_Name) {
                    $Value = $UserField->Field_Value;
                }
            }
            $ReturnString .= "<div class='pure-control-group'>";
            $ReturnString .= "<label for='" . $Field->Field_Name . "' id='ewd-feup-edit-" . $Field->Field_ID . "' class='ewd-feup-field-label'>" . __($Field->Field_Name, 'EWD_FEUP') . ": </label>";
            if ($Field->Field_Type == "text" or $Field->Field_Type == "mediumint") {
                $ReturnString .= "<input name='" . $Field->Field_Name . "' id='ewd-feup-register-input-" . $Field->Field_ID . "' class='ewd-feup-text-input pure-input-1-3' type='text' value='" . $Value . "' " . $Req_Text . "/>";
            } elseif ($Field->Field_Type == "date") {
                $ReturnString .= "<input name='" . $Field->Field_Name . "' id='ewd-feup-register-input-" . $Field->Field_ID . "' class='ewd-feup-date-input pure-input-1-3' type='date' value='" . $Value . "' " . $Req_Text . "/>";
            } elseif ($Field->Field_Type == "datetime") {
                $ReturnString .= "<input name='" . $Field->Field_Name . "' id='ewd-feup-register-input-" . $Field->Field_ID . "' class='ewd-feup-datetime-input pure-input-1-3' type='datetime-local' value='" . $Value . "' " . $Req_Text . "/>";
            } elseif ($Field->Field_Type == "textarea") {
                $ReturnString .= "<textarea name='" . $Field->Field_Name . "' id='ewd-feup-register-input-" . $Field->Field_ID . "' class='ewd-feup-textarea pure-input-1-2' " . $Req_Text . ">" . $Value . "</textarea>";
            } elseif ($Field->Field_Type == "file") {
                $ReturnString .= __("Current file:", 'EWD_FEUP') . " " . substr($Value, 10) . " | ";
                $ReturnString .= "<input name='" . $Field->Field_Name . "' id='ewd-feup-register-input-" . $Field->Field_ID . "' class='ewd-feup-date-input pure-input-1-3' type='file' value='' " . $Req_Text . "/>";
            } elseif ($Field->Field_Type == "select") {
                $Options = explode(",", $Field->Field_Options);
                $ReturnString .= "<select name='" . $Field->Field_Name . "' id='ewd-feup-register-input-" . $Field->Field_ID . "' class='ewd-feup-select pure-input-1-3'>";
                foreach ($Options as $Option) {
                    $ReturnString .= "<option value='" . $Option . "' ";
                    if (trim($Option) == trim($Value)) {
                        $ReturnString .= "selected='selected'";
                    }
                    $ReturnString .= ">" . $Option . "</option>";
                }
                $ReturnString .= "</select>";
            } elseif ($Field->Field_Type == "radio") {
                $Counter = 0;
                $Options = explode(",", $Field->Field_Options);
                foreach ($Options as $Option) {
                    if ($Counter != 0) {
                        $ReturnString .= "</div><div class='pure-control-group ewd-feup-negative-top'><label class='pure-radio'></label>";
                    }
                    $ReturnString .= "<input type='radio' name='" . $Field->Field_Name . "' value='" . $Option . "' class='ewd-feup-radio' " . $Req_Text . " ";
                    if (trim($Option) == trim($Value)) {
                        $ReturnString .= "checked";
                    }
                    $ReturnString .= ">" . $Option;
                    $Counter++;
                }
            } elseif ($Field->Field_Type == "checkbox") {
                $Counter = 0;
                $Options = explode(",", $Field->Field_Options);
                $Values = explode(",", $Value);
                foreach ($Options as $Option) {
                    if ($Counter != 0) {
                        $ReturnString .= "</div><div class='pure-control-group ewd-feup-negative-top'><label class='pure-radio'></label>";
                    }
                    $ReturnString .= "<input type='checkbox' name='" . $Field->Field_Name . "[]' value='" . $Option . "' class='ewd-feup-checkbox' " . $Req_Text . " ";
                    if (in_array($Option, $Values)) {
                        $ReturnString .= "checked";
                    }
                    $ReturnString .= ">" . $Option . "</br>";
                    $Counter++;
                }
            }
            $ReturnString .= "</div>";
            unset($Req_Text);
        }
    }
    $ReturnString .= "<div class='pure-control-group'><label for='submit'></label><input type='submit' class='ewd-feup-submit pure-button pure-button-primary' name='Edit_Profile_Submit' value='" . $submit_text . "'></div>";
    $ReturnString .= "</form>";
    $ReturnString .= "</div>";
    return $ReturnString;
}
예제 #14
0
function EWD_FEUP_Account_Payment($atts)
{
    global $wpdb;
    global $ewd_feup_user_table_name, $ewd_feup_levels_table_name;
    $Custom_CSS = get_option("EWD_FEUP_Custom_CSS");
    $Payment_Frequency = get_option("EWD_FEUP_Payment_Frequency");
    $Payment_Types = get_option("EWD_FEUP_Payment_Types");
    $Membership_Cost = get_option("EWD_FEUP_Membership_Cost");
    $PayPal_Email_Address = get_option("EWD_FEUP_PayPal_Email_Address");
    $Pricing_Currency_Code = get_option("EWD_FEUP_Pricing_Currency_Code");
    $Thank_You_URL = get_option("EWD_FEUP_Thank_You_URL");
    $Discount_Codes_Array = get_option("EWD_FEUP_Discount_Codes_Array");
    $Levels_Payment_Array = get_option("EWD_FEUP_Levels_Payment_Array");
    if (!is_array($Levels_Payment_Array)) {
        $Levels_Payment_Array = array();
    }
    $CheckCookie = CheckLoginCookie();
    // Get the attributes passed by the shortcode, and store them in new variables for processing
    extract(shortcode_atts(array('username' => '', 'level' => '', 'discount_code' => ''), $atts));
    if ($CheckCookie['Username'] != "") {
        $username = $CheckCookie['Username'];
    }
    $ReturnString = "<style type='text/css'>";
    $ReturnString .= $Custom_CSS;
    $ReturnString .= EWD_FEUP_Add_Modified_Styles();
    $ReturnString .= "</style>";
    if ($username == "" and isset($_POST['Username'])) {
        $username = $_POST['Username'];
    }
    if ($level == "" and isset($_POST['level'])) {
        $level = $_POST['level'];
    }
    if ($discount_code == "" and isset($_POST['discount_code'])) {
        $discount_code = $_POST['discount_code'];
    }
    $feup_Label_Upgrade_Account = get_option("EWD_FEUP_Label_Upgrade_Account");
    $feup_Label_Upgrade_Level = get_option("EWD_FEUP_Label_Upgrade_Level");
    $feup_Label_Username = get_option("EWD_FEUP_Label_Username");
    $feup_Label_Level = get_option("EWD_FEUP_Label_Level");
    $feup_Label_Next = get_option("EWD_FEUP_Label_Next");
    $feup_Label_Discount_Message = get_option("EWD_FEUP_Label_Discount_Message");
    $feup_Label_Discount_Code = get_option("EWD_FEUP_Label_Discount_Code");
    $feup_Label_Use_Discount_Code = get_option("EWD_FEUP_Label_Use_Discount_Code");
    if ($feup_Label_Upgrade_Account == "") {
        $feup_Label_Upgrade_Account = __("Upgrade Account", 'EWD_FEUP');
    }
    if ($feup_Label_Upgrade_Level == "") {
        $feup_Label_Upgrade_Level = __("Select the level you'd like to upgrade to using the form below:", 'EWD_FEUP');
    }
    if ($feup_Label_Username == "") {
        $feup_Label_Username = __('Username', 'EWD_FEUP');
    }
    if ($feup_Label_Level == "") {
        $feup_Label_Level = __('Level', 'EWD_FEUP');
    }
    if ($feup_Label_Next == "") {
        $feup_Label_Next = __('Next', 'EWD_FEUP');
    }
    if ($feup_Label_Discount_Message == "") {
        $feup_Label_Discount_Message = __("Have a discount code? Enter it below.", 'EWD_FEUP');
    }
    if ($feup_Label_Discount_Code == "") {
        $feup_Label_Discount_Code = __('Discount Code', 'EWD_FEUP');
    }
    if ($feup_Label_Use_Discount_Code == "") {
        $feup_Label_Discount_Code = __('Use Discount Code', 'EWD_FEUP');
    }
    if ($username == "" or $Payment_Types == "Levels" and $level == "") {
        $ReturnString .= "<div class-'ewd-feup-paypal-username-form'>";
        if ($Payment_Types == "Levels") {
            $ReturnString .= "<h4>" . $feup_Label_Upgrade_Account . "</h4>";
            $ReturnString .= "<p>" . $feup_Label_Upgrade_Level . "</p>";
        }
        $ReturnString .= "<form action='#' method='post'>";
        if ($username == "") {
            $ReturnString .= "<div class='feup-pure-control-group'>";
            $ReturnString .= "<label for='Username' id='ewd-feup-paypal-username-div' class='ewd-feup-field-label'>" . $feup_Label_Username . ": </label>";
            $ReturnString .= "<input type='text' class='ewd-feup-text-input ewd-feup-paypal-username-input' name='Username'>";
            $ReturnString .= "</div>";
        } else {
            $ReturnString .= "<div class='feup-pure-control-group'>";
            $ReturnString .= "<label for='Username' id='ewd-feup-paypal-username-label' class='ewd-feup-field-label'>" . $feup_Label_Username . ": </label>";
            $ReturnString .= "<input type='hidden' name='Username' value='" . $username . "' />";
            $ReturnString .= "<span class='ewd-feup-username'>" . $username . "</span>";
            $ReturnString .= "</div>";
        }
        if ($Payment_Types == "Levels") {
            if ($level == "") {
                $ReturnString .= "<div class='feup-pure-control-group'>";
                $ReturnString .= "<label for='level' id='ewd-feup-paypal-username-div' class='ewd-feup-field-label'>" . $feup_Label_Level . ": </label>";
                $ReturnString .= "<select class='ewd-feup-select-input' name='level'>";
                foreach ($Levels_Payment_Array as $Level_Payment_Item) {
                    $Level = $wpdb->get_row($wpdb->prepare("SELECT * FROM {$ewd_feup_levels_table_name} WHERE Level_ID=%d", $Level_Payment_Item['Level']));
                    $ReturnString .= "<option value='" . $Level_Payment_Item['Level'] . "'>" . $Level->Level_Name . " (" . $Level_Payment_Item['Amount'] . ")</option>";
                }
                $ReturnString .= "</select>";
                $ReturnString .= "</div>";
            } else {
                $ReturnString .= "<input type='hidden' name='level' value='" . $level . "' />";
            }
        }
        $ReturnString .= "<div class='feup-pure-control-group'><label for='submit'></label><input type='submit' class='ewd-feup-submit feup-pure-button feup-pure-button-primary' name='PayPal_Username_Submit' value='" . $feup_Label_Next . "'></div>";
        $ReturnString .= "</form>";
        $ReturnString .= "</div>";
    } else {
        $User = $wpdb->get_row($wpdb->prepare("SELECT * FROM {$ewd_feup_user_table_name} WHERE Username=%s", $username));
        if ($Payment_Frequency == "One_Time") {
            if ($Payment_Types == "Membership") {
                if ($discount_code != "") {
                    $Discount = EWD_FEUP_Calculate_Discount("Membership", $discount_code, $Payment_Frequency);
                } else {
                    $Discount['Amount'] = 0;
                }
                $Payment_Amount = $Membership_Cost - $Discount['Amount'];
                $ReturnString .= "<div class='ewd-feup-paypal-form'>";
                $ReturnString .= "<form action='https://www.paypal.com/cgi-bin/webscr' method='post' class='standard-form'>";
                //$ReturnString .= "<form action='https://www.sandbox.paypal.com/cgi-bin/webscr' method='post' class='standard-form'>";
                $ReturnString .= "<input type='hidden' name='item_name_1' value='" . substr(get_bloginfo('name'), 0, 100) . " Site Membership' />";
                $ReturnString .= "<input type='hidden' name='quantity_1' value='1' />";
                $ReturnString .= "<input type='hidden' name='amount_1' value='" . $Payment_Amount . "' />";
                $ReturnString .= "<input type='hidden' name='custom' value='User_ID=" . $User->User_ID . "&discount_code=" . $discount_code . "' />";
                $ReturnString .= "<input type='hidden' name='cmd' value='_cart' />";
                $ReturnString .= "<input type='hidden' name='upload' value='1' />";
                $ReturnString .= "<input type='hidden' name='business' value='" . $PayPal_Email_Address . "' />";
                $ReturnString .= "<input type='hidden' name='currency_code' value='" . $Pricing_Currency_Code . "' />";
                //$ReturnString .= "<input type='hidden' name='lc' value='CA' />"
                //$ReturnString .= "<input type='hidden' name='rm' value='2' />";
                $ReturnString .= "<input type='hidden' name='return' value='" . $Thank_You_URL . "' />";
                //$ReturnString .= "<input type='hidden' name='cancel_return' value='" . ' />
                $ReturnString .= "<input type='hidden' name='notify_url' value='" . get_site_url() . "' />";
                $ReturnString .= "<input type='submit' class='submit-button' value='Proceed to Payment' />";
                $ReturnString .= "</form>";
                $ReturnString .= "</div>";
            } else {
                $Selected_Level = $wpdb->get_row($wpdb->prepare("SELECT * FROM {$ewd_feup_levels_table_name} WHERE Level_ID=%d", $level));
                if ($discount_code != "") {
                    $Discount = EWD_FEUP_Calculate_Discount($level, $discount_code, $Payment_Frequency);
                } else {
                    $Discount['Amount'] = 0;
                }
                $Level_Cost = EWD_FEUP_Calculate_Level_Payment($level);
                $Payment_Amount = $Level_Cost - $Discount['Amount'];
                $ReturnString .= "<div class='ewd-feup-paypal-form'>";
                $ReturnString .= "<form action='https://www.paypal.com/cgi-bin/webscr' method='post' class='standard-form'>";
                //$ReturnString .= "<form action='https://www.sandbox.paypal.com/cgi-bin/webscr' method='post' class='standard-form'>";
                $ReturnString .= "<input type='hidden' name='item_name_1' value='" . substr(get_bloginfo('name'), 0, 100) . " " . $Selected_Level->Level_Name . " Fee' />";
                $ReturnString .= "<input type='hidden' name='quantity_1' value='1' />";
                $ReturnString .= "<input type='hidden' name='amount_1' value='" . $Payment_Amount . "' />";
                $ReturnString .= "<input type='hidden' name='custom' value='User_ID=" . $User->User_ID . "&discount_code=" . $discount_code . "&level_id=" . $level . "&current_level_id=" . $User->Level_ID . "' />";
                $ReturnString .= "<input type='hidden' name='cmd' value='_cart' />";
                $ReturnString .= "<input type='hidden' name='upload' value='1' />";
                $ReturnString .= "<input type='hidden' name='business' value='" . $PayPal_Email_Address . "' />";
                $ReturnString .= "<input type='hidden' name='currency_code' value='" . $Pricing_Currency_Code . "' />";
                //$ReturnString .= "<input type='hidden' name='lc' value='CA' />"
                //$ReturnString .= "<input type='hidden' name='rm' value='2' />";
                $ReturnString .= "<input type='hidden' name='return' value='" . $Thank_You_URL . "' />";
                //$ReturnString .= "<input type='hidden' name='cancel_return' value='" . ' />
                $ReturnString .= "<input type='hidden' name='notify_url' value='" . get_site_url() . "' />";
                $ReturnString .= "<input type='submit' class='submit-button' value='Proceed to Payment' />";
                $ReturnString .= "</form>";
                $ReturnString .= "</div>";
            }
        } else {
            if ($Payment_Types == "Membership") {
                if ($discount_code != "") {
                    $Discount = EWD_FEUP_Calculate_Discount("Membership", $discount_code, $Payment_Frequency);
                } else {
                    $Discount['Amount'] = 0;
                }
                if ($Discount['Amount'] == 0) {
                    $Payment_Amount = $Membership_Cost;
                } elseif ($Discount['Amount'] != 0 and $Discount['Recurring'] != "Yes") {
                    $Trial = true;
                    $Payment_Amount_Trial = $Membership_Cost - $Discount['Amount'];
                    $Payment_Amount = $Membership_Cost;
                } else {
                    $Payment_Amount = $Membership_Cost - $Discount['Amount'];
                }
                if ($Payment_Frequency == "Yearly") {
                    $PP_Frequnecy = "Y";
                }
                if ($Payment_Frequency == "Monthly") {
                    $PP_Frequnecy = "M";
                }
                $ReturnString .= "<div class='ewd-feup-paypal-form'>";
                $ReturnString .= "<form action='https://www.paypal.com/cgi-bin/webscr' method='post' class='standard-form'>";
                //$ReturnString .= "<form action='https://www.sandbox.paypal.com/cgi-bin/webscr' method='post' class='standard-form'>";
                $ReturnString .= "<input type='hidden' name='item_name' value='" . substr(get_bloginfo('name'), 0, 100) . " " . $Payment_Frequency . " Membership' />";
                $ReturnString .= "<input type='hidden' name='a3' value='" . $Payment_Amount . "' />";
                $ReturnString .= "<input type='hidden' name='p3' value='1' />";
                $ReturnString .= "<input type='hidden' name='t3' value='" . $PP_Frequnecy . "' />";
                if ($Trial) {
                    $ReturnString .= "<input type='hidden' name='a1' value='" . $Payment_Amount_Trial . "' />";
                    $ReturnString .= "<input type='hidden' name='p1' value='1' />";
                    $ReturnString .= "<input type='hidden' name='t1' value='" . $PP_Frequnecy . "' />";
                }
                $ReturnString .= "<input type='hidden' name='src' value='1' />";
                $ReturnString .= "<input type='hidden' name='custom' value='User_ID=" . $User->User_ID . "&discount_code=" . $discount_code . "' />";
                $ReturnString .= "<input type='hidden' name='cmd' value='_xclick-subscriptions' />";
                $ReturnString .= "<input type='hidden' name='business' value='" . $PayPal_Email_Address . "' />";
                $ReturnString .= "<input type='hidden' name='currency_code' value='" . $Pricing_Currency_Code . "' />";
                //$ReturnString .= "<input type='hidden' name='lc' value='CA' />"
                //$ReturnString .= "<input type='hidden' name='rm' value='2' />";
                $ReturnString .= "<input type='hidden' name='return' value='" . $Thank_You_URL . "' />";
                //$ReturnString .= "<input type='hidden' name='cancel_return' value='" . ' />
                $ReturnString .= "<input type='hidden' name='notify_url' value='" . get_site_url() . "' />";
                $ReturnString .= "<input type='submit' class='submit-button' value='Proceed to Payment' />";
                $ReturnString .= "</form>";
                $ReturnString .= "</div>";
            } else {
                $Selected_Level = $wpdb->get_row($wpdb->prepare("SELECT * FROM {$ewd_feup_levels_table_name} WHERE Level_ID=%d", $level));
                if ($discount_code != "") {
                    $Discount = EWD_FEUP_Calculate_Discount($level, $discount_code, $Payment_Frequency);
                } else {
                    $Discount['Amount'] = 0;
                }
                $Level_Cost = EWD_FEUP_Calculate_Level_Payment($level);
                if ($Discount['Amount'] == 0) {
                    $Payment_Amount = $Level_Cost;
                } elseif ($Discount['Amonut'] != 0 and $Discount['Recurring'] != "Yes") {
                    $Trial = true;
                    $Payment_Amount_Trial = $Level_Cost - $Discount['Amount'];
                    $Payment_Amount = $Level_Cost;
                } else {
                    $Payment_Amount = $Level_Cost - $Discount['Amount'];
                }
                if ($Payment_Frequency == "Yearly") {
                    $PP_Frequnecy = "Y";
                }
                if ($Payment_Frequency == "Monthly") {
                    $PP_Frequnecy = "M";
                }
                $ReturnString .= "<div class='ewd-feup-paypal-form'>";
                $ReturnString .= "<form action='https://www.paypal.com/cgi-bin/webscr' method='post' class='standard-form'>";
                //$ReturnString .= "<form action='https://www.sandbox.paypal.com/cgi-bin/webscr' method='post' class='standard-form'>";
                $ReturnString .= "<input type='hidden' name='item_name' value='" . substr(get_bloginfo('name'), 0, 100) . " " . $Payment_Frequency . " " . $Selected_Level->Level_Name . "' />";
                $ReturnString .= "<input type='hidden' name='a3' value='" . $Payment_Amount . "' />";
                $ReturnString .= "<input type='hidden' name='p3' value='1' />";
                $ReturnString .= "<input type='hidden' name='t3' value='" . $PP_Frequnecy . "' />";
                if ($Trial) {
                    $ReturnString .= "<input type='hidden' name='a1' value='" . $Payment_Amount_Trial . "' />";
                    $ReturnString .= "<input type='hidden' name='p3' value='1' />";
                    $ReturnString .= "<input type='hidden' name='t3' value='" . $PP_Frequnecy . "' />";
                }
                $ReturnString .= "<input type='hidden' name='src' value='1' />";
                $ReturnString .= "<input type='hidden' name='custom' value='User_ID=" . $User->User_ID . "&discount_code=" . $discount_code . "&level_id=" . $level . "&current_level_id=" . $User->Level_ID . "' />";
                $ReturnString .= "<input type='hidden' name='cmd' value='_xclick-subscriptions' />";
                $ReturnString .= "<input type='hidden' name='business' value='" . $PayPal_Email_Address . "' />";
                $ReturnString .= "<input type='hidden' name='currency_code' value='" . $Pricing_Currency_Code . "' />";
                //$ReturnString .= "<input type='hidden' name='lc' value='CA' />"
                //$ReturnString .= "<input type='hidden' name='rm' value='2' />";
                $ReturnString .= "<input type='hidden' name='return' value='" . $Thank_You_URL . "' />";
                //$ReturnString .= "<input type='hidden' name='cancel_return' value='" . ' />
                $ReturnString .= "<input type='hidden' name='notify_url' value='" . get_site_url() . "' />";
                $ReturnString .= "<input type='submit' class='submit-button' value='Proceed to Payment' />";
                $ReturnString .= "</form>";
                $ReturnString .= "</div>";
            }
        }
        if (sizeof($Discount_Codes_Array) > 0) {
            $ReturnString .= "<div class='ewd-feup-discount-div'>";
            $ReturnString .= $feup_Label_Discount_Message;
            $ReturnString .= "<div class='ewd-feup-discount-form'>";
            $ReturnString .= "<form action='#' method='post'>";
            $ReturnString .= "<input type='hidden' name='Payment_Required' value='Yes' />";
            if ($username != "") {
                $ReturnString .= "<input type='hidden' name='Username' value='" . $username . "' />";
            }
            if ($level != "") {
                $ReturnString .= "<input type='hidden' name='Username' value='" . $level . "' />";
            }
            $ReturnString .= "<div class='feup-pure-control-group'>";
            $ReturnString .= "<label for='Username' id='ewd-feup-paypal-discount-code-div' class='ewd-feup-field-label'>" . $feup_Label_Discount_Code . ": </label>";
            $ReturnString .= "<input type='text' class='ewd-feup-text-input ewd-feup-paypal-discount-code-input' name='discount_code'>";
            $ReturnString .= "</div>";
            $ReturnString .= "<div class='feup-pure-control-group'><label for='submit'></label><input type='submit' class='ewd-feup-submit feup-pure-button feup-pure-button-primary' name='Discount_Submit' value='" . $feup_Label_Use_Discount_Code . "'></div>";
            $ReturnString .= "</form>";
            $ReturnString .= "</div>";
        }
    }
    return $ReturnString;
}
function Insert_Edit_Times($atts)
{
    global $wpdb, $user_message, $feup_success;
    global $ewd_feup_user_table_name;
    global $ewd_feup_fields_table_name, $ewd_feup_user_table_name, $ewd_feup_user_fields_table_name;
    global $login_page, $redirect_page, $Time, $Salt;
    /** @var string $login_page
         * @var string $Time
         * @var string $Salt
         * @var string $omit_fields
    */
    $Omitted_Fields = explode(",", $omit_fields);
    $CheckCookie = CheckLoginCookie();
    $Sql = "SELECT * FROM {$ewd_feup_fields_table_name} WHERE Field_Show_In_Front_End='Yes' ORDER BY `FIELD_ORDER` ASC";
    $Fields = $wpdb->get_results($Sql);
    $User = $wpdb->get_row($wpdb->prepare("SELECT * FROM {$ewd_feup_user_table_name} WHERE Username='******'", $CheckCookie['Username']));
    $UserData = $wpdb->get_results($wpdb->prepare("SELECT * FROM {$ewd_feup_user_fields_table_name} WHERE User_ID='%d'", $User->User_ID));
    $print_field = function ($Field, $hidden = false) use($Omitted_Fields, $UserData, &$ReturnString) {
        $display_label = $Field->Field_Name;
        if ($display_label == "Breakfast") {
            $display_label = "Reminder 1";
        }
        if ($display_label == "Select your time zone") {
            $display_label = "Time Zone";
        }
        if (!in_array($Field->Field_Name, $Omitted_Fields)) {
            if ($Field->Field_Required == "Yes") {
                $Req_Text = "required";
            }
            $Value = "";
            if ($Field->Field_Name == "Phone") {
                $Field->Field_Type = "tel";
            }
            foreach ($UserData as $UserField) {
                if ($Field->Field_Name == $UserField->Field_Name) {
                    $Value = $UserField->Field_Value;
                }
            }
            if ($Field->Field_Name == "I need the most help...") {
                //                $ReturnString .= '<hr/>';
            }
            $ReturnString .= "<div class='pure-control-group " . ($hidden ? "hidden" : "") . "'>";
            $ReturnString .= "<label for='" . $Field->Field_Name . "' id='ewd-feup-edit-" . $Field->Field_ID . "' class='ewd-feup-field-label'>" . __($display_label, 'EWD_FEUP') . ": </label>";
            if ($Field->Field_Type == "text" or $Field->Field_Type == "mediumint") {
                $ReturnString .= "<input name='" . $Field->Field_Name . "' id='ewd-feup-register-input-" . $Field->Field_ID . "' class='ewd-feup-text-input  ' type='text' value='" . $Value . "' " . $Req_Text . "/>";
            } elseif ($Field->Field_Type == "tel") {
                $ReturnString .= "<input name='" . $Field->Field_Name . "' id='ewd-feup-register-input-" . $Field->Field_ID . "' class='ewd-feup-text-input  ' type='tel' value='" . $Value . "' " . $Req_Text . "/>";
            } elseif ($Field->Field_Type == "date") {
                $ReturnString .= "<input name='" . $Field->Field_Name . "' id='ewd-feup-register-input-" . $Field->Field_ID . "' class='ewd-feup-date-input  ' type='date' value='" . $Value . "' " . $Req_Text . "/>";
            } elseif ($Field->Field_Type == "datetime") {
                $ReturnString .= "<input name='" . $Field->Field_Name . "' id='ewd-feup-register-input-" . $Field->Field_ID . "' class='ewd-feup-datetime-input  ' type='datetime-local' value='" . $Value . "' " . $Req_Text . "/>";
            } elseif ($Field->Field_Type == "textarea") {
                $ReturnString .= "<textarea name='" . $Field->Field_Name . "' id='ewd-feup-register-input-" . $Field->Field_ID . "' class='ewd-feup-textarea ' " . $Req_Text . ">" . $Value . "</textarea>";
            } elseif ($Field->Field_Type == "file") {
                $ReturnString .= __("Current file:", 'EWD_FEUP') . " " . substr($Value, 10) . " | ";
                $ReturnString .= "<input name='" . $Field->Field_Name . "' id='ewd-feup-register-input-" . $Field->Field_ID . "' class='ewd-feup-date-input  ' type='file' value='' " . $Req_Text . "/>";
            } elseif ($Field->Field_Type == "select") {
                $Options = explode(",", $Field->Field_Options);
                $bkend_calculated_time = '';
                if (empty($Value)) {
                    switch ($Field->Field_Name) {
                        case 'Breakfast':
                            $Value = '06:00pm';
                            break;
                        case 'Lunch':
                            $Value = 'None set';
                            break;
                        case 'Dinner':
                            $Value = 'None set';
                            break;
                        default:
                            break;
                    }
                }
                $ReturnString .= "<select rel='" . $bkend_calculated_time . "' name='" . $Field->Field_Name . "' id='ewd-feup-register-input-" . $Field->Field_ID . "' class='ewd-feup-select '>";
                foreach ($Options as $Option) {
                    $ReturnString .= "<option value='" . $Option . "' ";
                    if (trim($Option) == trim($Value)) {
                        $ReturnString .= "selected='selected'";
                    }
                    $ReturnString .= ">" . $Option . "</option>";
                }
                $ReturnString .= "</select>";
            } elseif ($Field->Field_Type == "radio") {
                $Counter = 0;
                $Options = explode(",", $Field->Field_Options);
                foreach ($Options as $Option) {
                    if ($Counter != 0) {
                        $ReturnString .= "</div><div class='pure-control-group ewd-feup-negative-top  " . ($hidden ? "hidden" : "") . "'><label class='pure-radio'></label>";
                    }
                    $ReturnString .= "<input type='radio' name='" . $Field->Field_Name . "' value='" . $Option . "' class='ewd-feup-radio' " . $Req_Text . " ";
                    if (trim($Option) == trim($Value)) {
                        $ReturnString .= "checked";
                    }
                    $ReturnString .= ">" . $Option;
                    $Counter++;
                }
            } elseif ($Field->Field_Type == "checkbox") {
                $Counter = 0;
                $Options = explode(",", $Field->Field_Options);
                $Values = explode(",", $Value);
                foreach ($Options as $Option) {
                    if ($Counter != 0) {
                        $ReturnString .= "</div><div class='pure-control-group ewd-feup-negative-top  " . ($hidden ? "hidden" : "") . "'><label class='pure-radio'></label>";
                    }
                    $ReturnString .= "<input type='checkbox' name='" . $Field->Field_Name . "[]' value='" . $Option . "' class='ewd-feup-checkbox' " . $Req_Text . " ";
                    if (in_array($Option, $Values)) {
                        $ReturnString .= "checked";
                    }
                    $ReturnString .= ">" . $Option . "</br>";
                    $Counter++;
                }
            }
            $ReturnString .= "</div>";
            unset($Req_Text);
            if ($Field->Field_Name == "I need the most help...") {
                //                $ReturnString .= '<hr/>';
            }
        }
    };
    $Custom_CSS = get_option("EWD_FEUP_Custom_CSS");
    $Username_Is_Email = get_option("EWD_FEUP_Username_Is_Email");
    $CheckCookie = CheckLoginCookie();
    $ReturnString = "";
    // Get the attributes passed by the shortcode, and store them in new variables for processing
    extract(shortcode_atts(array('redirect_page' => '#', 'login_page' => '', 'submit_text' => __('Update Account', 'EWD_FEUP')), $atts));
    $ReturnString .= "<style type='text/css'>";
    $ReturnString .= $Custom_CSS;
    $ReturnString .= "</style>";
    if ($CheckCookie['Username'] == "") {
        $ReturnString .= __('You must be logged in to access this page.', 'EWD_FEUP');
        if ($login_page != "") {
            $ReturnString .= "<br />" . __('Please', 'EWD_FEUP') . " <a href='" . $login_page . "'>" . __('login', 'EWD_FEUP') . "</a> " . __('to continue.', 'EWD_FEUP');
        }
        return $ReturnString;
    }
    if ($feup_success and $redirect_page != '#') {
        FEUPRedirect($redirect_page);
    }
    $ReturnString .= "<div id='ewd-feup-edit-profile-form-div'>";
    if (isset($user_message['Message'])) {
        $ReturnString .= $user_message['Message'];
    }
    $ReturnString .= "<form novalidate action='#' method='post' id='ewd-feup-edit-profile-form' class='pure-form pure-form-aligned' enctype='multipart/form-data'>";
    $ReturnString .= "<input type='hidden' name='ewd-feup-check' value='" . sha1(md5($Time . $Salt)) . "'>";
    $ReturnString .= "<input type='hidden' name='ewd-feup-time' value='" . $Time . "'>";
    $ReturnString .= "<input type='hidden' name='ewd-feup-action' value='edit_reminder_times'>";
    //UserData: 0: Time zone; 1: OK to receive texts?; 2: Dinner; 3: Lunch; 4: Breakfast; 5: Phone; 6:Gender; 7: Last Name; 8 First Name: ; 9: I need the most help...; 10: Membership Expiry Date
    //Fields: 5: First Name; 0: Breakfast; 1: Lunch; 2: Dinner; 3: I need the most help...; 4: Select your time zone; 5: First Name; 6:Last Name; 7: Gender; 8: OK to receive texts?; 9: Phone;
    //    $times = array($UserData[4]->Field_Value, $UserData[3]->Field_Value, $UserData[2]->Field_Value);
    $ReturnString .= '<div><br/></div>';
    $ReturnString .= $print_field($Fields[0]);
    $ReturnString .= $print_field($Fields[1]);
    $ReturnString .= $print_field($Fields[2]);
    $ReturnString .= $print_field($Fields[3], true);
    $ReturnString .= $print_field($Fields[4], true);
    $ReturnString .= $print_field($Fields[5], true);
    $ReturnString .= $print_field($Fields[6], true);
    $ReturnString .= $print_field($Fields[7], true);
    $ReturnString .= $print_field($Fields[8], true);
    $ReturnString .= $print_field($Fields[9], true);
    $ReturnString .= $print_field($Fields[10], true);
    $ReturnString .= <<<HTML
<div><br/></div>
<div class="pure-control-group center">
    <select rel="" name="Time zone" id="ewd-feup-register-input-14" class="ewd-feup-select">
    <option value="Please select">Please select</option><option value="PST" selected="selected">Pacific Time Zone</option>
    <option value="EST">Eastern Standard Timezone</option><option value="CST">Central Standard Timezone</option><option value="MST">Mountain Standard Timezone</option></select>
</div>
HTML;
    /** @var string $submit_text */
    $ReturnString .= "<input type='submit' class='ewd-feup-submit pure-button pure-button-primary' name='Edit_Profile_Submit' value='Save'>";
    $ReturnString .= "</form>";
    $ReturnString .= "</div>";
    return $ReturnString;
}
예제 #16
0
function Insert_User_Profile($atts)
{
    // Include the required global variables, and create a few new ones
    global $wpdb, $user_message;
    global $ewd_feup_fields_table_name, $ewd_feup_user_table_name, $ewd_feup_user_fields_table_name;
    $Custom_CSS = get_option("EWD_FEUP_Custom_CSS");
    $Salt = get_option("EWD_FEUP_Hash_Salt");
    $Time = time();
    $CheckCookie = CheckLoginCookie();
    $Sql = "SELECT * FROM {$ewd_feup_fields_table_name} WHERE Field_Show_In_Front_End='Yes' ORDER BY Field_Order";
    $Fields = $wpdb->get_results($Sql);
    if (isset($_GET['User_ID'])) {
        $UserData = $wpdb->get_results($wpdb->prepare("SELECT * FROM {$ewd_feup_user_fields_table_name} WHERE User_ID='%d'", $_GET['User_ID']));
    }
    //elseif (isset(get_query_var('user_id')))) {$UserData = $wpdb->get_results($wpdb->prepare("SELECT * FROM $ewd_feup_user_fields_table_name WHERE User_ID='%d'", get_query_var('user_id')));}
    $ReturnString = "";
    if (!isset($UserData)) {
        return $feup_Label_Select_Valid_Profile;
    }
    // Get the attributes passed by the shortcode, and store them in new variables for processing
    extract(shortcode_atts(array('login_page' => '', 'omit_fields' => '', 'login_necessary' => 'Yes', 'submit_text' => __('Edit Profile', 'EWD_FEUP')), $atts));
    if (get_option("EWD_FEUP_Label_Edit_Profile") != "") {
        $submit_text = get_option("EWD_FEUP_Label_Edit_Profile");
    }
    $feup_Label_Require_Login_Message = get_option("EWD_FEUP_Label_Require_Login_Message");
    if ($feup_Label_Require_Login_Message == "") {
        $feup_Label_Require_Login_Message = __('You must be logged in to access this page.', 'EWD_FEUP');
    }
    $feup_Label_Please = get_option("EWD_FEUP_Label_Please");
    if ($feup_Label_Please == "") {
        $feup_Label_Please = __("Please", 'EWD_FEUP');
    }
    $feup_Label_To_Continue = get_option("EWD_FEUP_Label_To_Continue");
    if ($feup_Label_To_Continue == "") {
        $feup_Label_To_Continue = __("To Continue", 'EWD_FEUP');
    }
    $feup_Label_Login = get_option("EWD_FEUP_Label_Login");
    if ($feup_Label_Login == "") {
        $feup_Label_Login = __("Login", 'EWD_FEUP');
    }
    $feup_Label_Select_Valid_Profile = get_option("EWD_FEUP_Label_Select_Valid_Profile");
    if ($feup_Label_Select_Valid_Profile == "") {
        $feup_Label_Select_Valid_Profile = __("Please select a valid user profile", 'EWD_FEUP');
    }
    $ReturnString .= "<style type='text/css'>";
    $ReturnString .= $Custom_CSS;
    $ReturnString .= EWD_FEUP_Add_Modified_Styles();
    if ($CheckCookie['Username'] == "" and $login_necessary == "Yes") {
        $ReturnString .= $feup_Label_Require_Login_Message;
        if ($login_page != "") {
            $ReturnString .= "<br />" . $feup_Label_Please . " <a href='" . $login_page . "'>" . $feup_Label_Login . "</a> " . $feup_Label_To_Continue;
        }
        return $ReturnString;
    }
    $ReturnString .= "<div id='ewd-feup-user-profile-div' class='ewd-feup-user-profile-div'>";
    $Omitted_Fields = explode(",", $omit_fields);
    foreach ($Fields as $Field) {
        if (!in_array($Field->Field_Name, $Omitted_Fields)) {
            $Value = "";
            foreach ($UserData as $UserField) {
                if ($Field->Field_Name == $UserField->Field_Name) {
                    $Value = $UserField->Field_Value;
                }
            }
            $ReturnString .= "<div class='feup-user-profile-field'>";
            $ReturnString .= "<div id='ewd-feup-user-profile-label-" . $Field->Field_ID . "' class='ewd-feup-user-profile-label'>" . $Field->Field_Name . ": </div>";
            if ($Field->Field_Type != "picture") {
                $ReturnString .= "<div class='ewd-feup-text-input ewd-feup-user-profile-input'>" . $Value . "</div>";
            } else {
                $ReturnString .= "<img class='ewd-feup-profile-picture' src='" . site_url("/wp-content/uploads/ewd-feup-user-uploads/") . $Value . "' alt='" . $Field->Field_Name . "'/>";
            }
            $ReturnString .= "</div>";
        }
    }
    $ReturnString .= "</div>";
    return $ReturnString;
}
function Add_Edit_User()
{
    global $wpdb, $feup_success, $ewd_feup_fields_table_name, $ewd_feup_user_fields_table_name, $ewd_feup_user_table_name;
    $Salt = get_option("EWD_FEUP_Hash_Salt");
    $Sign_Up_Email = get_option("EWD_FEUP_Sign_Up_Email");
    $Default_User_Level = get_option("EWD_Default_User_Level");
    $Minimum_Password_Length = get_option("EWD_FEUP_Minimum_Password_Length");
    $Use_Crypt = get_option("EWD_FEUP_Use_Crypt");
    $Use_Captcha = get_option("EWD_FEUP_Use_Captcha");
    $Email_Confirmation = get_option("EWD_FEUP_Email_Confirmation");
    $Admin_Approval = get_option("EWD_FEUP_Admin_Approval");
    $Email_On_Admin_Approval = get_option("EWD_FEUP_Email_On_Admin_Approval");
    $Admin_Email_On_Registration = get_option("EWD_FEUP_Admin_Email_On_Registration");
    $feup_Label_Captcha_Fail = get_option("EWD_FEUP_Label_Captcha_Fail");
    if ($feup_Label_Captcha_Fail == "") {
        $feup_Label_Captcha_Fail = __("The Captcha text did not match the image", 'EWD_FEUP');
    }
    $Sql = "SELECT * FROM {$ewd_feup_fields_table_name} ";
    $Fields = $wpdb->get_results($Sql);
    $date = date("Y-m-d H:i:s");
    $UserCookie = CheckLoginCookie();
    if ($UserCookie['Username'] != "" and ($_POST['action'] == "Add_User" or $_POST['ewd-feup-action'] == "register")) {
        $user_update = array("Message_Type" => "Error", "Message" => __("You are currently logged in. Please log out to create a new account.", "EWD_FEUP"));
        return $user_update;
    }
    if (!isset($_POST['Admin_Approved'])) {
        $_POST['Admin_Approved'] = null;
    }
    if (!isset($_POST['Email_Confirmed'])) {
        $_POST['Email_Confirmed'] = null;
    }
    if (!isset($_POST['User_Membership_Fees_Paid'])) {
        $_POST['User_Membership_Fees_Paid'] = null;
    }
    if (!isset($_POST['action'])) {
        $_POST['action'] = null;
    }
    if (!isset($_POST['ewd-feup-action'])) {
        $_POST['ewd-feup-action'] = null;
    }
    if (!isset($_POST['ewd-registration-type'])) {
        $_POST['ewd-registration-type'] = null;
    }
    if (isset($_POST['User_Account_Expiry'])) {
        $User_Fields['User_Account_Expiry'] = $_POST['User_Account_Expiry'];
    }
    if ($_POST['ewd-feup-action'] == "register" and $Use_Captcha == "Yes") {
        $Validate_Captcha = EWD_FEUP_Validate_Captcha();
    } else {
        $Validate_Captcha = "Yes";
    }
    $User = $wpdb->get_row($wpdb->prepare("SELECT User_ID FROM {$ewd_feup_user_table_name} WHERE Username='******'", $UserCookie['Username']));
    if (is_object($User)) {
        $User_ID = $User->User_ID;
    }
    if (is_admin()) {
        $User_ID = $_POST['User_ID'];
    }
    if (isset($User_ID)) {
        $User = $wpdb->get_row($wpdb->prepare("SELECT User_Admin_Approved FROM {$ewd_feup_user_table_name} WHERE User_ID='%d'", $User_ID));
        $User_Current_Admin_Approved = $User->User_Admin_Approved;
    } else {
        $User_Current_Admin_Approved = "No";
    }
    if (isset($_POST['Omit_Fields'])) {
        $Omitted_Fields = explode(",", $_POST['Omit_Fields']);
    } else {
        $Omitted_Fields = array();
    }
    if (isset($_POST['Username'])) {
        $User_Fields['Username'] = $_POST['Username'];
    }
    if ($_POST['ewd-registration-type'] != null) {
        $User_Fields['User_Registration_Type'] = $_POST['ewd-registration-type'];
    }
    // check if the password is empty - so we won't try to update it if it is empty
    if (empty($_POST['User_Password'])) {
        unset($_POST['User_Password']);
    }
    if (strlen($_POST['User_Password']) < $Minimum_Password_Length) {
        unset($_POST['User_Password']);
        unset($_POST['Confirm_User_Password']);
    }
    if ($Use_Crypt == "Yes") {
        if (isset($_POST['User_Password'])) {
            $User_Fields['User_Password'] = Generate_Password($_POST['User_Password']);
        }
    } else {
        if (isset($_POST['User_Password'])) {
            $User_Fields['User_Password'] = sha1(md5($_POST['User_Password'] . $Salt));
        }
    }
    if (isset($_POST['Level_ID'])) {
        $User_Fields['Level_ID'] = $_POST['Level_ID'];
    } elseif ($_POST['ewd-feup-omit-level'] != "Yes") {
        $User_Fields['Level_ID'] = $Default_User_Level;
    }
    if ($_POST['Admin_Approved'] == "Yes") {
        $User_Fields['User_Admin_Approved'] = "Yes";
    }
    if ($_POST['Admin_Approved'] == "No") {
        $User_Fields['User_Admin_Approved'] = "No";
    }
    if ($_POST['Email_Confirmation'] == "Yes") {
        $User_Fields['User_Email_Confirmed'] = "Yes";
    }
    if ($_POST['Email_Confirmation'] == "No") {
        $User_Fields['User_Email_Confirmed'] = "No";
    }
    if ($_POST['User_Membership_Fees_Paid'] == "Yes") {
        $User_Fields['User_Membership_Fees_Paid'] = "Yes";
    }
    if ($_POST['User_Membership_Fees_Paid'] == "No") {
        $User_Fields['User_Membership_Fees_Paid'] = "No";
    }
    if ($_POST['User_Password'] != $_POST['Confirm_User_Password']) {
        $user_update = array("Message_Type" => "Error", "Message" => __("The passwords you entered did not match.", "EWD_FEUP"));
        return $user_update;
    }
    if ($_POST['action'] == "Add_User" or $_POST['ewd-feup-action'] == "register") {
        if (empty($_POST['User_Password'])) {
            $user_update = array("Message_Type" => "Error", "Message" => __("The password entered was too short.", "EWD_FEUP"));
            return $user_update;
        }
        $wpdb->get_results($wpdb->prepare("SELECT User_ID FROM {$ewd_feup_user_table_name} WHERE Username='******'", $_POST['Username']));
        if ($wpdb->num_rows > 0) {
            $user_update = array("Message_Type" => "Error", "Message" => __("There is already a user with that Username, please select a different one.", "EWD_FEUP"));
            return $user_update;
        }
        if (strlen($_POST['Username']) < 3) {
            $user_update = array("Message_Type" => "Error", "Message" => __("Username must be at least 3 characters.", "EWD_FEUP"));
            return $user_update;
        }
    }
    if ($_POST['ewd-feup-action'] != "edit-account") {
        if (!isset($Additional_Fields_Array)) {
            $Additional_Fields_Array = array();
        }
        foreach ($Fields as $Field) {
            if (!in_array($Field->Field_Name, $Omitted_Fields)) {
                if ($Field->Field_Options != "") {
                    $Field_Allowed_Values = explode(",", $Field->Field_Options);
                }
                $Field_Name = str_replace(" ", "_", $Field->Field_Name);
                if (!is_array($Field_Allowed_Values) or in_array($_POST[$Field_Name], $Field_Allowed_Values) or is_array($_POST[$Field_Name])) {
                    $Additional_Fields_Array[$Field->Field_Name]['Field_ID'] = $Field->Field_ID;
                    $Additional_Fields_Array[$Field->Field_Name]['Field_Name'] = $Field->Field_Name;
                    if ($Field->Field_Type == "file" or $Field->Field_Type == "picture") {
                        $File_Upload_Return = Handle_File_Upload($Field_Name);
                        if ($File_Upload_Return['Success'] == "No") {
                            return $File_Upload_Return['Data'];
                        } elseif ($File_Upload_Return['Success'] == "N/A") {
                            unset($Additional_Fields_Array[$Field->Field_Name]);
                        } else {
                            $Additional_Fields_Array[$Field->Field_Name]['Field_Value'] = $File_Upload_Return['Data'];
                        }
                    } elseif (is_array($_POST[$Field_Name])) {
                        $Additional_Fields_Array[$Field->Field_Name]['Field_Value'] = stripslashes_deep(implode(",", $_POST[$Field_Name]));
                    } else {
                        $Additional_Fields_Array[$Field->Field_Name]['Field_Value'] = stripslashes_deep($_POST[$Field_Name]);
                    }
                }
                unset($Field_Allowed_Values);
            }
        }
    }
    if (!isset($error) and $Validate_Captcha == "Yes") {
        /* Pass the data to the appropriate function in Update_Admin_Databases.php to create the user */
        if ($_POST['action'] == "Add_User" or $_POST['ewd-feup-action'] == "register") {
            if (is_object($User)) {
                $user_update = __("There is already an account with that Username. Please select a different one.", "EWD_FEUP");
                return $user_update;
            }
            if (!isset($User_Fields['User_Admin_Approved'])) {
                $User_Fields['User_Admin_Approved'] = "No";
            }
            if (!isset($User_Fields['User_Email_Confirmed'])) {
                $User_Fields['User_Email_Confirmed'] = "No";
            }
            $User_Fields['User_Date_Created'] = $date;
            $User_Fields['User_Last_Login'] = $date;
            $user_update = Add_EWD_FEUP_User($User_Fields);
            $User_ID = $wpdb->insert_id;
            if (!isset($Additional_Fields_Array)) {
                $Additional_Fields_Array = array();
            }
            foreach ($Additional_Fields_Array as $Field) {
                $user_update = Add_EWD_FEUP_User_Field($Field['Field_ID'], $User_ID, $Field['Field_Name'], $Field['Field_Value'], $date);
            }
            if ($Sign_Up_Email == "Yes") {
                EWD_FEUP_Send_Email($User_Fields, $Additional_Fields_Array, $User_ID);
            }
            if ($_POST['ewd-feup-action'] == "register") {
                $user_update = __("Your account has been succesfully created.", "EWD_FEUP");
                if ($Admin_Email_On_Registration == "Yes") {
                    EWD_FEUP_Send_Admin_Registration_Email($User_Fields, $Additional_Fields_Array, $User_ID);
                }
                if ($Email_Confirmation != "Yes" and $Admin_Approval != "Yes") {
                    Confirm_Login();
                    //CreateLoginCookie($_POST['Username'], $_POST['User_Password']);
                    $feup_success = true;
                }
            }
        } else {
            if (isset($User_Fields)) {
                $user_update = Edit_EWD_FEUP_User($User_ID, $User_Fields);
            }
            if (!isset($Additional_Fields_Array)) {
                $Additional_Fields_Array = array();
            }
            if (is_array($Additional_Fields_Array)) {
                foreach ($Additional_Fields_Array as $Field) {
                    $CurrentField = $wpdb->get_row($wpdb->prepare("SELECT User_Field_ID FROM {$ewd_feup_user_fields_table_name} WHERE Field_ID='%d' AND User_ID='%d'", $Field['Field_ID'], $User_ID));
                    if ($CurrentField->User_Field_ID != "") {
                        $user_update = Edit_EWD_FEUP_User_Field($Field['Field_ID'], $User_ID, $Field['Field_Name'], $Field['Field_Value']);
                    } else {
                        $user_update = Add_EWD_FEUP_User_Field($Field['Field_ID'], $User_ID, $Field['Field_Name'], $Field['Field_Value'], $date);
                    }
                }
            }
            if ($_POST['ewd-feup-action'] == "edit-account") {
                CreateLoginCookie($_POST['Username'], $_POST['User_Password']);
            }
        }
        // If the user receives admin approval for the first time and the option is selected, send them an e-mail
        //Need to check earlier, as it already gets set before this
        if ($User_Current_Admin_Approved == "No" and $User_Fields['User_Admin_Approved'] == "Yes" and $Email_On_Admin_Approval == "Yes") {
            EWD_FEUP_Send_Admin_Approval_Email($User_Fields, $Additional_Fields_Array, $User_ID);
        }
        $user_update = array("Message_Type" => "Update", "Message" => $user_update);
        $feup_success = true;
        return $user_update;
    } else {
        if ($Validate_Captcha != "Yes") {
            $error = "The Captcha text did not match the image";
        }
        $output_error = array("Message_Type" => "Error", "Message" => $error);
        return $output_error;
    }
}
function Add_Edit_User()
{
    global $wpdb, $feup_success, $ewd_feup_fields_table_name, $ewd_feup_user_fields_table_name, $ewd_feup_user_table_name;
    $Salt = get_option("EWD_FEUP_Hash_Salt");
    $Sign_Up_Email = get_option("EWD_FEUP_Sign_Up_Email");
    $Default_User_Level = get_option("EWD_Default_User_Level");
    $Use_Crypt = get_option("EWD_FEUP_Use_Crypt");
    $Email_Confirmation = get_option("EWD_FEUP_Email_Confirmation");
    $Admin_Approval = get_option("EWD_FEUP_Admin_Approval");
    $Sql = "SELECT * FROM {$ewd_feup_fields_table_name} ";
    $Fields = $wpdb->get_results($Sql);
    $date = date("Y-m-d H:i:s");
    $UserCookie = CheckLoginCookie();
    if (!isset($_POST['Admin_Approved'])) {
        $_POST['Admin_Approved'] = null;
    }
    if (!isset($_POST['action'])) {
        $_POST['action'] = null;
    }
    if (!isset($_POST['ewd-feup-action'])) {
        $_POST['ewd-feup-action'] = null;
    }
    $User = $wpdb->get_row($wpdb->prepare("SELECT User_ID FROM {$ewd_feup_user_table_name} WHERE Username='******'", $UserCookie['Username']));
    if (is_object($User)) {
        $User_ID = $User->User_ID;
    }
    if (is_admin()) {
        $User_ID = $_POST['User_ID'];
    }
    if (isset($_POST['Omit_Fields'])) {
        $Omitted_Fields = explode(",", $_POST['Omit_Fields']);
    } else {
        $Omitted_Fields = array();
    }
    if (isset($_POST['Username'])) {
        $User_Fields['Username'] = $_POST['Username'];
    }
    // check if the password is empty - so we won't try to update it if it is empty
    if (empty($_POST['User_Password'])) {
        unset($_POST['User_Password']);
    }
    if ($Use_Crypt == "Yes") {
        if (isset($_POST['User_Password'])) {
            $User_Fields['User_Password'] = Generate_Password($_POST['User_Password']);
        }
    } else {
        if (isset($_POST['User_Password'])) {
            $User_Fields['User_Password'] = sha1(md5($_POST['User_Password'] . $Salt));
        }
    }
    if (isset($_POST['Level_ID'])) {
        $User_Fields['Level_ID'] = $_POST['Level_ID'];
    } else {
        $User_Fields['Level_ID'] = $Default_User_Level;
    }
    if ($_POST['Admin_Approved'] == "Yes") {
        $User_Fields['User_Admin_Approved'] = "Yes";
    }
    if ($_POST['Admin_Approved'] == "No") {
        $User_Fields['User_Admin_Approved'] = "No";
    }
    if ($_POST['User_Password'] != $_POST['Confirm_User_Password']) {
        $user_update = array("Message_Type" => "Error", "Message" => __("The passwords you entered did not match.", "EWD_FEUP"));
        return $user_update;
    }
    if ($_POST['action'] == "Add_User" or $_POST['ewd-feup-action'] == "register") {
        if (empty($_POST['User_Password'])) {
            $user_update = array("Message_Type" => "Error", "Message" => __("The password cannot be empty.", "EWD_FEUP"));
            return $user_update;
        }
        $wpdb->get_results($wpdb->prepare("SELECT User_ID FROM {$ewd_feup_user_table_name} WHERE Username='******'", $_POST['Username']));
        if ($wpdb->num_rows > 0) {
            $user_update = array("Message_Type" => "Error", "Message" => __("There is already a user with that Username, please select a different one.", "EWD_FEUP"));
            return $user_update;
        }
        if (strlen($_POST['Username']) < 3) {
            $user_update = array("Message_Type" => "Error", "Message" => __("Username must be at least 3 characters.", "EWD_FEUP"));
            return $user_update;
        }
    }
    if ($_POST['ewd-feup-action'] != "edit-account") {
        if (!isset($Additional_Fields_Array)) {
            $Additional_Fields_Array = array();
        }
        foreach ($Fields as $Field) {
            if (!in_array($Field->Field_Name, $Omitted_Fields)) {
                $Additional_Fields_Array[$Field->Field_Name]['Field_ID'] = $Field->Field_ID;
                $Additional_Fields_Array[$Field->Field_Name]['Field_Name'] = $Field->Field_Name;
                $Field_Name = str_replace(" ", "_", $Field->Field_Name);
                if ($Field->Field_Type == "file") {
                    $File_Upload_Return = Handle_File_Upload($Field_Name);
                    if ($File_Upload_Return['Success'] == "No") {
                        return $File_Upload_Return['Data'];
                    } elseif ($File_Upload_Return['Success'] == "N/A") {
                        unset($Additional_Fields_Array[$Field->Field_Name]);
                    } else {
                        $Additional_Fields_Array[$Field->Field_Name]['Field_Value'] = $File_Upload_Return['Data'];
                    }
                } elseif (is_array($_POST[$Field_Name])) {
                    $Additional_Fields_Array[$Field->Field_Name]['Field_Value'] = stripslashes_deep(implode(",", $_POST[$Field_Name]));
                } else {
                    $Additional_Fields_Array[$Field->Field_Name]['Field_Value'] = stripslashes_deep($_POST[$Field_Name]);
                }
            }
        }
    }
    if (!isset($error)) {
        /* Pass the data to the appropriate function in Update_Admin_Databases.php to create the user */
        if ($_POST['action'] == "Add_User" or $_POST['ewd-feup-action'] == "register") {
            if (is_object($User)) {
                $user_update = __("There is already an account with that Username. Please select a different one.", "EWD_FEUP");
                return $user_update;
            }
            if (!isset($User_Fields['User_Admin_Approved'])) {
                $User_Fields['User_Admin_Approved'] = "No";
            }
            if (!isset($User_Fields['User_Email_Confirmed'])) {
                $User_Fields['User_Email_Confirmed'] = "No";
            }
            $User_Fields['User_Date_Created'] = $date;
            $User_Fields['User_Last_Login'] = $date;
            $user_update = Add_EWD_FEUP_User($User_Fields);
            $User_ID = $wpdb->insert_id;
            if (!isset($Additional_Fields_Array)) {
                $Additional_Fields_Array = array();
            }
            foreach ($Additional_Fields_Array as $Field) {
                $user_update = Add_EWD_FEUP_User_Field($Field['Field_ID'], $User_ID, $Field['Field_Name'], $Field['Field_Value'], $date);
            }
            if ($_POST['ewd-feup-action'] == "register") {
                $user_update = __("Your account has been succesfully created.", "EWD_FEUP");
                if ($Sign_Up_Email == "Yes") {
                    EWD_FEUP_Send_Email($User_Fields, $Additional_Fields_Array, $User_ID);
                }
                if ($Email_Confirmation != "Yes" and $Admin_Approval != "Yes") {
                    CreateLoginCookie($_POST['Username'], $_POST['User_Password']);
                    $feup_success = true;
                }
            }
        } else {
            if (isset($User_Fields)) {
                $user_update = Edit_EWD_FEUP_User($User_ID, $User_Fields);
            }
            if (!isset($Additional_Fields_Array)) {
                $Additional_Fields_Array = array();
            }
            if (is_array($Additional_Fields_Array)) {
                foreach ($Additional_Fields_Array as $Field) {
                    $CurrentField = $wpdb->get_row($wpdb->prepare("SELECT User_Field_ID FROM {$ewd_feup_user_fields_table_name} WHERE Field_ID='%d' AND User_ID='%d'", $Field['Field_ID'], $User_ID));
                    if ($CurrentField->User_Field_ID != "") {
                        $user_update = Edit_EWD_FEUP_User_Field($Field['Field_ID'], $User_ID, $Field['Field_Name'], $Field['Field_Value']);
                    } else {
                        $user_update = Add_EWD_FEUP_User_Field($Field['Field_ID'], $User_ID, $Field['Field_Name'], $Field['Field_Value'], $date);
                    }
                }
            }
            if ($_POST['ewd-feup-action'] == "edit-account") {
                CreateLoginCookie($_POST['Username'], $_POST['User_Password']);
            }
        }
        $user_update = array("Message_Type" => "Update", "Message" => $user_update);
        $feup_success = true;
        return $user_update;
    } else {
        $output_error = array("Message_Type" => "Error", "Message" => $error);
        return $output_error;
    }
}
function Insert_Subscribe_Now($atts)
{
    /** @var string $redirect_page
     * @var string $login_page
     * @var string $Time
     * @var string $Salt
     * @var string $omit_fields
     */
    // Include the required global variables, and create a few new ones
    global $wpdb, $user_message, $feup_success;
    global $ewd_feup_fields_table_name, $ewd_feup_user_table_name, $ewd_feup_user_fields_table_name;
    $CheckCookie = CheckLoginCookie();
    $Sql = "SELECT * FROM wp_ewd_feup_fields WHERE Field_Show_In_Front_End='Yes' ORDER BY `Field_Order` ASC";
    $Fields = $wpdb->get_results($Sql);
    $User = $wpdb->get_row($wpdb->prepare("SELECT * FROM wp_ewd_feup_users WHERE Username='******'", $CheckCookie['Username']));
    $UserData = $wpdb->get_results($wpdb->prepare("SELECT * FROM wp_ewd_feup_user_fields WHERE User_ID='%d'", $User->User_ID));
    $user_id = $User->User_ID;
    $email = $User->user_email;
    $phone = $User->Username;
    $first_name = '';
    $last_name = '';
    if (is_object($UserData)) {
        $userdata = get_object_vars($UserData);
        $first_name = $userdata["First Name"];
        $last_name = $userdata["Last Name"];
    }
    $output = '';
    //If payment/subscription submitted
    if (isset($_POST["payment_method_nonce"])) {
        $nonce = $_POST["payment_method_nonce"];
        $payment_method = Braintree\Customer::create(['firstName' => $first_name, 'lastName' => $last_name, 'email' => $email, 'phone' => $phone, 'paymentMethodNonce' => $nonce]);
        $result = Braintree\Subscription::create(['paymentMethodToken' => $payment_method->customer->defaultPaymentMethod()->token, 'planId' => SUBSCRIPTION_PLAN_ID]);
        if ($result->success) {
            $query = "UPDATE `wp_ewd_feup_users` SET `subscription`='active' WHERE User_ID = {$user_id};";
            $num_row = $wpdb->query($query);
            if ($num_row === false) {
                error_log("Failed to execute query {$query} \n", 3);
            }
            $query = "UPDATE `wp_ewd_feup_user_fields` SET `Field_Value`=null WHERE `Field_Name` = 'Membership Expiry Date' AND User_ID = {$user_id};";
            $num_row = $wpdb->query($query);
            if ($num_row === false) {
                error_log("Failed to execute query {$query} \n", 3);
            }
            session_start();
            $_SESSION['user_updated'] = "Your subscription is now active.";
            if (!headers_sent()) {
                header("Location: /you-did-it");
            }
            error_log("success!: " . $result->transaction->id);
        } else {
            if ($result->transaction) {
                $output .= print_r("Error processing transaction:", true);
                $output .= print_r("\n  code: " . $result->transaction->processorResponseCode, true);
                $output .= print_r("\n  text: " . $result->transaction->processorResponseText, true);
            } else {
                $output .= print_r("Validation errors: \n", true);
                $output .= print_r($result->errors->deepAll(), true);
            }
        }
        return $output;
    }
    //else, render payment form
    $clientToken = \Braintree\ClientToken::generate();
    $output = '<form id="checkout" method="post" action="/subscribe-now">
                  <div id="payment-form"></div>
                  <input type="submit" value="Get 3 Days Free">
                </form>

<script src="https://js.braintreegateway.com/js/braintree-2.22.2.min.js"></script>
<script>

var clientToken = "' . $clientToken . '";

braintree.setup(clientToken, "dropin", {
  container: "payment-form"
});
</script>
';
    return $output;
    $Custom_CSS = get_option("EWD_FEUP_Custom_CSS");
    $Sql = "SELECT * FROM {$ewd_feup_fields_table_name} WHERE Field_Show_In_Front_End='Yes' ORDER BY `FIELD_ORDER` ASC";
    $Fields = $wpdb->get_results($Sql);
    $User = $wpdb->get_row($wpdb->prepare("SELECT * FROM {$ewd_feup_user_table_name} WHERE Username='******'", $CheckCookie['Username']));
    $UserData = $wpdb->get_results($wpdb->prepare("SELECT * FROM {$ewd_feup_user_fields_table_name} WHERE User_ID='%d'", $User->User_ID));
    $ReturnString = "";
    $output = "";
    $output .= "<script> var \$user_id= {$User->User_ID} ; </script>";
    $ReturnString .= $output;
    wp_enqueue_script('your_settings', '/wp-content/js/subscribe_now.js', array('jquery'));
    return $ReturnString;
}
예제 #20
0
<?php

//Brian added to check for 0 dollar subscription
global $wpdb;
$login = CheckLoginCookie();
$is_allowed_0_dollar_subscription = 0;
$is_subscription_active = 0;
if (isset($login['Username'])) {
    $result = $wpdb->get_row("SELECT `allow_0_dollar_subscription`, `subscription` FROM `wp_ewd_feup_users` WHERE Username = "******"active";
    }
}
////end Brian added to check for 0 dollar subscription
/**
 * The Header for our theme.
 *
 * Displays all of the <head> section and everything up till <main>
 * and the left sidebar conditional
 *
 * @since 1.0.0
 */
?>
<!DOCTYPE html>
<!--[if lt IE 7]>
<html class="no-js lt-ie9 lt-ie8 lt-ie7" <?php 
language_attributes();
?>
function Edit_Account_Info_User()
{
    global $wpdb, $feup_success, $ewd_feup_fields_table_name, $ewd_feup_user_fields_table_name, $ewd_feup_user_table_name;
    $Salt = get_option("EWD_FEUP_Hash_Salt");
    $Sign_Up_Email = get_option("EWD_FEUP_Sign_Up_Email");
    $Default_User_Level = get_option("EWD_Default_User_Level");
    $Use_Crypt = get_option("EWD_FEUP_Use_Crypt");
    $Email_Confirmation = get_option("EWD_FEUP_Email_Confirmation");
    $Admin_Approval = get_option("EWD_FEUP_Admin_Approval");
    $tt_settings = $wpdb->get_results("SELECT * FROM tt_settings");
    $res = ah_flatten($tt_settings, 'name');
    $Sql = "SELECT * FROM {$ewd_feup_fields_table_name} ";
    $Fields = $wpdb->get_results($Sql);
    $date = date("Y-m-d H:i:s");
    $UserCookie = CheckLoginCookie();
    if (!isset($_POST['Admin_Approved'])) {
        $_POST['Admin_Approved'] = null;
    }
    if (!isset($_POST['action'])) {
        $_POST['action'] = null;
    }
    if (!isset($_POST['ewd-feup-action'])) {
        $_POST['ewd-feup-action'] = null;
    }
    $User = $wpdb->get_row($wpdb->prepare("SELECT User_ID FROM {$ewd_feup_user_table_name} WHERE Username='******'", $UserCookie['Username']));
    if (is_object($User)) {
        $User_ID = $User->User_ID;
    }
    if (is_admin()) {
        $User_ID = $_POST['User_ID'];
    }
    if (isset($_POST['Omit_Fields'])) {
        $Omitted_Fields = explode(",", $_POST['Omit_Fields']);
    } else {
        $Omitted_Fields = array();
    }
    if (isset($_POST['Username'])) {
        $User_Fields['Username'] = $_POST['Username'];
    }
    if (isset($_POST['user_email'])) {
        $User_Fields['user_email'] = $_POST['user_email'];
    }
    if (isset($_POST['subscription'])) {
        $User_Fields['subscription'] = $_POST['subscription'];
    }
    // check if the password is empty - so we won't try to update it if it is empty
    if (empty($_POST['User_Password'])) {
        unset($_POST['User_Password']);
    }
    if ($Use_Crypt == "Yes") {
        if (isset($_POST['User_Password'])) {
            $User_Fields['User_Password'] = Generate_Password($_POST['User_Password']);
        }
    } else {
        if (isset($_POST['User_Password'])) {
            $User_Fields['User_Password'] = sha1(md5($_POST['User_Password'] . $Salt));
        }
    }
    if (isset($_POST['Level_ID'])) {
        $User_Fields['Level_ID'] = $_POST['Level_ID'];
    } else {
        $User_Fields['Level_ID'] = $Default_User_Level;
    }
    if ($_POST['Admin_Approved'] == "Yes") {
        $User_Fields['User_Admin_Approved'] = "Yes";
    }
    if ($_POST['Admin_Approved'] == "No") {
        $User_Fields['User_Admin_Approved'] = "No";
    }
    if ($_POST['User_Password'] != $_POST['Confirm_User_Password']) {
        $user_update = array("Message_Type" => "Error", "Message" => __("The passwords you entered did not match.", "EWD_FEUP"));
        return $user_update;
    }
    if ($_POST['action'] == "Add_User" or $_POST['ewd-feup-action'] == "register") {
        if (empty($_POST['User_Password'])) {
            $user_update = array("Message_Type" => "Error", "Message" => __("The phone number must be your 10 digit number.", "EWD_FEUP"));
            return $user_update;
        }
        $wpdb->get_results($wpdb->prepare("SELECT User_ID FROM {$ewd_feup_user_table_name} WHERE Username='******'", $_POST['Username']));
        if ($wpdb->num_rows > 0) {
            $user_update = array("Message_Type" => "Error", "Message" => __("Doppelgänger alert! There is already a user with that phone number. Please try a different one.", "EWD_FEUP"));
            return $user_update;
        }
        //remove placeholder text
        $newUsername = str_replace("_", "", $_POST['Username']);
        if (strlen($newUsername) < 10) {
            $user_update = array("Message_Type" => "Error", "Message" => __("Phone must be at least 10 characters.", "EWD_FEUP"));
            return $user_update;
        }
    }
    if ($_POST['ewd-feup-action'] != "edit-account") {
        foreach ($Fields as $Field) {
            if (!in_array($Field->Field_Name, $Omitted_Fields)) {
                $Additional_Fields_Array[$Field->Field_Name]['Field_ID'] = $Field->Field_ID;
                $Additional_Fields_Array[$Field->Field_Name]['Field_Name'] = $Field->Field_Name;
                $Field_Name = str_replace(" ", "_", $Field->Field_Name);
                if ($Field->Field_Type == "file") {
                    $File_Upload_Return = Handle_File_Upload($Field_Name);
                    if ($File_Upload_Return['Success'] == "No") {
                        return $File_Upload_Return['Data'];
                    } elseif ($File_Upload_Return['Success'] == "N/A") {
                        unset($Additional_Fields_Array[$Field->Field_Name]);
                    } else {
                        $Additional_Fields_Array[$Field->Field_Name]['Field_Value'] = $File_Upload_Return['Data'];
                    }
                } elseif (is_array($_POST[$Field_Name])) {
                    $Additional_Fields_Array[$Field->Field_Name]['Field_Value'] = stripslashes_deep(implode(",", $_POST[str_replace("...", "___", $Field_Name)]));
                } else {
                    $Additional_Fields_Array[$Field->Field_Name]['Field_Value'] = stripslashes_deep($_POST[str_replace("...", "___", $Field_Name)]);
                }
            }
        }
    }
    if (!isset($error)) {
        /* Pass the data to the appropriate function in Update_Admin_Databases.php to create the user */
        if ($_POST['action'] == "Add_User" or $_POST['ewd-feup-action'] == "register") {
            /*** Time converted to 24 hr format ***/
            /*echo  "<pre>";
              print_r($Additional_Fields_Array);
              echo "</pre>"; */
            $bf_date1 = $Additional_Fields_Array['Breakfast']['Field_Value'];
            $bf_date = date('H:ia ', strtotime($bf_date1));
            //echo $bf_date;
            $lnh_date1 = $Additional_Fields_Array['Lunch']['Field_Value'];
            $lnh_date = date('H:ia ', strtotime($lnh_date1));
            //echo $lnh_date;
            $dnr_date1 = $Additional_Fields_Array['Dinner']['Field_Value'];
            $dnr_date = date('H:ia ', strtotime($dnr_date1));
            //echo $dnr_date;
            if ($User->User_ID != "") {
                $user_update = __("There is already an account with that Username. Please select a different one.", "EWD_FEUP");
                return $user_update;
            }
            if (!isset($User_Fields['User_Admin_Approved'])) {
                $User_Fields['User_Admin_Approved'] = "No";
            }
            if (!isset($User_Fields['User_Email_Confirmed'])) {
                $User_Fields['User_Email_Confirmed'] = "No";
            }
            $User_Fields['User_Date_Created'] = $date;
            $User_Fields['User_Last_Login'] = $date;
            $res = ah_flatten($tt_settings, 'name');
            $expiry_date = new DateTime();
            $dti = new DateInterval('P' . $tt_settings['default_trial_period']['value'] . 'D');
            $expiry_date->add($dti);
            $expiry_date = $expiry_date->format('Y-m-d');
            $Additional_Fields_Array['Membership Expiry Date']['Field_Value'] = $expiry_date;
            $user_update = Add_EWD_FEUP_User($User_Fields);
            $User_ID = $wpdb->insert_id;
            //Custom code
            if ($Additional_Fields_Array['Time zone']) {
                $offset = preg_replace('/[a-zA-Z()]/', '', $Additional_Fields_Array['Time zone']['Field_Value']);
                $operator = preg_replace('/[0-9]/', '', $offset);
                $vals = preg_replace('/[-+]/', '', $offset);
                $b = preg_replace('/[A-Za-z]/', '', $bf_date);
                $l = preg_replace('/[A-Za-z]/', '', $lnh_date);
                $d = preg_replace('/[A-Za-z]/', '', $dnr_date);
                //echo $operator."<br>";
                //echo $vals;
                if ($offset) {
                    //print_r($bf_date);die;
                    date_default_timezone_set('UTC');
                    if ($vals < 9) {
                        $vals = str_replace('0', '', $vals);
                    }
                    if (trim($operator) == '-') {
                        $brk = date('H:ia', strtotime($b) + $vals * 60 * 60);
                        $lunch = date('H:ia', strtotime($l) + $vals * 60 * 60);
                        $dinner = date('H:ia', strtotime($d) + $vals * 60 * 60);
                    } elseif (trim($operator) == '+') {
                        $brk = date('H:ia', strtotime($b) - $vals * 60 * 60);
                        $lunch = date('H:ia', strtotime($l) - $vals * 60 * 60);
                        $dinner = date('H:ia', strtotime($d) - $vals * 60 * 60);
                    } else {
                        $brk = $bf_date;
                        $lunch = $lnh_date;
                        $dinner = $dnr_date;
                    }
                    $Additional_Fields_Array['Breakfast']['Field_Value'] = $brk;
                    $Additional_Fields_Array['Lunch']['Field_Value'] = $lunch;
                    $Additional_Fields_Array['Dinner']['Field_Value'] = $dinner;
                }
            }
            /*echo  "<br><br><br><pre>";
              print_r($Additional_Fields_Array);
              echo "</pre>";  */
            //die();
            //Custom code end
            foreach ($Additional_Fields_Array as $Field) {
                $user_update = Add_EWD_FEUP_User_Field($Field['Field_ID'], $User_ID, $Field['Field_Name'], $Field['Field_Value'], $date);
            }
            if ($_POST['ewd-feup-action'] == "register") {
                $user_update = __("Your account has been succesfully created.", "EWD_FEUP");
                if ($Sign_Up_Email == "Yes") {
                    EWD_FEUP_Send_Email($User_Fields, $Additional_Fields_Array);
                }
                if ($Email_Confirmation != "Yes" and $Admin_Approval != "Yes") {
                    CreateLoginCookie($_POST['Username'], $_POST['User_Password']);
                    $feup_success = true;
                }
            }
        } else {
            $bf_date1 = $Additional_Fields_Array['Breakfast']['Field_Value'];
            $bf_date = date('H:ia ', strtotime($bf_date1));
            //echo $bf_date;
            $lnh_date1 = $Additional_Fields_Array['Lunch']['Field_Value'];
            $lnh_date = date('H:ia ', strtotime($lnh_date1));
            //echo $lnh_date;
            $dnr_date1 = $Additional_Fields_Array['Dinner']['Field_Value'];
            $dnr_date = date('H:ia ', strtotime($dnr_date1));
            //echo $dnr_date;
            if (isset($User_Fields)) {
                $user_update = Edit_EWD_FEUP_User($User_ID, $User_Fields);
            }
            if (is_array($Additional_Fields_Array)) {
                //print_r($Additional_Fields_Array);die;
                //Custom code
                if ($Additional_Fields_Array['Time zone']) {
                    $offset = preg_replace('/[a-zA-Z()]/', '', $Additional_Fields_Array['Time zone']['Field_Value']);
                    $operator = preg_replace('/[0-9]/', '', $offset);
                    $vals = preg_replace('/[-+]/', '', $offset);
                    $b = preg_replace('/[A-Za-z]/', '', $bf_date);
                    $l = preg_replace('/[A-Za-z]/', '', $lnh_date);
                    $d = preg_replace('/[A-Za-z]/', '', $dnr_date);
                    //echo $vals;die;
                    if ($offset) {
                        //print_r($bf_date);die;
                        date_default_timezone_set('UTC');
                        if ($vals < 9) {
                            $vals = str_replace('0', '', $vals);
                        }
                        if (trim($operator) == '-') {
                            $brk = date('H:ia', strtotime($b) + $vals * 60 * 60);
                            $lunch = date('H:ia', strtotime($l) + $vals * 60 * 60);
                            $dinner = date('H:ia', strtotime($d) + $vals * 60 * 60);
                        } elseif (trim($operator) == '+') {
                            $brk = date('H:ia', strtotime($b) - $vals * 60 * 60);
                            $lunch = date('H:ia', strtotime($l) - $vals * 60 * 60);
                            $dinner = date('H:ia', strtotime($d) - $vals * 60 * 60);
                        } else {
                            $brk = $bf_date;
                            $lunch = $lnh_date;
                            $dinner = $dnr_date;
                        }
                        $Additional_Fields_Array['Breakfast']['Field_Value'] = $brk;
                        $Additional_Fields_Array['Lunch']['Field_Value'] = $lunch;
                        $Additional_Fields_Array['Dinner']['Field_Value'] = $dinner;
                    }
                }
                //Custom code end
                //only update First name Last name
                $Additional_Fields_Array = array_intersect_key($Additional_Fields_Array, array_flip(array('First Name', 'Last Name')));
                foreach ($Additional_Fields_Array as $Field) {
                    $CurrentField = $wpdb->get_row($wpdb->prepare("SELECT User_Field_ID FROM {$ewd_feup_user_fields_table_name} WHERE Field_ID='%d' AND User_ID='%d'", $Field['Field_ID'], $User_ID));
                    if ($CurrentField->User_Field_ID != "") {
                        $user_update = Edit_EWD_FEUP_User_Field($Field['Field_ID'], $User_ID, $Field['Field_Name'], $Field['Field_Value']);
                    } else {
                        $user_update = Add_EWD_FEUP_User_Field($Field['Field_ID'], $User_ID, $Field['Field_Name'], $Field['Field_Value'], $date);
                    }
                }
            }
            if ($_POST['ewd-feup-action'] == "edit-account") {
                CreateLoginCookie($_POST['Username'], $_POST['User_Password']);
            }
        }
        $user_update = array("Message_Type" => "Update", "Message" => $user_update);
        $feup_success = true;
        //        Brian3T sends sms here
        //find uid
        if ($_POST['ewd-feup-action'] == "register") {
            $sql = "SELECT `User_ID` FROM `wp_ewd_feup_users` ORDER BY User_ID DESC LIMIT 1";
            $result = $wpdb->get_results($sql);
            if (isset($result[0]->User_ID)) {
                global $uid;
                $uid = $result[0]->User_ID;
                call_send_signup_mms($uid);
            }
        } else {
            session_start();
            unset($_SESSION['first_sms_sent_to']);
        }
        return $user_update;
    } else {
        $output_error = array("Message_Type" => "Error", "Message" => $error);
        return $output_error;
    }
}
function Insert_Edit_Profile($atts)
{
    /** @var string $redirect_page
     * @var string $login_page
     * @var string $Time
     * @var string $Salt
     * @var string $omit_fields
     */
    // Include the required global variables, and create a few new ones
    global $wpdb, $user_message, $feup_success;
    global $ewd_feup_fields_table_name, $ewd_feup_user_table_name, $ewd_feup_user_fields_table_name;
    $Custom_CSS = get_option("EWD_FEUP_Custom_CSS");
    $CheckCookie = CheckLoginCookie();
    $Sql = "SELECT * FROM {$ewd_feup_fields_table_name} WHERE Field_Show_In_Front_End='Yes' ORDER BY `FIELD_ORDER` ASC";
    $Fields = $wpdb->get_results($Sql);
    $User = $wpdb->get_row($wpdb->prepare("SELECT * FROM {$ewd_feup_user_table_name} WHERE Username='******'", $CheckCookie['Username']));
    $UserData = $wpdb->get_results($wpdb->prepare("SELECT * FROM {$ewd_feup_user_fields_table_name} WHERE User_ID='%d'", $User->User_ID));
    //If user doesn't have First name last name, send to first-time-sign-in
    $first_name = array_pop(array_filter($UserData, function ($v) {
        return $v->Field_Name == "First Name";
    }));
    $last_name = array_pop(array_filter($UserData, function ($v) {
        return $v->Field_Name == "Last Name";
    }));
    if (is_object($first_name) && empty($first_name->Field_Value) && is_object($last_name) && empty($last_name->Field_Value)) {
        FEUPRedirect('/first-time-sign-in');
    }
    $ReturnString = "";
    // Get the attributes passed by the shortcode, and store them in new variables for processing
    extract(shortcode_atts(array('redirect_page' => '#', 'login_page' => '', 'omit_fields' => '', 'submit_text' => __('Save settings', 'EWD_FEUP')), $atts));
    $ReturnString .= "<style type='text/css'>";
    $ReturnString .= $Custom_CSS;
    $ReturnString .= "</style>";
    if ($CheckCookie['Username'] == "") {
        $ReturnString .= __('You must be logged in to access this page.', 'EWD_FEUP');
        if ($login_page != "") {
            $ReturnString .= "<br />" . __('Please', 'EWD_FEUP') . " <a href='" . $login_page . "'>" . __('login', 'EWD_FEUP') . "</a> " . __('to continue.', 'EWD_FEUP');
            if (isset($_SESSION['user_name_changed']) && isset($_SESSION['message_count']) && !empty($_SESSION['user_name_changed']) && $_SESSION['message_count'] > 0) {
                $ReturnString .= "<p class='text-success'>Your email has been changed. Please use your new email for logging in.</p><br/>";
                $_SESSION['message_count']--;
            }
        }
        return $ReturnString;
    }
    if ($feup_success and $redirect_page != '#') {
        FEUPRedirect($redirect_page);
    }
    $ReturnString .= "<div id='ewd-feup-edit-profile-form-div'>";
    if (isset($user_message['Message'])) {
        $ReturnString .= "<div class='updated'><p>" . $user_message['Message'] . "</p></div>";
    }
    session_start();
    if (isset($_SESSION['first_sms_sent_to']) && !empty($_SESSION['first_sms_sent_to']) && isset($_SESSION['message_count']) && $_SESSION['message_count'] > 0) {
        $ReturnString .= "<br/><p class='text-success'>Welcome to ThinkThinly. A message has been sent to your number " . $_SESSION['first_sms_sent_to'] . "</p>";
        $_SESSION['message_count']--;
    }
    session_start();
    if (isset($_SESSION['user_updated'])) {
        $ReturnString .= "<br/><p class='updated'>" . $_SESSION['user_updated'] . "</p>";
        unset($_SESSION['user_updated']);
    }
    $ReturnString .= "<form action='#' method='post' id='ewd-feup-edit-profile-form' class='pure-form pure-form-aligned' enctype='multipart/form-data'>";
    //fields
    //5: First Name; 0: Breakfast; 1: Lunch; 2: Dinner; 3: I need the most help...; 4: Select your time zone; 5: First Name; 6:Last Name; 7: Gender; 8: OK to receive texts?; 9: Phone;
    $ReturnString .= "<input type='hidden' name='ewd-feup-check' value='" . sha1(md5($Time . $Salt)) . "'>";
    $ReturnString .= "<input type='hidden' name='ewd-feup-time' value='" . $Time . "'>";
    $ReturnString .= "<input type='hidden' name='ewd-feup-action' value='edit_your_settings'>";
    $ReturnString .= "<input type='hidden' name='Omit_Fields' value='" . $omit_fields . "'>";
    $Omitted_Fields = explode(",", $omit_fields);
    //Brian added. Force new username and password if user has just signed up
    $username = $User->Username;
    $user_email = $User->user_email;
    if (strpos($username, "@foobar.com") != false) {
        $username = "";
    }
    $ReturnString .= '<div class="pure-control-group hidden">';
    $ReturnString .= '<label for="Username">Phone number: </label>';
    $ReturnString .= '<input type="text" class="ewd-feup-text-input" name="Username" value="' . $username . '" required>';
    $ReturnString .= '</div>';
    if (empty($username)) {
        $ReturnString .= '<div class="pure-control-group">';
        $ReturnString .= '<label for ="User_Password">Password: </label>';
        $ReturnString .= '<input type = "password" class="ewd-feup-text-input" name = "User_Password" value = "" required>';
        $ReturnString .= '</div>';
        $ReturnString .= '<div class="pure-control-group">';
        $ReturnString .= '<label for="Confirm_User_Password" > Repeat Password: </label>';
        $ReturnString .= '<input type = "password" class="ewd-feup-text-input" name = "Confirm_User_Password" value = "" >';
        $ReturnString .= '</div>';
    }
    ////Brian added force new username
    $print_field = function ($Field) use($Omitted_Fields, $UserData, &$ReturnString) {
        $display_label = $Field->Field_Name;
        if ($display_label == "Breakfast") {
            $display_label = "Reminder time";
        }
        if ($display_label == "Lunch") {
            $display_label = "Reminder 2";
        }
        if ($display_label == "Dinner") {
            $display_label = "Reminder 3";
        }
        if ($display_label == "Select your time zone") {
            $display_label = "Time zone";
        }
        if (!in_array($Field->Field_Name, $Omitted_Fields)) {
            if ($Field->Field_Required == "Yes") {
                $Req_Text = "required";
            }
            $Value = "";
            if ($Field->Field_Name == "Phone") {
                $Field->Field_Type = "tel";
            }
            foreach ($UserData as $UserField) {
                if ($Field->Field_Name == $UserField->Field_Name) {
                    $Value = $UserField->Field_Value;
                }
            }
            if ($Field->Field_Name == "I need the most help...") {
                $ReturnString .= '<hr/>';
            }
            $ReturnString .= "<div class='pure-control-group row-id-" . $Field->Field_ID . "'>";
            $ReturnString .= "<label for='" . $Field->Field_Name . "' id='ewd-feup-edit-. {$Field->Field_IDclass}='ewd-feup-field-label'>" . __($display_label, 'EWD_FEUP') . "</label>";
            if ($Field->Field_Type == "text" or $Field->Field_Type == "mediumint") {
                $ReturnString .= "<input name='" . $Field->Field_Name . "' id='ewd-feup-register-input-" . $Field->Field_ID . "' class='ewd-feup-text-input pure-input-1-3' type='text' value='" . $Value . "' " . $Req_Text . "/>";
            } elseif ($Field->Field_Type == "tel") {
                $ReturnString .= "<input name='" . $Field->Field_Name . "' id='ewd-feup-register-input-" . $Field->Field_ID . "' class='ewd-feup-text-input pure-input-1-3' type='tel' value='" . $Value . "' " . $Req_Text . "/>";
            } elseif ($Field->Field_Type == "date") {
                $ReturnString .= "<input name='" . $Field->Field_Name . "' id='ewd-feup-register-input-" . $Field->Field_ID . "' class='ewd-feup-date-input pure-input-1-3' type='date' value='" . $Value . "' " . $Req_Text . "/>";
            } elseif ($Field->Field_Type == "datetime") {
                $ReturnString .= "<input name='" . $Field->Field_Name . "' id='ewd-feup-register-input-" . $Field->Field_ID . "' class='ewd-feup-datetime-input pure-input-1-3' type='datetime-local' value='" . $Value . "' " . $Req_Text . "/>";
            } elseif ($Field->Field_Type == "textarea") {
                $ReturnString .= "<textarea name='" . $Field->Field_Name . "' id='ewd-feup-register-input-" . $Field->Field_ID . "' class='ewd-feup-textarea pure-input-1-2' " . $Req_Text . ">" . $Value . "</textarea>";
            } elseif ($Field->Field_Type == "file") {
                $ReturnString .= __("Current file:", 'EWD_FEUP') . " " . substr($Value, 10) . " | ";
                $ReturnString .= "<input name='" . $Field->Field_Name . "' id='ewd-feup-register-input-" . $Field->Field_ID . "' class='ewd-feup-date-input pure-input-1-3' type='file' value='' " . $Req_Text . "/>";
            } elseif ($Field->Field_Type == "select") {
                $Options = explode(",", $Field->Field_Options);
                $bkend_calculated_time = '';
                if (empty($Value)) {
                    switch ($Field->Field_Name) {
                        case 'Breakfast':
                            $Value = '12:00pm';
                            break;
                        case 'Lunch':
                            $Value = 'None set';
                            break;
                        case 'Dinner':
                            $Value = 'None set';
                            break;
                        default:
                            break;
                    }
                }
                $ReturnString .= "<select rel='" . $bkend_calculated_time . "' name='" . $Field->Field_Name . "' id='ewd-feup-register-input-" . $Field->Field_ID . "' class='ewd-feup-select pure-input-1-3'>";
                foreach ($Options as $Option) {
                    $ReturnString .= "<option value='" . $Option . "' ";
                    if (trim($Option) == trim($Value)) {
                        $ReturnString .= "selected='selected'";
                    }
                    $ReturnString .= ">" . $Option . "</option>";
                }
                $ReturnString .= "</select>";
            } elseif ($Field->Field_Type == "radio") {
                $Counter = 0;
                $Options = explode(",", $Field->Field_Options);
                foreach ($Options as $Option) {
                    if ($Counter != 0) {
                        $ReturnString .= "</div><div class='pure-control-group ewd-feup-negative-top'><label class='pure-radio'></label>";
                    }
                    $ReturnString .= "<input type='radio' name='" . $Field->Field_Name . "' value='" . $Option . "' class='ewd-feup-radio' " . $Req_Text . " ";
                    if (trim($Option) == trim($Value)) {
                        $ReturnString .= "checked";
                    }
                    $ReturnString .= ">" . $Option;
                    $Counter++;
                }
            } elseif ($Field->Field_Type == "checkbox") {
                $Counter = 0;
                $Options = explode(",", $Field->Field_Options);
                $Values = explode(",", $Value);
                foreach ($Options as $Option) {
                    if ($Counter != 0) {
                        $ReturnString .= "</div><div class='pure-control-group ewd-feup-negative-top'><label class='pure-radio'></label>";
                    }
                    $ReturnString .= "<input type='checkbox' name='" . $Field->Field_Name . "[]' value='" . $Option . "' class='ewd-feup-checkbox' " . $Req_Text . " ";
                    if (in_array($Option, $Values)) {
                        $ReturnString .= "checked";
                    }
                    $ReturnString .= ">" . $Option . "</br>";
                    $Counter++;
                }
            }
            $ReturnString .= "</div>";
            unset($Req_Text);
            if ($Field->Field_Name == "I need the most help...") {
                $ReturnString .= '<hr/>';
            }
        }
    };
    //5: First Name; 0: Breakfast; 1: Lunch; 2: Dinner; 3: I need the most help...; 4: Select your time zone; 5: First Name; 6:Last Name; 7: Gender; 8: OK to receive texts?; 9: Phone;
    $ReturnString .= '<div id="your_settings">';
    $ReturnString .= '
    <div class="text_with_hr">
    <span>
        Reminder times &nbsp;&nbsp;
    </span>
</div>';
    $ReturnString .= $print_field($Fields[0]);
    $ReturnString .= $print_field($Fields[1]);
    $ReturnString .= $print_field($Fields[2]);
    $ReturnString .= $print_field($Fields[4]);
    $ReturnString .= '<input type="submit" class="ewd-feup-submit pure-button pure-button-primary" name="Edit_Profile_Submit" value="Save">';
    $ReturnString .= '<div class="break big"></div>
    <div class="text_with_hr">
    <span>
        Your info &nbsp;&nbsp;
    </span>
</div>
  <div class="break big"></div>';
    $ReturnString .= <<<HTML
        <div class="pure-control-group"><label for="Phone" class="ewd-feup-field-label">Phone: </label>
<input name="Phone" disabled class="ewd-feup-select pure-input-1-3" value="{$username}">
</div>
HTML;
    $ReturnString .= '<div class="pure-control-group">';
    $ReturnString .= '<label for="user_email">Email: </label>';
    $ReturnString .= '<input type="email" class="ewd-feup-text-input pure-input-1-3" name="user_email" value="' . $user_email . '" >';
    $ReturnString .= '</div>';
    $ReturnString .= $print_field($Fields[5]);
    $ReturnString .= $print_field($Fields[6]);
    $ReturnString .= '<input type="submit" class="ewd-feup-submit pure-button pure-button-primary" name="Edit_Profile_Submit" value="Save">';
    $ReturnString .= '<div class="break big"></div>
    <div class="text_with_hr">
    <span>
        Password &nbsp;&nbsp;
    </span>
</div>
  <div class="break big"></div>';
    $ReturnString .= '<div class="pure-control-group">';
    $ReturnString .= '<label for ="User_Password">New password</label>';
    $ReturnString .= '<input type = "password" class="ewd-feup-text-input" name = "User_Password" value = "" >';
    $ReturnString .= '</div>';
    $ReturnString .= '<div class="pure-control-group">';
    $ReturnString .= '<label for="Confirm_User_Password"> Retype password</label>';
    $ReturnString .= '<input type = "password" class="ewd-feup-text-input" name = "Confirm_User_Password" value = "" >';
    $ReturnString .= '</div>';
    //brian3t extract $FIELDS here
    //insert form for paypal
    $userdata_ = array();
    foreach ($UserData as $user_data) {
        $user_data_[$user_data->Field_Name] = $user_data;
    }
    $expiry_date = $user_data_["Membership Expiry Date"]->Field_Value;
    $output = "";
    $output .= "<script> var \$user_id= {$User->User_ID} ; </script>";
    $ReturnString .= $output;
    ////brian3t extract form field add paypal
    /** @var string $submit_text */
    $ReturnString .= '<input type="submit" class="ewd-feup-submit pure-button pure-button-primary" name="Edit_Profile_Submit" value="Save">';
    $ReturnString .= "</form>";
    $ReturnString .= "</div>";
    wp_enqueue_script('inputmask', "/wp-content/js/inputmask.min.js", "jquery", false, true);
    wp_enqueue_script('jquery_inputmask', "/wp-content/js/jquery.inputmask.min.js", "inputmask", false, true);
    wp_enqueue_script('your_settings', '/wp-content/js/your_settings.js', array('jquery'));
    wp_enqueue_script('timezone', "/wp-content/js/jstz-1.0.4.min.js", "jquery", false, true);
    return $ReturnString;
}
function Insert_Login_Form($atts)
{
    global $user_message, $feup_success;
    global $ewd_feup_fields_table_name, $ewd_feup_user_table_name, $ewd_feup_user_fields_table_name, $wpdb;
    // Include the required global variables, and create a few new ones
    $Salt = get_option("EWD_FEUP_Hash_Salt");
    $Custom_CSS = get_option("EWD_FEUP_Custom_CSS");
    $Username_Is_Email = get_option("EWD_FEUP_Username_Is_Email");
    $Time = time();
    $ReturnString = "";
    // Get the attributes passed by the shortcode, and store them in new variables for processing
    extract(shortcode_atts(array('redirect_page' => '#', 'redirect_field' => '', 'redirect_array_string' => '', 'submit_text' => __('Login', 'EWD_FEUP')), $atts));
    $ReturnString .= "<style type='text/css'>";
    $ReturnString .= $Custom_CSS;
    $ReturnString .= "</style>";
    /**
     * @var string $redirect_field
     * @var string $redirect_page
     * @var string $redirect_array_string
     */
    if ($feup_success and $redirect_field != "") {
        $redirect_page = Determine_Redirect_Page($redirect_field, $redirect_array_string, $redirect_page);
    }
    if ($feup_success and $redirect_page != '#') {
        $CheckCookie = CheckLoginCookie();
        $User = $wpdb->get_row($wpdb->prepare("SELECT * FROM {$ewd_feup_user_table_name} WHERE Username='******'", $CheckCookie['Username']));
        if ($User->subscription == "active") {
            $redirect_page = "/your-settings";
        } else {
            $UserData = $wpdb->get_results($wpdb->prepare("SELECT * FROM {$ewd_feup_user_fields_table_name} WHERE User_ID='%d'", $User->User_ID));
            $expiry_date = null;
            foreach ($UserData as $u) {
                if ($u->Field_Name == "Membership Expiry Date") {
                    $expiry_date = $u->Field_Value;
                }
            }
            //$UserData[10]->Field_Value;
            //compare date here
            if (time() - strtotime($expiry_date) > -3600 * 24) {
                $redirect_page = '/account-expired';
            } elseif ($expiry_date == "") {
                $redirect_page = '/you-did-it';
            } else {
                $redirect_page = '/your-settings';
            }
        }
        FEUPRedirect($redirect_page);
    }
    $ReturnString .= "<div id='ewd-feup-login-form-div'>";
    if (isset($user_message['Message'])) {
        $ReturnString .= $user_message['Message'];
    }
    $ReturnString .= "<form action='#' method='post' id='ewd-feup-login-form' class='pure-form pure-form-aligned'>";
    $ReturnString .= "<input type='hidden' name='ewd-feup-check' value='" . sha1(md5($Time . $Salt)) . "'>";
    $ReturnString .= "<input type='hidden' name='ewd-feup-time' value='" . $Time . "'>";
    $ReturnString .= "<input type='hidden' name='ewd-feup-action' value='login'>";
    $ReturnString .= "<div class='pure-control-group'>";
    if ($Username_Is_Email == "Yes") {
        $ReturnString .= "<label for='Username' id='ewd-feup-login-username-div' class='ewd-feup-field-label'>Phone</label>";
        $ReturnString .= "<input type='text' class='ewd-feup-text-input' name='Username' placeholder='Phone Number...'>";
    } else {
        $ReturnString .= "<label for='Username' id='ewd-feup-login-username-div' class='ewd-feup-field-label'>Phone Number: </label>";
        $ReturnString .= "<input type='text' class='ewd-feup-text-input' name='Username' placeholder='Phone Number...'>";
    }
    $ReturnString .= "</div>";
    $ReturnString .= "<div class='pure-control-group'>";
    $ReturnString .= "<label for='Password' id='ewd-feup-login-password-div' class='ewd-feup-field-label'>" . __('Password', 'EWD_FEUP') . "</label>";
    $ReturnString .= "<input type='password' class='ewd-feup-text-input' name='User_Password'>";
    $ReturnString .= "</div>";
    $ReturnString .= "<input type='submit' class='ewd-feup-submit pure-button pure-button-primary' name='Login_Submit' value='" . $submit_text . "'>";
    $ReturnString .= "</form>";
    $ReturnString .= "</div>";
    return $ReturnString;
}
function Insert_Edit_Profile($atts)
{
    /** @var string $redirect_page
     * @var string $login_page
     * @var string $Time
     * @var string $Salt
     * @var string $omit_fields
     */
    // Include the required global variables, and create a few new ones
    global $wpdb, $user_message, $feup_success;
    global $ewd_feup_fields_table_name, $ewd_feup_user_table_name, $ewd_feup_user_fields_table_name;
    $Custom_CSS = get_option("EWD_FEUP_Custom_CSS");
    $CheckCookie = CheckLoginCookie();
    $Sql = "SELECT * FROM {$ewd_feup_fields_table_name} WHERE Field_Show_In_Front_End='Yes' ORDER BY `FIELD_ORDER` ASC";
    $Fields = $wpdb->get_results($Sql);
    $User = $wpdb->get_row($wpdb->prepare("SELECT * FROM {$ewd_feup_user_table_name} WHERE Username='******'", $CheckCookie['Username']));
    $UserData = $wpdb->get_results($wpdb->prepare("SELECT * FROM {$ewd_feup_user_fields_table_name} WHERE User_ID='%d'", $User->User_ID));
    $ReturnString = "";
    // Get the attributes passed by the shortcode, and store them in new variables for processing
    extract(shortcode_atts(array('redirect_page' => '#', 'login_page' => '', 'omit_fields' => '', 'submit_text' => __('Save settings', 'EWD_FEUP')), $atts));
    $ReturnString .= "<style type='text/css'>";
    $ReturnString .= $Custom_CSS;
    $ReturnString .= "</style>";
    if ($CheckCookie['Username'] == "") {
        $ReturnString .= __('You must be logged in to access this page.', 'EWD_FEUP');
        if ($login_page != "") {
            $ReturnString .= "<br />" . __('Please', 'EWD_FEUP') . " <a href='" . $login_page . "'>" . __('login', 'EWD_FEUP') . "</a> " . __('to continue.', 'EWD_FEUP');
            if (isset($_SESSION['user_name_changed']) && isset($_SESSION['message_count']) && !empty($_SESSION['user_name_changed']) && $_SESSION['message_count'] > 0) {
                $ReturnString .= "<p class='text-success'>Your email has been changed. Please use your new email for logging in.</p><br/>";
                $_SESSION['message_count']--;
            }
        }
        return $ReturnString;
    }
    if ($feup_success and $redirect_page != '#') {
        FEUPRedirect($redirect_page);
    }
    $ReturnString .= "<div id='ewd-feup-edit-profile-form-div'>";
    if (isset($user_message['Message'])) {
        $ReturnString .= "<div class='updated'><p>" . $user_message['Message'] . "</p></div>";
    }
    session_start();
    if (isset($_SESSION['first_sms_sent_to']) && !empty($_SESSION['first_sms_sent_to']) && isset($_SESSION['message_count']) && $_SESSION['message_count'] > 0) {
        $ReturnString .= "<br/><p class='text-success'>Welcome to ThinkThinly. A message has been sent to your number " . $_SESSION['first_sms_sent_to'] . "</p>";
        $_SESSION['message_count']--;
    }
    session_start();
    if (isset($_SESSION['user_updated'])) {
        $ReturnString .= "<br/><p class='updated'>" . $_SESSION['user_updated'] . "</p>";
        unset($_SESSION['user_updated']);
    }
    $ReturnString .= "<form action='#' method='post' id='ewd-feup-edit-profile-form' class='pure-form pure-form-aligned' enctype='multipart/form-data'>";
    //fields
    //5: First Name; 0: Breakfast; 1: Lunch; 2: Dinner; 3: I need the most help...; 4: Select your time zone; 5: First Name; 6:Last Name; 7: Gender; 8: OK to receive texts?; 9: Phone;
    $ReturnString .= "<input type='hidden' name='ewd-feup-check' value='" . sha1(md5($Time . $Salt)) . "'>";
    $ReturnString .= "<input type='hidden' name='ewd-feup-time' value='" . $Time . "'>";
    $ReturnString .= "<input type='hidden' name='ewd-feup-action' value='edit-profile'>";
    $ReturnString .= "<input type='hidden' name='Omit_Fields' value='" . $omit_fields . "'>";
    $Omitted_Fields = explode(",", $omit_fields);
    //Brian added. Force new username and password if user has just signed up
    $username = $User->Username;
    $user_email = $User->user_email;
    if (strpos($username, "@foobar.com") != false) {
        $username = "";
    }
    $ReturnString .= '<div class="pure-control-group hidden">';
    $ReturnString .= '<label for="Username">Phone number: </label>';
    $ReturnString .= '<input type="text" class="ewd-feup-text-input" name="Username" value="' . $username . '" required>';
    $ReturnString .= '</div>';
    if (empty($username)) {
        $ReturnString .= '<div class="pure-control-group">';
        $ReturnString .= '<label for ="User_Password">Password: </label>';
        $ReturnString .= '<input type = "password" class="ewd-feup-text-input" name = "User_Password" value = "" required>';
        $ReturnString .= '</div>';
        $ReturnString .= '<div class="pure-control-group">';
        $ReturnString .= '<label for="Confirm_User_Password" > Repeat Password: </label>';
        $ReturnString .= '<input type = "password" class="ewd-feup-text-input" name = "Confirm_User_Password" value = "" >';
        $ReturnString .= '</div>';
    }
    ////Brian added force new username
    //fixing data before display
    //5: First Name; 0: Breakfast; 1: Lunch; 2: Dinner; 3: I need the most help...; 4: Select your time zone; 5: First Name; 6:Last Name; 7: Gender; 8: OK to receive texts?; 9: Phone;
    $print_field = function ($Field) use($Omitted_Fields, $UserData, &$ReturnString) {
        $display_label = $Field->Field_Name;
        if ($display_label == "Breakfast") {
            $display_label = "Time 1";
        }
        if ($display_label == "Lunch") {
            $display_label = "Time 2";
        }
        if ($display_label == "Dinner") {
            $display_label = "Time 3";
        }
        if ($display_label == "Select your time zone") {
            $display_label = "Time Zone";
        }
        if (!in_array($Field->Field_Name, $Omitted_Fields)) {
            if ($Field->Field_Required == "Yes") {
                $Req_Text = "required";
            }
            $Value = "";
            if ($Field->Field_Name == "Phone") {
                $Field->Field_Type = "tel";
            }
            foreach ($UserData as $UserField) {
                if ($Field->Field_Name == $UserField->Field_Name) {
                    $Value = $UserField->Field_Value;
                }
            }
            if ($Field->Field_Name == "I need the most help...") {
                $ReturnString .= '<hr/>';
            }
            $ReturnString .= "<div class='pure-control-group'>";
            $ReturnString .= "<label for='" . $Field->Field_Name . "' id='ewd-feup-edit-" . $Field->Field_ID . "' class='ewd-feup-field-label'>" . __($display_label, 'EWD_FEUP') . ": </label>";
            if ($Field->Field_Type == "text" or $Field->Field_Type == "mediumint") {
                $ReturnString .= "<input name='" . $Field->Field_Name . "' id='ewd-feup-register-input-" . $Field->Field_ID . "' class='ewd-feup-text-input pure-input-1-3' type='text' value='" . $Value . "' " . $Req_Text . "/>";
            } elseif ($Field->Field_Type == "tel") {
                $ReturnString .= "<input name='" . $Field->Field_Name . "' id='ewd-feup-register-input-" . $Field->Field_ID . "' class='ewd-feup-text-input pure-input-1-3' type='tel' value='" . $Value . "' " . $Req_Text . "/>";
            } elseif ($Field->Field_Type == "date") {
                $ReturnString .= "<input name='" . $Field->Field_Name . "' id='ewd-feup-register-input-" . $Field->Field_ID . "' class='ewd-feup-date-input pure-input-1-3' type='date' value='" . $Value . "' " . $Req_Text . "/>";
            } elseif ($Field->Field_Type == "datetime") {
                $ReturnString .= "<input name='" . $Field->Field_Name . "' id='ewd-feup-register-input-" . $Field->Field_ID . "' class='ewd-feup-datetime-input pure-input-1-3' type='datetime-local' value='" . $Value . "' " . $Req_Text . "/>";
            } elseif ($Field->Field_Type == "textarea") {
                $ReturnString .= "<textarea name='" . $Field->Field_Name . "' id='ewd-feup-register-input-" . $Field->Field_ID . "' class='ewd-feup-textarea pure-input-1-2' " . $Req_Text . ">" . $Value . "</textarea>";
            } elseif ($Field->Field_Type == "file") {
                $ReturnString .= __("Current file:", 'EWD_FEUP') . " " . substr($Value, 10) . " | ";
                $ReturnString .= "<input name='" . $Field->Field_Name . "' id='ewd-feup-register-input-" . $Field->Field_ID . "' class='ewd-feup-date-input pure-input-1-3' type='file' value='' " . $Req_Text . "/>";
            } elseif ($Field->Field_Type == "select") {
                $Options = explode(",", $Field->Field_Options);
                $bkend_calculated_time = '';
                if (empty($Value)) {
                    switch ($Field->Field_Name) {
                        case 'Breakfast':
                            $Value = '12:00pm';
                            break;
                        case 'Lunch':
                            $Value = 'None set';
                            break;
                        case 'Dinner':
                            $Value = 'None set';
                            break;
                        default:
                            break;
                    }
                }
                $ReturnString .= "<select rel='" . $bkend_calculated_time . "' name='" . $Field->Field_Name . "' id='ewd-feup-register-input-" . $Field->Field_ID . "' class='ewd-feup-select pure-input-1-3'>";
                foreach ($Options as $Option) {
                    $ReturnString .= "<option value='" . $Option . "' ";
                    if (trim($Option) == trim($Value)) {
                        $ReturnString .= "selected='selected'";
                    }
                    $ReturnString .= ">" . $Option . "</option>";
                }
                $ReturnString .= "</select>";
            } elseif ($Field->Field_Type == "radio") {
                $Counter = 0;
                $Options = explode(",", $Field->Field_Options);
                foreach ($Options as $Option) {
                    if ($Counter != 0) {
                        $ReturnString .= "</div><div class='pure-control-group ewd-feup-negative-top'><label class='pure-radio'></label>";
                    }
                    $ReturnString .= "<input type='radio' name='" . $Field->Field_Name . "' value='" . $Option . "' class='ewd-feup-radio' " . $Req_Text . " ";
                    if (trim($Option) == trim($Value)) {
                        $ReturnString .= "checked";
                    }
                    $ReturnString .= ">" . $Option;
                    $Counter++;
                }
            } elseif ($Field->Field_Type == "checkbox") {
                $Counter = 0;
                $Options = explode(",", $Field->Field_Options);
                $Values = explode(",", $Value);
                foreach ($Options as $Option) {
                    if ($Counter != 0) {
                        $ReturnString .= "</div><div class='pure-control-group ewd-feup-negative-top'><label class='pure-radio'></label>";
                    }
                    $ReturnString .= "<input type='checkbox' name='" . $Field->Field_Name . "[]' value='" . $Option . "' class='ewd-feup-checkbox' " . $Req_Text . " ";
                    if (in_array($Option, $Values)) {
                        $ReturnString .= "checked";
                    }
                    $ReturnString .= ">" . $Option . "</br>";
                    $Counter++;
                }
            }
            $ReturnString .= "</div>";
            unset($Req_Text);
            if ($Field->Field_Name == "I need the most help...") {
                $ReturnString .= '<hr/>';
            }
        }
    };
    //5: First Name; 0: Breakfast; 1: Lunch; 2: Dinner; 3: I need the most help...; 4: Select your time zone; 5: First Name; 6:Last Name; 7: Gender; 8: OK to receive texts?; 9: Phone;
    $ReturnString .= '<div id="your_settings">
    <ul id="tabs" class="nav nav-tabs" data-tabs="tabs">
        <li class="active"><a href="#tab_one" data-toggle="tab">Account</a></li>
        <li><a href="#tab_two" data-toggle="tab">Reminder times</a></li>
        <li ' . ($User->subscription == "active" ? ' class="hidden" ' : '') . '><a href="#tab_three" data-toggle="tab">Subscription</a></li>
        <li><a href="#tab_four" data-toggle="tab">Summary</a></li>
    </ul>
    <div id="my-tab-content" class="tab-content">
        <div class="tab-pane active" id="tab_one">';
    $ReturnString .= $print_field($Fields[5]);
    $ReturnString .= $print_field($Fields[6]);
    $ReturnString .= '<div class="pure-control-group">';
    $ReturnString .= '<label for="user_email">Email: </label>';
    $ReturnString .= '<input type="email" class="ewd-feup-text-input pure-input-1-3" name="user_email" value="' . $user_email . '" >';
    $ReturnString .= '</div>';
    $ReturnString .= '<div class="pure-control-group">';
    $ReturnString .= '<label for ="User_Password">Set new password (leave this field empty if you don\'t want to change your password): </label>';
    $ReturnString .= '<input type = "password" class="ewd-feup-text-input" name = "User_Password" value = "" >';
    $ReturnString .= '</div>';
    $ReturnString .= '<div class="pure-control-group">';
    $ReturnString .= '<label for="Confirm_User_Password" > Repeat Password: </label>';
    $ReturnString .= '<input type = "password" class="ewd-feup-text-input" name = "Confirm_User_Password" value = "" >';
    $ReturnString .= '</div>';
    $ReturnString .= '
        </div>
        <div class="tab-pane" id="tab_two">
            Tell us what times you need motivational boost and we\'ll text you then.
            <br/>Pick up to three times.  (Hint: You can choose meal times, workout times, late afternoon cravings or any time you need encouragement.)';
    $ReturnString .= $print_field($Fields[0]);
    $ReturnString .= $print_field($Fields[1]);
    $ReturnString .= $print_field($Fields[2]);
    $ReturnString .= $print_field($Fields[4]);
    $ReturnString .= '
        </div>
        <div class="tab-pane" id="tab_three">
            <h3>Lasting change starts here.</h3>
Get motivational texts every day up to three times a day daily for just $4.99 a month.<br/>
That\'s the cost of one cup of coffee.
                              Cancel any time.<br/>
                              <br/>
                              <button id="add_membership" type="button"> Yes, please send me messages! </button>
        </div>
        <div class="tab-pane" id="tab_four">
            <h3>You did it!</h3>
            The new you is on its way, one motivational message at a time.
            <h4>Settings</h4>
            ';
    $ReturnString .= $print_field($Fields[0]);
    $ReturnString .= $print_field($Fields[1]);
    $ReturnString .= $print_field($Fields[2]);
    $ReturnString .= $print_field($Fields[4]);
    $ReturnString .= '<div class="pure-control-group">';
    $ReturnString .= '<label for="Username">Phone number: </label>';
    $ReturnString .= '<input type="text" disabled="disabled" class="ewd-feup-text-input" name="Username" value="' . $username . '" required>';
    $ReturnString .= '</div>';
    $ReturnString .= '</div>        ';
    //    print_field($Field, $Omitted_Fields, $UserData, $ReturnString);
    //brian3t extract $FIELDS here
    //insert form for paypal
    $userdata_ = array();
    foreach ($UserData as $user_data) {
        $user_data_[$user_data->Field_Name] = $user_data;
    }
    $expiry_date = $user_data_["Membership Expiry Date"]->Field_Value;
    $output = "";
    //    $output      = '<hr/>';
    //    $output .= <<<HTML
    //    <div class="pure-control-group"><label for="Membership Expiry Date" id="ewd-feup-edit-16" class="ewd-feup-field-label">Expires:
    //        </label><span class="form_text">$expiry_date
    //        </span><input name="Membership Expiry Date" value="$expiry_date" id="ewd-feup-register-input-16" type="hidden">
    //        <label>
    //        </label><span class="form_text">Extend membership by <input name="qty" size=1 value=1> months
    //        </span>
    //        <label>
    //        </label><button type="button" id="add_membership">Go</button>
    //
    //    </div>
    //HTML;
    //    $output .= '<hr/>';
    $output .= "<script> var \$user_id= {$User->User_ID} ; </script>";
    $ReturnString .= $output;
    ////brian3t extract form field add paypal
    /** @var string $submit_text */
    $ReturnString .= "<div class='pure-control-group'><label for='submit'></label><input type='submit' class='ewd-feup-submit pure-button pure-button-primary' name='Edit_Profile_Submit' value='" . $submit_text . "'></div>";
    $ReturnString .= "</form>";
    $ReturnString .= "</div>";
    wp_enqueue_script('inputmask', "/wp-content/js/inputmask.min.js", "jquery", false, true);
    wp_enqueue_script('jquery_inputmask', "/wp-content/js/jquery.inputmask.min.js", "inputmask", false, true);
    wp_enqueue_script('your_settings', '/wp-content/js/your_settings.js', array('jquery'));
    wp_enqueue_script('timezone', "/wp-content/js/jstz-1.0.4.min.js", "jquery", false, true);
    $ReturnString .= '    </div>
</div>';
    //determine tab
    $tab = 2;
    //0: Breakfast; 1: Lunch; 2: Dinner; 3: I need the most help...; 4: Select your time zone; 5: First Name; 6:Last Name; 7: Gender; 8: OK to receive texts?; 9: Phone;
    if (empty($UserData[10]->Field_Value)) {
        $tab = 1;
    }
    if ($User->subscription == "active") {
        $tab = 4;
    }
    if (!empty($UserData[0]->Field_Value)) {
        if (strtotime($UserData[0]->Field_Value) < time()) {
            $tab = 3;
        }
    }
    $ReturnString .= "<script>var \$tab = '{$tab}';</script>";
    return $ReturnString;
}
예제 #25
0
function Insert_Edit_Account_Form($atts)
{
    global $wpdb, $user_message, $feup_success;
    global $ewd_feup_user_table_name;
    $Custom_CSS = get_option("EWD_FEUP_Custom_CSS");
    $Username_Is_Email = get_option("EWD_FEUP_Username_Is_Email");
    $CheckCookie = CheckLoginCookie();
    //$Sql = "SELECT * FROM $ewd_feup_fields_table_name ";
    //$Fields = $wpdb->get_results($Sql);
    $User = $wpdb->get_row($wpdb->prepare("SELECT * FROM {$ewd_feup_user_table_name} WHERE Username='******'", $CheckCookie['Username']));
    $feup_Label_Please = get_option("EWD_FEUP_Label_Please");
    if ($feup_Label_Please == "") {
        $feup_Label_Please = __("Please", 'EWD_FEUP');
    }
    $feup_Label_To_Continue = get_option("EWD_FEUP_Label_To_Continue");
    if ($feup_Label_To_Continue == "") {
        $feup_Label_To_Continue = __("To Continue", 'EWD_FEUP');
    }
    $feup_Label_Login = get_option("EWD_FEUP_Label_Login");
    if ($feup_Label_Login == "") {
        $feup_Label_Login = __("Login", 'EWD_FEUP');
    }
    $feup_Label_Email = get_option("EWD_FEUP_Label_Email");
    if ($feup_Label_Email == "") {
        $feup_Label_Email = __("Email", 'EWD_FEUP');
    }
    $feup_Label_Username = get_option("EWD_FEUP_Label_Username");
    if ($feup_Label_Username == "") {
        $feup_Label_Username = __("Username", 'EWD_FEUP');
    }
    $feup_Label_Password = get_option("EWD_FEUP_Label_Password");
    if ($feup_Label_Password == "") {
        $feup_Label_Password = __("Password", 'EWD_FEUP');
    }
    $feup_Label_Repeat_Password = get_option("EWD_FEUP_Label_Repeat_Password");
    if ($feup_Label_Repeat_Password == "") {
        $feup_Label_Repeat_Password = __("Repeat Password", 'EWD_FEUP');
    }
    $feup_Label_Password_Strength = get_option("EWD_FEUP_Label_Password_Strength");
    if ($feup_Label_Password_Strength == "") {
        $feup_Label_Password_Strength = __("Password Strength", 'EWD_FEUP');
    }
    $feup_Label_Require_Login_Message = get_option("EWD_FEUP_Label_Require_Login_Message");
    if ($feup_Label_Require_Login_Message == "") {
        $feup_Label_Require_Login_Message = __('You must be logged in to access this page.', 'EWD_FEUP');
    }
    $ReturnString = "";
    // Get the attributes passed by the shortcode, and store them in new variables for processing
    extract(shortcode_atts(array('redirect_page' => '#', 'login_page' => '', 'submit_text' => __('Update Account', 'EWD_FEUP')), $atts));
    $ReturnString .= "<style type='text/css'>";
    $ReturnString .= $Custom_CSS;
    $ReturnString .= EWD_FEUP_Add_Modified_Styles();
    if ($CheckCookie['Username'] == "") {
        $ReturnString .= $feup_Label_Require_Login_Message;
        if ($login_page != "") {
            $ReturnString .= "<br />" . $feup_Label_Please . " <a href='" . $login_page . "'>" . $feup_Label_Login . "</a> " . $feup_Label_To_Continue;
        }
        return $ReturnString;
    }
    if ($feup_success and $redirect_page != '#') {
        FEUPRedirect($redirect_page);
    }
    $ReturnString .= "<div id='ewd-feup-edit-account-form-div' class='ewd-feup-form-div'>";
    if (isset($user_message['Message'])) {
        $ReturnString .= $user_message['Message'];
    }
    $ReturnString .= "<form action='#' method='post' id='ewd-feup-edit-account-form' class='pure-form pure-form-aligned feup-pure-form-aligned'>";
    $ReturnString .= "<input type='hidden' name='ewd-feup-check' value='" . sha1(md5($Time . $Salt)) . "'>";
    $ReturnString .= "<input type='hidden' name='ewd-feup-time' value='" . $Time . "'>";
    $ReturnString .= "<input type='hidden' name='ewd-feup-action' value='edit-account'>";
    if ($Username_Is_Email == "Yes") {
        $ReturnString .= "<div class='feup-pure-control-group'>";
        $ReturnString .= "<label for='Username' id='ewd-feup-register-username-div' class='ewd-feup-field-label ewd-feup-login-label'>" . $feup_Label_Email . ": </label>";
        // $ReturnString .= "<div id='ewd-feup-register-username-div' class='ewd-feup-field-label'>" . __('Email', 'EWD_FEUP') . ": </div>";
        $ReturnString .= "<input type='email' class='ewd-feup-text-input' name='Username' value='" . $User->Username . "'>";
        $ReturnString .= "</div>";
    } else {
        $ReturnString .= "<div class='feup-pure-control-group'>";
        $ReturnString .= "<label for='Username' id='ewd-feup-register-username-div' class='ewd-feup-field-label ewd-feup-login-label'>" . $feup_Label_Username . ": </label>";
        // $ReturnString .= "<div id='ewd-feup-register-username-div' class='ewd-feup-field-label'>" . __('Username', 'EWD_FEUP') . ": </div>";
        $ReturnString .= "<input type='text' class='ewd-feup-text-input' name='Username' value='" . $User->Username . "'>";
        $ReturnString .= "</div>";
    }
    $ReturnString .= "<div class='feup-pure-control-group'>";
    $ReturnString .= "<label for='Password' id='ewd-feup-login-password-div' class='ewd-feup-field-label ewd-feup-login-label'>" . $feup_Label_Password . ": </label>";
    // $ReturnString .= "<div id='ewd-feup-register-password-div' class='ewd-feup-field-label'>" . __('Password', 'EWD_FEUP') . ": </div>";
    $ReturnString .= "<input type='password' class='ewd-feup-text-input ewd-feup-password-input' name='User_Password' value=''>";
    $ReturnString .= "</div>";
    $ReturnString .= "<div class='feup-pure-control-group'>";
    $ReturnString .= "<label for='Repeat-Password' id='ewd-feup-register-password-confirm-div' class='ewd-feup-field-label ewd-feup-login-label'>" . $feup_Label_Repeat_Password . ": </label>";
    // $ReturnString .= "<div id='ewd-feup-register-password-confirm-div' class='ewd-feup-field-label'>" . __('Repeat Password', 'EWD_FEUP') . ": </div>";
    $ReturnString .= "<input type='password' class='ewd-feup-text-input ewd-feup-check-password-input' name='Confirm_User_Password' value=''>";
    $ReturnString .= "</div>";
    $ReturnString .= "<div class='feup-pure-control-group'>";
    $ReturnString .= "<label for='Password Strength' id='ewd-feup-password-strength' class='ewd-feup-field-label'>" . $feup_Label_Password_Strength . ": </label>";
    $ReturnString .= "<span id='ewd-feup-password-result'>Too Short</span>";
    $ReturnString .= "</div>";
    $ReturnString .= "<div class='feup-pure-control-group'><label for='submit'></label><input type='submit' class='ewd-feup-submit feup-pure-button feup-pure-button-primary' name='Edit_Profile_Submit' value='" . $submit_text . "'></div>";
    $ReturnString .= "</form>";
    $ReturnString .= "</div>";
    return $ReturnString;
}
function User_Search($atts, $content = null)
{
    // Include the required global variables, and create a few new ones
    global $wpdb;
    global $ewd_feup_user_table_name, $ewd_feup_user_fields_table_name;
    $Custom_CSS = get_option("EWD_FEUP_Custom_CSS");
    $UserCookie = CheckLoginCookie();
    // Get the attributes passed by the shortcode, and store them in new variables for processing
    extract(shortcode_atts(array('login_page' => '', 'login_necessary' => 'Yes', 'submit_text' => 'Search Users', 'search_fields' => '', 'user_profile_page' => ''), $atts));
    $ReturnString .= "<style type='text/css'>";
    $ReturnString .= $Custom_CSS;
    $ReturnString .= EWD_FEUP_Add_Modified_Styles();
    if (!$UserCookie and $login_necessary == "Yes") {
        $ReturnString .= __("Please log in to access this content.", 'EWD_FEUP');
        if ($login_page != "") {
            $ReturnString .= "<br />" . __('Please', 'EWD_FEUP') . " <a href='" . $login_page . "'>" . __('login', 'EWD_FEUP') . "</a> " . __('to continue.', 'EWD_FEUP');
        }
        return $ReturnString;
    }
    if ($search_fields == "") {
        $ReturnString .= __("search_fields was left blank. Please make sure to include that attribute inside your shortcode.", 'EWD_FEUP');
        return $ReturnString;
    }
    if ($_POST['ewd-feup-action'] == "user-search") {
        $Users = Get_User_Search_Results();
        $ReturnString .= "<div class='ewd-feup-user-list-result'>";
        foreach ($Users as $User) {
            $ReturnString .= "<div class='ewd-feup-user'>";
            foreach ($User as $FieldName => $ReturnField) {
                $ReturnString .= "<div class='ewd-feup-user-field'>";
                $ReturnString .= $FieldName . ": " . $ReturnField;
                $ReturnString .= "</div>";
            }
            $ReturnString .= "</div>";
        }
        $ReturnString .= "</div>";
    }
    $search_fields_array = explode(",", $search_fields);
    $ReturnString .= "<div id='ewd-feup-login-form-div'>";
    if (isset($user_message['Message'])) {
        $ReturnString .= $user_message['Message'];
    }
    $ReturnString .= "<form action='#' method='post' id='ewd-feup-login-form' class='feup-pure-form feup-pure-form-aligned'>";
    $ReturnString .= "<input type='hidden' name='ewd-feup-check' value='" . sha1(md5($Time . $Salt)) . "'>";
    $ReturnString .= "<input type='hidden' name='ewd-feup-time' value='" . $Time . "'>";
    $ReturnString .= "<input type='hidden' name='ewd-feup-action' value='user-search'>";
    foreach ($search_fields_array as $field) {
        $field_clean = trim(str_replace(" ", "_", $field));
        $field_clean = str_replace("'", "&#39", $field_clean);
        $ReturnString .= "<div class='feup-pure-control-group'>";
        $ReturnString .= "<label for='" . $field . "' id='ewd-feup-" . $field_clean . "-div' class='ewd-feup-field-label'>" . $field . ": </label>";
        $ReturnString .= "<input type='text' class='ewd-feup-text-input' name='search_" . $field_clean . "' placeholder='" . $field . "...'>";
        $ReturnString .= "</div>";
    }
    $ReturnString .= "<div class='feup-pure-control-group'>";
    $ReturnString .= "<label for='Submit'></label><input type='submit' class='ewd-feup-submit feup-pure-button feup-pure-button-primary' name='Search_Submit' value='" . $submit_text . "'>";
    $ReturnString .= "</div>";
    $ReturnString .= "</form>";
    $ReturnString .= "</div>";
    return $ReturnString;
}