generación de appi key

This commit is contained in:
humano 2018-10-20 07:28:26 -05:00
parent 33919803c5
commit c98f1ab63f

View File

@ -4,13 +4,15 @@ date_default_timezone_set('America/Bogota');
function generar_token($div,$tipo) {
$respuesta = new xajaxResponse('utf-8');
$color = "#".substr(md5(rand()), 0, 6);
$token = sprintf( '%04x%04x-%04x-%04x-%04x-%04x%04x%04x', mt_rand( 0, 0xffff ), mt_rand( 0, 0xffff ), mt_rand( 0, 0xffff ), mt_rand( 0, 0x0C2f ) | 0x4000, mt_rand( 0, 0x3fff ) | 0x8000, mt_rand( 0, 0x2Aff ), mt_rand( 0, 0xffD3 ), mt_rand( 0, 0xff4B ) );
if($tipo =='proyecto'){
$consulta = "UPDATE `empresa` SET `secret_key` = '$token' WHERE `empresa`.`id` = '$_SESSION[id_empresa]'";
$link=Conectarse();
mysqli_set_charset($link, "utf8");
$token = sprintf( '%04x%04x-%04x-%04x-%04x-%04x%04x%04x', mt_rand( 0, 0xffff ), mt_rand( 0, 0xffff ), mt_rand( 0, 0xffff ), mt_rand( 0, 0x0C2f ) | 0x4000, mt_rand( 0, 0x3fff ) | 0x8000, mt_rand( 0, 0x2Aff ), mt_rand( 0, 0xffD3 ), mt_rand( 0, 0xff4B ) );
$color = "#".substr($token, 0, 6);
//escritura: ebf3f1cb-88c3-43fa-8df5-242b591f5367 Nuevo key lectura: f6fdf0b7-b3c7-46cc-a308-10eb8561cc9
if($tipo =='proyecto'){
$consulta = "UPDATE `empresa` SET `secret_key` = '$token' WHERE `empresa`.`id` = '$_SESSION[id_empresa]'";
$sql=mysqli_query($link,$consulta);
if($sql){
@ -18,7 +20,31 @@ date_default_timezone_set('America/Bogota');
$respuesta->addAssign("$div"."_aviso","innerHTML","<font color='$color'>Nuevo key: $token</font>" );
return $respuesta;
}
}
}else{
$valor= intval(preg_replace('/[^0-9]+/', '', $div), 10); ;
$existe = remplacetas('form_permisos','form_id',$valor,'id',"tipo='$tipo' AND id_empresa = '$_SESSION[id_empresa]'") ;
if($existe[0] !=""){
$consulta="UPDATE `form_permisos` SET `control` = '', `permiso` = '$token', `creacion` = NOW(), `id_usuario` = '$_SESSION[id]', `tipo` = '$tipo', `vencimiento` = '0', `id_empresa` = '$_SESSION[id_empresa]', `form_id` = '$valor'
WHERE `form_permisos`.`id` = '$existe[0]'";
$sql=mysqli_query($link,$consulta);
$respuesta->addAssign("$div","value","$token" );
$respuesta->addAssign("$div"."_aviso","innerHTML","<font color='$color'>Nuevo key $tipo: $token</font> " );
return $respuesta;
}
ELSE{
$consulta ="INSERT INTO `form_permisos` (`id`, `control`, `permiso`, `vencimiento`, `creacion`, `id_usuario`, `tipo`, `id_empresa`, `form_id`)
VALUES (NULL, '', '$token', '0', NOW(), '$_SESSION[id]', '$tipo', '$_SESSION[id_empresa]', '$valor')";
$sql=mysqli_query($link,$consulta);
$respuesta->addAssign("$div","value","$token" );
$respuesta->addAssign("$div"."_aviso","innerHTML","<font color='$color'>Nuevo key $tipo: $token</font>" );
return $respuesta;
}
$respuesta->addAlert("$valor $consulta ");
return $respuesta;
}
}
@ -15358,6 +15384,10 @@ if (mysqli_num_rows($sql)!='0' ){
{
$grupo = "".editar_campo("form_grupo",$row['id'],"grupo","","","","");
}
${"key_lectura_".$id} = remplacetas('form_permisos','form_id',"$id",'permiso',"id_empresa = '$_SESSION[id_empresa]' AND tipo='lectura'") ;
${"key_escritura_".$id} = remplacetas('form_permisos','form_id',"$id",'permiso',"id_empresa = '$_SESSION[id_empresa]' AND tipo='escritura'") ;
${"key_administrador_".$id} = remplacetas('form_permisos','form_id',"$id",'permiso',"id_empresa = '$_SESSION[id_empresa]' AND tipo='administrador'") ;
$item .= "<!-- <div class='col-sm-$columnas' style=';'> -->
<div class='panel panel-default' >
@ -15408,13 +15438,35 @@ $item .= "<!-- <div class='col-sm-$columnas' style=';'> -->
<div id='config_form$row[id]' class='panel-collapse collapse' role='tabpanel' aria-labelledby='encabezado_$row[id]'>
<div class='panel-body' >
<div class='container-fluid'>
<legend>API</legend>
<div class='input-group'>
<span class='input-group-addon'>NO</span>
<input type='range' value='$mostrar[0]' class='form-control' NAME='mostrar_portal' id='mostrar_portal' onchange=\"xajax_parametrizacion_linea('form_id','$row[id]','mostrar_portal',(this.value),'div_mostrar_portal_$row[id]'); \"
min='0' max='1' >
<span class='input-group-addon'>SI</span><span class='input-group-addon alert-success' id= 'div_$name'>Mostrar en el portal</span>
</div>
<div id='api' class='row'>
<legend>API</legend>
<div class='input-group'>
<span class='input-group-addon'>Key Administrador</span>
<input class='form-control ' value='".${"key_administrador_".$id}[0]."' id='token_administrador_"."$id"."' readonly>
<div class='input-group-btn' title='Renovar' >
<button class='btn btn-warning' onclick=\"xajax_generar_token('token_administrador_$id','administrador'); \"> <i class='glyphicon glyphicon-refresh'></i> Generar </button>
</div>
</div>
<legend id='token_administrador_$id"."_aviso'></legend>
<div class='input-group'>
<span class='input-group-addon'>Key Lectura</span>
<input class='form-control ' value='".${"key_lectura_".$id}[0]."' id='token_lectura_$id' readonly>
<div class='input-group-btn' title='Renovar' >
<button class='btn btn-warning' onclick=\"xajax_generar_token('token_lectura_$id','lectura'); \"> <i class='glyphicon glyphicon-refresh'></i> Generar </button>
</div>
</div>
<legend id='token_lectura_$id"."_aviso'></legend>
<div class='input-group'>
<span class='input-group-addon'>Key Escritura</span>
<input class='form-control ' value='".${"key_escritura_".$id}[0]."' id='token_escritura_$id' readonly>
<div class='input-group-btn' title='Renovar' >
<button class='btn btn-warning' onclick=\"xajax_generar_token('token_escritura_$id','escritura'); \"> <i class='glyphicon glyphicon-refresh'></i> Generar </button>
</div>
</div>
<legend id='token_escritura_$id"."_aviso'></legend>
</div>
<legend>Portal</legend>
<li class='list-group-item'>
<div class='input-group'>