function parametrizacion_categoria($perfil, $accion, $div, $form) { $respuesta = new xajaxResponse('utf-8'); $nombre = remplacetas('form_id', 'id', $perfil, 'nombre'); $categorias = lista_categorias($perfil, $categoria, $tipo); if ($accion == 'categorias') { $resultado = "\n\t\t<br>\n\t\t<p>La categorización se usa para filtrar los datos de un formulario en categorias que pueden ser usadas por ejemplo para diferenciar los datos en un mapa. \n\t\t<strong>Es necesario que el formulario que se va a categorizar tenga multiples datos grabados en el campo que se categoriza </strong> </p>\n\t\t{$categorias} \n\t\t<form id='form_parametrizacion_categoria' name='form_parametrizacion_categoria' role='form' >\n\t\t<input type='hidden' value='{$perfil}' id='perfil' name ='perfil'>\n\t\t<input type='hidden' value='categoria' id='tipo' name ='tipo'>\n\t\t<div id='parametrizacion'></div>\t\n\t\t\t<label for='icon'>Icono para la categoría</label>\n\t\t\t<div class='input-group'>\n\t\t\t\t\n\t\t\t\t<span class='input-group-addon'>URL</span>\n\t\t\t<input class='form-control' id='icon' name='icon' type='text'>\n\t\t\t</div>\n\t\t\t<br>\n\t\t\t<div id='parametrizacion_validacion' name='parametrizacion_validacion' ></div>\n\t\t\t<div class='btn btn-default btn-block' onclick=\"xajax_parametrizacion_categoria('{$perfil}','grabar','{$div}',xajax.getFormValues('form_parametrizacion_categoria')) \" >Grabar</div>\n\t\t</form>\n\t"; $respuesta->addAssign($div, "innerHTML", $resultado); $respuesta->addScript("xajax_formulario_campos_select('{$perfil}','parametrizacion')"); return $respuesta; } elseif ($accion == 'grabar') { if ($form[tipo] == 'categoria') { $url_icon = "{$form['icon']}"; $es_imagen = es_imagen("{$url_icon}"); $altura = GetImageSize($url_icon); $altura = $altura[1]; if ($form[id_campo] == '') { $error = "Seleccione un campo"; } elseif ($form[campo_filtro] == '') { $error = "Seleccione Filtro"; } elseif (!$es_imagen) { $error = " [ {$url_icon} ] no es una imagen válida para el ícono"; } elseif ($altura > 500) { $error = " El ícono no debe tener mas de 300 pixeles de alto."; } elseif ($form[icon] == '') { $error = "Escriba la dirección del ícono"; } else { $error = ''; } if ($error != '') { $respuesta->addAlert("{$error} {$revisar_url} "); return $respuesta; } else { $categoria_icono[tabla] = "form_id"; $categoria_icono[campo] = "{$form['perfil']}"; $categoria_icono[opcion] = "{$form['tipo']}:icon:{$form['campo_filtro']}"; $categoria_icono[descripcion] = "{$url_icon}"; $categoria_icono[visible] = "1"; $categoria_icono[accion] = "grabar"; $grabar_icono = parametrizacion($categoria_icono); $categoria_campo[tabla] = "form_id"; $categoria_campo[campo] = "{$form['perfil']}"; $categoria_campo[opcion] = "{$form['tipo']}:campo"; $categoria_campo[descripcion] = "{$form['id_campo']}"; $categoria_campo[visible] = "1"; $categoria_campo[accion] = "grabar"; $grabar_campo = parametrizacion($categoria_campo); $categoria_filtro[tabla] = "form_id"; $categoria_filtro[campo] = "{$form['perfil']}"; $categoria_filtro[opcion] = "{$form['tipo']}:filtro:{$form['id_campo']}"; $categoria_filtro[descripcion] = "{$form['campo_filtro']}"; $categoria_filtro[visible] = "1"; $categoria_filtro[accion] = "grabar"; $grabar_filtro = parametrizacion($categoria_filtro); $resultado = " <img src='{$url_icon}'> {$form['campo_filtro']} {$form['id_campo']} ({$altura} ) [{$grabar_icono}]"; $respuesta->addAssign($div, "innerHTML", $resultado); return $respuesta; } } /// fin de parametrizacion categorias } }
function formulario_parametrizacion($perfil, $accion, $div, $form) { $respuesta = new xajaxResponse('utf-8'); $nombre = remplacetas('form_id', 'id', $perfil, 'nombre'); if ($accion == 'categorias') { $resultado = "\n\t\t<h2>Categorización </h2><h3> {$nombre['0']}</h3>\n\t\t<form id='parametrizacion_form' name='parametrizacion_form' role='form' >\n\t\t<input type='hidden' value='{$perfil}' id='perfil' name ='perfil'>\n\t\t<input type='hidden' value='categoria' id='tipo' name ='tipo'>\n\t\t<div id='parametrizacion'></div>\t\n\t\t\t<label for='icon'>Icono para la categoría</label>\n\t\t\t<div class='input-group'>\n\t\t\t\t\n\t\t\t\t<span class='input-group-addon'>http://</span>\n\t\t\t<input class='form-control' id='icon' name='icon' type='text'>\n\t\t\t</div>\n\t\t\t<br>\n\t\t\t<div id='parametrizacion_validacion' name='parametrizacion_validacion' ></div>\n\t\t\t<div class='btn btn-success btn-block' onclick=\"xajax_formulario_parametrizacion('{$perfil}','grabar','parametrizacion_validacion',xajax.getFormValues('parametrizacion_form')) \" >Grabar</div>\n\t\t</form>\n\t"; $respuesta->addAssign($div, "innerHTML", $resultado); $respuesta->addScript("xajax_formulario_campos_select('{$perfil}','parametrizacion')"); return $respuesta; } elseif ($accion == 'grabar') { if ($form[tipo] == 'categoria') { $url_icon = "http://{$form['icon']}"; $es_imagen = es_imagen("{$url_icon}"); $altura = GetImageSize($url_icon); $altura = $altura[1]; if ($form[id_campo] == '') { $error = "Seleccione un campo"; } elseif ($form[campo_filtro] == '') { $error = "Seleccione Filtro"; } elseif (!$es_imagen) { $error = " [ {$url_icon} ] no es una imagen válida para el ícono"; } elseif ($altura > 150) { $error = " El ícono no debe tener mas de 150 pixeles de alto."; } elseif ($form[icon] == '') { $error = "Escriba la dirección del ícono"; } else { $error = ''; } if ($error != '') { $respuesta->addAlert("{$error} {$revisar_url} "); return $respuesta; } else { $categoria_icono[tabla] = "form_id"; $categoria_icono[campo] = "{$form['perfil']}"; $categoria_icono[opcion] = "{$form['tipo']}:icon:{$form['campo_filtro']}"; $categoria_icono[descripcion] = "{$url_icon}"; $categoria_icono[visible] = "1"; $categoria_icono[accion] = "grabar"; $grabar_icono = parametrizacion($categoria_icono); $categoria_campo[tabla] = "form_id"; $categoria_campo[campo] = "{$form['perfil']}"; $categoria_campo[opcion] = "{$form['tipo']}:campo"; $categoria_campo[descripcion] = "{$form['id_campo']}"; $categoria_campo[visible] = "1"; $categoria_campo[accion] = "grabar"; $grabar_campo = parametrizacion($categoria_campo); $categoria_filtro[tabla] = "form_id"; $categoria_filtro[campo] = "{$form['perfil']}"; $categoria_filtro[opcion] = "{$form['tipo']}:filtro:{$form['id_campo']}"; $categoria_filtro[descripcion] = "{$form['campo_filtro']}"; $categoria_filtro[visible] = "1"; $categoria_filtro[accion] = "grabar"; $grabar_filtro = parametrizacion($categoria_filtro); $resultado = " <img src='{$url_icon}'> {$form['campo_filtro']} {$form['id_campo']} ({$altura} ) [{$grabar_icono}]"; $respuesta->addAssign($div, "innerHTML", $resultado); return $respuesta; } } /// fin de parametrizacion categorias } else { $listado = "<h2>Listado de parametrizaciones</h2><h3> {$nombre['0']}</h3>\n\t\t<ul class='list-group' >\n\t\t\t<a onclick=\"xajax_formulario_parametrizacion('{$perfil}','categorias','{$div}') \" class='list-group-item btn'>Categorización</a>\n\t\t</ul>\t\t\n\t\t\t"; $respuesta->addAssign($div, "innerHTML", $listado); return $respuesta; } $link = Conectarse(); mysql_query("SET NAMES 'utf8'"); $consulta = "\n\tSELECT md5(binary contenido) as md5_contenido, contenido FROM form_datos\n\tWHERE form_id = '{$perfil}' \n\tAND id_campo = '{$campo}'\n\tGROUP BY contenido \n\tORDER BY contenido asc"; $sql = mysql_query($consulta, $link); if (mysql_num_rows($sql) != '0') { $resultado = "<label for='id_campo'>Filtro</label>\n\t\t\t\t\t\t<select class='form-control' name='campo_filtro' id='campo_filtro' >\n\t\t\t\t\t\t\t<option value=''>Todos</option>"; while ($row = mysql_fetch_array($sql)) { $resultado .= "\t\t<option value='{$row['md5_contenido']}' title=''>{$row['contenido']}</option>"; } $resultado .= "\t</select >"; } else { $resultado = 'nada'; } if ($div != "") { $respuesta->addAssign($div, "innerHTML", $resultado); return $respuesta; } else { return $resultado; } }