function signup_user($array=NULL,$send_signup_email=true) { global $LANG,$db,$userquery; echo "
";
		 var_dump($array);
		 echo "
"; //die(); if($array==NULL) $array = $_POST; if(is_array($_FILES)) $array = array_merge($array,$_FILES); $this->validate_form_fields($array); //checking terms and policy agreement if($array['agree']!='yes' && !has_access('admin_access',true)) e(lang('usr_ament_err')); // first checking if captha plugin is enabled // do not depend on the form cb_captcha_enabled value if(get_captcha() && !$userquery->admin_login_check()){ //var_dump(get_captcha()); //var_dump(!error()); //echo "
";
			//var_dump($array);
			//echo "
"; // now checking if the user posted captha value is not empty and cb_captcha_enabled == yes if(!isset($array['cb_captcha_enabled']) || $array['cb_captcha_enabled'] == 'no'){ e(lang('usr_ccode_err')); //echo "wrong captha input"; } if(!verify_captcha()){ e(lang('usr_ccode_err')); } } if(!error()) { $signup_fields = $this->load_signup_fields($array); //Adding Custom Signup Fields if(count($this->custom_signup_fields)>0) $signup_fields = array_merge($signup_fields,$this->custom_signup_fields); foreach($signup_fields as $field) { $name = formObj::rmBrackets($field['name']); $val = $array[$name]; if($field['use_func_val']) $val = $field['validate_function']($val); if(!empty($field['db_field'])) $query_field[] = $field['db_field']; if(is_array($val)) { $new_val = ''; foreach($val as $v) { $new_val .= "#".$v."# "; } $val = $new_val; } if(!$field['clean_func'] || (!function_exists($field['clean_func']) && !is_array($field['clean_func']))) $val = mysql_clean($val); else $val = apply_func($field['clean_func'],sql_free('|no_mc|'.$val)); if(!empty($field['db_field'])) $query_val[] = $val; } // Setting Verification type if(EMAIL_VERIFICATION == '1'){ $usr_status = 'ToActivate'; $welcome_email = 'no'; }else{ $usr_status = 'Ok'; $welcome_email = 'yes'; } if(has_access('admin_access',true)) { if($array['active']=='Ok') { $usr_status = 'Ok'; $welcome_email = 'yes'; }else{ $usr_status = 'ToActivate'; $welcome_email = 'no'; } $query_field[] = "level"; $query_val[] = $array['level']; } $query_field[] = "usr_status"; $query_val[] = $usr_status; $query_field[] = " welcome_email_sent"; $query_val[] = $welcome_email; //Creating AV Code $avcode = RandomString(10); $query_field[] = "avcode"; $query_val[] = $avcode; //Signup IP $signup_ip = $_SERVER['REMOTE_ADDR']; $query_field[] = "signup_ip"; $query_val[] = $signup_ip; //Date Joined $now = NOW(); $query_field[] = "doj"; $query_val[] = $now; /** * A VERY IMPORTANT PART OF * OUR SIGNUP SYSTEM IS * SESSION KEY AND CODE * WHEN A USER IS LOGGED IN * IT IS ONLY VALIDATED BY * ITS SIGNUP KEY AND CODE * */ $sess_key = $this->create_session_key($_COOKIE['PHPSESSID'],$array['password']); $sess_code = $this->create_session_code(); $query_field[] = "user_session_key"; $query_val[] = $sess_key; $query_field[] = "user_session_code"; $query_val[] = $sess_code; $query = "INSERT INTO ".tbl("users")." ("; $total_fields = count($query_field); //Adding Fields to query $i = 0; foreach($query_field as $qfield) { $i++; $query .= $qfield; if($i<$total_fields) $query .= ','; } $query .= ") VALUES ("; $i = 0; //Adding Fields Values to query foreach($query_val as $qval) { $i++; $query .= "'$qval'"; if($i<$total_fields) $query .= ','; } //Finalzing Query $query .= ")"; $db->Execute($query); $insert_id = $db->insert_id(); $db->insert(tbl($userquery->dbtbl['user_profile']),array("userid"),array($insert_id)); if(!has_access('admin_access',true) && EMAIL_VERIFICATION && $send_signup_email) { global $cbemail; $tpl = $cbemail->get_template('email_verify_template'); $more_var = array ('{username}' => post('username'), '{password}' => post('password'), '{email}' => post('email'), '{avcode}' => $avcode, ); if(!is_array($var)) $var = array(); $var = array_merge($more_var,$var); $subj = $cbemail->replace($tpl['email_template_subject'],$var); $msg = nl2br($cbemail->replace($tpl['email_template'],$var)); //Now Finally Sending Email cbmail(array('to'=>post('email'),'from'=>WEBSITE_EMAIL,'subject'=>$subj,'content'=>$msg)); } elseif(!has_access('admin_access',true) && $send_signup_email) { $this->send_welcome_email($insert_id); } $log_array = array ('username' => $array['username'], 'userid' => $insert_id, 'userlevel'=> $array['level'], 'useremail'=> $array['email'], 'success'=>'yes', 'details'=> sprintf("%s signed up",$array['username'])); //Login Signup insert_log('signup',$log_array); //Adding User has Signup Feed addFeed(array('action' => 'signup','object_id' => $insert_id,'object'=>'signup','uid'=>$insert_id)); return $insert_id; } return false; }