<?php

include('../../path.php');

/*$host_afianzadoras= $_SERVER["HTTP_HOST"];

$url_afianzadoras = $_SERVER["REQUEST_URI"];

$subtree_afianzadoras = substr_count($url_afianzadoras, '/');

$context_afianzadoras='';

for ($i_afianzadoras=2; $i_afianzadoras <$subtree_afianzadoras ; $i_afianzadoras++) { 

        $context_afianzadoras=$context_afianzadoras.'../';

}

require_once($context_afianzadoras.'home/afianzadoras/modelo/afianzadoras.php');*/

require_once(ROOT_CONTROLLER.'afianzadoras.php');

$Obj_afianzadoras = new afianzadoras();

require_once(ROOT_CHARACTER_FIX);

//require_once($context_afianzadoras.'bussines/fix_characters.php');

$Obj_fix_characters = new fix_characters();



$action=!empty($_REQUEST['action'])?$_REQUEST['action']:'';

$_ScrollTo=!empty($_REQUEST['_ScrollTo'])?$_REQUEST['_ScrollTo']:'';

$_Pagina=!empty($_REQUEST['_Pagina'])?$_REQUEST['_Pagina']:'';

// Variables para la relacion con la entidad padre 

$_Clausula_Fk=!empty($_REQUEST['_Clausula_Fk'])?$_REQUEST['_Clausula_Fk']:'';

$_IdFk=!empty($_REQUEST['_IdFk'])?$_REQUEST['_IdFk']:'';

// Variables para la relacion con la entidad abuelo _A

$_A_Clausula_Fk=!empty($_REQUEST['_A_Clausula_Fk'])?$_REQUEST['_A_Clausula_Fk']:'';

$_A_IdFk=!empty($_REQUEST['_A_IdFk'])?$_REQUEST['_A_IdFk']:'';

// Variables para la relacion con la entidad bisabuelo _B 

$_B_Clausula_Fk=!empty($_REQUEST['_B_Clausula_Fk'])?$_REQUEST['_B_Clausula_Fk']:'';

$_B_IdFk=!empty($_REQUEST['_B_IdFk'])?$_REQUEST['_B_IdFk']:'';



if (!empty($_POST))

{

    $Id_Afianzadora=!empty($_REQUEST['Id_Afianzadora'])?$_REQUEST['Id_Afianzadora']:'';
   $Logo_Afianzadora=!empty($_REQUEST['Logo_Afianzadora'])?$_REQUEST['Logo_Afianzadora']:'';
   $Nombre_Afianzadora=!empty($_REQUEST['Nombre_Afianzadora'])?$_REQUEST['Nombre_Afianzadora']:'';
   $Razon_Social=!empty($_REQUEST['Razon_Social'])?$_REQUEST['Razon_Social']:'';
   $RFC=!empty($_REQUEST['RFC'])?$_REQUEST['RFC']:'';
   $Telefono=!empty($_REQUEST['Telefono'])?$_REQUEST['Telefono']:'';
   $Correo=!empty($_REQUEST['Correo'])?$_REQUEST['Correo']:'';
   $Pagina_Web=!empty($_REQUEST['Pagina_Web'])?$_REQUEST['Pagina_Web']:'';
   $Direccion=!empty($_REQUEST['Direccion'])?$_REQUEST['Direccion']:'';
   $Gastos_de_Expedicion=!empty($_REQUEST['Gastos_de_Expedicion'])?$_REQUEST['Gastos_de_Expedicion']:'';
   $Fianzas_Activas=!empty($_REQUEST['Fianzas_Activas'])?$_REQUEST['Fianzas_Activas']:'';
   $Numero_Fianzas_Emitidas=!empty($_REQUEST['Numero_Fianzas_Emitidas'])?$_REQUEST['Numero_Fianzas_Emitidas']:'';
   $Numero_Fianzas_Cobradas=!empty($_REQUEST['Numero_Fianzas_Cobradas'])?$_REQUEST['Numero_Fianzas_Cobradas']:'';
   $Numero_Fianzas_En_Proceso=!empty($_REQUEST['Numero_Fianzas_En_Proceso'])?$_REQUEST['Numero_Fianzas_En_Proceso']:'';
   $Numero_Fianzas_Canceladas=!empty($_REQUEST['Numero_Fianzas_Canceladas'])?$_REQUEST['Numero_Fianzas_Canceladas']:'';
   $Monto_Total_Emitido=!empty($_REQUEST['Monto_Total_Emitido'])?$_REQUEST['Monto_Total_Emitido']:'';
   $Monto_Total_Cobrado=!empty($_REQUEST['Monto_Total_Cobrado'])?$_REQUEST['Monto_Total_Cobrado']:'';
   $Monto_En_Riesgo=!empty($_REQUEST['Monto_En_Riesgo'])?$_REQUEST['Monto_En_Riesgo']:'';
   $Porcentaje_Cobranza=!empty($_REQUEST['Porcentaje_Cobranza'])?$_REQUEST['Porcentaje_Cobranza']:'';
   $Indice_Cumplimiento=!empty($_REQUEST['Indice_Cumplimiento'])?$_REQUEST['Indice_Cumplimiento']:'';
   $Score_Operativo=!empty($_REQUEST['Score_Operativo'])?$_REQUEST['Score_Operativo']:'';
   $Id_Fk_Score=!empty($_REQUEST['Id_Fk_Score'])?$_REQUEST['Id_Fk_Score']:'';
   $Nivel_Score=!empty($_REQUEST['Nivel_Score'])?$_REQUEST['Nivel_Score']:'';
   $Id_Fk_Status_Afianzadora=!empty($_REQUEST['Id_Fk_Status_Afianzadora'])?$_REQUEST['Id_Fk_Status_Afianzadora']:'';
   $Status_Afianzadora=!empty($_REQUEST['Status_Afianzadora'])?$_REQUEST['Status_Afianzadora']:'';
   $Documento_Contrato_PDF=!empty($_REQUEST['Documento_Contrato_PDF'])?$_REQUEST['Documento_Contrato_PDF']:'';
   $Documento_Politicas_PDF=!empty($_REQUEST['Documento_Politicas_PDF'])?$_REQUEST['Documento_Politicas_PDF']:'';
   $Observaciones=!empty($_REQUEST['Observaciones'])?$_REQUEST['Observaciones']:'';
   $Quien_Registro=!empty($_REQUEST['Quien_Registro'])?$_REQUEST['Quien_Registro']:'';
   $Fecha_Registro=!empty($_REQUEST['Fecha_Registro'])?$_REQUEST['Fecha_Registro']:'';
   $Fecha_Modificacion=!empty($_REQUEST['Fecha_Modificacion'])?$_REQUEST['Fecha_Modificacion']:'';
   $Quien_Modifico=!empty($_REQUEST['Quien_Modifico'])?$_REQUEST['Quien_Modifico']:'';
   $GPS=!empty($_REQUEST['GPS'])?$_REQUEST['GPS']:'';
   

    $Field=!empty($_REQUEST['Field'])?$_REQUEST['Field']:''; 

    $Field=$Obj_fix_characters->fix($Field);

    $Value=!empty($_REQUEST['Value'])?$_REQUEST['Value']:''; 

    $Value=$Obj_fix_characters->fix($Value);

    $Value_Hidden=!empty($_REQUEST['Value_Hidden'])?$_REQUEST['Value_Hidden']:''; 

    $Value_Hidden=$Obj_fix_characters->fix($Value_Hidden);

    $Type=!empty($_REQUEST['Type'])?$_REQUEST['Type']:''; 

    $Type=$Obj_fix_characters->fix($Type);



}    



