Files

80 lines
1.9 KiB
PHP

<?php namespace Phpcmf\Model;
/**
* https://www.besyun.com
* BESCMS
* 本文件是框架系统文件,二次开发时不可以修改本文件,可以通过继承类方法来重写此文件
**/
// 同步删除
class Sync extends \Phpcmf\Model {
protected $sync = [
'delete_member' => [],
'delete_content' => [],
];
public function __construct(...$params) {
parent::__construct(...$params);
$local = \Phpcmf\Service::Apps();
foreach ($local as $dir => $path) {
if (is_file($path.'Config/Sync.php')) {
$sync = require $path.'Config/Sync.php';
foreach ($sync as $tid => $t) {
if ($t) {
if (!$this->sync[$tid][$dir]) {
$this->sync[$tid][$dir] = $t;
} else {
$this->sync[$tid][$dir] = dr_array2array($this->sync[$tid][$dir], $t);
}
}
}
}
}
}
/**
* 删除用户时的联动
*/
public function delete_member($id) {
if (!$id) {
return;
}
if (!$this->sync['delete_member']) {
return;
}
foreach ($this->sync['delete_member'] as $dir => $list) {
foreach ($list as $model => $method) {
\Phpcmf\Service::M($model, $dir)->$method($id);
}
}
}
/**
* 删除模块内容时的联动
*/
public function delete_content($id, $siteid, $dirname) {
if (!$id) {
return;
}
if (!$this->sync['delete_content']) {
return;
}
foreach ($this->sync['delete_content'] as $dir => $list) {
foreach ($list as $model => $method) {
\Phpcmf\Service::M($model, $dir)->$method($id, $siteid, $dirname);
}
}
}
}