nc-vue-register/tests/autoloader.php

52 lines
1.5 KiB
PHP

<?php
/**
* ownCloud - registration
*
* This file is licensed under the Affero General Public License version 3 or
* later. See the COPYING file.
*
* @author Pellaeon Lin <pellaeon@hs.ntnu.edu.tw>
* @copyright Pellaeon Lin 2014
*/
require_once __DIR__ . '/../../../3rdparty/Pimple/Pimple.php';
class OC {
public static $server;
public static $session;
}
// to execute without owncloud, we need to create our own classloader
spl_autoload_register(function ($className){
if (strpos($className, 'OCA\\') === 0) {
$path = strtolower(str_replace('\\', '/', substr($className, 3)) . '.php');
$relPath = __DIR__ . '/../..' . $path;
if(file_exists($relPath)){
require_once $relPath;
}
} else if(strpos($className, 'OCP\\') === 0) {
$path = strtolower(str_replace('\\', '/', substr($className, 3)) . '.php');
$relPath = __DIR__ . '/../../../lib/public' . $path;
if(file_exists($relPath)){
require_once $relPath;
}
} else if(strpos($className, 'OC_') === 0) {
$path = strtolower(str_replace('\\', '/', substr($className, 3)) . '.php');
$relPath = __DIR__ . '/../../../lib/private/' . $path;
if(file_exists($relPath)){
require_once $relPath;
}
} else if(strpos($className, 'OC\\') === 0) {
$path = strtolower(str_replace('\\', '/', substr($className, 2)) . '.php');
$relPath = __DIR__ . '/../../../lib/private' . $path;
if(file_exists($relPath)){
require_once $relPath;
}
}
});