<?php /********************************************************************************* * * TimeTrex is a Workforce Management program developed by * TimeTrex Software Inc. Copyright (C) 2003 - 2021 TimeTrex Software Inc. * * This program is free software; you can redistribute it and/or modify it under * the terms of the GNU Affero 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 TIMETREX, TIMETREX 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 Affero General Public License for more * details. * * * You should have received a copy of the GNU Affero 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 TimeTrex headquarters at Unit 22 - 2475 Dobbin Rd. Suite * #292 West Kelowna, BC V4T 2E9, Canada or at email address info@timetrex.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 Affero General Public License version 3. * * * In accordance with Section 7(b) of the GNU Affero General Public License * version 3, these Appropriate Legal Notices must retain the display of the * "Powered by TimeTrex" logo. If the display of the logo is not reasonably * feasible for technical reasons, the Appropriate Legal Notices must display * the words "Powered by TimeTrex". * ********************************************************************************/ /* This files only purpose is to confirm we are running PHP5, and that the templates_c directory is writable so we can forward the user to License.php */ echo "<html><body>"; echo "Checking pre-flight requirements... "; echo " 1..."; ini_set( 'display_errors', 1 ); //Try to display any errors that may arise on this page. ini_set( 'default_socket_timeout', 5 ); ini_set( 'allow_url_fopen', 1 ); echo " 2..."; if ( isset( $_GET['external_installer'] ) ) { $external_installer = (int)$_GET['external_installer']; } else { $external_installer = 0; } echo " 3..."; //$templates_c_dir = dirname(__FILE__) . DIRECTORY_SEPARATOR .'..'. DIRECTORY_SEPARATOR .'..'. DIRECTORY_SEPARATOR .'templates_c'; echo " 4..."; $redir = true; if ( version_compare( PHP_VERSION, '8.0.0', '<' ) == 1 ) { //Also update CLI.inc.php for the minimum PHP version. echo "You are currently using PHP v<b>" . PHP_VERSION . "</b> TimeTrex requires PHP <b>v8.0</b> or greater!<br><br>\n"; $redir = false; } if ( version_compare( PHP_VERSION, '8.1.99', '>' ) == 1 ) { echo "You are currently using PHP v<b>" . PHP_VERSION . "</b> TimeTrex requires PHP <b>v8.1.x</b> or earlier!<br><br>\n"; $redir = false; } echo " 5..."; //if ( !is_writeable($templates_c_dir) ) { // echo "<b>". $templates_c_dir ."</b> is NOT writable by your web server! For help on this topic click <a href='https://forums.timetrex.com/viewtopic.php?t=66'>here</a>.<br><br>\n"; // $redir = FALSE; //} echo " 6..."; //These are all extensions required to even initialize the HTML5 interface. //if ( extension_loaded( 'intl' ) == FALSE ) { // echo "PHP INTL extension is not installed, TimeTrex requires INTL to be installed.<br><br>\n"; // $redir = FALSE; //} if ( extension_loaded( 'gettext' ) == false ) { echo "PHP GetText extension is not installed, TimeTrex requires GetText to be installed.<br><br>\n"; $redir = false; } if ( extension_loaded( 'mbstring' ) == false ) { echo "PHP MBSTRING extension is not installed, TimeTrex requires MBSTRING to be installed.<br><br>\n"; $redir = false; } if ( extension_loaded( 'json' ) == false ) { echo "PHP JSON extension is not installed, TimeTrex requires JSON to be installed.<br><br>\n"; $redir = false; } echo " 7..."; //$test_template_c_sub_dir = $templates_c_dir . DIRECTORY_SEPARATOR . uniqid(); //if ( @mkdir( $test_template_c_sub_dir ) !== TRUE ) { // //If SELinux is installed, could try: chcon -t httpd_sys_content_t storage // echo "Your web server is unable to create directories inside of: <b>". $templates_c_dir ."</b>, please give your webserver write permissions to this directory. For help on this topic click <a href='https://forums.timetrex.com/viewtopic.php?t=66'>here</a>.<br><br>\n"; // $redir = FALSE; //} //echo " 8..."; //@rmdir( $test_template_c_sub_dir ); //unset($test_template_c_sub_dir); echo " 9..."; @file_get_contents( 'http://www.timetrex.com/pre_install.php?os=' . PHP_OS . '&php_version=' . PHP_VERSION . '&redir=' . (int)$redir . '&web_server=' . urlencode( substr( $_SERVER['SERVER_SOFTWARE'], 0, 20 ) ) . '&external_installer=' . $external_installer . '&url=' . urlencode( $_SERVER['HTTP_HOST'] . ':' . $_SERVER['SERVER_PORT'] . $_SERVER['REQUEST_URI'] ), 'r' ); echo " 10..."; if ( $redir == true ) { echo " PASSED!<br><br>\n"; echo "Please wait while we automatically redirect you to the <a href='License.php?external_installer=" . $external_installer . "'>installer</a>."; //echo "<meta http-equiv='refresh' content='0;url=License.php?external_installer=". $external_installer ."'>"; echo "<meta http-equiv='refresh' content='0;url=../html5/index.php?installer=1&disable_db=1&external_installer=" . $external_installer . "#!m=Install&a=license&external_installer=" . $external_installer . "'>"; } else { echo " FAILED!<br><br>\n"; echo "For installation support, please join our community <a href=\"https://forums.timetrex.com\" target=\"_blank\">forums</a> or contact a TimeTrex support expert for <a href=\"https://www.timetrex.com/setup_support.php\" target=\"_blank\">Implementation Support Services</a>. <br>\n"; } echo "</body></html>"; ?>