-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathsoo_parking.addon.php
125 lines (117 loc) · 3.8 KB
/
soo_parking.addon.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
<?php
if(!defined('__XE__')) exit();
/**
* @file soo_parking.addon.php
* @author MinSoo Kim <[email protected]>
* @brief Display parking page.
*/
if(Context::getResponseMethod() == 'HTML') {
if($called_position == 'before_display_content' && Context::get('module') != 'admin') {
$oMemberModel = &getModel('member');
$view_checker = 0;
// 로그인 페이지일 경우 표시 안함
if(Context::get('act') == 'dispMemberLoginForm' && !$oMemberModel->isLogged()) $view_checker = 1;
// 시간 설정
if($view_checker === 0)
{
if($addon_info->until)
{
if(time() > strtotime($addon_info->until))
{
$view_checker = 1;
}
}
}
// 회원 관련된 예외상황 들
if($view_checker === 0)
{
if($oMemberModel->isLogged()) {
$MemberID=$oMemberModel->getLoggedUserID();
if($MemberID) {
// member ID
if($addon_info->but_group != '' || $addon_info->but_id != '') {
$MemberSRL=$oMemberModel->getMemberSrlByUserID($MemberID);
$MemberGroups=$oMemberModel->getMemberGroups($MemberSRL);
if($addon_info->but_id) {
$but_ids = explode(",",$addon_info->but_id);
if(is_array($but_ids)) {
if(in_array($MemberID, $but_ids) && $MemberID!='') $view_checker = 1;
}
}
if($addon_info->but_group) {
// member Group
$but_groups = explode(",",$addon_info->but_group);
if(is_array($MemberGroups)) {
foreach($MemberGroups as $value) {
if(in_array($value,$but_groups) && $value!='') $view_checker = 1;
}
}
}
}
}
}
}
//user-agent
if($addon_info->except_useragent || $addon_info->do_useragent) {
if(trim($addon_info->except_useragent) && isset($addon_info->except_useragent)) {
$except_useragent = explode("\n",$addon_info->except_useragent);
foreach($except_useragent as $value) {
if(trim($value) && trim($value) != '') if(stristr($_SERVER['HTTP_USER_AGENT'],trim($value)) != FALSE) $view_checker = 1;
}
}
if(trim($addon_info->do_useragent) && isset($addon_info->do_useragent)) {
$do_useragent = explode("\n",$addon_info->do_useragent);
foreach($do_useragent as $value) {
if(trim($value) && trim($value) != '') if(stristr($_SERVER['HTTP_USER_AGENT'],trim($value)) != FALSE) $view_checker = 0;
}
}
}
// Print output
if($view_checker === 0)
{
$addon_output = '';
if($addon_info->view_message_ko && Context::getLangType() == 'ko')
{
$addon_output = $addon_info->view_message_ko;
}
elseif($addon_info->view_message_en)
{
$addon_output = $addon_info->view_message_en;
}
else
{
$addon_output = '<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="ko" xml:lang="ko">
<head>
<meta name="viewport" content="width=device-width, initial-scale=1, minimum-scale=1, maximum-scale=1, user-scalable=yes, target-densitydpi=medium-dpi" />
<meta http-equiv="Content-type" content="text/html;charset=UTF-8" />
<title>Not ready to show</title>
</head>
<body>
<div style="text-align:center;">
<h1>This Homepage is not ready to show!</h1>
<p>Coming Soon...</p>
</div>
</body>
</html>';
}
header("Content-Type: text/html; charset=UTF-8");
header("Last-Modified: " . gmdate("D, d M Y H:i:s") . " GMT");
header("Cache-Control: no-store, no-cache, must-revalidate");
header("Cache-Control: post-check=0, pre-check=0", false);
header("Pragma: no-cache");
header("Set-Cookie: ");
if((defined('__OB_GZHANDLER_ENABLE__') && __OB_GZHANDLER_ENABLE__ == 1)
&& strpos($_SERVER['HTTP_ACCEPT_ENCODING'], 'gzip') !== FALSE
&& extension_loaded('zlib')
&& !headers_sent())
{
ini_set('zlib.output_compression', true);
}
print($addon_output);
Context::close();
exit();
}
}
}
?>