ccUserData['customer_id']>0) {
if ($_POST['which_field']=="T"){
$county = $_POST['county'];
} elseif ($_POST['which_field']=="S") {
$county = $_POST['county_sel'];
}
if ($_POST['email']!==$cc_session->ccUserData['email']) {
$emailArray = $db->select("SELECT customer_id, type FROM ".$glob['dbprefix']."CubeCart_customer WHERE email=".$db->mySQLSafe($_POST['email']));
}
if (empty($_POST['firstName']) || empty($_POST['lastName']) || empty($_POST['email']) || empty($_POST['phone']) || empty($_POST['add_1']) || empty($_POST['town']) || empty($county) || empty($_POST['postcode']) || empty($_POST['country'])) {
$errorMsg = $lang['profile']['complete_all'];
} else if (!validateEmail($_POST['email'])) {
$errorMsg = $lang['profile']['email_invalid'];
} else if(!ereg("[0-9]",$_POST['phone'])) {
$errorMsg = $lang['profile']['enter_valid_tel'];
} else if(!empty($_POST['mobile']) && !ereg("[0-9]",$_POST['mobile'])) {
$errorMsg = $lang['profile']['enter_valid_tel'];
} else if(isset($emailArray) && $emailArray == true && $emailArray[0]['type'] == 1) {
$errorMsg = $lang['profile']['email_inuse'];
} else {
## update database
$data['title'] = $db->mySQLSafe($_POST['title']);
$data['firstName'] = $db->mySQLSafe($_POST['firstName']);
$data['lastName'] = $db->mySQLSafe($_POST['lastName']);
$data['email'] = $db->mySQLSafe($_POST['email']);
$data['companyName'] = $db->mySQLSafe($_POST['companyName']);
$data['add_1'] = $db->mySQLSafe($_POST['add_1']);
$data['add_2'] = $db->mySQLSafe($_POST['add_2']);
$data['town'] = $db->mySQLSafe($_POST['town']);
$data['county'] = $db->mySQLSafe($county);
$data['postcode'] = $db->mySQLSafe($_POST['postcode']);
$data['country'] = $db->mySQLSafe($_POST['country']);
$data['phone'] = $db->mySQLSafe($_POST['phone']);
$data['mobile'] = $db->mySQLSafe($_POST['mobile']);
$where = "customer_id = ".$cc_session->ccUserData['customer_id'];
$updateAcc = $db->update($glob['dbprefix']."CubeCart_customer",$data,$where);
## make email
require("classes".CC_DS."htmlMimeMail".CC_DS."htmlMimeMail.php");
$lang = getLang("email.inc.php");
$mail = new htmlMimeMail();
$macroArray = array(
"CUSTOMER_NAME" => sanitizeVar($_POST['firstName']." ".$_POST['lastName']),
"STORE_URL" => $GLOBALS['storeURL'],
"SENDER_IP" => get_ip_address()
);
$text = macroSub($lang['email']['profile_mofified_body'], $macroArray);
unset($macroArray);
$mail->setText($text);
$mail->setFrom($config['masterName'].' <'.$config['masterEmail'].'>');
$mail->setSubject($lang['email']['profile_mofified_subject']);
$mail->setHeader('X-Mailer', 'CubeCart Mailer');
$send = $mail->send(array(sanitizeVar($_POST['email'])), $config['mailMethod']);
$getF = sanitizeVar($_GET['f']); // fixes Fatal error: Can't use function return value in write context
if(!empty($getF)) {
httpredir("index.php?_g=co&_a=".sanitizeVar($_GET['f']));
}
## rebuild customer array
$query = "SELECT * FROM ".$glob['dbprefix']."CubeCart_sessions INNER JOIN ".$glob['dbprefix']."CubeCart_customer ON ".$glob['dbprefix']."CubeCart_sessions.customer_id = ".$glob['dbprefix']."CubeCart_customer.customer_id WHERE sessId = '".$GLOBALS[CC_SESSION_NAME]."'";
$result = $db->select($query);
$cc_session->ccUserData = $result[0];
}
}
$profile = new XTemplate ("content".CC_DS."profile.tpl");
$profile->assign("LANG_PERSONAL_INFO_TITLE",$lang['profile']['personal_info']);
if (isset($updateAcc) && $updateAcc == true) {
$profile->assign("LANG_PROFILE_DESC",$lang['profile']['account_updated']);
$profile->parse("profile.session_true.no_error");
} else if(isset($errorMsg)) {
$profile->assign("VAL_ERROR",$errorMsg);
$profile->parse("profile.session_true.error");
} else {
$profile->assign("LANG_PROFILE_DESC",$lang['profile']['edit_below']);
$profile->parse("profile.session_true.no_error");
}
if ($cc_session->ccUserData['customer_id'] > 0 || $cc_session->ccUserData[0]['customer_id'] > 0) {
if(isset($_GET['f']) && !empty($_GET['f'])) {
$profile->assign("VAL_EXTRA_GET","&f=".sanitizeVar($_GET['f']));
}
$profile->assign("TXT_TITLE",$lang['profile']['title']);
$profile->assign("VAL_TITLE",$cc_session->ccUserData['title']);
$profile->assign("TXT_FIRST_NAME",$lang['profile']['first_name']);
$profile->assign("VAL_FIRST_NAME",$cc_session->ccUserData['firstName']);
$profile->assign("TXT_LAST_NAME",$lang['profile']['last_name']);
$profile->assign("VAL_LAST_NAME",$cc_session->ccUserData['lastName']);
$profile->assign("TXT_COMPANY_NAME",$lang['profile']['company_name']);
$profile->assign("VAL_COMPANY_NAME",$cc_session->ccUserData['companyName']);
$profile->assign("TXT_EMAIL",$lang['profile']['email']);
$profile->assign("VAL_EMAIL",$cc_session->ccUserData['email']);
$profile->assign("TXT_ADD_1",$lang['profile']['address']);
$profile->assign("VAL_ADD_1",$cc_session->ccUserData['add_1']);
$profile->assign("TXT_ADD_2","");
$profile->assign("VAL_ADD_2",$cc_session->ccUserData['add_2']);
$profile->assign("TXT_TOWN",$lang['profile']['town']);
$profile->assign("VAL_TOWN",$cc_session->ccUserData['town']);
$profile->assign("TXT_COUNTY",$lang['profile']['county']);
/*
$profile->assign("VAL_COUNTY",$cc_session->ccUserData['county']);
*/
$profile->assign("TXT_POSTCODE",$lang['profile']['postcode']);
$profile->assign("VAL_POSTCODE",$cc_session->ccUserData['postcode']);
$profile->assign("TXT_COUNTRY",$lang['profile']['country']);
$jsScript = jsGeoLocationExtended("country", "county_sel", $lang['cart']['na'],"divCountySelect","divCountyText","county","which_field");
$counties = $db->select("SELECT name FROM ".$glob['dbprefix']."CubeCart_iso_counties WHERE countryId = '".$cc_session->ccUserData['country']."';");
$profile->assign("VAL_DEL_COUNTY",$cc_session->ccUserData['county']);
if (is_array($counties)) {
$profile->assign("VAL_COUNTY_SEL_STYLE", "style='display:block;'");
$profile->assign("VAL_COUNTY_TXT_STYLE", "style='display:none;'");
$profile->assign("VAL_COUNTY_WHICH_FIELD", "S");
} else {
$profile->assign("VAL_COUNTY_SEL_STYLE", "style='display:none;'");
$profile->assign("VAL_COUNTY_TXT_STYLE", "style='display:block;'");
$profile->assign("VAL_COUNTY_WHICH_FIELD", "T");
}
$profile->assign("JS_COUNTY_OPTIONS", "");
for($i=0; $iccUserData['county'])) {
$profile->assign("COUNTY_SELECTED","selected='selected'");
} else {
$profile->assign("COUNTY_SELECTED","");
}
$profile->assign("VAL_DEL_COUNTY_ID",$counties[$i]['name']);
$countyName = $counties[$i]['name'];
if (strlen($countyName)>20) {
$countyName = substr($countyName,0,20)."…";
}
$profile->assign("VAL_DEL_COUNTY_NAME",$countyName);
$profile->parse("profile.session_true.county_opts");
}
// end: Flexible Taxes
$cache = new cache('glob.countries');
$countries = $cache->readCache();
if (!$cache->cacheStatus) {
$countries = $db->select("SELECT id, printable_name FROM ".$glob['dbprefix']."CubeCart_iso_countries ORDER BY printable_name");
$cache->writeCache($countries);
}
for ($i=0; $iccUserData['country']) {
$profile->assign("COUNTRY_SELECTED","selected='selected'");
} else {
$profile->assign("COUNTRY_SELECTED","");
}
$profile->assign("VAL_COUNTRY_ID",$countries[$i]['id']);
$countryName = "";
$countryName = $countries[$i]['printable_name'];
if (strlen($countryName)>20) {
$countryName = substr($countryName,0,20)."…";
}
$profile->assign("VAL_COUNTRY_NAME",$countryName);
$profile->parse("profile.session_true.country_opts");
}
$profile->assign("VAL_COUNTRY",$cc_session->ccUserData['country']);
$profile->assign("TXT_PHONE",$lang['profile']['phone']);
$profile->assign("VAL_PHONE",$cc_session->ccUserData['phone']);
$profile->assign("TXT_MOBILE",$lang['profile']['mobile']);
$profile->assign("VAL_MOBILE",$cc_session->ccUserData['mobile']);
$profile->assign("TXT_SUBMIT",$lang['profile']['update_account']);
$profile->parse("profile.session_true");
} else {
$profile->assign("LANG_LOGIN_REQUIRED",$lang['profile']['login_required']);
$profile->parse("profile.session_false");
}
$profile->parse("profile");
$page_content = $profile->text("profile");
?>