This commit is contained in:
icret 2022-07-10 22:48:21 +08:00
parent 313ce88a64
commit c6cd45425c
144 changed files with 355 additions and 134 deletions

6
README.md Normal file → Executable file
View File

@ -180,6 +180,12 @@ $HTTP["url"] =~ "^/(i|public)/" {
<details><summary>点击查看2.0版更新日志</summary>
* 2022-07-09 v2.6.6
- 增加图片信息显示随机图片
- 增加文件雪花命名
- 增加举报入口
- 更新组件
* 2022-05-27 v2.6.5
- 更改文件位置

25
admin/admin.inc.php Normal file → Executable file
View File

@ -337,7 +337,8 @@ if (isset($_GET['recycle_reimg'])) {
<option value="unix" <?php if ($config['imgName'] == 'unix') echo 'selected'; ?>>Unix >> 1635074840</option>
<option value="crc32" <?php if ($config['imgName'] == 'crc32') echo 'selected'; ?>>CRC32 >> 2495551279</option>
<option value="uniqid" <?php if ($config['imgName'] == 'uniqid') echo 'selected'; ?>>微秒 >> 6175436c73418</option>
<option value="source" <?php if ($config['imgName'] == 'source') echo 'selected'; ?>>源文件名 >> 微信图片_20211228214754</option>
<option value="snowflake" <?php if ($config['imgName'] == 'snowflake') echo 'selected'; ?>>雪花 >> 5357520647037653166</option>
<option value="source" <?php if ($config['imgName'] == 'source') echo 'selected'; ?>>源名 >> 微信图片_20211228214754</option>
<option value="md5" <?php if ($config['imgName'] == 'md5') echo 'selected'; ?>>MD5 >> 3888aa69eb321a2b61fcc63520bf6c82</option>
<option value="sha1" <?php if ($config['imgName'] == 'sha1') echo 'selected'; ?>>SHA1 >> 654faac01499e0cb5fb0e9d78b21e234c63d842a</option>
<option value="guid" <?php if ($config['imgName'] == 'guid') echo 'selected'; ?>>全局唯一标识符 >> 6EDAD0CC-AB0C-4F61-BCCA-05FAD65BF0FA</option>
@ -780,7 +781,7 @@ if (isset($_GET['recycle_reimg'])) {
<a href="https://github.com/verot/class.upload.php" target="_blank"><span class="label label-badge label-success" data-toggle="tooltip" title="文件管理">Tinyfilemanager</span></a>
<span class="label label-badge label-success" data-toggle="tooltip" title="当前版本"><?php echo get_current_verson(); ?></span>
<?php if (getVersion() !== get_current_verson()) : ?>
<a href="#NewVersion" data-toggle="collapse" class="label label-badge label-warning" title="Github有更新"><?php echo getVersion(); ?> New</span></a>
<a href="#NewVersion" data-toggle="collapse" class="label label-badge label-warning" title="Github有更新"><?php echo getVersion(); ?></span><i class="icon icon-angle-down"></i></a>
<?php endif; ?>
<a href="https://github.com/icret/EasyImages2.0/blob/master/LICENSE" target="_blank"><span class="label label-badge" data-toggle="tooltip" title="许可证">GPL-2.0</span></a>
</p>
@ -842,16 +843,21 @@ if (isset($_GET['recycle_reimg'])) {
<input type="checkbox" name="showSort" value="1" <?php if ($config['showSort']) echo 'checked="checked"'; ?>>
<label style="font-weight: bold">排序</label>
</div>
<div class="switch switch-inline" data-toggle="tooltip" title="广场图片详细信息按钮">
<input type="hidden" name="show_exif_info" value="0">
<input type="checkbox" name="show_exif_info" value="1" <?php if ($config['show_exif_info']) echo 'checked="checked"'; ?>>
<label style="font-weight: bold">详息</label>
</div>
<div class="switch switch-inline" data-toggle="tooltip" title="图片过多时可能会影响统计时间">
<input type="hidden" name="chart_on" value="0">
<input type="checkbox" name="chart_on" value="1" <?php if ($config['chart_on']) echo 'checked="checked"'; ?>>
<label style="font-weight: bold">统计</label>
</div>
<div class="switch switch-inline" data-toggle="tooltip" title="广场图片详细信息按钮">
<input type="hidden" name="show_exif_info" value="0">
<input type="checkbox" name="show_exif_info" value="1" <?php if ($config['show_exif_info']) echo 'checked="checked"'; ?>>
<label style="font-weight: bold">详情页</label>
</div>
<div class="switch switch-inline" data-toggle="tooltip" title="图片详细信息显示随机图片">
<input type="hidden" name="info_rand_pic" value="0">
<input type="checkbox" name="info_rand_pic" value="1" <?php if ($config['info_rand_pic']) echo 'checked="checked"'; ?>>
<label style="font-weight: bold">随机图片</label>
</div>
</div>
<div class="form-group">
<label data-toggle="tooltip" title="暂支持中文简繁体转换">界面语言</label>
@ -880,7 +886,10 @@ if (isset($_GET['recycle_reimg'])) {
<input type="text" class="form-control" id="login_bg" name="login_bg" value="<? if ($config['login_bg']) echo $config['login_bg']; ?>" required="required" placeholder="图片地址可以是相对路径或网址" onkeyup="this.value=this.value.replace(/\s/g,'')">
</div>
<div class="form-group">
<label for="report" data-toggle="tooltip" title="举报图片链接网址 (推荐ZOHO)<br/>留空则不显示">举报链接 | <a href="https://store.zoho.com.cn/referral.do?servicename=ZohoForms&category=ZohoForms&ref=52f8a4e98a7a7d4c2475713784605af0dc842f6cc9732dd77f37b87f2959149e212e550f50a869f70360f15b80a4abc6" target="_blank">申请</a></label>
<input type="text" class="form-control" id="report" name="report" value="<? if ($config['report']) echo $config['report']; ?>" placeholder="可以是网址或邮箱" onkeyup="this.value=this.value.replace(/\s/g,'')">
</div>
<div class="form-group">
<div class="col-md-9">
<label data-toggle="tooltip" title="可在网址后填写参数更改预览数量 eg: /list.php?num=3">广场默认浏览数量 | 当前: </label>
<label id="listNumber"><?php echo $config['listNumber']; ?>张</label>

0
admin/chart.php Normal file → Executable file
View File

0
admin/index.php Normal file → Executable file
View File

0
admin/manager.php Normal file → Executable file
View File

0
admin/terms.php Normal file → Executable file
View File

2
admin/verson.txt Normal file → Executable file
View File

@ -1 +1 @@
2.6.5
2.6.6

0
admin/zui.chart.php Normal file → Executable file
View File

0
api/index.php Normal file → Executable file
View File

0
api/public.php Normal file → Executable file
View File

0
application/TimThumb.php Normal file → Executable file
View File

0
application/WaterMask.php Normal file → Executable file
View File

0
application/captcha.php Normal file → Executable file
View File

0
application/chart.php Normal file → Executable file
View File

0
application/check.php Normal file → Executable file
View File

0
application/check_admin.inc.php Normal file → Executable file
View File

45
application/class.snowflake.php Executable file
View File

@ -0,0 +1,45 @@
<?php
/**
* 分布式 id 生成类 组成: <毫秒级时间戳+机器id+序列号>
* 默认情况下41bit的时间戳可以支持该算法使用到2082年10bit的工作机器id可以支持1023台机器序列号支持1毫秒产生4095个自增序列id
* @author zhangqi
* @link https://www.cnblogs.com/njccqx/p/13402169.html
*/
class SnowFlake
{
const EPOCH = 1479533469598; //开始时间,固定一个小于当前时间的毫秒数
const max12bit = 4095;
const max41bit = 1099511627775;
static $machineId = 1; // 机器id
public static function machineId($mId = 0)
{
self::$machineId = $mId;
}
public static function createOnlyId()
{
// 时间戳 42字节
$time = floor(microtime(true) * 1000);
// 当前时间 与 开始时间 差值
$time -= self::EPOCH;
// 二进制的 毫秒级时间戳
$base = decbin(self::max41bit + $time);
// 机器id 10 字节
if (!self::$machineId) {
$machineid = self::$machineId;
} else {
$machineid = str_pad(decbin(self::$machineId), 10, "0", STR_PAD_LEFT);
}
// 序列数 12字节
$random = str_pad(decbin(mt_rand(0, self::max12bit)), 12, "0", STR_PAD_LEFT);
// 拼接
$base = $base . $machineid . $random;
// 转化为 十进制 返回
return bindec($base);
}
}
// SnowFlake::machineId("1"); //机器编号
// echo SnowFlake::createOnlyId();//分布式id

0
application/class.thumb.php Normal file → Executable file
View File

164
application/class.upload.php Normal file → Executable file
View File

@ -405,12 +405,28 @@ class Upload {
/**
* Set this variable to false if you don't want to turn dangerous scripts into simple text files
* The list of blacklisted extensions is in {@link dangerous}
*
* Note that this check happens before checking for forbidden MIME types or extensions
* If you want to forbid uploads rather than turning scripts into text files,
* set {@link no_script} to false and use {@link forbidden} instead
*
* @access public
* @var boolean
*/
var $no_script;
/**
* Dangerous file extensions
*
* List of dangerous extensions, that are enforced if {@link no_script} is true
* If the file has such extension, then it is turned into a text file
*
* @access public
* @var array
*/
var $dangerous;
/**
* Set this variable to true to allow automatic renaming of the file
* if the file already exists
@ -1662,12 +1678,12 @@ class Upload {
var $mime_types;
/**
* Allowed MIME types
* Allowed MIME types or file extensions
*
* Default is a selection of safe mime-types, but you might want to change it
*
* Simple wildcards are allowed, such as image/* or application/*
* If there is only one MIME type allowed, then it can be a string instead of an array
* Simple wildcards are allowed for MIME types, such as image/* or application/*
* If there is only one MIME type allowed or file extension, then it can be a string instead of an array
*
* @access public
* @var array OR string
@ -1675,30 +1691,23 @@ class Upload {
var $allowed;
/**
* Forbidden MIME types
* Forbidden MIME types or file extensions
*
* Default is a selection of safe mime-types, but you might want to change it
* Default is a selection of forbidden file extensions, but you might want to change it
* To only check for forbidden MIME types, and allow everything else, set {@link allowed} to array('* / *') without the spaces
*
* Simple wildcards are allowed, such as image/* or application/*
* If there is only one MIME type forbidden, then it can be a string instead of an array
* Note that if {@link no_script} is activated, dangerous scripts with extensions in {@link dangerous}
* will be set to have a .txt extension prior to checking for forbidden extensions
* If you want to forbid uploads rather than turning scripts into text files, set {@link no_script} to false
*
* Simple wildcards are allowed for MIME types, such as image/* or application/*
* If there is only one MIME type or file extension forbidden, then it can be a string instead of an array
*
* @access public
* @var array OR string
*/
var $forbidden;
/**
* Blacklisted file extensions
*
* List of blacklisted extensions, that are enforced if {@link no_script} is true
*
* @access public
* @var array
*/
var $blacklist;
/**
* Array of translated error messages
*
@ -1853,7 +1862,35 @@ class Upload {
$this->image_frame_colors = '#FFFFFF #999999 #666666 #000000';
$this->image_frame_opacity = 100;
$this->forbidden = array();
$this->dangerous = array(
'php',
'php7',
'php6',
'php5',
'php4',
'php3',
'phtml',
'pht',
'phpt',
'phtm',
'phps',
'inc',
'pl',
'py',
'cgi',
'asp',
'js',
'sh',
'bat',
'phar',
'wsdl',
);
$this->forbidden = array_merge($this->dangerous, array(
'exe',
'dll',
));
$this->allowed = array(
'application/arj',
'application/excel',
@ -2036,27 +2073,6 @@ class Upload {
'csv' => 'text/csv',
);
$this->blacklist = array(
'php',
'php7',
'php6',
'php5',
'php4',
'php3',
'phtml',
'pht',
'phpt',
'phtm',
'phps',
'inc',
'pl',
'py',
'cgi',
'asp',
'js',
'sh',
'phar',
);
}
@ -2093,7 +2109,7 @@ class Upload {
*/
function upload($file, $lang = 'en_GB') {
$this->version = '05/10/2021';
$this->version = '13/06/2022';
$this->file_src_name = '';
$this->file_src_name_body = '';
@ -2429,7 +2445,7 @@ class Upload {
// checks MIME type with Fileinfo PECL extension
if (!$this->file_src_mime || !is_string($this->file_src_mime) || empty($this->file_src_mime) || strpos($this->file_src_mime, '/') === false) {
if ($this->mime_fileinfo) {
$this->log .= '- Checking MIME type with Fileinfo PECL extension<br />';
$this->log .= '- checking MIME type with Fileinfo PECL extension<br />';
if ($this->function_enabled('finfo_open')) {
$path = null;
if ($this->mime_fileinfo !== '') {
@ -2493,7 +2509,7 @@ class Upload {
// checks MIME type with shell if unix access is authorized
if (!$this->file_src_mime || !is_string($this->file_src_mime) || empty($this->file_src_mime) || strpos($this->file_src_mime, '/') === false) {
if ($this->mime_file) {
$this->log .= '- Checking MIME type with UNIX file() command<br />';
$this->log .= '- checking MIME type with UNIX file() command<br />';
if (substr(PHP_OS, 0, 3) != 'WIN') {
if ($this->function_enabled('exec') && $this->function_enabled('escapeshellarg')) {
if (strlen($mime = @exec("file -bi ".escapeshellarg($this->file_src_pathname))) != 0) {
@ -2522,7 +2538,7 @@ class Upload {
// checks MIME type with mime_magic
if (!$this->file_src_mime || !is_string($this->file_src_mime) || empty($this->file_src_mime) || strpos($this->file_src_mime, '/') === false) {
if ($this->mime_magic) {
$this->log .= '- Checking MIME type with mime.magic file (mime_content_type())<br />';
$this->log .= '- checking MIME type with mime.magic file (mime_content_type())<br />';
if ($this->function_enabled('mime_content_type')) {
$this->file_src_mime = mime_content_type($this->file_src_pathname);
$this->log .= '&nbsp;&nbsp;&nbsp;&nbsp;MIME type detected as ' . $this->file_src_mime . ' by mime_content_type()<br />';
@ -2543,7 +2559,7 @@ class Upload {
// checks MIME type with getimagesize()
if (!$this->file_src_mime || !is_string($this->file_src_mime) || empty($this->file_src_mime) || strpos($this->file_src_mime, '/') === false) {
if ($this->mime_getimagesize) {
$this->log .= '- Checking MIME type with getimagesize()<br />';
$this->log .= '- checking MIME type with getimagesize()<br />';
$info = getimagesize($this->file_src_pathname);
if (is_array($info) && array_key_exists('mime', $info)) {
$this->file_src_mime = trim($info['mime']);
@ -2586,7 +2602,7 @@ class Upload {
// we need to work some magic if we upload via Flash
if ($this->file_src_mime == 'application/octet-stream' || !$this->file_src_mime || !is_string($this->file_src_mime) || empty($this->file_src_mime) || strpos($this->file_src_mime, '/') === false) {
if ($this->file_src_mime == 'application/octet-stream') $this->log .= '- Flash may be rewriting MIME as application/octet-stream<br />';
$this->log .= '- Try to guess MIME type from file extension (' . $this->file_src_name_ext . '): ';
$this->log .= '- try to guess MIME type from file extension (' . $this->file_src_name_ext . '): ';
if (array_key_exists($this->file_src_name_ext, $this->mime_types)) $this->file_src_mime = $this->mime_types[$this->file_src_name_ext];
if ($this->file_src_mime == 'application/octet-stream') {
$this->log .= 'doesn\'t look like anything known<br />';
@ -2600,9 +2616,14 @@ class Upload {
}
// determine whether the file is an image
if ($this->file_src_mime && is_string($this->file_src_mime) && !empty($this->file_src_mime) && array_key_exists($this->file_src_mime, $this->image_supported)) {
$this->file_is_image = true;
$this->image_src_type = $this->image_supported[$this->file_src_mime];
if ($this->file_src_mime && is_string($this->file_src_mime) && !empty($this->file_src_mime)) {
if (array_key_exists($this->file_src_mime, $this->image_supported)) {
$this->file_is_image = true;
$this->image_src_type = $this->image_supported[$this->file_src_mime];
$this->log .= '- file is an image, and its type is supported by GD<br />';
} else if (strpos($this->file_src_mime, 'image/') !== FALSE && sizeof($this->image_supported) == 0) {
$this->log .= '- file may be an image, but its type is not supported; is GD installed ?<br />';
}
}
// if the file is an image, we gather some useful data
@ -2629,7 +2650,7 @@ class Upload {
}
$this->log .= '<b>source variables</b><br />';
$this->log .= '- You can use all these before calling process()<br />';
$this->log .= '- you can use all these before calling process()<br />';
$this->log .= '&nbsp;&nbsp;&nbsp;&nbsp;file_src_name : ' . $this->file_src_name . '<br />';
$this->log .= '&nbsp;&nbsp;&nbsp;&nbsp;file_src_name_body : ' . $this->file_src_name_body . '<br />';
$this->log .= '&nbsp;&nbsp;&nbsp;&nbsp;file_src_name_ext : ' . $this->file_src_name_ext . '<br />';
@ -3120,7 +3141,7 @@ class Upload {
}
// if the file is text based, or has a dangerous extension, we rename it as .txt
if ((((substr($this->file_src_mime, 0, 5) == 'text/' && $this->file_src_mime != 'text/rtf') || strpos($this->file_src_mime, 'javascript') !== false) && (substr($file_src_name, -4) != '.txt'))
|| preg_match('/\.(' . implode('|', $this->blacklist) . ')$/i', $this->file_src_name)
|| preg_match('/\.(' . implode('|', $this->dangerous) . ')$/i', $this->file_src_name)
|| $this->file_force_extension && empty($file_src_name_ext)) {
$this->file_src_mime = 'text/plain';
if ($this->file_src_name_ext) $file_src_name_body = $file_src_name_body . '.' . $this->file_src_name_ext;
@ -3136,22 +3157,39 @@ class Upload {
} else if ($this->mime_check && !empty($this->file_src_mime) && strpos($this->file_src_mime, '/') !== false) {
list($m1, $m2) = explode('/', $this->file_src_mime);
$allowed = false;
// check wether the mime type is allowed
// check wether the mime type or file extension is allowed
if (!is_array($this->allowed)) $this->allowed = array($this->allowed);
foreach($this->allowed as $k => $v) {
list($v1, $v2) = explode('/', $v);
if (($v1 == '*' && $v2 == '*') || ($v1 == $m1 && ($v2 == $m2 || $v2 == '*'))) {
$allowed = true;
break;
if (strpos($v, '/') == false) {
if ($v == '*' || strtolower($v) == strtolower($file_src_name_ext)) {
$allowed = true;
break;
}
} else {
list($v1, $v2) = explode('/', $v);
if (($v1 == '*' && $v2 == '*') || ($v1 == $m1 && ($v2 == $m2 || $v2 == '*'))) {
$allowed = true;
break;
}
}
}
// check wether the mime type is forbidden
if (!$allowed) $this->log .= '- MIME type and/or extension is not allowed !<br />';
// check wether the mime type or file extension is forbidden
if (!is_array($this->forbidden)) $this->forbidden = array($this->forbidden);
foreach($this->forbidden as $k => $v) {
list($v1, $v2) = explode('/', $v);
if (($v1 == '*' && $v2 == '*') || ($v1 == $m1 && ($v2 == $m2 || $v2 == '*'))) {
$allowed = false;
break;
if (strpos($v, '/') == false) {
if ($v == '*' || strtolower($v) == strtolower($file_src_name_ext)) {
$allowed = false;
$this->log .= '- extension ' . $v . ' is forbidden !<br />';
break;
}
} else {
list($v1, $v2) = explode('/', $v);
if (($v1 == '*' && $v2 == '*') || ($v1 == $m1 && ($v2 == $m2 || $v2 == '*'))) {
$allowed = false;
$this->log .= '- MIME type ' . $v . ' is forbidden !<br />';
break;
}
}
}
if (!$allowed) {
@ -3159,6 +3197,7 @@ class Upload {
$this->error = $this->translate('incorrect_file');
} else {
$this->log .= '- file mime OK : ' . $this->file_src_mime . '<br />';
$this->log .= '- file extension OK : ' . $file_src_name_ext . '<br />';
}
} else {
$this->log .= '- file mime (not checked) : ' . $this->file_src_mime . '<br />';
@ -4504,10 +4543,9 @@ class Upload {
$this->log .= 'error<br />';
$this->image_text_font = 5;
}
}
// if the font is a string with a TTF font path, we check if we can access the font file
if (!is_numeric($this->image_text_font) && strlen($this->image_text_font) > 4 && substr(strtolower($this->image_text_font), -4) == '.ttf') {
} else if (!is_numeric($this->image_text_font) && strlen($this->image_text_font) > 4 && substr(strtolower($this->image_text_font), -4) == '.ttf') {
$this->log .= '&nbsp;&nbsp;&nbsp;&nbsp;try to load font ' . $this->image_text_font . '... ';
if (strpos($this->image_text_font, '/') === false) $this->image_text_font = "./" . $this->image_text_font;
if (file_exists($this->image_text_font) && is_readable($this->image_text_font)) {

0
application/class.version.php Normal file → Executable file
View File

0
application/compress/Imagick/class.Imgcompress.php Normal file → Executable file
View File

0
application/compress/TinyImg/TinyImg.php Normal file → Executable file
View File

0
application/compress/TinyImg/cacert.pem Normal file → Executable file
View File

0
application/compress/function.compress.php Normal file → Executable file
View File

0
application/compressing.php Normal file → Executable file
View File

0
application/del.php Normal file → Executable file
View File

0
application/down.php Normal file → Executable file
View File

10
application/footer.php Normal file → Executable file
View File

@ -42,13 +42,11 @@ if ($config['notice_status'] == 1 && !empty($config['notice'])) : ?>
<hr>
<?php /** 页脚信息 */ if (!empty($config['footer'])) echo $config['footer']; ?>
<p>
© 2018-<?php echo date("Y"); ?>
<a href="https://png.cm/" target="_blank"> EasyImage</a>
<a href="https://github.com/icret/EasyImages2.0" target="_blank" rel="nofollow"><?php echo get_current_verson(); ?></a> By
<a href="https://blog.png.cm" target="_blank">Icret</a>
<a href="/admin/terms.php" target="_blank"> DMCA</a>
<a href="https://github.com/icret/EasyImages2.0" target="_blank" rel="nofollow" data-toggle="tooltip" title="开源地址">© 2018-<?php echo date("Y"); ?></a>
<a href="https://png.cm/" target="_blank" data-toggle="tooltip" title="<?php echo get_current_verson(); ?>"> EasyImage</a>
<a href="/admin/terms.php" target="_blank" data-toggle="tooltip" title="使用协议"> DMCA</a>
<!-- 二维码按钮 -->
<a data-toggle="modal" href="#qr"><i class="icon icon-qrcode hidden-xs inline-block" data-toggle="tooltip" title="扫描二维码"></i></a>
<a data-toggle="modal" href="#qr"><i class="icon icon-qrcode hidden-xs inline-block" data-toggle="tooltip" title="二维码"></i></a>
<?php /** 暗黑模式 */ if ($config['dark-mode']) : ?>
<a id="dark" data-toggle="tooltip" title="暗黑模式"><i class="icon icon-lightbulb" id="dark_ico"></i></a>
<?php endif;

4
application/function.php Normal file → Executable file
View File

@ -245,6 +245,10 @@ function imgName($source = null)
// crc32加密微秒 例2495551279
return crc32(microtime());
break;
case "snowflake":
include __DIR__ . '/class.snowflake.php';
return SnowFlake::createOnlyId(); //分布式id
break;
default:
// 将上传时间+随机数转换为36进制 例vx77yu
return base_convert(date('His') . mt_rand(1001, 9999), 10, 36);

0
application/header.php Normal file → Executable file
View File

0
application/hide.php Normal file → Executable file
View File

92
application/info.php Normal file → Executable file
View File

@ -37,6 +37,7 @@ $imgSize = filesize($imgABPath);
$upTime = filemtime($imgABPath);
// 广告
if ($config['ad_top']) echo $config['ad_top_info'];
?>
<div class="col-md-12">
<div class="col-md-6" style="text-align: center;">
@ -70,6 +71,9 @@ if ($config['ad_top']) echo $config['ad_top_info'];
<td>
<a class="btn btn-mini btn-primary" href="<?php echo $img_url; ?>" target="_blank"><i class="icon icon-picture"> 查看</i></a>
<a class="btn btn-mini btn-primary" href="/application/down.php?dw=<?php echo $getIMG; ?>" target="_blank"><i class="icon icon-cloud-download"> 下载</i></a>
<?php if (!empty($config['report'])) : ?>
<a class="btn btn-mini btn-warning" href="<?php echo $config['report'] . '?Website1=' . $img_url; ?>" target="_blank"><i class="icon icon-question-sign"> 举报</i></a>
<?php endif; ?>
<?php if (is_who_login('admin')) : ?>
<a class="btn btn-mini btn-warning" href="/application/del.php?recycle_url=<?php echo $getIMG; ?>" target="_blank"><i class="icon icon-undo"> 回收</i></a>
<a class="btn btn-mini btn-danger" href="/application/del.php?url=<?php echo $del_url; ?>" target="_blank"><i class="icon icon-trash"> 删除</i></a>
@ -78,9 +82,8 @@ if ($config['ad_top']) echo $config['ad_top_info'];
</tr>
</tbody>
</table>
<h4 class="with-padding hl-gray"><i class="icon icon-info-sign"> 此图片来自网友上传, 不代表<a href="/admin/terms.php" target="_blank">本站立场</a>, 若有侵权, 联系管理员删除!</i></h4>
<h4 class="with-padding hl-gray"><i class="icon icon-info-sign"> 此图片来自网友上传, 不代表<a href="/admin/terms.php" target="_blank">本站立场</a>, 若有侵权, 举报或联系管理员!</i></h4>
<!--
<h4>图片名称: < ?php echo pathinfo($getIMG, PATHINFO_FILENAME); ?></h4>
<h4>图片大小: < ?php echo getDistUsed($imgSize); ?></h4>
<h4>图片类型: image/< ?php echo pathinfo($getIMG, PATHINFO_EXTENSION); ?></h4>
@ -112,41 +115,68 @@ if ($config['ad_top']) echo $config['ad_top_info'];
-->
</div>
</div>
<div class="col-md-12" style="margin-top: 10px;">
<div class="col-md-12" style="padding-bottom: 10px;">
<div class="col-md-6" style="padding-bottom: 10px;">
<div class="input-group">
<span class="input-group-addon"><i class="icon icon-link"></i> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span>
<input type="text" class="form-control" id="links" onclick="copyText()" value="<?php echo $img_url; ?>">
<span class="input-group-btn"><button class="btn btn-default copyBtn1" type="button">复制</button></span>
</div>
</div>
<div class="col-md-6" style="padding-bottom: 10px;">
<div class="input-group">
<span class="input-group-addon"><i class="icon icon-chat"></i> 论坛代码&nbsp;&nbsp;&nbsp;</span>
<input type="text" class="form-control" id="bbscode" value="[img]<?php echo $img_url; ?>[/img]">
<span class="input-group-btn"><button class="btn btn-default copyBtn2" type="button">复制</button></span>
</div>
<div class="col-md-12" style="padding-bottom: 10px;">
<div class="col-md-6" style="padding-bottom: 10px;">
<div class="input-group">
<span class="input-group-addon"><i class="icon icon-link"></i> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span>
<input type="text" class="form-control" id="links" onclick="copyText()" value="<?php echo $img_url; ?>">
<span class="input-group-btn"><button class="btn btn-default copyBtn1" type="button">复制</button></span>
</div>
</div>
<div class="col-md-12" style="padding-bottom: 10px;">
<div class="col-md-6" style="padding-bottom: 10px;">
<div class="input-group">
<span class="input-group-addon"><i class="icon icon-code"></i> MarkDown</span>
<input type="text" class="form-control" id="markdown" value="![简单图床 - EasyImage](<?php echo $img_url; ?>)">
<span class="input-group-btn"><button class="btn btn-default copyBtn3" type="button">复制</button></span>
</div>
</div>
<div class="col-md-6" style="padding-bottom: 10px;">
<div class="input-group">
<span class="input-group-addon"><i class="icon icon-html5"></i> HTML&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span>
<input type="text" class="form-control" id="html" value='<img src="<?php echo $img_url; ?>" alt="简单图床 - EasyImage" />'>
<span class="input-group-btn"><button class="btn btn-default copyBtn4" type="button">复制</button></span>
</div>
<div class="col-md-6" style="padding-bottom: 10px;">
<div class="input-group">
<span class="input-group-addon"><i class="icon icon-chat"></i> 论坛代码&nbsp;&nbsp;&nbsp;</span>
<input type="text" class="form-control" id="bbscode" value="[img]<?php echo $img_url; ?>[/img]">
<span class="input-group-btn"><button class="btn btn-default copyBtn2" type="button">复制</button></span>
</div>
</div>
</div>
<div class="col-md-12" style="padding-bottom: 10px;">
<div class="col-md-6" style="padding-bottom: 10px;">
<div class="input-group">
<span class="input-group-addon"><i class="icon icon-code"></i> MarkDown</span>
<input type="text" class="form-control" id="markdown" value="![简单图床 - EasyImage](<?php echo $img_url; ?>)">
<span class="input-group-btn"><button class="btn btn-default copyBtn3" type="button">复制</button></span>
</div>
</div>
<div class="col-md-6" style="padding-bottom: 10px;">
<div class="input-group">
<span class="input-group-addon"><i class="icon icon-html5"></i> HTML&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span>
<input type="text" class="form-control" id="html" value='<img src="<?php echo $img_url; ?>" alt="简单图床 - EasyImage" />'>
<span class="input-group-btn"><button class="btn btn-default copyBtn4" type="button">复制</button></span>
</div>
</div>
</div>
<? /** 底部广告 */ if ($config['ad_bot']) echo $config['ad_bot_info']; ?>
<!-- 随机图片 -->
<?php if ($config['info_rand_pic']) : ?>
<div class="col-md-12" style="padding-bottom: 10px;">
<h4 class="header-dividing">当月随机图片:</h4>
<div class="cards cards-borderless">
<?php
$logFile = APP_ROOT . '/admin/logs/upload/' . date('Y-m') . '.php';
if (is_file($logFile)) {
include_once $logFile;
for ($i = 0; $i <= 7; $i++) {
$randName = array_rand($logs, 1);
// echo $img_url . $logs[$randName]['path'];
echo '
<div class="col-md-4 col-sm-6 col-lg-3">
<a class="card" href="?img=' . $logs[$randName]['path'] . '" target="_blank">
<img src="' . $logs[$randName]['path'] . '">
<div class="card-content text-muted text-ellipsis">' . $logs[$randName]['source'] . '</div>
</a>
</div>';
}
} else {
echo '<div class="alert alert-danger">本月还没有上传的图片哟~~ <br />快来上传第一张吧~!</div>';
}
?>
</div>
</div>
<?php endif; ?>
<!-- <script src="< php static_cdn(); ?>/public/static/exif/exif.js"></script> -->
<script src="<?php static_cdn(); ?>/public/static/EasyImage.js"></script>
<script src="<?php static_cdn(); ?>/public/static/zui/lib/clipboard/clipboard.min.js"></script>

0
application/lang/class.upload.xx_XX.php Normal file → Executable file
View File

View File

@ -0,0 +1,86 @@
<?php
// +------------------------------------------------------------------------+
// | class.upload.zh_CN.php |
// +------------------------------------------------------------------------+
// | Copyright (c) caoshiwei 2008. All rights reserved. |
// | Version 0.25 |
// | Last modified 09/29/2008 |
// | Email caoshiwei@gmail.com |
// | Web http://www.hfut.edu.cn |
// +------------------------------------------------------------------------+
// | This program is free software; you can redistribute it and/or modify |
// | it under the terms of the GNU General Public License version 2 as |
// | published by the Free Software Foundation. |
// | |
// | This program is distributed in the hope that it will be useful, |
// | but WITHOUT ANY WARRANTY; without even the implied warranty of |
// | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
// | GNU General Public License for more details. |
// | |
// | You should have received a copy of the GNU General Public License |
// | along with this program; if not, write to the |
// | Free Software Foundation, Inc., 59 Temple Place, Suite 330, |
// | Boston, MA 02111-1307 USA |
// | |
// | Please give credit on sites that use class.upload and submit changes |
// | of the script so other people can use them as well. |
// | This script is free to use, don't abuse. |
// +------------------------------------------------------------------------+
/**
* Class upload Chinese translation
*
* @version 0.25
* @codepage gb-2312
* @author Shiwei Cao (caoshiwei@gmail.com)
* @license http://opensource.org/licenses/gpl-license.php GNU Public License
* @copyright Shiwei Cao
* @package cmf
* @subpackage external
*/
$translation = array();
$translation['file_error'] = '<27>ļ<EFBFBD><C4BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ԡ<EFBFBD>';
$translation['local_file_missing'] = '<27><><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD><C4BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ڡ<EFBFBD>';
$translation['local_file_not_readable'] = '<27><><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD><C4BC><EFBFBD><EFBFBD>ɶ<EFBFBD><C9B6>';
$translation['uploaded_too_big_ini'] = '<27>ļ<EFBFBD><C4BC>ϼ<EFBFBD><CFBC><EFBFBD><EFBFBD><EFBFBD> (<28>ϴ<EFBFBD><CFB4><EFBFBD><EFBFBD>ļ<EFBFBD><C4BC><EFBFBD>С<EFBFBD><D0A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>php.ini<6E><69>upload_max_filesize<7A><65><EFBFBD>õĴ<C3B5>С)<29><>';
$translation['uploaded_too_big_html'] = '<27>ļ<EFBFBD><C4BC>ϼ<EFBFBD><CFBC><EFBFBD><EFBFBD><EFBFBD> (<28>ϴ<EFBFBD><CFB4><EFBFBD><EFBFBD>ļ<EFBFBD><C4BC><EFBFBD>С<EFBFBD><D0A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>HTML <20><><EFBFBD><EFBFBD><EFBFBD>õĴ<C3B5>С)<29><>';
$translation['uploaded_partial'] = '<27>ļ<EFBFBD><C4BC>ϼ<EFBFBD><CFBC><EFBFBD><EFBFBD><EFBFBD> (<28>ϴ<EFBFBD><CFB4><EFBFBD><EFBFBD>ļ<EFBFBD><C4BC><EFBFBD><EFBFBD>ֶ<EFBFBD>ʧ)<29><>';
$translation['uploaded_missing'] = '<27>ļ<EFBFBD><C4BC>ϼ<EFBFBD><CFBC><EFBFBD><EFBFBD><EFBFBD> (<28>ϴ<EFBFBD><CFB4>ļ<EFBFBD><C4BC><EFBFBD>ʧ)<29><>';
$translation['uploaded_unknown'] = '<27>ļ<EFBFBD><C4BC>ϼ<EFBFBD><CFBC><EFBFBD><EFBFBD><EFBFBD> (δ֪<CEB4><D6AA><EFBFBD><EFBFBD>).';
$translation['try_again'] = '<27>ļ<EFBFBD><C4BC>ϼ<EFBFBD><CFBC><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>ԡ<EFBFBD>';
$translation['file_too_big'] = '<27>ļ<EFBFBD>̫<EFBFBD><CCAB><EFBFBD><EFBFBD>';
$translation['no_mime'] = 'δ֪<CEB4>ļ<EFBFBD><C4BC><EFBFBD><EFBFBD>͡<EFBFBD>';
$translation['incorrect_file'] = '<27><><EFBFBD><EFBFBD>ȷ<EFBFBD><C8B7><EFBFBD>ļ<EFBFBD><C4BC><EFBFBD>ʽ<EFBFBD><CABD>';
$translation['image_too_wide'] = 'ͼƬ<CDBC><C6AC><EFBFBD><EFBFBD>̫<EFBFBD><CCAB><EFBFBD><EFBFBD>';
$translation['image_too_narrow'] = 'ͼƬ<CDBC><C6AC><EFBFBD><EFBFBD>̫С<CCAB><D0A1>';
$translation['image_too_high'] = 'ͼƬ<CDBC>߶<EFBFBD>̫<EFBFBD><CCAB><EFBFBD><EFBFBD>';
$translation['image_too_short'] = 'ͼƬ<CDBC>߶<EFBFBD>̫С<CCAB><D0A1>';
$translation['ratio_too_high'] = 'ͼƬ<CDBC><C6AC>/<2F>߱<EFBFBD><DFB1><EFBFBD>̫<EFBFBD><CCAB>(ͼƬ<CDBC><C6AC><EFBFBD><EFBFBD>̫<EFBFBD><CCAB>)<29><>';
$translation['ratio_too_low'] = 'ͼƬ<CDBC><C6AC>/<2F>߱<EFBFBD><DFB1><EFBFBD>̫<EFBFBD><CCAB>(ͼƬ<CDBC>߶<EFBFBD>̫<EFBFBD><CCAB>).';
$translation['too_many_pixels'] = 'ͼƬλ<C6AC><CEBB>̫<EFBFBD>ߡ<EFBFBD>';
$translation['not_enough_pixels'] = 'ͼƬλ<C6AC><CEBB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>';
$translation['file_not_uploaded'] = '<27>ļ<EFBFBD>δ<EFBFBD>ϴ<EFBFBD><CFB4><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ܽ<EFBFBD><DCBD>д<EFBFBD><D0B4><EFBFBD>';
$translation['already_exists'] = '%s <20>Ѿ<EFBFBD><D1BE><EFBFBD><EFBFBD>ڣ<EFBFBD><DAA3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD><C4BC><EFBFBD><EFBFBD><EFBFBD>';
$translation['temp_file_missing'] = '<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(<28><>ʱ)Դ<>ļ<EFBFBD><C4BC><EFBFBD><EFBFBD><EFBFBD>ȷ<EFBFBD><C8B7><EFBFBD><EFBFBD><EFBFBD>ܽ<EFBFBD><DCBD>д<EFBFBD><D0B4><EFBFBD>';
$translation['source_missing'] = '<27><><EFBFBD>ϴ<EFBFBD><CFB4><EFBFBD><EFBFBD>ļ<EFBFBD><C4BC><EFBFBD>ʧ<EFBFBD><CAA7><EFBFBD><EFBFBD><EFBFBD>ܽ<EFBFBD><DCBD>д<EFBFBD><D0B4><EFBFBD>';
$translation['destination_dir'] = 'Ŀ<><C4BF><EFBFBD>ļ<EFBFBD>Ŀ¼<C4BF><C2BC><EFBFBD>ܱ<EFBFBD><DCB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ܽ<EFBFBD><DCBD>д<EFBFBD><D0B4><EFBFBD>';
$translation['destination_dir_missing'] = 'Ŀ<><C4BF><EFBFBD>ļ<EFBFBD>Ŀ¼<C4BF><C2BC><EFBFBD><EFBFBD><EFBFBD>ڣ<EFBFBD><DAA3><EFBFBD><EFBFBD>ܽ<EFBFBD><DCBD>д<EFBFBD><D0B4><EFBFBD>';
$translation['destination_path_not_dir'] = 'Ŀ¼·<C2BC><C2B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD><D2BB><EFBFBD><EFBFBD>Ч<EFBFBD><D0A7>Ŀ¼<C4BF><C2BC><EFBFBD><EFBFBD><EFBFBD>ܽ<EFBFBD><DCBD>д<EFBFBD><D0B4><EFBFBD>';
$translation['destination_dir_write'] = '<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ŀ<EFBFBD><C4BF><EFBFBD>ļ<EFBFBD>Ŀ¼<C4BF><C2BC><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA>д<EFBFBD>ģ<EFBFBD><C4A3><EFBFBD><EFBFBD>ܽ<EFBFBD><DCBD>д<EFBFBD><D0B4><EFBFBD>';
$translation['destination_path_write'] = 'Ŀ¼·<C2BC><C2B7><EFBFBD>Dz<EFBFBD><C7B2><EFBFBD><EFBFBD><EFBFBD>д<EFBFBD>ģ<EFBFBD><C4A3><EFBFBD><EFBFBD>ܽ<EFBFBD><DCBD>д<EFBFBD><D0B4><EFBFBD>';
$translation['temp_file'] = '<27><><EFBFBD>ܴ<EFBFBD><DCB4><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD>ļ<EFBFBD><C4BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ܽ<EFBFBD><DCBD>д<EFBFBD><D0B4><EFBFBD>';
$translation['source_not_readable'] = <>ļ<EFBFBD><C4BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Զ<EFBFBD><D4B6><EFBFBD><EFBFBD><EFBFBD>ܽ<EFBFBD><DCBD>д<EFBFBD><D0B4><EFBFBD>';
$translation['no_create_support'] = '%s <20><>֧<EFBFBD>ִ<EFBFBD><D6B4><EFBFBD>';
$translation['create_error'] = '<27><>Դ<EFBFBD>ļ<EFBFBD><C4BC><EFBFBD><EFBFBD><EFBFBD> %s ͼƬ<CDBC><C6AC><EFBFBD><EFBFBD><EFBFBD>г<EFBFBD><D0B3><EFBFBD>';
$translation['source_invalid'] = '<27>޷<EFBFBD><DEB7><EFBFBD>ȡԭʼͼƬ<CDBC><C6AC>ȷ<EFBFBD><C8B7><EFBFBD>Dz<EFBFBD><C7B2><EFBFBD><EFBFBD><EFBFBD>ȷ<EFBFBD><C8B7>ͼƬ<CDBC>ļ<EFBFBD><C4BC><EFBFBD>';
$translation['gd_missing'] = 'GD <20><><EFBFBD>񲻿<EFBFBD><F1B2BBBF><EFBFBD>ʹ<EFBFBD>á<EFBFBD>';
$translation['watermark_no_create_support'] = '%s <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>֧<EFBFBD><D6A7>, <20><><EFBFBD>ܶ<EFBFBD>ȡˮӡ<CBAE>ļ<EFBFBD><C4BC><EFBFBD>';
$translation['watermark_create_error'] = '%s <20><>֧<EFBFBD>ֶ<EFBFBD>, <20><><EFBFBD>ܴ<EFBFBD><DCB4><EFBFBD>ˮӡ<CBAE><D3A1>';
$translation['watermark_invalid'] = 'δ֪<CEB4>ļ<EFBFBD><C4BC><EFBFBD>ʽ, <20>޷<EFBFBD><DEB7><EFBFBD>ȡˮӡ<CBAE>ļ<EFBFBD><C4BC><EFBFBD>';
$translation['file_create'] = '%s <20><>֧<EFBFBD>ִ<EFBFBD><D6B4><EFBFBD><EFBFBD><EFBFBD>';
$translation['no_conversion_type'] = <><CEB4><EFBFBD><EFBFBD>ת<EFBFBD><D7AA><EFBFBD><EFBFBD><EFBFBD><EFBFBD>';
$translation['copy_failed'] = '<27>ڷ<EFBFBD><DAB7><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϸ<EFBFBD><CFB8><EFBFBD><EFBFBD>ļ<EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD> copy() <20><><EFBFBD><EFBFBD>ʧ<EFBFBD><CAA7>.';
$translation['reading_failed'] = '<27><>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD><EFBFBD>г<EFBFBD><D0B3><EFBFBD>';
?>

0
application/lang/class.upload.zh_CN.php Normal file → Executable file
View File

0
application/lang/class.upload.zh_TW.php Normal file → Executable file
View File

7
application/list.php Normal file → Executable file
View File

@ -61,13 +61,16 @@ if ($config['ad_top']) echo $config['ad_top_info'];
$linkUrl = rand_imgurl() . $config_path . $value; // 图片复制与原图地址
?>
<div class="col-md-4 col-sm-6 col-lg-3">
<div class="card">
<div class="card" id="card">
<li><img src="../public/images/loading.svg" data-image="<?php echo creat_thumbnail_by_list($imgUrl); ?>" data-original="<?php echo $imgUrl; ?>" alt="简单图床-EasyImage"></li>
<div class="bottom-bar">
<a href="<?php echo $linkUrl; ?>" target="_blank"><i class="icon icon-picture" data-toggle="tooltip" title="原图" style="margin-left:10px;"></i></a>
<a href="#" class="copy" data-clipboard-text="<?php echo $linkUrl; ?>" data-toggle="tooltip" title="复制" style="margin-left:10px;"><i class="icon icon-copy"></i></a>
<a href="/application/info.php?img=<?php echo $relative_path; ?>" data-toggle="tooltip" title="信息" target="_blank" style="margin-left:10px;"><i class="icon icon-info-sign"></i></a>
<a href="/application/down.php?dw=<?php echo $relative_path; ?>" data-toggle="tooltip" title="下载" target="_blank" style="margin-left:10px;"><i class="icon icon-cloud-download"></i></a>
<a href="/application/info.php?img=<?php echo $relative_path; ?>" data-toggle="tooltip" title="信息" target="_blank" style="margin-left:10px;"><i class="icon icon-info-sign"></i></a>
<?php if (!empty($config['report'])) : ?>
<a href="<?php echo $config['report'] . '?Website1=' . $linkUrl; ?>" target="_blank"><i class="icon icon-question-sign" data-toggle="tooltip" title="举报" style="margin-left:10px;"></i></a>
<?php endif; ?>
<?php if (is_who_login('admin')) : ?>
<a href="/application/del.php?recycle_url=<?php echo $relative_path; ?>" target="_blank" data-toggle="tooltip" title="回收" style="margin-left:10px;"><i class="icon icon-undo"></i></a>
<a href="/application/del.php?url=<?php echo $relative_path; ?>" target="_blank" data-toggle="tooltip" title="删除" style="margin-left:10px;"><i class="icon icon-trash"></i></a>

0
application/md5.php Normal file → Executable file
View File

0
application/post_del.php Normal file → Executable file
View File

0
application/process.php Normal file → Executable file
View File

0
application/read_log.php Normal file → Executable file
View File

0
application/thumb.php Normal file → Executable file
View File

0
application/total_files.php Normal file → Executable file
View File

0
application/upload.php Normal file → Executable file
View File

0
config/api_key.php Normal file → Executable file
View File

0
config/config.guest.php Normal file → Executable file
View File

0
config/config.manager.php Normal file → Executable file
View File

8
config/config.php Normal file → Executable file
View File

@ -14,9 +14,9 @@ $config=Array
'imgurl'=>'http://127.0.0.1',
'user'=>'admin',
'password'=>'e6e061838856bf47e1de730719fb2609',
'captcha'=>1,
'captcha'=>0,
'mustLogin'=>0,
'apiStatus'=>0,
'apiStatus'=>1,
'path'=>'/i/',
'mime'=>'image/*,video/*',
'imgName'=>'default',
@ -64,6 +64,7 @@ $config=Array
'dark-mode'=>1,
'show_user_hash_del'=>1,
'show_exif_info'=>1,
'info_rand_pic'=>1,
'chart_on'=>1,
'check_ip'=>0,
'check_ip_model'=>0,
@ -84,6 +85,7 @@ $config=Array
),
'language'=>0,
'login_bg'=>'https://img.paulzzh.com/touhou/random',
'report'=>'',
'image_recycl'=>1,
'tinyfilemanager'=>1,
'delDir'=>'thumbnails/',
@ -94,7 +96,7 @@ $config=Array
'guest_path_status'=>0,
'token_path_status'=>0,
'admin_path'=>'u',
'update'=>'2022-05-27 00:06:41',
'update'=>'2022-07-09 18:39:54',
'footer'=>'<a href="/admin/terms.php" target="_blank">请勿上传违反中国政策的图片</a>
<script>
var _hmt = _hmt || [];

0
favicon.ico Normal file → Executable file
View File

Before

Width:  |  Height:  |  Size: 525 B

After

Width:  |  Height:  |  Size: 525 B

0
i/.htaccess Normal file → Executable file
View File

0
i/index.html Normal file → Executable file
View File

0
index.php Normal file → Executable file
View File

0
install/README/1305032567.png Normal file → Executable file
View File

Before

Width:  |  Height:  |  Size: 34 KiB

After

Width:  |  Height:  |  Size: 34 KiB

0
install/README/2657944724.png Normal file → Executable file
View File

Before

Width:  |  Height:  |  Size: 45 KiB

After

Width:  |  Height:  |  Size: 45 KiB

0
install/README/3053540273.png Normal file → Executable file
View File

Before

Width:  |  Height:  |  Size: 170 KiB

After

Width:  |  Height:  |  Size: 170 KiB

0
install/README/674074848.png Normal file → Executable file
View File

Before

Width:  |  Height:  |  Size: 22 KiB

After

Width:  |  Height:  |  Size: 22 KiB

0
install/README/chmod.png Normal file → Executable file
View File

Before

Width:  |  Height:  |  Size: 13 KiB

After

Width:  |  Height:  |  Size: 13 KiB

0
install/README/info.png Normal file → Executable file
View File

Before

Width:  |  Height:  |  Size: 164 KiB

After

Width:  |  Height:  |  Size: 164 KiB

0
install/README/log.png Normal file → Executable file
View File

Before

Width:  |  Height:  |  Size: 73 KiB

After

Width:  |  Height:  |  Size: 73 KiB

0
install/contorl.php Normal file → Executable file
View File

0
install/index.php Normal file → Executable file
View File

2
install/install.php Normal file → Executable file
View File

@ -181,7 +181,7 @@ if ($state !== 'checked') {
</div>
<?php echo 'Copyright © 2018-' . date('Y'); ?>
<a href="https://png.cm/" target="_blank">EasyImage</a> By
<a href="https://blog.png.cm/902.html" target="_blank">Icret</a> Version:<a href="https://github.com/icret/EasyImages2.0" target="_blank"><?php echo $config['version']; ?></a>
<a href="https://blog.png.cm/902.html" target="_blank">Icret</a> Version:<a href="https://github.com/icret/EasyImages2.0" target="_blank"><?php echo get_current_verson(); ?></a>
</footer>
</body>

0
public/.htaccess Normal file → Executable file
View File

0
public/images/404.png Normal file → Executable file
View File

Before

Width:  |  Height:  |  Size: 4.8 KiB

After

Width:  |  Height:  |  Size: 4.8 KiB

0
public/images/EasyImage2.0.png Normal file → Executable file
View File

Before

Width:  |  Height:  |  Size: 5.8 KiB

After

Width:  |  Height:  |  Size: 5.8 KiB

0
public/images/alipay.jpg Normal file → Executable file
View File

Before

Width:  |  Height:  |  Size: 56 KiB

After

Width:  |  Height:  |  Size: 56 KiB

0
public/images/image_icon_153794.png Normal file → Executable file
View File

Before

Width:  |  Height:  |  Size: 1.9 KiB

After

Width:  |  Height:  |  Size: 1.9 KiB

0
public/images/loading.svg Normal file → Executable file
View File

Before

Width:  |  Height:  |  Size: 1.0 KiB

After

Width:  |  Height:  |  Size: 1.0 KiB

0
public/images/watermark.png Normal file → Executable file
View File

Before

Width:  |  Height:  |  Size: 9.2 KiB

After

Width:  |  Height:  |  Size: 9.2 KiB

0
public/images/wechat.jpg Normal file → Executable file
View File

Before

Width:  |  Height:  |  Size: 55 KiB

After

Width:  |  Height:  |  Size: 55 KiB

0
public/static/EasyImage.css Normal file → Executable file
View File

0
public/static/EasyImage.js Normal file → Executable file
View File

0
public/static/echarts/echarts.min.js vendored Normal file → Executable file
View File

0
public/static/exif/exif.js Normal file → Executable file
View File

0
public/static/fonts/FontAwesome.otf Normal file → Executable file
View File

0
public/static/fonts/fontawesome-webfont.eot Normal file → Executable file
View File

0
public/static/fonts/fontawesome-webfont.svg Normal file → Executable file
View File

Before

Width:  |  Height:  |  Size: 434 KiB

After

Width:  |  Height:  |  Size: 434 KiB

0
public/static/fonts/fontawesome-webfont.ttf Normal file → Executable file
View File

0
public/static/fonts/fontawesome-webfont.woff Normal file → Executable file
View File

0
public/static/fonts/fontawesome-webfont.woff2 Normal file → Executable file
View File

0
public/static/hkxzy.ttf Normal file → Executable file
View File

0
public/static/i18n/jquery.s2t.js Normal file → Executable file
View File

0
public/static/jscolor/jscolor.min.js vendored Normal file → Executable file
View File

0
public/static/lazyload/lazyload.js Normal file → Executable file
View File

0
public/static/login.css Normal file → Executable file
View File

0
public/static/marquee/marquee.css Normal file → Executable file
View File

0
public/static/marquee/marquee.min.js vendored Normal file → Executable file
View File

0
public/static/md5/md5.min.js vendored Normal file → Executable file
View File

0
public/static/md5/md5.min.js.map Normal file → Executable file
View File

0
public/static/nprogress/nprogress.min.css vendored Normal file → Executable file
View File

0
public/static/nprogress/nprogress.min.js vendored Normal file → Executable file
View File

0
public/static/qrcode/qrcode.min.js vendored Normal file → Executable file
View File

0
public/static/tinyfilemanager/ace.js Normal file → Executable file
View File

0
public/static/tinyfilemanager/bootstrap.min.css vendored Normal file → Executable file
View File

0
public/static/tinyfilemanager/bootstrap.min.css.map Normal file → Executable file
View File

0
public/static/tinyfilemanager/bootstrap.min.js vendored Normal file → Executable file
View File

0
public/static/tinyfilemanager/bootstrap.min.js.map Normal file → Executable file
View File

0
public/static/tinyfilemanager/dropzone.min.css vendored Normal file → Executable file
View File

0
public/static/tinyfilemanager/dropzone.min.js vendored Normal file → Executable file
View File

0
public/static/tinyfilemanager/ekko-lightbox.css Normal file → Executable file
View File

Some files were not shown because too many files have changed in this diff Show More