Project

General

Profile

1
<?php
2
/**
3
 *
4
 * @category        frontend
5
 * @package         account
6
 * @author          Ryan Djurovich, WebsiteBaker Project
7
 * @copyright       2009-2013, WebsiteBaker Org. e.V.
8
 * @link            http://www.websitebaker.org/
9
 * @license         http://www.gnu.org/licenses/gpl.html
10
 * @platform        WebsiteBaker 2.8.x
11
 * @requirements    PHP 5.2.2 and higher
12
 * @version         $Id: signup_form.php 1987 2013-10-19 00:49:58Z Luisehahne $
13
 * @filesource      $HeadURL: svn://isteam.dynxs.de/wb-archiv/branches/2.8.x/wb/account/signup_form.php $
14
 * @lastmodified    $Date: 2013-10-19 02:49:58 +0200 (Sat, 19 Oct 2013) $
15
 *
16
 */
17

    
18
/* -------------------------------------------------------- */
19
// Must include code to stop this file being accessed directly
20
if(!defined('WB_PATH')) {
21
	require_once(dirname(dirname(__FILE__)).'/framework/globalExceptionHandler.php');
22
	throw new IllegalFileException();
23
}
24
/* -------------------------------------------------------- */
25

    
26
// load module language file
27
//$lang = (dirname(__FILE__)) . '/languages/' . LANGUAGE . '.php';
28
//require_once(!file_exists($lang) ? (dirname(__FILE__)) . '/languages/EN.php' : $lang );
29

    
30
require_once(WB_PATH.'/include/captcha/captcha.php');
31

    
32
include_once (WB_PATH.'/framework/functions.php');
33

    
34
$mLang = Translate::getinstance();
35
$mLang->enableAddon('account');
36

    
37
if(isset($_POST['action']) && $_POST['action']=='send') {
38
	require(dirname(__FILE__).'/save_signup.php');
39
} else {
40
	$output = '';
41
	msgQueue::clear();
42
	unset($_SESSION['USERNAME']);
43
	unset($_SESSION['LANGUAGE']);
44
	unset($_SESSION['DISPLAY_NAME']);
45
	unset($_SESSION['EMAIL']);
46
	unset($_SESSION['TIMEZONE']);
47
}
48

    
49
if($_SESSION['display_form'])
50
{
51

    
52
    $sIncludeHeadLinkCss = '';
53
    if( is_readable(WB_PATH .'/account/frontend.css')) {
54
    	$sIncludeHeadLinkCss .= '<link href="'.WB_URL.'/account/frontend.css"';
55
    	$sIncludeHeadLinkCss .= ' rel="stylesheet" type="text/css" media="screen" />'."\n";
56
    }
57

    
58
// set template file and assign module and template block
59
	$oTpl = new Template(dirname(__FILE__).'/htt','keep');
60
	$oTpl->set_file('page', 'signup.htt');
61
	$oTpl->debug = false; // false, true
62
	$oTpl->set_block('page', 'main_block', 'main');
63
// generell vars
64
	$oTpl->set_var(array(
65
		'FTAN' => $wb->getFTAN(),
66
		'ACTION_URL' => WB_URL.'/account/signup.php',
67
		'WB_URL' => WB_URL,
68
		'THEME_URL' => THEME_URL,
69
        'CSS_BLOCK'	=> $sIncludeHeadLinkCss,
70
		'HTTP_REFERER' => $_SESSION['HTTP_REFERER'],
71
		'MESSAGE_VALUE' => '',
72
		'ERROR_VALUE' => '',
73
		'HEADING_SIGNUP' => $mLang->TEXT_SIGNUP,
74
		'TEXT_LANGUAGE' => $mLang->TEXT_LANGUAGE,
75
		'TEXT_SIGNUP' => $mLang->TEXT_SIGNUP,
76
		'TEXT_RESET' => $mLang->TEXT_RESET,
77
		'TEXT_CANCEL' => $mLang->TEXT_CANCEL,
78
		)
79
	);
80

    
81
	$sSelected = ' selected="selected"';
82
	$checked   = ' checked="checked"';
83
// show messages, default block off
84
	$oTpl->set_block('main_block', 'message_block', 'message');
85
	$oTpl->parse('message', '');
86
	if( ($msg = msgQueue::getError()) != '')
87
	{
88
		$output = $wb->format_message($msg, 'error');
89
		$oTpl->set_var('MESSAGE_VALUE',$output);
90
		$oTpl->parse('message', 'message_block', true);
91
	}
92
	$oTpl->set_var('MESSAGE','');
93

    
94
// show captcha
95
	$oTpl->set_block('main_block', 'asp_block', 'asp');
96
	if(ENABLED_ASP) {
97
		$oTpl->set_var('DISPLAY_ASP','nixhier');
98
		$oTpl->parse('asp', 'asp_block', true);
99
	} else {
100
		$oTpl->parse('asp', '', true);
101
	}
102

    
103
// login label vars
104
	$oTpl->set_var(array(
105
		'TEXT_INFO' => $mLang->TEXT_INFO,
106
		'TEXT_USERNAME' => $mLang->TEXT_USERNAME,
107
		'TEXT_DISPLAY_NAME' => $mLang->TEXT_DISPLAY_NAME,
108
		'TEXT_EMAIL' => $mLang->TEXT_EMAIL,
109
		)
110
	);
111

    
112
// set data vars stored in session if validation failed
113
	$iTime = time();
114
	$_SESSION['submitted_when'] = $iTime;
115
	$oTpl->set_var(array(
116
		'SET_TIME' => $iTime,
117
		'DISPLAY_USER' => $wb->get_session('USERNAME'),
118
		'DISPLAY_NAME' => $wb->get_session('DISPLAY_NAME'),
119
		'EMAIL' => $wb->get_session('EMAIL'),
120
		)
121
	);
122

    
123

    
124
    $aLangAddons = array();
125
    $aLangBrowser = array();
126
// read available languages from table addons
127
    $aLangAddons = $admin->getAvailableLanguages();
128

    
129
// default, if no information from client available
130
    $sAutoLanguage = DEFAULT_LANGUAGE;
131
// detect client language
132
    if(isset($_SERVER['HTTP_ACCEPT_LANGUAGE'])) {
133
    	if(preg_match('/([a-z]{2})(?:-[a-z]{2})*/i', strtolower($_SERVER['HTTP_ACCEPT_LANGUAGE']), $matches)) {
134
    		$sAutoLanguage = strtoupper($matches[1]);
135
    	}
136
    }
137
    
138
    $sAutoLanguage=($wb->get_session('LANGUAGE')) ? $_SESSION['LANGUAGE'] : $sAutoLanguage;
139

    
140
    //$sAutoLanguage = 'NL';
141
    $aLangUsed = array_flip(explode(',',$wb->getLanguagesInUsed()));
142
    $aLangUsed = array_intersect_key($aLangAddons, $aLangUsed);
143
    if( (sizeof($aLangUsed)<2) || !($oReg->PageLanguages) ){
144
        $aLangUsed =  $aLangAddons;    
145
    }
146
    $sAutoLanguage = array_key_exists($sAutoLanguage,$aLangUsed) ? $sAutoLanguage : DEFAULT_LANGUAGE;
147
//  read available languages from table addons and assign it to the template
148
    $oTpl->set_block('main_block', 'language_list_block', 'language_list');
149
    foreach( $aLangUsed as $sDirectory => $aName  )
150
    {
151
        $langIcons = ( empty($sDirectory) ? 'none' : strtolower($sDirectory));
152
        $oTpl->set_var('CODE',        $sDirectory );
153
        $oTpl->set_var('NAME',        $aName );
154
        $oTpl->set_var('FLAG',        THEME_URL.'/images/flags/'.$langIcons );
155
        $oTpl->set_var('SELECTED',    ( $sAutoLanguage == $sDirectory ? ' selected="selected"' : '') );
156
        $oTpl->parse('language_list', 'language_list_block', true);
157
    }
158

    
159
// if type == confirmed_registration mail show password block, otherwise old login with captcha
160
	$oTpl->set_block('main_block', 'password_block', 'password');
161
	$oTpl->set_block('main_block', 'captcha_block', 'captcha');
162
	if(CONFIRMED_REGISTRATION) {
163
		$oTpl->parse('captcha', '', true);
164
		$oTpl->set_var(array(
165
				'TEXT_NEW_PASSWORD' => $mLang->TEXT_NEW_PASSWORD,
166
				'TEXT_RETYPE_NEW_PASSWORD' => $mLang->TEXT_RETYPE_NEW_PASSWORD,
167
				'HELP_SIGNUP_REMEMBER_PASSWORD' => $mLang->HELP_SIGNUP_REMEMBER_PASSWORD,
168
				)
169
			);
170
		$oTpl->parse('password', 'password_block',true);
171
	} else {
172
		$oTpl->parse('password', '');
173
		if(ENABLED_CAPTCHA) {
174
			ob_start();
175
			call_captcha();
176
			$captcha = ob_get_clean();
177
			$oTpl->set_var(array(
178
					'TEXT_VERIFICATION' => $mLang->TEXT_VERIFICATION,
179
					'CAPTCHA' => $captcha,
180
					)
181
				);
182
			$oTpl->parse('captcha', 'captcha_block', true);
183
		} else {
184
			$oTpl->parse('captcha', '', true);
185
		}
186
	}
187

    
188
	// Parse template object
189
	$oTpl->parse('main', 'main_block', false);
190
	$output = $oTpl->finish($oTpl->parse('output', 'page'));
191
	unset($oTpl);
192
	print $output;
193
	$output = '';
194
} else {
195
	// success registration output
196
	$oTpl = new Template(dirname(__FILE__).'/htt','keep');
197
	$oTpl->set_file('page', 'success.htt');
198
	$oTpl->debug = false; // false, true
199
	$oTpl->set_block('page', 'main_block', 'main');
200
	// show messages, default block off
201
	$oTpl->set_block('main_block', 'show_registration_block', 'message');
202
	$oTpl->parse('message', '');
203
	if( ($msg = msgQueue::getSuccess()) != '')
204
	{
205
		$output = $wb->format_message($msg, 'ok');
206
		$oTpl->set_var('MESSAGE_VALUE',$output);
207
		$oTpl->parse('message', 'show_registration_block', true);
208
	}
209
	$oTpl->set_var(array(
210
			'BACK' => $mLang->TEXT_BACK,
211
			'HTTP_REFERER' => isset($_SESSION['HTTP_REFERER']) ? $_SESSION['HTTP_REFERER'] : WB_URL,
212
			)
213
		);
214

    
215
	if(CONFIRMED_REGISTRATION) {
216
		$sMessage  = $mLang->MESSAGE_SIGNUP2_SUBJECT_NEW_USER.' ';
217
		$sMessage .= $mLang->MESSAGE_SIGNUP_CONFIRMED_REGISTRATION;
218
		$oTpl->set_var('MESSAGE',$sMessage);
219
	} else {
220
		$sMessage  = $mLang->MESSAGE_SIGNUP2_SUBJECT_NEW_USER.' ';
221
		$sMessage .= $mLang->MESSAGE_SIGNUP_REGISTRATION;
222
		$oTpl->set_var('MESSAGE',$sMessage);
223
	}
224
	//$oTpl->parse('message', 'message_block', true);
225
	$oTpl->parse('main', 'main_block', false);
226
	$output = $oTpl->finish($oTpl->parse('output', 'page'));
227
	unset($oTpl);
228
	print $output;
229
}
(21-21/22)