function dame_proceso_json($nombre)
{
    $proceso = dame_proceso($nombre);
    if ($proceso) {
        if ($proceso['formato'] === "iso_12207") {
            $proceso_json = array();
            $proceso_json += array("proceso" => $proceso["proceso"]);
            $proceso_json += array("id" => $proceso["p_id"]);
            $proceso_json += array("notas_proceso" => array());
            $proceso_json += array("proposito" => $proceso["proposito_0"]);
            $proceso_json += array("resultados" => array());
            $proceso_json += array("actividades" => array());
            foreach ($proceso as $key => $value) {
                if ($key[0] === "a") {
                    $proceso_json["actividades"][$key] = array();
                    array_push($proceso_json["actividades"][$key], $value);
                    // $proceso_json["actividades"][$key]["tareas"] = array();
                }
                if ($key[0] === "t") {
                    $proceso_json["actividades"][endKey($proceso_json["actividades"])][$key] = array();
                    array_push($proceso_json["actividades"][endKey($proceso_json["actividades"])][$key], $value);
                    $proceso_json["actividades"][endKey($proceso_json["actividades"])][$key]["notas"] = array();
                    $proceso_json["actividades"][endKey($proceso_json["actividades"])][$key]["opciones"] = array();
                }
                if (strpos($key, "nota_tarea_") !== false) {
                    $f = endKey($proceso_json["actividades"]);
                    $f2 = endKey($proceso_json["actividades"][$f]);
                    array_push($proceso_json["actividades"][$f][$f2]["notas"], $value);
                }
                if (strpos($key, "nota_num") !== false) {
                    array_push($proceso_json["notas_proceso"], $value);
                }
                if (strpos($key, "resultado") !== false) {
                    array_push($proceso_json["resultados"], $value);
                }
                if (strpos($key, "opcion") !== false) {
                    $f = endKey($proceso_json["actividades"]);
                    $f2 = endKey($proceso_json["actividades"][$f]);
                    array_push($proceso_json["actividades"][$f][$f2]["opciones"], $value);
                }
            }
        } else {
            if ($proceso['formato'] === "iso_29110") {
                $proceso_json = array();
                $proceso_json += array("proceso" => $proceso["proceso"]);
                $proceso_json += array("id" => $proceso["p_id"]);
                $proceso_json += array("proposito" => $proceso["p_proposito"]);
                $proceso_json += array("objetivos" => array());
                $proceso_json += array("roles" => array());
                $proceso_json += array("productos_entrada" => array());
                $proceso_json += array("productos_salida" => array());
                $proceso_json += array("productos_interno" => array());
                $proceso_json += array("actividades" => array());
                foreach ($proceso as $key => $value) {
                    if (strpos($key, "obj") !== false) {
                        array_push($proceso_json["objetivos"], $value);
                    }
                    if (strpos($key, "rol_") !== false && strpos($key, "_abr_") === false && strpos($key, "_rol_") === false) {
                        //$proceso_json["roles"][$key]
                        // if(strpos($key, "_abr_") === false && strpos($key, "_rol_") === false ){
                        $proceso_json["roles"][$key] = array();
                        array_push($proceso_json["roles"][$key], $value);
                        // }
                        // array_push($proceso_json["roles"], $value);
                    }
                    if (strpos($key, "rol_abr_") !== false) {
                        $f = endKey($proceso_json["roles"]);
                        array_push($proceso_json["roles"][$f], $value);
                    }
                    if (strpos($key, "pent_nombre_") !== false) {
                        $proceso_json["productos_entrada"][$key] = array();
                        array_push($proceso_json["productos_entrada"][$key], $value);
                    }
                    if (strpos($key, "pent_fuente_") !== false) {
                        $f = endKey($proceso_json["productos_entrada"]);
                        array_push($proceso_json["productos_entrada"][$f], $value);
                    }
                    if (strpos($key, "psal_nombre_") !== false) {
                        $proceso_json["productos_salida"][$key] = array();
                        array_push($proceso_json["productos_salida"][$key], $value);
                    }
                    if (strpos($key, "psal_destino_") !== false) {
                        $f = endKey($proceso_json["productos_salida"]);
                        array_push($proceso_json["productos_salida"][$f], $value);
                    }
                    if (strpos($key, "pint_") !== false) {
                        array_push($proceso_json["productos_interno"], $value);
                    }
                    if ($key[0] === "a") {
                        $proceso_json["actividades"][$key] = array();
                        array_push($proceso_json["actividades"][$key], $value);
                        // $proceso_json["actividades"][$key]["tareas"] = array();
                    }
                    if (strpos($key, "tar_nombre_") !== false) {
                        // $proceso_json["actividades"][endKey($proceso_json["actividades"])][$key] = array();
                        // array_push($proceso_json["actividades"][endKey($proceso_json["actividades"])][$key], $value);
                        $proceso_json["actividades"][endKey($proceso_json["actividades"])][$key] = array();
                        // $proceso_json["actividades"][endKey($proceso_json["actividades"])][$key]["tar_roles"] = array();
                        // $proceso_json["actividades"][endKey($proceso_json["actividades"])][$key]["tar_pent"] = array();
                        // $proceso_json["actividades"][endKey($proceso_json["actividades"])][$key]["tar_psal"] = array();
                        array_push($proceso_json["actividades"][endKey($proceso_json["actividades"])][$key], $value);
                    }
                    if (strpos($key, "tar_rol_") !== false) {
                        $f = endKey($proceso_json["actividades"]);
                        $f2 = endKey($proceso_json["actividades"][$f]);
                        array_push($proceso_json["actividades"][$f][$f2], $value);
                    }
                    if (strpos($key, "tar_pent_") !== false) {
                        $f = endKey($proceso_json["actividades"]);
                        $f2 = endKey($proceso_json["actividades"][$f]);
                        array_push($proceso_json["actividades"][$f][$f2], $value);
                    }
                    if (strpos($key, "tar_psal_") !== false) {
                        $f = endKey($proceso_json["actividades"]);
                        $f2 = endKey($proceso_json["actividades"][$f]);
                        array_push($proceso_json["actividades"][$f][$f2], $value);
                    }
                }
            }
        }
        if ($proceso["formato"] === "libro") {
            $proceso_json = array();
            $proceso_json += array("proceso" => $proceso["proceso"]);
            $proceso_json += array("id" => $proceso["p_id"]);
            $proceso_json += array("objetivo_general" => $proceso["p_objetivo"]);
            $proceso_json += array("objetivos_especificios" => array());
            $proceso_json += array("actividades" => array());
            $proceso_json += array("roles" => array());
            $proceso_json += array("productos" => array());
            foreach ($proceso as $key => $value) {
                if (strpos($key, "obj_") !== false) {
                    array_push($proceso_json["objetivos_especificios"], $value);
                }
                if (strpos($key, "act_") !== false) {
                    array_push($proceso_json["actividades"], array());
                    $proceso_json["actividades"][endKey($proceso_json["actividades"])] += array("descripcion" => $value);
                    $proceso_json["actividades"][endKey($proceso_json["actividades"])] += array("metodos" => array());
                }
                if (strpos($key, "met") !== false) {
                    array_push($proceso_json["actividades"][endKey($proceso_json["actividades"])]["metodos"], $value);
                }
                if (strpos($key, "rol_desc") !== false) {
                    array_push($proceso_json["roles"], array());
                    $proceso_json["roles"][endKey($proceso_json["roles"])] += array("rol" => $value);
                }
                if (strpos($key, "rol_nombre") !== false) {
                    $proceso_json["roles"][endKey($proceso_json["roles"])] += array("rol_nombre" => $value);
                }
                if (strpos($key, "prod") !== false) {
                    array_push($proceso_json["productos"], $value);
                }
            }
            $proceso_json["objetivos_especificios"] = array_reverse($proceso_json["objetivos_especificios"]);
            $proceso_json["actividades"] = array_reverse($proceso_json["actividades"]);
            $proceso_json["roles"] = array_reverse($proceso_json["roles"]);
            $proceso_json["productos"] = array_reverse($proceso_json["productos"]);
        }
    } else {
        echo "Error al seleccionar la fila del proceso en la base de datos";
    }
    return $proceso_json;
}
Exemple #2
0
<?php

