Project

General

Profile

« Previous | Next » 

Revision 1373

Added by Dietmar almost 14 years ago

update headerinfos

View differences:

index.php
1
<?php

2
/**

3
 *

4
 * @category        frontend

5
 * @package         page

6
 * @author          WebsiteBaker Project

7
 * @copyright       2004-2009, Ryan Djurovich

8
 * @copyright       2009-2011, Website Baker Org. e.V.

9
 * @link			http://www.websitebaker2.org/

10
 * @license         http://www.gnu.org/licenses/gpl.html

11
 * @platform        WebsiteBaker 2.8.x

12
 * @requirements    PHP 5.2.2 and higher

13
 * @version         $Id$

14
 * @filesource		$HeadURL$

15
 * @lastmodified    $Date$

16
 *

17
 */

18

  
19
$starttime = array_sum(explode(" ",microtime()));

20

  
21
define('DEBUG', false);

22
// Include config file

23
$config_file = dirname(__FILE__).'/config.php';

24
if(file_exists($config_file))

25
{

26
	require_once($config_file);

27
}

28

  
29
// Check if the config file has been set-up

30
if(!defined('WB_PATH'))

31
{

32
/*

33
 * Anmerkung:  HTTP/1.1 verlangt einen absoluten URI inklusive dem Schema,

34
 * Hostnamen und absoluten Pfad als Argument von Location:, manche aber nicht alle

35
 * Clients akzeptieren jedoch auch relative URIs.

36
 */

37
	$host       = $_SERVER['HTTP_HOST'];

38
	$uri        = rtrim(dirname($_SERVER['PHP_SELF']), '/\\');

39
	$file       = 'install/index.php';

40
	$target_url = 'http://'.$host.$uri.'/'.$file;

41
	header('Location: '.$target_url);

42
	exit;	// make sure that subsequent code will not be executed

43
}

44

  
45
require_once(WB_PATH.'/framework/class.frontend.php');

46
// Create new frontend object

47
$wb = new frontend();

48

  
49
// Figure out which page to display

50
// Stop processing if intro page was shown

51
$wb->page_select() or die();

52

  
53
// Collect info about the currently viewed page

54
// and check permissions

55
$wb->get_page_details();

56

  
57
// Collect general website settings

58
$wb->get_website_settings();

59

  
60
// Load functions available to templates, modules and code sections

61
// also, set some aliases for backward compatibility

62
require(WB_PATH.'/framework/frontend.functions.php');

63

  
64
// redirect menu-link

65
$this_page_id = PAGE_ID;

66

  
67
$php43 = version_compare(phpversion(), '4.3', '>=');

68

  
69
$sql  = 'SELECT `module`, `block` FROM `'.TABLE_PREFIX.'sections` ';

70
$sql .= 'WHERE `page_id` = '.(int)$this_page_id.' AND `module` = "menu_link"';

71
$query_this_module = $database->query($sql);

72
if($query_this_module->numRows() == 1)  // This is a menu_link. Get link of target-page and redirect

73
{

74
	// get target_page_id

75
	$sql  = 'SELECT * FROM `'.TABLE_PREFIX.'mod_menu_link` WHERE `page_id` = '.(int)$this_page_id;

76
	$query_tpid = $database->query($sql);

77
	if($query_tpid->numRows() == 1)

78
	{

79
		$res = $query_tpid->fetchRow();

80
		$target_page_id = $res['target_page_id'];

81
		$redirect_type = $res['redirect_type'];

82
		$anchor = ($res['anchor'] != '0' ? '#'.(string)$res['anchor'] : '');

83
		$extern = $res['extern'];

84
		// set redirect-type

85
		if($redirect_type == 301)

86
		{

87
			if($php43)

88
			{

89
				@header('HTTP/1.1 301 Moved Permanently', TRUE, 301);

90
			}

91
			else

92
			{

93
				@header('HTTP/1.1 301 Moved Permanently');

94
			}

95
		}

96
		if($target_page_id == -1)

97
		{

98
			if($extern != '')

99
			{

100
				$target_url = $extern.$anchor;

101
				header('Location: '.$target_url);

102
				exit;

103
			}

104
		}

105
		else

106
		{

107
			// get link of target-page

108
			$sql  = 'SELECT `link` FROM `'.TABLE_PREFIX.'pages` WHERE `page_id` = '.$target_page_id;

109
			$target_page_link = $database->get_one($sql);

110
			if($target_page_link != null)

111
			{

112
				$target_url = WB_URL.PAGES_DIRECTORY.$target_page_link.PAGE_EXTENSION.$anchor;

113
				header('Location: '.$target_url);

114
				exit;

115
			}

116
		}

117
	}

118
}

119
//Get pagecontent in buffer for Droplets and/or Filter operations

120
ob_start();

121
require(WB_PATH.'/templates/'.TEMPLATE.'/index.php');

122
$output = ob_get_contents();

123
if(ob_get_length() > 0) { ob_end_clean(); }

124

  
125
// wb->preprocess() -- replace all [wblink123] with real, internal links

126
$wb->preprocess($output);

127
// Load Droplet engine and process

128
if(file_exists(WB_PATH .'/modules/droplets/droplets.php'))

129
{

130
    include_once(WB_PATH .'/modules/droplets/droplets.php');

131
    if(function_exists('evalDroplets'))

132
    {

133
		$output = evalDroplets($output);

134
    }

135
}

136
// Load backwards compatible frontend filter support and process

137
if(file_exists(WB_PATH .'/modules/output_filter/filter-routines.php'))

138
{

139
    include_once(WB_PATH .'/modules/output_filter/filter-routines.php');

140
    if(function_exists('filter_frontend_output'))

141
    {

142
        $output = filter_frontend_output($output);

143
    }

144
}

