Files
spa-api/system/package.php

42 lines
727 B
PHP
Raw Normal View History

2011-08-02 22:07:40 -05:00
<?php namespace System;
class Package {
/**
* All of the loaded packages.
*
* @var array
*/
public static $loaded = array();
/**
* Load a package or set of packages.
*
2011-08-02 22:40:12 -05:00
* @param string|array $packages
2011-08-02 22:07:40 -05:00
* @return void
*/
2011-08-02 22:40:12 -05:00
public static function load($packages)
2011-08-02 22:07:40 -05:00
{
2011-08-02 22:40:12 -05:00
foreach ((array) $packages as $package)
2011-08-02 22:07:40 -05:00
{
2011-08-08 14:29:19 -05:00
if ( ! static::loaded($package) and file_exists($bootstrap = PACKAGE_PATH.$package.'/bootstrap'.EXT))
2011-08-08 14:28:38 -05:00
{
2011-08-08 14:29:19 -05:00
require $bootstrap;
2011-08-08 14:28:38 -05:00
}
2011-08-02 22:29:48 -05:00
2011-08-08 14:28:38 -05:00
static::$loaded[] = $package;
2011-08-02 22:07:40 -05:00
}
}
2011-08-08 09:21:56 -05:00
/**
* Determine if a given package has been loaded.
*
* @param string $package
* @return bool
*/
public static function loaded($package)
{
return array_key_exists($package, static::$loaded);
}
2011-08-02 22:07:40 -05:00
}