openrat-cms

Unnamed repository; edit this file 'description' to name the repository.
Log | Files | Refs | README

Url.class.php (2093B)


      1 <?php
      2 namespace cms\model;
      3 
      4 use cms\base\DB as Db;
      5 
      6 /**
      7  * Darstellen einer URL. An URL points to an string-based URL.
      8  *
      9  * @author Jan Dankert
     10  * @package openrat.objects
     11  */
     12 class Url extends BaseObject
     13 {
     14 	public $urlid;
     15 	public $url    = '';
     16 
     17 	function __construct( $objectid='' )
     18 	{
     19 		parent::__construct( $objectid );
     20 		$this->isUrl = true;
     21 		$this->typeid = BaseObject::TYPEID_URL;
     22 	}
     23 	
     24 
     25 	// Lesen der Verkn�pfung aus der Datenbank
     26 	function load()
     27 	{
     28 		$db = Db::get();
     29 
     30 		$sql = $db->sql( 'SELECT *'.
     31 		                ' FROM {{url}}'.
     32 		                ' WHERE objectid={objectid}' );
     33 		$sql->setInt( 'objectid',$this->objectid );
     34 		$row = $sql->getRow();
     35 
     36 		if	( count($row ) != 0 )
     37 		{
     38 			$this->url            = $row['url'];
     39 		}
     40 		
     41 		$this->objectLoad();
     42 	}
     43 
     44 
     45     /**
     46      * Löschen.
     47      */
     48     function delete()
     49 	{
     50 		$db = Db::get();
     51 
     52 		$sql = $db->sql( 'DELETE FROM {{url}} '.
     53 		                ' WHERE objectid={objectid}' );
     54 		$sql->setInt( 'objectid',$this->objectid );
     55 		
     56 		$sql->execute();
     57 
     58 		parent::delete();
     59 	}
     60 
     61 
     62 
     63 	public function save()
     64 	{
     65 		$db = Db::get();
     66 		
     67 		$sql = $db->sql('UPDATE {{url}} SET '.
     68 		               '  url           = {url}'.
     69 		                ' WHERE objectid={objectid}' );
     70 		$sql->setInt   ('objectid'    ,$this->objectid );
     71         $sql->setString('url',$this->url );
     72 
     73 		$sql->execute();
     74 
     75 		parent::save();
     76 	}
     77 
     78 
     79 	function getProperties()
     80 	{
     81 		return array_merge( parent::getProperties(),
     82 		                    Array( 'objectid'       =>$this->objectid,
     83 		                           'url'            =>$this->url
     84                             ) );
     85 	}
     86 
     87 
     88 	function getType()
     89 	{
     90 		return 'url';
     91 	}
     92 
     93 
     94 	function add()
     95 	{
     96 		parent::add();
     97 
     98 		$sql = Db::sql('SELECT MAX(id) FROM {{url}}');
     99 		$this->urlid = intval($sql->getOne())+1;
    100 
    101 		$sql = Db::sql('INSERT INTO {{url}}'.
    102 		               ' (id,objectid,url)'.
    103 		               ' VALUES( {urlid},{objectid},{url} )' );
    104 		$sql->setInt   ('urlid'      ,$this->urlid         );
    105 		$sql->setInt   ('objectid'    ,$this->objectid       );
    106 
    107 		$sql->setString('url',$this->url );
    108 
    109 		$sql->execute();
    110 	}	
    111 }