##// END OF EJS Templates
modificaciones del componente areas
modificaciones del componente areas

File last commit:

r0:1
r3:4
Show More
UsersModel.php
296 lines | 11.8 KiB | text/x-php | PhpLexer
arturo
creando directorios base para el desarrollo
r0 <?php
class UsersModel extends ModelBase{
public $tableName = 'sis_user';
public $id = array('key'=>'iduser','value'=>'');
public function addItem($datos){
$this->setFieldArray($datos);
list($resultado,$id,$mensaje) = $this->insert();
return array ($resultado,$id,$mensaje);
}
public function DeleteItem(){
list($resultado,$mensaje) = $this->delete();
return array ($resultado,$mensaje);
}
public function UpdateItem($datos){
$this->setFieldArray($datos);
list($resultado,$mensaje) = $this->update();
return array ($resultado,$mensaje);
}
public function dolist($datos = array("inicio" => 0, "tamanio" => 5)){
$query = "SELECT * FROM sis_user WHERE usertype = 1";
$consulta = $this->db->prepare($query);
$consulta->execute();
$num_filas = $consulta->rowCount();
//getPager($datos = array("total" => 0, "inicio" => 0, "pagina" => 5)//uso de la variable arreglo.
$parametros = array("total" => $num_filas, "inicio" => $datos['inicio'], "pagina" => $datos['tamanio']);
list($paginas,$navegador) = $this->getPager($parametros);
//realizamos una consulta paginada
$consulta = $this->db->prepare($query.' LIMIT '.$datos['inicio'].' , '.$datos['tamanio'].' ');
$consulta->execute();
return array($consulta,$paginas,$navegador);
}
public function validarUsuario($username,$password){
$str_query = ' SELECT sis_user.* FROM sis_user WHERE username = "'.$username.'"'
.' AND password = "'.md5($password).'" AND (state = "1" OR state = "4" OR state = "5") AND usertype = 1 ';
$consulta = $this->db->prepare($str_query);
$consulta->execute();
return $consulta;
}
public function validarAdmin($username,$password){
$str_query = 'SELECT * FROM sis_user WHERE username = "'.$username
.'" AND password = "'.md5($password).'" AND state = "1" AND usertype = 2 ';
$consulta = $this->db->prepare($str_query);
$consulta->execute();
return $consulta;
}
public function validateUsers($username,$password){
$str_query = 'SELECT * FROM '.$this->tableName.' WHERE username = "'.$username
.'" AND password = "'.md5($password).'" AND usertype >= 1 ';
$consulta = $this->db->prepare($str_query);
$consulta->execute();
return $consulta;
}
public function obtenerUsuarioxId($id){
//realizamos la consulta de usuario por id
$consulta = $this->db->prepare('SELECT sis_user.* FROM sis_user WHERE iduser = "'.$id.'" ');
$consulta->execute();
//devolvemos la coleccion para que la vista la presente.
return $consulta;
}
public function obtenerUsuarioxUsername($username){
$str_query = 'SELECT * FROM '.$this->tableName.' WHERE username = "'.$username.'" ';
$consulta = $this->db->prepare($str_query);
$consulta->execute();
return $consulta;
}
public function obtenerUsuarioxUsernameMD5($username){
//realizamos la consulta de usuario por id
$consulta = $this->db->prepare('SELECT sis_user.* FROM sis_user WHERE MD5(sis_user.username) = "'.$username.'" ');
$consulta->execute();
//devolvemos la coleccion para que la vista la presente.
return $consulta;
}
public function bloquearUsuario($iduser){
//realizamos la consulta de usuario por id
$consulta = $this->db->prepare('UPDATE sis_user SET state = "2" WHERE iduser = '.$iduser.' ');
$consulta->execute();
//devolvemos la coleccion para que la vista la presente.
return $consulta;
}
public function setUserSession($datos){
//realizamos la consulta de usuario por id
$consulta = $this->db->prepare(' INSERT INTO sis_session ( idsession , iduser , client_ip , date_session, date_last_activity, state ) VALUES ( "" , "'.$datos['iduser'].'", "'.$datos['client_ip'].'", "'.$datos['date_session'].'" , "'.$datos['date_last_activity'].'" , "'.$datos['state'].'" ) ');
$consulta->execute();
//devolvemos la coleccion para que la vista la presente.
return $consulta;
}
public function obtenerEstadoUsuario($username){
$str_query = 'SELECT * FROM '.$this->tableName.' WHERE username = "'.$username.'"';
$consulta = $this->db->prepare($str_query);
$consulta->execute();
$datauser = $consulta->fetch();
$estado = "";
if(isset($datauser['state'])){
switch($datauser['state']){
case 1:
$state = "ACTIVE";
break;
case 2:
$state = "LOCKED";
break;
case 3:
$state = "DELETED";
break;
case 4:
$state = "FLOGIN";
break;
case 5:
$state = "RESET";
break;
}
return $state;
}else{
return '';
}
}
public function registrarLogIngreso($id_usu){
$consulta = $this->db->prepare(' INSERT INTO log_login ( id_log , id_usu , fec_log ) VALUES ( "" , "'.$id_usu.'", "'.date("Ymd H:i:s", time()).'") ');
$consulta->execute();
//devolvemos ....
return $consulta;
}
public function obtenerListaUsuariosIngresos($where=""){
//realizamos la consulta de todos los items
$consulta = $this->db->prepare('SELECT tb_usuarios.* , tb_roles.des_rol AS "rol", count(log_login.id_usu) as "ingresos",
max(log_login.fec_log) as "ultimo_ingreso" FROM tb_usuarios LEFT JOIN tb_roles ON tb_usuarios.id_rol = tb_roles.id_rol LEFT JOIN log_login ON tb_usuarios.id_usu = log_login.id_usu '.$where.' GROUP BY tb_usuarios.id_usu');
$consulta->execute();
//devolvemos la coleccion para que la vista la presente.
return $consulta;
}
public function setNewPassword($iduser,$password){
//realizamos la consulta de usuario por id
$consulta = $this->db->prepare('UPDATE sis_user SET password = "'.md5($password).'" WHERE iduser = '.$iduser.' ');
$consulta->execute();
//devolvemos la coleccion para que la vista la presente.
return $consulta;
}
public function setInactive($iduser){
//realizamos la consulta de usuario por id
$consulta = $this->db->prepare('UPDATE sis_user SET state = "2" WHERE iduser = '.$iduser.' ');
$consulta->execute();
//devolvemos la coleccion para que la vista la presente.
return $consulta;
}
public function setActive($iduser){
//realizamos la consulta de usuario por id
$consulta = $this->db->prepare('UPDATE sis_user SET state = "1" WHERE iduser = '.$iduser.' ');
$consulta->execute();
//devolvemos la coleccion para que la vista la presente.
return $consulta;
}
public function getStringUsers(){
//realizamos la consulta de todos los items
$query = $this->db->prepare('SELECT u.* FROM sis_user AS u ');
$query->execute();
//Se recibe el arreglo completo de usuarios.
$arregloUsuarios = $query->fetchAll();
$j = count($arregloUsuarios);
$cadena = '';
for($i=0; $j>$i;$i++){
$arregloUsuario = $arregloUsuarios[$i];
if(($j-1) == $i){
$cadena .= $arregloUsuario['firstname'].' '.$arregloUsuario['lastname'].' [ '.$arregloUsuario['username'].' ]';
}else{
$cadena .= $arregloUsuario['firstname'].' '.$arregloUsuario['lastname'].' [ '.$arregloUsuario['username'].' ] , ';
}
}
return $cadena;
}
public function getStringUser($iduser){
//realizamos la consulta de todos los items
$query = $this->db->prepare('SELECT u.* FROM sis_user AS u WHERE u.iduser = "'.$iduser.'" ');
$query->execute();
//Se recibe el arreglo completo de usuarios.
$datosUsuarios = $query->fetch();
$cadena = '';
$cadena .= $datosUsuarios['firstname'].' '.$datosUsuarios['lastname'].' [ '.$datosUsuarios['username'].' ]';
return $cadena;
}
public function obtenerListaRoles(){
//realizamos la consulta de todos los items
$consulta = $this->db->prepare('SELECT tb_roles.* FROM tb_roles ');
$consulta->execute();
//devolvemos la coleccion para que la vista la presente.
return $consulta;
}
public function getUsers($datos = array("inicio" => 0, "tamanio" => 5)){
//realizamos la consulta de todos los items
$query = "SELECT * FROM sis_user WHERE usertype = 1";
$consulta = $this->db->prepare($query);
$consulta->execute();
$num_filas = $consulta->rowCount();
//getPager($datos = array("total" => 0, "inicio" => 0, "pagina" => 5)//uso de la variable arreglo.
$parametros = array("total" => $num_filas, "inicio" => $datos['inicio'], "pagina" => $datos['tamanio']);
list($paginas,$navegador) = $this->getPager($parametros);
//realizamos una consulta paginada
$consulta = $this->db->prepare($query.' LIMIT '.$datos['inicio'].' , '.$datos['tamanio'].' ');
$consulta->execute();
//devolvemos la coleccion para que la vista la presente.
return array($consulta,$paginas,$navegador);
}
function addUser($username, $password, $data_user){
$query = "INSERT INTO sis_user( username, password, date_create, firstname, lastname, email,"
." photo, usertype, state ) VALUES ( '$username' , md5('$password'), '".date("Y-m-d H:i:s")."',"
." '".$data_user['firstname']."', '".$data_user['lastname']."', '".$data_user['email']."',"
." '".$data_user['urlphoto']."', 1, 4)";
$result = $this->db->prepare($query);
$result->execute();
return $result;
}
function editUser($user){
$query = "SELECT * FROM sis_user WHERE iduser = '$user'";
$result = $this->db->prepare($query);
$result->execute();
return $result;
}
function updateUser($user, $firstname, $lastname, $state){
$query = "UPDATE sis_user SET firstname = '$firstname', lastname = '$lastname'"
.", state = $state WHERE iduser = $user";
$result = $this->db->prepare($query);
$result->execute();
return $result;
}
function delUser($user){
$query = "UPDATE sis_user SET state = 3 WHERE iduser = $user";
$result = $this->db->prepare($query);
$result->execute();
return $result;
}
function searchUserbyUName($username){
$query = "SELECT * FROM sis_user WHERE username = '$username'";
$result = $this->db->prepare($query);
$result->execute();
return $result;
}
public function getPasswd($iduser){
$query = "SELECT password FROM sis_user WHERE iduser = $iduser";
$result = $this->db->prepare($query);
$result->execute();
return $result;
}
public function getAllUsers(){
$query = "SELECT username FROM sis_user WHERE usertype = 1";
$result = $this->db->prepare($query);
$result->execute();
return $result;
}
}
?>