Location: PHPKode > projects > TEMS -Time and Expense Management System > tems/baseclass/RenderPage.php
<?php

/* * *******************************************************************************
 * TES is a Time and Expense Management program developed by
 * Initechs, LLC. Copyright (C) 2009 - 2010 Initechs LLC.
 *
 * This program is free software; you can redistribute it and/or modify it under
 * the terms of the GNU General Public License version 3 as published by the
 * Free Software Foundation with the addition of the following permission added
 * to Section 15 as permitted in Section 7(a): FOR ANY PART OF THE COVERED WORK
 * IN WHICH THE COPYRIGHT IS OWNED BY INITECHS, INITECHS DISCLAIMS THE WARRANTY
 * OF NON INFRINGEMENT OF THIRD PARTY RIGHTS.
 *
 * This program is distributed in the hope that it will be useful, but WITHOUT
 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
 * FOR A PARTICULAR PURPOSE.  See the GNU General Public License for more
 * details.
 *
 * You should have received a copy of the GNU General Public License along with
 * this program; if not, see http://www.gnu.org/licenses or write to the Free
 * Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
 * 02110-1301 USA.
 *
 * You can contact Initechs headquarters at 1841 Piedmont Road, Suite 301,
 * Marietta, GA, USA. or at email address hide@address.com
 *
 * The interactive user interfaces in modified source and object code versions
 * of this program must display Appropriate Legal Notices, as required under
 * Section 5 of the GNU General Public License version 3.
 *
 * In accordance with Section 7(b) of the GNU General Public License version 3,
 * these Appropriate Legal Notices must retain the display od the "Initechs" logo.
 * If the display of the logo is not reasonably feasible for technical reasons,
 * the Appropriate Legal Notices must display the words "Powered by Initechs".

 * ****************************************************************************** */


$basedir = dirname(__FILE__) . './..';
require_once("$basedir/baseclass/RequestHandler.php");
require_once("$basedir/baseclass/PageController.php");
require_once("$basedir/systemconfig/getup.php");

class LogoutPage extends RequestHandler {

    public function __construct() {
        
    }

// To prevent $_SESSION variables reset.

    public function showLogoutLink() {
        global $ini_array;

        $db_server = $ini_array['database']['db_server'];
        $db_user = $ini_array['database']['db_user'];
        $db_password = $ini_array['database']['db_password'];
        $db_database = $ini_array['database']['db_database'];

        $logoutScript = '';
        $script = '';
        $str = '';

        $gotoInstall = "install/InstallPage.php?module=install&action=Create";

        if (!$db_server)
        {
            $this->redirectToPage($gotoInstall);
            exit();
        }
        
        $conn = mysql_connect($db_server, $db_user, $db_password);
        if (!$conn)
        {
            $this->redirectToPage($gotoInstall);
            unset($conn);
            exit();
        }

        $sql = "show tables from $db_database";
        $result = mysql_query($sql, $conn);
        if (!$result) {
            $this->redirectToPage($gotoInstall);
            mysql_close($conn);
            unset($conn);
            exit();
        }

        $notProperDB = true;
        while (($tableName = mysql_fetch_row($result)) == true) {
              if (strtolower($tableName[0]) == 'users') {
                  $notProperDB = false;
                  break;
              }
        }

        if ($notProperDB) {
            $this->redirectToPage($gotoInstall);
            mysql_close($conn);
            unset($conn);
            exit();
        }

        $db_selected = mysql_select_db($db_database, $conn);
        if (!$db_selected) {
            $this->redirectToPage($gotoInstall);
            mysql_close($conn);
            unset($conn);
            exit();
        }

        mysql_close($conn);
        unset($conn);

        $script = "document.forms.users_Login_Form.users_id.focus()";
        
        if (isUserRegistered ()) 
        {
            $logoutScript = ChangeLiteral('Welcome') 
                            . ", <b>{$_SESSION['fullname']}</b> [<a href='auth/Logout.php'>"
                            . ChangeLiteral('Logout') ."</a>]";
        }

        $str .= $logoutScript;
        $str .= "\n<script type='text/javascript'>";
        $str .= "\nfunction onloadFunc() {";
        $str .= "\n$script";
        $str .= "\n}";
        $str .= "\n</script>";
        return $str;
    }

}

class mainBody extends PageController {

    public function __construct() {
        
    }

// This construct is defined to override the PageSection's (base class) construct.

    public function buildBody() {
        if (!isUserRegistered()) {
            $str = $this->BuildUIPage('users', 'Login', 'noheading');
            unset($_SESSION['error']);
            unset($_SESSION['message']);
            return $str;
        }

        if (!isset($_GET['module'])
                or !isset($_GET['action'])) {
            $page = new GetupPage();
            $str = $page->generateBodyContent();
            unset($_SESSION['error']);
            unset($_SESSION['message']);
            return $str;
        }

        $auth = new userauthorization();

        if (!$auth->isauthorized_module_action_level($_GET['module'], $_GET['action']))
            return getMessage('er0078');

        $_SESSION['module'] = $_GET['module'];
        $_SESSION['action'] = $_GET['action'];

        return $this->BuildUIPage($_GET['module'], $_GET['action']);
    }

    public function InstallDatabasePage() {
        $_SESSION['module'] = $_GET['module'];
        $_SESSION['action'] = $_GET['action'];

        return $this->BuildUIPage($_GET['module'], $_GET['action']);
    }

}

?>
Return current item: TEMS -Time and Expense Management System