2010-03-10 07:03:40 -05:00
|
|
|
<?php
|
|
|
|
|
/**
|
2011-04-15 13:24:23 -04:00
|
|
|
* ownCloud
|
|
|
|
|
*
|
|
|
|
|
* @author Frank Karlitschek
|
|
|
|
|
* @copyright 2010 Frank Karlitschek karlitschek@kde.org
|
|
|
|
|
*
|
|
|
|
|
* This library is free software; you can redistribute it and/or
|
|
|
|
|
* modify it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE
|
|
|
|
|
* License as published by the Free Software Foundation; either
|
|
|
|
|
* version 3 of the License, or any later version.
|
|
|
|
|
*
|
|
|
|
|
* This library 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 library. If not, see <http://www.gnu.org/licenses/>.
|
|
|
|
|
*
|
|
|
|
|
*/
|
2010-03-10 07:03:40 -05:00
|
|
|
|
2011-07-27 13:07:28 -04:00
|
|
|
// Get rid of this stupid require_once OC_...
|
|
|
|
|
function OC_autoload($className) {
|
|
|
|
|
if(strpos($className,'OC_')===0) {
|
|
|
|
|
require_once strtolower(str_replace('_','/',substr($className,3)) . '.php');
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
spl_autoload_register('OC_autoload');
|
2010-03-10 07:03:40 -05:00
|
|
|
|
|
|
|
|
// set some stuff
|
2011-04-15 11:14:02 -04:00
|
|
|
//ob_start();
|
2011-04-16 14:07:57 -04:00
|
|
|
error_reporting(E_ALL | E_STRICT);
|
2010-06-29 08:53:54 -04:00
|
|
|
|
2010-03-10 07:03:40 -05:00
|
|
|
date_default_timezone_set('Europe/Berlin');
|
|
|
|
|
ini_set('arg_separator.output','&');
|
|
|
|
|
ini_set('session.cookie_httponly','1;');
|
|
|
|
|
session_start();
|
2011-04-15 11:14:02 -04:00
|
|
|
|
2010-03-16 03:48:36 -04:00
|
|
|
// calculate the documentroot
|
2011-03-01 17:20:16 -05:00
|
|
|
$SERVERROOT=substr(__FILE__,0,-13);
|
2010-06-27 12:09:59 -04:00
|
|
|
$DOCUMENTROOT=realpath($_SERVER['DOCUMENT_ROOT']);
|
2010-04-30 09:32:22 -04:00
|
|
|
$SERVERROOT=str_replace("\\",'/',$SERVERROOT);
|
2010-06-27 12:09:59 -04:00
|
|
|
$SUBURI=substr(realpath($_SERVER["SCRIPT_FILENAME"]),strlen($SERVERROOT));
|
2011-06-25 18:59:09 -04:00
|
|
|
$scriptName=$_SERVER["SCRIPT_NAME"];
|
|
|
|
|
if(substr($scriptName,-1)=='/'){//if the script isn't a file assume index.php
|
|
|
|
|
$scriptName.='index.php';
|
|
|
|
|
}
|
|
|
|
|
$WEBROOT=substr($scriptName,0,strlen($scriptName)-strlen($SUBURI));
|
2010-06-26 18:16:09 -04:00
|
|
|
|
2010-06-27 12:09:59 -04:00
|
|
|
|
2010-07-28 16:45:24 -04:00
|
|
|
|
2010-06-26 18:16:09 -04:00
|
|
|
if($WEBROOT!='' and $WEBROOT[0]!=='/'){
|
2010-04-19 13:46:42 -04:00
|
|
|
$WEBROOT='/'.$WEBROOT;
|
|
|
|
|
}
|
2010-03-16 03:48:36 -04:00
|
|
|
|
|
|
|
|
// set the right include path
|
2011-04-16 04:12:53 -04:00
|
|
|
set_include_path($SERVERROOT.'/lib'.PATH_SEPARATOR.$SERVERROOT.'/config'.PATH_SEPARATOR.$SERVERROOT.'/3dparty'.PATH_SEPARATOR.get_include_path().PATH_SEPARATOR.$SERVERROOT);
|
2010-03-16 03:48:36 -04:00
|
|
|
|
2011-03-02 16:18:22 -05:00
|
|
|
// define runtime variables - unless this already has been done
|
|
|
|
|
if( !isset( $RUNTIME_NOSETUPFS )){
|
|
|
|
|
$RUNTIME_NOSETUPFS = false;
|
|
|
|
|
}
|
2011-04-16 05:11:16 -04:00
|
|
|
if( !isset( $RUNTIME_NOAPPS )){
|
|
|
|
|
$RUNTIME_NOAPPS = false;
|
|
|
|
|
}
|
2011-03-02 16:18:22 -05:00
|
|
|
|
2011-04-16 06:18:42 -04:00
|
|
|
// TODO: we should get rid of this one, too
|
|
|
|
|
// WARNING: to make everything even more confusing, DATADIRECTORY is a var that
|
|
|
|
|
// changes and DATATIRECTORY_ROOT stays the same, but is set by
|
|
|
|
|
// "datadirectory". Any questions?
|
|
|
|
|
$CONFIG_DATADIRECTORY = OC_CONFIG::getValue( "datadirectory", "$SERVERROOT/data" );
|
|
|
|
|
|
2010-03-10 07:03:40 -05:00
|
|
|
// redirect to https site if configured
|
2011-04-16 06:18:42 -04:00
|
|
|
if( OC_CONFIG::getValue( "forcessl", false )){
|
2011-03-01 17:20:16 -05:00
|
|
|
if(!isset($_SERVER['HTTPS']) or $_SERVER['HTTPS'] != 'on') {
|
|
|
|
|
$url = "https://". $_SERVER['SERVER_NAME'] . $_SERVER['REQUEST_URI'];
|
|
|
|
|
header("Location: $url");
|
2011-04-16 06:18:42 -04:00
|
|
|
exit();
|
2011-03-01 17:20:16 -05:00
|
|
|
}
|
2010-03-10 07:03:40 -05:00
|
|
|
}
|
|
|
|
|
|
2011-04-16 09:47:27 -04:00
|
|
|
$error=(count(OC_UTIL::checkServer())>0);
|
|
|
|
|
|
2011-06-21 13:28:46 -04:00
|
|
|
OC_USER::useBackend( OC_CONFIG::getValue( "userbackend", "database" ));
|
2011-04-16 06:18:42 -04:00
|
|
|
OC_GROUP::setBackend( OC_CONFIG::getValue( "groupbackend", "database" ));
|
2010-08-03 11:43:54 -04:00
|
|
|
|
2011-03-02 16:18:22 -05:00
|
|
|
// Set up file system unless forbidden
|
2011-04-16 09:47:27 -04:00
|
|
|
if(!$error and !$RUNTIME_NOSETUPFS ){
|
2011-03-02 16:18:22 -05:00
|
|
|
OC_UTIL::setupFS();
|
|
|
|
|
}
|
2010-03-10 07:03:40 -05:00
|
|
|
|
2011-03-02 16:18:22 -05:00
|
|
|
// Add the stuff we need always
|
2011-07-25 17:16:05 -04:00
|
|
|
OC_UTIL::addScript( "jquery-1.6.2.min" );
|
|
|
|
|
OC_UTIL::addScript( "jquery-ui-1.8.14.custom.min" );
|
2011-03-02 16:18:22 -05:00
|
|
|
OC_UTIL::addScript( "js" );
|
2011-07-25 17:16:05 -04:00
|
|
|
OC_UTIL::addStyle( "jquery-ui-1.8.14.custom" );
|
2011-03-02 16:18:22 -05:00
|
|
|
OC_UTIL::addStyle( "styles" );
|
2011-04-16 05:11:16 -04:00
|
|
|
|
2011-03-03 17:08:11 -05:00
|
|
|
// Load Apps
|
2011-04-16 09:47:27 -04:00
|
|
|
if(!$error and !$RUNTIME_NOAPPS ){
|
2011-04-16 05:11:16 -04:00
|
|
|
OC_APP::loadApps();
|
|
|
|
|
}
|
2010-03-10 07:03:40 -05:00
|
|
|
|
2011-03-29 14:21:00 -04:00
|
|
|
|
2010-06-26 18:16:09 -04:00
|
|
|
?>
|