Browse Source

관리자 변경중

master
Jang SeonGeun 6 years ago
parent
commit
2a8d673865
  1. 35
      _src/admin/js/admin.js
  2. 6581
      _src/admin/js/jquery-ui.js
  3. 4
      _src/admin/scss/_variables.scss
  4. 3
      _src/admin/scss/admin.scss
  5. 84
      _src/admin/scss/boot/_fonts.scss
  6. 32
      _src/admin/scss/common/_layout.scss
  7. 7
      _src/admin/scss/common/_utility.scss
  8. 4
      _src/admin/scss/components/_buttons.scss
  9. 5
      _src/admin/scss/components/_dropdown.scss
  10. 77
      _src/admin/scss/components/_form.scss
  11. 29
      _src/admin/scss/components/_grid.scss
  12. 6
      _src/admin/scss/components/_pagination.scss
  13. 107
      _src/admin/scss/plugins/_plugins_custom.scss
  14. 351
      _src/admin/scss/plugins/ax5ui/_ax5calendar.scss
  15. 334
      _src/admin/scss/plugins/ax5ui/_ax5picker.scss
  16. 54
      package-lock.json
  17. 3
      package.json
  18. 2
      public_html/assets/css/admin.min.css
  19. 2
      public_html/assets/css/admin.min.css.map
  20. BIN
      public_html/assets/fonts/Gilroy-Bold.eot
  21. BIN
      public_html/assets/fonts/Gilroy-Bold.ttf
  22. BIN
      public_html/assets/fonts/Gilroy-Bold.woff
  23. BIN
      public_html/assets/fonts/Gilroy-Bold.woff2
  24. BIN
      public_html/assets/fonts/Gilroy-BoldItalic.eot
  25. BIN
      public_html/assets/fonts/Gilroy-BoldItalic.ttf
  26. BIN
      public_html/assets/fonts/Gilroy-BoldItalic.woff
  27. BIN
      public_html/assets/fonts/Gilroy-BoldItalic.woff2
  28. BIN
      public_html/assets/fonts/Gilroy-ExtraBold.eot
  29. BIN
      public_html/assets/fonts/Gilroy-ExtraBold.otf
  30. BIN
      public_html/assets/fonts/Gilroy-ExtraBold.ttf
  31. BIN
      public_html/assets/fonts/Gilroy-ExtraBold.woff
  32. BIN
      public_html/assets/fonts/Gilroy-ExtraBold.woff2
  33. BIN
      public_html/assets/fonts/Gilroy-ExtraBoldItalic.eot
  34. BIN
      public_html/assets/fonts/Gilroy-ExtraBoldItalic.ttf
  35. BIN
      public_html/assets/fonts/Gilroy-ExtraBoldItalic.woff
  36. BIN
      public_html/assets/fonts/Gilroy-ExtraBoldItalic.woff2
  37. BIN
      public_html/assets/fonts/Gilroy-Light.eot
  38. BIN
      public_html/assets/fonts/Gilroy-Light.otf
  39. BIN
      public_html/assets/fonts/Gilroy-Light.ttf
  40. BIN
      public_html/assets/fonts/Gilroy-Light.woff
  41. BIN
      public_html/assets/fonts/Gilroy-Light.woff2
  42. BIN
      public_html/assets/fonts/Gilroy-LightItalic.eot
  43. BIN
      public_html/assets/fonts/Gilroy-LightItalic.ttf
  44. BIN
      public_html/assets/fonts/Gilroy-LightItalic.woff
  45. BIN
      public_html/assets/fonts/Gilroy-LightItalic.woff2
  46. BIN
      public_html/assets/fonts/Gilroy-Medium.eot
  47. BIN
      public_html/assets/fonts/Gilroy-Medium.ttf
  48. BIN
      public_html/assets/fonts/Gilroy-Medium.woff
  49. BIN
      public_html/assets/fonts/Gilroy-Medium.woff2
  50. BIN
      public_html/assets/fonts/Gilroy-MediumItalic.eot
  51. BIN
      public_html/assets/fonts/Gilroy-MediumItalic.ttf
  52. BIN
      public_html/assets/fonts/Gilroy-MediumItalic.woff
  53. BIN
      public_html/assets/fonts/Gilroy-MediumItalic.woff2
  54. BIN
      public_html/assets/fonts/Gilroy-Regular.eot
  55. BIN
      public_html/assets/fonts/Gilroy-Regular.ttf
  56. BIN
      public_html/assets/fonts/Gilroy-Regular.woff
  57. BIN
      public_html/assets/fonts/Gilroy-Regular.woff2
  58. BIN
      public_html/assets/fonts/Gilroy-RegularItalic.eot
  59. BIN
      public_html/assets/fonts/Gilroy-RegularItalic.ttf
  60. BIN
      public_html/assets/fonts/Gilroy-RegularItalic.woff
  61. BIN
      public_html/assets/fonts/Gilroy-RegularItalic.woff2
  62. BIN
      public_html/assets/fonts/NanumSquareB.eot
  63. BIN
      public_html/assets/fonts/NanumSquareB.ttf
  64. BIN
      public_html/assets/fonts/NanumSquareB.woff
  65. BIN
      public_html/assets/fonts/NanumSquareEB.eot
  66. BIN
      public_html/assets/fonts/NanumSquareEB.ttf
  67. BIN
      public_html/assets/fonts/NanumSquareEB.woff
  68. BIN
      public_html/assets/fonts/NanumSquareL.eot
  69. BIN
      public_html/assets/fonts/NanumSquareL.ttf
  70. BIN
      public_html/assets/fonts/NanumSquareL.woff
  71. BIN
      public_html/assets/fonts/NanumSquareR.eot
  72. BIN
      public_html/assets/fonts/NanumSquareR.ttf
  73. BIN
      public_html/assets/fonts/NanumSquareR.woff
  74. 2
      public_html/assets/js/admin.min.js
  75. 2
      public_html/assets/js/admin.min.js.map
  76. 2
      public_html/plugins/ckeditor/config.js
  77. 4
      source.info.json
  78. 6
      wheeparam/application/controllers/admin/Statics.php
  79. 2
      wheeparam/application/helpers/admin_helper.php
  80. 11
      wheeparam/views/themes/admin/members/lists.php
  81. 103
      wheeparam/views/themes/admin/statics/keyword.php
  82. 158
      wheeparam/views/themes/admin/statics/visit.php

35
_src/admin/js/admin.js

