| 4 |
4 |
* @category framework
|
| 5 |
5 |
* @package frontend
|
| 6 |
6 |
* @author Ryan Djurovich, WebsiteBaker Project
|
| 7 |
|
* @copyright 2009-2011, Website Baker Org. e.V.
|
|
7 |
* @copyright 2009-2012, WebsiteBaker Org. e.V.
|
| 8 |
8 |
* @link http://www.websitebaker2.org/
|
| 9 |
9 |
* @license http://www.gnu.org/licenses/gpl.html
|
| 10 |
10 |
* @platform WebsiteBaker 2.8.x
|
| ... | ... | |
| 40 |
40 |
|
| 41 |
41 |
public $page_access_denied;
|
| 42 |
42 |
public $page_no_active_sections;
|
| 43 |
|
|
|
43 |
|
| 44 |
44 |
// website settings
|
| 45 |
45 |
public $website_title,$website_description,$website_keywords,$website_header,$website_footer;
|
| 46 |
46 |
|
| 47 |
47 |
// ugly database stuff
|
| 48 |
48 |
public $extra_where_sql, $sql_where_language;
|
| 49 |
|
|
|
49 |
|
| 50 |
50 |
public function __construct() {
|
| 51 |
51 |
parent::__construct(SecureForm::FRONTEND);
|
| 52 |
52 |
}
|
| ... | ... | |
| 98 |
98 |
// Check if we should redirect or include page inline
|
| 99 |
99 |
if(HOMEPAGE_REDIRECTION) {
|
| 100 |
100 |
// Redirect to page
|
| 101 |
|
header("Location: ".$this->page_link($this->default_link));
|
| 102 |
|
exit();
|
|
101 |
// header("Location: ".$this->page_link($this->default_link));
|
|
102 |
// exit();
|
|
103 |
$this->send_header($this->page_link($this->default_link));
|
| 103 |
104 |
} else {
|
| 104 |
105 |
// Include page inline
|
| 105 |
106 |
$this->page_id = $this->default_page_id;
|
| ... | ... | |
| 191 |
192 |
// Page link
|
| 192 |
193 |
$this->link=$this->page_link($this->page['link']);
|
| 193 |
194 |
$_SESSION['PAGE_ID'] = $this->page_id;
|
| 194 |
|
$_SESSION['HTTP_REFERER'] = $this->link;
|
|
195 |
$bCanRedirect = ($this->visibility == 'registered' || $this->visibility == 'privat');
|
|
196 |
$_SESSION['HTTP_REFERER'] = $bCanRedirect != true ? $this->link : WB_URL;
|
| 195 |
197 |
|
| 196 |
198 |
// End code to set details as either variables of constants
|
| 197 |
199 |
}
|
| ... | ... | |
| 226 |
228 |
// User isnt allowed on this page so tell them
|
| 227 |
229 |
$this->page_access_denied=true;
|
| 228 |
230 |
}
|
| 229 |
|
|
|
231 |
|
| 230 |
232 |
}
|
| 231 |
233 |
}
|
| 232 |
234 |
// check if there is at least one active section
|
| ... | ... | |
| 261 |
263 |
} elseif(SEARCH == 'private' AND $this->is_authenticated() == true) {
|
| 262 |
264 |
define('SHOW_SEARCH', true);
|
| 263 |
265 |
} elseif(SEARCH == 'registered' AND $this->is_authenticated() == true) {
|
| 264 |
|
define('SHOW_SEARCH', true);
|
|
266 |
define('SHOW_SEARCH', true);
|
| 265 |
267 |
} else {
|
| 266 |
268 |
define('SHOW_SEARCH', false);
|
| 267 |
269 |
}
|
| ... | ... | |
| 286 |
288 |
* @return void
|
| 287 |
289 |
* @history 100216 17:00:00 optimise errorhandling, speed, SQL-strict
|
| 288 |
290 |
*/
|
| 289 |
|
public function preprocess(&$content)
|
| 290 |
|
{
|
| 291 |
|
global $database;
|
| 292 |
|
$replace_list = array();
|
| 293 |
|
$pattern = '/\[wblink([0-9]+)\]/isU';
|
| 294 |
|
if(preg_match_all($pattern,$content,$ids))
|
| 295 |
|
{
|
| 296 |
|
foreach($ids[1] as $key => $page_id)
|
| 297 |
|
{
|
| 298 |
|
$replace_list[$page_id] = $ids[0][$key];
|
| 299 |
|
}
|
| 300 |
|
foreach($replace_list as $page_id => $tag)
|
| 301 |
|
{
|
| 302 |
|
$sql = 'SELECT `link` FROM `'.TABLE_PREFIX.'pages` WHERE `page_id` = '.(int)$page_id;
|
| 303 |
|
$link = $database->get_one($sql);
|
| 304 |
|
if(!is_null($link))
|
| 305 |
|
{
|
| 306 |
|
$link = $this->page_link($link);
|
| 307 |
|
$content = str_replace($tag, $link, $content);
|
| 308 |
|
}
|
| 309 |
|
}
|
| 310 |
|
}
|
| 311 |
|
}
|
|
291 |
public function preprocess(&$content)
|
|
292 |
{
|
|
293 |
// do nothing
|
|
294 |
}
|
| 312 |
295 |
|
| 313 |
|
/*
|
| 314 |
|
function preprocess(&$content) {
|
| 315 |
|
global $database;
|
| 316 |
|
// Replace [wblink--PAGE_ID--] with real link
|
| 317 |
|
$pattern = '/\[wblink(.+?)\]/s';
|
| 318 |
|
preg_match_all($pattern,$content,$ids);
|
| 319 |
|
foreach($ids[1] AS $page_id) {
|
| 320 |
|
$pattern = '/\[wblink'.$page_id.'\]/s';
|
| 321 |
|
// Get page link
|
| 322 |
|
$get_link = $database->query("SELECT link FROM ".TABLE_PREFIX."pages WHERE page_id = '$page_id' LIMIT 1");
|
| 323 |
|
$fetch_link = $get_link->fetchRow();
|
| 324 |
|
$link = $this->page_link($fetch_link['link']);
|
| 325 |
|
$content = preg_replace($pattern,$link,$content);
|
| 326 |
|
}
|
| 327 |
|
}
|
| 328 |
|
*/
|
| 329 |
296 |
public function menu() {
|
| 330 |
297 |
global $wb;
|
| 331 |
298 |
if (!isset($wb->menu_number)) {
|
| ... | ... | |
| 363 |
330 |
}
|
| 364 |
331 |
$wb->show_menu();
|
| 365 |
332 |
}
|
| 366 |
|
|
|
333 |
|
| 367 |
334 |
public function show_menu() {
|
| 368 |
335 |
global $database;
|
| 369 |
336 |
if ($this->menu_start_level>0) {
|
| ... | ... | |
| 451 |
418 |
}
|
| 452 |
419 |
}
|
| 453 |
420 |
|
| 454 |
|
?>
|
! /framework/class.frontend.php
! set $_SESSION['HTTP_REFERER'] to WB_URL if menu url is a registered page
! set some header("Location:.. to new method send_header(