ILIAS  release_5-1 Revision 5.0.0-5477-g43f3e3fab5f
class.ilObjComponentSettings.php
Go to the documentation of this file.
1<?php
2/*
3 +-----------------------------------------------------------------------------+
4 | ILIAS open source |
5 +-----------------------------------------------------------------------------+
6 | Copyright (c) 1998-2006 ILIAS open source, University of Cologne |
7 | |
8 | This program is free software; you can redistribute it and/or |
9 | modify it under the terms of the GNU General Public License |
10 | as published by the Free Software Foundation; either version 2 |
11 | of the License, or (at your option) any later version. |
12 | |
13 | This program is distributed in the hope that it will be useful, |
14 | but WITHOUT ANY WARRANTY; without even the implied warranty of |
15 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
16 | GNU General Public License for more details. |
17 | |
18 | You should have received a copy of the GNU General Public License |
19 | along with this program; if not, write to the Free Software |
20 | Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. |
21 +-----------------------------------------------------------------------------+
22*/
23
24require_once "./Services/Object/classes/class.ilObject.php";
25
35{
42 function ilObjComponentSettings($a_id = 0,$a_call_by_reference = true)
43 {
44 $this->type = "cmps";
45 $this->ilObject($a_id,$a_call_by_reference);
46 }
47
54 function update()
55 {
56 global $ilDB;
57
58 if (!parent::update())
59 {
60 return false;
61 }
62
63 return true;
64 }
65
69 function read()
70 {
71 global $ilDB;
72
73 parent::read();
74
75 }
76
83 function delete()
84 {
85 // always call parent delete function first!!
86 if (!parent::delete())
87 {
88 return false;
89 }
90
91 //put here your module specific stuff
92
93 return true;
94 }
95
96
110 function notify($a_event,$a_ref_id,$a_parent_non_rbac_id,$a_node_id,$a_params = 0)
111 {
112 global $tree;
113
114 switch ($a_event)
115 {
116 case "link":
117
118 //var_dump("<pre>",$a_params,"</pre>");
119 //echo "Module name ".$this->getRefId()." triggered by link event. Objects linked into target object ref_id: ".$a_ref_id;
120 //exit;
121 break;
122
123 case "cut":
124
125 //echo "Module name ".$this->getRefId()." triggered by cut event. Objects are removed from target object ref_id: ".$a_ref_id;
126 //exit;
127 break;
128
129 case "copy":
130
131 //var_dump("<pre>",$a_params,"</pre>");
132 //echo "Module name ".$this->getRefId()." triggered by copy event. Objects are copied into target object ref_id: ".$a_ref_id;
133 //exit;
134 break;
135
136 case "paste":
137
138 //echo "Module name ".$this->getRefId()." triggered by paste (cut) event. Objects are pasted into target object ref_id: ".$a_ref_id;
139 //exit;
140 break;
141
142 case "new":
143
144 //echo "Module name ".$this->getRefId()." triggered by paste (new) event. Objects are applied to target object ref_id: ".$a_ref_id;
145 //exit;
146 break;
147 }
148
149 // At the beginning of the recursive process it avoids second call of the notify function with the same parameter
150 if ($a_node_id==$_GET["ref_id"])
151 {
152 $parent_obj =& $this->ilias->obj_factory->getInstanceByRefId($a_node_id);
153 $parent_type = $parent_obj->getType();
154 if($parent_type == $this->getType())
155 {
156 $a_node_id = (int) $tree->getParentId($a_node_id);
157 }
158 }
159
160 parent::notify($a_event,$a_ref_id,$a_parent_non_rbac_id,$a_node_id,$a_params);
161 }
162}
163?>
$_GET["client_id"]
Settings for components (modules, services, plugins).
ilObjComponentSettings($a_id=0, $a_call_by_reference=true)
Constructor @access public.
notify($a_event, $a_ref_id, $a_parent_non_rbac_id, $a_node_id, $a_params=0)
notifys an object about an event occured Based on the event happend, each object may decide how it re...
Class ilObject Basic functions for all objects.
getType()
get object type @access public
ilObject($a_id=0, $a_reference=true)
Constructor @access public.
redirection script todo: (a better solution should control the processing via a xml file)
global $ilDB