@ -52,7 +52,39 @@ APP.initMenu = function(){
};
APP.initPlugins = function() {
/*
$.datepicker._updateDatepicker_original = $.datepicker._updateDatepicker;
$.datepicker._updateDatepicker = function(inst) {
$.datepicker._updateDatepicker_original(inst);
var afterShow = this._get(inst, 'afterShow');
if (afterShow)
afterShow.apply((inst.input ? inst.input[0] : null));
}
$.datepicker.regional['ko'] = {
closeText: '닫기',
prevText: '이전달',
nextText: '다음달',
currentText: '오늘',
monthNames: ['1월','2월','3월','4월','5월','6월', '7월','8월','9월','10월','11월','12월'],
monthNamesShort: ['1월','2월','3월','4월','5월','6월', '7월','8월','9월','10월','11월','12월'],
dayNames: ['일','월','화','수','목','금','토'],
dayNamesShort: ['일','월','화','수','목','금','토'],
dayNamesMin: ['일','월','화','수','목','금','토'],
weekHeader: 'Wk',
dateFormat: 'yy-mm-dd',
firstDay: 0,
isRTL: false,
showMonthAfterYear: true,
changeMonth: true,
changeYear: true,
yearSuffix: '',
afterShow: function() {
$('.ui-datepicker-prev').empty().append( '<i class="far fa-chevron-left"></i>' );
$('.ui-datepicker-next').empty().append( '<i class="far fa-chevron-right"></i>' );
}
};
$.datepicker.setDefaults($.datepicker.regional['ko']);
$('[data-toggle="datepicker"]').datepicker();
$("body").on("click", '[data-toggle="datepicker"]', function(){
@ -63,6 +95,7 @@ APP.initPlugins = function() {
}
});
/*
$('[data-toggle="formatter"]').each(function(){
if( $(this).data('pattern') )
{

6581
_src/admin/js/jquery-ui.js
File diff suppressed because it is too large
View File

4
_src/admin/scss/_variables.scss

@ -20,8 +20,8 @@ $link-color : $body-color; // 링크 텍스트 색상
$link-hover-color : $color-primary; // 링크 오버시 텍스트 색상
// 폰트 관련
$font-family-base : 'Noto Sans KR',sans-serif; // 기본글자에 사용 되는 폰트
$font-family-heading : $font-family-base; // 헤딩태그에 사용 되는 폰트
$font-family-base : Gilroy,'Noto Sans KR',sans-serif; // 기본글자에 사용 되는 폰트
$font-family-heading : Gilroy, 'NanumSquare','나눔스퀘어',sans-serif; // 헤딩태그에 사용 되는 폰트
$font-size-base : 14px;
$font-weight-base : 400;
$font-weight-bold : 700;

3
_src/admin/scss/admin.scss

@ -3,6 +3,7 @@
// BASE
@import "boot/mixins";
@import "boot/function";
@import "boot/fonts";
@import "variables";
@import "boot/reset";
@ -31,8 +32,6 @@
@import "plugins/ax5ui/ax5mask";
@import "plugins/ax5ui/ax5modal";
@import "plugins/ax5ui/ax5toast";
@import "plugins/ax5ui/ax5calendar";
@import "plugins/ax5ui/ax5picker";
@import "plugins/plugins_custom";
// 페이지 SCSS 파일

84
_src/admin/scss/boot/_fonts.scss

@ -0,0 +1,84 @@
@font-face {
font-family: 'Gilroy';
font-weight:300;
src: url(../fonts/Gilroy-Light.eot);
src: url(../fonts/Gilroy-Light.eot?#iefix) format('embedded-opentype'),
url(../fonts/Gilroy-Light.woff2) format('woff2'),
url(../fonts/Gilroy-Light.woff) format('woff'),
url(../fonts/Gilroy-Light.ttf) format('truetype');
}
@font-face {
font-family: 'Gilroy';
font-weight:400;
src: url(../fonts/Gilroy-Regular.eot);
src: url(../fonts/Gilroy-Regular.eot?#iefix) format('embedded-opentype'),
url(../fonts/Gilroy-Regular.woff2) format('woff2'),
url(../fonts/Gilroy-Regular.woff) format('woff'),
url(../fonts/Gilroy-Regular.ttf) format('truetype');
}
@font-face {
font-family: 'Gilroy';
font-weight:500;
src: url(../fonts/Gilroy-Medium.eot);
src: url(../fonts/Gilroy-Medium.eot?#iefix) format('embedded-opentype'),
url(../fonts/Gilroy-Medium.woff2) format('woff2'),
url(../fonts/Gilroy-Medium.woff) format('woff'),
url(../fonts/Gilroy-Medium.ttf) format('truetype');
}
@font-face {
font-family: 'Gilroy';
font-weight:700;
src: url(../fonts/Gilroy-Bold.eot);
src: url(../fonts/Gilroy-Bold.eot?#iefix) format('embedded-opentype'),
url(../fonts/Gilroy-Bold.woff2) format('woff2'),
url(../fonts/Gilroy-Bold.woff) format('woff'),
url(../fonts/Gilroy-Bold.ttf) format('truetype');
}
@font-face {
font-family: 'Gilroy';
font-weight:800;
src: url(../fonts/Gilroy-ExtraBold.eot);
src: url(../fonts/Gilroy-ExtraBold.eot?#iefix) format('embedded-opentype'),
url(../fonts/Gilroy-ExtraBold.woff2) format('woff2'),
url(../fonts/Gilroy-ExtraBold.woff) format('woff'),
url(../fonts/Gilroy-ExtraBold.ttf) format('truetype');
}
@font-face {
font-family: 'NanumSquare';
font-weight: 400;
src: url(../fonts/NanumSquareR.eot);
src: url(../fonts/NanumSquareR.eot?#iefix) format('embedded-opentype'),
url(../fonts/NanumSquareR.woff) format('woff'),
url(../fonts/NanumSquareR.ttf) format('truetype');
}
@font-face {
font-family: 'NanumSquare';
font-weight: 700;
src: url(../fonts/NanumSquareB.eot);
src: url(../fonts/NanumSquareB.eot?#iefix) format('embedded-opentype'),
url(../fonts/NanumSquareB.woff) format('woff'),
url(../fonts/NanumSquareB.ttf) format('truetype');
}
@font-face {
font-family: 'NanumSquare';
font-weight: 800;
src: url(../fonts/NanumSquareEB.eot);
src: url(../fonts/NanumSquareEB.eot?#iefix) format('embedded-opentype'),
url(../fonts/NanumSquareEB.woff) format('woff'),
url(../fonts/NanumSquareEB.ttf) format('truetype');
}
@font-face {
font-family: 'NanumSquare';
font-weight: 300;
src: url(../fonts/NanumSquareL.eot);
src: url(../fonts/NanumSquareL.eot?#iefix) format('embedded-opentype'),
url(../fonts/NanumSquareL.woff) format('woff'),
url(../fonts/NanumSquareL.ttf) format('truetype');
}

32
_src/admin/scss/common/_layout.scss

@ -100,6 +100,7 @@ $nav-height : 59px;
padding-left:0;
padding-right:45px;
position:relative;
font-family: NanumSquare;
&:after {
content:"\f107";
@ -217,4 +218,35 @@ $nav-height : 59px;
background:#fff;
border-radius:4px;
border:1px solid #e6e6e6;
.box-header {
border-bottom:1px solid #e6e6e6;
margin-bottom:15px;
margin-top:-30px;
position:relative;
height:57px;
@include clear-fix-after();
.box-title {
float:left;
color:$brand-primary;
font-size:15px;
font-weight:500;
padding:18px 0;
small {
color:#767676;
font-weight:400;
font-size:13px;
}
}
.box-action {
float:right;
@include display-flex();
height:57px;
align-items: center;
}
}
}

7
_src/admin/scss/common/_utility.scss

@ -60,3 +60,10 @@
.text-right {
text-align:right !important;
}
@each $color, $value in $theme-colors {
.text-#{$color} {
color:$value;
}
}

4
_src/admin/scss/components/_buttons.scss

@ -51,6 +51,10 @@ fieldset:disabled a.btn {
}
}
.btn-link {
padding:0;
}
.btn-default {
@include button-variant(#fff, #979797);
}

5
_src/admin/scss/components/_dropdown.scss

@ -38,7 +38,10 @@
}
.divider {
height: 1px;
margin: 9px 0;
overflow: hidden;
background-color: #e5e5e5;
}
// Links within the dropdown menu

77
_src/admin/scss/components/_form.scss

@ -92,6 +92,58 @@ select.form-control {
}
}
// 체크박스
.w-check {
position:relative;
display:inline-block;
align-items: center;
vertical-align: middle;
& + .w-check {
margin-left:15px;
}
span {
@include display-flex();
position: relative;
cursor: pointer;
-webkit-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
align-items: center;
height:34px;
&:before {
content:"";
@include display-flex();
font-family: "Font Awesome 5 Pro";
width:18px;
height:18px;
border:1px solid #e9e9e9;
align-items: center;
justify-content: center;
margin-right:5px;
}
}
input[type=checkbox] {
position: absolute;
width:1px;
height:1px;
padding:0;
margin:-1px;
overflow: hidden;
clip:rect(0,0,0,0);
border: 0;
&:checked + span:before {
content:"\f00c";
border-color:$color-primary;
color:$color-primary;
}
}
}
//버튼그룹
.ax-button-group {
display: table;
@ -138,7 +190,6 @@ select.form-control {
}
}
[data-ax-tbl] {
font-size: 0.9em;
background: #fff;
@ -149,11 +200,11 @@ select.form-control {
[data-ax-tr] {
border-bottom: 1px solid #D8D8D8;
@include clear-fix-after();
@include display-flex();
[data-ax-td] {
float: left;
display: table;
@include display-flex();
table-layout: fixed;
width: 300px;
vertical-align: top;
@ -166,8 +217,15 @@ select.form-control {
width:100%;
}
&.right {
margin-left:auto;
text-align:right;
}
[data-ax-td-label] {
display: table-cell;
@include display-flex();
align-items: center;
justify-content: center;
width: 100px;
padding: 7px;
@include background-gradient(#fbfbfb, #f6f6f6);
@ -185,17 +243,24 @@ select.form-control {
a {
color: #363636;
}
&:empty {
background:#fff;
border-right-color:transparent;
}
}
+ [data-ax-td] [data-ax-td-label] { border-left: 1px solid #D8D8D8 }
[data-ax-td-wrap] {
display: table-cell;
display:block;
padding: 7px 7px;
-webkit-flex:1;
-ms-flex:1;
flex:1;
color: #68717b;
line-height: 1em;
a {
color: #68717b;

29
_src/admin/scss/components/_grid.scss

@ -1,3 +1,24 @@
.row {
@include clear-fix-after();
&:before {
clear:both;
content:'';
}
margin:0 -15px;
}
@for $i from 1 to 13 {
.col-sm-#{$i},
.col-xs-#{$i},
.col-md-#{$i},
.col-lg-#{$i}{
float:left;
min-height:1px;
width: ( $i / 12 * 100% );
padding:0 15px;
}
}
[data-ax5grid] {
margin:0;
padding:0;
@ -72,9 +93,9 @@
padding: 0;
position: relative;
overflow: hidden;
background-color: rgba(0,0,0,.15);
border: 0px none;
color: #fff;
background-color: #f9f9f9;
border:1px solid #ddd;
color: #282828;
td {
@ -82,7 +103,7 @@
overflow: hidden;
position: relative;
padding: 10px;
border: 0 none;
border:1px solid #ddd;
height:38px;
text-align:center;

6
_src/admin/scss/components/_pagination.scss

@ -37,5 +37,11 @@
opacity:0.4;
}
}
&:hover:not(.disabled) {
a {
background-color:#fff;
}
}
}
}

107
_src/admin/scss/plugins/_plugins_custom.scss

@ -0,0 +1,107 @@
.ui-datepicker {
padding:0;
font-family:inherit;
.ui-icon {
background-image:none;
}
&.ui-widget.ui-widget-content {
border:0 none;
box-shadow:0 0 10px rgba(#000, 0.4);
}
th {
font-weight:400;
}
td {
padding:0;
text-align:center;
.ui-state-default {
background-color:transparent;
border:0 none;
text-align:center;
&:hover {
background-color:$brand-primary;
color:#fff;
}
}
.ui-state-highlight {
color:$brand-primary;
}
.ui-state-active {
background-color:$brand-primary;
color:#fff;
}
}
.ui-widget-header {
background-color:$brand-primary;
color:#fff;
border:0 none;
border-bottom-left-radius:0;
border-bottom-right-radius:0;
}
.ui-datepicker-header {
padding:0;
height:30px;
@include display-flex();
align-items: center;
}
.ui-datepicker-prev,
.ui-datepicker-next {
text-align: center;
width:30px;
height:30px;
top:0px;
@include display-flex();
align-items: center;
justify-content: center;
border-radius:0px;
&.ui-datepicker-prev-hover,
&.ui-datepicker-next-hover{
background-color:darken($brand-primary, 7.5%);
color:#fff;
border:0 none;
cursor:pointer;
}
}
.ui-datepicker-prev {
left:0;
}
.ui-datepicker-next {
right:0;
}
.ui-datepicker-title {
width:100%;
select {
vertical-align: middle;
background: transparent;
border: 0 none;
color: #fff;
height:30px;
line-height:30px;
outline: 0 none !important;
text-align:center;
margin:0;
font-family:inherit;
option {
color:#333;
}
}
}
}

351
_src/admin/scss/plugins/ax5ui/_ax5calendar.scss

@ -1,351 +0,0 @@
$ax5calendar-control-bg: #f5f5f5 !default;
$ax5calendar-control-border: 1px solid #ddd !default;
$ax5calendar-control-border-radius: 5px !default;
$ax5calendar-control-font-size: ceil(($font-size-base * 1.25)) !default;
$ax5calendar-control-text-color: #222 !default;
$ax5calendar-control-hover-text-color: $brand-primary !default;
$ax5calendar-control-padding: 0 !default;
$ax5calendar-header-bg: (#FFFFFF, #FFFFFF) !default;
$ax5calendar-header-border: 0px none !default;
$ax5calendar-header-padding: 0px 2px !default;
$ax5calendar-header-font-size: ceil(($font-size-base * 0.8)) !default;
$ax5calendar-body-bg: (#FFFFFF, #FFFFFF) !default;
$ax5calendar-body-border: 0px none !default;
$ax5calendar-body-font-size: ceil(($font-size-base * 1)) !default;
$ax5calendar-body-animation-in: ax5-ui-calendar-fadein !default;
$ax5calendar-body-animation-out: ax5-ui-calendar-fadeout !default;
$ax5calendar-sun-text-color: #C78B81 !default;
$ax5calendar-sat-text-color: #32B4DC !default;
$ax5calendar-date-bg: (#FFFFFF, #FFFFFF) !default;
$ax5calendar-date-text-color: #C3C4C6 !default;
$ax5calendar-live-bg: (#F0F0F0, #F0F0F0) !default;
$ax5calendar-live-text-color: #6D6E70 !default;
$ax5calendar-hover-bg: (#32B4DC, #32B4DC) !default;
$ax5calendar-hover-text-color: #fff !default;
$ax5calendar-focus-bg: (#E67241, #E67241) !default;
$ax5calendar-focus-text-color: #fff !default;
$ax5calendar-period-bg: (#82d3fa, #82d3fa) !default;
$ax5calendar-period-text-color: #fff !default;
$ax5calendar-item-day-radius: 5px !default;
$ax5calendar-item-month-radius: 5px !default;
$ax5calendar-item-year-radius: 5px !default;
@mixin extend-item-theme() {
&.holiday {
color: $ax5calendar-sun-text-color;
}
}
// mixins --------------------------------------------- end
@include keyframes(ax5-ui-calendar-fadeout) {
from {
opacity: 1.0;
}
to {
opacity: 0.5;
}
}
@include keyframes(ax5-ui-calendar-fadein) {
from {
opacity: 0.5;
}
to {
opacity: 1.0;
}
}
.ax5-ui-calendar {
box-sizing: border-box;
* {
box-sizing: border-box;
}
position: relative;
.calendar-control {
position: relative;
box-sizing: content-box;
@include ax-background($ax5calendar-control-bg);
border: $ax5calendar-control-border;
border-radius: $ax5calendar-control-border-radius;
font-size: $ax5calendar-control-font-size;
margin-bottom: 5px;
padding: $ax5calendar-control-padding;
.date-move-left, .date-move-right {
display: block;
position: absolute;
overflow: hidden;
text-align: center;
font-size: ceil($ax5calendar-control-font-size * 1.2);
cursor: pointer;
text-decoration: none;
padding: $ax5calendar-control-padding;
i, span {
line-height: inherit;
}
}
.date-move-left {
left: 0px;
top: 0px;
}
.date-move-right {
right: 0px;
top: 0px;
}
.date-display {
text-align: center;
[data-calendar-display] {
margin: 0px 10px;
cursor: pointer;
text-decoration: underline;
}
}
color: $ax5calendar-control-text-color;
a {
color: $ax5calendar-control-text-color;
}
a:hover {
color: $ax5calendar-control-hover-text-color;
}
}
.calendar-body {
&.fadein {
@include animation($ax5calendar-body-animation-in 0.1s ease-in-out);
opacity: 1.0;
}
&.fadeout {
@include animation($ax5calendar-body-animation-out 0.1s ease-in-out);
opacity: 0.0;
}
table {
box-sizing: border-box;
table-layout: fixed;
border-collapse: collapse;
border-spacing: 0px;
border: 0px none;
thead {
td, th {
box-sizing: border-box;
vertical-align: middle;
line-height: 1em;
cursor: pointer;
text-align: center;
font-size: $ax5calendar-header-font-size;
padding: $ax5calendar-header-padding;
border: $ax5calendar-header-border;
overflow: hidden;
@include ax-background($ax5calendar-header-bg);
color: $ax5calendar-live-text-color;
&.calendar-col-0 {
color: $ax5calendar-sun-text-color;
}
&.calendar-col-6 {
color: $ax5calendar-sat-text-color;
}
}
}
tbody {
td, th {
box-sizing: border-box;
vertical-align: middle;
line-height: 1em;
cursor: pointer;
text-align: center;
font-size: $ax5calendar-body-font-size;
border: $ax5calendar-body-border;
@include ax-background($ax5calendar-body-bg);
overflow: hidden;
.calendar-item-day {
position: relative;
display: block;
width: 100%;
height: 100%;
vertical-align: middle;
border-radius: $ax5calendar-item-day-radius;
overflow: hidden;
line-height: inherit;
@include ax-background($ax5calendar-date-bg);
color: $ax5calendar-date-text-color;
font-size: $ax5calendar-body-font-size;
span.addon {
position: absolute;
width: 100%;
text-align: center;
line-height: $ax5calendar-body-font-size * 0.8;
font-size: $ax5calendar-body-font-size * 0.8;
&.addon-header {
left: 0px;
top: 1px;
}
&.addon-footer {
left: 0px;
bottom: 1px;
}
}
&.live {
@include ax-background($ax5calendar-live-bg);
color: $ax5calendar-live-text-color;
span.addon {
color: #A1A1A1;
}
&.sunday {
color: $ax5calendar-sun-text-color;
}
&.saturday {
color: $ax5calendar-sat-text-color;
}
}
&.focus {
@include ax-background($ax5calendar-focus-bg);
color: $ax5calendar-focus-text-color;
span.addon {
color: $ax5calendar-focus-text-color;
}
&.hover {
@include ax-background($ax5calendar-hover-bg);
color: $ax5calendar-hover-text-color !important;
span.addon {
color: $ax5calendar-hover-text-color;
}
}
}
&.period {
@include ax-background($ax5calendar-period-bg);
color: $ax5calendar-period-text-color !important;
span.addon {
color: $ax5calendar-period-text-color;
}
}
&.selected-day {
@include ax-background($ax5calendar-hover-bg);
color: $ax5calendar-hover-text-color !important;
span.addon {
color: $ax5calendar-hover-text-color;
}
}
&.disable {
@include ax-background($ax5calendar-date-bg);
color: lighten($ax5calendar-date-text-color, 10%);
}
@include extend-item-theme();
}
.calendar-item-month {
display: block;
width: 100%;
height: 100%;
vertical-align: middle;
border-radius: $ax5calendar-item-month-radius;
overflow: hidden;
line-height: inherit;
@include ax-background($ax5calendar-date-bg);
color: $ax5calendar-date-text-color;
font-size: $ax5calendar-body-font-size;
&.live {
@include ax-background($ax5calendar-live-bg);
color: $ax5calendar-live-text-color;
}
&.hover {
@include ax-background($ax5calendar-hover-bg);
color: $ax5calendar-hover-text-color;
}
&.focus {
@include ax-background($ax5calendar-focus-bg);
color: $ax5calendar-focus-text-color;
}
&.selected-month {
@include ax-background($ax5calendar-hover-bg);
color: $ax5calendar-hover-text-color !important;
span.addon {
color: $ax5calendar-hover-text-color;
}
span.lunar {
color: $ax5calendar-hover-text-color;
}
}
&.disable {
@include ax-background($ax5calendar-date-bg);
color: lighten($ax5calendar-date-text-color, 10%);
}
@include extend-item-theme();
}
.calendar-item-year {
display: block;
width: 100%;
height: 100%;
vertical-align: middle;
border-radius: $ax5calendar-item-year-radius;
overflow: hidden;
line-height: inherit;
@include ax-background($ax5calendar-date-bg);
color: $ax5calendar-date-text-color;
font-size: $ax5calendar-body-font-size;
&.live {
@include ax-background($ax5calendar-live-bg);
color: $ax5calendar-live-text-color;
}
&.hover {
@include ax-background($ax5calendar-hover-bg);
color: $ax5calendar-hover-text-color;
}
&.focus {
@include ax-background($ax5calendar-focus-bg);
color: $ax5calendar-focus-text-color;
}
&.selected-year {
@include ax-background($ax5calendar-hover-bg);
color: $ax5calendar-hover-text-color !important;
span.addon {
color: $ax5calendar-hover-text-color;
}
span.lunar {
color: $ax5calendar-hover-text-color;
}
}
&.disable {
@include ax-background($ax5calendar-date-bg);
color: lighten($ax5calendar-date-text-color, 10%);
}
@include extend-item-theme();
}
/*
&.calendar-col-0 {
.calendar-item-day.live {
color: $ax5calendar-sun-text-color;
@include extend-item-theme();
}
}
&.calendar-col-6 {
.calendar-item-day.live {
color: $ax5calendar-sat-text-color;
@include extend-item-theme();
}
}
*/
}
}
}
}
}

