2010-03-10 15:03:40 +03:00
|
|
|
<?php
|
|
|
|
/**
|
2011-04-15 21: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 15:03:40 +03:00
|
|
|
|
2011-07-27 21: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 15:03:40 +03:00
|
|
|
|
|
|
|
// set some stuff
|
2011-04-15 19:14:02 +04:00
|
|
|
//ob_start();
|
2011-04-16 22:07:57 +04:00
|
|
|
error_reporting(E_ALL | E_STRICT);
|
2010-06-29 16:53:54 +04:00
|
|
|
|
2010-03-10 15:03:40 +03:00
|
|
|
date_default_timezone_set('Europe/Berlin');
|
|
|
|
ini_set('arg_separator.output','&');
|
|
|
|
ini_set('session.cookie_httponly','1;');
|
|
|
|
session_start();
|
2011-04-15 19:14:02 +04:00
|
|
|
|
2010-03-16 10:48:36 +03:00
|
|
|
// calculate the documentroot
|
2011-03-02 01:20:16 +03:00
|
|
|
$SERVERROOT=substr(__FILE__,0,-13);
|
2010-06-27 20:09:59 +04:00
|
|
|
$DOCUMENTROOT=realpath($_SERVER['DOCUMENT_ROOT']);
|
2010-04-30 17:32:22 +04:00
|
|
|
$SERVERROOT=str_replace("\\",'/',$SERVERROOT);
|
2010-06-27 20:09:59 +04:00
|
|
|
$SUBURI=substr(realpath($_SERVER["SCRIPT_FILENAME"]),strlen($SERVERROOT));
|
2011-06-26 02: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-27 02:16:09 +04:00
|
|
|
|
2010-06-27 20:09:59 +04:00
|
|
|
|
2010-07-29 00:45:24 +04:00
|
|
|
|
2010-06-27 02:16:09 +04:00
|
|
|
if($WEBROOT!='' and $WEBROOT[0]!=='/'){
|
2010-04-19 21:46:42 +04:00
|
|
|
$WEBROOT='/'.$WEBROOT;
|
|
|
|
}
|
2010-03-16 10:48:36 +03:00
|
|
|
|
|
|
|
// set the right include path
|
2011-04-16 12: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 10:48:36 +03:00
|
|
|
|
2011-03-03 00:18:22 +03:00
|
|
|
// define runtime variables - unless this already has been done
|
|
|
|
if( !isset( $RUNTIME_NOSETUPFS )){
|
|
|
|
$RUNTIME_NOSETUPFS = false;
|
|
|
|
}
|
2011-04-16 13:11:16 +04:00
|
|
|
if( !isset( $RUNTIME_NOAPPS )){
|
|
|
|
$RUNTIME_NOAPPS = false;
|
|
|
|
}
|
2011-03-03 00:18:22 +03:00
|
|
|
|
2011-04-16 14: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 15:03:40 +03:00
|
|
|
// redirect to https site if configured
|
2011-04-16 14:18:42 +04:00
|
|
|
if( OC_CONFIG::getValue( "forcessl", false )){
|
2011-03-02 01:20:16 +03:00
|
|
|
if(!isset($_SERVER['HTTPS']) or $_SERVER['HTTPS'] != 'on') {
|
|
|
|
$url = "https://". $_SERVER['SERVER_NAME'] . $_SERVER['REQUEST_URI'];
|
|
|
|
header("Location: $url");
|
2011-04-16 14:18:42 +04:00
|
|
|
exit();
|
2011-03-02 01:20:16 +03:00
|
|
|
}
|
2010-03-10 15:03:40 +03:00
|
|
|
}
|
|
|
|
|
2011-04-16 17:47:27 +04:00
|
|
|
$error=(count(OC_UTIL::checkServer())>0);
|
|
|
|
|
2011-06-21 21:28:46 +04:00
|
|
|
OC_USER::useBackend( OC_CONFIG::getValue( "userbackend", "database" ));
|
2011-04-16 14:18:42 +04:00
|
|
|
OC_GROUP::setBackend( OC_CONFIG::getValue( "groupbackend", "database" ));
|
2010-08-03 19:43:54 +04:00
|
|
|
|
2011-03-03 00:18:22 +03:00
|
|
|
// Set up file system unless forbidden
|
2011-04-16 17:47:27 +04:00
|
|
|
if(!$error and !$RUNTIME_NOSETUPFS ){
|
2011-03-03 00:18:22 +03:00
|
|
|
OC_UTIL::setupFS();
|
|
|
|
}
|
2010-03-10 15:03:40 +03:00
|
|
|
|
2011-03-03 00:18:22 +03:00
|
|
|
// Add the stuff we need always
|
2011-07-26 01:16:05 +04:00
|
|
|
OC_UTIL::addScript( "jquery-1.6.2.min" );
|
|
|
|
OC_UTIL::addScript( "jquery-ui-1.8.14.custom.min" );
|
2011-03-03 00:18:22 +03:00
|
|
|
OC_UTIL::addScript( "js" );
|
2011-07-26 01:16:05 +04:00
|
|
|
OC_UTIL::addStyle( "jquery-ui-1.8.14.custom" );
|
2011-03-03 00:18:22 +03:00
|
|
|
OC_UTIL::addStyle( "styles" );
|
2011-04-16 13:11:16 +04:00
|
|
|
|
2011-03-04 01:08:11 +03:00
|
|
|
// Load Apps
|
2011-04-16 17:47:27 +04:00
|
|
|
if(!$error and !$RUNTIME_NOAPPS ){
|
2011-04-16 13:11:16 +04:00
|
|
|
OC_APP::loadApps();
|
|
|
|
}
|
2010-03-10 15:03:40 +03:00
|
|
|
|
2011-03-29 22:21:00 +04:00
|
|
|
|
2010-06-27 02:16:09 +04:00
|
|
|
?>
|