145
echo $output;

146
// end of wb-script

147
exit;

1
<?php
2
/**
3
 *
4
 * @category        frontend
5
 * @package         page
6
 * @author          WebsiteBaker Project
7
 * @copyright       2004-2009, Ryan Djurovich
8
 * @copyright       2009-2011, Website Baker Org. e.V.
9
 * @link			http://www.websitebaker2.org/
10
 * @license         http://www.gnu.org/licenses/gpl.html
11
 * @platform        WebsiteBaker 2.8.x
12
 * @requirements    PHP 5.2.2 and higher
13
 * @version         $Id$
14
 * @filesource		$HeadURL$
15
 * @lastmodified    $Date$
16
 *
17
 */
18

  
19
$starttime = array_sum(explode(" ",microtime()));
20

  
21
define('DEBUG', false);
22
// Include config file
23
$config_file = dirname(__FILE__).'/config.php';
24
if(file_exists($config_file))
25
{
26
	require_once($config_file);
27
}
28

  
29
// Check if the config file has been set-up
30
if(!defined('WB_PATH'))
31
{
32
/*
33
 * Anmerkung:  HTTP/1.1 verlangt einen absoluten URI inklusive dem Schema,
34
 * Hostnamen und absoluten Pfad als Argument von Location:, manche aber nicht alle
35
 * Clients akzeptieren jedoch auch relative URIs.
36
 */
37
	$host       = $_SERVER['HTTP_HOST'];
38
	$uri        = rtrim(dirname($_SERVER['PHP_SELF']), '/\\');
39
	$file       = 'install/index.php';
40
	$target_url = 'http://'.$host.$uri.'/'.$file;
41
	header('Location: '.$target_url);
42
	exit;	// make sure that subsequent code will not be executed
43
}
44

  
45
require_once(WB_PATH.'/framework/class.frontend.php');
46
// Create new frontend object
47
$wb = new frontend();
48

  
49
// Figure out which page to display
50
// Stop processing if intro page was shown
51
$wb->page_select() or die();
52

  
53
// Collect info about the currently viewed page
54
// and check permissions
55
$wb->get_page_details();
56

  
57
// Collect general website settings
58
$wb->get_website_settings();
59

  
60
// Load functions available to templates, modules and code sections
61
// also, set some aliases for backward compatibility
62
require(WB_PATH.'/framework/frontend.functions.php');
63

  
64
// redirect menu-link
65
$this_page_id = PAGE_ID;
66

  
67
$php43 = version_compare(phpversion(), '4.3', '>=');
68

  
69
$sql  = 'SELECT `module`, `block` FROM `'.TABLE_PREFIX.'sections` ';
70
$sql .= 'WHERE `page_id` = '.(int)$this_page_id.' AND `module` = "menu_link"';
71
$query_this_module = $database->query($sql);
72
if($query_this_module->numRows() == 1)  // This is a menu_link. Get link of target-page and redirect
73
{
74
	// get target_page_id
75
	$sql  = 'SELECT * FROM `'.TABLE_PREFIX.'mod_menu_link` WHERE `page_id` = '.(int)$this_page_id;
76
	$query_tpid = $database->query($sql);
77
	if($query_tpid->numRows() == 1)
78
	{
79
		$res = $query_tpid->fetchRow();
80
		$target_page_id = $res['target_page_id'];
81
		$redirect_type = $res['redirect_type'];
82
		$anchor = ($res['anchor'] != '0' ? '#'.(string)$res['anchor'] : '');
83
		$extern = $res['extern'];
84
		// set redirect-type
85
		if($redirect_type == 301)
86
		{
87
			if($php43)
88
			{
89
				@header('HTTP/1.1 301 Moved Permanently', TRUE, 301);
90
			}
91
			else
92
			{
93
				@header('HTTP/1.1 301 Moved Permanently');
94
			}
95
		}
96
		if($target_page_id == -1)
97
		{
98
			if($extern != '')
99
			{
100
				$target_url = $extern.$anchor;
101
				header('Location: '.$target_url);
102
				exit;
103
			}
104
		}
105
		else
106
		{
107
			// get link of target-page
108
			$sql  = 'SELECT `link` FROM `'.TABLE_PREFIX.'pages` WHERE `page_id` = '.$target_page_id;
109
			$target_page_link = $database->get_one($sql);
110
			if($target_page_link != null)
111
			{
112
				$target_url = WB_URL.PAGES_DIRECTORY.$target_page_link.PAGE_EXTENSION.$anchor;
113
				header('Location: '.$target_url);
114
				exit;
115
			}
116
		}
117
	}
118
}
119
//Get pagecontent in buffer for Droplets and/or Filter operations
120
ob_start();
121
require(WB_PATH.'/templates/'.TEMPLATE.'/index.php');
122
$output = ob_get_contents();
123
if(ob_get_length() > 0) { ob_end_clean(); }
124

  
125
// wb->preprocess() -- replace all [wblink123] with real, internal links
126
$wb->preprocess($output);
127
// Load Droplet engine and process
128
if(file_exists(WB_PATH .'/modules/droplets/droplets.php'))
129
{
130
    include_once(WB_PATH .'/modules/droplets/droplets.php');
131
    if(function_exists('evalDroplets'))
132
    {
133
		$output = evalDroplets($output);
134
    }
135
}
136
// Load backwards compatible frontend filter support and process
137
if(file_exists(WB_PATH .'/modules/output_filter/filter-routines.php'))
138
{
139
    include_once(WB_PATH .'/modules/output_filter/filter-routines.php');
140
    if(function_exists('filter_frontend_output'))
141
    {
142
        $output = filter_frontend_output($output);
143
    }
144
}
145
echo $output;
146
// end of wb-script
147
exit;
148 148
?>

Also available in: Unified diff