334
_src/admin/scss/plugins/ax5ui/_ax5picker.scss

@ -1,334 +0,0 @@
$ax5picker-z-index: 2000 !default;
$ax5picker-box-model: border-box !default;
$ax5picker-bg: #fff !default;
$ax5picker-inner-border: 1px solid !default;
$ax5picker-inner-border-color: #ddd !default;
$ax5picker-box-shadow: 0px 0px 3px 0px rgba(0, 0, 0, 0.175) !default;
$ax5picker-border-radius: 5px !default;
$ax5picker-body-padding: 5px !default;
$ax5picker-heading-padding: 10px 15px !default;
$ax5picker-buttons-padding: 10px 0px 5px 0px !default;
$ax5picker-content-border: 0px solid !default;
$ax5picker-content-border-color: none !default;
$ax5picker-content-border-radius: 0px !default;
$ax5picker-content-padding: 0px !default;
$ax5picker-easing-time-open: 0.1s !default;
$ax5picker-easing-time-close: 0.1s !default;
$ax5picker-arrow-size: 10px !default;
$ax5picker-arrow-border-width: 1px !default;
//** Border color for elements within dialog
$ax5picker-default-text: #222 !default;
$ax5picker-default-border-color: #ddd !default;
$ax5picker-default-heading-bg: #f5f5f5 !default;
$ax5picker-primary-text: #fff !default;
$ax5picker-primary-border-color: $brand-primary !default;
$ax5picker-primary-heading-bg: $brand-primary !default;
$ax5picker-success-text: #3c763d !default;
$ax5picker-success-border-color: #dff0d8 !default;
$ax5picker-success-heading-bg: darken(adjust-hue(#dff0d8, -10), 5%) !default;
$ax5picker-info-text: #31708f !default;
$ax5picker-info-border-color: #d9edf7 !default;
$ax5picker-info-heading-bg: darken(adjust-hue(#d9edf7, -10), 5%) !default;
$ax5picker-warning-text: #8a6d3b !default;
$ax5picker-warning-border-color: #fcf8e3 !default;
$ax5picker-warning-heading-bg: darken(adjust-hue(#fcf8e3, -10), 5%) !default;
$ax5picker-danger-text: #a94442 !default;
$ax5picker-danger-border-color: #f2dede !default;
$ax5picker-danger-heading-bg: darken(adjust-hue(#f2dede, -10), 5%) !default;
@mixin ax-picker() {
box-sizing: border-box;
*,
*:before,
*:after {
box-sizing: border-box;
}
z-index: $ax5picker-z-index;
position: absolute;
left: 0px;
top: 0px;
//overflow: hidden;
}
@mixin picker-variant($text-color, $border-color, $heading-bg-color) {
@include ax-background($ax5picker-bg);
border: $ax5picker-inner-border;
border-color: $border-color;
border-radius: $ax5picker-border-radius;
box-shadow: $ax5picker-box-shadow;
.ax-picker-heading {
font-weight: 600;
padding: $ax5picker-heading-padding;
border-bottom: 1px solid transparent;
@include border-top-radius($ax5picker-border-radius - 1);
color: $text-color;
@include ax-background($heading-bg-color);
.badge {
font-size: 0.8em;
color: $heading-bg-color;
@include ax-background($text-color);
}
}
.ax-picker-body {
padding: $ax5picker-body-padding;
text-align: center;
.ax-picker-content {
min-width: 50px;
.ax-picker-content-box {
border: $ax5picker-content-border;
border-color: $ax5picker-content-border-color;
border-radius: $ax5picker-content-border-radius;
padding: $ax5picker-content-padding;
overflow: hidden;
}
}
.ax-picker-buttons {
padding: $ax5picker-buttons-padding;
button {
&:not(:last-child) {
margin-right: 3px;
}
}
}
}
&.direction-top {
.ax-picker-arrow {
@include picker-arrow($ax5picker-arrow-size, $ax5picker-arrow-border-width, $border-color, top);
}
}
&.direction-right {
.ax-picker-arrow {
@include picker-arrow($ax5picker-arrow-size, $ax5picker-arrow-border-width, $border-color, right);
}
}
&.direction-bottom {
.ax-picker-arrow {
@include picker-arrow($ax5picker-arrow-size, $ax5picker-arrow-border-width, $border-color, bottom);
}
}
&.direction-left {
.ax-picker-arrow {
@include picker-arrow($ax5picker-arrow-size, $ax5picker-arrow-border-width, $border-color, left);
}
}
}
@mixin picker-arrow($arrow-size, $arrow-border-width, $border-color, $arrow-direction) {
//
//@debug( nth($ax5picker-inner-border, 3) );
$arrow-bg: nth($ax5picker-bg, 1);
$arrow-border-color: $border-color;
position: absolute;
width: 0;
height: 0;
@if ($arrow-direction == top) {
left: 50%;
top: 0px;
} @else if ($arrow-direction == right) {
right: 0px;
top: 50%;
} @else if ($arrow-direction == bottom) {
left: 50%;
bottom: 0px;
} @else if ($arrow-direction == left) {
left: 0px;
top: 50%;
}
&:before {
content: ' ';
position: absolute;
width: 0;
height: 0;
@if ($arrow-direction == top) {
left: - ($arrow-size);
top: - ($arrow-size * 2);
border-left: $arrow-size solid transparent;
border-right: $arrow-size solid transparent;
border-bottom: ($arrow-size * 2) solid $arrow-border-color;
} @else if ($arrow-direction == right) {
right: - ($arrow-size * 2);
top: - ($arrow-size);
border-top: $arrow-size solid transparent;
border-bottom: $arrow-size solid transparent;
border-left: ($arrow-size * 2) solid $arrow-border-color;
} @else if ($arrow-direction == bottom) {
left: - ($arrow-size);
bottom: - ($arrow-size * 2);
border-left: $arrow-size solid transparent;
border-right: $arrow-size solid transparent;
border-top: ($arrow-size * 2) solid $arrow-border-color;
} @else if ($arrow-direction == left) {
left: - ($arrow-size * 2);
top: - ($arrow-size);
border-top: $arrow-size solid transparent;
border-bottom: $arrow-size solid transparent;
border-right: ($arrow-size * 2) solid $arrow-border-color;
}
}
&:after {
content: ' ';
position: absolute;
width: 0;
height: 0;
@if ($arrow-direction == top) {
left: - ($arrow-size);
top: - ($arrow-size * 2) + ($arrow-border-width * 2);
border-left: ($arrow-size) solid transparent;
border-right: ($arrow-size) solid transparent;
border-bottom: ($arrow-size * 2) solid $arrow-bg;
} @else if ($arrow-direction == right) {
right: - ($arrow-size * 2) + ($arrow-border-width * 2);
top: - ($arrow-size);
border-top: ($arrow-size) solid transparent;
border-bottom: ($arrow-size) solid transparent;
border-left: ($arrow-size * 2) solid $arrow-bg;
} @else if ($arrow-direction == bottom) {
left: - ($arrow-size);
bottom: - ($arrow-size * 2) + ($arrow-border-width * 2);
border-left: ($arrow-size) solid transparent;
border-right: ($arrow-size) solid transparent;
border-top: ($arrow-size * 2) solid $arrow-bg;
} @else if ($arrow-direction == left) {
left: - ($arrow-size * 2) + ($arrow-border-width * 2);
top: - ($arrow-size);
border-top: ($arrow-size) solid transparent;
border-bottom: ($arrow-size) solid transparent;
border-right: ($arrow-size * 2) solid $arrow-bg;
}
}
}
@include keyframes(ax-picker) {
0% {
opacity: 0.0;
//@include transform(scale(0));
@include transform(translate(0, -10%));
}
100% {
opacity: 1.0;
//@include transform(scale(1));
@include transform(translate(0, 0));
}
}
@include keyframes(ax-picker-destroy) {
from {
//@include transform(scale(1));
opacity: 1.0;
@include transform(translate(0, 0));
}
to {
//@include transform(scale(0.95));
opacity: 0.0;
@include transform(translate(0, -10%));
}
}
// mixins --------------------------------------------- end
.ax5-ui-picker {
@include ax-picker();
@include perspective(1000px);
@include transform-style(preserve-3d);
@include animation(ax-picker $ax5picker-easing-time-open);
@include transform(translateZ(0));
@include transform-origin(center top);
/* flip type
@include backface-visibility(visible);
@include transform(translateY(0%) rotateX(0deg));
*/
@include picker-variant($ax5picker-default-text, $ax5picker-default-border-color, $ax5picker-default-heading-bg);
&.primary {
@include picker-variant($ax5picker-primary-text, $ax5picker-primary-border-color, $ax5picker-primary-heading-bg);
}
&.success {
@include picker-variant($ax5picker-success-text, $ax5picker-success-border-color, $ax5picker-success-heading-bg);
}
&.info {
@include picker-variant($ax5picker-info-text, $ax5picker-info-border-color, $ax5picker-info-heading-bg);
}
&.warning {
@include picker-variant($ax5picker-warning-text, $ax5picker-warning-border-color, $ax5picker-warning-heading-bg);
}
&.danger {
@include picker-variant($ax5picker-danger-text, $ax5picker-danger-border-color, $ax5picker-danger-heading-bg);
}
&.destroy {
@include animation(ax-picker-destroy $ax5picker-easing-time-close $ease-in-back forwards);
}
&.direction-top {
@include transform-origin(center top);
}
&.direction-right {
@include transform-origin(right center);
}
&.direction-bottom {
@include transform-origin(center bottom);
}
&.direction-left {
@include transform-origin(left center);
}
}
// picker handle
@mixin ax5picker-handle(){
&[data-ax5picker] {
.input-group-addon {
cursor: pointer;
&:not(:last-child) {
border-left: 0 none;
border-right: 0 none;
}
&.color-preview{
padding: 0;
}
[data-ax5picker-color="preview"]{
display: block;
}
}
}
}
.input-group {
@include ax5picker-handle();
}
.form-group {
@include ax5picker-handle();
}

54
package-lock.json

@ -44,27 +44,6 @@
"resolved": "https://registry.npmjs.org/ax5core/-/ax5core-1.4.126.tgz",
"integrity": "sha512-aUUgOavuIBbJkirNqCe7gZovujTS1+f+AUGJGG7T3szFFIfXBDmvNNZMOhxbSnjSc48dLr4+XyAW9FX3YVAJMQ=="
},
"ax5ui-calendar": {
"version": "1.4.126",
"resolved": "https://registry.npmjs.org/ax5ui-calendar/-/ax5ui-calendar-1.4.126.tgz",
"integrity": "sha512-x/5l9neKQs9C9oJqy1zjZzfCXdsNOlBM5ovKWVlBS8w01Re6X8306KKnEtqfZJys84ZHb6uXCuctVmJCrtUuhg==",
"dev": true,
"requires": {
"ax5core": ">=1.4.115",
"jquery": "^3.3.1"
}
},
"ax5ui-formatter": {
"version": "1.4.126",
"resolved": "https://registry.npmjs.org/ax5ui-formatter/-/ax5ui-formatter-1.4.126.tgz",
"integrity": "sha512-5XYD3WjIIq9CniBzp/fedBkYoxe+4Ab08KtTR0stMZ4pbLL0m3OSygjt8uxqna6ZiROusCTn7ZJE4Nnh+UB26A==",
"dev": true,
"requires": {
"ax5core": ">=1.4.115",
"ax5ui-menu": "^1.4.126",
"jquery": "^3.3.1"
}
},
"ax5ui-mask": {
"version": "1.4.126",
"resolved": "https://registry.npmjs.org/ax5ui-mask/-/ax5ui-mask-1.4.126.tgz",
@ -74,16 +53,6 @@
"jquery": "^3.3.1"
}
},
"ax5ui-menu": {
"version": "1.4.126",
"resolved": "https://registry.npmjs.org/ax5ui-menu/-/ax5ui-menu-1.4.126.tgz",
"integrity": "sha512-Xe9PV2Tj9ihB1vCENiUOvrJ7fG1KVgra8uSXXU7qcp80VR/a/amYoP3yROcMRDPcnZs6mwtGCIRLy+nhK3GrQw==",
"dev": true,
"requires": {
"ax5core": ">=1.4.115",
"jquery": "^3.3.1"
}
},
"ax5ui-modal": {
"version": "1.4.126",
"resolved": "https://registry.npmjs.org/ax5ui-modal/-/ax5ui-modal-1.4.126.tgz",
@ -93,29 +62,6 @@
"jquery": "^3.3.1"
}
},
"ax5ui-palette": {
"version": "1.4.126",
"resolved": "https://registry.npmjs.org/ax5ui-palette/-/ax5ui-palette-1.4.126.tgz",
"integrity": "sha512-F0KWNa3dDR+9v5o3Jo6d8z/XysqpYiie84woPv7Q2OnUVIk6+X7CRDqQ3Z4RLSRTizJB3xrSJKYTri2P8C5IyQ==",
"dev": true,
"requires": {
"ax5core": ">=1.4.41",
"jquery": "^3.3.1"
}
},
"ax5ui-picker": {
"version": "1.4.126",
"resolved": "https://registry.npmjs.org/ax5ui-picker/-/ax5ui-picker-1.4.126.tgz",
"integrity": "sha512-jtIymhPa2B+9U7Saeo8UfPoLt09GhVZfzQ9c2eWMJxCP4iXiKUf3ktuGnpDclY/nboRPvFnZ0aT5jFhw+6zV2Q==",
"dev": true,
"requires": {
"ax5core": ">=1.4.115",
"ax5ui-calendar": "^1.4.126",
"ax5ui-formatter": "^1.4.126",
"ax5ui-palette": "^1.4.126",
"jquery": "^3.3.1"
}
},
"ax5ui-toast": {
"version": "1.4.126",
"resolved": "https://registry.npmjs.org/ax5ui-toast/-/ax5ui-toast-1.4.126.tgz",

3
package.json

@ -13,9 +13,6 @@
"author": "휘파람 소프트",
"license": "ISC",
"devDependencies": {
"ax5ui-calendar": "^1.4.126",
"ax5ui-formatter": "^1.4.126",
"ax5ui-picker": "^1.4.126",
"ax5ui-toast": "^1.4.126",
"gulp": "^3.9.1",
"gulp-clean-css": "^3.9.4",

2
public_html/assets/css/admin.min.css
File diff suppressed because it is too large
View File

2
public_html/assets/css/admin.min.css.map
File diff suppressed because it is too large
View File

BIN
public_html/assets/fonts/Gilroy-Bold.eot

BIN
public_html/assets/fonts/Gilroy-Bold.ttf

BIN
public_html/assets/fonts/Gilroy-Bold.woff

BIN
public_html/assets/fonts/Gilroy-Bold.woff2

BIN
public_html/assets/fonts/Gilroy-BoldItalic.eot

BIN
public_html/assets/fonts/Gilroy-BoldItalic.ttf

BIN
public_html/assets/fonts/Gilroy-BoldItalic.woff

BIN
public_html/assets/fonts/Gilroy-BoldItalic.woff2

BIN
public_html/assets/fonts/Gilroy-ExtraBold.eot

BIN
public_html/assets/fonts/Gilroy-ExtraBold.otf

BIN
public_html/assets/fonts/Gilroy-ExtraBold.ttf

BIN
public_html/assets/fonts/Gilroy-ExtraBold.woff

BIN
public_html/assets/fonts/Gilroy-ExtraBold.woff2

BIN
public_html/assets/fonts/Gilroy-ExtraBoldItalic.eot

BIN
public_html/assets/fonts/Gilroy-ExtraBoldItalic.ttf

BIN
public_html/assets/fonts/Gilroy-ExtraBoldItalic.woff

BIN
public_html/assets/fonts/Gilroy-ExtraBoldItalic.woff2

BIN
public_html/assets/fonts/Gilroy-Light.eot

BIN
public_html/assets/fonts/Gilroy-Light.otf

BIN
public_html/assets/fonts/Gilroy-Light.ttf

BIN
public_html/assets/fonts/Gilroy-Light.woff

BIN
public_html/assets/fonts/Gilroy-Light.woff2

BIN
public_html/assets/fonts/Gilroy-LightItalic.eot

BIN
public_html/assets/fonts/Gilroy-LightItalic.ttf

BIN
public_html/assets/fonts/Gilroy-LightItalic.woff

BIN
public_html/assets/fonts/Gilroy-LightItalic.woff2

BIN
public_html/assets/fonts/Gilroy-Medium.eot

BIN
public_html/assets/fonts/Gilroy-Medium.ttf

BIN
public_html/assets/fonts/Gilroy-Medium.woff

BIN
public_html/assets/fonts/Gilroy-Medium.woff2

BIN
public_html/assets/fonts/Gilroy-MediumItalic.eot

BIN
public_html/assets/fonts/Gilroy-MediumItalic.ttf

BIN
public_html/assets/fonts/Gilroy-MediumItalic.woff

BIN
public_html/assets/fonts/Gilroy-MediumItalic.woff2

BIN
public_html/assets/fonts/Gilroy-Regular.eot

BIN
public_html/assets/fonts/Gilroy-Regular.ttf

BIN
public_html/assets/fonts/Gilroy-Regular.woff

BIN
public_html/assets/fonts/Gilroy-Regular.woff2

BIN
public_html/assets/fonts/Gilroy-RegularItalic.eot

BIN
public_html/assets/fonts/Gilroy-RegularItalic.ttf

BIN
public_html/assets/fonts/Gilroy-RegularItalic.woff

BIN
public_html/assets/fonts/Gilroy-RegularItalic.woff2

BIN
public_html/assets/fonts/NanumSquareB.eot

BIN
public_html/assets/fonts/NanumSquareB.ttf

BIN
public_html/assets/fonts/NanumSquareB.woff

BIN
public_html/assets/fonts/NanumSquareEB.eot

BIN
public_html/assets/fonts/NanumSquareEB.ttf

BIN
public_html/assets/fonts/NanumSquareEB.woff

BIN
public_html/assets/fonts/NanumSquareL.eot

BIN
public_html/assets/fonts/NanumSquareL.ttf

BIN
public_html/assets/fonts/NanumSquareL.woff

BIN
public_html/assets/fonts/NanumSquareR.eot

BIN
public_html/assets/fonts/NanumSquareR.ttf

BIN
public_html/assets/fonts/NanumSquareR.woff

2
public_html/assets/js/admin.min.js
File diff suppressed because it is too large
View File

2
public_html/assets/js/admin.min.js.map
File diff suppressed because it is too large
View File

2
public_html/plugins/ckeditor/config.js

@ -7,7 +7,7 @@
CKEDITOR.editorConfig = function( config ) {
config.language = "ko";
config.height = 350;
config.skin = typeof is_admin && is_admin ? 'moono-dark': "moono-lisa";
config.skin = "moono-lisa";
config.allowedContent = true;
config.extraPlugins= 'autoembed,image2,uploadimage,uploadfile,youtube';
config.removePlugins= 'image';

4
source.info.json

@ -33,12 +33,10 @@
"css": ["_src/admin/scss/admin.scss"],
"js": [
"node_modules/ax5core/dist/ax5core.js",
"node_modules/ax5ui-formatter/dist/ax5formatter.js",
"node_modules/ax5ui-mask/dist/ax5mask.js",
"node_modules/ax5ui-modal/dist/ax5modal.js",
"node_modules/ax5ui-toast/dist/ax5toast.js",
"node_modules/ax5ui-calendar/dist/ax5calendar.js",
"node_modules/ax5ui-picker/dist/ax5picker.js",
"_src/admin/js/jquery-ui.js",
"_src/plugins/jquery-datetimepicker/jquery.datetimepicker.full.js",
"_src/plugins/jquery-blockUI/jquery.blockUI.js",
"_src/admin/js/jquery.formatter.js",

6
wheeparam/application/controllers/admin/Statics.php

@ -23,13 +23,17 @@ class Statics extends WB_Controller {
// 넘어온 검색값 정리
$this->data['startdate'] = $this->input->get('startdate', TRUE, date('Y-m-d', strtotime("-1 month", time())));
$this->data['enddate'] = $this->input->get('enddate', TRUE, date('Y-m-d'));
$this->data['is_mobile'] = $this->input->get('is_mobile', TRUE, array('Y','N'));
$this->data['ip'] = $this->input->get('ip', TRUE, '');
// 값 가져오기
$param['page'] = $this->input->get('page', TRUE, 1);
$param['page_rows'] = 20;
$param['page_rows'] = 15;
$param['limit'] = TRUE;
$param['where']['sta_regtime >='] = $this->data['startdate'] ." 00:00:00";
$param['where']['sta_regtime <='] = $this->data['enddate'] ." 23:59:59";
if(! empty($this->data['ip'])) $param['where']['INET_NTOA(sta_ip)'] = $this->data['ip'];
$param['where_in']['sta_is_mobile'] = $this->data['is_mobile'];
$this->data['visit_list'] = $this->statics_model->visit_list($param);
// 페이지네이션 세팅

2
wheeparam/application/helpers/admin_helper.php

@ -4,7 +4,7 @@ function display_member_menu($mem_idx, $mem_name, $mem_status='Y')
$CI =& get_instance();
$str = '<div class="btn-group ML10 ">';
$str .= '<button type="button" class="btn dropdown-toggle" data-toggle="dropdown">'.$mem_name.' <i class="fas fa-angle-down"></i></button>';
$str .= '<button type="button" class="btn btn-link dropdown-toggle" data-toggle="dropdown">'.$mem_name.' <i class="fas fa-angle-down"></i></button>';
$str .= '<ul class="dropdown-menu dropdown-menu-dark">';
$str .= '<li><a href="javascript:;" onclick="APP.MEMBER.POP_INFO_ADMIN('.$mem_idx.');">회원정보</a></li>';
$str .= '<li><a href="javascript:;" onclick="APP.MEMBER.POP_MODIFY_ADMIN('.$mem_idx.');">정보수정</a></li>';

11
wheeparam/views/themes/admin/members/lists.php

@ -3,6 +3,9 @@
</div>
<div class="box">
<div class="box-header">
<h2 class="box-title">검색 필터</h2>
</div>
<?=form_open(NULL, array("method"=>'get','class'=>'form-flex','autocomplete'=>'off'))?>
<div data-ax-tbl>
<div data-ax-tr>
@ -61,13 +64,13 @@
</div>
</div>
<?=form_close()?>
</div>
<div class="H10"></div>
<div class="ax-button-group">
<div class="left">
<h4>회원 검색결과 <small>(<?=number_format($member_list['total_count'])?> 명)</small></h4>
</div>
<div class="box">
<div class="box-header">
<h4 class="box-title">회원 검색결과 <small>(<?=number_format($member_list['total_count'])?> 명)</small></h4>
</div>
<div data-ax5grid>

103
wheeparam/views/themes/admin/statics/keyword.php

@ -4,54 +4,77 @@
<h1 class="page-title">키워드별 접속 통계</h1>
</div>
<?=form_open(NULL, array('method'=>'get','class'=>'form-flex','autocomplete'=>'off'))?>
<div class="form-group">
<label class="control-label">일자 검색</label>
<div class="controls">
<input class="form-control form-control-inline" name="startdate" data-toggle="datepicker" value="<?=$startdate?>">
<input class="form-control form-control-inline" name="enddate" data-toggle="datepicker" value="<?=$enddate?>">
<button class="btn btn-default"><i class="far fa-search"></i> 필터적용</button>
<div class="box">
<div class="box-header">
<h4 class="box-title">검색 필터</h4>
</div>
<?=form_open(NULL, array('method'=>'get','class'=>'form-flex','autocomplete'=>'off'))?>
<div data-ax-tbl class="ax-search-tbl">
<div data-ax-tr>
<div data-ax-td>
<div data-ax-td-label>일자 검색</div>
<div data-ax-td-wrap>
<input class="form-control form-control-sm" name="startdate" data-toggle="datepicker" value="<?=$startdate?>">
</div>
<div data-ax-td-wrap>
<input class="form-control form-control-sm" name="enddate" data-toggle="datepicker" value="<?=$enddate?>">
</div>
</div>
<div data-ax-td>
<div data-ax-td-wrap>
<button class="btn btn-sm btn-default"><i class="far fa-search"></i> 필터적용</button>
</div>
</div>
</div>
</div>
<?=form_close()?>
</div>
<?=form_close()?>
<div class="H10"></div>
<div class="row">
<div class="col-sm-6">
<div style="max-width:400px;margin:auto">
<h4 class="text-center">키워드별 접속 통계</h4>
<div class="box">
<div class="box-header">
<h4 class="box-title">키워드별 접속 통계</h4>
</div>
<canvas id="chart-browser" width="200" height="200"></canvas>
</div>
</div>
<div class="col-sm-6">
<div data-ax5grid>
<table>
<thead>
<tr>
<th>키워드</th>
<th>접속수</th>
</tr>
</thead>
<tbody>
<?php foreach($statics['list'] as $row):?>
<tr>
<td class="text-center"><?=$row['sta_keyword']?></td>
<td class="text-right"><?=number_format($row['count'])?> (<?=$statics['total']>0? round($row['count']/$statics['total']*100,2):0?>%)</td>
</tr>
<?php endforeach;?>
<?php if(count($statics['list']) == 0):?>
<tr>
<td class="empty" colspan="2">키워드로 접속한 기록이 없습니다.</td>
</tr>
<?php endif;?>
</tbody>
<tfoot>
<tr>
<td class="text-center">TOTAL</td>
<td class="text-right"><?=number_format($statics['total'])?></td>
</tr>
</tfoot>
</table>
<div class="box">
<div class="box-header">
<h4 class="box-title">키워드</h4>
</div>
<div data-ax5grid>
<table>
<thead>
<tr>
<th>키워드</th>
<th>접속수</th>
</tr>
</thead>
<tbody>
<?php foreach($statics['list'] as $row):?>
<tr>
<td class="text-center"><?=$row['sta_keyword']?></td>
<td class="text-right"><?=number_format($row['count'])?> (<?=$statics['total']>0? round($row['count']/$statics['total']*100,2):0?>%)</td>
</tr>
<?php endforeach;?>
<?php if(count($statics['list']) == 0):?>
<tr>
<td class="empty" colspan="2">키워드로 접속한 기록이 없습니다.</td>
</tr>
<?php endif;?>
</tbody>
<tfoot>
<tr>
<td class="text-center">TOTAL</td>
<td class="text-right"><?=number_format($statics['total'])?></td>
</tr>
</tfoot>
</table>
</div>
</div>
</div>
</div>
@ -77,7 +100,7 @@
},
legend: {
labels : {
fontColor : '#fff'
fontColor : '#282828'
}
}
}

158
wheeparam/views/themes/admin/statics/visit.php

@ -1,70 +1,120 @@
<div class="page-header">
<h1 class="page-title">사용자 접속 로그</h1>
<h1 class="page-title">사용자 접속 로그<small>방문통계 &gt; 사용자 접속 로그</small></h1>
</div>
<?=form_open(NULL, array('method'=>'get','class'=>'form-flex','autocomplete'=>'off'))?>
<div class="form-group">
<label class="control-label">일자 검색</label>
<div class="controls">
<input class="form-control form-control-inline" name="startdate" data-toggle="datepicker" value="<?=$startdate?>">
<input class="form-control form-control-inline" name="enddate" data-toggle="datepicker" value="<?=$enddate?>">
<button class="btn btn-default"><i class="far fa-search"></i> 필터적용</button>
<div class="box">
<div class="box-header">
<h4 class="box-title">검색 필터</h4>
</div>
<?=form_open(NULL, array('method'=>'get','class'=>'form-flex','autocomplete'=>'off'))?>
<div data-ax-tbl class="ax-search-tbl">
<div data-ax-tr>
<div data-ax-td>
<div data-ax-td-label>일자 검색</div>
<div data-ax-td-wrap>
<input class="form-control form-control-sm" name="startdate" data-toggle="datepicker" value="<?=$startdate?>">
</div>
<div data-ax-td-wrap>
<input class="form-control form-control-sm" name="enddate" data-toggle="datepicker" value="<?=$enddate?>">
</div>
</div>
<div data-ax-td>
<div data-ax-td-label>접속 기기</div>
<div data-ax-td-wrap>
<label class="w-check">
<input type="checkbox" name="is_mobile[]" value="N" <?=in_array('N', $is_mobile)?'checked':''?>><span>PC</span>
</label>
<label class="w-check">
<input type="checkbox" name="is_mobile[]" value="Y" <?=in_array('Y', $is_mobile)?'checked':''?>><span>모바일</span>
</label>
</div>
</div>
<div data-ax-td>
<div data-ax-td-label>IP 검색</div>
<div data-ax-td-wrap>
<input class="form-control" name="ip" value="<?=$ip?>" placeholder="검색할 IP를 입력하세요">
</div>
</div>
<div data-ax-td>
<div data-ax-td-wrap>
<button class="btn btn-sm btn-default"><i class="far fa-search"></i> 필터적용</button>
</div>
</div>
</div>
</div>
<?=form_close()?>
</div>
<?=form_close()?>
<div class="H10"></div>
<div data-ax5grid>
<table>
<thead>
<tr>
<th>접속일자</th>
<th>국가</th>
<th class="W100">지역</th>
<th class="W100">조직</th>
<th>브라우져</th>
<th>접속기기</th>
<th class="W100">모바일</th>
<th class="col-sm-3">리퍼러</th>
<th>접속 검색어</th>
<th>접속 IP</th>
</tr>
</thead>
<tbody>
<?php foreach($visit_list['list'] as $row) :?>
<div class="box">
<div class="box-header">
<h4 class="box-title">사용자 접속 로그</h4>
<div class="box-action">
<button type="button" class="btn btn-sm btn-default"><i class="far fa-file-excel"></i> Excel 다운로드</button>
</div>
</div>
<div data-ax5grid>
<table>
<thead>
<tr>
<td class="text-center"><?=$row['sta_regtime']?></td>
<?php if($row['sta_country']) :?>
<td class="text-center"><?=$row['sta_country']?></td>
<td class="text-center" title="<?=$row['sta_addr']?>"><span class="ellipsis W100" style="display:block"><?=$row['sta_addr']?></span></td>
<td class="text-center" title="<?=$row['sta_org']?>"><span class="ellipsis W100" style="display:block"><?=$row['sta_org']?></span></td>
<?php else :?>
<td class="text-center" colspan="3">
<button type="button" class="btn btn-default" data-button="get-ip-info" data-ip="<?=$row['sta_ip']?>"><i class="far fa-search"></i> 확인</button>
</td>
<?php endif;?>
<td class="text-center"><?=$row['sta_browser']?></td>
<td class="text-center"><?=$row['sta_device']?></td>
<td class="text-center"><?=$row['sta_is_mobile']?></td>
<td>
<?php if($row['sta_referrer_host']) : ?>
<a href="<?=$row['sta_referrer']?>" title="<?=$row['sta_referrer']?>" target="_blank"><?=$row['sta_referrer_host']?></a>
<?php endif;?>
</td>
<td><?=$row['sta_keyword']?></td>
<td class="text-center"><?=$row['sta_ip']?></td>
<th class="W155">접속일자</th>
<th class="W100">접속 IP</th>
<th class="W100">국가</th>
<th class="W200">지역</th>
<th class="W100">조직</th>
<th class="W200">브라우져</th>
<th class="W150">접속기기</th>
<th class="W100">모바일</th>
<th>리퍼러</th>
<th class="W120">접속 검색어</th>
</tr>
<?php endforeach;?>
</tbody>
</table>
</thead>
<tbody>
<?php foreach($visit_list['list'] as $row) :?>
<tr>
<td class="text-center"><?=$row['sta_regtime']?></td>
<td>
<div class="dropdown">
<button type="button" class="btn btn-link dropdown-toggle" data-toggle="dropdown"><?=$row['sta_ip']?></button>
<ul class="dropdown-menu">
<li><a href="">[<?=$row['sta_ip']?>] 접근금지 IP로 설정</a></li>
</ul>
</div>
</td>
<?php if($row['sta_country']) :?>
<td class="text-center"><?=$row['sta_country']?></td>
<td title="<?=$row['sta_addr']?>"><span class="ellipsis W200" style="display:block"><?=$row['sta_addr']?></span></td>
<td title="<?=$row['sta_org']?>"><span class="ellipsis W100" style="display:block"><?=$row['sta_org']?></span></td>
<?php else :?>
<td class="text-center" colspan="3">
<button type="button" class="btn btn-xs btn-default" data-button="get-ip-info" data-ip="<?=$row['sta_ip']?>"><i class="far fa-search"></i> 확인</button>
</td>
<?php endif;?>
<td class="text-center"><?=$row['sta_browser']?></td>
<td class="text-center"><?=$row['sta_device']?></td>
<td class="text-center text-primary"><?=$row['sta_is_mobile']=='Y'?'<i class="far fa-check"></i>':''?></td>
<td>
<?php if($row['sta_referrer_host']) : ?>
<a href="<?=$row['sta_referrer']?>" title="<?=$row['sta_referrer']?>" target="_blank"><?=$row['sta_referrer_host']?></a>
<?php endif;?>
</td>
<td><?=$row['sta_keyword']?></td>
</tr>
<?php endforeach;?>
</tbody>
</table>
</div>
<div class="bottom-actions MT20">
<div class="center">
<?=$pagination?>
</div>
</div>
</div>
<div class="H10"></div>
<div class="text-center">
<?=$pagination?>
</div>
<div class="H30"></div>

Loading…
Cancel
Save