1: <?php
2: 3: 4: 5: 6: 7: 8: 9:
10:
11: if (!defined('XOOPS_ROOT_PATH')) exit();
12:
13: class LegacyNewblocksObject extends XoopsSimpleObject
14: {
15: var $mModule = null;
16:
17: 18: 19: 20:
21: var $mGroup = array();
22:
23: var $mBmodule = array();
24:
25: var $mColumn = null;
26:
27: var $mCachetime = null;
28:
29: function LegacyNewblocksObject()
30: {
31: static $initVars;
32: if (isset($initVars)) {
33: $this->mVars = $initVars;
34: return;
35: }
36: $this->initVar('bid', XOBJ_DTYPE_INT, '0', true);
37: $this->initVar('mid', XOBJ_DTYPE_INT, '0', true);
38: $this->initVar('func_num', XOBJ_DTYPE_INT, '0', true);
39: $this->initVar('options', XOBJ_DTYPE_STRING, '', true, 255);
40: $this->initVar('name', XOBJ_DTYPE_STRING, '', true, 150);
41: $this->initVar('title', XOBJ_DTYPE_STRING, '', true, 255);
42: $this->initVar('content', XOBJ_DTYPE_TEXT, '', true);
43: $this->initVar('side', XOBJ_DTYPE_INT, '0', true);
44: $this->initVar('weight', XOBJ_DTYPE_INT, '0', true);
45: $this->initVar('visible', XOBJ_DTYPE_BOOL, '0', true);
46: $this->initVar('block_type', XOBJ_DTYPE_STRING, '', true, 1);
47: $this->initVar('c_type', XOBJ_DTYPE_STRING, '', true, 1);
48: $this->initVar('isactive', XOBJ_DTYPE_BOOL, '0', true);
49: $this->initVar('dirname', XOBJ_DTYPE_STRING, '', true, 50);
50: $this->initVar('func_file', XOBJ_DTYPE_STRING, '', true, 50);
51: $this->initVar('show_func', XOBJ_DTYPE_STRING, '', true, 50);
52: $this->initVar('edit_func', XOBJ_DTYPE_STRING, '', true, 50);
53: $this->initVar('template', XOBJ_DTYPE_STRING, '', true, 50);
54: $this->initVar('bcachetime', XOBJ_DTYPE_INT, '0', true);
55: $this->initVar('last_modified', XOBJ_DTYPE_INT, time(), true);
56: $initVars = $this->mVars;
57: }
58:
59: function loadModule()
60: {
61: $handler =& xoops_gethandler('module');
62: $this->mModule =& $handler->get($this->get('mid'));
63: }
64:
65: 66: 67: 68: 69:
70: function loadGroup()
71: {
72: $handler =& xoops_gethandler('groupperm');
73: $criteria =new CriteriaCompo();
74: $criteria->add(new Criteria('gperm_modid', 1));
75: $criteria->add(new Criteria('gperm_itemid', $this->get('bid')));
76: $criteria->add(new Criteria('gperm_name', 'block_read'));
77:
78: $gpermArr =& $handler->getObjects($criteria);
79:
80: $handler =& xoops_gethandler('group');
81: foreach ($gpermArr as $gperm) {
82: $this->mGroup[] =& $handler->get($gperm->get('gperm_groupid'));
83: }
84: }
85:
86: function loadBmodule()
87: {
88: $handler =& xoops_getmodulehandler('block_module_link', 'legacy');
89: $criteria =new Criteria('block_id', $this->get('bid'));
90:
91: $this->mBmodule =& $handler->getObjects($criteria);
92: }
93:
94: function loadColumn()
95: {
96: $handler =& xoops_getmodulehandler('columnside', 'legacy');
97: $this->mColumn =& $handler->get($this->get('side'));
98: }
99:
100: function loadCachetime()
101: {
102: $handler =& xoops_gethandler('cachetime');
103: $this->mCachetime =& $handler->get($this->get('bcachetime'));
104: }
105: }
106:
107: class LegacyNewblocksHandler extends XoopsObjectGenericHandler
108: {
109: var $mTable = "newblocks";
110: var $mPrimary = "bid";
111: var $mClass = "LegacyNewblocksObject";
112:
113: function delete(&$obj, $force = false)
114: {
115: if (parent::delete($obj, $force)) {
116:
117:
118:
119: $handler =& xoops_getmodulehandler('block_module_link', 'legacy');
120: $handler->deleteAll(new Criteria('block_id'), $obj->get('bid'));
121:
122:
123:
124:
125: $handler =& xoops_gethandler('groupperm');
126:
127: $criteria =new CriteriaCompo();
128: $criteria->add(new Criteria('gperm_modid', 1));
129: $criteria->add(new Criteria('gperm_itemid', $obj->get('bid')));
130: $criteria->add(new Criteria('gperm_name', 'block_read'));
131:
132: $handler->deleteAll($criteria);
133:
134: return true;
135: }
136: else {
137: return false;
138: }
139: }
140: }
141:
142: ?>
143: