cfmgrv4 init...3

This commit is contained in:
최준흠 2024-10-20 14:59:09 +09:00
parent ffd638f269
commit 8c18fea8d7
3 changed files with 16 additions and 7 deletions

View File

@ -6,9 +6,10 @@ use App\Controllers\BaseController;
use App\Entities\Cloudflare\AccountEntity;
use App\Entities\Cloudflare\AuthEntity;
use App\Entities\Cloudflare\ZoneEntity;
use App\Libraries\Cloudflare\Account;
use App\Libraries\Cloudflare\Record;
use App\Libraries\Cloudflare\Zone;
use App\Services\Cloudflare\Account;
use App\Services\Cloudflare\Zone;
use App\Services\Cloudflare\Record;
use App\Services\Cloudflare\Firewall;
use App\Models\Cloudflare\AuthModel;
use CodeIgniter\HTTP\RequestInterface;
use CodeIgniter\HTTP\ResponseInterface;
@ -49,6 +50,11 @@ class Cloudflare extends BaseController
$record = new Record($zone_entity);
return $record->reload();
}
private function firewall_process(ZoneEntity $zone_entity): array
{
$firewall = new Firewall($zone_entity);
return $firewall->reload();
}
public function reload(mixed $uid = false): void
{
//Transaction Start
@ -66,6 +72,9 @@ class Cloudflare extends BaseController
foreach ($zones as $key => $zone) {
$this->record_process($zone);
}
foreach ($zones as $key => $zone) {
$this->firewall_process($zone);
}
log_message("notice", "Reload 작업을 완료하였습니다.");
// $this->_db->transCommit();
} catch (\Exception $e) {
@ -74,8 +83,8 @@ class Cloudflare extends BaseController
log_message(
"error",
"Reload 작업을 실패하였습니다.\n--------------\n" .
$e->getMessage() .
"\n--------------\n"
$e->getMessage() .
"\n--------------\n"
);
}
}

View File

@ -127,7 +127,7 @@ class ZoneHelper extends MVCHelper
"<table><tr><td style=\"padding-bottom:5px;\">%s</td><td rowspan=\"2\">%s</td></tr><tr><td>%s</td></tr></table>",
$record,
parent::getFieldView($field, $viewDatas, ['class' => "label_zones", ...$extras]),
(in_array($viewDatas['myauth']->getAuthInfo('id'), ['choi.jh', 'kim.yh'])) ? $firewall : ""
(in_array($viewDatas['myauth']->getAuthInfo('id'), explode(",", env("cloudflare.firewall.acl")))) ? $firewall : ""
);
break;
case 'name_servers':

View File

@ -17,7 +17,7 @@
<div class="accordion-item">
<a href="/admin/cloudflare/record"><?= ICONS['BOX'] ?> Record</a>
</div>
<?php if (in_array($viewDatas['myauth']->getAuthInfo('id'), ['choi.jh', 'kim.yh'])): ?>
<?php if (in_array($viewDatas['myauth']->getAuthInfo('id'), explode(",", env("cloudflare.firewall.acl")))): ?>
<div class="accordion-item">
<a href="/admin/cloudflare/firewall"><?= ICONS['BOX'] ?> Firewall</a>
</div>