From e338935dab4a04b9feca26bc50a236ed5b20c87f Mon Sep 17 00:00:00 2001 From: DiscuzX <153619335@qq.com> Date: Thu, 22 Apr 2021 22:31:40 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E5=BC=80=E5=90=AF=E8=BF=9C?= =?UTF-8?q?=E7=A8=8B=E9=99=84=E4=BB=B6=E5=90=8E=EF=BC=8CDIY=E5=9B=BE?= =?UTF-8?q?=E7=89=87=E8=B7=AF=E5=BE=84=E9=94=99=E8=AF=AF=E6=97=A0=E6=B3=95?= =?UTF-8?q?=E6=98=BE=E7=A4=BA=E7=9A=84BUG?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- upload/source/function/function_block.php | 18 ++++++++++++++---- 1 file changed, 14 insertions(+), 4 deletions(-) diff --git a/upload/source/function/function_block.php b/upload/source/function/function_block.php index 48fa759d8..b33a2a8bd 100644 --- a/upload/source/function/function_block.php +++ b/upload/source/function/function_block.php @@ -388,16 +388,24 @@ function block_template($bid) { } } elseif($field['datatype'] == 'pic') { if($blockitem['picflag'] == '1') { - $replacevalue = $_G['setting']['attachurl'].$replacevalue; + if(!$_G['setting']['ftp']['on'] || file_exists($_G['setting']['attachdir'].$replacevalue)) { + $replacevalue = $_G['setting']['attachurl'].$replacevalue; + } else { + $replacevalue = (preg_match('/^https?:\/\//is', $replacevalue) ? '' : $_G['setting']['ftp']['attachurl']).$replacevalue; + } } elseif ($blockitem['picflag'] == '2') { - $replacevalue = $_G['setting']['ftp']['attachurl'].$replacevalue; + $replacevalue = (preg_match('/^https?:\/\//is', $replacevalue) ? '' : $_G['setting']['ftp']['attachurl']).$replacevalue; } if($blockitem['picflag'] && $block['picwidth'] && $block['picheight'] && $block['picwidth'] != 'auto' && $block['picheight'] != 'auto') { if($blockitem['makethumb'] == 1) { if($blockitem['picflag'] == '1') { - $replacevalue = $_G['setting']['attachurl'].$blockitem['thumbpath']; + if(!$_G['setting']['ftp']['on'] || file_exists($_G['setting']['attachdir'].$blockitem['thumbpath'])) { + $replacevalue = $_G['setting']['attachurl'].$blockitem['thumbpath']; + } else { + $replacevalue = (preg_match('/^https?:\/\//is', $blockitem['thumbpath']) ? '' : $_G['setting']['ftp']['attachurl']).$blockitem['thumbpath']; + } } elseif ($blockitem['picflag'] == '2') { - $replacevalue = $_G['setting']['ftp']['attachurl'].$blockitem['thumbpath']; + $replacevalue = (preg_match('/^https?:\/\//is', $blockitem['thumbpath']) ? '' : $_G['setting']['ftp']['attachurl']).$blockitem['thumbpath']; } } elseif(!$_G['block_makethumb'] && !$blockitem['makethumb']) { C::t('common_block_item')->update($itemid, array('makethumb'=>2)); @@ -411,6 +419,8 @@ function block_template($bid) { $picflag = 1; //common_block_pic表中的picflag标识(0本地,1远程) $_G['block_makethumb'] = true; @unlink($_G['setting']['attachdir'].'./'.$thumbpath); + C::t('common_block_item')->update($itemid, array('picflag' => 2)); + $replacevalue = (preg_match('/^https?:\/\//is', $thumbpath) ? '' : $_G['setting']['ftp']['attachurl']).$thumbpath; } } elseif(file_exists($_G['setting']['attachdir'].$thumbpath) || ($return = $image->Thumb($replacevalue, $thumbpath, $block['picwidth'], $block['picheight'], 2))) { $picflag = 0; //common_block_pic表中的picflag标识(0本地,1远程) -- Gitee