| 1 | 
        
            238
         | 
        
            stefan
         | 
        <?php
  | 
      
      
        | 2 | 
        
         | 
        
         | 
        
  | 
      
      
        | 3 | 
        
         | 
        
         | 
        // $Id$
  | 
      
      
        | 4 | 
        
         | 
        
         | 
        
  | 
      
      
        | 5 | 
        
         | 
        
         | 
        /*
  | 
      
      
        | 6 | 
        
         | 
        
         | 
        
  | 
      
      
        | 7 | 
        
         | 
        
         | 
         Website Baker Project <http://www.websitebaker.org/>
  | 
      
      
        | 8 | 
        
            915
         | 
        
            Ruebenwurz
         | 
         Copyright (C) 2004-2009, Ryan Djurovich
  | 
      
      
        | 9 | 
        
            238
         | 
        
            stefan
         | 
        
  | 
      
      
        | 10 | 
        
         | 
        
         | 
         Website Baker is free software; you can redistribute it and/or modify
  | 
      
      
        | 11 | 
        
         | 
        
         | 
         it under the terms of the GNU General Public License as published by
  | 
      
      
        | 12 | 
        
         | 
        
         | 
         the Free Software Foundation; either version 2 of the License, or
  | 
      
      
        | 13 | 
        
         | 
        
         | 
         (at your option) any later version.
  | 
      
      
        | 14 | 
        
         | 
        
         | 
        
  | 
      
      
        | 15 | 
        
         | 
        
         | 
         Website Baker is distributed in the hope that it will be useful,
  | 
      
      
        | 16 | 
        
         | 
        
         | 
         but WITHOUT ANY WARRANTY; without even the implied warranty of
  | 
      
      
        | 17 | 
        
         | 
        
         | 
         MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  | 
      
      
        | 18 | 
        
         | 
        
         | 
         GNU General Public License for more details.
  | 
      
      
        | 19 | 
        
         | 
        
         | 
        
  | 
      
      
        | 20 | 
        
         | 
        
         | 
         You should have received a copy of the GNU General Public License
  | 
      
      
        | 21 | 
        
         | 
        
         | 
         along with Website Baker; if not, write to the Free Software
  | 
      
      
        | 22 | 
        
         | 
        
         | 
         Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
  | 
      
      
        | 23 | 
        
         | 
        
         | 
        
  | 
      
      
        | 24 | 
        
         | 
        
         | 
        */
  | 
      
      
        | 25 | 
        
         | 
        
         | 
        
  | 
      
      
        | 26 | 
        
         | 
        
         | 
        $starttime = array_sum(explode(" ",microtime()));
 | 
      
      
        | 27 | 
        
         | 
        
         | 
        
  | 
      
      
        | 28 | 
        
         | 
        
         | 
        // Include config file
  | 
      
      
        | 29 | 
        
         | 
        
         | 
        require_once(dirname(__FILE__).'/config.php');
  | 
      
      
        | 30 | 
        
         | 
        
         | 
        
  | 
      
      
        | 31 | 
        
         | 
        
         | 
        // Check if the config file has been set-up
  | 
      
      
        | 32 | 
        
         | 
        
         | 
        if(!defined('WB_PATH')) {
 | 
      
      
        | 33 | 
        
         | 
        
         | 
        	header("Location: install/index.php");
 | 
      
      
        | 34 | 
        
            286
         | 
        
            stefan
         | 
        	exit(0);
  | 
      
      
        | 35 | 
        
            238
         | 
        
            stefan
         | 
        }
  | 
      
      
        | 36 | 
        
         | 
        
         | 
        
  | 
      
      
        | 37 | 
        
         | 
        
         | 
        require_once(WB_PATH.'/framework/class.frontend.php');
  | 
      
      
        | 38 | 
        
         | 
        
         | 
        // Create new frontend object
  | 
      
      
        | 39 | 
        
         | 
        
         | 
        $wb = new frontend();
  | 
      
      
        | 40 | 
        
         | 
        
         | 
        
  | 
      
      
        | 41 | 
        
         | 
        
         | 
        // Figure out which page to display
  | 
      
      
        | 42 | 
        
         | 
        
         | 
        // Stop processing if intro page was shown
  | 
      
      
        | 43 | 
        
         | 
        
         | 
        $wb->page_select() or die();
  | 
      
      
        | 44 | 
        
         | 
        
         | 
        
  | 
      
      
        | 45 | 
        
         | 
        
         | 
        // Collect info about the currently viewed page
  | 
      
      
        | 46 | 
        
         | 
        
         | 
        // and check permissions
  | 
      
      
        | 47 | 
        
         | 
        
         | 
        $wb->get_page_details();
  | 
      
      
        | 48 | 
        
         | 
        
         | 
        
  | 
      
      
        | 49 | 
        
         | 
        
         | 
        // Collect general website settings
  | 
      
      
        | 50 | 
        
         | 
        
         | 
        $wb->get_website_settings();
  | 
      
      
        | 51 | 
        
         | 
        
         | 
        
  | 
      
      
        | 52 | 
        
         | 
        
         | 
        // Load functions available to templates, modules and code sections
  | 
      
      
        | 53 | 
        
         | 
        
         | 
        // also, set some aliases for backward compatibility
  | 
      
      
        | 54 | 
        
         | 
        
         | 
        require(WB_PATH.'/framework/frontend.functions.php');
  | 
      
      
        | 55 | 
        
         | 
        
         | 
        
  | 
      
      
        | 56 | 
        
            543
         | 
        
            thorn
         | 
        // redirect menu-link
  | 
      
      
        | 57 | 
        
         | 
        
         | 
        $this_page_id = PAGE_ID;
  | 
      
      
        | 58 | 
        
            883
         | 
        
            thorn
         | 
        if(version_compare(phpversion(), '4.3', '>=')) $php43 = TRUE; else $php43 = FALSE;
  | 
      
      
        | 59 | 
        
            543
         | 
        
            thorn
         | 
        $query_this_module = $database->query("SELECT module, block FROM ".TABLE_PREFIX."sections WHERE page_id = '$this_page_id' AND module = 'menu_link'");
 | 
      
      
        | 60 | 
        
         | 
        
         | 
        if($query_this_module->numRows() == 1) { // This is a menu_link. Get link of target-page and redirect
 | 
      
      
        | 61 | 
        
         | 
        
         | 
        	// get target_page_id
  | 
      
      
        | 62 | 
        
         | 
        
         | 
        	$table = TABLE_PREFIX.'mod_menu_link';
  | 
      
      
        | 63 | 
        
            883
         | 
        
            thorn
         | 
        	$query_tpid = $database->query("SELECT * FROM $table WHERE page_id = '$this_page_id'");
 | 
      
      
        | 64 | 
        
            543
         | 
        
            thorn
         | 
        	if($query_tpid->numRows() == 1) {
 | 
      
      
        | 65 | 
        
         | 
        
         | 
        		$res=$query_tpid->fetchRow();
  | 
      
      
        | 66 | 
        
         | 
        
         | 
        		$target_page_id = $res['target_page_id'];
  | 
      
      
        | 67 | 
        
            883
         | 
        
            thorn
         | 
        		$r_type = $res['redirect_type'];
  | 
      
      
        | 68 | 
        
            565
         | 
        
            thorn
         | 
        		$anchor = $res['anchor'];
  | 
      
      
        | 69 | 
        
            698
         | 
        
            thorn
         | 
        		$extern = $res['extern'];
  | 
      
      
        | 70 | 
        
            565
         | 
        
            thorn
         | 
        		if($anchor != '0') $anchor = ''.$anchor;
  | 
      
      
        | 71 | 
        
         | 
        
         | 
        		else $anchor = FALSE;
  | 
      
      
        | 72 | 
        
            883
         | 
        
            thorn
         | 
        		// set redirect-type
  | 
      
      
        | 73 | 
        
         | 
        
         | 
        		if($r_type=='301') {
 | 
      
      
        | 74 | 
        
         | 
        
         | 
        			if($php43) @header('HTTP/1.1 301 Moved Permanently', TRUE, 301);
 | 
      
      
        | 75 | 
        
         | 
        
         | 
        			else @header('HTTP/1.1 301 Moved Permanently');
 | 
      
      
        | 76 | 
        
         | 
        
         | 
        		}
  | 
      
      
        | 77 | 
        
            698
         | 
        
            thorn
         | 
        		if($target_page_id == -1) {
 | 
      
      
        | 78 | 
        
         | 
        
         | 
        			if($extern!='') {
 | 
      
      
        | 79 | 
        
            699
         | 
        
            thorn
         | 
        				header("Location: $extern".($anchor?'#'.$anchor:''));
 | 
      
      
        | 80 | 
        
            698
         | 
        
            thorn
         | 
        			}
  | 
      
      
        | 81 | 
        
         | 
        
         | 
        		} else {
 | 
      
      
        | 82 | 
        
         | 
        
         | 
        			// get link of target-page
  | 
      
      
        | 83 | 
        
         | 
        
         | 
        			$table = TABLE_PREFIX.'pages';
  | 
      
      
        | 84 | 
        
         | 
        
         | 
        			$query_link = $database->query("SELECT link FROM $table WHERE page_id = '$target_page_id'");
 | 
      
      
        | 85 | 
        
         | 
        
         | 
        			if($query_link->numRows() == 1) {
 | 
      
      
        | 86 | 
        
         | 
        
         | 
        				$res=$query_link->fetchRow();
  | 
      
      
        | 87 | 
        
         | 
        
         | 
        				$target_page_link = $res['link'];
  | 
      
      
        | 88 | 
        
         | 
        
         | 
        				header('Location: '.WB_URL.PAGES_DIRECTORY.$target_page_link.PAGE_EXTENSION.($anchor?'#'.$anchor:''));
 | 
      
      
        | 89 | 
        
         | 
        
         | 
        				exit;
  | 
      
      
        | 90 | 
        
         | 
        
         | 
        			}
  | 
      
      
        | 91 | 
        
            543
         | 
        
            thorn
         | 
        		}
  | 
      
      
        | 92 | 
        
         | 
        
         | 
        	}
  | 
      
      
        | 93 | 
        
         | 
        
         | 
        }
  | 
      
      
        | 94 | 
        
         | 
        
         | 
        
  | 
      
      
        | 95 | 
        
            989
         | 
        
            aldus
         | 
        // Backwards compatible Frontend filter support
  | 
      
      
        | 96 | 
        
         | 
        
         | 
        // include the output filter module routines
  | 
      
      
        | 97 | 
        
         | 
        
         | 
        if(file_exists(WB_PATH .'/modules/output_filter/filter-routines.php')) {@require_once(WB_PATH .'/modules/output_filter/filter-routines.php');}
 | 
      
      
        | 98 | 
        
         | 
        
         | 
        // Load Droplet engine
  | 
      
      
        | 99 | 
        
         | 
        
         | 
        if(file_exists(WB_PATH .'/modules/droplets/droplets.php')) { @require_once(WB_PATH .'/modules/droplets/droplets.php'); }
 | 
      
      
        | 100 | 
        
            673
         | 
        
            doc
         | 
        
  | 
      
      
        | 101 | 
        
            989
         | 
        
            aldus
         | 
        //Get pagecontent in buffer for Droplets and/or Filter operations
  | 
      
      
        | 102 | 
        
         | 
        
         | 
        ob_start();
  | 
      
      
        | 103 | 
        
            238
         | 
        
            stefan
         | 
        require(WB_PATH.'/templates/'.TEMPLATE.'/index.php');
  | 
      
      
        | 104 | 
        
            989
         | 
        
            aldus
         | 
        $output = ob_get_contents();
  | 
      
      
        | 105 | 
        
            1289
         | 
        
            kweitzel
         | 
        if (ob_get_length() > 0) ob_end_clean();
  | 
      
      
        | 106 | 
        
            238
         | 
        
            stefan
         | 
        
  | 
      
      
        | 107 | 
        
            989
         | 
        
            aldus
         | 
        if(function_exists('evalDroplets')) { $output = evalDroplets($output); }
 | 
      
      
        | 108 | 
        
         | 
        
         | 
        if(function_exists('filter_frontend_output')) { $output = filter_frontend_output($output); }
 | 
      
      
        | 109 | 
        
         | 
        
         | 
        echo $output;
  | 
      
      
        | 110 | 
        
         | 
        
         | 
        
  | 
      
      
        | 111 | 
        
            699
         | 
        
            thorn
         | 
        ?>
  |