<?php
/*
	CMS ,,Black Min''  Został stworzony przez di_Timonix'a
	
	ten plik służy do wyciągania wszystkich plików(Pluginów) wgranych na serwer
	
	#Zawannsowane szukanie
	
	Black Min cms,
	
	#plik: 1.1
*/

	// ładowanie jądra black mina
	require_once "../black-min.php";
	
	require_once "class-get-ustawienia.php";
	require_once "cut.php";
	// Tworzenie nowej klasy i wywołanie jej w celu pobrania ustawień Black Mina
	$get_ustawienia_bm = new get_ustawienia_bm(); 
	$get_ustawienia_bm->get_ustawienia();
	$ustawienia_bm = $get_ustawienia_bm->get_ustawienia();
	$url_serwera_bm = $ustawienia_bm["bm_wartosc"][0];
	//$bm_nazwa_strony_bm = $ustawienia_bm["bm_wartosc"][1];
	
	// odbieranie od pluginu metodą post informacji na temat poszukiwanych rekordów w bacie danych
	
	if (isset ($_POST['ile_load'])){
		$ile_load = $_POST['ile_load'];
	}else {
		$ile_load = "25";
	}
	
	// renderowanie odpowiedniego wyniku szukanychh informacji przez użytkownika

	// tworzenie tablicy do przechowywania nazw folderów pluginów black min'a
	$all_katolog = [];

	// pobieranie wszystkich katologów pluginów zainstalowanych na serwerze
	foreach (glob('../../../a/pluginy/*', GLOB_ONLYDIR) as $katalog) {
		$katalog_reserch = explode("/", $katalog);
		
		array_push($all_katolog, $katalog[3]);
	}
	
	// sortowanie odpowiednio tablicy
	//sort($all_katolog);
	
	// tworzenie tablicy do przecowywania rekordów pobranych z plików iniciujących plugin
	$kontent_pluginy_load = [];
	
	// schemat dla przerchowyania danych o pluginie
	$bm_name = "";
	$bm_description = "";
	$bm_autor = "";
	$bm_date_create = "";
	$bm_url_plugin_bm = "";
	$bm_patt_bm = "";
	$bm_versions = "";
	$bm_autor_website = "";
	
	// zliczanie zajnstalowanych pluginów
	$zlicz_zainstalowane_pluginy = count($all_katolog);
	
	// otwieranie plików i pobieranie danych do odczytania pluginu
	for ($i = 0; $i <= $zlicz_zainstalowane_pluginy-1; $i++) {
		
		// ładowanie zainstalowanych pluginów
		$open_plugin_kontent = file_get_contents("../../../a/pluginy/" . $all_katolog[$i] ."/index.php");
		
		if (strstr($open_plugin_kontent, "bm_name:")===False) {
			$bm_name = false;
		}else{
			// przypisywanie zmienych do informacji o pluginie
			$bm_name = explode("bm_name:", "$open_plugin_kontent");
			// 2x raz usuwanie i filtrowanie danych aby oniknąć błędów 
			$bm_name = explode("//", $bm_name[1]);		
			$bm_name = $bm_name[0];
		};
		if (strstr($open_plugin_kontent, "bm_description:")===False) {
			$bm_description = false;
		}else{
			// przypisywanie zmienych do informacji o pluginie
			$bm_description = explode("bm_description:", "$open_plugin_kontent");		
			// 2x raz usuwanie i filtrowanie danych aby oniknąć błędów 
			$bm_description = explode("//", $bm_description[1]);
			$bm_description = $bm_description[0];
		};
		if (strstr($open_plugin_kontent, "bm_author:")===False) {
			$bm_author = false;
		}else{
			// przypisywanie zmienych do informacji o pluginie
			$bm_author = explode("bm_author:", "$open_plugin_kontent");		
			// 2x raz usuwanie i filtrowanie danych aby oniknąć błędów 
			$bm_author = explode("//", $bm_author[1]);
			$bm_author = $bm_author[0];
		};
		if (strstr($open_plugin_kontent, "bm_date_create:")===False) {
			$bm_date_create = false;
		}else{
			// przypisywanie zmienych do informacji o pluginie
			$bm_date_create = explode("bm_date_create:", "$open_plugin_kontent");		
			// 2x raz usuwanie i filtrowanie danych aby oniknąć błędów 
			$bm_date_create = explode("//", $bm_date_create[1]);			
			$bm_date_create = $bm_date_create[0];
		};
		if (strstr($open_plugin_kontent, "bm_url_plugin_bm:")===False) {
			$bm_url_plugin_bm = false;
		}else{
			// przypisywanie zmienych do informacji o pluginie
			$bm_url_plugin_bm = explode("bm_url_plugin_bm:", "$open_plugin_kontent");		
			// 2x raz usuwanie i filtrowanie danych aby oniknąć błędów 
			$bm_url_plugin_bm = explode("//", $bm_url_plugin_bm[1]);		
			$bm_url_plugin_bm = $bm_url_plugin_bm[0];
		};
		if (strstr($open_plugin_kontent, "bm_patt_bm:")===False) {
			$bm_patt_bm = false;
		}else{
			// przypisywanie zmienych do informacji o pluginie
			$bm_patt_bm = explode("bm_patt_bm:", "$open_plugin_kontent");	
			// 2x raz usuwanie i filtrowanie danych aby oniknąć błędów 
			$bm_patt_bm = explode("//", $bm_patt_bm[1]);			
			$bm_patt_bm = $bm_patt_bm[0];
		};
		if (strstr($open_plugin_kontent, "bm_versions:")===False) {
			$bm_versions = false;
		}else{
			// przypisywanie zmienych do informacji o pluginie
			$bm_versions = explode("bm_versions:", "$open_plugin_kontent");		
			// 2x raz usuwanie i filtrowanie danych aby oniknąć błędów 
			$bm_versions = explode("//", $bm_versions[1]);			
			$bm_versions = $bm_versions[0];
		};
		
		if (strstr($open_plugin_kontent, "bm_autor_website:")===False) {
			$bm_autor_website = false;
		}else{
			// przypisywanie zmienych do informacji o pluginie
			$bm_autor_website = explode("bm_autor_website:", "$open_plugin_kontent");	
			// 2x raz usuwanie i filtrowanie danych aby oniknąć błędów 
			$bm_autor_website = explode("//", $bm_autor_website[1]);
			$bm_autor_website = $bm_autor_website[0];
		};
		

		//f (isset(explode("bm_name:", "$open_plugin_kontent"))) {
		//	echo "tak";
		//}else{
		//	echo "nie";
		//}
		
		if ($bm_name === false){
			echo '<section class="tsr-alert tsr-alert-error"> Kod Błędu: ERROR_PLUGIN_NAME </section>';
			echo '<section class="tsr-alert tsr-alert-error"> Error w pluginie:  '.$all_katolog[$i].' </section>';
			exit();
		}
		
		if ($bm_description === false){
			echo '<section class="tsr-alert tsr-alert-error"> Kod Błędu: ERROR_PLUGIN_DESCRIPTION </section>';
			echo '<section class="tsr-alert tsr-alert-error"> Error w pluginie:  '.$all_katolog[$i].' </section>';
			exit();
		}
		
		if ($bm_author === false){
			echo '<section class="tsr-alert tsr-alert-error"> Kod Błędu: ERROR_PLUGIN_AUTHOR </section>';
			echo '<section class="tsr-alert tsr-alert-error"> Error w pluginie:  '.$all_katolog[$i].' </section>';
			exit();
		}
		
		if ($bm_date_create === false){
			$bm_date_create = "Nie Podano Daty Stworzenia pluginu!";
		}
		
		if ($bm_url_plugin_bm === false){
			echo '<section class="tsr-alert tsr-alert-error"> Kod Błędu: ERROR_PLUGIN_URL </section>';
			echo '<section class="tsr-alert tsr-alert-error"> Error w pluginie:  '.$all_katolog[$i].' </section>';
			exit();
		}
		
		if ($bm_patt_bm === false){
			echo '<section class="tsr-alert tsr-alert-error"> Kod Błędu: ERROR_PLUGIN_PATT </section>';
			echo '<section class="tsr-alert tsr-alert-error"> Error w pluginie:  '.$all_katolog[$i].' </section>';
			exit();
		}
		
		if ($bm_versions === false){
			$bm_versions = "Nie Podano Dokładnej Wersji! : Alfa?";
		}
		
		if ($bm_patt_bm === false){
			echo '<section class="tsr-alert tsr-alert-error"> Kod Błędu: ERROR_PLUGIN_PATT </section>';
			echo '<section class="tsr-alert tsr-alert-error"> Error w pluginie:  '.$all_katolog[$i].' </section>';
			exit();
		}
		
		if ($bm_autor_website === false){
			$bm_autor_website = "Autor pluginu Nie Podał Własnej Strony!";
		}
		
		$check_img = file_exists("../../../a/pluginy/$all_katolog[$i]/miniaturka.png");
		
		if ($check_img === false) {
			$bm_miniaturka = $url_serwera_bm."/pliki/banner/placeholder.jpg";
		}else{
			$bm_miniaturka = $url_serwera_bm."a/pluginy/$all_katolog[$i]/miniaturka.png";
		}

		$schemat_plugin = [
		'bm_name' => $bm_name,
		'bm_description' => $bm_description,
		'bm_author' => $bm_author,
		'bm_date_create' => $bm_date_create,
		'bm_url_plugin_bm' => $bm_url_plugin_bm,
		'bm_patt_bm' => $bm_patt_bm,
		'bm_versions' => $bm_versions,
		'bm_autor_website' => $bm_autor_website,
		'bm_logo_plugin' => $bm_miniaturka,
		];
		
		array_push($kontent_pluginy_load, $schemat_plugin);
	
	}
	
	// obliczanie ile użytkownik chciał mieć pokazane pluginów a ile można wyświetlić
	if ($ile_load > $zlicz_zainstalowane_pluginy-1) {
		$ile_load = $zlicz_zainstalowane_pluginy-1;
	}

	// pobieranie danych o aktywnym pluginie
	//$aktywny_plugin_bm = file_get_contents("../../../a/pluginy/konfiguracja-pluginu.kmblackmin");
	
	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_ustawienia_bm` WHERE `bm_nazwa` LIKE 'bm_plugin_aktywny'")
				 ))
				{
				
					$ile_url = mysqli_num_rows($rezultat);
					
					$row = mysqli_fetch_assoc($rezultat);
					$aktywny_plugin_bm = $row['bm_wartosc'];
	
				};		
			
			$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>';
		//echo '<br />Informacja developerska: '.$e;
	}			
	
	// sortowanie odpowiednio tablicy z danymi o pluginach
	//sort($kontent_pluginy_load);
	
	for ($i = 0; $i <= $ile_load; $i++) 
	{
					
		$id_plugin = $i;
		$bm_name = $kontent_pluginy_load[$i]['bm_name'];
		$bm_description = $kontent_pluginy_load[$i]['bm_description'];
		$bm_autor = $kontent_pluginy_load[$i]['bm_author'];
		$bm_date_create = $kontent_pluginy_load[$i]['bm_date_create'];
		$bm_url_plugin_bm = $kontent_pluginy_load[$i]['bm_url_plugin_bm'];
		$bm_patt_bm = $kontent_pluginy_load[$i]['bm_patt_bm'];
		$bm_versions = $kontent_pluginy_load[$i]['bm_versions'];
		$bm_autor_website = $kontent_pluginy_load[$i]['bm_autor_website'];
		$bm_logo_plugin = $kontent_pluginy_load[$i]['bm_logo_plugin'];
		
		$bm_name2 = str_replace(" ", "", $bm_name);
		$bm_name2 = substr($bm_name2, 0, -2);
		
		// sprawdzanie który plugin jest aktywny
		if (strstr($all_katolog[$i], $aktywny_plugin_bm)) {
			$bm_name = cut($bm_name , 40);
			
echo<<<END
	
	<section class="col-4 tsr-recors-miniaturs tsr-p-5px" height: 265px;>
		<section class="fs-70 tsr-records id-records-$id_plugin background-dark-gray" data-usun="1" data-id-post="$bm_name">
			<a href="#plugin_$id_plugin" rel="modal:open" class="img-efect-normalize2">
				<img src="$bm_logo_plugin" title="$bm_name" class="img tsr-miniaturka tsr-vertical-align-middle" style="width: 100%;height: 200px;object-fit: fill;">
				<section class="img-efect-normalize-subtitle2">
					Zobacz
				</section>
			</a>
			<section class="fs-90 tsr-cut-string background-dark-red tsr-p-10px tsr-pt-5px tsr-pb-5px">
				<section class="tsr-button tsr-normal">
					Aktywny
				</section>
				$bm_name
			</section>
		</section>
	</section>
								
			<div id="plugin_$id_plugin" class="tsr modal modal-auto">
				<section class="tsr">
					<section class="tsr fs-70">
						<section class="col-inp-25">
							Pełny Tytuł pluginu:
						</section>
						<section class="col-inp-75">
							$bm_name
						</section>
					</section>
					<section class="tsr fs-70">
						<section class="col-inp-25">
							Autor Mowywu:
						</section>
						<section class="col-inp-75">
							$bm_autor
						</section>
					</section>
					<section class="tsr fs-70">
						<section class="col-inp-25">
							Opis pluginu:
						</section>
						<section class="col-inp-75">
							$bm_description
						</section>
					</section>					
					<section class="tsr fs-70">
						<section class="col-inp-25">
							Data Stworzenia pluginu:
						</section>
						<section class="col-inp-75">
							$bm_date_create
						</section>
					</section>
					<section class="tsr fs-70">
						<section class="col-inp-25">
							Strona pluginu Black Min:
						</section>
						<section class="col-inp-75">
							<a href="$bm_url_plugin_bm">
								$bm_url_plugin_bm
							</a>
						</section>
					</section>
					<section class="tsr fs-70">
						<section class="col-inp-25">
							Klucz id pluginu:
						</section>
						<section class="col-inp-75">
							$bm_patt_bm
						</section>
					</section>
					<section class="tsr fs-70">
						<section class="col-inp-25">
							Wersja pluginu:
						</section>
						<section class="col-inp-75">
							$bm_versions
						</section>
					</section>
					<section class="tsr fs-70">
						<section class="col-inp-25">
							Strona Autora pluginu:
						</section>
						<section class="col-inp-75">
							<a href="$bm_autor_website">
								$bm_autor_website
							</a>	
						</section>
					</section>
					<!--<section class="tsr fs-70">
						<section class="col-inp-25">
							Ścieżka Pliku:
						</section>
						<section class="tsr-inp-75">
							<a href="$bm_logo_plugin">
								$bm_logo_plugin
							</a>	
						</section>
					</section>-->
					<img src="$bm_logo_plugin" title="$bm_name" class="img tsr-mt-20" style="min-width: 25%;">
					<section class="tsr r-0 fs-100 tsr-visable-hover">
						<section class="tsr-fr tsr-button tsr-visable-hover-element edit-post">
							<a href="#zobacz_plugin_$id_plugin" rel="modal:open">
								Zobacz plugin
							</a>	
						</section>
					</section>
				</section>
				<a href="" class="close-modal2 tsr-aufle-close " rel="modal:close"><img src="$url_serwera_bm/pliki/ikony/zamknij.png" class="img" /></a>
			</div>	
			<div id="zobacz_plugin_$id_plugin" class="tsr modal modal-auto">
				<section class="tsr">
					<img src="$bm_logo_plugin" title="$bm_name" class="img tsr-mt-10" style="width: 100%;">
				</section>
				<a href="" class="close-modal2 tsr-aufle-close " rel="modal:close"><img src="$url_serwera_bm/pliki/ikony/zamknij.png" class="img" /></a>
			</div>	
		</section>
	
	
END;
			
		}else{
			
echo<<<END
	
	<section class="col-4 tsr-recors-miniaturs tsr-p-5px" style="height: 265px;">
		<section class="fs-70 tsr-records id-records-$id_plugin background-gray" data-usun="1" data-id-post="$bm_name">
			<a href="#plugin_$id_plugin" rel="modal:open" class="img-efect-normalize2">
				<img src="$bm_logo_plugin" title="$bm_name" class="img tsr-miniaturka tsr-vertical-align-middle" style="width: 100%;height: 200px;object-fit: fill;">
				<section class="img-efect-normalize-subtitle2">
					Zobacz
				</section>
			</a>
			<section class="tsr-p-10px fs-90 tsr-cut-string background-cyan">
				$bm_name
			</section>
		</section>
	</section>
	
	

			<div id="delete_plugin_$id_plugin" class="tsr modal modal-auto" style="max-width: 500px;">
				<section class="tsr">
					<section class="col-2 fs-70 tsr-p-5px tsr-button">
						<a href="#usun_post_min_$id_plugin" id="ptw_delte_post_$id_plugin" class="cursor-pointer" rel="modal:close">
							Tak, usuń plugin
						</a>
					</section>
					<section class="col-2 tsr-button tsr-error">
						<a href="#" rel="modal:close">
							Anuluj!
						</a>
					</section>
					<section class="tsr">
					</section>
				</section>
				<a href="" class="close-modal2 tsr-aufle-close " rel="modal:close"><img src="$url_serwera_bm/pliki/ikony/zamknij.png" class="img" /></a>
			</div>
				<script type="text/javascript">
				$('#ptw_delte_post_$id_plugin').click('submit', function(evt1){
				//evt1.preventDefault();
			
				//usun_plik.push("$id_plugin");
				//console.log(delete_post);
				
				var usun_plugin = "$bm_name2";
				
				$.ajax({
					type:"POST",
					url:"insert/plugin-usun.php",
					data:{
						usun_plugin:usun_plugin,
					}
				})
				.done(function(info){
					$('.id-records-$id_plugin').text("");
					$('.id-records-$id_plugin').append(info);
				})
				.fail(function(){
					alert("Wystąpił błąd. Spróbuj ponownie później");
					});
				});	
			</script>

			<div id="aktywuj_plugin_$id_plugin" class="tsr modal modal-auto" style="max-width: 500px;">
				<section class="tsr">
					<section class="col-2 fs-70 tsr-p-5px tsr-button">
						<a href="#usun_post_min_$id_plugin" id="ptw_activate_plugin_$id_plugin" class="cursor-pointer" rel="modal:close">
							Tak, Aktywuj plugin
						</a>
					</section>
					<section class="col-2 tsr-button tsr-error">
						<a href="#" rel="modal:close">
							Anuluj!
						</a>
					</section>
					<section class="tsr">
					</section>
				</section>
				<a href="" class="close-modal2 tsr-aufle-close " rel="modal:close"><img src="$url_serwera_bm/pliki/ikony/zamknij.png" class="img" /></a>
			</div>
				<script type="text/javascript">
				$('#ptw_activate_plugin_$id_plugin').click('submit', function(evt1){
				
				var aktywuj_plugin = "$all_katolog[$i]";
				
				$.ajax({
					type:"POST",
					url:"insert/plugin-aktywuj.php",
					data:{
						aktywuj_plugin:aktywuj_plugin,
					}
				})
				.done(function(info){
					$('.id-records-$id_plugin').text("");
					$('.id-records-$id_plugin').append(info);
				})
				.fail(function(){
					alert("Wystąpił błąd. Spróbuj ponownie później");
					});
				});	
			</script>
			
			<div id="plugin_$id_plugin" class="tsr modal modal-auto">
				<section class="tsr">
					<section class="tsr fs-70">
						<section class="col-inp-25">
							Pełny Tytuł pluginu:
						</section>
						<section class="col-inp-75">
							$bm_name
						</section>
					</section>
					<section class="tsr fs-70">
						<section class="col-inp-25">
							Autor Mowywu:
						</section>
						<section class="col-inp-75">
							$bm_autor
						</section>
					</section>
					<section class="tsr fs-70">
						<section class="col-inp-25">
							Opis pluginu:
						</section>
						<section class="col-inp-75">
							$bm_description
						</section>
					</section>					
					<section class="tsr fs-70">
						<section class="col-inp-25">
							Data Stworzenia pluginu:
						</section>
						<section class="col-inp-75">
							$bm_date_create
						</section>
					</section>
					<section class="tsr fs-70">
						<section class="col-inp-25">
							Strona pluginu Black Min:
						</section>
						<section class="col-inp-75">
							<a href="$bm_url_plugin_bm">
								$bm_url_plugin_bm
							</a>
						</section>
					</section>
					<section class="tsr fs-70">
						<section class="col-inp-25">
							Klucz id pluginu:
						</section>
						<section class="col-inp-75">
							$bm_patt_bm
						</section>
					</section>
					<section class="tsr fs-70">
						<section class="col-inp-25">
							Wersja pluginu:
						</section>
						<section class="col-inp-75">
							$bm_versions
						</section>
					</section>
					<section class="tsr fs-70">
						<section class="col-inp-25">
							Strona Autora pluginu:
						</section>
						<section class="col-inp-75">
							<a href="$bm_autor_website">
								$bm_autor_website
							</a>	
						</section>
					</section>
					<!--<section class="tsr fs-70">
						<section class="col-inp-25">
							Ścieżka Pliku:
						</section>
						<section class="tsr-inp-75">
							<a href="$bm_logo_plugin">
								$bm_logo_plugin
							</a>	
						</section>
					</section>-->
					<img src="$bm_logo_plugin" title="$bm_name" class="img tsr-mt-20" style="min-width: 25%;">
					<section class="tsr r-0 fs-100 tsr-visable-hover">
						<section class="tsr-fr tsr-button tsr-visable-hover-element red delete-post">
							<a href="#delete_plugin_$id_plugin" rel="modal:open">
								Usuń plugin
							</a>											
						</section>
						<!--<section class="tsr-fr tsr-button tsr-visable-hover-element edit-post">
							<a href="">
								Edytuj plugin
							</a>	
						</section>-->
						<section class="tsr-fr tsr-button tsr-visable-hover-element edit-post">
							<a href="#zobacz_plugin_$id_plugin" rel="modal:open">
								Zobacz plugin
							</a>	
						</section>
						<!--<section class="tsr-fr tsr-button tsr-visable-hover-element edit-post">
							<a href="#post_zobacz_min_$id_plugin" rel="modal:open">
								Zobacz plugin Na Zywo
							</a>	
						</section>-->
						<section class="tsr-fr tsr-button tsr-normal tsr-visable-hover-element edit-post ">
							<a href="#aktywuj_plugin_$id_plugin" rel="modal:open">
								Aktywuj plugin
							</a>	
						</section>
					</section>
				</section>
				<a href="" class="close-modal2 tsr-aufle-close " rel="modal:close"><img src="$url_serwera_bm/pliki/ikony/zamknij.png" class="img" /></a>
			</div>	
			<div id="zobacz_plugin_$id_plugin" class="tsr modal modal-auto">
				<section class="tsr">
					<img src="$bm_logo_plugin" title="$bm_name" class="img tsr-mt-10" style="width: 100%;">
				</section>
				<a href="" class="close-modal2 tsr-aufle-close " rel="modal:close"><img src="$url_serwera_bm/pliki/ikony/zamknij.png" class="img" /></a>
			</div>	
		</section>
	
	
END;
			
		}
	
}

?>