首先感谢上游 https://www.chenbo.info/995.html 提供的教程、头图和 SDK 文件。
由于原文发布于十个月前,在此期间在 GitHub 开源的 Chevereto-Free 的 app/lib/classes/class.upload.php
和 app/themes/Peafowl/views/dashboard.php
已经发生变化,笔者根据原文的教程修修改改已经成功在 Chevereto-Free 1.3.0 上实现鉴黄,在此放上基于最新版的修改。
捐赠版的 app/themes/Peafowl/views/dashboard.php
与免费版的有所不同,请根据具体代码位置修改。
修改处:
app/lib/classes/class.upload.php
第 93 行增加以下内容:
$this->isValidCensor(); // Exception 2 图片审核
(在第 93 行增加之后的)第 534 行左右增加以下内容:
/** 图像审核
* @throws UploadException
*/
protected function isValidCensor()
{
$censor_status = Settings::get("is_censor");
if($censor_status == 1){
$censor = new Imagecensor();
if ($this->type == 'file') {
$rep = $censor->imageCensorUserDefined(file_get_contents($this->source['tmp_name']));
} else if ($this->type == 'url') {
$rep = $censor->imageCensorUserDefined($this->source);
}
if (array_key_exists('error_code', $rep)) throw new UploadException("图片审核失败", 201);
$conclusionType = $rep['conclusionType'];//1:合规,2:不合规,3:疑似,4:审核失败
if ($conclusionType == 4) {
throw new UploadException("图片审核失败", 201);
} else if ($conclusionType > 1) {
throw new UploadException("图片违规", 201);
}
}
}
app/themes/Peafowl/views/dashboard.php
第 2854 行增加以下内容:
(因解析器错误,内容请移步 https://s.itxe.net/typecho/usr/uploads/pornver-addon.html )
数据库修改
执行以下 SQL 语句,注意替换数据库名和表前缀:
INSERT INTO `数据库名`.`chv_settings`( `setting_id`, `setting_name`, `setting_value`, `setting_default`, `setting_typeset`) VALUES ('193', 'is_censor', '0','0', 'bool');
INSERT INTO `数据库名`.`chv_settings`( `setting_id`, `setting_name`, `setting_value`, `setting_default`, `setting_typeset`) VALUES ('194', 'baidu_app_id', '', '', 'string');
INSERT INTO `数据库名`.`chv_settings`( `setting_id`, `setting_name`, `setting_value`, `setting_default`, `setting_typeset`) VALUES ('195', 'baidu_app_key', '', '', 'string');
INSERT INTO `数据库名`.`chv_settings`( `setting_id`, `setting_name`, `setting_value`, `setting_default`, `setting_typeset`) VALUES ('196', 'baidu_app_secret', '', '', 'string');
若 setting_id
重复,修改相应值即可。
压缩包链接:https://iks.lanzous.com/i4zJPm6h2yb
压缩包已包含上述修改和原作者修改后的 SDK,如您欲按上述步骤手动修改,请务必将压缩包内的 class.aipbase.php
, class.aiphttpclient.php
, class.aiphttpUtil.php
和 class.imagecensor.php
上传至相应目录。
原创文章,作者:iks,如若转载,请注明出处:https://blog.idc.moe/archives/image-review-for-Chevereto-Free.html