<?php

class User_Model extends CI_Model
{
    public $tbl_user;

    public function __construct()
    {
        parent::__construct();
        $this->tbl_user = "user";
    }

    public function Set_UserLogout($Id, $DateTime)
    {
        $this->db->where('user_Id', $Id);
        return $this->db->update($this->tbl_user, array('user_lastLogin' => $DateTime));
    }

    // ویرایش تصویر پروفایل کاربر
    public function Edit_UserImg($Id, $Fields)
    {
        $this->db->where('user_Id', $Id);
        $retrieve = $this->db->update($this->tbl_user, $Fields);
        return $retrieve;
    }

    // ویرایش گذرواژه کاربر
    public function Edit_UserPass($Id, $newPass)
    {
        $this->db->where('user_Id', $Id);
        $retrieve = $this->db->update($this->tbl_user, array('user_Password' => md5($newPass)));
        return $retrieve;
    }

    // ویرایش گذرواژه کاربر
    public function Edit_UserInfo($Id, $Fields)
    {
        $this->db->where('user_Id', $Id);
        $retrieve = $this->db->update($this->tbl_user, $Fields);
        return $retrieve;
    }

    // ویرایش اطلاعات کاربر
    public function Edit_User($Id, $Fields)
    {
        $this->db->where('user_Id', $Id);
        $retrieve = $this->db->update($this->tbl_user, $Fields);
        return $retrieve;
    }

// واکشی جدول کاربر بدون شرط
    public function Get_AllUser()
    {
        $this->db->order_by('user_Id', 'DESC');
        $retrieve = $this->db->get($this->tbl_user);
        return $retrieve;
    }

    public function Create_User($Fields)
    {
        $retrieve = $this->db->insert($this->tbl_user, $Fields);
        return $retrieve;

    }

// واکشی ردیفی از جدول کاربر با شرط برابر بودن user_userName
    public function Check_ExistUser_userName($userName)
    {
        $this->db->where(array('user_userName' => $userName));
        return $this->db->get($this->tbl_user)->row();
    }

// واکشی ردیفی از جدول کاربر با شرط برابر بودن user_userName
    public function Get_User_ByID($userId)
    {
        $this->db->where(array('user_Id' => $userId));
        return $this->db->get($this->tbl_user)->row();
    }
    // حذف کاربر
    public function Delete_User($userId)
    {
        $this->db->where('user_Id', $userId);
        $retrieve = $this->db->delete($this->tbl_user);
        return $retrieve;
    }

    // تغییر وضعیت مسدود بودن یا نبودن کاربر
    public function Ban_User($userId,$Ban)
    {
        $this->db->where('user_Id', $userId);
        $retrieve = $this->db->update($this->tbl_user,array('user_Ban'=>$Ban));
        return $retrieve;
    }

}
