<?php

namespace App\Models;

class User extends Abs
{

	/**
	* @return retorna todos os usuários
	*/
	public function getAllUsers()
	{
		return $this->executaSelect("user","*","","","");
	}
	
	public function getUser($cod)
	{
		$condicao = array(
				array("id", $cod),
			);
		return $this->executaSelect("user","*",$condicao,"","");
	}
	/**
	* @return todos os tipso de usuários
	*/
	public function getAllTipes()
	{
		return $this->executaSelect("user_type","*","","","");
	}

	public function getAllLojas()
	{
		return $this->executaSelect("uni_lojas","*","","","");
	}

	/**
	* Criar Novo Usuário
	* @return true or false
	*/
	public function setUser($array,$ext)
	{
			$campo_valor = array(
				array("user_email", $array['user_email']),
				array("user_name", $array['user_nome']),
				array("user_password", md5($array['user_senha'])),
				array("id_user_type", $array['user_type']),
				array("id_loja", $array['user_loja']),
				//array("id_user_type", 1),
				array("id_user", $_SESSION['id_user']),
				array("data_att	", date("Y-m-d H:i:s")),
				array("ext", $ext),
			);
			
		return $this->executaInsert("user",$campo_valor);
	}

	/**
	* Editar informações do Usuário
	* @return true or false
	*/
	public function editarUser($array,$ext)
	{
		$condicao = array(
			array("id", $array['id_esc']),
		);
		if(empty($array['user_senha_edt'])) {
			
					if(!empty($ext)){
						$campo_valor = array(
							array("user_email", $array['user_email_edt']),
							array("user_name", $array['user_nome_edt']),
							array("ext", $ext),
							array("id_user_type", $array['user_type_edt']),
							array("id_loja", $array['user_loja_edt']),
							array("id_user_att", $_SESSION['id_user']),
							array("data_att", date("Y-m-d H:i:s")),
						);	
					}else{
						$campo_valor = array(
							array("user_email", $array['user_email_edt']),
							array("user_name", $array['user_nome_edt']),
							array("id_user_type", $array['user_type_edt']),
							array("id_loja", $array['user_loja_edt']),
							array("id_user_att", $_SESSION['id_user']),
							array("data_att", date("Y-m-d H:i:s")),
						);							
					}					
					
		} else {
					if(!empty($ext)){
						$campo_valor = array(
							array("user_email", $array['user_email_edt']),
							array("user_name", $array['user_nome_edt']),
							array("user_password", md5($array['user_senha_edt'])),
							array("ext", $ext),
							array("id_user_type", $array['user_type_edt']),
							array("id_loja", $array['user_loja_edt']),
							array("id_user_att", $_SESSION['id_user']),
							array("data_att", date("Y-m-d H:i:s")),
						);		
					}else{
						$campo_valor = array(
							array("user_email", $array['user_email_edt']),
							array("user_name", $array['user_nome_edt']),
							array("user_password", md5($array['user_senha_edt'])),
							array("id_user_type", $array['user_type_edt']),
							array("id_loja", $array['user_loja_edt']),
							array("id_user_att", $_SESSION['id_user']),
							array("data_att", date("Y-m-d H:i:s")),
						);							
					}
		}
		return $this->executaUpdate("user",$campo_valor,$condicao);
	}

	/**
	* Altera o status de um usuário
	*/
	public function alterStatus($id,$status)
	{
		$condicao = array(
			array("id", $id),
		);
		$campo_valor = array(
			array("status", abs(--$status)),
			array("id_user_att", $_SESSION['id_user']),
			array("data_att", date("Y-m-d H:i:s")),
		);
		return $this->executaUpdate("user",$campo_valor,$condicao);
	}

	/**
	* Regatar número total de usuários
	* @return um valor numérico
	*/
	public function getTotUser()
	{
		return $this->executaSelect("user","COUNT(*) as cont","","","");
	}
	
		
	public function getAllLoja($cod)
	{
		$condicao = array(
			array("codigo_loja", $cod),
		);
		$response = $this->executaSelect("uni_lojas","nome",$condicao,"","");

		if($response === false){
			$name = "matriz \\ geral";
		} else {
			$name = "<b>".$response[0]["nome"]."</b>";
		}
		
		return "<b>". $name ."</b>";
	}

}