0byt3m1n1
Path:
/
data
/
applications
/
aps.bak
/
phprojekt
/
6.0.6-0
/
standard
/
htdocs
/
library
/
Phprojekt
/
Tab
/
[
Home
]
File: Tab.php
<?php /** * Tab model class. * * This software is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License version 3 as published by the Free Software Foundation * * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Lesser General Public License for more details. * * @category PHProjekt * @package Phprojekt * @subpackage Tab * @copyright Copyright (c) 2010 Mayflower GmbH (http://www.mayflower.de) * @license LGPL v3 (See LICENSE file) * @link http://www.phprojekt.com * @since File available since Release 6.0 * @version Release: 6.0.6 * @author Gustavo Solt <solt@mayflower.de> */ /** * Tab model class. * * @category PHProjekt * @package Phprojekt * @subpackage Tab * @copyright Copyright (c) 2010 Mayflower GmbH (http://www.mayflower.de) * @license LGPL v3 (See LICENSE file) * @link http://www.phprojekt.com * @since File available since Release 6.0 * @version Release: 6.0.6 * @author Gustavo Solt <solt@mayflower.de> */ class Phprojekt_Tab_Tab extends Phprojekt_ActiveRecord_Abstract implements Phprojekt_Model_Interface { /** * The standard information manager with hardcoded field definitions. * * @var Phprojekt_ModelInformation_Interface */ protected $_informationManager; /** * Validate object. * * @var Phprojekt_Model_Validate */ protected $_validate = null; /** * Initialize new tab. * * @param array $db Configuration for Zend_Db_Table. * * @return void */ public function __construct($db = null) { if (null === $db) { $db = Phprojekt::getInstance()->getDb(); } parent::__construct($db); $this->_validate = Phprojekt_Loader::getLibraryClass('Phprojekt_Model_Validate'); $this->_informationManager = Phprojekt_Loader::getLibraryClass('Phprojekt_Tab_Information'); } /** * Define the clone function for prevent the same point to same object. * * @return void */ public function __clone() { parent::__clone(); $this->_validate = Phprojekt_Loader::getLibraryClass('Phprojekt_Model_Validate'); $this->_informationManager = Phprojekt_Loader::getLibraryClass('Phprojekt_Tab_Information'); } /** * Get the information manager. * * @see Phprojekt_Model_Interface::getInformation() * * @return Phprojekt_ModelInformation_Interface An instance of Phprojekt_ModelInformation_Interface. */ public function getInformation() { return $this->_informationManager; } /** * Save the rigths. * * @return void */ public function saveRights() { } /** * Validate the current record. * * @return boolean True for valid. */ public function recordValidate() { $data = $this->_data; $fields = $this->_informationManager->getFieldDefinition(Phprojekt_ModelInformation_Default::ORDERING_FORM); return $this->_validate->recordValidate($this, $data, $fields); } /** * Return the error data. * * @return array Array with errors. */ public function getError() { return (array) $this->_validate->error->getError(); } /** * Delete a Tab. * It prevents deletion of Tab 1 -Basic Data-. * * @return void */ public function delete() { if ($this->id > 1) { parent::delete(); } } /** * Function to print this class. * * @return string Empty string. */ public function __toString() { return ''; } }