<?
	/** Zbiór funckji pakujących dane plikowe. Uzywane przez Asystenta i Administratora.
	 * @author Łukasz Chmielewski.
	 * @package XPDefault
	 */

	 /** */
	if ( defined( '_PACK_FUN' ) ) return;
	define( '_PACK_FUN', 1 );

	$start = "/tmp/XP/";
	$wynik = "/tmp/wynik/";

	/** Funkcja ogólna pakująca.
	 * Opis założeń w osobnym pliku tekstowym (doc/opis_pack.txt).
	 * @author Lukasz Chmielewski
	 * @param $all katalog w którym jest ktalog do spakowania. Struktura tego katalogu jest odwzorowyawana w docelowym miejscu spakowania.
	 * @param $directory atalog pakowany
	 * @version 0.1
	 */
	function packer ($all, $directory) {
		global $wynik;
		$polecenie1 = "mkdir -p ".$wynik . $all .";cd ". $all;
		$polecenie2 = "tar czf " . $wynik . $all. "/".$directory .".tgz ". $directory;
	//	print($polecenie1. ";" .$polecenie2);
		echo exec ($polecenie1. ";" .$polecenie2);
		return ($wynik .$all. "/". $directory. ".tgz");
	}

	/** Funkcja pakująca dane z cyklu.
	 * @author Lukasz Chmielewski
	 * @version 0.1
	 */
	function packCycle ($cycle) {
		global $start;
		return (packer ($start,$cycle));
	}

	/** Funkcja ogólna pakująca dane z grupy z zadania.
	 * @author Lukasz Chmielewski
	 * @version 0.1
	 */
	function packGroup ($cycle,$subject,$group,$exercise) {
		global $start;
		return (packer ($start .$cycle. "/" .$subject. "/" .$group, $exercise));
	}

?>
