mirror of
https://github.com/Ekokumppanit/ystavakylaecard.git
synced 2026-01-26 03:04:00 +00:00
109 lines
2.6 KiB
PHP
109 lines
2.6 KiB
PHP
<?php
|
|
|
|
// backward compatibility
|
|
if ( !function_exists('sys_get_temp_dir'))
|
|
{
|
|
function sys_get_temp_dir()
|
|
{
|
|
if ($temp = getenv('TMP')) return $temp;
|
|
if ($temp = getenv('TEMP')) return $temp;
|
|
if ($temp = getenv('TMPDIR')) return $temp;
|
|
$temp = tempnam(__FILE__, '');
|
|
if (file_exists($temp))
|
|
{
|
|
unlink($temp);
|
|
return dirname($temp);
|
|
}
|
|
return '/tmp'; // the best we can do
|
|
}
|
|
}
|
|
|
|
class Spark_utils {
|
|
|
|
private static $buffer = false;
|
|
private static $lines = array();
|
|
|
|
static function get_lines()
|
|
{
|
|
return self::$lines;
|
|
}
|
|
|
|
static function buffer()
|
|
{
|
|
self::$buffer = true;
|
|
}
|
|
|
|
static function full_move($src, $dst)
|
|
{
|
|
$dir = opendir($src);
|
|
@mkdir($dst);
|
|
while(false !== ($file = readdir($dir))) {
|
|
if (($file != '.') && ($file != '..')) {
|
|
if (is_dir($src . '/' . $file)) {
|
|
self::full_move($src . '/' . $file,$dst . '/' . $file);
|
|
}
|
|
else {
|
|
rename($src . '/' . $file,$dst . '/' . $file);
|
|
}
|
|
}
|
|
}
|
|
closedir($dir);
|
|
}
|
|
|
|
static function remove_full_directory($dir, $vocally = false)
|
|
{
|
|
if (is_dir($dir))
|
|
{
|
|
$objects = scandir($dir);
|
|
foreach ($objects as $object)
|
|
{
|
|
if ($object != '.' && $object != '..')
|
|
{
|
|
if (filetype($dir . '/' . $object) == "dir")
|
|
{
|
|
self::remove_full_directory($dir . '/' . $object, $vocally);
|
|
}
|
|
else
|
|
{
|
|
if ($vocally) self::notice("Removing $dir/$object");
|
|
unlink($dir . '/' . $object);
|
|
}
|
|
}
|
|
}
|
|
reset($objects);
|
|
return rmdir($dir);
|
|
}
|
|
}
|
|
|
|
static function notice($msg)
|
|
{
|
|
self::line($msg, 'SPARK', '[1;36m');
|
|
}
|
|
|
|
static function error($msg)
|
|
{
|
|
self::line($msg, 'ERROR', '[1;31m');
|
|
}
|
|
|
|
static function warning($msg)
|
|
{
|
|
self::line($msg, 'WARNING', '[1;33m');
|
|
}
|
|
|
|
static function line($msg = '', $s = null, $color = null)
|
|
{
|
|
foreach(explode("\n", $msg) as $line)
|
|
{
|
|
if (self::$buffer)
|
|
{
|
|
self::$lines[] = $line;
|
|
}
|
|
else
|
|
{
|
|
echo !$s ? "$line\n" : chr(27) . $color . "[ $s ]" . chr(27) . "[0m" . " $line\n";
|
|
}
|
|
}
|
|
}
|
|
|
|
}
|