include "base.php";
include "jsonificador.php";
$proceso = dame_proceso($_GET["nombre"]);
$proceso_json = dame_proceso_json($_GET["nombre"]);
echo "<body><div class=\"container\">";
if ($proceso["formato"] === "iso_12207") {
    // print_r($proceso_json);
    echo "\n            <div class=\"page-header\">\n                <h3>\n                    " . $proceso_json["id"] . " " . $proceso_json["proceso"] . "\n                </h3>\n            </div>";
    echo "<div class=\"list-group\">\n                <li class=\"list-group-item\">\n                    <h4>Notas</h4>";
    foreach ($proceso_json["notas_proceso"] as $key => $notas) {
        echo "<h5>" . $notas . "</h5>";
    }
    echo "</li>";
    echo "<div class=\"list-group\">\n                <li class=\"list-group-item\">\n                    <h4>" . $proceso_json["id"] . ".1 " . "Proposito</h4>\n                    <h5>" . $proceso_json["proposito"] . "</h5>\n                </li>\n            ";
    echo "  <li class=\"list-group-item\">\n                    <h4>" . $proceso_json["id"] . ".2 " . "Resultados</h4>";
    foreach ($proceso_json["resultados"] as $key => $resultado) {
        echo "<h4>" . $key . ") " . $resultado . "</h4>";
    }
    echo "</li>";
    echo "<li class=\"list-group-item\">\n                <h4>" . $proceso_json["id"] . ".3 " . "Actividades</h4>";
    foreach ($proceso_json["actividades"] as $key_act => $value_act) {
        // key_act es cada actividad (act_0)
        // print_r($value_act[1]);
        $cont = 1;
        foreach ($value_act as $key => $value) {
            // $value act es el array de la actividad
            // key es la key de lo que tiene cada actividad
            if ($key === 0) {
                echo "<h5>" . $proceso_json["id"] . ".3." . key($proceso_json["actividades"][$key_act]) . " " . $value_act[0] . "</h5>";
function dame_proceso_json($nombre)
{
    $proceso = dame_proceso($nombre);
    if ($proceso) {
        if ($proceso['formato'] === "iso_12207") {
            $proceso_json = array();
            $proceso_json += array("proceso" => $proceso["proceso"]);
            $proceso_json += array("id" => $proceso["p_id"]);
            $proceso_json += array("notas_proceso" => array());
            $proceso_json += array("proposito" => $proceso["proposito_0"]);
            $proceso_json += array("resultados" => array());
            $proceso_json += array("actividades" => array());
            foreach ($proceso as $key => $value) {
                if ($key[0] === "a") {
                    $proceso_json["actividades"][$key] = array();
                    array_push($proceso_json["actividades"][$key], $value);
                    // $proceso_json["actividades"][$key]["tareas"] = array();
                }
                if ($key[0] === "t") {
                    $proceso_json["actividades"][endKey($proceso_json["actividades"])][$key] = array();
                    array_push($proceso_json["actividades"][endKey($proceso_json["actividades"])][$key], $value);
                    $proceso_json["actividades"][endKey($proceso_json["actividades"])][$key]["notas"] = array();
                    $proceso_json["actividades"][endKey($proceso_json["actividades"])][$key]["opciones"] = array();
                }
                if (strpos($key, "nota_tarea_") !== false) {
                    $f = endKey($proceso_json["actividades"]);
                    $f2 = endKey($proceso_json["actividades"][$f]);
                    array_push($proceso_json["actividades"][$f][$f2]["notas"], $value);
                }
                if (strpos($key, "nota_num") !== false) {
                    array_push($proceso_json["notas_proceso"], $value);
                }
                if (strpos($key, "resultado") !== false) {
                    array_push($proceso_json["resultados"], $value);
                }
                if (strpos($key, "opcion") !== false) {
                    $f = endKey($proceso_json["actividades"]);
                    $f2 = endKey($proceso_json["actividades"][$f]);
                    array_push($proceso_json["actividades"][$f][$f2]["opciones"], $value);
                }
            }
        }
        if ($proceso["formato"] === "libro") {
            $proceso_json = array();
            $proceso_json += array("proceso" => $proceso["proceso"]);
            $proceso_json += array("id" => $proceso["p_id"]);
            $proceso_json += array("objetivo_general" => $proceso["p_objetivo"]);
            $proceso_json += array("objetivos_especificios" => array());
            $proceso_json += array("actividades" => array());
            $proceso_json += array("roles" => array());
            $proceso_json += array("productos" => array());
            foreach ($proceso as $key => $value) {
                if (strpos($key, "obj_") !== false) {
                    array_push($proceso_json["objetivos_especificios"], $value);
                }
                if (strpos($key, "act_") !== false) {
                    array_push($proceso_json["actividades"], array());
                    $proceso_json["actividades"][endKey($proceso_json["actividades"])] += array("descripcion" => $value);
                    $proceso_json["actividades"][endKey($proceso_json["actividades"])] += array("metodos" => array());
                }
                if (strpos($key, "met") !== false) {
                    array_push($proceso_json["actividades"][endKey($proceso_json["actividades"])]["metodos"], $value);
                }
                if (strpos($key, "rol_desc") !== false) {
                    array_push($proceso_json["roles"], array());
                    $proceso_json["roles"][endKey($proceso_json["roles"])] += array("rol" => $value);
                }
                if (strpos($key, "rol_nombre") !== false) {
                    $proceso_json["roles"][endKey($proceso_json["roles"])] += array("rol_nombre" => $value);
                }
                if (strpos($key, "prod") !== false) {
                    array_push($proceso_json["productos"], $value);
                }
            }
            $proceso_json["objetivos_especificios"] = array_reverse($proceso_json["objetivos_especificios"]);
            $proceso_json["actividades"] = array_reverse($proceso_json["actividades"]);
            $proceso_json["roles"] = array_reverse($proceso_json["roles"]);
            $proceso_json["productos"] = array_reverse($proceso_json["productos"]);
        }
        return $proceso_json;
    }
}