mirror of
https://github.com/the-djmaze/snappymail.git
synced 2026-07-13 03:27:39 +03:00
parent
b2dafe9e5e
commit
0b7afb5b7b
438 changed files with 6049 additions and 5203 deletions
|
|
@ -1 +1 @@
|
||||||
1.3.9.485
|
1.3.10.490
|
||||||
19
index.php
19
index.php
|
|
@ -1,13 +1,12 @@
|
||||||
<?php
|
<?php
|
||||||
|
|
||||||
define('APP_INDEX_ROOT_PATH', rtrim(dirname(__FILE__), '\\/').'/');
|
define('APP_INDEX_ROOT_PATH', rtrim(dirname(__FILE__), '\\/').'/');
|
||||||
define('APP_INDEX_FILE_NAME', !empty($_SERVER['PHP_SELF']) ? basename($_SERVER['PHP_SELF']) : 'index.php');
|
|
||||||
|
|
||||||
$sCustomDataPath = '';
|
$sCustomDataPath = '';
|
||||||
if (file_exists(APP_INDEX_ROOT_PATH.'include.php'))
|
if (file_exists(APP_INDEX_ROOT_PATH.'include.php'))
|
||||||
{
|
{
|
||||||
include_once APP_INDEX_ROOT_PATH.'include.php';
|
include_once APP_INDEX_ROOT_PATH.'include.php';
|
||||||
$sCustomDataPath = function_exists('__get_custom_data_full_path') ? trim(trim(__get_custom_data_full_path()), '\\/') : '';
|
$sCustomDataPath = function_exists('__get_custom_data_full_path') ? rtrim(trim(__get_custom_data_full_path()), '\\/') : '';
|
||||||
}
|
}
|
||||||
|
|
||||||
define('APP_DATA_FOLDER_PATH', 0 === strlen($sCustomDataPath) ? APP_INDEX_ROOT_PATH.'data/' : $sCustomDataPath.'/');
|
define('APP_DATA_FOLDER_PATH', 0 === strlen($sCustomDataPath) ? APP_INDEX_ROOT_PATH.'data/' : $sCustomDataPath.'/');
|
||||||
|
|
@ -16,27 +15,19 @@
|
||||||
if (false !== $sVersion)
|
if (false !== $sVersion)
|
||||||
{
|
{
|
||||||
$sVersion = trim(preg_replace('/[\.]+/', '.', preg_replace('/[^a-zA-Z0-9\.\-_]/', '', $sVersion)));
|
$sVersion = trim(preg_replace('/[\.]+/', '.', preg_replace('/[^a-zA-Z0-9\.\-_]/', '', $sVersion)));
|
||||||
if (0 < strlen($sVersion))
|
if (0 < strlen($sVersion) && file_exists(APP_INDEX_ROOT_PATH.'rainloop/v/'.$sVersion.'/index.php'))
|
||||||
{
|
{
|
||||||
define('APP_VERSION', $sVersion);
|
define('APP_VERSION', $sVersion);
|
||||||
if (file_exists(APP_INDEX_ROOT_PATH.'rainloop/v/'.APP_VERSION.'/index.php'))
|
include APP_INDEX_ROOT_PATH.'rainloop/v/'.APP_VERSION.'/index.php';
|
||||||
{
|
|
||||||
include APP_INDEX_ROOT_PATH.'rainloop/v/'.APP_VERSION.'/index.php';
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
echo 'Can\'t find startup file (Error Code: 103)';
|
|
||||||
exit(103);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
echo 'Version file content error (Error Code: 102)';
|
echo '[102] Version file content error';
|
||||||
exit(102);
|
exit(102);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
echo 'Can\'t read version file (Error Code: 101)';
|
echo '[101] Can\'t read version file';
|
||||||
exit(101);
|
exit(101);
|
||||||
}
|
}
|
||||||
|
|
|
||||||
1
rainloop/v/1.3.10.490/VERSION
Normal file
1
rainloop/v/1.3.10.490/VERSION
Normal file
|
|
@ -0,0 +1 @@
|
||||||
|
1.3.10.490
|
||||||
|
|
@ -301,7 +301,7 @@ class Http
|
||||||
|
|
||||||
if ($bRemoveWWW)
|
if ($bRemoveWWW)
|
||||||
{
|
{
|
||||||
$sHost = 'www.' === \substr(\strtolower($sHost), 0, 4) ? \substr($sHost, 0, 4) : $sHost;
|
$sHost = 'www.' === \substr(\strtolower($sHost), 0, 4) ? \substr($sHost, 4) : $sHost;
|
||||||
}
|
}
|
||||||
|
|
||||||
if ($bWithRemoteUserData)
|
if ($bWithRemoteUserData)
|
||||||
|
|
@ -87,7 +87,7 @@ class Loader
|
||||||
{
|
{
|
||||||
$aResult = array(
|
$aResult = array(
|
||||||
'php' => array(
|
'php' => array(
|
||||||
'phpversion' => \phpversion(),
|
'phpversion' => PHP_VERSION,
|
||||||
'ssl' => (int) \function_exists('openssl_open'),
|
'ssl' => (int) \function_exists('openssl_open'),
|
||||||
'iconv' => (int) \function_exists('iconv')
|
'iconv' => (int) \function_exists('iconv')
|
||||||
));
|
));
|
||||||
|
|
@ -1,126 +1,126 @@
|
||||||
<?php
|
<?php
|
||||||
|
|
||||||
namespace MailSo\Cache\Drivers;
|
namespace MailSo\Cache\Drivers;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @category MailSo
|
* @category MailSo
|
||||||
* @package Cache
|
* @package Cache
|
||||||
* @subpackage Drivers
|
* @subpackage Drivers
|
||||||
*/
|
*/
|
||||||
class File implements \MailSo\Cache\DriverInterface
|
class File implements \MailSo\Cache\DriverInterface
|
||||||
{
|
{
|
||||||
/**
|
/**
|
||||||
* @var string
|
* @var string
|
||||||
*/
|
*/
|
||||||
private $sCacheFolder;
|
private $sCacheFolder;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @access private
|
* @access private
|
||||||
*
|
*
|
||||||
* @param string $sCacheFolder
|
* @param string $sCacheFolder
|
||||||
*/
|
*/
|
||||||
private function __construct($sCacheFolder)
|
private function __construct($sCacheFolder)
|
||||||
{
|
{
|
||||||
$this->sCacheFolder = $sCacheFolder;
|
$this->sCacheFolder = $sCacheFolder;
|
||||||
$this->sCacheFolder = rtrim(trim($this->sCacheFolder), '\\/').'/';
|
$this->sCacheFolder = rtrim(trim($this->sCacheFolder), '\\/').'/';
|
||||||
if (!\is_dir($this->sCacheFolder))
|
if (!\is_dir($this->sCacheFolder))
|
||||||
{
|
{
|
||||||
@\mkdir($this->sCacheFolder, 0777);
|
@\mkdir($this->sCacheFolder, 0755);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @param string $sCacheFolder
|
* @param string $sCacheFolder
|
||||||
*
|
*
|
||||||
* @return \MailSo\Cache\Drivers\File
|
* @return \MailSo\Cache\Drivers\File
|
||||||
*/
|
*/
|
||||||
public static function NewInstance($sCacheFolder)
|
public static function NewInstance($sCacheFolder)
|
||||||
{
|
{
|
||||||
return new self($sCacheFolder);
|
return new self($sCacheFolder);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @param string $sKey
|
* @param string $sKey
|
||||||
* @param string $sValue
|
* @param string $sValue
|
||||||
*
|
*
|
||||||
* @return bool
|
* @return bool
|
||||||
*/
|
*/
|
||||||
public function Set($sKey, $sValue)
|
public function Set($sKey, $sValue)
|
||||||
{
|
{
|
||||||
return false !== \file_put_contents($sPath = $this->generateCachedFileName($sKey, true), $sValue);
|
return false !== \file_put_contents($sPath = $this->generateCachedFileName($sKey, true), $sValue);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @param string $sKey
|
* @param string $sKey
|
||||||
*
|
*
|
||||||
* @return string
|
* @return string
|
||||||
*/
|
*/
|
||||||
public function Get($sKey)
|
public function Get($sKey)
|
||||||
{
|
{
|
||||||
$sValue = '';
|
$sValue = '';
|
||||||
$sPath = $this->generateCachedFileName($sKey);
|
$sPath = $this->generateCachedFileName($sKey);
|
||||||
if (\file_exists($sPath))
|
if (\file_exists($sPath))
|
||||||
{
|
{
|
||||||
$sValue = \file_get_contents($sPath);
|
$sValue = \file_get_contents($sPath);
|
||||||
}
|
}
|
||||||
|
|
||||||
return \is_string($sValue) ? $sValue : '';
|
return \is_string($sValue) ? $sValue : '';
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @param string $sKey
|
* @param string $sKey
|
||||||
*
|
*
|
||||||
* @return void
|
* @return void
|
||||||
*/
|
*/
|
||||||
public function Delete($sKey)
|
public function Delete($sKey)
|
||||||
{
|
{
|
||||||
$sPath = $this->generateCachedFileName($sKey);
|
$sPath = $this->generateCachedFileName($sKey);
|
||||||
if (\file_exists($sPath))
|
if (\file_exists($sPath))
|
||||||
{
|
{
|
||||||
\unlink($sPath);
|
\unlink($sPath);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @param int $iTimeToClearInHours = 24
|
* @param int $iTimeToClearInHours = 24
|
||||||
*
|
*
|
||||||
* @return bool
|
* @return bool
|
||||||
*/
|
*/
|
||||||
public function GC($iTimeToClearInHours = 24)
|
public function GC($iTimeToClearInHours = 24)
|
||||||
{
|
{
|
||||||
if (0 < $iTimeToClearInHours)
|
if (0 < $iTimeToClearInHours)
|
||||||
{
|
{
|
||||||
\MailSo\Base\Utils::RecTimeDirRemove($this->sCacheFolder, 60 * 60 * $iTimeToClearInHours, \time());
|
\MailSo\Base\Utils::RecTimeDirRemove($this->sCacheFolder, 60 * 60 * $iTimeToClearInHours, \time());
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @param string $sKey
|
* @param string $sKey
|
||||||
* @param bool $bMkDir = false
|
* @param bool $bMkDir = false
|
||||||
*
|
*
|
||||||
* @return string
|
* @return string
|
||||||
*/
|
*/
|
||||||
private function generateCachedFileName($sKey, $bMkDir = false)
|
private function generateCachedFileName($sKey, $bMkDir = false)
|
||||||
{
|
{
|
||||||
$sFilePath = '';
|
$sFilePath = '';
|
||||||
if (3 < \strlen($sKey))
|
if (3 < \strlen($sKey))
|
||||||
{
|
{
|
||||||
$sKeyPath = \sha1($sKey);
|
$sKeyPath = \sha1($sKey);
|
||||||
$sKeyPath = \substr($sKeyPath, 0, 2).'/'.\substr($sKeyPath, 2, 2).'/'.$sKeyPath;
|
$sKeyPath = \substr($sKeyPath, 0, 2).'/'.\substr($sKeyPath, 2, 2).'/'.$sKeyPath;
|
||||||
|
|
||||||
$sFilePath = $this->sCacheFolder.'/'.$sKeyPath;
|
$sFilePath = $this->sCacheFolder.'/'.$sKeyPath;
|
||||||
if ($bMkDir && !\is_dir(\dirname($sFilePath)))
|
if ($bMkDir && !\is_dir(\dirname($sFilePath)))
|
||||||
{
|
{
|
||||||
if (!\mkdir(\dirname($sFilePath), 0777, true))
|
if (!\mkdir(\dirname($sFilePath), 0755, true))
|
||||||
{
|
{
|
||||||
$sFilePath = '';
|
$sFilePath = '';
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
return $sFilePath;
|
return $sFilePath;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
Some files were not shown because too many files have changed in this diff Show more
Loading…
Add table
Add a link
Reference in a new issue