first
This commit is contained in:
17
modules/market/admin/_guide.php
Normal file
17
modules/market/admin/_guide.php
Normal file
@@ -0,0 +1,17 @@
|
||||
<div class="p-4">
|
||||
<div class="text-center text-muted d-flex align-items-center justify-content-center" style="height: calc(100vh - 10rem);">
|
||||
<div><i class="fa fa-exclamation-circle fa-3x mb-3" aria-hidden="true"></i>
|
||||
<p>마켓설정이 필요합니다.</p>
|
||||
<small>
|
||||
프로젝트 키는 프로젝트의 정식판 여부를 확인하여 마켓이용과 지원에 활용됩니다. <br>
|
||||
key가 맞지 않거나 분실시에는 kimsq.com 에 로그인 후, 나의 프로젝트 페이지에서 확인할 수 있습니다.
|
||||
</small>
|
||||
|
||||
<div class="mt-4">
|
||||
<a href="<?php echo $g['s']?>/?r=<?php echo $r?>&m=<?php echo $m?>&module=<?php echo $module?>&front=config" class="btn btn-outline-primary btn-block">
|
||||
설정하기
|
||||
</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
29
modules/market/admin/_info.php
Normal file
29
modules/market/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>
|
||||
16
modules/market/admin/_main.css
Normal file
16
modules/market/admin/_main.css
Normal file
@@ -0,0 +1,16 @@
|
||||
.svc_free {
|
||||
background-color: #ffc107;
|
||||
color: #222
|
||||
}
|
||||
.svc_standard {
|
||||
background-color: #007bff;
|
||||
color: #fff
|
||||
}
|
||||
.svc_economy{
|
||||
background-color: #28a745;
|
||||
color: #fff
|
||||
}
|
||||
.svc_premium {
|
||||
background-color: #563d7c;
|
||||
color: #fff
|
||||
}
|
||||
14
modules/market/admin/brand.php
Normal file
14
modules/market/admin/brand.php
Normal file
@@ -0,0 +1,14 @@
|
||||
<?php
|
||||
include $g['path_module'].$module.'/var/var.php';
|
||||
$g['marketvar'] = $g['path_var'].'/market.var.php';
|
||||
if (file_exists($g['marketvar'])) include_once $g['marketvar'];
|
||||
if($d['market']['url'] && $d['market']['key'] && $d['market']['userid'] ):
|
||||
include $g['path_core'].'function/rss.func.php';
|
||||
$marketData = getUrlData($d['market']['url'].'&iframe=Y&page=client.brand&_clientu='.$g['s'].'&_clientr='.$r.'&cat='.$cat.'&theme='.$theme.'&sort='.$sort.'&orderby='.$orderby.'&type='.$type.'&ptype='.$ptype.'&p='.$p.'&todayfree='.$todayfree.'&sailing='.$sailing.'&where='.$where.'&keyword='.$keyword.'&brand='.$brand.'&id='.$d['market']['userid'].'&key='.$d['market']['key'].'&version=2&host='.$_SERVER['HTTP_HOST'],10);
|
||||
$marketData = explode('[RESULT:',$marketData);
|
||||
$marketData = explode(':RESULT]',$marketData[1]);
|
||||
$marketData = $marketData[0];
|
||||
echo $marketData;
|
||||
else:?>
|
||||
<?php include $g['path_module'].$module.'/admin/_guide.php'; ?>
|
||||
<?php endif?>
|
||||
14
modules/market/admin/buyer.php
Normal file
14
modules/market/admin/buyer.php
Normal file
@@ -0,0 +1,14 @@
|
||||
<?php
|
||||
include $g['path_module'].$module.'/var/var.php';
|
||||
$g['marketvar'] = $g['path_var'].'/market.var.php';
|
||||
if (file_exists($g['marketvar'])) include_once $g['marketvar'];
|
||||
if($d['market']['url'] && $d['market']['key'] && $d['market']['userid'] ):
|
||||
include $g['path_core'].'function/rss.func.php';
|
||||
$marketData = getUrlData($d['market']['url'].'&iframe=Y&page=client.buyer&_clientu='.$g['s'].'&_clientr='.$r.'&cat='.$cat.'&theme='.$theme.'&sort='.$sort.'&orderby='.$orderby.'&type='.$type.'&ptype='.$ptype.'&p='.$p.'&todayfree='.$todayfree.'&sailing='.$sailing.'&where='.$where.'&keyword='.$keyword.'&brand='.$brand.'&id='.$d['market']['userid'].'&key='.$d['market']['key'].'&version=2&host='.$_SERVER['HTTP_HOST'],10);
|
||||
$marketData = explode('[RESULT:',$marketData);
|
||||
$marketData = explode(':RESULT]',$marketData[1]);
|
||||
$marketData = $marketData[0];
|
||||
echo $marketData;
|
||||
else:?>
|
||||
<?php include $g['path_module'].$module.'/admin/_guide.php'; ?>
|
||||
<?php endif?>
|
||||
61
modules/market/admin/config.php
Normal file
61
modules/market/admin/config.php
Normal file
@@ -0,0 +1,61 @@
|
||||
<?php
|
||||
include $g['path_module'].$module.'/var/var.php';
|
||||
$g['marketvar'] = $g['path_var'].'/market.var.php';
|
||||
if (file_exists($g['marketvar'])) include_once $g['marketvar'];
|
||||
?>
|
||||
|
||||
<div id="configbox" class="p-4">
|
||||
|
||||
<form name="procForm" action="<?php echo $g['s']?>/" method="post" target="_action_frame_<?php echo $m ?>" onsubmit="return saveCheck(this);" class="form-horizontal" autocomplete="off">
|
||||
<input type="hidden" name="r" value="<?php echo $r ?>">
|
||||
<input type="hidden" name="m" value="<?php echo $module ?>">
|
||||
<input type="hidden" name="a" value="config">
|
||||
|
||||
<h4>큐마켓 연결설정</h4>
|
||||
|
||||
<div class="form-group row">
|
||||
<label class="col-lg-2 col-form-label pt-3">킴스큐 회원 아이디 또는 이메일</label>
|
||||
<div class="col-lg-10 col-xl-8">
|
||||
<input class="form-control form-control-lg" type="text" name="userid" value="<?php echo $d['market']['userid']?$d['market']['userid']:'' ?>" required>
|
||||
<small class="form-text text-muted">
|
||||
<a href="https://kimsq.com" target="_blank">킴스큐 포탈</a> 회원 아이디 또는 이메일
|
||||
</small>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="form-group row">
|
||||
<label class="col-lg-2 col-form-label pt-3">프로젝트 키</label>
|
||||
<div class="col-lg-10 col-xl-8">
|
||||
<input class="form-control form-control-lg" type="text" name="key" value="<?php echo $d['market']['key']?$d['market']['key']:'' ?>" required>
|
||||
<small class="form-text text-muted">
|
||||
<a href="https://kimsq.com/project/my" target="_blank">내 프로젝트</a>에 접속하여 키를 확인할 수 있습니다.
|
||||
</small>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="form-group form-row">
|
||||
<div class="offset-sm-2 col-sm-10">
|
||||
<button type="submit" class="btn btn-primary btn-lg<?php if($g['device']):?> btn-block<?php endif?>">저장하기</button>
|
||||
|
||||
<div class="mt-4">
|
||||
<small class="text-muted">
|
||||
프로젝트 키는 프로젝트의 정식판 여부를 확인하여 마켓이용과 지원에 활용됩니다.
|
||||
<a href="https://kimsq.com/docs/c/start/market" class="btn btn-light btn-sm" target="_blank">도움말</a>
|
||||
</small>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
|
||||
</div>
|
||||
|
||||
<script>
|
||||
|
||||
putCookieAlert('market_action_result') // 실행결과 알림 메시지 출력
|
||||
|
||||
function saveCheck(f) {
|
||||
getIframeForAction(f);
|
||||
return true;
|
||||
}
|
||||
</script>
|
||||
14
modules/market/admin/extension.php
Normal file
14
modules/market/admin/extension.php
Normal file
@@ -0,0 +1,14 @@
|
||||
<?php
|
||||
include $g['path_module'].$module.'/var/var.php';
|
||||
$g['marketvar'] = $g['path_var'].'/market.var.php';
|
||||
if (file_exists($g['marketvar'])) include_once $g['marketvar'];
|
||||
if($d['market']['url'] && $d['market']['key'] && $d['market']['userid'] ):
|
||||
include $g['path_core'].'function/rss.func.php';
|
||||
$marketData = getUrlData($d['market']['url'].'&iframe=Y&page=client.front&package=0&_clientu='.$g['s'].($goods?'&goods='.$goods:'').'&_clientr='.$r.'&cat='.$cat.'&theme='.$theme.'&sort='.$sort.'&orderby='.$orderby.'&type='.$type.'&ptype='.$ptype.'&p='.$p.'&todayfree='.$todayfree.'&sailing='.$sailing.'&where='.$where.'&keyword='.$keyword.'&brand='.$brand.'&id='.$d['market']['userid'].'&key='.$d['market']['key'].'&version=2&host='.$_SERVER['HTTP_HOST'],10);
|
||||
$marketData = explode('[RESULT:',$marketData);
|
||||
$marketData = explode(':RESULT]',$marketData[1]);
|
||||
$marketData = $marketData[0];
|
||||
echo $marketData;
|
||||
else:?>
|
||||
<?php include $g['path_module'].$module.'/admin/_guide.php'; ?>
|
||||
<?php endif?>
|
||||
14
modules/market/admin/main.php
Normal file
14
modules/market/admin/main.php
Normal file
@@ -0,0 +1,14 @@
|
||||
<?php
|
||||
include $g['path_module'].$module.'/var/var.php';
|
||||
$g['marketvar'] = $g['path_var'].'/market.var.php';
|
||||
if (file_exists($g['marketvar'])) include_once $g['marketvar'];
|
||||
if($d['market']['url'] && $d['market']['key'] && $d['market']['userid'] ):
|
||||
include $g['path_core'].'function/rss.func.php';
|
||||
$marketData = getUrlData($d['market']['url'].'&iframe=Y&page=client.front&package=1&_clientu='.$g['s'].($goods?'&goods='.$goods:'').'&_clientr='.$r.'&cat='.$cat.'&theme='.$theme.'&sort='.$sort.'&orderby='.$orderby.'&type='.$type.'&ptype='.$ptype.'&p='.$p.'&todayfree='.$todayfree.'&sailing='.$sailing.'&where='.$where.'&keyword='.$keyword.'&brand='.$brand.'&id='.$d['market']['userid'].'&key='.$d['market']['key'].'&version=2&host='.$_SERVER['HTTP_HOST'],10);
|
||||
$marketData = explode('[RESULT:',$marketData);
|
||||
$marketData = explode(':RESULT]',$marketData[1]);
|
||||
$marketData = $marketData[0];
|
||||
echo $marketData;
|
||||
else:?>
|
||||
<?php include $g['path_module'].$module.'/admin/_guide.php'; ?>
|
||||
<?php endif?>
|
||||
128
modules/market/admin/modal.add.php
Normal file
128
modules/market/admin/modal.add.php
Normal file
@@ -0,0 +1,128 @@
|
||||
<?php
|
||||
$addExtensionSet = array
|
||||
(
|
||||
'module' => array('모듈',$g['path_module'],'rb_module_모듈폴더명.zip'),
|
||||
'layout' => array('레이아웃',$g['path_layout'],'rb_layout_레이아웃폴더명.zip'),
|
||||
'widget' => array('위젯',$g['path_widget'],'rb_widget_위젯분류폴더명_위젯폴더명.zip'),
|
||||
'switch' => array('스위치',$g['path_switch'],'rb_switch_스위치종류_스위치폴더명.zip'),
|
||||
'plugin' => array('플러그인',$g['path_plugin'],'rb_plugin_플러그인폴더명_버전.zip'),
|
||||
'dashboard' => array('대시보드',$g['path_module'].'dashboard/widgets','rb_dashboard_대시보드폴더명.zip'),
|
||||
'etc' => array('기타자료','/root/','rb_etc_자료명.zip'),
|
||||
);
|
||||
?>
|
||||
|
||||
<form name="_upload_form_" action="<?php echo $g['s']?>/" method="post" enctype="multipart/form-data">
|
||||
<input type="hidden" name="r" value="<?php echo $r?>">
|
||||
<input type="hidden" name="m" value="<?php echo $module?>">
|
||||
<input type="hidden" name="a" value="add_<?php echo $addType?>">
|
||||
<input type="hidden" name="reload" value="<?php echo $reload?>">
|
||||
|
||||
<div class="modal-body bg-white">
|
||||
|
||||
<div class="py-5">
|
||||
<div id="uplocation" class="mb-3">
|
||||
<code>업로드 위치 : <?php echo str_replace('./','/root/',$addExtensionSet[$addType][1])?></code>
|
||||
</div>
|
||||
<input type="file" name="upfile" id="packageupfile" class="hidden" onchange="progressbar();">
|
||||
<button type="button" class="btn btn-secondary btn-block" id="fileselectbtn" onclick="$('#packageupfile').click();">파일선택</button>
|
||||
</div>
|
||||
|
||||
|
||||
<hr>
|
||||
|
||||
|
||||
<div class="progress progress-striped active hidden" id="progress-bar">
|
||||
<div class="progress-bar" role="progressbar" aria-valuemax="100"></div>
|
||||
</div>
|
||||
|
||||
<ul class="list-unstyled mt-4 text-secondary">
|
||||
<li><?php echo sprintf('킴스큐에서 제공하는 공식 %s만 업로드할 수 있습니다.',$addExtensionSet[$addType][0])?></li>
|
||||
<li><?php echo sprintf('파일형식은 <code>%s</strong></code> 이어야 합니다.',$addExtensionSet[$addType][2])?></li>
|
||||
<li><?php echo 'FTP로 직접 추가하시려면 매뉴얼에 따라 추가해 주세요.'?></li>
|
||||
<li><?php echo sprintf('이미 같은명칭의 %s 폴더가 존재할 경우 덧씌워지니 주의하세요.',$addExtensionSet[$addType][0])?></li>
|
||||
</ul>
|
||||
</div>
|
||||
</form>
|
||||
|
||||
|
||||
|
||||
|
||||
<!-- @부모레이어를 제어할 수 있도록 모달의 헤더와 풋터를 부모레이어에 출력시킴 -->
|
||||
|
||||
<div id="_modal_header" hidden>
|
||||
<h5 class="modal-title" id="myModalLabel">
|
||||
<i class="fa fa-upload fa-lg"></i> <?php echo sprintf('%s 추가',$addExtensionSet[$addType][0])?>
|
||||
</h5>
|
||||
<button type="button" class="close" data-dismiss="modal" aria-label="Close">
|
||||
<span aria-hidden="true">×</span>
|
||||
</button>
|
||||
</div>
|
||||
<div id="_modal_footer" hidden>
|
||||
<button class="btn btn-light pull-left" data-dismiss="modal" type="button">취소</button>
|
||||
<button class="btn btn-primary" type="button" onclick="frames._modal_iframe_modal_window.getFiles();" id="afterChooseFileNext" disabled>추가하기</button>
|
||||
</div>
|
||||
|
||||
|
||||
<script>
|
||||
var _per = 0;
|
||||
function progressbar()
|
||||
{
|
||||
if(_per == 0)
|
||||
{
|
||||
$('#progress-bar').removeClass('hidden');
|
||||
$('#uplocation').addClass('hidden');
|
||||
}
|
||||
|
||||
if (_per < 100)
|
||||
{
|
||||
_per = _per + 10;
|
||||
getId('progress-bar').children[0].style.width = (_per>100?100:_per)+ '%';
|
||||
setTimeout("progressbar();",100);
|
||||
}
|
||||
else {
|
||||
parent.getId('afterChooseFileNext').disabled = false;
|
||||
_per = 0;
|
||||
}
|
||||
}
|
||||
function getFiles()
|
||||
{
|
||||
var f = document._upload_form_;
|
||||
if (f.upfile.value == '')
|
||||
{
|
||||
alert('파일이 선택되지 않았습니다. ');
|
||||
return false;
|
||||
}
|
||||
getIframeForAction(f);
|
||||
f.submit();
|
||||
parent.getId('afterChooseFileNext').innerHTML = '<i class="fa fa-spinner fa-lg fa-spin fa-fw"></i> Uploading ...';
|
||||
parent.getId('afterChooseFileNext').disabled = true;
|
||||
}
|
||||
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 = '800px';
|
||||
parent.getId('_modal_iframe_modal_window').style.height = '330px'
|
||||
parent.getId('_modal_body_modal_window').style.height = '330px';
|
||||
|
||||
parent.getId('_modal_header_modal_window').innerHTML = getId('_modal_header').innerHTML;
|
||||
parent.getId('_modal_header_modal_window').className = 'modal-header';
|
||||
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>
|
||||
body {
|
||||
background: #fff;
|
||||
}
|
||||
</style>
|
||||
426
modules/market/admin/modal.package.php
Normal file
426
modules/market/admin/modal.package.php
Normal file
@@ -0,0 +1,426 @@
|
||||
<?php $package_step = $package_step ? $package_step : 1?>
|
||||
<div id="modal-package-install">
|
||||
<div class="modal-body bg-white">
|
||||
|
||||
<div class="p-3">
|
||||
<ul class="list-inline mb-0">
|
||||
<li class="list-inline-item<?php if($package_step==1):?> active<?php endif?>"><span class="badge badge-secondary">Step 1</span> <span><?php echo '패키지 업로드'?></span></li>
|
||||
<li class="list-inline-item<?php if($package_step==2):?> active<?php endif?>"><span class="badge badge-secondary">Step 2</span> <span><?php echo '설치하기'?></span></li>
|
||||
<li class="list-inline-item<?php if($package_step==3):?> active<?php endif?>"><span class="badge badge-secondary">Step 3</span> <span><?php echo '완료'?></span></li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<div class="tab-content">
|
||||
<?php if($package_step==1):?>
|
||||
<div id="tab1">
|
||||
<form name="_upload_form_" action="<?php echo $g['s']?>/" method="post" enctype="multipart/form-data">
|
||||
<input type="hidden" name="r" value="<?php echo $r?>">
|
||||
<input type="hidden" name="m" value="<?php echo $module?>">
|
||||
<input type="hidden" name="a" value="add_package">
|
||||
<input type="hidden" name="package_step" value="<?php echo $package_step?>">
|
||||
|
||||
<div class="row">
|
||||
<div class="col-sm-4 text-center rb-icon">
|
||||
<i class="fa fa-upload fa-3x"></i>
|
||||
<h4 class="text-center text-muted">
|
||||
패키지 파일을<br>업로드 해주세요.
|
||||
</h4>
|
||||
</div>
|
||||
<div class="col-sm-8">
|
||||
|
||||
<div class="mt-4">
|
||||
<input type="file" name="upfile" id="packageupfile" class="hidden" onchange="progressbar();">
|
||||
<button type="button" class="btn btn-outline-secondary btn-block" id="fileselectbtn" onclick="$('#packageupfile').click();">파일선택</button>
|
||||
</div>
|
||||
<div class="mt-4">
|
||||
<div class="progress progress-striped d-none" id="progress-bar">
|
||||
<div class="progress-bar" role="progressbar" aria-valuemax="100"></div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<ul class="mt-4">
|
||||
<li>킴스큐에서 제공하는 공식 패키지만 업로드할 수 있습니다.</li>
|
||||
<li>파일형식은 <code>rb_package_패키지명.zip</code> 이어야 합니다.</li>
|
||||
<li>패키지 설치시 이미 같은명칭의 폴더나 파일이 존재할 경우 덧씌워지니 주의하세요.</li>
|
||||
</ul>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
<?php endif?>
|
||||
|
||||
<?php if($package_step==2):?>
|
||||
<?php include $g['path_tmp'].'app/'.$package_folder.'/_settings/var.php' ?>
|
||||
<div id="tab2">
|
||||
<div class="row">
|
||||
<div class="col-sm-4 text-center rb-icon">
|
||||
<i class="fa fa-cube fa-3x"></i>
|
||||
<h4 class="text-center text-muted">
|
||||
패키지를 적용할 준비가<br>완료 되었습니다.
|
||||
</h4>
|
||||
</div>
|
||||
<div class="col-sm-8">
|
||||
<form name="_upload_form_" action="<?php echo $g['s']?>/" method="post" role="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="add_package">
|
||||
<input type="hidden" name="package_step" value="<?php echo $package_step?>">
|
||||
<input type="hidden" name="package_folder" value="<?php echo $package_folder?>">
|
||||
|
||||
<div class="well">
|
||||
<div class="form-group row">
|
||||
<label for="" class="col-sm-3 col-form-label">패키지명</label>
|
||||
<div class="col-sm-9">
|
||||
<?php echo $d['package']['name']?>
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group row">
|
||||
<label for="" class="col-sm-3 col-form-label">적용사이트</label>
|
||||
<div class="col-sm-8">
|
||||
<select name="siteuid" class="form-control">
|
||||
<option value="">신규생성 후 적용</option>
|
||||
<option value="">-------------------------------</option>
|
||||
<?php $_SITES_ALL = getDbArray($table['s_site'],'','*','gid','asc',0,1)?>
|
||||
<?php while($_R = db_fetch_array($_SITES_ALL)):?>
|
||||
<option value="<?php echo $_R['uid']?>"><?php echo $_R['name']?></option>
|
||||
<?php endwhile?>
|
||||
</select>
|
||||
<small class="form-text text-danger mt-3">
|
||||
운영중인 사이트에는 적용하지 마십시오.
|
||||
</small>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="card">
|
||||
<div class="card-header">
|
||||
<a class="collapsed" data-toggle="collapse" href="#package-options" onclick="detailCheck();"><i class="fa fa-cog"></i> 설치옵션 및 세부내용<span class="pull-right"></span></a>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="card-body collapse" id="package-options">
|
||||
<div class="form-group row">
|
||||
<label class="col-sm-3 col-form-label">설치옵션</label>
|
||||
<div class="col-sm-9">
|
||||
<?php foreach($d['package']['execute'] as $_key => $_val):?>
|
||||
<div class="checkbox">
|
||||
<label>
|
||||
<input type="checkbox" name="ACT_<?php echo $_val[0]?>" value="1"<?php if($_val[2]):?> checked<?php endif?>>
|
||||
<?php echo $_val[1]?>
|
||||
</label>
|
||||
</div>
|
||||
<?php endforeach?>
|
||||
</div>
|
||||
</div>
|
||||
<?php if(is_file($g['path_tmp'].'app/'.$package_folder.'/_settings/readme.txt')):?>
|
||||
<div class="form-group row">
|
||||
<label class="col-sm-3 col-form-label">설치내용</label>
|
||||
<div class="col-sm-9">
|
||||
<?php readfile($g['path_tmp'].'app/'.$package_folder.'/_settings/readme.txt')?>
|
||||
</div>
|
||||
</div>
|
||||
<?php endif?>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<?php endif?>
|
||||
|
||||
<?php if($package_step==3):?>
|
||||
<div id="tab3">
|
||||
<div class="row">
|
||||
<div class="col-sm-4 text-center rb-icon">
|
||||
<i class="fa fa-home fa-3x"></i>
|
||||
<h4 class="text-center text-muted">
|
||||
설치가 완료 되었습니다.
|
||||
</h4>
|
||||
</div>
|
||||
<div class="col-sm-8">
|
||||
<div class="text-center">
|
||||
<br><br>
|
||||
<a href="<?php echo $g['s']?>/?r=<?php echo $siteid?>&panel=Y" class="btn btn-primary btn-lg" target="_top">
|
||||
<i class="fa fa-share"></i> 사이트 접속하기
|
||||
</a>
|
||||
<br><br>
|
||||
<hr><?php echo sprintf('%s 패키지가<br><strong>%s</strong>에 설치 완료 되었습니다.',urldecode($package_name),urldecode($site_name))?>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<?php endif?>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
<!-- @부모레이어를 제어할 수 있도록 모달의 헤더와 풋터를 부모레이어에 출력시킴 -->
|
||||
|
||||
<div id="_modal_header" hidden>
|
||||
<h5 class="modal-title"><i class="fa fa-plus-circle fa-lg"></i> Rb 패키지 설치</h5>
|
||||
<button type="button" class="close" onclick="frames._modal_iframe_modal_window.mClose();">
|
||||
<span aria-hidden="true">×</span>
|
||||
</button>
|
||||
</div>
|
||||
<div id="_modal_footer" hidden>
|
||||
<?php if($package_step==3):?>
|
||||
<button type="button" class="btn btn-light pull-left" disabled>취소</button>
|
||||
<button type="button" class="btn btn-primary" disabled>완료</button>
|
||||
<?php else:?>
|
||||
<button type="button" class="btn btn-light pull-left" onclick="frames._modal_iframe_modal_window.mClose();">취소</button>
|
||||
<?php if($package_step==2):?>
|
||||
<button type="button" class="btn btn-primary" onclick="frames._modal_iframe_modal_window.install();" id="afterChooseFileNext">다음</button>
|
||||
<?php endif?>
|
||||
<?php if($package_step==1):?>
|
||||
<button type="button" class="btn btn-primary" onclick="frames._modal_iframe_modal_window.getFiles();" id="afterChooseFileNext" disabled>다음</button>
|
||||
<?php endif?>
|
||||
<?php endif?>
|
||||
</div>
|
||||
|
||||
|
||||
<script>
|
||||
var _per = 0;
|
||||
function progressbar()
|
||||
{
|
||||
if(_per == 0) $('#progress-bar').removeClass('d-none');
|
||||
|
||||
if (_per < 100)
|
||||
{
|
||||
_per = _per + 10;
|
||||
getId('progress-bar').children[0].style.width = (_per>100?100:_per)+ '%';
|
||||
setTimeout("progressbar();",100);
|
||||
}
|
||||
else {
|
||||
parent.getId('afterChooseFileNext').disabled = false;
|
||||
}
|
||||
}
|
||||
function detailCheck()
|
||||
{
|
||||
/*
|
||||
var h = document.body.scrollHeight;
|
||||
|
||||
parent.getId('_modal_iframe_modal_window').style.height = (h+400)+'px'
|
||||
parent.getId('_modal_body_modal_window').style.height = (h+400)+'px';
|
||||
*/
|
||||
}
|
||||
function nextStep()
|
||||
{
|
||||
location.href = '<?php echo $g['s']?>/?r=<?php echo $r?>&iframe=Y&m=admin&module=<?php echo $module?>&front=modal.package&package_type=<?php echo $package_type?>&&package_step=2';
|
||||
}
|
||||
function install()
|
||||
{
|
||||
var f = document._upload_form_;
|
||||
getIframeForAction(f);
|
||||
f.submit();
|
||||
parent.getId('afterChooseFileNext').innerHTML = '<i class="fa fa-spinner fa-lg fa-spin fa-fw"></i> Installing ...';
|
||||
parent.getId('afterChooseFileNext').disabled = true;
|
||||
}
|
||||
function getFiles()
|
||||
{
|
||||
var f = document._upload_form_;
|
||||
if (f.upfile.value == '')
|
||||
{
|
||||
alert('파일이 선택되지 않았습니다. ');
|
||||
return false;
|
||||
}
|
||||
getIframeForAction(f);
|
||||
f.submit();
|
||||
parent.getId('afterChooseFileNext').innerHTML = '<i class="fa fa-spinner fa-lg fa-spin fa-fw"></i> Uploading ...';
|
||||
parent.getId('afterChooseFileNext').disabled = true;
|
||||
}
|
||||
function mClose()
|
||||
{
|
||||
location.href = '<?php echo $g['s']?>/?r=<?php echo $r?>&m=<?php echo $module?>&a=add_package&package_step=delete';
|
||||
parent.$('#modal_window').modal('hide');
|
||||
}
|
||||
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 = '800px';
|
||||
parent.getId('_modal_iframe_modal_window').style.height = '400px'
|
||||
parent.getId('_modal_body_modal_window').style.height = '400px';
|
||||
|
||||
parent.getId('_modal_header_modal_window').innerHTML = getId('_modal_header').innerHTML;
|
||||
parent.getId('_modal_header_modal_window').className = 'modal-header';
|
||||
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>
|
||||
#modal-package-install .modal-body {
|
||||
min-height: 400px;
|
||||
max-height: calc(100vh - 175px);
|
||||
overflow-y: auto;
|
||||
padding: 15px
|
||||
}
|
||||
|
||||
#modal-package-install .tab-content {
|
||||
padding: 20px 0
|
||||
}
|
||||
|
||||
|
||||
/* breadcrumb */
|
||||
|
||||
#modal-package-install .breadcrumb {
|
||||
margin: -15px -15px 15px;
|
||||
border-radius: 0;
|
||||
padding: 10px 15px;
|
||||
}
|
||||
|
||||
#modal-package-install .breadcrumb a {
|
||||
color: #999;
|
||||
}
|
||||
|
||||
#modal-package-install .breadcrumb a:hover {
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
#modal-package-install .breadcrumb .active a {
|
||||
color: #428bca;
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
#modal-package-install .breadcrumb .badge {
|
||||
background-color: #999;
|
||||
}
|
||||
|
||||
#modal-package-install .breadcrumb .active .badge {
|
||||
background-color: #428bca;
|
||||
}
|
||||
|
||||
#modal-package-install h4 {
|
||||
line-height: 1.5
|
||||
}
|
||||
|
||||
#modal-package-install .page-header {
|
||||
margin-top: 20px;
|
||||
}
|
||||
|
||||
#modal-package-install .list-group {
|
||||
margin-bottom: 10px;
|
||||
}
|
||||
|
||||
#modal-package-install .rb-icon {
|
||||
font-size: 70px;
|
||||
color: #444
|
||||
}
|
||||
|
||||
#modal-package-install .label {
|
||||
display: inline;
|
||||
padding: .2em .6em .3em;
|
||||
font-size: 75%;
|
||||
font-weight: 700;
|
||||
line-height: 1;
|
||||
color: #fff;
|
||||
text-align: center;
|
||||
white-space: nowrap;
|
||||
vertical-align: baseline;
|
||||
border-radius: .25em;
|
||||
}
|
||||
|
||||
#modal-package-install .pager {
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
|
||||
/* tab2 */
|
||||
|
||||
|
||||
#tab2 .panel-heading a {
|
||||
display: inline-block;
|
||||
font-family: FontAwesome;
|
||||
font-style: normal;
|
||||
font-weight: normal;
|
||||
line-height: 1;
|
||||
-webkit-font-smoothing: antialiased;
|
||||
}
|
||||
|
||||
#tab2 .panel-heading a {
|
||||
color: #666;
|
||||
display: block;
|
||||
}
|
||||
|
||||
#tab2 .panel-heading a:hover {
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
#tab2 .panel-heading span:before {
|
||||
content: " \f078";
|
||||
}
|
||||
|
||||
#tab2 .panel-heading .collapsed span:before {
|
||||
content: " \f054";
|
||||
}
|
||||
|
||||
|
||||
/* responsive */
|
||||
|
||||
@media (min-width: 992px) {
|
||||
.modal-lg {
|
||||
width: 780px;
|
||||
}
|
||||
}
|
||||
|
||||
@media (max-width: 768px) {
|
||||
#modal-package-install .breadcrumb .badge {
|
||||
padding: 5px 15px
|
||||
}
|
||||
#modal-package-install .breadcrumb .badge {
|
||||
font-size: 18px
|
||||
}
|
||||
#modal-package-install .rb-icon {
|
||||
font-size: 40px
|
||||
}
|
||||
#modal-package-install .tab-content {
|
||||
padding: 0
|
||||
}
|
||||
#tab1 .btn {
|
||||
display: block;
|
||||
width: 100%
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/* 김성호 */
|
||||
|
||||
#modal-package-install ul {
|
||||
color: #666;
|
||||
}
|
||||
|
||||
#modal-package-install ul .active {
|
||||
font-weight: bold;
|
||||
color: #428BCA;
|
||||
}
|
||||
|
||||
#modal-package-install ul .active .badge {
|
||||
background: #428BCA;
|
||||
}
|
||||
|
||||
|
||||
#modal-package-install .modal-body {
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
#modal-package-install .tab-content {
|
||||
clear: both;
|
||||
padding: 40px 20px 0 20px;
|
||||
}
|
||||
|
||||
#rb-body .tab-content {
|
||||
border: 0;
|
||||
}
|
||||
</style>
|
||||
419
modules/market/admin/modal.package.project.php
Normal file
419
modules/market/admin/modal.package.project.php
Normal file
@@ -0,0 +1,419 @@
|
||||
<?php $package_step = $package_step ? $package_step : 1?>
|
||||
|
||||
<div id="modal-package-install">
|
||||
<div class="modal-body bg-white">
|
||||
|
||||
<div class="p-3">
|
||||
<ul class="list-inline mb-0">
|
||||
<li class="list-inline-item<?php if($package_step==1):?> active<?php endif?>"><span class="badge badge-secondary">Step 1</span> <span><?php echo '패키지 안내'?></span></li>
|
||||
<li class="list-inline-item<?php if($package_step==2):?> active<?php endif?>"><span class="badge badge-secondary">Step 2</span> <span><?php echo '설치하기'?></span></li>
|
||||
<li class="list-inline-item<?php if($package_step==3):?> active<?php endif?>"><span class="badge badge-secondary">Step 3</span> <span><?php echo '완료'?></span></li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<div class="tab-content">
|
||||
<?php if($package_step==1):?>
|
||||
<div id="tab1">
|
||||
<form name="_download_form_" action="<?php echo $g['s']?>/" method="post" enctype="multipart/form-data">
|
||||
<input type="hidden" name="r" value="<?php echo $r?>">
|
||||
<input type="hidden" name="m" value="<?php echo $module?>">
|
||||
<input type="hidden" name="a" value="download_package">
|
||||
<input type="hidden" name="package_step" value="<?php echo $package_step?>">
|
||||
|
||||
<?php
|
||||
include $g['path_module'].$module.'/var/var.php';
|
||||
include $g['path_core'].'function/rss.func.php';
|
||||
$packageData = getUrlData($d['market']['url'].'&iframe=Y&page=client.project.package&pid='.$pid,10);
|
||||
$packageData = explode('[RESULT:',$packageData);
|
||||
$packageData = explode(':RESULT]',$packageData[1]);
|
||||
$packageData = $packageData[0];
|
||||
echo $packageData;
|
||||
?>
|
||||
</form>
|
||||
</div>
|
||||
<?php endif?>
|
||||
|
||||
<?php if($package_step==2):?>
|
||||
<?php include $g['path_tmp'].'app/'.$package_folder.'/_settings/var.php' ?>
|
||||
<div id="tab2">
|
||||
<div class="row">
|
||||
<div class="col-sm-4 text-center rb-icon">
|
||||
<i class="fa fa-cube fa-3x"></i>
|
||||
<h4 class="text-center text-muted">
|
||||
패키지를 적용할 준비가<br>완료 되었습니다.
|
||||
</h4>
|
||||
</div>
|
||||
<div class="col-sm-8">
|
||||
<form name="_upload_form_" action="<?php echo $g['s']?>/" method="post" role="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="add_package">
|
||||
<input type="hidden" name="package_step" value="<?php echo $package_step?>">
|
||||
<input type="hidden" name="package_folder" value="<?php echo $package_folder?>">
|
||||
|
||||
<div class="well">
|
||||
<div class="form-group form-row">
|
||||
<label for="" class="col-sm-3 control-label">패키지명</label>
|
||||
<div class="col-sm-9">
|
||||
<p class="form-control-static">
|
||||
<?php echo $d['package']['name']?>
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group form-row">
|
||||
<label for="" class="col-sm-3 control-label">적용사이트</label>
|
||||
<div class="col-sm-8">
|
||||
<select name="siteuid" class="form-control">
|
||||
<option value="">신규생성 후 적용</option>
|
||||
<option value="">-------------------------------</option>
|
||||
<?php $_SITES_ALL = getDbArray($table['s_site'],'','*','gid','asc',0,1)?>
|
||||
<?php while($_R = db_fetch_array($_SITES_ALL)):?>
|
||||
<option value="<?php echo $_R['uid']?>"><?php echo $_R['name']?></option>
|
||||
<?php endwhile?>
|
||||
</select>
|
||||
<span class="help-block">운영중인 사이트에는 적용하지 마십시오.</span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="card">
|
||||
<div class="card-header">
|
||||
<a class="collapsed" data-toggle="collapse" href="#package-options" onclick="detailCheck();"><i class="fa fa-cog"></i> 설치옵션 및 세부내용<span class="pull-right"></span></a>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="card-body collapse" id="package-options">
|
||||
<div class="form-group form-row">
|
||||
<label class="col-sm-3 control-label">설치옵션</label>
|
||||
<div class="col-sm-9">
|
||||
<?php foreach($d['package']['execute'] as $_key => $_val):?>
|
||||
<div class="checkbox">
|
||||
<label>
|
||||
<input type="checkbox" name="ACT_<?php echo $_val[0]?>" value="1"<?php if($_val[2]):?> checked<?php endif?>>
|
||||
<?php echo $_val[1]?>
|
||||
</label>
|
||||
</div>
|
||||
<?php endforeach?>
|
||||
</div>
|
||||
</div>
|
||||
<?php if(is_file($g['path_tmp'].'app/'.$package_folder.'/_settings/readme.txt')):?>
|
||||
<div class="form-group form-row">
|
||||
<label class="col-sm-3 control-label">설치내용</label>
|
||||
<div class="col-sm-9">
|
||||
<?php readfile($g['path_tmp'].'app/'.$package_folder.'/_settings/readme.txt')?>
|
||||
</div>
|
||||
</div>
|
||||
<?php endif?>
|
||||
</div>
|
||||
|
||||
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<?php endif?>
|
||||
|
||||
<?php if($package_step==3):?>
|
||||
<div id="tab3">
|
||||
<div class="row">
|
||||
<div class="col-sm-4 text-center rb-icon">
|
||||
<i class="fa fa-home fa-3x"></i>
|
||||
<h4 class="text-center text-muted">
|
||||
설치가 완료 되었습니다.
|
||||
</h4>
|
||||
</div>
|
||||
<div class="col-sm-8">
|
||||
<div class="text-center">
|
||||
<br><br>
|
||||
<a href="<?php echo $g['s']?>/?r=<?php echo $siteid?>&panel=Y" class="btn btn-primary btn-lg" target="_top">
|
||||
<i class="fa fa-share"></i> 사이트 접속하기
|
||||
</a>
|
||||
<br><br>
|
||||
<hr><?php echo sprintf('%s 패키지가<br><strong>%s</strong>에 설치 완료 되었습니다.',urldecode($package_name),urldecode($site_name))?>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<?php endif?>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
<!-- @부모레이어를 제어할 수 있도록 모달의 헤더와 풋터를 부모레이어에 출력시킴 -->
|
||||
|
||||
<div id="_modal_header" hidden>
|
||||
<h5 class="modal-title"><i class="fa fa-plus-circle fa-lg"></i> Rb 패키지 설치 </h5>
|
||||
<button type="button" class="close" onclick="frames._modal_iframe_modal_window.mClose();">
|
||||
<span aria-hidden="true">×</span>
|
||||
</button>
|
||||
</div>
|
||||
<div id="_modal_footer" hidden>
|
||||
<?php if($package_step==3):?>
|
||||
<button type="button" class="btn btn-light pull-left" disabled>취소</button>
|
||||
<button type="button" class="btn btn-primary" disabled>완료</button>
|
||||
<?php else:?>
|
||||
<button type="button" class="btn btn-light pull-left" onclick="frames._modal_iframe_modal_window.mClose();">취소</button>
|
||||
<?php if($package_step==2):?>
|
||||
<button type="button" class="btn btn-primary" onclick="frames._modal_iframe_modal_window.install();" id="afterChooseFileNext">다음</button>
|
||||
<?php endif?>
|
||||
<?php if($package_step==1):?>
|
||||
<button type="button" class="btn btn-primary" onclick="frames._modal_iframe_modal_window.getFiles();" id="afterChooseFileNext" data-pid="<?php echo $pid ?>">다음</button>
|
||||
<?php endif?>
|
||||
<?php endif?>
|
||||
</div>
|
||||
|
||||
|
||||
<script>
|
||||
var _per = 0;
|
||||
function progressbar()
|
||||
{
|
||||
if(_per == 0) $('#progress-bar').removeClass('d-none');
|
||||
|
||||
if (_per < 100)
|
||||
{
|
||||
_per = _per + 10;
|
||||
getId('progress-bar').children[0].style.width = (_per>100?100:_per)+ '%';
|
||||
setTimeout("progressbar();",100);
|
||||
}
|
||||
else {
|
||||
parent.getId('afterChooseFileNext').disabled = false;
|
||||
}
|
||||
}
|
||||
function detailCheck()
|
||||
{
|
||||
/*
|
||||
var h = document.body.scrollHeight;
|
||||
|
||||
parent.getId('_modal_iframe_modal_window').style.height = (h+400)+'px'
|
||||
parent.getId('_modal_body_modal_window').style.height = (h+400)+'px';
|
||||
*/
|
||||
}
|
||||
function nextStep()
|
||||
{
|
||||
location.href = '<?php echo $g['s']?>/?r=<?php echo $r?>&iframe=Y&m=admin&module=<?php echo $module?>&front=modal.package&package_type=<?php echo $package_type?>&&package_step=2';
|
||||
}
|
||||
function install()
|
||||
{
|
||||
var f = document._upload_form_;
|
||||
getIframeForAction(f);
|
||||
f.submit();
|
||||
parent.getId('afterChooseFileNext').innerHTML = '<i class="fa fa-spinner fa-lg fa-spin fa-fw"></i> Installing ...';
|
||||
parent.getId('afterChooseFileNext').disabled = true;
|
||||
}
|
||||
function getFiles()
|
||||
{
|
||||
var f = document._download_form_;
|
||||
|
||||
if (confirm('정말로 패키지를 다운받으시겠습니까? '))
|
||||
{
|
||||
// var version = ver.value;
|
||||
parent.document.title = '패키지 다운로드 중';
|
||||
parent.getId('afterChooseFileNext').innerHTML = '<i class="fa fa-spinner fa-lg fa-spin fa-fw"></i> 다운로드중 ...';
|
||||
parent.getId('afterChooseFileNext').disabled = true;
|
||||
// console.log(version)
|
||||
// frames.download_frame.location.href = './index.php?install=download&version=' + version + '&sitelang='+lang;
|
||||
// frames.download_frame.location.href = './index.php?install=download&version=' + version + '&sitelang='+lang;
|
||||
|
||||
// getIframeForAction('');
|
||||
// parent.frames.__iframe_for_action__.location.href = $g['s'].'/?r='.$r.'&m='.$m.'&a=download_package';
|
||||
|
||||
getIframeForAction(f);
|
||||
f.submit();
|
||||
}
|
||||
|
||||
}
|
||||
function mClose()
|
||||
{
|
||||
location.href = '<?php echo $g['s']?>/?r=<?php echo $r?>&m=<?php echo $module?>&a=add_package&package_step=delete';
|
||||
parent.$('#modal_window').modal('hide');
|
||||
}
|
||||
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 = '800px';
|
||||
parent.getId('_modal_iframe_modal_window').style.height = '400px'
|
||||
parent.getId('_modal_body_modal_window').style.height = '400px';
|
||||
|
||||
parent.getId('_modal_header_modal_window').innerHTML = getId('_modal_header').innerHTML;
|
||||
parent.getId('_modal_header_modal_window').className = 'modal-header';
|
||||
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>
|
||||
#modal-package-install .modal-body {
|
||||
min-height: 400px;
|
||||
max-height: calc(100vh - 175px);
|
||||
overflow-y: auto;
|
||||
padding: 15px
|
||||
}
|
||||
|
||||
#modal-package-install .tab-content {
|
||||
padding: 20px 0
|
||||
}
|
||||
|
||||
|
||||
/* breadcrumb */
|
||||
|
||||
#modal-package-install .breadcrumb {
|
||||
margin: -15px -15px 15px;
|
||||
border-radius: 0;
|
||||
padding: 10px 15px;
|
||||
}
|
||||
|
||||
#modal-package-install .breadcrumb a {
|
||||
color: #999;
|
||||
}
|
||||
|
||||
#modal-package-install .breadcrumb a:hover {
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
#modal-package-install .breadcrumb .active a {
|
||||
color: #428bca;
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
#modal-package-install .breadcrumb .badge {
|
||||
background-color: #999;
|
||||
}
|
||||
|
||||
#modal-package-install .breadcrumb .active .badge {
|
||||
background-color: #428bca;
|
||||
}
|
||||
|
||||
#modal-package-install h4 {
|
||||
line-height: 1.5
|
||||
}
|
||||
|
||||
#modal-package-install .page-header {
|
||||
margin-top: 20px;
|
||||
}
|
||||
|
||||
#modal-package-install .list-group {
|
||||
margin-bottom: 10px;
|
||||
}
|
||||
|
||||
#modal-package-install .rb-icon {
|
||||
font-size: 70px;
|
||||
color: #444
|
||||
}
|
||||
|
||||
#modal-package-install .label {
|
||||
display: inline;
|
||||
padding: .2em .6em .3em;
|
||||
font-size: 75%;
|
||||
font-weight: 700;
|
||||
line-height: 1;
|
||||
color: #fff;
|
||||
text-align: center;
|
||||
white-space: nowrap;
|
||||
vertical-align: baseline;
|
||||
border-radius: .25em;
|
||||
}
|
||||
|
||||
#modal-package-install .pager {
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
|
||||
/* tab2 */
|
||||
|
||||
|
||||
#tab2 .panel-heading a {
|
||||
display: inline-block;
|
||||
font-family: FontAwesome;
|
||||
font-style: normal;
|
||||
font-weight: normal;
|
||||
line-height: 1;
|
||||
-webkit-font-smoothing: antialiased;
|
||||
}
|
||||
|
||||
#tab2 .panel-heading a {
|
||||
color: #666;
|
||||
display: block;
|
||||
}
|
||||
|
||||
#tab2 .panel-heading a:hover {
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
#tab2 .panel-heading span:before {
|
||||
content: " \f078";
|
||||
}
|
||||
|
||||
#tab2 .panel-heading .collapsed span:before {
|
||||
content: " \f054";
|
||||
}
|
||||
|
||||
|
||||
/* responsive */
|
||||
|
||||
@media (min-width: 992px) {
|
||||
.modal-lg {
|
||||
width: 780px;
|
||||
}
|
||||
}
|
||||
|
||||
@media (max-width: 768px) {
|
||||
#modal-package-install .breadcrumb .badge {
|
||||
padding: 5px 15px
|
||||
}
|
||||
#modal-package-install .breadcrumb .badge {
|
||||
font-size: 18px
|
||||
}
|
||||
#modal-package-install .rb-icon {
|
||||
font-size: 40px
|
||||
}
|
||||
#modal-package-install .tab-content {
|
||||
padding: 0
|
||||
}
|
||||
#tab1 .btn {
|
||||
display: block;
|
||||
width: 100%
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/* 김성호 */
|
||||
|
||||
#modal-package-install ul {
|
||||
color: #666;
|
||||
}
|
||||
|
||||
#modal-package-install ul .active {
|
||||
font-weight: bold;
|
||||
color: #428BCA;
|
||||
}
|
||||
|
||||
#modal-package-install ul .active .badge {
|
||||
background: #428BCA;
|
||||
}
|
||||
|
||||
|
||||
#modal-package-install .modal-body {
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
#modal-package-install .tab-content {
|
||||
clear: both;
|
||||
padding: 40px 20px 0 20px;
|
||||
}
|
||||
|
||||
#rb-body .tab-content {
|
||||
border: 0;
|
||||
}
|
||||
</style>
|
||||
14
modules/market/admin/package.php
Normal file
14
modules/market/admin/package.php
Normal file
@@ -0,0 +1,14 @@
|
||||
<?php
|
||||
include $g['path_module'].$module.'/var/var.php';
|
||||
$g['marketvar'] = $g['path_var'].'/market.var.php';
|
||||
if (file_exists($g['marketvar'])) include_once $g['marketvar'];
|
||||
if($d['market']['url'] && $d['market']['key'] && $d['market']['userid'] ):
|
||||
include $g['path_core'].'function/rss.func.php';
|
||||
$marketData = getUrlData($d['market']['url'].'&iframe=Y&page=client.package&_clientu='.$g['s'].($goods?'&goods='.$goods:'').'&_clientr='.$r.'&cat='.$cat.'&theme='.$theme.'&sort='.$sort.'&orderby='.$orderby.'&type='.$type.'&ptype='.$ptype.'&p='.$p.'&todayfree='.$todayfree.'&sailing='.$sailing.'&where='.$where.'&keyword='.$keyword.'&brand='.$brand.'&id='.$d['market']['userid'].'&key='.$d['market']['key'].'&version=2&host='.$_SERVER['HTTP_HOST'],10);
|
||||
$marketData = explode('[RESULT:',$marketData);
|
||||
$marketData = explode(':RESULT]',$marketData[1]);
|
||||
$marketData = $marketData[0];
|
||||
echo $marketData;
|
||||
else:?>
|
||||
<?php include $g['path_module'].$module.'/admin/_guide.php'; ?>
|
||||
<?php endif?>
|
||||
16
modules/market/admin/popup.buy.css
Normal file
16
modules/market/admin/popup.buy.css
Normal file
@@ -0,0 +1,16 @@
|
||||
.tt {font-weight:bold;font-family:"malgun gothic",dotum;color:#333333;border-bottom:#dfdfdf dotted 1px;padding:10px 0 10px 10px;margin:0 0 20px 0;}
|
||||
.tt img {position:relative;top:6px;}
|
||||
#orderbox {}
|
||||
#orderbox .box {padding:10px 0 50px 0;}
|
||||
#orderbox .box table {}
|
||||
#orderbox .box td {}
|
||||
#orderbox .box .td1 {width:80px;padding:5px 0 5px 10px;font-family:dotum;font-size:12px;color:#666;}
|
||||
#orderbox .box .td2 {padding:7px 0 7px 0;}
|
||||
#orderbox .box .td2 span {font-family:arial;font-size:11px;color:#ff0000;}
|
||||
#orderbox .box .td2 s {font-family:arial;font-size:11px;color:#999;}
|
||||
#orderbox .box .noline td {border-top:#ffffff solid 1px;}
|
||||
#orderbox .box .buybox {padding:20px 0 20px 90px;}
|
||||
#orderbox .box .buybox div {padding:0 0 20px 0;}
|
||||
#orderbox .box .price1 {color:#000000;}
|
||||
#orderbox .box .price2 {color:#ff0000;}
|
||||
#orderbox .box .halin {color:#FF4040;}
|
||||
45
modules/market/admin/popup.buy.php
Normal file
45
modules/market/admin/popup.buy.php
Normal file
@@ -0,0 +1,45 @@
|
||||
<?php
|
||||
include $g['path_module'].$module.'/var/var.php';
|
||||
$g['marketvar'] = $g['path_var'].'/market.var.php';
|
||||
if (file_exists($g['marketvar'])) include_once $g['marketvar'];
|
||||
if($d['market']['url'] && $d['market']['key'] && $d['market']['userid'] ):
|
||||
include $g['path_core'].'function/rss.func.php';
|
||||
$marketData = getUrlData($d['market']['url'].'&iframe=Y&page=client.buy&_clientu='.$g['s'].'&_clientr='.$r.'&uid='.$uid.'&iframe=Y&id='.$d['market']['userid'].'&key='.$d['market']['key'].'&version=2',10);
|
||||
$marketData = explode('[RESULT:',$marketData);
|
||||
$marketData = explode(':RESULT]',$marketData[1]);
|
||||
$marketData = $marketData[0];
|
||||
?>
|
||||
|
||||
<?php if($marketData == 'NOMEMBER'):?>
|
||||
<script type="text/javascript">
|
||||
//<![CDATA[
|
||||
alert('환경설정 페이지에 등록한 킴스큐 회원정보가 정확하지 않습니다.');
|
||||
window.close();
|
||||
//]]>
|
||||
</script>
|
||||
<?php exit;endif?>
|
||||
<?php if($marketData == 'NOPRODUCT'):?>
|
||||
<script type="text/javascript">
|
||||
//<![CDATA[
|
||||
alert('존재하지 않는 상품입니다.');
|
||||
window.close();
|
||||
//]]>
|
||||
</script>
|
||||
<?php exit;endif?>
|
||||
|
||||
<?php echo $marketData?>
|
||||
|
||||
<?php else:?>
|
||||
<script type="text/javascript">
|
||||
//<![CDATA[
|
||||
alert('환경설정 페이지에서 마켓 접속주소와\n킴스큐 아이디와 프로젝트 키를 등록해 주세요.');
|
||||
window.close();
|
||||
//]]>
|
||||
</script>
|
||||
<?php endif?>
|
||||
|
||||
<script type="text/javascript">
|
||||
//<![CDATA[
|
||||
document.title = '큐마켓-구매하기';
|
||||
//]]>
|
||||
</script>
|
||||
14
modules/market/admin/recomm.php
Normal file
14
modules/market/admin/recomm.php
Normal file
@@ -0,0 +1,14 @@
|
||||
<?php
|
||||
include $g['path_module'].$module.'/var/var.php';
|
||||
$g['marketvar'] = $g['path_var'].'/market.var.php';
|
||||
if (file_exists($g['marketvar'])) include_once $g['marketvar'];
|
||||
if($d['market']['url'] && $d['market']['key'] && $d['market']['userid'] ):
|
||||
include $g['path_core'].'function/rss.func.php';
|
||||
$marketData = getUrlData($d['market']['url'].'&iframe=Y&page=client.recomm&_clientu='.$g['s'].'&_clientr='.$r.'&cat='.$cat.'&theme='.$theme.'&sort='.$sort.'&orderby='.$orderby.'&type='.$type.'&ptype='.$ptype.'&p='.$p.'&todayfree='.$todayfree.'&sailing='.$sailing.'&where='.$where.'&keyword='.$keyword.'&brand='.$brand.'&id='.$d['market']['userid'].'&key='.$d['market']['key'].'&version=2&host='.$_SERVER['HTTP_HOST'],10);
|
||||
$marketData = explode('[RESULT:',$marketData);
|
||||
$marketData = explode(':RESULT]',$marketData[1]);
|
||||
$marketData = $marketData[0];
|
||||
echo $marketData;
|
||||
else:?>
|
||||
<?php include $g['path_module'].$module.'/admin/_guide.php'; ?>
|
||||
<?php endif?>
|
||||
14
modules/market/admin/update.php
Normal file
14
modules/market/admin/update.php
Normal file
@@ -0,0 +1,14 @@
|
||||
<?php
|
||||
include $g['path_module'].$module.'/var/var.php';
|
||||
$g['marketvar'] = $g['path_var'].'/market.var.php';
|
||||
if (file_exists($g['marketvar'])) include_once $g['marketvar'];
|
||||
if($d['market']['url'] && $d['market']['key'] && $d['market']['userid'] ):
|
||||
include $g['path_core'].'function/rss.func.php';
|
||||
$marketData = getUrlData($d['market']['url'].'&iframe=Y&page=client.update&_clientu='.$g['s'].'&_clientr='.$r.'&cat='.$cat.'&theme='.$theme.'&sort='.$sort.'&orderby='.$orderby.'&type='.$type.'&ptype='.$ptype.'&p='.$p.'&todayfree='.$todayfree.'&sailing='.$sailing.'&where='.$where.'&keyword='.$keyword.'&brand='.$brand.'&id='.$d['market']['userid'].'&key='.$d['market']['key'].'&version=2&host='.$_SERVER['HTTP_HOST'],10);
|
||||
$marketData = explode('[RESULT:',$marketData);
|
||||
$marketData = explode(':RESULT]',$marketData[1]);
|
||||
$marketData = $marketData[0];
|
||||
echo $marketData;
|
||||
else:?>
|
||||
<?php include $g['path_module'].$module.'/admin/_guide.php'; ?>
|
||||
<?php endif?>
|
||||
9
modules/market/admin/var/var.menu.php
Normal file
9
modules/market/admin/var/var.menu.php
Normal file
@@ -0,0 +1,9 @@
|
||||
<?php
|
||||
$d['amenu']['main'] = '패키지';
|
||||
$d['amenu']['extension'] = '익스텐션';
|
||||
$d['amenu']['recomm']= '추천상품';
|
||||
$d['amenu']['brand'] = '브랜드';
|
||||
$d['amenu']['update'] = '설치내역';
|
||||
$d['amenu']['buyer'] = '구매내역';
|
||||
$d['amenu']['config'] = '설정';
|
||||
?>
|
||||
Reference in New Issue
Block a user