pull/141/head
icret 2022-03-27 03:39:15 +08:00
parent 25e437f887
commit e78f5ff4a4
10 changed files with 143 additions and 84 deletions

0
.htaccess Executable file
View File

View File

@ -116,12 +116,16 @@ $HTTP["url"] =~ "^/(i|public)/" {
<details><summary>点击查看2.0版更新日志</summary>
* 2022-3-15 v2.5.7 dev
- 增加弹窗公告
- 微调了广场样式
- 微调了删除文件
- 删除了base.php
- 日志记录上传IP端口
- 日志记录通过API上传的ID
- 修复图片回收中批量删除失败
- 修复广场预览ico格式文件失败
- 缩略图最大生成与用户设置关联
- 修复个别浏览器显示二维遮住网页
- 缩略图最大生成与用户设置最大上传关联
- 安全检测中检测本地域名改为检测局域网
* 2022-3-13 v2.5.6
@ -480,4 +484,4 @@ RewriteRule config/(.*).(php)$ [F]
* have fun!
[![项目状态](https://repobeats.axiom.co/api/embed/0922803f14091f0686de26fee5196b9984b106a4.svg "Repobeats analytics image")](https://png.cm)
[![Stargazers over time](https://starchart.cc/icret/EasyImages2.0.svg)](/stargazers)
[![Stargazers over time](https://starchart.cc/icret/EasyImages2.0.svg)](https://github.com/icret/EasyImages2.0/stargazers)

View File

@ -226,7 +226,7 @@ if (isset($_GET['recycle_reimg'])) {
</div>
<div class="form-group">
<label>网站关键字</label>
<textarea class="form-control" rows="2" name="keywords" required="required" onkeyup="this.value=this.value.replace(/\s/g,'')"><?php echo $config['keywords']; ?></textarea>
<input type="text" class="form-control" name="keywords" required="required" value="<?php echo $config['keywords']; ?>" onkeyup="this.value=this.value.replace(/\s/g,'')">
</div>
<div class="form-group">
<label>网站描述</label>
@ -234,7 +234,11 @@ if (isset($_GET['recycle_reimg'])) {
</div>
<div class="form-group">
<label data-toggle="tooltip" title="不同公告以a标签分割">网站公告 | 支持html</label>
<textarea class="form-control" rows="3" name="tips"><?php echo $config['tips']; ?></textarea>
<textarea class="form-control" rows="2" name="tips"><?php echo $config['tips']; ?></textarea>
</div>
<div class="form-group">
<label data-toggle="tooltip" title="需要在图床安全中开启弹窗公告">弹窗公告 | 支持html</label>
<textarea class="form-control" rows="2" name="notice" placeholder="弹窗公告会在首次访问网站时弹出,关闭浏览器再次访问弹出"><?php echo $config['notice']; ?></textarea>
</div>
<div class="form-group">
<label data-toggle="tooltip" title="HTML / 统计代码 / JS / CSS">页首代码 | 需闭合标签</label>
@ -638,6 +642,13 @@ if (isset($_GET['recycle_reimg'])) {
<label style="font-weight: bold">上传日志</label>
</div>
</div>
<div class="form-group">
<div class="switch switch-inline" data-toggle="tooltip" title="公告每次打开浏览器访问网站会重新打开弹窗">
<input type="hidden" name="notice_status" value="0">
<input type="checkbox" name="notice_status" value="1" <?php if ($config['notice_status']) echo 'checked="checked"'; ?>>
<label style="font-weight: bold">弹窗公告</label>
</div>
</div>
<div class="form-group">
<div class="switch switch-inline" data-toggle="tooltip" title="通过指定参数查询图床的开放数据 | 与缓存周期同步 | 使用方法见使用手册->公共查询">
<input type="hidden" name="public" value="0">

View File

@ -4,18 +4,7 @@
* 删除文件页面
*/
require_once './header.php';
echo '<div class="col-md-4 col-md-offset-4">
<div id="title" style="margin: 10px;"></div>
<form class="form-inline" method="get" action="' . $_SERVER['SCRIPT_NAME'] . '" id="form" name="delForm" onSubmit="getStr();">
<div class="form-group">
<label for="exampleInputInviteCode3">删除图片-格式:</label>
<input type="text" class="form-control" id="exampleInputInviteCode3" name="url" placeholder="https://i1.100024.xyz/i/2021/05/04/10fn9ei.jpg">
</div>
<button type="submit" class="btn btn-danger">删除</button>
</form>
</div>
';
if (empty($_REQUEST)) {
echo '
<script>
@ -25,14 +14,11 @@ if (empty($_REQUEST)) {
}).show();
</script>
';
//header("refresh:3;url=".$config['domain']."");
}
} elseif (isset($_GET['url'])) {
$img = $config['imgurl'] . '/public/images/404.png';
if (isset($_GET['url'])) {
$img = $_GET['url'];
echo '
<div class="col-md-12">
<a href="' . $img . '" target="_blank"><img src="' . $img . '" alt="简单图床-EasyImage" class="img-thumbnail"></a>
</div>';
}
// 解密删除
@ -114,9 +100,17 @@ if (is_who_login('admin')) {
';
}
}
require_once APP_ROOT . '/application/footer.php';
?>
<div class="col-md-4 col-md-offset-4">
<a href="<?php echo $img; ?>" target="_blank"><img src="<?php echo $img; ?>" alt="简单图床-EasyImage" class="img-thumbnail"></a>
<form class="form-inline" method="get" action="<?php $_SERVER['SCRIPT_NAME']; ?>" id="form" name="delForm" onSubmit="getStr();">
<div class="form-group">
<label for="exampleInputInviteCode3">删除图片-格式:</label>
<input type="text" class="form-control" id="exampleInputInviteCode3" name="url" placeholder="https://i1.100024.xyz/i/2021/05/04/10fn9ei.jpg">
</div>
<button type="submit" class="btn btn-danger">删除</button>
</form>
</div>
<script>
// 修改网页标题
document.title = "删除图片 - <?php echo $config['title']; ?>";
@ -132,4 +126,5 @@ require_once APP_ROOT . '/application/footer.php';
function getWord() {
oTi.innerHTML = '<img src="' + oBtn.value + '" width="200" class="img-rounded" /><br />';
}
</script>
</script>
<?php require_once APP_ROOT . '/application/footer.php';

View File

@ -1,25 +1,44 @@
<?php
defined('APP_ROOT') ?: exit; // 禁止访问
if ($config['ad_bot']) echo $config['ad_bot_info']; // 底部广告
?>
<footer class="container text-muted small navbar-fixed-bottom" style="text-align: center;background-color:rgba(255,255,255,0.7);">
<hr>
<!-- 对话框HTML -->
<div class="modal fade" id="myModal">
<div class="modal-dialog modal-sm">
// 禁止直接访问
defined('APP_ROOT') ?: exit;
// 底部广告
if ($config['ad_bot']) echo $config['ad_bot_info'];
// 弹窗公告
if ($config['notice_status'] == 1 && !empty($config['notice'])) : ?>
<div class="modal fade" id="notice">
<div class="modal-dialog">
<div class="modal-content">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal">
<span aria-hidden="true">x</span>
<span class="sr-only">关闭</span></button>
<p class="modal-title icon icon-mobile" style="text-align: center">扫描二维码使用手机上传</p>
<p class="modal-title icon icon-bell" style="text-align: center"> 网站公告</p>
</div>
<div class="modal-body">
<p id="qrcode"></p>
<?php echo $config['notice']; ?>
</div>
</div>
</div>
</div>
<?php endif; ?>
<!-- 二维码 -->
<div class="modal fade" id="qr">
<div class="modal-dialog modal-sm">
<div class="modal-content">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal">
<span aria-hidden="true">x</span>
<span class="sr-only">关闭</span></button>
<p class="modal-title icon icon-mobile" style="text-align: center">扫描二维码使用手机上传</p>
</div>
<div class="modal-body">
<p id="qrcode"></p>
</div>
</div>
</div>
</div>
<footer class="container text-muted small navbar-fixed-bottom" style="text-align: center;background-color:rgba(255,255,255,0.7);">
<hr>
<?php /** 页脚信息 */ if (!empty($config['footer'])) echo $config['footer']; ?>
<p>
© 2018-<?php echo date("Y"); ?>
@ -27,8 +46,8 @@ if ($config['ad_bot']) echo $config['ad_bot_info']; // 底部广告
<a href="https://github.com/icret/EasyImages2.0" target="_blank" rel="nofollow"><?php echo $config['version']; ?></a> By
<a href="https://blog.png.cm" target="_blank">Icret</a>
<a href="/admin/terms.php" target="_blank"> DMCA</a>
<!-- 二维码对话框触发按钮 -->
<a href="#" data-position="center" data-moveable="inside" data-moveable="true" data-toggle="modal" data-target="#myModal" title="使用手机扫描二维码访问"><i class="icon icon-qrcode hidden-xs inline-block"></i></a>
<!-- 二维码按钮 -->
<a data-toggle="modal" href="#qr" title="使用手机扫描二维码访问"><i class="icon icon-qrcode hidden-xs inline-block"></i></a>
<?php
// 登录与退出
if (is_who_login('admin') || is_who_login('guest')) {
@ -64,6 +83,30 @@ if ($config['ad_bot']) echo $config['ad_bot_info']; // 底部广告
correctLevel: QRCode.CorrectLevel.H
});
// 二维码对话框属性
$('#qr').modal({
moveable: "inside",
backdrop: false,
show: false,
})
<?php /** 弹窗公告控制 */ if ($config['notice_status'] == 1 && !empty($config['notice'])) : ?>
if (document.cookie.indexOf("noticed=") == -1) {
$('#notice').modal({
backdrop: false,
loadingIcon: "icon-spin",
scrollInside: true,
moveable: "inside",
rememberPos: true,
scrollInside: true
}).on('hidden.zui.modal', function() {
// 只有用户手动关闭才会存储cookie,避免不看公告直接刷新
document.cookie = "noticed =1";
console.log('网站公告已显示完毕')
})
}
<?php endif; ?>
<?php /** 简繁转换 */ if ($config['language'] == 1) : ?>
$.getScript("<?php static_cdn(); ?>/public/static/i18n/jquery.s2t.js", function() { //加载成功后,并执行回调函数
$('*').s2t();

View File

@ -1,5 +1,40 @@
<?php
require_once __DIR__ . '/../config/base.php';
/**
* EasyImage2.0 - 简单图床基础配置
* @author icret
* @email lemonim@qq.com
* @Github https://github.com/icret/easyImages2.0
* QQ Group 623688684
* @Last 2022-1-22 17:38:57
* 上传服务器后第一次打开会检查运行环境,请根据提示操作;
* 检查环境仅会在第一开始开始出现并在config目录下生成EasyImage.lock文件如需再次查看请删除此文件。
* 敬请注意本程序为开源程序你可以使用本程序在任何非商业项目或者网站中。但请你务必保留代码中相关信息页面logo和页面上必要的链接可以更改
* 本人仅为程序开源创作,如非法网站与本人无关,请勿用于非法用途
* 请为本人博客blog.png.cm加上网址链接谢谢支持。作为开发者你可以对相应的后台功能进行扩展增删改相应代码,但请保留代码中相关来源信息(例如:本人博客,邮箱等)
* 如果因安装问题或其他问题可以给我发邮件。
*/
/*---------------基础配置开始-------------------*/
// 设置html为utf8
@header('Content-Type:text/html;charset=utf-8');
//将时区设置为中国·上海
@ini_set('date.timezone', 'Asia/Shanghai');
@date_default_timezone_set('Asia/Shanghai');
// 修改内存限制 根据服务器配置选择低于128M容易出现上传失败你懂得图片挺占用内存的
@ini_set('memory_limit', '512M');
// 定义根目录
@define('APP_ROOT', str_replace('\\', '/', realpath(dirname(__FILE__) . '/../')));
// 判断当前的系统类型是否为windows
@define('IS_WIN', strstr(PHP_OS, 'WIN') ? 1 : 0);
/*---------------基础配置结束-------------------*/
require_once APP_ROOT . '/config/config.php';
require_once APP_ROOT . '/config/config.guest.php';
@ -469,14 +504,17 @@ function is_who_login($user)
{
global $config;
global $guestConfig;
$getCOK = unserialize($_COOKIE['auth']);
if (!$getCOK) return false;
if ($user == 'admin') {
if ($getCOK[1] == $config['password']) return true;
}
if ($user == 'guest') {
if ($getCOK[0] !== $guestConfig[$getCOK[0]]) return true;
if (isset($_COOKIE['auth'])) {
$getCOK = unserialize($_COOKIE['auth']);
// if (!$getCOK) return false;
if ($user == 'admin') {
if ($getCOK[1] == $config['password']) return true;
}
if ($user == 'guest') {
if ($getCOK[0] !== $guestConfig[$getCOK[0]]) return true;
}
}
return false;
}

View File

@ -44,7 +44,6 @@ Thumb::show($src, $w, $h);
* ct 画布的透明度 true (1) 使用透明而忽略背景颜色
*/
require_once __DIR__ . '/function.php';
// 中文翻译 https://my.oschina.net/whrlmc/blog/81739
define('LOCAL_FILE_BASE_DIRECTORY', APP_ROOT);

View File

@ -1,36 +0,0 @@
<?php
/**
* EasyImage2.0 - 简单图床基础配置
* @author icret
* @email lemonim@qq.com
* @Github https://github.com/icret/easyImages2.0
* QQ Group 623688684
* @Last 2022-1-22 17:38:57
* 上传服务器后第一次打开会检查运行环境,请根据提示操作;
* 检查环境仅会在第一开始开始出现并在config目录下生成EasyImage.lock文件如需再次查看请删除此文件。
* 敬请注意本程序为开源程序你可以使用本程序在任何非商业项目或者网站中。但请你务必保留代码中相关信息页面logo和页面上必要的链接可以更改
* 本人仅为程序开源创作,如非法网站与本人无关,请勿用于非法用途
* 请为本人博客blog.png.cm加上网址链接谢谢支持。作为开发者你可以对相应的后台功能进行扩展增删改相应代码,但请保留代码中相关来源信息(例如:本人博客,邮箱等)
* 如果因安装问题或其他问题可以给我发邮件。
* 配置分为两大区块 - 1.基础配置 2.图床配置
*/
/*---------------基础配置-------------------*/
// 设置html为utf8
@header('Content-Type:text/html;charset=utf-8');
//将时区设置为中国·上海
@ini_set('date.timezone', 'Asia/Shanghai');
@date_default_timezone_set('Asia/Shanghai');
// 修改内存限制 根据服务器配置选择低于128M容易出现上传失败你懂得图片挺占用内存的
@ini_set('memory_limit', '512M');
// 定义根目录
@define('APP_ROOT', str_replace('\\', '/', realpath(dirname(__FILE__) . '/../')));
// 判断当前的系统类型是否为windows
@define('IS_WIN', strstr(PHP_OS, 'WIN') ? 1 : 0);

View File

@ -4,9 +4,12 @@ $config=Array
'title'=>'简单图床 - EasyImage',
'keywords'=>'简单图床,easyimage,easyimage2.0,无数据库图床,PHP多图长传程序,自适应页面,HTML5,markdown,bbscode,一键复制',
'description'=>'简单图床EasyImage是一款支持多文件上传的无数据库图床,可以完美替代PHP多图上传程序,最新html5自适应页面兼容手机电脑,上传后返回图片直链,markdown图片,论坛贴图bbscode链接,简单方便支持一键复制,支持多域名,api上传',
'tips'=>'<a><li class="icon icon-bullhorn text-muted">单文件≤10M,单次上传≤30张</li></a>
'tips'=>'<a href="https://github.com/icret/EasyImages2.0" target="_black"><i class="icon icon-github"> 如果你喜欢这种图床风格就下载喔 (๑•̀ㅂ•́)و✧</i></a>
<a href="https://github.com/icret/EasyImages2.0" target="_black"><i class="icon icon-heart"> 简单图床是一款开源图床, 支持多文件上传无数据库</i></a>
<a href="https://github.com/icret/EasyImages2.0" target="_black"><i class="icon icon-github"> 如果你喜欢这种图床风格就下载喔 (๑•̀ㅂ•́)و✧</i></a>',
<a><li class="icon icon-bullhorn text-muted"> 单文件≤10M单次上传≤30张</li></a>',
'notice_status'=>0,
'notice'=>'<p>简单图床是一款开源图床, 支持多文件上传无数据库;</p>
<p>如果你喜欢这种图床风格就<a href="https://github.com/icret/EasyImages2.0" target="_black">下载</a> (๑•̀ㅂ•́)و✧</p>',
'domain'=>'http://127.0.0.1',
'imgurl'=>'http://127.0.0.1',
'user'=>'admin',
@ -100,7 +103,7 @@ var _hmt = _hmt || [];
'delDir'=>'thumbnails/',
'hide'=>0,
'version'=>'2.5.6',
'update'=>'2022-03-24 12:39:24',
'update'=>'2022-03-27 03:21:45',
'terms'=>'<div class="container">
<div class="row">
<div class="col-xs-3">

View File

@ -41,6 +41,8 @@ if (isset($_POST['del_extra_files'])) {
if ($_POST['del_extra_files'] == "del") {
@unlink(APP_ROOT . '/LICENSE');
@unlink(APP_ROOT . '/README.md');
@deldir(APP_ROOT . "/admin/logs");
@deldir(APP_ROOT . "/SECURITY.md");
@unlink(APP_ROOT . '/.whitesource');
@unlink(APP_ROOT . '/CODE_OF_CONDUCT.md');
@unlink(APP_ROOT . '/config/EasyIamge.lock');