function upVideo($Value_Hidden, $Value, $Field) {

    $directorio = '../../../repositorio/video/afianzadoras/';

    

    // Verifica si el directorio existe, si no, lo crea

    if (!is_dir($directorio)) {

        mkdir($directorio, 0755, true);

    }

    

    // Genera un nombre único para el archivo si $Value_Hidden está vacío

    $str = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz1234567890"; 

    $cad = ""; 

    for($i = 0; $i < 12; $i++) { 

        $cad .= substr($str, rand(0, 62), 1); 

    }

    

    // Si $Value_Hidden no está vacío, usa su valor como nombre del archivo

    if (!empty($Value_Hidden)) {

        $filename = $Value_Hidden;

        $target_file = $filename;

    } else {

        $extension = pathinfo($Value["name"], PATHINFO_EXTENSION);

        // Nombre final del archivo

        $filename = $cad . '.' . $extension;

        $target_file = $directorio . $filename;

    }

    $uploadOk = 1;

    

    // Verifica el tamaño del archivo (50MB máximo)

    if ($Value["size"] > 50000000) { 

        $uploadOk = 0;

    }

    

    $videoFileType = pathinfo($target_file, PATHINFO_EXTENSION);

    $allowed_types = ['mp4', 'avi', 'mov', '3gp', 'mpeg'];

    if (!in_array($videoFileType, $allowed_types)) {

        $uploadOk = 0;

    }

    

    // Si $uploadOk es 1, intenta mover el archivo subido

    if ($uploadOk == 1) {

        if (move_uploaded_file($Value["tmp_name"], $target_file)) {

            return $target_file; 

        } else {

            return ''; 

        }

    } else {

        return ''; 

    }

}



function upImg($Value_Hidden, $Value, $Field) {

    $directorio = '../../../repositorio/afianzadoras_img/';

    

    // Verifica si el directorio existe, si no, lo crea

    if (!is_dir($directorio)) {

        mkdir($directorio, 0755, true);

    }

    

    $str = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz1234567890"; 

    $cad = ""; 

    for($i = 0; $i < 12; $i++) { 

        $cad .= substr($str, rand(0, 62), 1); 

    }

    

    // Si $Value_Hidden no está vacío, usa su valor como nombre del archivo

    if (!empty($Value_Hidden)) {

        $filename = $Value_Hidden;

        $target_file = $filename;

    } else {

        // Obtiene la extensión del archivo subido

        $extension = pathinfo($Value["name"], PATHINFO_EXTENSION);

        // Nombre final del archivo

        $filename = $cad . '.' . $extension;

        $target_file = $directorio . $filename;

    }



    $uploadOk = 1;

    

    // Verifica el tamaño del archivo

    if ($Value["size"] > 5000000) { // 5MB máximo

        $uploadOk = 0;

    }

    

    // Verifica el tipo de archivo

    $imageFileType = pathinfo($target_file, PATHINFO_EXTENSION);

    $allowed_types = ['jpg', 'jpeg', 'png', 'gif'];

    if (!in_array($imageFileType, $allowed_types)) {

        $uploadOk = 0;

    }

    

    // Si $uploadOk es 1, intenta mover el archivo subido

    if ($uploadOk == 1) {

        if (move_uploaded_file($Value["tmp_name"], $target_file)) {

            return $target_file;

        } else {

            return ''; 

        }

    } else {

        return '';

    }

}



function upDocumento($Value_Hidden, $Value, $Field) {

    $directorio = '../../../repositorio/afianzadoras_documento/';

    

    // Verifica si el directorio existe, si no, lo crea

    if (!is_dir($directorio)) {

        mkdir($directorio, 0755, true);

    }

    

    $str = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz1234567890"; 

    $cad = ""; 

    for ($i = 0; $i < 12; $i++) { 

        $cad .= substr($str, rand(0, 62), 1); 

    }

    

    // Si $Value_Hidden no está vacío, usa su valor como nombre del archivo

    if (!empty($Value_Hidden)) {

        $filename = $Value_Hidden;

        $target_file = $filename;

    } else {

        // Obtiene la extensión del archivo subido

        $extension = pathinfo($Value["name"], PATHINFO_EXTENSION);

        // Nombre final del archivo

        $filename = $cad . '.' . $extension;

        $target_file = $directorio . $filename;

    }



    $uploadOk = 1;

    

    // Verifica el tamaño del archivo (10MB máximo)

    if ($Value["size"] > 10000000) { // 10MB máximo

        $uploadOk = 0;

    }

    

    // Verifica el tipo de archivo

    $documentFileType = pathinfo($target_file, PATHINFO_EXTENSION);

    $allowed_types = ['pdf', 'doc', 'docx', 'xls', 'xlsx', 'ppt', 'pptx', 'txt'];

    if (!in_array($documentFileType, $allowed_types)) {

        $uploadOk = 0;

    }

    

    if ($uploadOk == 1) {

        if (move_uploaded_file($Value["tmp_name"], $target_file)) {

            return $target_file; 

        } else {

            return ''; // Retorna cadena vacía si la carga falla

        }

    } else {

        return ''; 

    }

}



