55 lines
1.8 KiB
PHP
55 lines
1.8 KiB
PHP
<?php
|
|
require_once(ROOT."include/config.inc.php");
|
|
require_once(CMS_DIR."modules/_buildingblock.class.php");
|
|
require_once(CMS_DIR."modules/textblock.class.php");
|
|
require_once(CMS_DIR."modules/headingblock.class.php");
|
|
require_once(CMS_DIR."modules/htmlblock.class.php");
|
|
require_once(CMS_DIR."modules/fileblock.class.php");
|
|
require_once(CMS_DIR."modules/imageblock.class.php");
|
|
require_once(CMS_DIR."modules/galleryblock.class.php");
|
|
require_once(CMS_DIR."modules/alternatingimageblock.class.php");
|
|
require_once(CMS_DIR."modules/videoblock.class.php");
|
|
require_once(CMS_DIR."modules/audioblock.class.php");
|
|
require_once(CMS_DIR."modules/attendanceblock.class.php");
|
|
require_once(CMS_DIR."modules/textimageblock.class.php");
|
|
|
|
/** Building Block Factory
|
|
* factory class to produce instances of building blocks
|
|
*
|
|
* @version 1.0.0
|
|
* @since 2007-05-30
|
|
* @author martin lenzelbauer
|
|
*
|
|
*/
|
|
class BuildingBlockFactory{
|
|
|
|
|
|
/** returns an instance of a building block
|
|
* @param reference comma separated class name and id
|
|
*/
|
|
//---------------------------------------
|
|
function instance($reference){
|
|
//---------------------------------------
|
|
$block = explode(",", $reference);
|
|
$class = $block[0];
|
|
$id = $block[1];
|
|
switch($class){
|
|
case "alternatingimageblock": return new AlternatingImageBlock($id);
|
|
case "audioblock": return new AudioBlock($id);
|
|
case "fileblock": return new FileBlock($id);
|
|
case "galleryblock": return new GalleryBlock($id);
|
|
case "headingblock": return new HeadingBlock($id);
|
|
case "htmlblock": return new HtmlBlock($id);
|
|
case "textblock": return new TextBlock($id);
|
|
case "imageblock": return new ImageBlock($id);
|
|
case "textimageblock": return new TextImageBlock($id);
|
|
case "videoblock": return new VideoBlock($id);
|
|
case "attendanceblock": return new AttendanceBlock($id);
|
|
}
|
|
}
|
|
|
|
|
|
|
|
};
|
|
|
|
?>
|