<?php

/**
 * AdminUsuario [MODEL]
 * Classe responsável pelo gerenciamento dos usuarios no sistema.
 * @copyrigth 2017, Welton Thierree TagPage
 */
class AdminUsuario {

    private $UserId;
    private $Data;
    private $Result;
    private $Error;
    
    //Nome da tabela no banco de dados
    const Entidy = 'tp_usuarios';

    public function ExeCreate(array $Data) {
        $this->Data = $Data;
    }

    function getResult() {
        return $this->Result;
    }

    function getError() {
        return $this->Error;
    }

    //PRIVATE
    private function setData() {
        $this->Data = array_map('strip_tags', $this->Data);
        $this->Data = array_map('trim', $this->Data);
        $this->Data['usuario_data'] = date('Y-m-d');
    }

    private function Create() {
        $Create = new Create;
        $Create->ExeCreate(self::Entidy, $this->Data);
        if ($Create->getResult()):
            $this->Result = true;
            $this->Error = ["Sucesso! cadastro de usuario realido com sucesso.", WS_ACCEPT];
        else:
            $this->Result = false;
            $this->Error = ["Erro! cadastro não foi realizado.", WS_ERROR];
        endif;
    }
    
    private function Update() {
        $Update = new Update;
        $Update->ExeUpdate(self::Entidy, $this->Data, "WHERE usuario_id = :userid", "userid={$this->UserId}");
        if ($Update->getResult()):
            $this->Result = true;
            $this->Error = ["<b>Sucesso:</b> O usuário {$this->Data['usuario_nome']} foi atualizado no sistema", WS_ACCEPT];
        endif;
    }

}
