1: <?php
2:
3: /**
4: * This file contains the nav main collection and item class.
5: *
6: * @package Core
7: * @subpackage GenericDB_Model
8: * @author Frederic Schneider
9: * @copyright four for business AG <www.4fb.de>
10: * @license http://www.contenido.org/license/LIZENZ.txt
11: * @link http://www.4fb.de
12: * @link http://www.contenido.org
13: */
14:
15: defined('CON_FRAMEWORK') || die('Illegal call: Missing framework initialization - request aborted.');
16:
17: /**
18: * File collection
19: *
20: * @package Core
21: * @subpackage GenericDB_Model
22: */
23: class cApiNavMainCollection extends ItemCollection {
24: /**
25: * Constructor to create an instance of this class.
26: *
27: * @throws cInvalidArgumentException
28: */
29: public function __construct() {
30: global $cfg;
31: parent::__construct($cfg['tab']['nav_main'], 'idnavm');
32: $this->_setItemClass('cApiNavMain');
33: }
34:
35: /**
36: * Create new item with given values.
37: *
38: * @param string $name
39: * @param string $location
40: * @param null $id
41: *
42: * @return cApiNavMain
43: * @throws cDbException
44: * @throws cException
45: * @throws cInvalidArgumentException
46: */
47: public function create($name, $location, $id = null) {
48: $item = $this->createNewItem();
49:
50: if ($id != null) {
51: $item->set('idnavm', $id);
52: }
53:
54: $item->set('name', $name);
55: $item->set('location', $location);
56: $item->store();
57: return $item;
58: }
59: }
60:
61: /**
62: * NavMain item
63: *
64: * @package Core
65: * @subpackage GenericDB_Model
66: */
67: class cApiNavMain extends Item
68: {
69: /**
70: * Constructor to create an instance of this class.
71: *
72: * @param mixed $mId [optional]
73: * Specifies the ID of item to load
74: *
75: * @throws cDbException
76: * @throws cException
77: */
78: public function __construct($mId = false) {
79: global $cfg;
80: parent::__construct($cfg['tab']['nav_main'], 'idnavm');
81: $this->setFilters(array(
82: 'addslashes'
83: ), array(
84: 'stripslashes'
85: ));
86: if ($mId !== false) {
87: $this->loadByPrimaryKey($mId);
88: }
89: }
90: }
91: