cfmgrv4 init...2
This commit is contained in:
parent
e8257f3813
commit
375c6cd48a
@ -3,8 +3,4 @@
|
||||
</IfModule>
|
||||
<IfModule !authz_core_module>
|
||||
Deny from all
|
||||
</IfModule>
|
||||
RewriteEngine On
|
||||
RewriteCond %{REQUEST_FILENAME} !-f
|
||||
RewriteCond %{REQUEST_FILENAME} !-d
|
||||
RewriteRule ^(.*)$ index.php/$1 [L]
|
||||
</IfModule>
|
||||
@ -246,7 +246,6 @@ define('LAYOUTS', [
|
||||
'<meta property="og:description" content="' . KEYWORD . '">',
|
||||
],
|
||||
'stylesheets' => [
|
||||
'<link rel="canonical" href="//daemonidc.com/" />',
|
||||
'<link rel="icon" href="/favicon.ico">',
|
||||
'<link rel="stylesheet" href="//code.jquery.com/ui/1.12.1/themes/base/jquery-ui.css">',
|
||||
'<link rel="stylesheet" href="//cdn.jsdelivr.net/npm/bootstrap-icons@1.10.5/font/bootstrap-icons.css">',
|
||||
@ -260,7 +259,7 @@ define('LAYOUTS', [
|
||||
'<script src="//code.jquery.com/ui/1.12.1/jquery-ui.min.js" integrity="sha256-VazP97ZCwtekAsvgPBSUwPFKdrwD3unUfSGVYrahUqU=" crossorigin="anonymous"></script>',
|
||||
'<script src="//cdn.jsdelivr.net/npm/bootstrap@5.3.0/dist/js/bootstrap.bundle.min.js"></script>',
|
||||
'<script src="//cdn.jsdelivr.net/npm/select2@4.1.0-rc.0/dist/js/select2.min.js"></script>',
|
||||
'<script src="/vendors/tinymce/tinymce/tinymce.js" referrerpolicy="origin"></script>',
|
||||
'<script src="/vendors/tinymce/tinymce.js" referrerpolicy="origin"></script>',
|
||||
],
|
||||
],
|
||||
'admin' => [
|
||||
|
||||
@ -12,9 +12,9 @@ $routes->addPlaceholder('uuid', '[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}
|
||||
//1. app/Filters/AuthFilter.php
|
||||
//2. Config/Filters.php -> $aliases = ['authFilter' => AuthFilter::class]
|
||||
$routes->get('/', 'Home::index');
|
||||
$routes->group('/user', function ($routes) {
|
||||
$routes->get('login', 'UserController::create_form');
|
||||
$routes->post('login', 'UserController::create');
|
||||
$routes->group('/user', function ($routes) {
|
||||
$routes->get('login', 'UserController::login_form');
|
||||
$routes->post('login', 'UserController::login');
|
||||
$routes->get('logout', 'UserController::logout', ['filter' => 'authFilter:user']);
|
||||
});
|
||||
$routes->group('cli', ['namespace' => 'App\CLI'], function ($routes) {
|
||||
@ -24,7 +24,7 @@ $routes->group('cli', ['namespace' => 'App\CLI'], function ($routes) {
|
||||
});
|
||||
$routes->group('admin', ['namespace' => 'App\Controllers\Admin', 'filter' => 'authFilter:manager'], function ($routes) {
|
||||
$routes->get('/', 'Home::index');
|
||||
$routes->group('user', function ($routes) {
|
||||
$routes->group('user', function ($routes) {
|
||||
$routes->get('/', 'UserController::index');
|
||||
$routes->get('create', 'UserController::create_form', ['filter' => 'authFilter:master']);
|
||||
$routes->post('create', 'UserController::create', ['filter' => 'authFilter:master']);
|
||||
|
||||
@ -11,6 +11,7 @@ use App\Models\UserModel;
|
||||
|
||||
use App\Libraries\MyAuth\LocalAuth;
|
||||
use App\Libraries\MyAuth\GoogleAuth;
|
||||
use App\Helpers\UserHelper;
|
||||
|
||||
class UserController extends FrontController
|
||||
{
|
||||
@ -20,9 +21,8 @@ class UserController extends FrontController
|
||||
parent::initController($request, $response, $logger);
|
||||
$this->class_name .= "User";
|
||||
$this->class_path .= $this->class_name;
|
||||
$this->view_path = strtolower($this->view_root . $this->class_name);
|
||||
$this->title = lang("{$this->class_path}.title");
|
||||
helper($this->class_path);
|
||||
$this->title = lang("{$this->class_path}.title");
|
||||
$this->helper = new UserHelper();
|
||||
}
|
||||
protected function getModel(): UserModel
|
||||
{
|
||||
@ -71,18 +71,30 @@ class UserController extends FrontController
|
||||
}
|
||||
private function init(string $action): void
|
||||
{
|
||||
$this->action = $action;
|
||||
$this->fields = ['id', 'passwd'];
|
||||
$this->field_rules = $this->getModel()->getFieldRules($this->action, $this->fields);
|
||||
$this->action = $action;
|
||||
$this->fields = ['id', 'passwd'];
|
||||
$this->field_rules = $this->getModel()->getFieldRules($this->action, $this->fields);
|
||||
}
|
||||
//로그인화면
|
||||
public function create_form(): RedirectResponse|string
|
||||
public function login_form(): RedirectResponse|string
|
||||
{
|
||||
$this->init('create');
|
||||
return $this->create_form_procedure();
|
||||
$this->init('login');
|
||||
try {
|
||||
helper(['form']);
|
||||
$this->create_form_process();
|
||||
$this->session->keepFlashdata(SESSION_NAMES['RETURN_URL']);
|
||||
$this->forms = ['attributes' => ['method' => "post",], 'hiddens' => []];
|
||||
return view(
|
||||
$this->view_path . "login",
|
||||
data: ['viewDatas' => $this->getViewDatas()]
|
||||
);
|
||||
} catch (\Exception $e) {
|
||||
log_message("error", $e->getMessage());
|
||||
return redirect()->to($this->session->getFlashdata(SESSION_NAMES['RETURN_URL']) ?: "/")->with(SESSION_NAMES['RETURN_MSG'], $e->getMessage());
|
||||
}
|
||||
}
|
||||
//로그인처리
|
||||
public function create(): RedirectResponse|string
|
||||
public function login(): RedirectResponse|string
|
||||
{
|
||||
$this->init('login');
|
||||
//Transaction Start
|
||||
|
||||
@ -30,10 +30,10 @@ class AccountHelper extends CommonHelper
|
||||
case AccountModel::TITLE:
|
||||
$form = form_input($field, $value, [
|
||||
"placeholder" => "예)test@exmaple.com",
|
||||
"style" =>
|
||||
"width:100%; ::placeholder{color:silver; opacity: 1;}",
|
||||
"class" => "form-control",
|
||||
(strpos($viewDatas['field_rules'][$field], 'required') !== false) ? "required" : ""
|
||||
"style" =>
|
||||
"width:100%; ::placeholder{color:silver; opacity: 1;}",
|
||||
"class" => "form-control",
|
||||
"required" => ""
|
||||
]);
|
||||
break;
|
||||
case 'type':
|
||||
@ -61,7 +61,7 @@ class AccountHelper extends CommonHelper
|
||||
current_url() . "/reload/" . $viewDatas['entity']->getParent(),
|
||||
ICONS["RELOAD"],
|
||||
[
|
||||
"class" => "btn btn-sm btn-primary btn-circle",
|
||||
"class" => "btn btn-sm btn-primary btn-circle",
|
||||
"target" => "_self",
|
||||
]
|
||||
) . " <span class=\"label_auth\">" .
|
||||
@ -75,7 +75,7 @@ class AccountHelper extends CommonHelper
|
||||
base_url() . $viewDatas['uri_path'] . 'zone/reload/' . $viewDatas['entity']->getPK(),
|
||||
ICONS["RELOAD"],
|
||||
[
|
||||
"class" => "btn btn-sm btn-primary btn-circle",
|
||||
"class" => "btn btn-sm btn-primary btn-circle",
|
||||
"target" => "_self",
|
||||
]
|
||||
) . " " .
|
||||
@ -83,7 +83,7 @@ class AccountHelper extends CommonHelper
|
||||
base_url() . $viewDatas['uri_path'] . "zone?account_uid=" . $viewDatas['entity']->getPK(),
|
||||
ICONS["FLAG"],
|
||||
[
|
||||
"class" => "btn btn-sm btn-primary btn-circle",
|
||||
"class" => "btn btn-sm btn-primary btn-circle",
|
||||
"target" => "_self",
|
||||
]
|
||||
) . " <span class=\"label_Accounts\">{$value}</span>";
|
||||
|
||||
@ -20,7 +20,7 @@ class AuthHelper extends CommonHelper
|
||||
"placeholder" => "예)test@example.com",
|
||||
"style" => "width:100%; ::placeholder{color:silver; opacity: 1;}",
|
||||
"class" => "form-control",
|
||||
(strpos($viewDatas['field_rules'][$field], 'required') !== false) ? "required" : ""
|
||||
"required" => ""
|
||||
]);
|
||||
break;
|
||||
default:
|
||||
|
||||
@ -35,26 +35,26 @@ class RecordHelper extends CommonHelper
|
||||
case RecordModel::TITLE: //host
|
||||
$form = form_input($field, $value, [
|
||||
"placeholder" => "예)www.example.com",
|
||||
"style" =>
|
||||
"width:200px; ::placeholder{color:silver; opacity: 1;}",
|
||||
"class" => "form-control",
|
||||
(strpos($viewDatas['field_rules'][$field], 'required') !== false) ? "required" : ""
|
||||
"style" =>
|
||||
"width:200px; ::placeholder{color:silver; opacity: 1;}",
|
||||
"class" => "form-control",
|
||||
"required" => ""
|
||||
]);
|
||||
break;
|
||||
case 'hosts':
|
||||
$form = form_textarea($field, html_entity_decode($value), [
|
||||
'rows' => '5',
|
||||
'rows' => '5',
|
||||
"class" => "form-control",
|
||||
(strpos($viewDatas['field_rules'][$field], 'required') !== false) ? "required" : ""
|
||||
"required" => ""
|
||||
]);
|
||||
break;
|
||||
case 'content':
|
||||
$form = form_input($field, $value, [
|
||||
"placeholder" => "예)123.123.123.123",
|
||||
"style" =>
|
||||
"width:200px; ::placeholder{color:silver; opacity: 1;}",
|
||||
"class" => "form-control",
|
||||
(strpos($viewDatas['field_rules'][$field], 'required') !== false) ? "required" : ""
|
||||
"style" =>
|
||||
"width:200px; ::placeholder{color:silver; opacity: 1;}",
|
||||
"class" => "form-control",
|
||||
"required" => ""
|
||||
]);
|
||||
break;
|
||||
case "type":
|
||||
@ -85,7 +85,7 @@ class RecordHelper extends CommonHelper
|
||||
current_url() . "/reload/" . $viewDatas['entity']->getParent(),
|
||||
ICONS["RELOAD"],
|
||||
[
|
||||
"class" => "btn btn-sm btn-primary btn-circle",
|
||||
"class" => "btn btn-sm btn-primary btn-circle",
|
||||
"target" => "_self",
|
||||
]
|
||||
) . " " . "<span class=\"label_zones\">{$viewDatas['field_options'][$field][$value]}</span>";
|
||||
|
||||
@ -31,32 +31,32 @@ class ZoneHelper extends CommonHelper
|
||||
$form = form_input($field, $value, [
|
||||
"placeholder" => "예)exmaple.com",
|
||||
"style" =>
|
||||
"width:100%; ::placeholder{color:silver; opacity: 1;}",
|
||||
"width:100%; ::placeholder{color:silver; opacity: 1;}",
|
||||
"class" => "form-control",
|
||||
(strpos($viewDatas['field_rules'][$field], 'required') !== false) ? "required" : ""
|
||||
"required" => ""
|
||||
]);
|
||||
break;
|
||||
case 'domains':
|
||||
$form = form_textarea($field, $value, [
|
||||
'rows' => '5',
|
||||
"class" => "form-control",
|
||||
(strpos($viewDatas['field_rules'][$field], 'required') !== false) ? "required" : ""
|
||||
"required" => ""
|
||||
]);
|
||||
break;
|
||||
case 'hosts':
|
||||
$form = form_textarea($field, $value == DEFAULTS['EMPTY'] ? "@\n*\nm\nwww" : $value, [
|
||||
'rows' => '5',
|
||||
"class" => "form-control",
|
||||
(strpos($viewDatas['field_rules'][$field], 'required') !== false) ? "required" : ""
|
||||
"required" => ""
|
||||
]);
|
||||
break;
|
||||
case 'content':
|
||||
$form = form_input($field, $value, [
|
||||
"placeholder" => "예)123.123.123.123",
|
||||
"style" =>
|
||||
"width:200px; ::placeholder{color:silver; opacity: 1;}",
|
||||
"width:200px; ::placeholder{color:silver; opacity: 1;}",
|
||||
"class" => "form-control",
|
||||
(strpos($viewDatas['field_rules'][$field], 'required') !== false) ? "required" : ""
|
||||
"required" => ""
|
||||
]);
|
||||
break;
|
||||
case "development_mode":
|
||||
|
||||
@ -19,16 +19,16 @@ class MapurlHelper extends CommonHelper
|
||||
"placeholder" => "예)http://old.example.com",
|
||||
"style" => "width:100%; ::placeholder{color:silver; opacity: 1;}",
|
||||
"class" => "form-control",
|
||||
(strpos($viewDatas['field_rules'][$field], 'required') !== false) ? "required" : ""
|
||||
"required" => ""
|
||||
]);
|
||||
break;
|
||||
case 'newurl':
|
||||
$form = form_input($field, $value, [
|
||||
"placeholder" => "예)https://new.example.com",
|
||||
"style" =>
|
||||
"width:100%; ::placeholder{color:silver; opacity: 1;}",
|
||||
"width:100%; ::placeholder{color:silver; opacity: 1;}",
|
||||
"class" => "form-control",
|
||||
(strpos($viewDatas['field_rules'][$field], 'required') !== false) ? "required" : ""
|
||||
"required" => ""
|
||||
]);
|
||||
break;
|
||||
default:
|
||||
|
||||
@ -14,12 +14,36 @@ class UserHelper extends CommonHelper
|
||||
{
|
||||
$value = $value ?: DEFAULTS['EMPTY'];
|
||||
switch ($field) {
|
||||
case 'id':
|
||||
case UserModel::TITLE:
|
||||
$form = form_input($field, $value, [
|
||||
"placeholder" => "예)",
|
||||
"style" => "width:100%; ::placeholder{color:silver; opacity: 1;}",
|
||||
"class" => "form-control",
|
||||
(strpos($viewDatas['field_rules'][$field], 'required') !== false) ? "required" : ""
|
||||
"required" => ""
|
||||
]);
|
||||
break;
|
||||
case 'passwd':
|
||||
case 'confirmpassword':
|
||||
$form = form_password($field, "", [
|
||||
"style" => "width:100%;",
|
||||
"class" => "form-control",
|
||||
"required" => ""
|
||||
]);
|
||||
break;
|
||||
case 'email':
|
||||
$form = form_input($field, $value, [
|
||||
"placeholder" => "예)test@example.com",
|
||||
"style" => "width:100%; ::placeholder{color:silver; opacity: 1;}",
|
||||
"class" => "form-control",
|
||||
"required" => ""
|
||||
]);
|
||||
break;
|
||||
case 'mobile':
|
||||
$form = form_input($field, $value, [
|
||||
"placeholder" => "예)010-0010-0010",
|
||||
"style" => "width:100%; ::placeholder{color:silver; opacity: 1;}",
|
||||
"class" => "form-control"
|
||||
]);
|
||||
break;
|
||||
case 'role':
|
||||
@ -42,29 +66,6 @@ class UserHelper extends CommonHelper
|
||||
);
|
||||
}
|
||||
break;
|
||||
case 'passwd':
|
||||
$form = form_password($field, "", [
|
||||
"style" => "width:100%;",
|
||||
"class" => "form-control",
|
||||
(strpos($viewDatas['field_rules'][$field], 'required') !== false) ? "required" : ""
|
||||
]);
|
||||
break;
|
||||
case 'email':
|
||||
$form = form_input($field, $value, [
|
||||
"placeholder" => "예)test@example.com",
|
||||
"style" => "width:100%; ::placeholder{color:silver; opacity: 1;}",
|
||||
"class" => "form-control",
|
||||
(strpos($viewDatas['field_rules'][$field], 'required') !== false) ? "required" : ""
|
||||
]);
|
||||
break;
|
||||
case 'mobile':
|
||||
$form = form_input($field, $value, [
|
||||
"placeholder" => "예)010-0010-0010",
|
||||
"style" => "width:100%; ::placeholder{color:silver; opacity: 1;}",
|
||||
"class" => "form-control",
|
||||
(strpos($viewDatas['field_rules'][$field], 'required') !== false) ? "required" : ""
|
||||
]);
|
||||
break;
|
||||
default:
|
||||
$form = parent::getFieldForm($field, $value, $viewDatas, $extras);
|
||||
break;
|
||||
|
||||
@ -1,6 +1,6 @@
|
||||
<?= $this->extend("layouts/{$viewDatas['layout']}/{$viewDatas['action_form']}") ?>
|
||||
<?= $this->section('content') ?>
|
||||
<link href="/css/<?= $viewDatas['layout'] ?>/content.css" media="screen" rel="stylesheet" type="text/css" />
|
||||
<link href="/css/<?= $viewDatas['layout'] ?>/login.css" media="screen" rel="stylesheet" type="text/css" />
|
||||
<div class="login-container border rounded p-4 shadow">
|
||||
<?= form_open(current_url(), $viewDatas['forms']['attributes'], $viewDatas['forms']['hiddens']) ?>
|
||||
<h2 class="text-center mb-4">로그인</h2>
|
||||
17
public/css/front/login.css
Normal file
17
public/css/front/login.css
Normal file
@ -0,0 +1,17 @@
|
||||
.login-wrapper {
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
height: 100vh;
|
||||
}
|
||||
|
||||
.login-container {
|
||||
width: 400px;
|
||||
height: 400px;
|
||||
overflow-y: auto;
|
||||
/* 추가된 스타일 */
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
}
|
||||
Loading…
Reference in New Issue
Block a user