diff --git a/Simple-Ajax-Uploader-master.zip b/Simple-Ajax-Uploader-master.zip deleted file mode 100644 index 835085a..0000000 Binary files a/Simple-Ajax-Uploader-master.zip and /dev/null differ diff --git a/milfs/archivos/index.php b/milfs/archivos/index.php new file mode 100644 index 0000000..abeda02 --- /dev/null +++ b/milfs/archivos/index.php @@ -0,0 +1,93 @@ +=0){ + mysqli_data_seek($res,$row); + $resrow = (is_numeric($col)) ? mysqli_fetch_row($res) : mysqli_fetch_assoc($res); + if (isset($resrow[$col])){ + return $resrow[$col]; + } + } + return false; +} + $control = remplacetas('form_datos','contenido',"$archivo",'control',"") ; + $privacidad = remplacetas('form_id','id',"$control[5]",'publico',"") ; + + if($privacidad[0] == 0 AND ($_SESSION['id'] != $control[6] OR $_SESSION['id_empresa'] != $control[7]) or $_SESSION['equipo'] != $control[8] ) { + header("Location: ../images/seguridad.gif"); + exit(); + } +$dir="$path_images_secure/full/"; +if ((!$file=realpath($dir.$_GET['archivo'])) + || strpos($file,realpath($dir))!==0 || substr($file,-4)=='.php'){ + //header('HTTP/1.0 404 Not Found'); + header("Location: ../images/sinimagen.jpg"); + exit(); +} +$ref=$_SERVER['HTTP_REFERER']; +if (strpos($ref,'https://')===0 || strpos($ref,'https')!==0){ + /* $mime=array( + 'jpg'=>'image/jpeg', + 'png'=>'image/png', + 'mid'=>'audio/x-midi', + 'wav'=>'audio/x-wav' + ); + if($mime[substr($file,-3)] =='') { + header('Location: ../pixel.png'); + + exit(); + }*/ + $stat=stat($file); + header('Content-Type: '.$mime[substr($file,-3)]); + header('Content-Length: '.$stat[7]); + header('Last-Modified: '.gmdate('D, d M Y H:i:s',$stat[9]).' GMT'); + readfile($file); + exit(); +} +header('Pragma: no-cache'); +header('Cache-Control: no-cache, no-store, must-revalidate'); +include($file.'.php'); +?> diff --git a/milfs/funciones/conex.php b/milfs/funciones/conex.php index a35d2e9..9790660 100755 --- a/milfs/funciones/conex.php +++ b/milfs/funciones/conex.php @@ -36,12 +36,16 @@ function Conectarse_recursivo(){ @include("milfs/includes/datos.php"); if(!isset($db)) { - include("../milfs/includes/datos.php"); + @include("../milfs/includes/datos.php"); + if(!isset($db)) { + include("../includes/datos.php"); + + } } if (!($link=mysqli_connect($servidor,$usuario,$password,$db))) { - echo "Error conectando a la base de datos. "; + echo "Error conectando a la base de datos. $servidor,$usuario,$password,$db "; exit(); } /* if (!mysqli_select_db($db,$link)) diff --git a/milfs/funciones/funciones.php b/milfs/funciones/funciones.php index 53f062f..22f7ff1 100644 --- a/milfs/funciones/funciones.php +++ b/milfs/funciones/funciones.php @@ -150,6 +150,39 @@ $contenido .= " } $resultado="
$contenido
"; +return $resultado; +} + +function json_tabla($contenido,$campo,$control){ + + $tipo = remplacetas('form_campos','id',"$campo",'campo_tipo',"") ; +$datos = json_decode($contenido, true); + + foreach ($datos as $id_campo => $valor) { + + + foreach ($valor as $c => $v) { + if($tipo[0]==31 AND $c=="nombre") { + $url= $full= "$_SESSION[site]milfs/archivos/?archivo=".$v; + $linea .= "$c$v"; + }else{ + $linea .= "$c$v"; + } + + + } + } + +$resultado=" + + +$linea +
CampoValor
+ +"; + + + return $resultado; } @@ -552,6 +585,7 @@ $acciones="
{json simple} $mapa + Informe Mostrar Llenar Embeber @@ -1679,10 +1713,16 @@ while( $row = mysqli_fetch_array( $datos_consulta ) ) { if($tipo_campo[0] =="15" ) {$imagen =" "; $contenido[0]="";}else{$imagen ="";} if($tipo_campo[0] =="6" ) {$contenido[0] =imprimir_buscador_campo("$row[id_campo]",$contenido[0]) ; } if($tipo_campo[0] =="29" ) {$contenido[0] =" "; }//$contenido=""; + if($tipo_campo[0] =="31" ) { + $link_url = "$_SESSION[site]milfs/archivos/?archivo=$contenido[0]"; + $contenido[0] = "$contenido[0]"; + } if($tipo_campo[0]=='10'){ $render = relacion_render("$row[form_id]","$row[id_campo]",$contenido[0],'5',''); $contenido[0] = "$valor_actual";} else {$render=html_entity_decode($contenido[0]);} + + $json_array[$row['campo_nombre']."_titulo"] = "$contenido[0]"; //imprimir_buscador_campo($id_campo,$valor) $listado_atenciones .= " @@ -4644,12 +4684,14 @@ while( $row = mysqli_fetch_array( $sql ) ) { $listado_campos = listar_campos_formulario("$id_form",''); foreach($listado_campos as $campo=>$valor){ + $id_campo=$valor; //$imagen = buscar_imagen($if_form,$row['control'],"",""); $contenido = remplacetas('form_datos','control',$row['control'],'contenido',"id_campo ='$valor' ") ; $id_dato = remplacetas('form_datos','control',$row['control'],'id',"id_campo ='$valor' ") ; $multiple = remplacetas('form_contenido_campos','id_form',$id_form,'multiple',"id_campo ='$valor' ") ; //$id_empresa = remplacetas('form_datos','control',$row['control'],'id_empresa',"id_campo ='$valor' ") ; $tipo_campo = remplacetas('form_campos','id',$valor,'campo_tipo',"") ; + $web = remplacetas("empresa","id",$id_empresa,"web",""); if($tipo_campo[0] ==15 AND $contenido[0] != "") { @$listado_campos .= " @@ -4680,8 +4722,16 @@ foreach($listado_campos as $campo=>$valor){ @$listado_campos .= " "; } - elseif($tipo_campo[0] =="30" or $tipo_campo[0] =="24") { - $valor_actual = json_render("$contenido[0]","html","$row[control]"); + elseif($tipo_campo[0] =="30" or $tipo_campo[0] =="24" ) { + $json = html_entity_decode($contenido[0]); + + $valor_actual = json_render(html_entity_decode($contenido[0]),"html","$row[control]"); + @$listado_campos .= "$valor_actual"; + } + elseif($tipo_campo[0] =="31") { + //$json = html_entity_decode($contenido[0]); + $link_url = "$_SESSION[site]milfs/archivos/?archivo=$contenido[0]"; + $valor_actual = "$contenido[0]"; @$listado_campos .= "$valor_actual"; } // @@ -4844,12 +4894,7 @@ $array["identificador"] = "$identificador"; while($row = mysqli_fetch_array( $sql )) { - - - //$contenido = remplacetas('form_datos','id',$row[id],'contenido',"") ; - $id_campo = remplacetas('form_datos','id',$row["id"],'id_campo',"") ; - $campo_tipo = remplacetas("form_campos","id",$row["id_campo"],"campo_tipo",""); $multiple = remplacetas('form_contenido_campos','id_form',$row['form_id'],'multiple',"id_campo ='$id_campo[0]' ") ; if($multiple[0] =='1') { $contenido_multiple = formulario_valor_campo("$row[form_id]","$id_campo[0]","","$row[control]",'',"$row[timestamp]"); $contenido[0] = $contenido_multiple[9];} @@ -4858,6 +4903,12 @@ while($row = mysqli_fetch_array( $sql )) if($campo_tipo[0]=='10'){ $valor_actual = relacion_render($row["form_id"],$row["id_campo"],$contenido[0],'5','relacion_drop'); $contenido[0] = "$valor_actual";} + if($campo_tipo[0] =='31') { + + $link_url = "$_SESSION[site]milfs/archivos/?archivo=$contenido[0]"; + $contenido[0] = $link_url; + + } else{ } @@ -8587,6 +8638,7 @@ $mostrar = mostrar_areas($datos['id'],"","","api"); //$nombre_campo =remplacetas('form_campos','id',$id_campo[0],'campo_nombre',"") ; $id_campo = remplacetas('form_datos','id',$row["id_dato"],'id_campo',"") ; $formulario = remplacetas('form_datos','id',$row["id_dato"],'form_id',"") ; + $campo_tipo = remplacetas("form_campos","id",$row["id_campo"],"campo_tipo",""); //// PRIVACIDAD $privado = remplacetas('form_parametrizacion','campo',"$formulario[0]",'opcion'," tabla='form_id' AND descripcion ='$id_campo[0]' AND opcion REGEXP '^privacidad:' ") ; $privado = explode(":",$privado[0]); @@ -8601,6 +8653,11 @@ $mostrar = mostrar_areas($datos['id'],"","","api"); $features[] = "'$nombre_campo[0]' : '$contenido[0]'";//$row[id_campo]; } else { + if($campo_tipo[0] == '31') { + $link_url = "$_SESSION[site]milfs/archivos/?archivo=$row[contenido]"; + $row['contenido']= $link_url; + + } $features[] = $row; } } @@ -9855,10 +9912,16 @@ if (mysqli_num_rows($sql)!='0'){ $contenido_full = json_render("$contenido","csv","$control"); $valor_actual = json_render("$contenido","html","$control"); $contenido = "$valor_actual";} + elseif($campo_tipo =="31"){ + $link_url = "$_SESSION[site]milfs/archivos/?archivo=$contenido"; + $contenido = "$contenido"; + } + elseif($campo_tipo=="24"){ $contenido_full = json_render("$contenido","csv","$control"); $valor_actual = json_render("$contenido","html","$control"); $contenido = "$valor_actual";} + elseif($campo_tipo=='5' AND $contenido !=""){ if($tipo =="") { $contenido = trim($contenido); $contenido = " @@ -10714,7 +10777,7 @@ return $respuesta; function remplacetas($tabla,$campo,$valor,$por,$and){ - +/// depende de la funcion mysqli_result por compatibilidad hacia atras $link=Conectarse(); mysqli_set_charset($link, "utf8"); if(@$and !=''){$AND = "AND $and";}else{$AND ="";} @@ -10728,13 +10791,19 @@ $resultado[] = $consulta; $resultado[] = mysqli_result($sql,0,"md5_$por"); $resultado[] = @mysqli_result($sql,0,"timestamp"); $resultado[] = @mysqli_result($sql,0,"form_id"); +$resultado[] = @mysqli_result($sql,0,"id_usuario"); //6 +$resultado[] = @mysqli_result($sql,0,"id_empresa"); //7 +$resultado[] = @mysqli_result($sql,0,"equipo"); //8 }else{ $resultado[0] = ''; $resultado[1] =""; $resultado[2] = $consulta; $resultado[3] = NULL; $resultado[4] = NULL; - $resultado[4] = NULL; + $resultado[5] = NULL; + $resultado[6] = NULL; + $resultado[7] = NULL; + $resultado[8] = NULL; } return $resultado; } @@ -12193,7 +12262,47 @@ return $respuesta; } $xajax->registerFunction("campo_multiple"); +function subidor_generico($campo,$item){ +$name= $campo."[".$item."]"; +$resultado = " +
+
+ + + + + + +
+
+ +
+
+
+
+
+
+
+
+ + + +
+ +
+ +
+"; + +return $resultado; +} function formulario_campos_render($id_campo,$id_form,$control,$item,$id_dato){ $cols =""; $style=""; @@ -12311,6 +12420,11 @@ elseif($campo_tipo_accion == 'email'){$render = " // $gps = leer_exif($file); $render= " "; //subir_imagen('',$id_campo[$item]); $cols='12'; } + elseif($campo_tipo_accion == 'adjunto'){ + + $render=subidor_generico($id_campo,$item); + + $cols='12'; } elseif($campo_tipo_accion == 'html'){ $render = " diff --git a/milfs/images/seguridad.gif b/milfs/images/seguridad.gif new file mode 100644 index 0000000..f55d7e8 Binary files /dev/null and b/milfs/images/seguridad.gif differ diff --git a/milfs/images/seguridad.jpg b/milfs/images/seguridad.jpg new file mode 100644 index 0000000..021675a Binary files /dev/null and b/milfs/images/seguridad.jpg differ diff --git a/milfs/includes/upload_generico.php b/milfs/includes/upload_generico.php new file mode 100644 index 0000000..fba1fac --- /dev/null +++ b/milfs/includes/upload_generico.php @@ -0,0 +1,46 @@ + + + diff --git a/milfs/js/scripts.js b/milfs/js/scripts.js index 3cb894c..e20005a 100755 --- a/milfs/js/scripts.js +++ b/milfs/js/scripts.js @@ -1,3 +1,103 @@ +//// funciones upload_generico + + function selectedFile(campo,item) { + var campo; + var item; + var nombre = campo+"["+item+"]"; + var archivoSeleccionado = document.getElementById(campo+"-"+item); + // alert(nombre); + var file = archivoSeleccionado.files[0]; + if (file) { + var fileSize = 0; + if (file.size > 1048576) + fileSize = (Math.round(file.size * 100 / 1048576) / 100).toString() + ' MB'; + else + fileSize = (Math.round(file.size * 100 / 1024) / 100).toString() + ' Kb'; + + var divfileSize = document.getElementById('fileSize_'+nombre); + var divfileType = document.getElementById('fileType_'+nombre); + var divfileName = document.getElementById('fileName_'+nombre); + divfileSize.innerHTML = 'Tamaño: ' + fileSize+""; + divfileType.innerHTML = 'Tipo: ' + file.type+""; + divfileName.innerHTML = 'Nombre original: ' + file.name+"" ; + if ((file.type != "image/jpeg") && (file.type != "image/png") ) { + document.getElementById("div_preview_"+nombre).innerHTML = "


"+file.type+"

"; + }else{ + document.getElementById("div_preview_"+nombre).innerHTML = "

"+file.type+"

"; + document.getElementById("image_preview_"+nombre).src = window.URL.createObjectURL(archivoSeleccionado.files[0]); + // document.getElementById("image_preview_"+nombre).alt = file.type; + } + document.getElementById("alert_"+nombre).className = "alert alert-success"; + + + + + } + } + + function uploadFile(campo,item) { + var campo; + var item; + var nombre = campo+"["+item+"]"; + + var archivoSeleccionado = document.getElementById(campo+"-"+item); + var file = archivoSeleccionado.files[0]; + var extension = getFileExtension(file.name); + var nombrecillo = hex_md5(Math.random()+file.name)+"."+extension; + // var arreglo = '[{"nombre_original":"'+file.name+'","tipo":"'+file.type+'","nombre":"'+nombrecillo+'","campo":"'+campo+'","item":"'+item+'","size":"'+file.size+'","extensión":"'+extension+'"}]'; + //var myJsonString = JSON.stringify(arreglo); + + //document.getElementById(nombre).value=nombrecillo; + + document.getElementById(nombre).value=nombrecillo; + + var url = "milfs/includes/upload_generico.php?nombrecillo="+nombrecillo+"&campo="+campo+"&item="+item; + + var fd = new FormData(); + fd.append(campo+"-"+item, file); + + var xmlHTTP= new XMLHttpRequest(); + + xmlHTTP.upload.addEventListener("progress", progressFunction, false); + document.getElementById("percentageCalc_"+nombre).innerHTML = "Archivo se subió con éxito "; + xmlHTTP.addEventListener("error", uploadFailed, false); + xmlHTTP.addEventListener("abort", uploadCanceled, false); + xmlHTTP.open("POST", url, true); + //xmlHTTP.setRequestHeader('book_id','10'); + xmlHTTP.send(fd); + } + + function progressFunction(evt){ + + var progressBar = document.getElementById("progressBar_"); + var percentageDiv = document.getElementById("percentageCalc_"); + if (evt.lengthComputable) { + progressBar.max = evt.total; + progressBar.value = evt.loaded; + percentageDiv.innerHTML = Math.round(evt.loaded / evt.total * 100) + "%"; + } + } + function getFileExtension(filename) { + return filename.slice((filename.lastIndexOf(".") - 1 >>> 0) + 2); + } + + function uploadFailed(evt) { + alert("Hubo un error al subir el archivo."); + } + + function uploadCanceled(evt) { + alert("La operación se canceló o la conexión fue interrunpida."); + } + + +var hexcase=0;function hex_md5(a){return rstr2hex(rstr_md5(str2rstr_utf8(a)))}function hex_hmac_md5(a,b){return rstr2hex(rstr_hmac_md5(str2rstr_utf8(a),str2rstr_utf8(b)))}function md5_vm_test(){return hex_md5("abc").toLowerCase()=="900150983cd24fb0d6963f7d28e17f72"}function rstr_md5(a){return binl2rstr(binl_md5(rstr2binl(a),a.length*8))}function rstr_hmac_md5(c,f){var e=rstr2binl(c);if(e.length>16){e=binl_md5(e,c.length*8)}var a=Array(16),d=Array(16);for(var b=0;b<16;b++){a[b]=e[b]^909522486;d[b]=e[b]^1549556828}var g=binl_md5(a.concat(rstr2binl(f)),512+f.length*8);return binl2rstr(binl_md5(d.concat(g),512+128))}function rstr2hex(c){try{hexcase}catch(g){hexcase=0}var f=hexcase?"0123456789ABCDEF":"0123456789abcdef";var b="";var a;for(var d=0;d>>4)&15)+f.charAt(a&15)}return b}function str2rstr_utf8(c){var b="";var d=-1;var a,e;while(++d>>6)&31),128|(a&63))}else{if(a<=65535){b+=String.fromCharCode(224|((a>>>12)&15),128|((a>>>6)&63),128|(a&63))}else{if(a<=2097151){b+=String.fromCharCode(240|((a>>>18)&7),128|((a>>>12)&63),128|((a>>>6)&63),128|(a&63))}}}}}return b}function rstr2binl(b){var a=Array(b.length>>2);for(var c=0;c>5]|=(b.charCodeAt(c/8)&255)<<(c%32)}return a}function binl2rstr(b){var a="";for(var c=0;c>5]>>>(c%32))&255)}return a}function binl_md5(p,k){p[k>>5]|=128<<((k)%32);p[(((k+64)>>>9)<<4)+14]=k;var o=1732584193;var n=-271733879;var m=-1732584194;var l=271733878;for(var g=0;g>16)+(d>>16)+(c>>16);return(b<<16)|(c&65535)}function bit_rol(a,b){return(a<>>(32-b))}; + +/// fin funciones upload generico + + + + + //// drag div // Cargo los ID's de los arrays que se convierten en "scrollables" var scrollDivs=new Array();