function _process() { global $messageStack, $osC_Database, $osC_Language, $osC_Customer; $data = array(); $j_to_g = array(); if (ACCOUNT_GENDER == '1') { if (isset($_POST['gender']) && ($_POST['gender'] == 'm' || $_POST['gender'] == 'f')) { $data['gender'] = $_POST['gender']; } else { $messageStack->add($this->_module, $osC_Language->get('field_customer_gender_error')); } } else { $data['gender'] = isset($_POST['gender']) ? $_POST['gender'] : ''; } if (isset($_POST['firstname']) && strlen(trim($_POST['firstname'])) >= ACCOUNT_FIRST_NAME) { $data['firstname'] = $_POST['firstname']; } else { $messageStack->add('account_edit', sprintf($osC_Language->get('field_customer_first_name_error'), ACCOUNT_FIRST_NAME)); } if (isset($_POST['lastname']) && strlen(trim($_POST['lastname'])) >= ACCOUNT_LAST_NAME) { $data['lastname'] = $_POST['lastname']; } else { $messageStack->add('account_edit', sprintf($osC_Language->get('field_customer_last_name_error'), ACCOUNT_LAST_NAME)); } if (ACCOUNT_DATE_OF_BIRTH == '1') { if (isset($_POST['dob_days']) && isset($_POST['dob_months']) && isset($_POST['dob_years']) && jcheckdate($_POST['dob_months'], $_POST['dob_days'], $_POST['dob_years'])) { $j_to_g = jalali_to_gregorian($_POST['dob_years'], $_POST['dob_months'], $_POST['dob_days']); // tabdil shamsi be miladi $data['dob'] = mktime(0, 0, 0, $j_to_g['1'], $j_to_g['2'], $j_to_g['0']); } else { $messageStack->add('account_edit', $osC_Language->get('field_customer_date_of_birth_error')); } } if (isset($_POST['email_address']) && strlen(trim($_POST['email_address'])) >= ACCOUNT_EMAIL_ADDRESS) { if (osc_validate_email_address($_POST['email_address'])) { if (osC_Account::checkDuplicateEntry($_POST['email_address']) === false) { $data['email_address'] = $_POST['email_address']; } else { $messageStack->add('account_edit', $osC_Language->get('field_customer_email_address_exists_error')); } } else { $messageStack->add('account_edit', $osC_Language->get('field_customer_email_address_check_error')); } } else { $messageStack->add('account_edit', sprintf($osC_Language->get('field_customer_email_address_error'), ACCOUNT_EMAIL_ADDRESS)); } if ($messageStack->size('account_edit') === 0) { if (osC_Account::saveEntry($data)) { // reset the session variables if (ACCOUNT_GENDER > -1) { $osC_Customer->setGender($data['gender']); } $osC_Customer->setFirstName(trim($data['firstname'])); $osC_Customer->setLastName(trim($data['lastname'])); $osC_Customer->setEmailAddress($data['email_address']); $messageStack->add_session('account', $osC_Language->get('success_account_updated'), 'success'); } osc_redirect(osc_href_link(FILENAME_ACCOUNT, null, 'SSL')); } }