Файл: adultscript-2.0.3-pro/files/admin/modules/user/models/user.php
Строк: 59
<?php
class VModel_Admin_user extends VModel
{
public function __construct()
{
parent::__construct();
}
public function add($user)
{
$group_id = (isset($user['group_id'])) ? $user['group_id'] : 5;
$status = (VCfg::get('user.user_approve')) ? 2 : 1;
$status = (isset($user['status'])) ? $user['status'] : $status;
$verified = (VCfg::get('user.user_confirm')) ? 0 : 1;
$verified = (isset($user['verified'])) ? $user['verified'] : $verified;
$date = date('Y-m-d H:i:s');
$country = (isset($user['country'])) ? $user['country'] : '';
$city = (isset($user['city'])) ? $user['city'] : '';
$zip = (isset($user['zip'])) ? $user['zip'] : '';
$this->db->query("
INSERT INTO #__user
SET group_id = ".$group_id.",
username = '".$this->db->escape($user['username'])."',
email = '".$this->db->escape($user['email'])."',
password = '".$this->db->escape(VHash::encrypt($user['password']))."',
name = '".$this->db->escape($user['name'])."',
gender = '".$this->db->escape($user['gender'])."',
birth_date = '".$this->db->escape($user['birth_date'])."',
country = '".$this->db->escape($country)."',
city = '".$this->db->escape($city)."',
zip = '".$this->db->escape($zip)."',
login_date = '".$date."',
join_date = '".$date."',
join_ip = ".VServer::ip(true).",
verified = '".$verified."',
status = '".$status."'
");
if ($this->db->affected_rows()) {
$user_id = $this->db->get_last_insert_id('#__user');
$this->db->query("INSERT INTO #__user_activity SET user_id = ".$user_id);
$this->db->query("INSERT INTO #__user_notifications SET user_id = ".$user_id);
$this->db->query("INSERT INTO #__user_preferences SET user_id = ".$user_id);
$this->db->query("INSERT INTO #__user_profile SET user_id = ".$user_id);
$mail = VF::factory('email');
$search = array('[#SITE_NAME#]', '[#BASE_URL#]', '[#USERNAME#]', '[#PASSWORD#]', '[#AVATAR_URL#]', '[#NOTIFS_URL#]');
$replace = array(VCfg::get('site_name'), BASE_URL, $user['username'], $user['password'], BASE_URL.'/user/avatar/', BASE_URL.'/user/notifications/');
$mail->predefined('user-welcome', $user['email'], $search, $replace, 'noreply');
if (!$verified) {
$code = VText::random('alnum', 32);
$this->db->query("
INSERT INTO #__user_verification
SET user_id = ".$user_id.",
code = '".$code."',
expire = '".$date."'
");
$link = BASE_URL.'/user/confirm/?id='.$user_id.'&code='.$code;
$search = array('[#SITE_NAME#]', '[#BASE_URL#]', '[#USERNAME#]', '[#CONFIRM_URL#]', '[#NOTIFS_URL#]');
$replace = array(VCfg::get('site_name'), BASE_URL, $user['username'], $link, BASE_URL.'/user/notifications/');
$mail->predefined('user-verify', $user['email'], $search, $replace, 'noreply');
}
return $user_id;
}
return false;
}
public function exists($column, $value, $user_id = 0)
{
$this->db->query("
SELECT user_id
FROM #__user
WHERE ".$column." = '".$this->db->escape($value)."'
AND user_id != ".(int) $user_id."
LIMIT 1"
);
if ($this->db->affected_rows()) {
return $this->db->fetch_field('user_id');
}
return false;
}
public function update($user_id, $user)
{
}
}