public function blogMenu($menuData) { $minus = false; function endKey($array) { end($array); return key($array); } foreach ($menuData as $key => $value) { $last = $this->db->prepare('SELECT sort_no FROM menus WHERE blog_id=? ORDER BY sort_no DESC LIMIT 1', array($this->_blogData['blog_id']))->execute()->fetchAllAssoc()[0]['sort_no']; if (empty($value['text']) && empty($value['page'])) { $this->db->prepare("DELETE FROM menus WHERE blog_id=? AND sort_no=?", array($this->_blogData['blog_id'], $key))->execute(); if (endKey($menuData) != $key) { $this->db->prepare("DELETE FROM menus WHERE blog_id=? AND sort_no=?", array($this->_blogData['blog_id'], $last))->execute(); } $minus = true; } if ($minus == true) { $key = $key - 1; } $result = $this->db->prepare("SELECT sort_no FROM menus WHERE blog_id=? AND sort_no=?", array($this->_blogData['blog_id'], $key))->execute()->fetchAllAssoc()[0]; if (!$result && !empty($value['text'])) { if (!$value['link']) { $value['link'] = null; } $this->db->prepare("INSERT INTO menus (user_id, blog_id, sort_no, text, page, link) VALUES (?, ?, ?, ?, ?, ?)", array($this->app->getSession()->user_id, $this->_blogData['blog_id'], $key, $value['text'], $value['page'], $value['link']))->execute(); } else { if ($result && !empty($value['text'])) { $this->db->prepare("UPDATE menus SET text=?, page=?, link=? WHERE sort_no=? AND blog_id=?", array($value['text'], $value['page'], $value['link'], $key, $this->_blogData['blog_id']))->execute(); } } header("Refresh:0"); } }
$domElement->parentNode->removeChild($domElement); // clean the list } $remove = array(); $items = $dom->getElementsByTagName('item'); //OMDB foreach ($items as $item) { $title = $item->getElementsByTagName('title')->item(0)->nodeValue; $arr = explode(".", $title); $year = preg_grep('/^\\d{4}$/', $arr); //attempt to find year of release (needed by OMDB) if (empty($year)) { $remove[] = $item; continue; } $key = count($year) > 1 ? endKey($year) : key($year); // year film may have been released if ($year[$key] <= 2012) { // crude attempt to avoid remastered/classic releases in favour of potential remakes (needs work) $remove[] = $item; continue; } //contitions passed, request data from OMDB $name = implode(" ", array_slice($arr, 0, $key)); $data = http_build_query(array("y" => $year[$key], "t" => $name), "", "&"); $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, "http://www.omdbapi.com/?" . $data); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); $omdb = curl_exec($ch); @curl_close($ch); //error checks
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; }
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; } }