1<?php
2
3/**
4 * Temporary autoloader to ensure compatibility with old, non-PSR-2 compliant classes.
5 *
6 * @author Jaime Pérez Crespo <jaime.perez@uninett.no>
7 * @package SimpleSAMLphp
8 */
9
10/**
11 * Autoload function that looks for classes migrated to PSR-2.
12 *
13 * @param string $className Name of the class.
14 */
15function SAML2_autoload($className)
16{
17    // handle classes that have been renamed
18    $renamed = array(
19        'SAML2_Const' => 'SAML2_Constants',
20    );
21    $oldName = $className;
22    if (array_key_exists($className, $renamed)) {
23        $className = $renamed[$className];
24    }
25
26    $file = dirname(__FILE__).'/'.str_replace('_', '/', $className).'.php';
27    if (file_exists($file)) {
28        require_once($file);
29        $newName = '\\'.str_replace('_', '\\', $className);
30        class_alias($newName, $oldName);
31    }
32
33}
34
35spl_autoload_register('SAML2_autoload');
36