Sfoglia il codice sorgente

BIALL-NET fix sync project files to ftp www.biall.net.pl

Piotr Labudda 10 anni fa
parent
commit
4e3ce079ed

+ 11 - 0
SE/se-lib/DB_Image.php

@@ -236,6 +236,17 @@ class DB_Image {
 		return $imBlob;
 	}
 
+	public static function writeImageBlobToFile($imBlob, $mimeType, $destFile) {
+		if (class_exists('Imagick')) {
+			$im = new Imagick();
+			$im->readImageBlob($imBlob);
+			$im->writeImage($destFile);
+		} else {
+			throw new Exception("Can't save image to file (no ImageMagick)");
+		}
+		return true;
+	}
+
 	public static function read_image_data($file, $mime_type) {// TODO: used only in upload_image
 		$im = null;
 		if ($mime_type == 'image/jpeg') {

+ 383 - 0
SE/se-lib/Route/BiallNet/SyncProjectFiles.php

@@ -0,0 +1,383 @@
+<?php
+
+Lib::loadClass('RouteBase');
+
+/**
+ * @requires config file config/.cnf--zasob_638-biuro.biall-net.pl.ini.php:
+;<?php
+;die(); // For further security
+;// ftp for www.biall.net.pl
+
+type="ftp"
+host="www.biall.net.pl"
+user="***"
+pass="***"
+ */
+class Route_BiallNet_SyncProjectFiles extends RouteBase {
+
+	public function handleAuth() {
+		if (!User::logged()) {
+			throw new HttpException('Unauthorized', 401);
+		}
+	}
+
+	public function defaultAction() {
+		SE_Layout::gora();
+		SE_Layout::menu();
+
+		$configError = null;
+		try {
+			$this->_checkFtpConfig();
+		} catch (Exception $e) {
+			$configError = $e->getMessage();
+		}
+?>
+<div class="container">
+	<h1></h1>
+</div>
+<div class="jumbotron">
+  <div class="container">
+		<h3>Synchronizcja plików na stronę www.biall.net.pl z projektów</h3>
+		<?php if (empty($configError)) : ?>
+			<form class="form-inline" method="POST">
+				<input type="hidden" name="_task" value="syncToWwwSite" />
+				<button type="submit" id="submitBtn" class="btn btn-primary" autocomplete="off">
+					Synchronizuj wszystkie projekty
+				</button>
+			</form>
+			<!-- TODO: fast sync only one project? -->
+		<?php else : ?>
+			<div class="alert alert-danger">
+				<?php echo $configError; ?>
+			</div>
+		<?php endif; ?>
+	</div>
+</div>
+<script type="text/javascript">
+jQuery(document).ready(function () {
+  jQuery('#submitBtn').on('click', function () {
+    jQuery(this).text(jQuery(this).text() + '...').attr('disabled', 'disabled');
+		jQuery(this).parent().submit();
+  });
+});
+</script>
+		<?php
+		SE_Layout::dol();
+	}
+
+	public function syncToWwwSiteAction() {
+		SE_Layout::gora();
+		SE_Layout::menu();
+		?>
+<h1>Synchronizcja plików na stronę www.biall.net.pl z projektów:</h1>
+<pre style="max-height:400px;border:1px solid silver;overflow:auto;"><?php $this->syncToWwwSite(); ?></pre>
+<?php
+		SE_Layout::dol();
+		exit;
+	}
+
+	public function syncToWwwSite() {
+		flush();
+		$sync_projekty_tmp_folder = '/Users/plabudda/sync-projekty-files-to-www';
+
+		$sql_select = array();
+		$sql_where_and = array();
+
+		$sql_select[] = "p.`ID`";
+		$sql_select[] = "p.`M_DIST_TYPE`";
+		$sql_select[] = "p.`M_DIST_DESC`";
+		//$sql_select[] = "p.``";
+
+		$sql_project_types = array();
+		$sql_project_types[] = "'WWW_PRACA'";
+		$sql_project_types[] = "'WWW_DOKUMENTY'";
+		$sql_project_types[] = "'WWW_AKTUALNOSCI'";
+		$sql_project_types[] = "'WWW_AKTUALNOSCI_TV'";
+		$sql_project_types[] = "'TV__UMOWA ZAKUPU KANALU'";
+		$sql_where_and[] = "p.`M_DIST_TYPE` in (".implode(",", $sql_project_types).")";
+
+		$sql_where_and[] = "p.`A_STATUS` in ('NORMAL','WAITING')";
+
+		//$projekt_id = V::get('projekt_id', 0, $_REQUEST, 'int');
+		//if ($projekt_id > 0) {
+		//	$sql_where_and[] = "p.`ID`='".$projekt_id."'";
+		//}
+
+		$db = DB::getDB();
+		$sql_select = implode(", ", $sql_select);
+		$sql_where = implode("\n and ", $sql_where_and);
+		$sql = "select $sql_select
+			from `IN7_MK_BAZA_DYSTRYBUCJI` as p
+			where
+				{$sql_where}
+		";
+		$projekty = array();
+		$res = $db->query($sql);
+		while ($r = $db->fetch($res)) {
+			$projekty[$r->ID] = $r;
+		}
+
+		foreach ($projekty as $idProject => $r) {
+			$files = $this->_findProjectFiles($r->ID);
+			if (in_array($r->M_DIST_TYPE, array('WWW_AKTUALNOSCI', 'WWW_AKTUALNOSCI_TV'))) {
+				$filesToAdd = $this->_findProjectFiles($r->ID, 'ZDJECIE', array('jpg','png','gif'));
+				foreach ($filesToAdd as $f) {
+					$tmp_folder_path = $sync_projekty_tmp_folder.'/'.$r->ID;
+					if (!is_dir($tmp_folder_path)) {
+						mkdir($tmp_folder_path);
+					}
+					Lib::loadClass('DB_Image');
+					$img_ext = explode('.', $f['name']);
+					$img_ext = end($img_ext);
+
+					$imBlob = null;
+					$imType = null;
+					if ('jpg' == $img_ext) $imType = "image/jpeg";
+					else if ('png' == $img_ext) $imType = "image/png";
+					else if ('gif' == $img_ext) $imType = "image/gif";
+					if ($imType) {
+						$imBlob = DB_Image::readImageBlobFromFile($f['path'], $imType);
+					}
+
+					if (!$imBlob) {
+						continue;
+					}
+
+					$sizes_all = array(array('700', '700'), array('150', '120'));
+					foreach ($sizes_all as $sizes) {
+						$tmp_name = substr($f['name'], 0, -4).'.'.$sizes[0].'x'.$sizes[1].'.'.$img_ext;
+						$tmp_path = $tmp_folder_path.'/'.$tmp_name;
+						$files[] = array('name'=>$tmp_name, 'path'=>$tmp_path);
+						$imResizedBlob = DB_Image::resizeImageFromBlob($imBlob, $imType, $sizes[0], $sizes[1]);
+						DB_Image::writeImageBlobToFile($imResizedBlob, $imType, $tmp_path);
+					}
+				}
+			}
+			else if (in_array($r->M_DIST_TYPE, array('TV__UMOWA ZAKUPU KANALU'))) {
+				$filesToAdd = $this->_findProjectFiles($r->ID, 'ZDJECIE', array('jpg','png','gif'));
+				foreach ($filesToAdd as $f) {
+					$tmp_folder_path = $sync_projekty_tmp_folder.'/'.$r->ID;
+					if (!is_dir($tmp_folder_path)) {
+						mkdir($tmp_folder_path);
+					}
+					Lib::loadClass('DB_Image');
+					$img_ext = explode('.', $f['name']);
+					$img_ext = end($img_ext);
+
+					$imBlob = null;
+					$imType = null;
+					if ('jpg' == $img_ext) $imType = "image/jpeg";
+					else if ('png' == $img_ext) $imType = "image/png";
+					else if ('gif' == $img_ext) $imType = "image/gif";
+					if ($imType) {
+						$imBlob = DB_Image::readImageBlobFromFile($f['path'], $imType);
+					}
+
+					if (!$imBlob) {
+						continue;
+					}
+
+					$sizes_all = array(array('90', '78'));
+					foreach ($sizes_all as $sizes) {
+						$tmp_name = substr($f['name'], 0, -4).'.'.$sizes[0].'x'.$sizes[1].'.'.$img_ext;
+						$tmp_path = $tmp_folder_path.'/'.$tmp_name;
+						$files[] = array('name'=>$tmp_name, 'path'=>$tmp_path);
+						$imResizedBlob = DB_Image::resizeImageFromBlob($imBlob, $imType, $sizes[0], $sizes[1]);
+						DB_Image::writeImageBlobToFile($imResizedBlob, $imType, $tmp_path);
+					}
+				}
+			}
+
+			echo "[{$idProject}]:\n";
+			$this->_sendProjectFiles($idProject, $files);
+			echo "\n";
+		}
+	}
+
+	private function _findProjectFiles($project_id, $type = '', $suffix = 'pdf') {
+		global $FOLDERS;
+
+		$ret = array();
+		//global $FOLDERS;
+		// @see .config:$FOLDERS[IN7_MK_BAZA_DYSTRYBUCJI_COLUMN]="/home/samba/PROJEKTY";
+		$dir_projekty = $FOLDERS['IN7_MK_BAZA_DYSTRYBUCJI_COLUMN'];
+		//$www_projekty = "PROJEKTY/";
+
+		$pattern = $dir_projekty.'/'.$project_id.'.*';
+		$path_projekt = glob( $pattern , GLOB_ONLYDIR);// array glob(pattern [, flags])
+		if (empty($path_projekt)) {
+			return $ret;
+		}
+		$path_projekt = reset($path_projekt);
+		$dir_projekt = explode('/', $path_projekt);
+		$dir_projekt = end($dir_projekt);
+
+		if (is_array($suffix)) {
+			$files_projekt_add = array();
+			foreach ($suffix as $add_suffix) {
+				$files_oferty_pattern = $path_projekt.'/*.'.$add_suffix;
+				if ($type) $files_oferty_pattern = $path_projekt.'/*.'.$type.'.*.'.$add_suffix;
+				$files_projekt_add = glob( $files_oferty_pattern);// array glob(pattern [, flags])
+				foreach ($files_projekt_add as $f) {
+					$files_projekt[] = $f;
+				}
+			}
+		} else {
+			$files_oferty_pattern = $path_projekt.'/*.'.$suffix;
+			if ($type) $files_oferty_pattern = $path_projekt.'/*.'.$type.'.*.'.$suffix;
+			$files_projekt = glob( $files_oferty_pattern);// array glob(pattern [, flags])
+		}
+
+		if (empty($files_projekt)) {
+			return $ret;
+		}
+		foreach ($files_projekt as $v) {
+			$f_name = explode('/', $v);
+			$f_name = end($f_name);
+			// TODO: f_www link do akryptu zmieniajacego nazwe pliku na nazwe projektu
+			//$f_www = 'http://'.$host.'/'.$www_projekty.'/'.$dir_projekt.'/'.$f_name;
+			//$f_www = 'http://'.$host.'/index.php?action=project_file&project='.$project_id.'&f='.$f_name;
+			$f_www = '';
+			$ret[] = array('name'=>$f_name, 'path'=>$v, 'www'=>$f_www);
+		}
+
+		return $ret;
+	}
+
+	private function _sendProjectFiles($idProject, $files) {
+		if (function_exists('ftp_connect')) {
+			$ftp_conn = $this->_ftpAuth();
+
+			$filesOnSite = ftp_nlist($ftp_conn, "public_html/PROJEKTY/{$idProject}/");
+			echo "[{$idProject}]\tPliki na www public_html/PROJEKTY/{$idProject}/: ";
+			if (empty($filesOnSite)) {
+				echo "brak\n";
+			} else {
+				echo implode("\n\t\t - ", $filesOnSite) . "\n";
+			}
+			$filesToRemove = array();
+			if (!empty($filesOnSite)) {
+				foreach ($filesOnSite as $remotePath) {
+					$remoteName = explode('/', $remotePath);
+					$remoteName = end($remoteName);
+					$toRemove = true;
+					foreach ($files as $f) {
+						if ($f['name'] == $remoteName) {
+							$toRemove = false;
+						}
+					}
+					if ($toRemove) {
+						$filesToRemove[] = $remotePath;
+					}
+				}
+			}
+			echo "[{$idProject}]\tPliki do usunięcia: ";
+			if (empty($filesToRemove)) {
+				echo "brak\n";
+			} else {
+				echo implode("\n\t\t - ", $filesToRemove) . "\n";
+			}
+
+			foreach ($filesToRemove as $remotePath) {
+				$remoteName = explode('/', $remotePath);
+				$remoteName = end($remoteName);
+				echo "[{$idProject}]\t\t";
+				if (ftp_delete($ftp_conn, $remotePath)) {
+					echo "Usunięto plik {$remoteName}\n";
+				} else {
+					echo "Error: Could not delete {$remoteName}\n";
+				}
+			}
+			if (!empty($files)) {
+				$remoteDir = "public_html/PROJEKTY/{$idProject}/";
+				if (@ftp_mkdir($ftp_conn, $remoteDir)) {
+					echo "[{$idProject}]\t\tUtworzono katalog: '{$remoteDir}'\n";
+				} else {
+					//echo "There was a problem while creating $dir\n";
+				}
+				foreach ($files as $f) {
+					$remotePath = "public_html/PROJEKTY/{$idProject}/{$f['name']}";
+					echo "[{$idProject}]\t\t";
+					if (ftp_put($ftp_conn, $remotePath, $f['path'], FTP_BINARY)) {
+						echo "Wgrano plik {$f['name']}\n";
+					} else {
+					 echo "Error: There was a problem while uploading {$f['name']}\n";
+					}
+				}
+			}
+			ftp_close($ftp_conn);
+		} else {
+			foreach ($files as $f) {
+				// string exec ( string $command [, array &$output [, int &$return_var ]] )
+				//$sync_project_file_command = 'sync-projekty-files-to-www.sh';
+				/*
+#!/bin/bash
+
+if [ -z "$1" ]; then
+	echo usage: $0 project_id file
+	exit 1
+fi
+
+if [ -z "$2" ]; then
+        echo usage: $0 project_id file
+        exit 1
+fi
+
+#dest_path="public_html/PROJEKTY/$1/"
+dest_path="public_html/PROJEKTY/$1/"`basename $2`
+
+USER="biallnet"
+PASSWD="***"
+ftp -v -n www.biall.net.pl <<SCRIPT
+user $USER $PASSWD
+binary
+put $2 $dest_path
+quit
+SCRIPT
+
+exit 0;
+				*/
+				$cmd = $sync_project_file_command." ".$r->ID." ".$f['path'];
+				$output = array();
+				$ret_val = 0;
+				exec($cmd, $output, $ret_val);
+				$completed = false;
+				if ($ret_val == 0) {
+					foreach ($output as $out_line) {
+						if (strpos($out_line, 'Transfer complete') !== false) {
+							$completed = true;
+						}
+					}
+				}
+	echo "\n  cmd:{$cmd} ret({$ret_val}) ";print_r($output);exit;
+				if ($completed) {
+					echo "Plik skopiowano.\n";
+				} else {
+					echo "Error: prawdopodobnie nie udalo sie skopiowac pliku.\n";
+					foreach ($output as $out_line) {
+						echo $out_line."\n";
+					}
+				}
+			}
+		}
+	}
+
+	private function _ftpAuth() {
+		$cnf = $this->_checkFtpConfig();
+		$connFTP = ftp_connect($cnf['host']) or die("Couldn't connect to ftp_server");
+		if (!ftp_login($connFTP, $cnf['user'], $cnf['pass'])) {
+			die("Couldn't login to ftp_server");
+		}
+		return $connFTP;
+	}
+
+	private function _checkFtpConfig() {
+		$cnf = Config::getZasobConf(638);// SERVER www.biall.net.pl
+		if (empty($cnf)) throw new Exception("Error: Empty config for ftp www.biall.net.pl");
+		if (empty($cnf['host'])) throw new Exception("Error: Config host is empty");
+		if (empty($cnf['user'])) throw new Exception("Error: Config user is empty");
+		if (empty($cnf['pass'])) throw new Exception("Error: Config pass is empty");
+		return $cnf;
+	}
+
+}

+ 0 - 231
SE/sync-projekty-files-to-www.biall.net.pl.php

@@ -1,231 +0,0 @@
-<?php
-/**
- * @params $_GET['project_id'] - int
- * TODO: not used: @params $_GET['www_files'] - array of file names
- */
-
-
-error_reporting(E_ALL & ~E_NOTICE);
-
-define('DS', DIRECTORY_SEPARATOR);
-define('APP_PATH_ROOT', dirname(__FILE__));
-define('APP_PATH_CONFIG', APP_PATH_ROOT . DS . 'config');
-
-//session_save_path("../session") ;
-session_start();
-
-date_default_timezone_set('Europe/Warsaw');// PHP 5 >= 5.1.0 required by date functions
-
-if (file_exists(".config.php")) include(".config.php");
-
-SEF('DEBUG_S');
-require_once dirname(__FILE__) . '/' . 'se-lib' . '/' . 'Lib.php';
-Lib::loadClass('V');
-Lib::loadClass('User');
-Lib::loadClass('Config');
-Lib::loadClass('App');
-Lib::loadClass('DB');
-Lib::loadClass('S');
-
-// DBG:
-ini_set('error_reporting', E_ALL ^ E_NOTICE);
-//ini_set('error_reporting', E_ALL);
-error_reporting(E_ALL ^ E_NOTICE);
-//error_reporting(E_ALL);
-ini_set('display_errors', TRUE);
-
-
-$sync_project_file_command = '/home/plabudda/sync-projekty-files-to-www.sh';
-$sync_projekty_tmp_folder = '/home/plabudda/sync-projekty-files-to-www';
-
-{// fetch active projects
-	$sql_select = array();
-	$sql_where_and = array();
-
-	$sql_select []= "p.`ID`";
-	$sql_select []= "p.`M_DIST_TYPE`";
-	$sql_select []= "p.`M_DIST_DESC`";
-	//$sql_select []= "p.``";
-
-	$sql_project_types = array();
-	$sql_project_types []= "'WWW_PRACA'";
-	$sql_project_types []= "'WWW_DOKUMENTY'";
-	$sql_project_types []= "'WWW_AKTUALNOSCI'";
-	$sql_project_types []= "'WWW_AKTUALNOSCI_TV'";
-	$sql_where_and []= "p.`M_DIST_TYPE` in (".implode(",", $sql_project_types).")";
-
-	$sql_where_and []= "p.`A_STATUS` in ('NORMAL','WAITING')";
-
-	$projekt_id = V::get('projekt_id', 0, $_REQUEST, 'int');
-	if ($projekt_id > 0) {
-		$sql_where_and []= "p.`ID`='".$projekt_id."'";
-	}
-
-	$sql_select = implode(", ", $sql_select);
-	$sql_where = implode("\n and ", $sql_where_and);
-	$sql = "select $sql_select
-		from `IN7_MK_BAZA_DYSTRYBUCJI` as p
-		where
-			$sql_where
-	";
-	$projekty = array();
-	$res = DB::query( $sql );
-	while ( $r = DB::fetch( $res ) ) {
-		$projekty [$r->ID] = $r;
-	}
-
-	if ($projekt_id > 0) {
-		if (!array_key_exists($projekt_id, $projekty)) {
-			die('Error: Projekt nie istnieje lub nie ma statusu WAITING lub NORMAL.');
-		}
-
-		$r =& $projekty[$projekt_id];
-		$files = PROJEKT__find_folder( $r->ID );
-		if (in_array($r->M_DIST_TYPE, array('WWW_AKTUALNOSCI', 'WWW_AKTUALNOSCI_TV'))) {
-			$files_add = PROJEKT__find_folder( $r->ID, 'ZDJECIE', array('jpg','png','gif') );
-			// TODO: create image files - convert to specified format: 700x700, 150x120
-			// name, path, www
-//echo'<pre style="max-height:200px;overflow:auto;border:1px solid red;">files_add: ';print_r($files_add);echo'</pre>';
-			foreach ($files_add as $f) {
-				$tmp_folder_path = $sync_projekty_tmp_folder.'/'.$r->ID;
-				if (!is_dir($tmp_folder_path)) {
-					mkdir($tmp_folder_path);
-				}
-				Lib::loadClass('DB_Image');
-				$img_ext = end( explode('.', $f['name']) );
-				if ($img_ext == 'jpg') $im = imagecreatefromjpeg($f['path']);
-				else if ($img_ext == 'png') $im = imagecreatefrompng($f['path']);
-				else if ($img_ext == 'gif') $im = imagecreatefromgif($f['path']);
-
-				$sizes_all = array( array('700', '700'), array('150', '120') );
-				foreach ($sizes_all as $sizes) {
-					$tmp_name = substr($f['name'], 0, -4).'.'.$sizes[0].'x'.$sizes[1].'.'.$img_ext;
-					$tmp_path = $tmp_folder_path.'/'.$tmp_name;
-					$files []= array('name'=>$tmp_name,'path'=>$tmp_path);
-					$im = DB_Image::resize_image_from_data($im, $sizes[0], $sizes[1]);
-					if ($img_ext == 'jpg') imagejpeg($im, $tmp_path);
-					else if ($img_ext == 'png') imagepng($im, $tmp_path);
-					else if ($img_ext == 'gif') imagegif($im, $tmp_path);
-				}//end foreach
-			}//end foreach
-		}
-		if (empty($files)) {
-			die('Error: Nie odnaleziono plikow Projektu.');
-		}
-		foreach ($files as $f) {
-			echo "file:".$f['name']." ";
-			// string exec ( string $command [, array &$output [, int &$return_var ]] )
-			$cmd = $sync_project_file_command." ".$r->ID." ".$f['path'];
-			$output = array();
-			$ret_val = 0;
-			exec($cmd, $output, $ret_val);
-			$completed = false;
-			if ($ret_val == 0) {
-				foreach ($output as $out_line) {
-					if (strpos($out_line, 'Transfer complete') !== false) {
-						$completed = true;
-					}
-				}//end foreach
-			}
-			if ($completed) {
-				echo "Plik skopiowano.\n";
-			} else {
-				echo "Error: prawdopodobnie nie udalo sie skopiowac pliku.\n";
-				foreach ($output as $out_line) {
-					echo $out_line."\n";
-				}//end foreach
-			}
-		}//end foreach
-	}
-	else {
-		echo'<pre style="max-height:200px;overflow:auto;border:1px solid red;">'."<b>projekty:</b>\n";
-		//print_r($projekty);
-		foreach ($projekty as $k_id => $r) {
-			echo " projekt ".$r->ID.":\n";
-			if (in_array($r->M_DIST_TYPE, array('WWW_AKTUALNOSCI', 'WWW_AKTUALNOSCI_TV'))) {
-				$files = PROJEKT__find_folder( $r->ID, 'ZDJECIE', 'jpg' );
-				foreach ($files as $f) {
-					echo "  file: ".$f['path']."\n";
-				}//end foreach
-			}
-			$files = PROJEKT__find_folder( $r->ID, $r->M_DIST_TYPE );
-			foreach ($files as $f) {
-				echo "  file: ".$f['path']."\n";
-			}//end foreach
-		}//end foreach
-		echo'</pre>';
-	}
-
-}// fetch active projects
-
-
-// TODO: @sowa: Call to undefined function ftp_connect()
-if(0){// fetch current file list on www
-	$ftp_server = 'www.biall.net.pl';
-	$ftp_user = 'biallnet';
-	$ftp_pass = '100noga';
-	$ftp_conn = ftp_connect($ftp_server) or die("Couldn't connect to $ftp_server");
-	if (ftp_login($ftp_conn, $ftp_user, $ftp_pass)) {
-		ftp_chdir($ftp_conn, 'public_html/PROJEKTY');
-	}
-	$list = ftp_nlist($ftp_conn, 'public_html/PROJEKTY');
-	echo'<pre style="max-height:200px;overflow:auto;border:1px solid red;">';
-	echo "<b>Pliki na www:</b>\n";
-	if (empty($list)) {
-		echo'brak plikow';
-	} else {
-		foreach ($list as $f) {
-			echo 'file: '.$f."\n";
-		}//end foreach
-	}
-	echo'</pre>';
-}// fetch current file list on www
-
-
-
-function PROJEKT__find_folder( $project_id, $type = '', $suffix = 'pdf' ) {
-	global $FOLDERS;
-
-	$ret = array();
-	//global $FOLDERS;
-	// @see .config:$FOLDERS[IN7_MK_BAZA_DYSTRYBUCJI_COLUMN]="/home/samba/PROJEKTY";
-	$dir_projekty = $FOLDERS['IN7_MK_BAZA_DYSTRYBUCJI_COLUMN'];
-	//$www_projekty = "PROJEKTY/";
-
-echo'<pre style="max-height:200px;overflow:auto;border:1px solid red;text-align:left;">IN7_MK_BAZA_DYSTRYBUCJI_COLUMN (' . __CLASS__ . '::' . __FUNCTION__ . ':' . __LINE__ . '): ';print_r($FOLDERS['IN7_MK_BAZA_DYSTRYBUCJI_COLUMN']);echo'</pre>';
-
-	$pattern = $dir_projekty.'/'.$project_id.'.*';
-	$path_projekt = glob( $pattern , GLOB_ONLYDIR );// array glob(pattern [, flags])
-	if (empty($path_projekt)) {
-		return $ret;
-	}
-	$path_projekt = reset( $path_projekt );
-	$dir_projekt = end( explode('/', $path_projekt) );
-
-	if (is_array($suffix)) {
-		$files_projekt_add = array();
-		foreach ($suffix as $add_suffix) {
-			$files_oferty_pattern = $path_projekt.'/*.'.$add_suffix;
-			if ($type) $files_oferty_pattern = $path_projekt.'/*.'.$type.'.*.'.$add_suffix;
-			$files_projekt_add = glob( $files_oferty_pattern );// array glob(pattern [, flags])
-			foreach ($files_projekt_add as $f) {
-				$files_projekt []= $f;
-			}//end foreach
-		}//end foreach
-	} else {
-		$files_oferty_pattern = $path_projekt.'/*.'.$suffix;
-		if ($type) $files_oferty_pattern = $path_projekt.'/*.'.$type.'.*.'.$suffix;
-		$files_projekt = glob( $files_oferty_pattern );// array glob(pattern [, flags])
-	}
-
-	foreach ($files_projekt as $v) {
-		$f_name = end( explode('/', $v) );
-		// TODO: f_www link do akryptu zmieniajacego nazwe pliku na nazwe projektu
-		//$f_www = 'http://'.$host.'/'.$www_projekty.'/'.$dir_projekt.'/'.$f_name;
-		//$f_www = 'http://'.$host.'/index.php?action=project_file&project='.$project_id.'&f='.$f_name;
-		$f_www = '';
-		$ret []= array('name'=>$f_name, 'path'=>$v, 'www'=>$f_www);
-	}//end foreach
-
-	return $ret;
-}