256) { $content_has_error = true; $content_error_message_key = "error.content.tags.length"; goto content_end; } // Extracting the additional tags safely $raw_additional_tags_exploded = explode(";", $raw_additional_tags); for($i = 0; $i < count($raw_additional_tags_exploded); $i++) { if(strlen($raw_additional_tags_exploded[$i]) > 0) { if(ctype_alnum($raw_additional_tags_exploded[$i])) { $requested_tags[] = $raw_additional_tags_exploded[$i]; } else { $content_has_error = true; $content_error_message_key = "error.content.tags.alphanumeric"; goto content_end; } } } unset($raw_additional_tags_exploded); } // Loading the content index. $content_json = file_get_contents(realpath($dir_content . "/index.json")); $content_index_data = json_decode($content_json, true); unset($content_json); // Filtering out unwanted entries. $filtered_content_index_data = array(); for($i = 0; $i < count($content_index_data); $i++) { if(count(array_intersect($content_index_data[$i]["tags"], $requested_tags)) == count($requested_tags)) { $filtered_content_index_data[] = $content_index_data[$i]; } } // Cleaning some variables. unset($content_index_data); unset($content_json); // Checking if we found content for the user. if(count($filtered_content_index_data) == 0) { // No relevant article/page were found for the given tags. $content_has_error = true; $content_error_message_key = "error.content.detect.empty"; goto content_end; } } else if($requested_content_display_type == ContentDisplayType::CONTENT) { // Sanitizing the requested ID. if(!ctype_alnum(str_replace("-", "", $content_requested_url_part))) { $content_has_error = true; $content_error_message_key = "error.content.id.alphanumeric"; goto content_end; } // Loading the content's data $content_file_path = get_content_file_path($content_requested_url_part); if(empty($content_file_path)) { // File doesn't exist ! $content_has_error = true; $content_error_message_key = "error.content.data.not.exist"; unset($content_file_path); goto content_end; } else { $content = load_content_by_file_path($content_file_path); if(is_null($content)) { $content_has_error = true; $content_error_message_key = "error.content.cannot.load"; unset($content_file_path); goto content_end; } } unset($content_file_path); } content_end: // TODO: Create error thingy $content_error_message = localize($content_error_message_key); // These functions are placed here to prevent the main file from becoming impossible to read. function start_content_card($iconClasses, $title, $subTitle) { echo('
'); echo('

  '.localize($title)); echo(''.$subTitle.'

'); echo('
'); } function end_content_card() { echo('
'); } /* switch($elementNode["type"]) { case "image": // Parsing properties. $_imgAlt = ""; $_imgSource = "/resources/Azias/imgs/placeholder.png"; if(array_key_exists("alt", $elementNode)) { $_imgAlt = $elementNode["alt"]; } if(array_key_exists("src", $elementNode)) { $_imgSource = $elementNode["src"]; } // Reading and processing the modifiers. $_modFillHeight = false; if(array_key_exists("modifiers", $elementNode)) { for ($i = 0; $i < count($elementNode["modifiers"]); $i++) { if ($elementNode["modifiers"][$i] == "fill-height") { $_modFillHeight = true; } } } // Adding element. echo(''.$_imgAlt.''); break; case "slider": case "glider": case "gallery": // Starting the gallery echo('
'); echo('
'); echo('
'); echo('
'); // Adding content. processStandardContentSubNode($elementNode, "
", "
"); // Ending the gallery echo('
'); echo('
'); break; }/**/ ?>