|
Server : Apache/2.4.62 System : FreeBSD fbsdweb2.web.rcn.net 14.1-RELEASE FreeBSD 14.1-RELEASE releng/14.1-n267679-10e31f0946d8 GENERIC amd64 User : www ( 80) PHP Version : 8.3.8 Disable Function : NONE Directory : /domains/abtechsci/mmc15/Membership/extensions/ |
Upload File : |
<?php
/************* Membership V2.0 *******************/
/*
Released by AwesomePHP.com, under the GPL License, a
copy of it should be attached to the zip file, or
you can view it on http://AwesomePHP.com/gpl.txt
*/
/************* Membership V2.0 *******************/
//Call Database & Connect
require_once('headers/database.php');
connect();
//Call functions
require_once('headers/functions.php');
//Login Check Page
require_once('headers/logincheck.php');
//Get Admin Values
$get_cd = mysql_query("SELECT * FROM `memb_config`");
while($each = mysql_fetch_assoc($get_cd)){$$each['config_name'] = $each['config_value'];}
if($is_logged == false){
//Disconnect Database
disconnect_data();
header('Location: '.$CF_URLINC.'login.php?m=1');
exit();
}
//Get custom fields
$get_fields = mysql_query("SELECT * FROM `memb_customfds`");
while($each = mysql_fetch_assoc($get_fields)){
$array_custom[$each['field_id']] = array($each['field_name'],$each['is_required']);
}
//If changing email
if($_GET['vernew'] != NULL){
$code = encode_decode(hex2bin($_GET['vernew']),$CF_ENCDEC);
list($user_id,$user_email,$new_email) = explode('++_++',$code);
$check = mysql_fetch_assoc(mysql_query("SELECT `user_id`,`user_password` FROM `memb_userlist`
WHERE `user_id`='$user_id' AND `user_email`='$user_email'"));
if($check['user_id'] == $user_id){
$random_string = generate_session(50);
if($CF_E_VER == 2){
$_POST['user_status'] = '1';
}else{
$_POST['user_status'] = $random_string;
$ad_text = $LANGUAGE['CONFIRMATION_NEEDED'];
}
$update = mysql_query("UPDATE `memb_userlist`
SET `user_status`='$_POST[user_status]',`user_email`='$new_email'
WHERE `user_id`='$user_info[user_id]' LIMIT 1");
if($update){
$_POST['user_password'] = $check['user_password'];
$_POST['user_email'] = $new_email;
$sent = welcome_user($_POST,$random_string,$CF_SITENAME,$CF_SITEEMAIL);
if($send){
$message = $LANGUAGE['EMAIL_UPDATED'].$ad_text;
} else {
$message = $LANGUAGE['NO_EMAIL_SENT'];
}
}
} else {
$message = $LANGUAGE['MALFORM_REQUEST'];
}
}
//If profile update
if($_POST['S_ID'] == 3){
//Check General Fields
if($_POST['user_password'] != $user_info['user_password']){$message = $LANGUAGE['ENTER_CURRENT_PASS'];}
if($message == NULL && validate_username($_POST['user_name']) == false){$message = $LANGUAGE['ENTER_VALID_USERNAME'];}
if($message == NULL && is_valid_email($_POST['user_email']) == false){$message = $LANGUAGE['INVALID_EMAIL'];}
//Check for new email
if($message == NULL && $_POST['user_email'] != $user_info['user_email']){
$get_email = mysql_fetch_row(mysql_query("SELECT COUNT(*) FROM `memb_userlist`
WHERE `user_email`='$_POST[user_email]'"));
if($get_email[0] > 0){
$message_e1 = $LANGUAGE['EMAIL_IN_USE'];
} else {
$link_info = bin2hex(encode_decode("$user_info[user_id]++_++$user_info[user_email]++_++$_POST[user_email]",$CF_ENCDEC));
$is_mail = send_change($user_info['user_name'],$user_info['user_email'],$_POST['user_email'],$link_info,
$CF_SITENAME,$CF_SITEEMAIL,$CF_CHANGEEMAIL_S,$CF_CHANGEEMAIL_B);
if($is_mail){
$message_e1 = $LANGUAGE['CONFIRM_EMAIL'];
}else{
$message_e1 = $LANGUAGE['UNABLE_2_SENDMAIL'];
}
}
}
//If delete account
if($message == NULL AND $_POST['deleteaccount'] == 'yes' AND $CF_E_DEL == 1 AND $user_info['allow_delete'] == 1){
$remove = mysql_query("DELETE FROM `memb_userlist` WHERE `user_id`='$user_info[user_id]' LIMIT 1");
if($remove){ include('logout.php');}else{$message = $LANGUAGE['UNABLE_2_DELETE'];}
}
//If updating passwords
if($message == NULL && $_POST['new_password'] != NULL){
$_POST['new_password'] = mysql_escape_string($_POST['new_password']);
$update = mysql_query("UPDATE `memb_userlist` SET `user_password`='$_POST[new_password]'
WHERE `user_id`='$user_info[user_id]' LIMIT 1");
if($update){
editfule($CF_FDACCESS,'Edit',$_POST['user_name'],$_POST['new_password'],$_POST['user_name']);
$message_e2 = $LANGUAGE['PASS_UPDATED'];}else{$message_e2 = $LANGUAGE['UNLABLE_2_UPDATEPASS'];}
}
// Check for new username
if($message == NULL && $_POST['user_name'] != $user_info['user_name']){
$_POST['user_name'] = mysql_escape_string($_POST['user_name']);
$get_name = mysql_fetch_row(mysql_query("SELECT COUNT(*) FROM `memb_userlist`
WHERE `user_name`='$_POST[user_name]'"));
if($get_name[0] > 0){
$message_e3 = $LANGUAGE['USERNAME_IN_USE'];
} else {
$update = mysql_query("UPDATE `memb_userlist` SET `user_name`='$_POST[user_name]'
WHERE `user_id`='$user_info[user_id] LIMIT 1");
if($update){
editfule($CF_FDACCESS,'Edit',$_POST['user_name'],$_POST['user_password'],$user_info['old_name']);
$message_e3 = $LANGUAGE['USERNAME_UPDATED'];
} else {
$message_e3 = $LANGUAGE['UNABLE_2_UPDATE_USERNAME'];
}
}
}
//If updating fields
if($message == NULL){
$remove_array = array('new_password','Submit','deleteaccount','user_password','user_email','S_ID');
$array_updates = array();
//Loop through variables and create query
foreach($_POST as $is => $what){
$is = mysql_escape_string($is);
$what = mysql_escape_string($what);
if(eregi('cusfield_',$is)){
$is = trim($is);
if($is){
$field_id = str_replace('cusfield_','',$is);
if($array_custom[$field_id][1] == 1 && $what == NULL){
$message = "<br/>Field ".$array_custom[$field_id][0]." is required";
break;
} else {
$_POST['custom_fields'] .= "[$field_id]{+|%|+}[$what]\n";
}
}
} else {
if(!in_array($is,$remove_array)){
array_push($array_updates,"`$is`='$what'");
}
}
}
array_push($array_updates,"`custom_fields`='$_POST[custom_fields]'");
if($message == NULL){
//Edit user
$update = mysql_query("UPDATE `memb_userlist` SET ".implode(',',$array_updates)."
WHERE `user_id`='$user_info[user_id]' LIMIT 1");
if($update){$message = $LANGUAGE['PROFILE_UPDATED'];}else{$message = $LANGUAGE['UNABLE_2_UPDATE_PROFILE'];}
}
$message = $message_e1.$message_e2.$message_e3.$message;
}
}
//Get User info
$_POST = mysql_fetch_assoc(mysql_query("SELECT * FROM `memb_userlist` WHERE `user_id`='$user_info[user_id]'"));
// get custom fields
$get_fields = mysql_query("SELECT * FROM `memb_customfds`");
$recrod_nums = mysql_num_rows($get_fields);
while($each = mysql_fetch_assoc($get_fields)){
$arrayFields[] = $each;
}
// Get membership type
$get_membership = mysql_fetch_assoc(mysql_query("SELECT `membership_free`,`membership_title`
FROM `memb_memberships` WHERE `membership_id`='$_POST[membership_id]'"));
$get_payment = mysql_fetch_assoc(mysql_query("SELECT * FROM `memb_payments` WHERE `user_id` = '$user_info[user_id]'
ORDER BY `payment_date` DESC"));
$get_rate = mysql_fetch_assoc(mysql_query("SELECT * FROM `memb_memberships_rates` WHERE `rate_id`='$get_payment[rate_id]'"));
// Get days left
$getDifference = getDifference(date("Y-m-d G:i:s"),$get_payment['payment_date'],3);
$paidForDays = getDays($get_rate['rate_term'],$get_rate['rate_term_c']);
$daysDiffer = $paidForDays - $getDifference;
//Disconnect Database
disconnect_data();
if($_GET['m'] == 1){ $message = $LANGUAGE['PAYMENT_MADE'];}
?>