shoppingmallv2 init...

This commit is contained in:
최준흠 2023-08-09 12:41:15 +09:00
parent 9a920055d5
commit 4453dccacb
35 changed files with 259 additions and 117 deletions

19
.gitignore vendored
View File

@ -70,6 +70,16 @@ writable/HPILO/*
writable/Excel/*
!writable/Excel/index.html
#mapurl 결과물
public/mapurl/index.html
#upload 파일
public/uploads/*
public/upload_images/*
#leftmenu 파일
layouts/front/left_menu/*
#-------------------------
# User Guide Temp Files
#-------------------------
@ -129,11 +139,4 @@ nb-configuration.xml
/results/
/phpunit*.xml
/.phpunit.*.cache
#mapurl 결과물
public/mapurl/index.html
#upload 파일
public/uploads/*
public/upload_images/*
/.phpunit.*.cache

View File

@ -219,7 +219,7 @@ define('CLASS_ICONS', [
'PRODUCT' => '<i class="bi bi-box2"></i>',
'CART' => '<i class="bi bi-cart4"></i>',
'ORDER' => '<i class="bi bi-clipboard-check"></i>',
'BILLING' => '<i class="bi bi-cash-coin"></i>',
'PAYMENT' => '<i class="bi bi-cash-coin"></i>',
]);
define('AUDIOS', [
'Alram_GetEmail' => '<object width=0 height=0 data="/sound/jarvis_email.mp3" type="audio/mpeg"></object>',

View File

@ -132,9 +132,9 @@ $routes->group('admin', ['namespace' => 'App\Controllers\Admin', 'filter' => 'au
});
$routes->group('front', ['namespace' => 'App\Controllers\Front'], function ($routes) {
$routes->group('user', ['namespace' => 'App\Controllers\Front', 'filter' => 'authFilter:user'], static function ($routes) {
$routes->get('update/(:uuid)', 'UserController::update_form/$1');
$routes->post('update/(:uuid)', 'UserController::update/R1');
$routes->get('view/(:uuid)', 'UserController::view/$1');
$routes->get('', 'UserController::index');
$routes->get('update', 'UserController::update_form');
$routes->post('update', 'UserController::update');
});
$routes->group('board', static function ($routes) {
$routes->get('', 'BoardController::index');

View File

@ -67,7 +67,7 @@ class CategoryController extends AdminController
private function build_leftmenu()
{
foreach ($this->_model->getEntitys(['grpdepth' => 1, 'status' => DEFAULTS['STATUS']]) as $entity) {
foreach ($this->_model->getEntitys(['grpdepth' => 2, 'status' => DEFAULTS['STATUS']]) as $entity) {
$categorys = $this->_model->getSiblingEntitys($entity);
$viewDatas = [
'className' => $this->_model->getClassName(),

View File

@ -17,14 +17,14 @@ class UserController extends AdminController
}
public function getFields(string $action = ""): array
{
$fields = ["id", "passwd", 'name', "email", "role", "status"];
$fields = ["id", "passwd", 'name', "email", "email", "phone", "role", "status"];
switch ($action) {
case "index":
case "excel":
return ["id", 'name', "email", "role", "status", 'created_at'];
return ["id", 'name', "email", "email", "phone", "role", "status", 'created_at'];
break;
case "view":
return ["id", 'name', "email", "role", "status", 'updated_at', 'created_at'];
return ["id", 'name', "email", "email", "phone", "role", "status", 'updated_at', 'created_at'];
break;
default:
return $fields;

View File

@ -526,6 +526,7 @@ abstract class BaseController extends Controller
//모델 처리
$this->_viewDatas['entitys'] = $this->index_getEntitys();
// echo $this->_model->getLastQuery();
// exit;
// log_message("debug", __METHOD__ . "에서 findAll 호출:" . $this->_model->getLastQuery());
//setting return_url to session flashdata
helper(['form']);

View File

@ -39,6 +39,7 @@ class BoardController extends FrontController
{
return parent::getFieldBatchFilters();
}
//Insert관련
protected function insert_form_process()
{
@ -60,25 +61,36 @@ class BoardController extends FrontController
protected function update_form_process($entity)
{
//본인이 작성한글인지 최종확인용 정상접속이 아닌 위회해서 수정을 시도방지용
if (!$this->_viewDatas[SESSION_NAMES['ISLOGIN']] || $entity->user_uid == $this->_viewDatas['auth'][AUTH_FIELDS['ID']]) {
if (!$this->_viewDatas[SESSION_NAMES['ISLOGIN']] || $entity->user_uid != $this->_viewDatas['auth'][AUTH_FIELDS['ID']]) {
throw new \Exception("작성자 본인글인지 여부가 확인되지 않습니다.");
}
return parent::update_form_process($entity);
//권한체크
$this->isRole('update');
$entity = parent::update_form_process($entity);
$this->_viewDatas['forms'] = ['attributes' => ['method' => "post",], 'hiddens' => [
'category' => $this->_category
]];
return $entity;
}
protected function update_process($entity)
{
//본인이 작성한글인지 최종확인용 정상접속이 아닌 위회해서 수정을 시도방지용
if (!$this->_viewDatas[SESSION_NAMES['ISLOGIN']] || $entity->user_uid == $this->_viewDatas['auth'][AUTH_FIELDS['ID']]) {
if (!$this->_viewDatas[SESSION_NAMES['ISLOGIN']] || $entity->user_uid != $this->_viewDatas['auth'][AUTH_FIELDS['ID']]) {
throw new \Exception("작성자 본인글인지 여부가 확인되지 않습니다.");
}
return parent::update_process($entity);
}
//Reply관련
//Reply관련($entity는 부모의것임을 주의)
protected function reply_form_process($entity)
{
//권한체크
$this->isRole('reply', $entity);
return parent::reply_form_process($entity);
$this->isRole('reply');
$entity = parent::reply_form_process($entity);
$this->_viewDatas['forms'] = ['attributes' => ['method' => "post",], 'hiddens' => [
'category_uid' => $entity->category_uid,
'category' => $this->_category
]];
return $entity;
}
//Delete 관련
protected function delete_process($entity)
@ -93,17 +105,24 @@ class BoardController extends FrontController
protected function view_process($entity)
{
//권한체크
$this->isRole('view', $entity);
$this->isRole('view');
//조회수 올리기
$entity = $this->_model->addViewCount($entity);
return parent::view_process($entity);
$entity = parent::view_process($entity);
$this->_viewDatas['forms'] = ['attributes' => ['method' => "post",], 'hiddens' => [
'category' => $this->_category
]];
return $entity;
}
//Index관련
protected function index_process()
{
//권한체크
$this->isRole('index');
return parent::index_process();
parent::index_process();
$this->_viewDatas['forms'] = ['attributes' => ['method' => "post",], 'hiddens' => [
'category' => $this->_category
]];
}
//Category 및 Status 조건추가
protected function index_setCondition()

View File

@ -26,12 +26,9 @@ abstract class FrontController extends BaseController
}
//권한체크
final protected function isRole($action, $entity = null)
protected function isRole($action)
{
$this->_category = $this->request->getVar('category');
if (is_null($this->_category)) {
$this->_category = !is_null($entity) ? $entity->category_uid : throw new \Exception("분류를 지정하지 않으셨습니다.");
}
$this->_category = $this->request->getVar('category') ?: throw new \Exception("분류를 지정하지 않으셨습니다.");
$this->_viewDatas['category'] = $this->getCategoryModel()->getEntity([$this->getCategoryModel()->getPrimaryKey() => $this->_category]);
$this->_viewDatas['parent_category'] = $this->getCategoryModel()->getEntity([$this->getCategoryModel()->getPrimaryKey() => $this->_viewDatas['category']->getHierarchy_ParentUID()]);
switch ($action) {

View File

@ -33,14 +33,14 @@ class UserController extends FrontController
public function getFields(string $action = ""): array
{
$fields = ["id", "passwd", 'name', "email", "role", "status"];
$fields = ["id", "passwd", 'name', "email", "phone", "mobile",];
switch ($action) {
case "index":
case "excel":
return ["id", 'name', "email", "role", "status", 'created_at'];
return ["id", 'name', "email", "phone", "mobile", 'created_at'];
break;
case "view":
return ["id", 'name', "email", "role", "status", 'updated_at', 'created_at'];
return ["id", 'name', "email", "phone", "mobile", 'updated_at', 'created_at'];
break;
default:
return $fields;
@ -49,34 +49,43 @@ class UserController extends FrontController
}
public function getFieldFilters(): array
{
return ["role", "status"];
return [];
}
public function getFieldBatchFilters(): array
{
return parent::getFieldBatchFilters();
}
protected function insert_validate()
//권한체크
protected function isRole($action, $entity = null)
{
$rules = [];
foreach ($this->_viewDatas['fieldRules'] as $field => $rule) {
switch ($field) {
case 'role':
$rules[$field . '.*'] = $rule;
break;
default:
$rules[$field] = $rule;
break;
}
}
//fieldData Rule 검사
if (!$this->validate($rules)) {
throw new \Exception("{$this->_viewDatas['title']}의 검증 오류발생\n" . implode("\n", $this->validator->getErrors()));
}
//fieldData 적용
$this->_viewDatas['fieldDatas'] = array();
foreach ($this->_viewDatas['fields'] as $field) {
$this->_viewDatas['fieldDatas'] = $this->getFieldFormData($field);
}
$this->_category = $this->request->getVar('category') ?: $entity->category_uid;
parent::isRole($action, $entity);
}
//Update관련
protected function update_form_process($entity)
{
//권한체크
$this->isRole('update');
$entity = parent::update_form_process($entity);
$this->_viewDatas['forms'] = ['attributes' => ['method' => "post",], 'hiddens' => [
'category' => $this->_category
]];
return $entity;
}
//Index관련
protected function index_process()
{
//권한체크
$this->isRole('index');
parent::index_process();
$this->_viewDatas['forms'] = ['attributes' => ['method' => "post",], 'hiddens' => [
'category' => $this->_category
]];
}
//사용자 UID 조건추가
protected function index_setCondition()
{
$this->_model->where("uid", $this->_viewDatas['auth'][AUTH_FIELDS['ID']]);
parent::index_setCondition();
}
}

View File

@ -7,6 +7,8 @@ CREATE TABLE baseproject.tw_user (
passwd varchar(100) NOT NULL,
name varchar(20) NOT NULL COMMENT "사용자명",
email varchar(50) NOT NULL,
phone varchar(20) NULL COMMENT '연락처',
mobile varchar(20) NULL COMMENT '핸드폰',
role varchar(255) NOT NULL DEFAULT 'user' COMMENT '사용자등급',
status varchar(10) NOT NULL DEFAULT 'use' COMMENT 'use: 사용,unuse: 사용않함',
updated_at timestamp NULL DEFAULT NULL,

View File

@ -6,6 +6,8 @@ CREATE TABLE shoppingmall.tw_user (
passwd varchar(100) NOT NULL,
name varchar(20) NOT NULL COMMENT "사용자명",
email varchar(50) NOT NULL,
phone varchar(20) NULL COMMENT '연락처',
mobile varchar(20) NULL COMMENT '핸드폰',
role varchar(255) NOT NULL DEFAULT 'user' COMMENT '사용자등급',
status varchar(10) NOT NULL DEFAULT 'use' COMMENT 'use: 사용,unuse: 사용않함',
updated_at timestamp NULL DEFAULT NULL,

View File

@ -118,12 +118,12 @@ function getFieldIndex_Row_BoardHelper($field, $entity, array $viewDatas): strin
case 'title':
case 'name':
$reply = anchor(
current_url() . '/reply/' . $entity->getPrimaryKey(),
current_url() . '/reply/' . $entity->getPrimaryKey() . '?category=' . $viewDatas['category']->getPrimaryKey(),
ICONS['REPLY'],
["target" => "_self"]
);
$view = anchor(
current_url() . '/view/' . $entity->getPrimaryKey(),
current_url() . '/view/' . $entity->getPrimaryKey() . '?category=' . $viewDatas['category']->getPrimaryKey(),
$value,
["target" => "_self"]
);

View File

@ -122,7 +122,7 @@ function getFieldIndex_Row_UserHelper($field, $entity, array $viewDatas): string
case 'title':
case 'name':
return anchor(
current_url() . '/view/' . $entity->getPrimaryKey(),
current_url() . '/view/' . $entity->getPrimaryKey() . '?category=' . $viewDatas['category']->getPrimaryKey(),
$value,
["target" => "_self"]
);

View File

@ -13,5 +13,5 @@ return [
'updated_at' => "수정일",
'created_at' => "작성일"
],
"STATUS" => ["use" => "장바구니", "unuse" => "주문취소", "confirm" => "주문완료",]
"STATUS" => ["use" => "장바구니", "unuse" => "주문취소", "confirm" => "주문완료", "paid" => "결제완료"]
];

View File

@ -11,6 +11,8 @@ return [
'passwd' => '암호',
'confirmpassword' => '암호확인',
'email' => '메일',
'phone' => '연락처',
'mobile' => '핸드폰',
'role' => '권한',
'name' => '이름',
'status' => '상태',

View File

@ -92,8 +92,10 @@ class UserModel extends BaseModel
//Index관련
public function setIndexWordFilter(string $word)
{
parent::setIndexWordFilter($word);
$this->orLike($this->getTitleField(), $word, "both"); //befor , after , both
$this->orLike("id", $word, "both");
if ($word !== DEFAULTS['EMPTY']) {
parent::setIndexWordFilter($word);
$this->orLike($this->getTitleField(), $word, "both"); //befor , after , both
$this->orLike("id", $word, "both");
}
}
}

View File

@ -20,7 +20,7 @@
<td>
<!-- 사용자가 자신의 작성한것인지 확인되면 update 가능-->
<?php if ($viewDatas[SESSION_NAMES['ISLOGIN']] && $entity->user_uid == $viewDatas['auth'][AUTH_FIELDS['ID']]) : ?>
<?= anchor(current_url() . '/update/' . $entity->getPrimaryKey(), $viewDatas['total_count'] - (($viewDatas['page'] - 1) * $viewDatas['per_page'] + $cnt), ["target" => "_self"]) ?>
<?= anchor(current_url() . '/update/' . $entity->getPrimaryKey() . '?category=' . $viewDatas['category']->getPrimaryKey(), $viewDatas['total_count'] - (($viewDatas['page'] - 1) * $viewDatas['per_page'] + $cnt), ["target" => "_self"]) ?>
<?php else : ?>
<?= $viewDatas['total_count'] - (($viewDatas['page'] - 1) * $viewDatas['per_page'] + $cnt) ?>
<?php endif ?>
@ -29,9 +29,13 @@
<td nowrap><?= getFieldIndex_Row_BoardHelper($field, $entity, $viewDatas) ?></td>
<?php endforeach ?>
<td>
<!-- 사용자가 쓰기권한이 있는지 확인-->
<?php if (isRole_CommonHelper($viewDatas['currentRoles'], $viewDatas['category'], CATEGORY_ROLE_FIELDS['WRITE'])) : ?>
<?= anchor(current_url() . '/insert?category=' . $viewDatas['category']->getPrimaryKey(), '입력', ["class" => "btn btn-sm btn-primary btn-circle", "target" => "_self"]) ?>
<?php endif ?>
<!-- 사용자가 자신의 작성한것인지 확인되면 delete 가능-->
<?php if ($viewDatas[SESSION_NAMES['ISLOGIN']] && $entity->user_uid == $viewDatas['auth'][AUTH_FIELDS['ID']]) : ?>
<?= anchor(current_url() . '/delete/' . $entity->getPrimaryKey(), ICONS['DELETE'], ["class" => "btn btn-sm btn-danger btn-circle", "target" => "_self"]) ?>
<?= anchor(current_url() . '/delete/' . $entity->getPrimaryKey() . '?category=' . $viewDatas['category']->getPrimaryKey(), ICONS['DELETE'], ["class" => "btn btn-sm btn-danger btn-circle", "target" => "_self"]) ?>
<?php endif ?>
</td>
</tr>
@ -40,12 +44,6 @@
</tbody>
</table>
<div class="bottom">
<ul class="nav justify-content-center">
<!-- 사용자가 쓰기권한이 있는지 확인-->
<?php if (isRole_CommonHelper($viewDatas['currentRoles'], $viewDatas['category'], CATEGORY_ROLE_FIELDS['WRITE'])) : ?>
<li class="nav-item"><?= anchor(current_url() . '/insert', '입력', ["class" => "btn btn-sm btn-primary btn-circle", "target" => "_self"]) ?></li>
<?php endif ?>
</ul>
<?= $viewDatas['pagination'] ?>
</div>
<?= form_close() ?>

View File

@ -1,7 +1,6 @@
<?= $this->extend('layouts/front') ?>
<?= $this->section('content') ?>
<link href="/css/front/content.css" media="screen" rel="stylesheet" ype="text/css" />
<div id="content">
<div><?= html_entity_decode($viewDatas['category']->head) ?></div>
<table class="form table table-bordered table-striped">

View File

@ -0,0 +1,41 @@
<?= $this->extend('layouts/front') ?>
<?= $this->section('content') ?>
<link href="/css/front/content.css" media="screen" rel="stylesheet" type="text/css" />
<div id="content">
<div><?= html_entity_decode($viewDatas['category']->head) ?></div>
<div class="top"><?= $this->include('templates/front/index_head') ?></div>
<?= form_open(current_url() . '/batchjob', $viewDatas['forms']['attributes'], $viewDatas['forms']['hiddens']) ?>
<table class="table table-hover">
<thead>
<tr>
<th>번호</th>
<?php foreach ($viewDatas['fields'] as $field) : ?><th><?= getFieldIndex_Column_UserHelper($field, $viewDatas) ?></th><?php endforeach ?>
</tr>
</thead>
<tbody>
<?php $cnt = 0 ?>
<?php foreach ($viewDatas['entitys'] as $entity) : ?>
<tr id="<?= $entity->getPrimaryKey() ?>" <?= $entity->status != DEFAULTS['STATUS'] ? 'class="table-danger" rowcolor="red"' : 'rowcolor="red"' ?> onClick="indexRowCheckBoxToggle(this)">
<td>
<!-- 사용자가 자신의 작성한것인지 확인되면 update 가능-->
<?php if ($viewDatas[SESSION_NAMES['ISLOGIN']] && $entity->getPrimaryKey() == $viewDatas['auth'][AUTH_FIELDS['ID']]) : ?>
<?= anchor(current_url() . '/update/' . $entity->getPrimaryKey(), $viewDatas['total_count'] - (($viewDatas['page'] - 1) * $viewDatas['per_page'] + $cnt), ["target" => "_self"]) ?>
<?php else : ?>
<?= $viewDatas['total_count'] - (($viewDatas['page'] - 1) * $viewDatas['per_page'] + $cnt) ?>
<?php endif ?>
</td>
<?php foreach ($viewDatas['fields'] as $field) : ?>
<td nowrap><?= getFieldIndex_Row_UserHelper($field, $entity, $viewDatas) ?></td>
<?php endforeach ?>
</tr>
<?php $cnt++ ?>
<?php endforeach ?>
</tbody>
</table>
<div class="bottom">
<?= $viewDatas['pagination'] ?>
</div>
<?= form_close() ?>
<div><?= html_entity_decode($viewDatas['category']->tail) ?></div>
</div>
<?= $this->endSection() ?>

View File

@ -14,9 +14,6 @@
</td>
</tr>
<?php endforeach; ?>
<tr>
<td valign="bottom" colspan="2"><?= form_submit('', '입력', array("class" => "btn btn-outline btn-primary")); ?></td>
</tr>
</table>
<?= form_close(); ?>
<div><?= html_entity_decode($viewDatas['category']->head) ?></div>

View File

@ -10,7 +10,7 @@
<h2><a href="/admin/order"><?= CLASS_ICONS['ORDER'] ?></i>주문 관리</a></h2>
</div>
<div class="accordion-item">
<h2><a href="/admin/billing"><?= CLASS_ICONS['BILLING'] ?></i>결제 관리</a></h2>
<h2><a href="/admin/payment"><?= CLASS_ICONS['PAYMENT'] ?></i>결제 관리</a></h2>
</div>
</div>
</div>

View File

@ -1,6 +1,6 @@
<!-- left menu start -->
<link href="/css/front/left_menu.css" media="screen" rel="stylesheet" type="text/css" />
<div id="left_menu">
<?= $this->include($viewDatas['layout']['path'] . "/left_menu/leftmenu_{$viewDatas['category']->getHierarchy_ParentUID()}"); ?>
<?= $this->include($viewDatas['layout']['path'] . "/left_menu/leftmenu_{$viewDatas['category']->getPrimaryKey()}"); ?>
</div>
<!-- left menu end -->

View File

@ -0,0 +1,13 @@
<!-- DEBUG-VIEW START 3 APPPATH\Views\admin\category\leftmenu_template.php -->
<div class="parent">
<div>-</div>
<div class="title">개인정보</div>
</div>
<div class="sibling active">
<a href="http://localhost:8080/front/order?category=11" target="_self">주문정보</a> <span class="play"><i class="bi bi-play-fill"></i></span>
</div>
<div class="sibling ">
<a href="http://localhost:8080/front/user?category=12" target="_self">사용자정보</a> <span class="play"><i class="bi bi-play-fill"></i></span>
</div>
<!-- DEBUG-VIEW ENDED 3 APPPATH\Views\admin\category\leftmenu_template.php -->

View File

@ -0,0 +1,13 @@
<!-- DEBUG-VIEW START 4 APPPATH\Views\admin\category\leftmenu_template.php -->
<div class="parent">
<div>-</div>
<div class="title">개인정보</div>
</div>
<div class="sibling ">
<a href="http://localhost:8080/front/order?category=11" target="_self">주문정보</a> <span class="play"><i class="bi bi-play-fill"></i></span>
</div>
<div class="sibling active">
<a href="http://localhost:8080/front/user?category=12" target="_self">사용자정보</a> <span class="play"><i class="bi bi-play-fill"></i></span>
</div>
<!-- DEBUG-VIEW ENDED 4 APPPATH\Views\admin\category\leftmenu_template.php -->

View File

@ -1,13 +1,13 @@
<!-- DEBUG-VIEW START 1 APPPATH\Views\admin\category\leftmenu_template.php -->
<div class="parent">
<div>-</div>
<div class="title">AboutUS</div>
<div class="title">사이트페이지</div>
</div>
<div class="sibling ">
<a href="http://localhost:8080/front/sitepage?category=11" target="_self">회사소개</a> <span class="play"><i class="bi bi-play-fill"></i></span>
<div class="sibling active">
<a href="http://localhost:8080/front/sitepage?category=14" target="_self">인사말</a> <span class="play"><i class="bi bi-play-fill"></i></span>
</div>
<div class="sibling ">
<a href="http://localhost:8080/front/sitepage?category=12" target="_self">인사말</a> <span class="play"><i class="bi bi-play-fill"></i></span>
<a href="http://localhost:8080/front/sitepage?category=15" target="_self">회사소개</a> <span class="play"><i class="bi bi-play-fill"></i></span>
</div>
<!-- DEBUG-VIEW ENDED 1 APPPATH\Views\admin\category\leftmenu_template.php -->

View File

@ -0,0 +1,13 @@
<!-- DEBUG-VIEW START 2 APPPATH\Views\admin\category\leftmenu_template.php -->
<div class="parent">
<div>-</div>
<div class="title">사이트페이지</div>
</div>
<div class="sibling ">
<a href="http://localhost:8080/front/sitepage?category=14" target="_self">인사말</a> <span class="play"><i class="bi bi-play-fill"></i></span>
</div>
<div class="sibling active">
<a href="http://localhost:8080/front/sitepage?category=15" target="_self">회사소개</a> <span class="play"><i class="bi bi-play-fill"></i></span>
</div>
<!-- DEBUG-VIEW ENDED 2 APPPATH\Views\admin\category\leftmenu_template.php -->

View File

@ -1,13 +1,13 @@
<!-- DEBUG-VIEW START 4 APPPATH\Views\admin\category\leftmenu_template.php -->
<!-- DEBUG-VIEW START 9 APPPATH\Views\admin\category\leftmenu_template.php -->
<div class="parent">
<div>-</div>
<div class="title">게시판</div>
<div class="title">Support</div>
</div>
<div class="sibling ">
<a href="http://localhost:8080/front/board?category=2" target="_self">공지사항</a> <span class="play"><i class="bi bi-play-fill"></i></span>
<div class="sibling active">
<a href="http://localhost:8080/front/board?category=3" target="_self">공지사항</a> <span class="play"><i class="bi bi-play-fill"></i></span>
</div>
<div class="sibling ">
<a href="http://localhost:8080/front/board?category=3" target="_self">FAQ</a> <span class="play"><i class="bi bi-play-fill"></i></span>
<a href="http://localhost:8080/front/board?category=4" target="_self">FAQ</a> <span class="play"><i class="bi bi-play-fill"></i></span>
</div>
<!-- DEBUG-VIEW ENDED 4 APPPATH\Views\admin\category\leftmenu_template.php -->
<!-- DEBUG-VIEW ENDED 9 APPPATH\Views\admin\category\leftmenu_template.php -->

View File

@ -1,13 +1,13 @@
<!-- DEBUG-VIEW START 3 APPPATH\Views\admin\category\leftmenu_template.php -->
<!-- DEBUG-VIEW START 10 APPPATH\Views\admin\category\leftmenu_template.php -->
<div class="parent">
<div>-</div>
<div class="title">네트워크</div>
<div class="title">Support</div>
</div>
<div class="sibling ">
<a href="http://localhost:8080/front/product?category=5" target="_self">판매</a> <span class="play"><i class="bi bi-play-fill"></i></span>
<a href="http://localhost:8080/front/board?category=3" target="_self">공지사항</a> <span class="play"><i class="bi bi-play-fill"></i></span>
</div>
<div class="sibling ">
<a href="http://localhost:8080/front/product?category=6" target="_self">월이용권</a> <span class="play"><i class="bi bi-play-fill"></i></span>
<div class="sibling active">
<a href="http://localhost:8080/front/board?category=4" target="_self">FAQ</a> <span class="play"><i class="bi bi-play-fill"></i></span>
</div>
<!-- DEBUG-VIEW ENDED 3 APPPATH\Views\admin\category\leftmenu_template.php -->
<!-- DEBUG-VIEW ENDED 10 APPPATH\Views\admin\category\leftmenu_template.php -->

View File

@ -0,0 +1,13 @@
<!-- DEBUG-VIEW START 7 APPPATH\Views\admin\category\leftmenu_template.php -->
<div class="parent">
<div>-</div>
<div class="title">네트워크</div>
</div>
<div class="sibling active">
<a href="http://localhost:8080/front/product?category=5" target="_self">월이용권</a> <span class="play"><i class="bi bi-play-fill"></i></span>
</div>
<div class="sibling ">
<a href="http://localhost:8080/front/product?category=6" target="_self">판매</a> <span class="play"><i class="bi bi-play-fill"></i></span>
</div>
<!-- DEBUG-VIEW ENDED 7 APPPATH\Views\admin\category\leftmenu_template.php -->

View File

@ -0,0 +1,13 @@
<!-- DEBUG-VIEW START 8 APPPATH\Views\admin\category\leftmenu_template.php -->
<div class="parent">
<div>-</div>
<div class="title">네트워크</div>
</div>
<div class="sibling ">
<a href="http://localhost:8080/front/product?category=5" target="_self">월이용권</a> <span class="play"><i class="bi bi-play-fill"></i></span>
</div>
<div class="sibling active">
<a href="http://localhost:8080/front/product?category=6" target="_self">판매</a> <span class="play"><i class="bi bi-play-fill"></i></span>
</div>
<!-- DEBUG-VIEW ENDED 8 APPPATH\Views\admin\category\leftmenu_template.php -->

View File

@ -1,13 +1,13 @@
<!-- DEBUG-VIEW START 2 APPPATH\Views\admin\category\leftmenu_template.php -->
<!-- DEBUG-VIEW START 5 APPPATH\Views\admin\category\leftmenu_template.php -->
<div class="parent">
<div>-</div>
<div class="title">서버</div>
</div>
<div class="sibling ">
<a href="http://localhost:8080/front/product?category=8" target="_self">판매</a> <span class="play"><i class="bi bi-play-fill"></i></span>
<div class="sibling active">
<a href="http://localhost:8080/front/product?category=8" target="_self">월이용권</a> <span class="play"><i class="bi bi-play-fill"></i></span>
</div>
<div class="sibling ">
<a href="http://localhost:8080/front/product?category=9" target="_self">월이용권</a> <span class="play"><i class="bi bi-play-fill"></i></span>
<a href="http://localhost:8080/front/product?category=9" target="_self">판매</a> <span class="play"><i class="bi bi-play-fill"></i></span>
</div>
<!-- DEBUG-VIEW ENDED 2 APPPATH\Views\admin\category\leftmenu_template.php -->
<!-- DEBUG-VIEW ENDED 5 APPPATH\Views\admin\category\leftmenu_template.php -->

View File

@ -0,0 +1,13 @@
<!-- DEBUG-VIEW START 6 APPPATH\Views\admin\category\leftmenu_template.php -->
<div class="parent">
<div>-</div>
<div class="title">서버</div>
</div>
<div class="sibling ">
<a href="http://localhost:8080/front/product?category=8" target="_self">월이용권</a> <span class="play"><i class="bi bi-play-fill"></i></span>
</div>
<div class="sibling active">
<a href="http://localhost:8080/front/product?category=9" target="_self">판매</a> <span class="play"><i class="bi bi-play-fill"></i></span>
</div>
<!-- DEBUG-VIEW ENDED 6 APPPATH\Views\admin\category\leftmenu_template.php -->

View File

@ -1,13 +1,11 @@
<nav class="header navbar navbar-expand-lg">
<div class="container-fluid">
<nav class="nav">
<h4><?= $viewDatas['class_icon'] ?><?= $viewDatas['category']->getTitle() ?></h4>
<h4 class="title"><?= $viewDatas['class_icon'] ?><?= $viewDatas['category']->getTitle() ?></h4>
</nav>
<nav class="nav justify-content-center"></nav>
<ul class="nav justify-content-end">
<li class="nav-item">
<?= ICONS['HOME'] ?> > <?= $viewDatas['parent_category']->getTitle() ?> > <?= $viewDatas['category']->getTitle() ?>
</li>
</ul>
<nav class="nav justify-content-end">
<span class="flow"><?= ICONS['HOME'] ?> > <?= $viewDatas['parent_category']->getTitle() ?> > <?= $viewDatas['category']->getTitle() ?></span>
</nav>
</div>
</nav>

View File

@ -4,9 +4,7 @@
* Created : 2016/9/11 Tri-aBility by Junheum,Choi
* Updated :
------------------------------------------------------------ */
body {
background-color: white;;
}
/* #head{
border:1px solid blue;
} */
@ -30,12 +28,12 @@ body {
margin-left:30px;
border-bottom:1px solid silver;
}
#layout #body nav.header nav h4{
#layout #body nav.header nav h4.title{
font-size:26px;
font-weight:bold;
}
#layout #body nav.header ul li.nav-item{
color: silver;
#layout #body nav.header nav span.flow{
color: gray;
}
#layout #body div.footer
/*content 하단라인*/{

View File

@ -61,19 +61,15 @@ div#content table thead th{
background-color:#F5F5F5;
/* border:1px solid silver; */
}
div#content table thead th a{
color:black;
/* border:1px solid silver; */
}
/* div#content table thead th a{
border:1px solid silver;
} */
div#content table tbody td {
color: black;
color:gray;
font-weight:bold;
/* border:1px solid silver; */
text-align:center;
}
div#content table tbody td a{
color:gray;
text-decoration: none;
/* border:1px solid silver; */
}