<?php
defined('BASEPATH') OR exit('No direct script access allowed');

class Funciones{
    public function __construct(){
        $ci =& get_instance();
        if($ci->session->userdata("login")==false){
            redirect(site_url());
        }
    }
    public function crearInterface($vistas,$datas){
        $ci =& get_instance();
        $funcion=$ci->uri->segment(1)."/".$ci->uri->segment(2);
        if($this->corresponde($funcion)==0){
            $ci->load->view('modulo/verror');
            return;
        }
        $ugel=$ci->mgeneral->get_data("*","ugel",array("ugel_ide = ".$ci->session->userdata("ugel_ide")));
        $data_header=array(
            "titulo"=>"E-BOLETA",
            "descripcion_titulo"=>"Mi Boleta de Pago Electrónica",
        );
        $data_menu=array(
            "institucion"=>$ugel[0]->ugel_nombre,
            "pagina_web"=>$ugel[0]->ugel_web,
            "menu"=>$ci->mgeneral->get_data(
                "*",
                "roles",
                array(
                    "role_tipo_nombre = '".$ci->session->userdata("usua_tipo")."'",
                    "role_esta_ide = 1"
                ),
                "role_modulo asc,role_orden asc"
            )
        );
        $ci->load->view('modulo/vheader',$data_header);
        $ci->load->view('modulo/vmenu',$data_menu);
        for($i=0;$i<count($vistas);$i++){
            $ci->load->view($vistas[$i],$datas[$i]);
        }
        $ci->load->view('modulo/vfooter');
    }
    public function corresponde($funcion){
        if($funcion=="sistema/")
            return 1;
        $ci =& get_instance();
        $ci->load->model("mgeneral");
        $tipo=$ci->session->userdata("usua_tipo");
        $where=array(
            "role_url = '$funcion'",
            "role_tipo_nombre = '$tipo'"
        );
        $result=$ci->mgeneral->get_data("*","roles",$where);
        return count($result);
    }
    public function get_mes($mes){
        $meces=array(
            1=>"ENERO",
            2=>"FEBRERO",
            3=>"MARZO",
            4=>"ABRIL",
            5=>"MAYO",
            6=>"JUNIO",
            7=>"JULIO",
            8=>"AGOSTO",
            9=>"SETIEMBRE",
            10=>"OCTUBRE",
            11=>"NOVIEMBRE",
            12=>"DICIEMBRE",
            13=>"ERROR"
        );
        if($mes<=0 or $mes>=13)
            $mes=13;
        return $meces[$mes];
    }
    public function ordenar($clave,$orden=null) {
        return function ($a, $b) use ($clave,$orden) {
              $result=  ($orden=="DESC") ? strnatcmp($b->$clave, $a->$clave) :  strnatcmp($a->$clave, $b->$clave);
              return $result;
        };
    }
}