<?php	
/*
	CMS ,,Black Min''  Został stworzony przez di_Timonix'a
	
	ten plik służy do opsługi i zarządzania sekcji head w arkuszu html
	
	Black Min cms,
	
	#plik: 1.0
*/


	class head_bm extends get_ustawienia_bm {
		//global $ustawienia_bm, $black_min, $status_bm;
		public $get_ustawienia;
			//$bm_nazwa_strony = $ustawienia_bm["bm_wartosc"][2];
			//$bm_opis_strony = $ustawienia_bm["bm_wartosc"][3];
			//$bm_icon_ico = $ustawienia_bm["bm_wartosc"][4];
		
		// tworzenie zmienych odpowiedzialnych za dodawanie nowych zawartośći do head
		var $add_to_head = "";
		var $add_to_title = "";
		var $add_description = "";
		var $add_keywords = "";
		var $set_icon = "";
		var $set_icon_ico = "";
		var $set_robots = "";
		var $add_css = "";
		var $add_script = "";
		
		// funkcjia do dodawania znaczników do head
		function add_to_head($add) {
			//array_push($this->add_to_head, $add);
			$this->add_to_head .= $add. " \n ";
		}
		
		// funkcjia do dodawania tytułu strony
		function add_to_title($add) {
			//array_push($this->add_to_title, $add);
			$this->add_to_title .= $add;
			//return true;
		}
		
		// funkcjia do dodowania opisu strony
		function add_description($add) {
			$this->add_description .= $add. " ";
		}
		
		// funkcjia do dodawania słów kluczowych do strony
		function add_keywords($add) {
			$this->add_keywords .= $add. " ";
		}
		
		// funkcja do ustawienia ikony strony
		function set_icon($set) {
			
			if ($set == NULL){
				global $ustawienia_bm;
				$bm_icon = $ustawienia_bm["bm_wartosc"][5];
			
				$this->set_icon = $bm_icon;
			}else{
				$this->set_icon = $set;
			}
		}
		
		// funkcja do ustawienia ikony strony
		function set_icon_ico($set) {
			
			if ($set == NULL){
				global $ustawienia_bm;
				$bm_icon_ico = $ustawienia_bm["bm_wartosc"][4];
			
				$this->set_icon_ico = $bm_icon_ico;
			}else{
				$this->set_icon_ico = $set;
			}			
		}
		
		// funkcjia do ustawiania robotów pozwalającym się poruszać po stronie
		function set_robots($set) {
			//$this->add_to_head .= $add. " \n ";
			if ($set == NULL){
				global $ustawienia_bm;
				$set_robots = robots_bm();
			
				$this->set_robots = $set_robots;
			}else{
				$this->set_robots = $set;
			}	
		}
		
		// funkcja do dodawania zasobów css do strony
		function add_css($add, $flaga) {
			
			if ($add == "load_jquery_ui"){
				global $ustawienia_bm;
				$url_serwera_bm = $ustawienia_bm["bm_wartosc"][0];
			
				$this->add_css = '<link rel="stylesheet" href="'.$url_serwera_bm.'files/global/jquery/jquery-ui.css" />'. " \n ";
			}else{
				if($flaga == "bm" OR $flaga == "black_min" OR $flaga == "blackmin"){
					$this->add_css .= '<link rel="stylesheet" href="'. $add .'">'. " \n ";
				}else{
					$this->add_css .= '<link rel="stylesheet" href="'.url_serwer_bm(). "a/motywy/" . bm_active_theme() . "/" . $add .'">'. " \n ";
				}
			}	
		}
		
		// funkcjia do dodawania zasobów javascript do strony
		function add_script($add, $flaga) {
			
			if ($add == "load_jquery"){
				global $ustawienia_bm;
				$url_serwera_bm = $ustawienia_bm["bm_wartosc"][0];
			
				$this->add_script .= '<script src="'.$url_serwera_bm.'/files/global/jquery/jquery.min.js"></script>'. " \n ";
			}else if($add == "load_jquery_ui"){
				global $ustawienia_bm;
				$url_serwera_bm = $ustawienia_bm["bm_wartosc"][0];
			
				$this->add_script .= '<script src="'.$url_serwera_bm.'/files/global/jquery/jquery-ui.min.js"></script>'. " \n ";
			}else{
				if($flaga == "bm" OR $flaga == "black_min" OR $flaga == "blackmin"){
					$this->add_script .= '<script src="'. $add .'"></script>'. " \n ";
				}else{
					$this->add_script .= '<script src="'.url_serwer_bm(). "a/motywy/" . bm_active_theme() . "/" . $add .'"></script>'. " \n ";
				}	
			}	
		}
		
		// funkcja odpowiedzialna za generowanie wyniku seo i ładowanie jej do strony
		function load_head() {
			// inportowanie zmienych do zmienych globalnych			
			global $ustawienia_bm, $black_min, $status_bm, $prefix_table, $url_serwera_bm, $host, $db_user, $db_password, $db_name;
			$url_serwera_bm = $ustawienia_bm["bm_wartosc"][0];
			$bm_nazwa_strony = $ustawienia_bm["bm_wartosc"][2];
			$bm_opis_strony = $ustawienia_bm["bm_wartosc"][3];
			$bm_icon_ico = $ustawienia_bm["bm_wartosc"][4];
			$bm_icon = $ustawienia_bm["bm_wartosc"][5];
			$bm_slowa_kluczowe = $ustawienia_bm["bm_wartosc"][9];
			$bm_jezyk_witryny = $ustawienia_bm["bm_wartosc"][14];
			
			$sc1 = '<script src="'.$url_serwera_bm.'/files/global/jquery/jquery.min.js"></script>';
			$sc2 = '<script src="'.$url_serwera_bm.'/files/global/jquery/jquery-ui.min.js"></script>';
			$sc3 = '<link rel="stylesheet" href="'.$url_serwera_bm.'/files/global/jquery/jquery-ui.css" />	';
			
			// ładowanie pliku odpowiedzialnego za inpretetacjie kodu napisanego przez autora posta
			$this->add_script .= '<script src="'.url_serwer_bm(). "files/js/" .'blackmin_extention.js"></script>'. " \n ";
			$this->add_css .= '<link rel="stylesheet" href="'.url_serwer_bm().'files/css/default-style-theme-blackmin.css" />'. " \n ";

			// tworzenie zmienych odpowieddzialnych za przechowywanie onformcji o pluginac
			$nazwa_pluginu = [];
			$wartosc_pluginu = [];

			// pobieranie z bazy danych aktywnych pluginów(widżetów) do zastosowania ich na stronie
			mysqli_report(MYSQLI_REPORT_STRICT);
			
			try 
			{
				$polaczenie = new mysqli($host, $db_user, $db_password, $db_name);
				if ($polaczenie->connect_errno!=0)
				{
					throw new Exception(mysqli_connect_errno());
				}
				else
				{
					
					mysqli_query($polaczenie, "SET CHARSET utf8");
					mysqli_query($polaczenie, "SET NAMES 'utf8' COLLATE 'utf8_unicode_ci'");	
	
						if ($rezultat = $polaczenie->query(
						sprintf("SELECT * FROM `".$prefix_table."bm_postmeta` WHERE `bm_kontent` LIKE 'biblioteka'")
						 ))
						{
						
							$ile_aktywnych_pluginow = mysqli_num_rows($rezultat);
							
							for ($i = 0; $i < $ile_aktywnych_pluginow; $i++) {
							
								$row = mysqli_fetch_assoc($rezultat);
								$nazwa_biblioteki = $row['bm_nazwa'];
								$wartosc_biblioteki = $row['bm_wartosc'];
								
								// rozbjiane tekstu zrozumiałego dla black mina na tablice
								$biblioteki = explode(",", $wartosc_biblioteki);
								
								if($biblioteki[0] === "ON"){
									$this->add_script("a/biblioteki/".$nazwa_biblioteki."/library.js" , "blackmin");
								}
								
							}
			
						};		

						if ($rezultat = $polaczenie->query(
						sprintf("SELECT * FROM `".$prefix_table."bm_postmeta` WHERE `bm_kontent` LIKE 'skrypt'")
						 ))
						{
						
							$ile_aktywnych_pluginow = mysqli_num_rows($rezultat);
							
							for ($i = 0; $i < $ile_aktywnych_pluginow; $i++) {
							
								$row = mysqli_fetch_assoc($rezultat);
								$nazwa_skryptu = $row['bm_nazwa'];
								$wartosc_skryptu = $row['bm_wartosc'];
								
								// rozbjiane tekstu zrozumiałego dla black mina na tablice
								$scriptse = explode(",", $wartosc_skryptu);
								
								if($scriptse[0] === "ON"){
									$this->add_script("a/skrypty/".$nazwa_skryptu."/script.js" , "blackmin");
								}
								
							}
			
						};	
					
					$polaczenie->close();
				}
				
			}
			
			catch(Exception $e)
			{
				echo '<span style="color:red;">Błąd serwera! Przepraszamy za niedogodności i prosimy o powtórzenie działań w innym terminie!</span>';
			}	
			
			//global $get_ustawienia;
			//echo $get_ustawienia;
			///var_dump($get_ustawienia);
			
			//global $add_to_title ;
			//echo $add_to_title ;
			//echo $this->add_to_title;
			//var_dump($add_to_title);
			
			// zliczanie ile danych zostało dodane do tablicy
			//$zlicz_head = count($this->add_to_head);
ECHO<<<END
	<!-- roszerzenie aplikacj strony KODOWANIE -->
	<meta charset="utf-8" />
	<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1" />
    <meta http-equiv="Content-Script-Type" content="text/javascript">
	<!-- Koniec roszerzenia aplikacj strony KODOWANIE -->
	<!-- Rozpoczynane Znaczników meta i seo, favicon -->
	<meta name="viewport" content="width=1900">
	<title>$this->add_to_title $bm_nazwa_strony - $black_min</title>
	<meta name="title" content="$this->add_to_title $bm_nazwa_strony - $black_min">
    <meta name="description" content="$this->add_description $bm_opis_strony">
	<meta name="Keywords" content="$this->add_keywords $bm_slowa_kluczowe">
    <meta property="og:title" content="$this->add_to_title $bm_nazwa_strony - $black_min">
    <meta property="og:site_name" content="		">
    <meta property="og:description" content="$this->add_description $bm_opis_strony">
	<meta property="og:keywords" content="$this->add_keywords $bm_slowa_kluczowe">
    <meta property="og:url" content="		">
	<link rel="shortcut icon" type="image/x-icon" href="$this->set_icon_ico"/>               
	<link rel="icon" type="image/png" href="$this->set_icon" />
    <meta property="og:image" content="$this->set_icon">
    <meta property="og:image:width" content="100">
    <meta property="og:image:height" content="100">
    <meta property="og:type" content="website">
	<!-- Kontynołowanie Znaczników meta robots, autor, langue, data publikacji strony,  -->
	<meta name="viewport" content="width=device-width, initial-scale=1.0">    
	<meta http-equiv="Page-Enter" content="revealTrans(Duration=10, Transition=23)">
    <meta http-equiv="Content-Language" content="$bm_jezyk_witryny">
    <meta name="Author" content="Black Min CMS">
    <meta http-equiv="Expires" content="Fri, 28 Dec 2019 17:45:14 GMT">
    <meta name="Authoring_tool" content="MetBod">
    <meta name="Robots" content="$this->set_robots">
	<!-- Konczenie Znaczników meta i meta_data i metadata i robots-->
	<!-- Dodawanie nowych znaczników meta ON -->
	$this->add_to_head
	<!-- Dodawanie nowych znaczników meta OFF -->
	<!-- Dodawanie nowych stylów css ON -->
	$this->add_css
	<!-- Dodawanie nowych stylów css OFF -->
	<!-- Dodawanie nowych skryptów javascript ON -->
	$this->add_script
	<!-- Dodawanie nowych skryptów javascript OFF -->
END;
		}

	}
	
	
	//$head_bm = new head_bm(); 
	//$head_bm->set_icon(NULL);
	//$head_bm->add_script("ninja.js");

?>