switch ($action) {

    case 'campos_front':

        try{

            if($Type=='video'){

                $Value=$_FILES['Value'];

                $Value=upVideo($Value_Hidden,$Value,$Field);

            }else if($Type=='imagen'){

                $Value=$_FILES['Value'];

                $Value=upImg($Value_Hidden,$Value,$Field);

            }else if($Type=='documento'){

                $Value=$_FILES['Value'];

                $Value=upDocumento($Value_Hidden,$Value,$Field);

            }

            $Obj_afianzadoras->update_field_front_afianzadoras($Field,$Value,$Id_Afianzadora);

        }catch (Exception $e) {

            echo 'Excepcion capturada: ',  $e->getMessage(), "\n";

        }

        break;

    case 'campos_front_fk':

        try{

            $Obj_afianzadoras->update_field_afianzadoras($Field,$Value,$Id_Afianzadora);

            if (isset($_POST['elementos_asociados_'.$Field]) && !empty($_POST['elementos_asociados_'.$Field])) {

                // Obtener los valores concatenados

                $elementos_asociados = $_POST['elementos_asociados_'.$Field];



                // Convertir la cadena en un array

                $array_elementos_asociados = explode(',', $elementos_asociados);



                // Recorrer los campos asociados y validar que estén presentes en POST

                foreach ($array_elementos_asociados as $campo) {

                    if (isset($_POST[$campo]) && !empty($_POST[$campo])) {

                        $Value_Campo=!empty($_REQUEST[$campo])?$_REQUEST[$campo]:''; 

                        $Value_Campo=$Obj_fix_characters->fix($Value_Campo);

                        $Field=$campo;

                        $Obj_afianzadoras->update_field_front_afianzadoras($Field,$Value_Campo,$Id_Afianzadora);

                    }

                }

            }

        }catch (Exception $e) {

            echo 'Excepcion capturada: ',  $e->getMessage(), "\n";

        }

        break;



    case 'campos':

        try{

            $Obj_afianzadoras->update_field_front_afianzadoras($Field,$Value,$Id_Afianzadora);

            //$locations="Location: ./#$Id_Afianzadora";

            //header($locations);

            }   

        catch (Exception $e) {

            echo 'Excepcion capturada: ',  $e->getMessage(), "\n";

        }

        break;



    

    case 'editar':



        try{


            $directorio='../../../repositorio/afianzadoras_img/';

            if (!is_dir($directorio)) {

                mkdir($directorio, 0755, true);

            }

            if ($Logo_Afianzadora!='') {

                    $tamano = $_FILES['Logo_Afianzadora_file']['size'];

                    if ($tamano>0) 

                    {

                        if (strpos($_FILES["Logo_Afianzadora_file"]["type"], 'image/') !== false) {

                            $sep=explode('image/',$_FILES["Logo_Afianzadora_file"]["type"]); // Separamos image/ 

                            $Mec_type='img';

                        }                    

                        $tipo=$sep[1]; // Optenemos el tipo de imagen que es

                        if($tipo == "PNG"|| $tipo == "png" || $tipo == "gif" ||$tipo == "GIF" || $tipo == "jpg"||$tipo == "JPG" || $tipo == "jpeg"||$tipo == "JPEG" || $tipo == "bmp"||$tipo == "BMP"||$tipo != "") {

                            move_uploaded_file ($_FILES['Logo_Afianzadora_file']['tmp_name'], $Logo_Afianzadora);

                        }

                    }

                }

                else

                {   

                    $tamano = $_FILES['Logo_Afianzadora_file']['size'];

                    if ($tamano>0) 

                    {

                    // Creamos la cadena aletoria para la imagen.

                    $str = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz1234567890"; 

                    $cad = ""; 

                    for($i=0;$i<12;$i++) { 

                        $cad .= substr($str,rand(0,62),1); 

                    } 

                    // Fin de la creacion de la cadena aletoria 

                    $tamano = $_FILES['Logo_Afianzadora_file']['size']; // Leemos el tamano del fichero 

                    $tamano_max="50000000000"; // tamano maximo permitido 

                    // echo $tamano;

                    if( $tamano < $tamano_max){ // Comprovamos el tamano  

                        $destino = '../../../repositorio/afianzadoras_img/' ; // Carpeta donde se guarda                    

                        $sep="";

                        $Mec_type="";

                        if (strpos($_FILES["Logo_Afianzadora_file"]["type"], 'image/') !== false) {

                            $sep=explode('image/',$_FILES["Logo_Afianzadora_file"]["type"]); // Separamos image/ 

                            $Mec_type='img';

                        }

                        if (strpos($_FILES["Logo_Afianzadora_file"]["type"], 'audio/') !== false) {

                            $sep=explode('audio/',$_FILES["Logo_Afianzadora_file"]["type"]); // Separamos image/ 

                            $Mec_type='aud';

                        }

                        if ($tamano>0) {

                        $tipo=$sep[1]; // Optenemos el tipo de imagen que es    

                        }

                        if($tipo == "PNG"|| $tipo == "png" || $tipo == "gif" ||$tipo == "GIF" || $tipo == "jpg"||$tipo == "JPG" || $tipo == "jpeg"||$tipo == "JPEG" || $tipo == "bmp"||$tipo == "BMP"||$tipo != "") { // Si el tipo de imagen a subir es el mismo de los permitidos, segimos. Puedes agregar mas tipos de imagen

                            try {

                                if ($tamano>0){

                                // se comentaron para que le cambie el nombre a la nueva imagen.

                                    move_uploaded_file ($_FILES['Logo_Afianzadora_file']['tmp_name'], $destino . '/'.$cad.'.'.$tipo);

                                 // Subimos el archivo                          

                                }

                            

                            } catch (Exception $e) {

                            }

                            $Mec_urla=$cad;

                            $Mec_formato='.'.$tipo;

                        } else { 

                             $Logo_Afianzadora_img="";

                        }

                    } else { 

                        $Logo_Afianzadora_img="";

                    }

                    if (strlen($tipo)==0) {

                        $Logo_Afianzadora_img='';       

                    } else {

                        $Logo_Afianzadora_img=$destino.'/'.$cad.'.'.$tipo;      

                    }

                    //termina algoritmo de carga de imagen.

                    $Logo_Afianzadora=$Logo_Afianzadora_img;  

                    }  

                }
 

            if ($Documento_Contrato_PDF!='') {

                    if (!is_dir('../../../repositorio/afianzadoras_documento')) {

                        mkdir('../../../repositorio/afianzadoras_documento' , 0755, true);

                    }

                    $tamano = $_FILES['archivo_Documento_Contrato_PDF']['size'];

                    if ($tamano>0) 

                    {

                        if($_FILES['archivo_Documento_Contrato_PDF']['type']=='application/pdf') { // Si el tipo de imagen a subir es el mismo de los permitidos, segimos. Puedes agregar mas tipos de imagen

                            try {

                                // se comentaron para que le cambie el nombre a la nueva imagen.

                                   if (file_exists($Documento_Contrato_PDF)) {

                                       If (unlink($Documento_Contrato_PDF)) {

                                            move_uploaded_file ($_FILES['archivo_Documento_Contrato_PDF']['tmp_name'], $Documento_Contrato_PDF);

                                        }

                                  }else{

                                    move_uploaded_file ($_FILES['archivo_Documento_Contrato_PDF']['tmp_name'], $Documento_Contrato_PDF);

                                  } // Subimos el archivo 

                            } catch (Exception $e) {

                            }

                        } 

                    }

                }

                else

                {



                if (!is_dir('../../../repositorio/afianzadoras_documento')) {

                    mkdir('../../../repositorio/afianzadoras_documento' , 0755, true);

                }



                $tamano = $_FILES['archivo_Documento_Contrato_PDF']['size']; // Leemos el tamano del fichero 



                    // Creamos la cadena aletoria para la imagen.

                    $str = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz1234567890"; 

                    $cad = ""; 

                    for($i=0;$i<12;$i++) { 

                        $cad .= substr($str,rand(0,62),1); 

                    } 

                    // Fin de la creacion de la cadena aletoria 

                        $destino = '../../../repositorio/afianzadoras_documento' ; // Carpeta donde se guarda

                        if($_FILES['archivo_Documento_Contrato_PDF']['type']=='application/pdf') { // Si el tipo de imagen a subir es el mismo de los permitidos, segimos. Puedes agregar mas tipos de imagen

                            try {

                                if ($tamano > 0){

                                // se comentaron para que le cambie el nombre a la nueva imagen.

                                    move_uploaded_file ($_FILES['archivo_Documento_Contrato_PDF']['tmp_name'], $destino . '/'.$cad.'.pdf');

                                 // Subimos el archivo 



                                $doc_Documento_Contrato_PDF=$destino.'/'.$cad.'.pdf';                         

                                }

                            

                            } catch (Exception $e) {

                            }

                        } else { 

                             $doc_Documento_Contrato_PDF="";

                        }

 

                    $Documento_Contrato_PDF=$doc_Documento_Contrato_PDF;    

                }  
 

            if ($Documento_Politicas_PDF!='') {

                    if (!is_dir('../../../repositorio/afianzadoras_documento')) {

                        mkdir('../../../repositorio/afianzadoras_documento' , 0755, true);

                    }

                    $tamano = $_FILES['archivo_Documento_Politicas_PDF']['size'];

                    if ($tamano>0) 

                    {

                        if($_FILES['archivo_Documento_Politicas_PDF']['type']=='application/pdf') { // Si el tipo de imagen a subir es el mismo de los permitidos, segimos. Puedes agregar mas tipos de imagen

                            try {

                                // se comentaron para que le cambie el nombre a la nueva imagen.

                                   if (file_exists($Documento_Politicas_PDF)) {

                                       If (unlink($Documento_Politicas_PDF)) {

                                            move_uploaded_file ($_FILES['archivo_Documento_Politicas_PDF']['tmp_name'], $Documento_Politicas_PDF);

                                        }

                                  }else{

                                    move_uploaded_file ($_FILES['archivo_Documento_Politicas_PDF']['tmp_name'], $Documento_Politicas_PDF);

                                  } // Subimos el archivo 

                            } catch (Exception $e) {

                            }

                        } 

                    }

                }

                else

                {



                if (!is_dir('../../../repositorio/afianzadoras_documento')) {

                    mkdir('../../../repositorio/afianzadoras_documento' , 0755, true);

                }



                $tamano = $_FILES['archivo_Documento_Politicas_PDF']['size']; // Leemos el tamano del fichero 



                    // Creamos la cadena aletoria para la imagen.

                    $str = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz1234567890"; 

                    $cad = ""; 

                    for($i=0;$i<12;$i++) { 

                        $cad .= substr($str,rand(0,62),1); 

                    } 

                    // Fin de la creacion de la cadena aletoria 

                        $destino = '../../../repositorio/afianzadoras_documento' ; // Carpeta donde se guarda

                        if($_FILES['archivo_Documento_Politicas_PDF']['type']=='application/pdf') { // Si el tipo de imagen a subir es el mismo de los permitidos, segimos. Puedes agregar mas tipos de imagen

                            try {

                                if ($tamano > 0){

                                // se comentaron para que le cambie el nombre a la nueva imagen.

                                    move_uploaded_file ($_FILES['archivo_Documento_Politicas_PDF']['tmp_name'], $destino . '/'.$cad.'.pdf');

                                 // Subimos el archivo 



                                $doc_Documento_Politicas_PDF=$destino.'/'.$cad.'.pdf';                         

                                }

                            

                            } catch (Exception $e) {

                            }

                        } else { 

                             $doc_Documento_Politicas_PDF="";

                        }

 

                    $Documento_Politicas_PDF=$doc_Documento_Politicas_PDF;    

                }  
 

             $Obj_afianzadoras->update_afianzadoras($Id_Afianzadora, $Logo_Afianzadora, $Nombre_Afianzadora, $Razon_Social, $RFC, $Telefono, $Correo, $Pagina_Web, $Direccion, $Gastos_de_Expedicion, $Fianzas_Activas, $Numero_Fianzas_Emitidas, $Numero_Fianzas_Cobradas, $Numero_Fianzas_En_Proceso, $Numero_Fianzas_Canceladas, $Monto_Total_Emitido, $Monto_Total_Cobrado, $Monto_En_Riesgo, $Porcentaje_Cobranza, $Indice_Cumplimiento, $Score_Operativo, $Id_Fk_Score, $Nivel_Score, $Id_Fk_Status_Afianzadora, $Status_Afianzadora, $Documento_Contrato_PDF, $Documento_Politicas_PDF, $Observaciones, $Quien_Registro, $Fecha_Registro, $Fecha_Modificacion, $Quien_Modifico, $GPS);

            /*if($_Clausula_Fk!='' && $_IdFk!=''){

               $locations="Location: ../view/?_Clausula_Fk=$_Clausula_Fk&_IdFk=$_IdFk&_A_Clausula_Fk=$_A_Clausula_Fk&_A_IdFk=$_A_IdFk&_B_Clausula_Fk=$_B_Clausula_Fk&_B_IdFk=$_B_IdFk&pagina=$_Pagina&_Id_Registro=$Id_Afianzadora&_ScrollTo=$_ScrollTo";

            }else{

              $locations="Location: ../view/?pagina=$_Pagina&_Id_Registro=$Id_Afianzadora&_ScrollTo=$_ScrollTo";

            }*/
            $params = [];

            // Parámetros condicionales
            if (!empty($_Clausula_Fk))   $params[] = '_Clausula_Fk=' . urlencode($_Clausula_Fk);
            if (!empty($_IdFk))          $params[] = '_IdFk=' . urlencode($_IdFk);
            if (!empty($_A_Clausula_Fk)) $params[] = '_A_Clausula_Fk=' . urlencode($_A_Clausula_Fk);
            if (!empty($_A_IdFk))        $params[] = '_A_IdFk=' . urlencode($_A_IdFk);
            if (!empty($_B_Clausula_Fk)) $params[] = '_B_Clausula_Fk=' . urlencode($_B_Clausula_Fk);
            if (!empty($_B_IdFk))        $params[] = '_B_IdFk=' . urlencode($_B_IdFk);

            // Parámetros obligatorios (siempre presentes)
            $params[] = 'pagina=' . urlencode($_Pagina);
            $params[] = '_Id_Registro=' . urlencode($Id_Afianzadora);
            $params[] = '_ScrollTo=' . rawurlencode($_ScrollTo);

            // Construcción de la URL
            $locations = 'Location: ../view/?' . implode('&', $params);

            header($locations);

            }   

        catch (Exception $e) {

            echo 'Excepcion capturada: ',  $e->getMessage(), "\n";

        }

        break;



        case 'registrar':



        try{
 

            $tamano  = $_FILES['Logo_Afianzadora_file']['size'];

            if ($tamano > 0) 

            {

            $str = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz1234567890"; 

                $cad = ""; 

                for($i=0;$i<12;$i++) { 

                    $cad .= substr($str,rand(0,62),1); 

                } 

                // Fin de la creacion de la cadena aletoria 

                $tamano = $_FILES['Logo_Afianzadora_file']['size']; // Leemos el tamano del fichero 

                $tamano_max="50000000000"; // tamano maximo permitido 

                // echo $tamano;

                if( $tamano < $tamano_max){ // Comprovamos el tamano  

                    $destino = '../../../repositorio/afianzadoras_img' ; // Carpeta donde se guarda                    

                    $sep="";

                    $Mec_type="";

                    if (strpos($_FILES["Logo_Afianzadora_file"]["type"], 'image/') !== false) {

                        $sep=explode('image/',$_FILES["Logo_Afianzadora_file"]["type"]); // Separamos image/ 

                        $Mec_type='img';

                    }

                    if (strpos($_FILES["Logo_Afianzadora_file"]["type"], 'audio/') !== false) {

                        $sep=explode('audio/',$_FILES["Logo_Afianzadora_file"]["type"]); // Separamos image/ 

                        $Mec_type='aud';

                    }

                    if ($tamano>0) {

                        $tipo=$sep[1]; // Optenemos el tipo de imagen que es    

                    }

                    if($tipo == "PNG"|| $tipo == "png" || $tipo == "gif" ||$tipo == "GIF" || $tipo == "jpg"||$tipo == "JPG" || $tipo == "jpeg"||$tipo == "JPEG" || $tipo == "bmp"||$tipo == "BMP"||$tipo != "") { // Si el tipo de imagen a subir es el mismo de los permitidos, segimos. Puedes agregar mas tipos de imagen

                        try {

                            if ($tamano>0){

                            // se comentaron para que le cambie el nombre a la nueva imagen.

                                move_uploaded_file ($_FILES['Logo_Afianzadora_file']['tmp_name'], $destino . '/'.$cad.'.'.$tipo);

                             // Subimos el archivo                          

                            }

                            

                        } catch (Exception $e) {

                        }

                        $Mec_urla=$cad;

                        $Mec_formato='.'.$tipo;

                    } else { 

                         $Logo_Afianzadora_img="";

                    }

                } else { 

                    $logo="";

                }

                if (strlen($tipo)==0) {

                    $Logo_Afianzadora_img='';       

                } else {

                    $Logo_Afianzadora_img=$destino.'/'.$cad.'.'.$tipo;      

                }

                //termina algoritmo de carga de imagen.

                $Logo_Afianzadora=$Logo_Afianzadora_img; 

                } 
 

            $tamano = $_FILES['archivo_Documento_Contrato_PDF']['size'];

            if ($tamano > 0) 

            { 

                if (!is_dir('../../../repositorio/afianzadoras_documento')) {

                    mkdir('../../../repositorio/afianzadoras_documento' , 0755, true);

                }

                       // Creamos la cadena aletoria para el archivo Documento creacion.

                $tamano = $_FILES['archivo_Documento_Contrato_PDF']['size']; // Leemos el tamano del fichero 

                    // Creamos la cadena aletoria para la imagen.

                    $str = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz1234567890"; 

                    $cad = ""; 

                    for($i=0;$i<12;$i++) { 

                        $cad .= substr($str,rand(0,62),1); 

                    } 

                    // Fin de la creacion de la cadena aletoria 

                        $destino = '../../../repositorio/afianzadoras_documento' ; // Carpeta donde se guarda

                        if($_FILES['archivo_Documento_Contrato_PDF']['type']=='application/pdf') { // Si el tipo de imagen a subir es el mismo de los permitidos, segimos. Puedes agregar mas tipos de imagen

                            try {

                                if ($tamano>0){

                                // se comentaron para que le cambie el nombre a la nueva imagen.

                                    move_uploaded_file ($_FILES['archivo_Documento_Contrato_PDF']['tmp_name'], $destino . '/'.$cad.'.pdf');

                                 // Subimos el archivo 



                                $doc_Documento_Contrato_PDF=$destino.'/'.$cad.'.pdf';                         

                                }

                            

                            } catch (Exception $e) {

                            }

                        } else { 

                             $doc_Documento_Contrato_PDF="";

                        }

 

                    $Documento_Contrato_PDF=$doc_Documento_Contrato_PDF;

                } 
 

            $tamano = $_FILES['archivo_Documento_Politicas_PDF']['size'];

            if ($tamano > 0) 

            { 

                if (!is_dir('../../../repositorio/afianzadoras_documento')) {

                    mkdir('../../../repositorio/afianzadoras_documento' , 0755, true);

                }

                       // Creamos la cadena aletoria para el archivo Documento creacion.

                $tamano = $_FILES['archivo_Documento_Politicas_PDF']['size']; // Leemos el tamano del fichero 

                    // Creamos la cadena aletoria para la imagen.

                    $str = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz1234567890"; 

                    $cad = ""; 

                    for($i=0;$i<12;$i++) { 

                        $cad .= substr($str,rand(0,62),1); 

                    } 

                    // Fin de la creacion de la cadena aletoria 

                        $destino = '../../../repositorio/afianzadoras_documento' ; // Carpeta donde se guarda

                        if($_FILES['archivo_Documento_Politicas_PDF']['type']=='application/pdf') { // Si el tipo de imagen a subir es el mismo de los permitidos, segimos. Puedes agregar mas tipos de imagen

                            try {

                                if ($tamano>0){

                                // se comentaron para que le cambie el nombre a la nueva imagen.

                                    move_uploaded_file ($_FILES['archivo_Documento_Politicas_PDF']['tmp_name'], $destino . '/'.$cad.'.pdf');

                                 // Subimos el archivo 



                                $doc_Documento_Politicas_PDF=$destino.'/'.$cad.'.pdf';                         

                                }

                            

                            } catch (Exception $e) {

                            }

                        } else { 

                             $doc_Documento_Politicas_PDF="";

                        }

 

                    $Documento_Politicas_PDF=$doc_Documento_Politicas_PDF;

                } 
        

         $idtupla=$Obj_afianzadoras->insert_afianzadoras($Logo_Afianzadora, $Nombre_Afianzadora, $Razon_Social, $RFC, $Telefono, $Correo, $Pagina_Web, $Direccion, $Gastos_de_Expedicion, $Fianzas_Activas, $Numero_Fianzas_Emitidas, $Numero_Fianzas_Cobradas, $Numero_Fianzas_En_Proceso, $Numero_Fianzas_Canceladas, $Monto_Total_Emitido, $Monto_Total_Cobrado, $Monto_En_Riesgo, $Porcentaje_Cobranza, $Indice_Cumplimiento, $Score_Operativo, $Id_Fk_Score, $Nivel_Score, $Id_Fk_Status_Afianzadora, $Status_Afianzadora, $Documento_Contrato_PDF, $Documento_Politicas_PDF, $Observaciones, $Quien_Registro, $Fecha_Registro, $Fecha_Modificacion, $Quien_Modifico, $GPS);

         /*if($_Clausula_Fk!='' && $_IdFk!=''){

               $locations="Location: ../view/?_Clausula_Fk=$_Clausula_Fk&_IdFk=$_IdFk&_A_Clausula_Fk=$_A_Clausula_Fk&_A_IdFk=$_A_IdFk&_B_Clausula_Fk=$_B_Clausula_Fk&_B_IdFk=$_B_IdFk&pagina=1&_Id_Registro=$idtupla&_ScrollTo=0";

        }else{

            $locations="Location: ../view/?pagina=1&_Id_Registro=$idtupla&_ScrollTo=0";

        }*/
            $params = [];

            // Parámetros condicionales
            if (!empty($_Clausula_Fk))   $params[] = '_Clausula_Fk=' . urlencode($_Clausula_Fk);
            if (!empty($_IdFk))          $params[] = '_IdFk=' . urlencode($_IdFk);
            if (!empty($_A_Clausula_Fk)) $params[] = '_A_Clausula_Fk=' . urlencode($_A_Clausula_Fk);
            if (!empty($_A_IdFk))        $params[] = '_A_IdFk=' . urlencode($_A_IdFk);
            if (!empty($_B_Clausula_Fk)) $params[] = '_B_Clausula_Fk=' . urlencode($_B_Clausula_Fk);
            if (!empty($_B_IdFk))        $params[] = '_B_IdFk=' . urlencode($_B_IdFk);

            // Parámetros obligatorios (siempre presentes)
            $params[] = 'pagina=' . urlencode($_Pagina);
            $params[] = '_Id_Registro=' . urlencode($idtupla);
            $params[] = '_ScrollTo=' . rawurlencode($_ScrollTo);

            // Construcción de la URL
            $locations = 'Location: ../view/?' . implode('&', $params);

            header($locations);        

           }    

        catch (Exception $e) {

            echo 'Excepcion capturada: ',  $e->getMessage(), "\n";

        }   



        break;

        case 'duplicar':



        try{
 

            $tamano = $_FILES['Logo_Afianzadora_file']['size'];

            if ($tamano > 0) 

            {

            $str = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz1234567890"; 

                $cad = ""; 

                for($i=0;$i<12;$i++) { 

                    $cad .= substr($str,rand(0,62),1); 

                } 

                // Fin de la creacion de la cadena aletoria 

                $tamano = $_FILES['Logo_Afianzadora_file']['size']; // Leemos el tamano del fichero 

                $tamano_max="50000000000"; // tamano maximo permitido 

                // echo $tamano;

                if( $tamano < $tamano_max){ // Comprovamos el tamano  

                    $destino = '../../../repositorio/afianzadoras_img' ; // Carpeta donde se guarda                    

                    $sep="";

                    $Mec_type="";

                    if (strpos($_FILES["Logo_Afianzadora_file"]["type"], 'image/') !== false) {

                        $sep=explode('image/',$_FILES["Logo_Afianzadora_file"]["type"]); // Separamos image/ 

                        $Mec_type='img';

                    }

                    if (strpos($_FILES["Logo_Afianzadora_file"]["type"], 'audio/') !== false) {

                        $sep=explode('audio/',$_FILES["Logo_Afianzadora_file"]["type"]); // Separamos image/ 

                        $Mec_type='aud';

                    }

                    if ($tamano>0) {

                        $tipo=$sep[1]; // Optenemos el tipo de imagen que es    

                    }

                    if($tipo == "PNG"|| $tipo == "png" || $tipo == "gif" ||$tipo == "GIF" || $tipo == "jpg"||$tipo == "JPG" || $tipo == "jpeg"||$tipo == "JPEG" || $tipo == "bmp"||$tipo == "BMP"||$tipo != "") { // Si el tipo de imagen a subir es el mismo de los permitidos, segimos. Puedes agregar mas tipos de imagen

                        try {

                            if ($tamano>0){

                            // se comentaron para que le cambie el nombre a la nueva imagen.

                                move_uploaded_file ($_FILES['Logo_Afianzadora_file']['tmp_name'], $destino . '/'.$cad.'.'.$tipo);

                             // Subimos el archivo                          

                            }

                            

                        } catch (Exception $e) {

                        }

                        $Mec_urla=$cad;

                        $Mec_formato='.'.$tipo;

                    } else { 

                         $Logo_Afianzadora_img="";

                    }

                } else { 

                    $logo="";

                }

                if (strlen($tipo)==0) {

                    $Logo_Afianzadora_img='';       

                } else {

                    $Logo_Afianzadora_img=$destino.'/'.$cad.'.'.$tipo;      

                }

                //termina algoritmo de carga de imagen.

                $Logo_Afianzadora=$Logo_Afianzadora_img; 

                }else{

                    if($Logo_Afianzadora!=''){

                        $str = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz1234567890"; 

                        $cad = ""; 

                        for($i=0;$i<12;$i++) { 

                            $cad .= substr($str,rand(0,62),1); 

                        }

                        $extension = pathinfo($Logo_Afianzadora, PATHINFO_EXTENSION);

                        $Logo_AfianzadoraCopia = '../../../repositorio/afianzadoras_img/'.$cad . "." . $extension;

                        copy($Logo_Afianzadora, $Logo_AfianzadoraCopia);

                        $Logo_Afianzadora=$Logo_AfianzadoraCopia;

                    }else{

                        $Logo_Afianzadora='';

                    }

                } 
 

            $tamano = $_FILES['archivo_Documento_Contrato_PDF']['size'];

            if ($tamano > 0) 

            {

                if (!is_dir('../../../repositorio/afianzadoras_documento')) {

                    mkdir('../../../repositorio/afianzadoras_documento' , 0755, true);

                }

                        // Creamos la cadena aletoria para el archivo Documento creacion.

                $tamano = $_FILES['archivo_Documento_Contrato_PDF']['size']; // Leemos el tamano del fichero 

                    // Creamos la cadena aletoria para la imagen.

                    $str = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz1234567890"; 

                    $cad = ""; 

                    for($i=0;$i<12;$i++) { 

                        $cad .= substr($str,rand(0,62),1); 

                    } 

                    // Fin de la creacion de la cadena aletoria 

                        $destino = '../../../repositorio/afianzadoras_documento' ; // Carpeta donde se guarda

                        if($_FILES['archivo_Documento_Contrato_PDF']['type']=='application/pdf') { // Si el tipo de imagen a subir es el mismo de los permitidos, segimos. Puedes agregar mas tipos de imagen

                            try {

                                if ($tamano>0){

                                // se comentaron para que le cambie el nombre a la nueva imagen.

                                    move_uploaded_file ($_FILES['archivo_Documento_Contrato_PDF']['tmp_name'], $destino . '/'.$cad.'.pdf');

                                 // Subimos el archivo 



                                $doc_Documento_Contrato_PDF=$destino.'/'.$cad.'.pdf';                         

                                }

                            

                            } catch (Exception $e) {

                            }

                        } else { 

                             $doc_Documento_Contrato_PDF="";

                        }

 

                    $Documento_Contrato_PDF=$doc_Documento_Contrato_PDF;

                }else{

                    if (!is_dir('../../../repositorio/afianzadoras_documento')) {

                        mkdir('../../../repositorio/afianzadoras_documento' , 0755, true);

                    }

                    

                    if ($Documento_Contrato_PDF!='') {

                        $str = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz1234567890"; 

                        $cad = ""; 

                        for($i=0;$i<12;$i++) { 

                            $cad .= substr($str,rand(0,62),1); 

                        }

                        $extension = pathinfo($Documento_Contrato_PDF, PATHINFO_EXTENSION);

                        $Documento_Contrato_PDFCopia = '../../../repositorio/afianzadoras_documento/'.$cad . "." . $extension;

                        copy($Documento_Contrato_PDF, $Documento_Contrato_PDFCopia);

                        $Documento_Contrato_PDF=$Documento_Contrato_PDFCopia;

                    }else{

                        $Documento_Contrato_PDF='';

                    }

                } 
 

            $tamano = $_FILES['archivo_Documento_Politicas_PDF']['size'];

            if ($tamano > 0) 

            {

                if (!is_dir('../../../repositorio/afianzadoras_documento')) {

                    mkdir('../../../repositorio/afianzadoras_documento' , 0755, true);

                }

                        // Creamos la cadena aletoria para el archivo Documento creacion.

                $tamano = $_FILES['archivo_Documento_Politicas_PDF']['size']; // Leemos el tamano del fichero 

                    // Creamos la cadena aletoria para la imagen.

                    $str = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz1234567890"; 

                    $cad = ""; 

                    for($i=0;$i<12;$i++) { 

                        $cad .= substr($str,rand(0,62),1); 

                    } 

                    // Fin de la creacion de la cadena aletoria 

                        $destino = '../../../repositorio/afianzadoras_documento' ; // Carpeta donde se guarda

                        if($_FILES['archivo_Documento_Politicas_PDF']['type']=='application/pdf') { // Si el tipo de imagen a subir es el mismo de los permitidos, segimos. Puedes agregar mas tipos de imagen

                            try {

                                if ($tamano>0){

                                // se comentaron para que le cambie el nombre a la nueva imagen.

                                    move_uploaded_file ($_FILES['archivo_Documento_Politicas_PDF']['tmp_name'], $destino . '/'.$cad.'.pdf');

                                 // Subimos el archivo 



                                $doc_Documento_Politicas_PDF=$destino.'/'.$cad.'.pdf';                         

                                }

                            

                            } catch (Exception $e) {

                            }

                        } else { 

                             $doc_Documento_Politicas_PDF="";

                        }

 

                    $Documento_Politicas_PDF=$doc_Documento_Politicas_PDF;

                }else{

                    if (!is_dir('../../../repositorio/afianzadoras_documento')) {

                        mkdir('../../../repositorio/afianzadoras_documento' , 0755, true);

                    }

                    

                    if ($Documento_Politicas_PDF!='') {

                        $str = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz1234567890"; 

                        $cad = ""; 

                        for($i=0;$i<12;$i++) { 

                            $cad .= substr($str,rand(0,62),1); 

                        }

                        $extension = pathinfo($Documento_Politicas_PDF, PATHINFO_EXTENSION);

                        $Documento_Politicas_PDFCopia = '../../../repositorio/afianzadoras_documento/'.$cad . "." . $extension;

                        copy($Documento_Politicas_PDF, $Documento_Politicas_PDFCopia);

                        $Documento_Politicas_PDF=$Documento_Politicas_PDFCopia;

                    }else{

                        $Documento_Politicas_PDF='';

                    }

                } 
        

         $idtupla=$Obj_afianzadoras->insert_afianzadoras($Logo_Afianzadora, $Nombre_Afianzadora, $Razon_Social, $RFC, $Telefono, $Correo, $Pagina_Web, $Direccion, $Gastos_de_Expedicion, $Fianzas_Activas, $Numero_Fianzas_Emitidas, $Numero_Fianzas_Cobradas, $Numero_Fianzas_En_Proceso, $Numero_Fianzas_Canceladas, $Monto_Total_Emitido, $Monto_Total_Cobrado, $Monto_En_Riesgo, $Porcentaje_Cobranza, $Indice_Cumplimiento, $Score_Operativo, $Id_Fk_Score, $Nivel_Score, $Id_Fk_Status_Afianzadora, $Status_Afianzadora, $Documento_Contrato_PDF, $Documento_Politicas_PDF, $Observaciones, $Quien_Registro, $Fecha_Registro, $Fecha_Modificacion, $Quien_Modifico, $GPS);

         /*if($_Clausula_Fk!='' && $_IdFk!=''){

               $locations="Location: ../view/?_Clausula_Fk=$_Clausula_Fk&_IdFk=$_IdFk&_A_Clausula_Fk=$_A_Clausula_Fk&_A_IdFk=$_A_IdFk&_B_Clausula_Fk=$_B_Clausula_Fk&_B_IdFk=$_B_IdFk&pagina=1&_Id_Registro=$idtupla&_ScrollTo=0";

        }else{

            $locations="Location: ../view/?pagina=1&_Id_Registro=$idtupla&_ScrollTo=0";

        }*/

        $params = [];

            // Parámetros condicionales
            if (!empty($_Clausula_Fk))   $params[] = '_Clausula_Fk=' . urlencode($_Clausula_Fk);
            if (!empty($_IdFk))          $params[] = '_IdFk=' . urlencode($_IdFk);
            if (!empty($_A_Clausula_Fk)) $params[] = '_A_Clausula_Fk=' . urlencode($_A_Clausula_Fk);
            if (!empty($_A_IdFk))        $params[] = '_A_IdFk=' . urlencode($_A_IdFk);
            if (!empty($_B_Clausula_Fk)) $params[] = '_B_Clausula_Fk=' . urlencode($_B_Clausula_Fk);
            if (!empty($_B_IdFk))        $params[] = '_B_IdFk=' . urlencode($_B_IdFk);

            // Parámetros obligatorios (siempre presentes)
            $params[] = 'pagina=' . urlencode($_Pagina);
            $params[] = '_Id_Registro=' . urlencode($idtupla);
            $params[] = '_ScrollTo=' . rawurlencode($_ScrollTo);

            // Construcción de la URL
            $locations = 'Location: ../view/?' . implode('&', $params);

            header($locations);        

           }    

        catch (Exception $e) {

            echo 'Excepcion capturada: ',  $e->getMessage(), "\n";

        }   



        break;

    

        case 'eliminar':           

                try{

              $Obj_afianzadoras->delete_afianzadoras($Id_Afianzadora);

                 $locations ="Location: ../view";

                 header($locations);

                }

        

                catch (Exception $e) {

                    echo 'Excepcion capturada: ',  $e->getMessage(), "\n";

                }   



        break;



    default:

        

        break;

}

?>

