Files
bm/public_html/public/cms/modules/_buildingblockfactory.class.php
2025-09-24 13:26:28 +02:00

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);
}
}
};
?>