first
This commit is contained in:
29
modules/dashboard/admin/_info.php
Normal file
29
modules/dashboard/admin/_info.php
Normal file
@@ -0,0 +1,29 @@
|
||||
<?php
|
||||
$license_local = $g['path_module'].$module.'/LICENSE';
|
||||
$license_global = $g['path_root'].'LICENSE';
|
||||
|
||||
if (file_exists($license_local)) $license = $license_local;
|
||||
else $license = $license_global;
|
||||
?>
|
||||
|
||||
<link href="<?php echo $g['s']?>/_core/css/github-markdown.css" rel="stylesheet">
|
||||
<?php getImport('jquery-markdown','jquery.markdown','0.0.10','js')?>
|
||||
|
||||
<?php @include $g['path_module'].$module.'/var/var.moduleinfo.php' ?>
|
||||
|
||||
<article class="rb-docs markdown-body px-5 pt-3">
|
||||
<h1><?php echo sprintf('%s 모듈정보',ucfirst($MD['name']))?></h1>
|
||||
|
||||
<div class="pb-5 readme">
|
||||
<?php readfile($g['path_module'].$module.'/README.md')?>
|
||||
</div>
|
||||
|
||||
<div class="pb-5">
|
||||
<h2>라이센스</h2>
|
||||
<textarea class="form-control" rows="10"><?php readfile($license)?></textarea>
|
||||
</div>
|
||||
</article>
|
||||
|
||||
<script type="text/javascript">
|
||||
$(".markdown-body .readme").markdown();
|
||||
</script>
|
||||
148
modules/dashboard/admin/main.css
Normal file
148
modules/dashboard/admin/main.css
Normal file
@@ -0,0 +1,148 @@
|
||||
#rb-body .nav-tabs {
|
||||
display: none;
|
||||
}
|
||||
#rb-dashboard .alert {
|
||||
border-radius: 3px;
|
||||
}
|
||||
#rb-dashboard .row {
|
||||
margin-right: -7px;
|
||||
margin-left: -7px
|
||||
}
|
||||
#rb-dashboard .col-xs-1,
|
||||
#rb-dashboard .col-sm-1,
|
||||
#rb-dashboard .col-md-1,
|
||||
#rb-dashboard .col-lg-1,
|
||||
#rb-dashboard .col-xs-2,
|
||||
#rb-dashboard .col-sm-2,
|
||||
#rb-dashboard .col-md-2,
|
||||
#rb-dashboard .col-lg-2,
|
||||
#rb-dashboard .col-xs-3,
|
||||
#rb-dashboard .col-sm-3,
|
||||
#rb-dashboard .col-md-3,
|
||||
#rb-dashboard .col-lg-3,
|
||||
#rb-dashboard .col-xs-4,
|
||||
#rb-dashboard .col-sm-4,
|
||||
#rb-dashboard .col-md-4,
|
||||
#rb-dashboard .col-lg-4,
|
||||
#rb-dashboard .col-xs-5,
|
||||
#rb-dashboard .col-sm-5,
|
||||
#rb-dashboard .col-md-5,
|
||||
#rb-dashboard .col-lg-5,
|
||||
#rb-dashboard .col-xs-6,
|
||||
#rb-dashboard .col-sm-6,
|
||||
#rb-dashboard .col-md-6,
|
||||
#rb-dashboard .col-lg-6,
|
||||
#rb-dashboard .col-xs-7,
|
||||
#rb-dashboard .col-sm-7,
|
||||
#rb-dashboard .col-md-7,
|
||||
#rb-dashboard .col-lg-7,
|
||||
#rb-dashboard .col-xs-8,
|
||||
#rb-dashboard .col-sm-8,
|
||||
#rb-dashboard .col-md-8,
|
||||
#rb-dashboard .col-lg-8,
|
||||
#rb-dashboard .col-xs-9,
|
||||
#rb-dashboard .col-sm-9,
|
||||
#rb-dashboard .col-md-9,
|
||||
#rb-dashboard .col-lg-9,
|
||||
#rb-dashboard .col-xs-10,
|
||||
#rb-dashboard .col-sm-10,
|
||||
#rb-dashboard .col-md-10,
|
||||
#rb-dashboard .col-lg-10,
|
||||
#rb-dashboard .col-xs-11,
|
||||
#rb-dashboard .col-sm-11,
|
||||
#rb-dashboard .col-md-11,
|
||||
#rb-dashboard .col-lg-11,
|
||||
#rb-dashboard .col-xs-12,
|
||||
#rb-dashboard .col-sm-12,
|
||||
#rb-dashboard .col-md-12,
|
||||
#rb-dashboard .col-lg-12 {
|
||||
padding-left : 7px;
|
||||
padding-right: 7px;
|
||||
}
|
||||
#rb-dashboard .collapse {
|
||||
max-height: 300px;
|
||||
overflow-x: hidden;
|
||||
overflow-y: auto;
|
||||
}
|
||||
@media (max-width: 768px)
|
||||
{
|
||||
#rb-dashboard .collapse {
|
||||
max-height: 10000px;
|
||||
}
|
||||
}
|
||||
#rb-dashboard .panel-heading {
|
||||
position: relative;
|
||||
cursor: move;
|
||||
}
|
||||
#rb-dashboard .panel-heading .rb-collapse {
|
||||
position: absolute;
|
||||
top: 2px;
|
||||
right: 5px;
|
||||
left: auto;
|
||||
cursor: pointer;
|
||||
color: #AAAAAA;
|
||||
text-decoration: none;
|
||||
}
|
||||
#rb-dashboard .panel-heading a i {
|
||||
display: inline-block;
|
||||
width: 16px;
|
||||
height: 16px;
|
||||
font-style: normal;
|
||||
font-size: 10px;
|
||||
}
|
||||
#rb-dashboard .panel-heading a i:first-child
|
||||
{
|
||||
font-size: 12px;
|
||||
}
|
||||
#rb-dashboard .panel-heading a i:hover {
|
||||
border: #dfdfdf solid 1px;
|
||||
border-radius: 1px;
|
||||
background-color: #fff;
|
||||
color: #777;
|
||||
}
|
||||
#rb-dashboard .panel {
|
||||
font-size: 13px;
|
||||
border-radius: 3px;
|
||||
}
|
||||
#rb-dashboard .rb-bottom-none {
|
||||
border-bottom: 0;
|
||||
}
|
||||
#rb-dashboard .panel-footer {
|
||||
padding: 0;
|
||||
}
|
||||
#rb-dashboard .panel-footer.rb-more a {
|
||||
display: block;
|
||||
text-align: center;
|
||||
color: #999;
|
||||
padding: 7px 0 7px 0;
|
||||
}
|
||||
#rb-dashboard .panel-footer.rb-more a:hover {
|
||||
text-decoration: none;
|
||||
color: #444
|
||||
}
|
||||
#rb-dashboard .rb-guide-wrapper {
|
||||
display: table;
|
||||
width: 100%;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
#rb-dashboard .rb-guide-wrapper-inner {
|
||||
display: table-cell;
|
||||
vertical-align: middle;
|
||||
}
|
||||
|
||||
#rb-dashboard .rb-guide-wrapper-inner .container {
|
||||
margin: 20px 0 50px 0;
|
||||
line-height: 1.8
|
||||
}
|
||||
|
||||
#rb-dashboard .rb-guide-wrapper-inner h1 .fa {
|
||||
margin-bottom: 15px
|
||||
}
|
||||
|
||||
#rb-dashboard .rb-guide-wrapper-inner h1 .fa.text-muted {
|
||||
color: #B4B3B3
|
||||
}
|
||||
#rb-dashboard .rb-guide-wrapper-inner h3 {
|
||||
font-family: 'verdana';
|
||||
}
|
||||
172
modules/dashboard/admin/main.php
Normal file
172
modules/dashboard/admin/main.php
Normal file
@@ -0,0 +1,172 @@
|
||||
<?php
|
||||
if (!$_dashboardInclude && $g['device']) {
|
||||
getLink($g['s'].'/?r='.$r.'&m='.$m.'&module='.$module.'&front=mobile.shortcut','','','');
|
||||
}
|
||||
|
||||
include $g['path_core'].'function/rss.func.php';
|
||||
include $g['path_module'].'market/var/var.php';
|
||||
include $g['path_module'].'admin/var/var.version.php';
|
||||
$lastest_version = trim(getUrlData($d['github']['lastest'].$g['wcache'],10));
|
||||
$current_version = $d['admin']['version'];
|
||||
$_current_version = str_replace('.','',$current_version);
|
||||
$_lastest_version = str_replace('.','',$lastest_version);
|
||||
|
||||
if ($_lastest_version-$_current_version > 0) $try_update = true;
|
||||
else $try_update = false;
|
||||
|
||||
// 마켓 업데이트 체크
|
||||
$g['marketvar'] = $g['path_var'].'/market.var.php';
|
||||
if (file_exists($g['marketvar'])) include_once $g['marketvar'];
|
||||
|
||||
$num_market_update = 0;
|
||||
if ($d['market']['url']) {
|
||||
$numData = getUrlData($d['market']['url'].'&iframe=Y&page=client.check_update&id='.$d['market']['userid'].'&key='.$d['market']['key'].'&version=2&host='.$_SERVER['HTTP_HOST'].'&ip='.$_SERVER['REMOTE_ADDR'],10);
|
||||
$numData = explode('[NUM:',$numData);
|
||||
$numData = explode(':NUM]',$numData[1]);
|
||||
$num_market_update = $numData[0];
|
||||
}
|
||||
|
||||
$d['admwidget'] = array();
|
||||
$_mywidget = $g['path_module'].$module.'/var/'.$my['uid'].'.php';
|
||||
if(is_file($_mywidget)) include $_mywidget;
|
||||
?>
|
||||
|
||||
<div id="rb-dashboard">
|
||||
|
||||
<?php if($try_update):?>
|
||||
<div id="rb-update-alert" class="alert alert-success rounded-0 mb-1">
|
||||
<strong>시스템</strong> 업데이트가 있습니다.
|
||||
<a href="<?php echo $g['s']?>/?r=<?php echo $r?>&m=admin&module=admin&front=update" class="alert-link"><u>지금 업데이트 하시겠습니까?</u></a>
|
||||
</div>
|
||||
<?php endif?>
|
||||
|
||||
<?php if($num_market_update):?>
|
||||
<div id="rb-update-alert" class="alert alert-success rounded-0">
|
||||
<strong>익스텐션</strong> 업데이트가
|
||||
<a href="<?php echo $g['s']?>/?r=<?php echo $r?>&m=admin&module=market&front=update" class="alert-link"><u><?php echo $num_market_update ?>건</u></a> 있습니다.
|
||||
</div>
|
||||
<?php endif?>
|
||||
|
||||
|
||||
|
||||
<div id="rb-widgets-body" class="row">
|
||||
|
||||
<?php $_i=0;foreach($d['admwidget'] as $_key => $_val):?>
|
||||
<?php if(!is_file($g['path_module'].$module.'/widgets/'.$_key.'/main.php'))continue?>
|
||||
<?php if($_val=='true'):?>
|
||||
<?php include getLangFile($g['path_module'].$module.'/widgets/'.$_key.'/lang.',$d['admin']['syslang'],'.php') ?>
|
||||
<?php include $g['path_module'].$module.'/widgets/'.$_key.'/var.php' ?>
|
||||
<div class="col-md-<?php echo $d['admdash']['col']?> col-lg-<?php echo $d['admdash']['col']?>">
|
||||
<link href="<?php echo $g['s']?>/modules/<?php echo $module?>/widgets/<?php echo $_key?>/main.css" rel="stylesheet">
|
||||
<div class="card<?php if($_SESSION['sh-dash-'.$_key]):?> rb-bottom-none<?php endif?>">
|
||||
<div class="card-header">
|
||||
<a class="rb-collapse btn btn-link" data-toggle="collapse" data-target="#wedget-<?php echo $_key?>">
|
||||
<i onclick="checkArrow(this);" title="숨기기" data-tooltip="tooltip">×</i>
|
||||
<i onclick="checkArrow(this);" title="접기/펼치기" data-tooltip="tooltip"><?php echo $_SESSION['sh-dash-'.$_key]?'▼':'▲'?></i>
|
||||
</a>
|
||||
<?php echo $d['admdash']['title']?>
|
||||
</div>
|
||||
<div class="collapse<?php if(!$_SESSION['sh-dash-'.$_key]):?> in<?php endif?>" id="wedget-<?php echo $_key ?>">
|
||||
|
||||
<?php include $g['path_module'].$module.'/widgets/'.$_key.'/main.php' ?>
|
||||
<?php if($d['admdash']['more']): ?>
|
||||
<div class="panel-footer rb-more"><a href="<?php echo $d['admdash']['more']?>">more</a></div>
|
||||
<?php endif?>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<?php $_i++;endif?>
|
||||
<?php endforeach?>
|
||||
|
||||
<div id="rb-guide-wrapper" class="rb-guide-wrapper<?php if($_i):?> d-none<?php endif?>">
|
||||
<div class="rb-guide-wrapper-inner">
|
||||
<div class="d-flex align-items-center justify-content-center" style="height: 80vh">
|
||||
<div class="text-muted">
|
||||
<h1 class="h3">
|
||||
설정된 위젯이 없습니다.
|
||||
</h1>
|
||||
<small class="">
|
||||
위젯을 이용해서 <?php echo $my['name'] ?>님만의 대시보드를 꾸며보세요.
|
||||
<br class="hidden-xs">
|
||||
자주 사용하는 위젯을 원하는 위치에 진열할 수 있습니다. [준비중]
|
||||
</small>
|
||||
<p>
|
||||
<br>
|
||||
<br>
|
||||
<a id="rb-dashboard-edit-btn" class="btn btn-outline-primary rb-modal-dashboard d-none" href="#." data-toggle="modal" data-target="#modal_window">
|
||||
<i class="glyphicon glyphicon-ok"></i>
|
||||
대시보드 꾸미기
|
||||
</a>
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
<form name="actionForm" action="<?php echo $g['s']?>/" method="post">
|
||||
<input type="hidden" name="r" value="<?php echo $r?>">
|
||||
<input type="hidden" name="m" value="<?php echo $module?>">
|
||||
<input type="hidden" name="a" value="dashboard_order">
|
||||
<input type="hidden" name="widget" value="">
|
||||
</form>
|
||||
|
||||
<script>
|
||||
document.ondblclick = function()
|
||||
{
|
||||
//$('#rb-dashboard-edit-btn').click();
|
||||
}
|
||||
$(document).ready(function()
|
||||
{
|
||||
$('.rb-modal-dashboard').on('click',function() {
|
||||
modalSetting('modal_window','<?php echo getModalLink('&m='.$m.'&module='.$module.'&front=modal.dashboard')?>');
|
||||
});
|
||||
<?php if(!$g['device']):?>
|
||||
$('#rb-admin-page-content').removeClass('tab-content');
|
||||
$('#rb-admin-ul-tabs').removeClass('nav nav-tabs rb-nav-tabs');
|
||||
<?php endif?>
|
||||
});
|
||||
function checkArrow(obj)
|
||||
{
|
||||
var sid = obj.parentNode.parentNode.parentNode.children[1].id.replace('wedget-','');
|
||||
if (obj.innerHTML == '×')
|
||||
{
|
||||
obj.parentNode.parentNode.parentNode.parentNode.className += ' hidden';
|
||||
|
||||
var f = document.actionForm;
|
||||
var wd = getId('rb-widgets-body');
|
||||
var wn = wd.children.length;
|
||||
var i;
|
||||
var j = 0;
|
||||
for (i = 0; i < wn-1; i++)
|
||||
{
|
||||
if (wd.children[i].className.indexOf('hidden') != -1) j++;
|
||||
}
|
||||
if (wn-1 == j)
|
||||
{
|
||||
$('#rb-guide-wrapper').removeClass('hidden');
|
||||
}
|
||||
else {
|
||||
$('#rb-guide-wrapper').addClass('hidden');
|
||||
}
|
||||
f.widget.value = sid;
|
||||
getIframeForAction(f);
|
||||
f.submit();
|
||||
}
|
||||
else {
|
||||
if (obj.innerHTML == '▼')
|
||||
{
|
||||
obj.innerHTML = '▲';
|
||||
obj.parentNode.parentNode.parentNode.className = obj.parentNode.parentNode.parentNode.className.replace(' rb-bottom-none','');
|
||||
}
|
||||
else
|
||||
{
|
||||
obj.innerHTML = '▼';
|
||||
obj.parentNode.parentNode.parentNode.className += ' rb-bottom-none';
|
||||
}
|
||||
sessionSetting('sh-dash-'+sid,'1','','1');
|
||||
}
|
||||
}
|
||||
</script>
|
||||
8
modules/dashboard/admin/mobile.dashboard.css
Normal file
8
modules/dashboard/admin/mobile.dashboard.css
Normal file
@@ -0,0 +1,8 @@
|
||||
#rb-body .nav-tabs {
|
||||
display: block !important;
|
||||
}
|
||||
#rb-body .tab-content {
|
||||
border-bottom: #ccc solid 1px !important;
|
||||
padding: 20px 10px 0 10px !important;
|
||||
background-color: #fff !important;
|
||||
}
|
||||
7
modules/dashboard/admin/mobile.dashboard.php
Normal file
7
modules/dashboard/admin/mobile.dashboard.php
Normal file
@@ -0,0 +1,7 @@
|
||||
<link href="<?php echo $g['s']?>/modules/<?php echo $module?>/admin/main.css" rel="stylesheet">
|
||||
<div id="rb-dashboard-for-mobile">
|
||||
<?php
|
||||
$_dashboardInclude = true;
|
||||
include $g['path_module'].$module.'/admin/main.php';
|
||||
?>
|
||||
</div>
|
||||
92
modules/dashboard/admin/mobile.shortcut.css
Normal file
92
modules/dashboard/admin/mobile.shortcut.css
Normal file
@@ -0,0 +1,92 @@
|
||||
#rb_admin_top {
|
||||
|
||||
display: none;
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
.tab-content {
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
.rb-module-list {
|
||||
|
||||
|
||||
|
||||
padding: 15px 0;
|
||||
|
||||
margin: 0 auto
|
||||
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
.rb-module-list span a {
|
||||
|
||||
color: #555 ;
|
||||
|
||||
text-shadow: 0 1px 2px #222;
|
||||
|
||||
position: relative;
|
||||
|
||||
font-family: 'Open Sans', sans-serif;
|
||||
|
||||
text-align: center;
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
.rb-module-list span a:hover,
|
||||
|
||||
.rb-module-list span a:focus{
|
||||
|
||||
color: #333 ;
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
.rb-module-list li {
|
||||
|
||||
padding: 0 !important;
|
||||
|
||||
vertical-align: top;
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
.rb-box {
|
||||
|
||||
position: relative;
|
||||
|
||||
background-color: #666;
|
||||
|
||||
border-radius: 6px;
|
||||
|
||||
text-align: center;
|
||||
|
||||
padding: 8px;
|
||||
|
||||
margin: 4px;
|
||||
|
||||
width: 70px;
|
||||
|
||||
1
modules/dashboard/admin/mobile.shortcut.php
Normal file
1
modules/dashboard/admin/mobile.shortcut.php
Normal file
@@ -0,0 +1 @@
|
||||
<ul class="rb-module-list list-inline">
|
||||
84
modules/dashboard/admin/mobile.site.css
Normal file
84
modules/dashboard/admin/mobile.site.css
Normal file
@@ -0,0 +1,84 @@
|
||||
.rb-site-list {
|
||||
|
||||
padding: 15px 0;
|
||||
margin: 0 auto
|
||||
|
||||
}
|
||||
|
||||
.rb-site-list span a {
|
||||
color: #555 ;
|
||||
text-shadow: 0 1px 2px #222;
|
||||
position: relative;
|
||||
font-family: 'Open Sans', sans-serif;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
|
||||
|
||||
.rb-site-list span a:hover,
|
||||
.rb-site-list span a:focus{
|
||||
color: #333 ;
|
||||
}
|
||||
|
||||
.rb-site-list li {
|
||||
padding: 0 !important;
|
||||
vertical-align: top;
|
||||
}
|
||||
|
||||
|
||||
|
||||
.rb-box {
|
||||
position: relative;
|
||||
background-color: #666;
|
||||
border-radius: 6px;
|
||||
text-align: center;
|
||||
padding: 8px;
|
||||
margin: 4px;
|
||||
width: 70px;
|
||||
height : 65px;
|
||||
overflow: hidden;
|
||||
box-shadow: 0 1px 2px #eee;
|
||||
}
|
||||
|
||||
.rb-box a {
|
||||
color: #fff
|
||||
}
|
||||
|
||||
.rb-box a:hover {
|
||||
text-decoration: none;
|
||||
color: #428BCA
|
||||
}
|
||||
|
||||
.rb-box a:active {
|
||||
color: #428BCA
|
||||
}
|
||||
|
||||
.rb-box i {
|
||||
font-style: normal;
|
||||
}
|
||||
|
||||
.rb-box .rb-icon {
|
||||
font-size: 34px;
|
||||
text-shadow: 1px 1px 1px #222;
|
||||
}
|
||||
|
||||
.rb-box .rb-name {
|
||||
font-family: 'Open Sans', sans-serif;
|
||||
position: absolute;
|
||||
bottom: 4px;
|
||||
left: 5px;
|
||||
right: 5px;
|
||||
top: auto;
|
||||
text-align: center;
|
||||
color: #eee;
|
||||
text-shadow: 1px 1px 1px #222;
|
||||
font-size: 11px;
|
||||
text-transform: capitalize;
|
||||
overflow: hidden;
|
||||
text-overflow: ellipsis;
|
||||
white-space: nowrap;
|
||||
overflow: hidden;
|
||||
-o-text-overflow: ellipsis;
|
||||
-ms-text-overflow: ellipsis;
|
||||
}
|
||||
|
||||
14
modules/dashboard/admin/mobile.site.php
Normal file
14
modules/dashboard/admin/mobile.site.php
Normal file
@@ -0,0 +1,14 @@
|
||||
<ul class="rb-site-list list-inline">
|
||||
<?php $_SITES = getDbArray($table['s_site'],'','*','gid','asc',0,1)?>
|
||||
<?php while($_R = db_fetch_array($_SITES)):?>
|
||||
|
||||
<li>
|
||||
<div class="rb-box">
|
||||
<a href="<?php echo $g['s']?>/?r=<?php echo $_R['id']?>" target="_blank">
|
||||
<i class="rb-icon <?php echo $_R['icon']?$_R['icon']:'fa fa-home'?>"></i><br>
|
||||
<i class="rb-name"><?php echo ucfirst($_R['id'])?></i>
|
||||
</a>
|
||||
</div>
|
||||
</li>
|
||||
<?php endwhile?>
|
||||
</ul>
|
||||
375
modules/dashboard/admin/modal.dashboard.php
Normal file
375
modules/dashboard/admin/modal.dashboard.php
Normal file
@@ -0,0 +1,375 @@
|
||||
<?php
|
||||
function getDashboardDirList($folder)
|
||||
{
|
||||
$incs = array();
|
||||
$dirh = opendir($folder);
|
||||
while(false !== ($files = readdir($dirh)))
|
||||
{
|
||||
if(substr($files,0,1)=='.') continue;
|
||||
$incs[] = $files;
|
||||
}
|
||||
closedir($dirh);
|
||||
return $incs;
|
||||
}
|
||||
$d['admwidget'] = array();
|
||||
$_widgetList = getDashboardDirList($g['path_module'].$module.'/widgets');
|
||||
$_mywidget = $g['path_module'].$module.'/var/'.$my['uid'].'.php';
|
||||
if(is_file($_mywidget)) include $_mywidget;
|
||||
?>
|
||||
<div id="bookmark" class="xrow">
|
||||
<form action="<?php echo $g['s']?>/" method="post" class="rb-form">
|
||||
<input type="hidden" name="r" value="<?php echo $r?>">
|
||||
<input type="hidden" name="m" value="<?php echo $module?>">
|
||||
<input type="hidden" name="a" value="">
|
||||
<input type="hidden" name="reaction" value="">
|
||||
<input type="hidden" name="flag" value="">
|
||||
<div class="dd" id="nestable-menu">
|
||||
<ol class="dd-list">
|
||||
<?php $_i=1;foreach($d['admwidget'] as $_key => $_val):?>
|
||||
<?php if(!is_file($g['path_module'].$module.'/widgets/'.$_key.'/main.php'))continue?>
|
||||
<li class="dd-item dd3-item" data-id="<?php echo $_i?>">
|
||||
<div class="dd-handle dd3-handle"></div>
|
||||
<div class="dd3-content"><a><?php echo getFolderName($g['path_module'].$module.'/widgets/'.$_key)?></a></div>
|
||||
<div class="dd-checkbox" title="진열" data-tooltip="tooltip">
|
||||
<input type="checkbox" class="hidden" name="dashboard_widgets_order[]" value="<?php echo $_key?>" checked>
|
||||
<input type="checkbox" name="dashboard_widgets[]" value="1"<?php if($_val=='true'):?> checked<?php endif?> style="cursor:pointer;"><i></i>
|
||||
</div>
|
||||
</li>
|
||||
<?php $_i++;endforeach?>
|
||||
<?php foreach($_widgetList as $_key):?>
|
||||
<?php if($d['admwidget'][$_key])continue?>
|
||||
<li class="dd-item dd3-item" data-id="<?php echo $_i?>">
|
||||
<div class="dd-handle dd3-handle"></div>
|
||||
<div class="dd3-content"><a><?php echo getFolderName($g['path_module'].$module.'/widgets/'.$_key)?></a></div>
|
||||
<div class="dd-checkbox" title="진열" data-tooltip="tooltip">
|
||||
<input type="checkbox" class="hidden" name="dashboard_widgets_order[]" value="<?php echo $_key?>" checked>
|
||||
<input type="checkbox" name="dashboard_widgets[]" value="1" style="cursor:pointer;"><i></i>
|
||||
</div>
|
||||
</li>
|
||||
<?php $_i++;endforeach?>
|
||||
</ol>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
|
||||
|
||||
<!-- nestable : https://github.com/dbushell/Nestable -->
|
||||
<?php getImport('nestable','jquery.nestable',false,'js') ?>
|
||||
<script>
|
||||
$('#nestable-menu').nestable();
|
||||
$('.dd').on('change', function() {
|
||||
var f = document.forms[0];
|
||||
getIframeForAction(f);
|
||||
f.a.value = 'dashboard_order';
|
||||
f.flag.value = getCheck();
|
||||
f.submit();
|
||||
});
|
||||
</script>
|
||||
|
||||
|
||||
<!-- basic -->
|
||||
<script>
|
||||
function getCheck()
|
||||
{
|
||||
var f = document.forms[0];
|
||||
var l = document.getElementsByName('dashboard_widgets[]');
|
||||
var n = l.length;
|
||||
var i;
|
||||
var s='';
|
||||
for (i=0; i < n; i++) s += l[i].checked + ',';
|
||||
|
||||
return s;
|
||||
}
|
||||
function actQue(act)
|
||||
{
|
||||
var f = document.forms[0];
|
||||
getIframeForAction(f);
|
||||
f.a.value = act;
|
||||
f.flag.value = getCheck();
|
||||
f.reaction.value = 'Y';
|
||||
f.submit();
|
||||
f.msg.value = '';
|
||||
}
|
||||
</script>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<!----------------------------------------------------------------------------
|
||||
@부모레이어를 제어할 수 있도록 모달의 헤더와 풋터를 부모레이어에 출력시킴
|
||||
----------------------------------------------------------------------------->
|
||||
|
||||
<div id="_modal_header" class="hidden">
|
||||
<button aria-hidden="true" data-dismiss="modal" class="close" type="button">×</button>
|
||||
<h4 class="modal-title" id="myModalLabel"><i class="kf kf-dashboard fa-lg"></i> <?php echo _LANG('a3001','dashboard')?></h4>
|
||||
</div>
|
||||
<div id="_modal_footer" class="hidden">
|
||||
<ul class="list-inline clearfix">
|
||||
<li class="pull-left">
|
||||
<button type="button" class="btn btn-default" onclick="frames._modal_iframe_modal_window.checkboxChoice('dashboard_widgets[]',true);">
|
||||
<?php echo _LANG('a3002','dashboard')?>
|
||||
</button>
|
||||
<button type="button" class="btn btn-default" onclick="frames._modal_iframe_modal_window.checkboxChoice('dashboard_widgets[]',false);">
|
||||
<?php echo _LANG('a3003','dashboard')?>
|
||||
</button>
|
||||
</li>
|
||||
<li class="pull-right">
|
||||
<button type="button" class="btn btn-primary" onclick="frames._modal_iframe_modal_window.actQue('dashboard_order');">
|
||||
<?php echo _LANG('a3004','dashboard')?>
|
||||
</button>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<script>
|
||||
function modalSetting()
|
||||
{
|
||||
parent.getId('modal_window_dialog_modal_window').style.width = '100%';
|
||||
parent.getId('modal_window_dialog_modal_window').style.paddingRight = '20px';
|
||||
parent.getId('modal_window_dialog_modal_window').style.maxWidth = '400px';
|
||||
parent.getId('_modal_iframe_modal_window').style.height = '450px';
|
||||
parent.getId('_modal_body_modal_window').style.height = '450px';
|
||||
|
||||
parent.getId('_modal_header_modal_window').innerHTML = getId('_modal_header').innerHTML;
|
||||
parent.getId('_modal_header_modal_window').className = 'modal-header';
|
||||
parent.getId('_modal_header_modal_window').style.background = '#3F424B';
|
||||
parent.getId('_modal_header_modal_window').style.color = '#fff';
|
||||
parent.getId('_modal_body_modal_window').style.padding = '0';
|
||||
parent.getId('_modal_body_modal_window').style.margin = '0';
|
||||
|
||||
parent.getId('_modal_footer_modal_window').innerHTML = getId('_modal_footer').innerHTML;
|
||||
parent.getId('_modal_footer_modal_window').className = 'modal-footer';
|
||||
}
|
||||
document.body.onresize = document.body.onload = function()
|
||||
{
|
||||
setTimeout("modalSetting();",100);
|
||||
setTimeout("modalSetting();",200);
|
||||
}
|
||||
</script>
|
||||
|
||||
|
||||
<style>
|
||||
#rb-body {
|
||||
background: #ffffff;
|
||||
}
|
||||
.xrow {
|
||||
padding:0 10px 0 10px;
|
||||
margin: 0;
|
||||
}
|
||||
/**
|
||||
* Nestable
|
||||
*/
|
||||
|
||||
.dd {
|
||||
position: relative;
|
||||
display: block;
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
max-width: 600px;
|
||||
list-style: none;
|
||||
line-height: 20px
|
||||
}
|
||||
|
||||
.dd-list {
|
||||
display: block;
|
||||
position: relative;
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
list-style: none
|
||||
}
|
||||
|
||||
.dd-item,
|
||||
.dd-empty,
|
||||
.dd-placeholder {
|
||||
display: block;
|
||||
position: relative;
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
min-height: 20px;
|
||||
line-height: 20px
|
||||
}
|
||||
|
||||
.dd-handle {
|
||||
display: block;
|
||||
height: 35px;
|
||||
margin: 5px 0;
|
||||
padding: 5px 10px;
|
||||
color: #333;
|
||||
text-decoration: none;
|
||||
font-weight: bold;
|
||||
border: 1px solid #ddd;
|
||||
background: #fafafa;
|
||||
background: -webkit-linear-gradient(top, #fafafa 0%, #eee 100%);
|
||||
background: -moz-linear-gradient(top, #fafafa 0%, #eee 100%);
|
||||
background: linear-gradient(top, #fafafa 0%, #eee 100%);
|
||||
-webkit-border-radius: 3px;
|
||||
border-radius: 3px;
|
||||
box-sizing: border-box; -moz-box-sizing: border-box;
|
||||
}
|
||||
|
||||
.dd-handle:hover { color: #2ea8e5; background: #fff; }
|
||||
|
||||
|
||||
.dd-placeholder,
|
||||
.dd-empty {
|
||||
margin: 5px 0;
|
||||
padding: 0;
|
||||
min-height: 30px;
|
||||
background: #f2fbff;
|
||||
border: 1px dashed #b6bcbf;
|
||||
box-sizing: border-box;
|
||||
-moz-box-sizing: border-box
|
||||
}
|
||||
|
||||
.dd-empty {
|
||||
border: 1px dashed #bbb;
|
||||
min-height: 100px;
|
||||
background-color: #e5e5e5;
|
||||
background-image: -webkit-linear-gradient(45deg, #fff 25%, transparent 25%, transparent 75%, #fff 75%, #fff),
|
||||
-webkit-linear-gradient(45deg, #fff 25%, transparent 25%, transparent 75%, #fff 75%, #fff);
|
||||
background-image: -moz-linear-gradient(45deg, #fff 25%, transparent 25%, transparent 75%, #fff 75%, #fff),
|
||||
-moz-linear-gradient(45deg, #fff 25%, transparent 25%, transparent 75%, #fff 75%, #fff);
|
||||
background-image: linear-gradient(45deg, #fff 25%, transparent 25%, transparent 75%, #fff 75%, #fff),
|
||||
linear-gradient(45deg, #fff 25%, transparent 25%, transparent 75%, #fff 75%, #fff);
|
||||
background-size: 60px 60px;
|
||||
background-position: 0 0, 30px 30px;
|
||||
}
|
||||
|
||||
.dd-dragel {
|
||||
position: absolute;
|
||||
pointer-events: none;
|
||||
z-index: 9999
|
||||
}
|
||||
|
||||
.dd-dragel > .dd-item .dd-handle { margin-top: 0 }
|
||||
|
||||
.dd-dragel .dd-handle {
|
||||
-webkit-box-shadow: 2px 4px 6px 0 rgba(0,0,0,.1);
|
||||
box-shadow: 2px 4px 6px 0 rgba(0,0,0,.1)
|
||||
}
|
||||
|
||||
/**
|
||||
* Nestable Extras
|
||||
*/
|
||||
|
||||
|
||||
#nestable-menu { padding: 0; margin: 20px 0; }
|
||||
|
||||
#nestable-output,
|
||||
|
||||
@media only screen and (min-width: 700px) {
|
||||
|
||||
.dd { float: left; width: 100%; }
|
||||
.dd + .dd { margin-left: 2%; }
|
||||
|
||||
}
|
||||
|
||||
.dd-hover > .dd-handle { background: #2ea8e5 !important; }
|
||||
|
||||
/**
|
||||
* Nestable Draggable Handles
|
||||
*/
|
||||
|
||||
.dd3-content {
|
||||
display: block;
|
||||
height: 35px;
|
||||
margin: 5px 0;
|
||||
line-height: 20px;
|
||||
padding: 6px 10px 4px 40px;
|
||||
color: #333;
|
||||
border: 1px solid #ddd;
|
||||
background: #eee;
|
||||
-webkit-border-radius: 3px;
|
||||
border-radius: 3px;
|
||||
box-sizing: border-box; -moz-box-sizing: border-box;
|
||||
}
|
||||
|
||||
.dd3-content a {
|
||||
color: #666
|
||||
}
|
||||
|
||||
.dd3-content:hover {
|
||||
color: #2ea8e5;
|
||||
background: #f5f5f5
|
||||
}
|
||||
|
||||
.dd-dragel > .dd3-item > .dd3-content { margin: 0; }
|
||||
|
||||
.dd3-item > button { margin-left: 30px; }
|
||||
|
||||
.dd3-handle {
|
||||
position: absolute;
|
||||
margin: 0;
|
||||
left: 0;
|
||||
top: 0;
|
||||
cursor: pointer;
|
||||
width: 30px;
|
||||
text-indent: 100%;
|
||||
white-space: nowrap;
|
||||
overflow: hidden;
|
||||
border: 1px solid #ddd;
|
||||
background: #ddd;
|
||||
|
||||
border-top-right-radius: 0;
|
||||
border-bottom-right-radius: 0;
|
||||
cursor: move
|
||||
}
|
||||
|
||||
.dd-checkbox {
|
||||
line-height: 28px;
|
||||
position: absolute;
|
||||
margin: 0;
|
||||
right: 0;
|
||||
top: 0;
|
||||
width: 30px;
|
||||
padding: 5px 20px 10px 5px;
|
||||
|
||||
}
|
||||
|
||||
.dd3-handle:before {
|
||||
font-family: 'FontAwesome';
|
||||
content: '\f047';
|
||||
display: block;
|
||||
position: absolute;
|
||||
left: 5px;
|
||||
top: 6px;
|
||||
text-align: center;
|
||||
text-indent: 0;
|
||||
color: #888;
|
||||
font-size: 18px;
|
||||
font-weight: normal
|
||||
}
|
||||
|
||||
.dd3-handle:hover {
|
||||
background: #ddd
|
||||
}
|
||||
|
||||
.panel-footer ul.list-inline {
|
||||
margin-bottom: 0
|
||||
}
|
||||
|
||||
|
||||
#bookmark .rb-none {
|
||||
line-height: 300px;
|
||||
text-align: center;
|
||||
color: #999
|
||||
}
|
||||
|
||||
</style>
|
||||
|
||||
0
modules/dashboard/admin/var/var.menu.php
Normal file
0
modules/dashboard/admin/var/var.menu.php
Normal file
Reference in New Issue
Block a user