• Main Page
  • Related Pages
  • Namespaces
  • Data Structures
  • Files
  • File List
  • Globals

classes/class.ilCtrl.php

Go to the documentation of this file.
00001 <?php
00002 /*
00003         +-----------------------------------------------------------------------------+
00004         | ILIAS open source                                                           |
00005         +-----------------------------------------------------------------------------+
00006         | Copyright (c) 1998-2001 ILIAS open source, University of Cologne            |
00007         |                                                                             |
00008         | This program is free software; you can redistribute it and/or               |
00009         | modify it under the terms of the GNU General Public License                 |
00010         | as published by the Free Software Foundation; either version 2              |
00011         | of the License, or (at your option) any later version.                      |
00012         |                                                                             |
00013         | This program is distributed in the hope that it will be useful,             |
00014         | but WITHOUT ANY WARRANTY; without even the implied warranty of              |
00015         | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the               |
00016         | GNU General Public License for more details.                                |
00017         |                                                                             |
00018         | You should have received a copy of the GNU General Public License           |
00019         | along with this program; if not, write to the Free Software                 |
00020         | Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA. |
00021         +-----------------------------------------------------------------------------+
00022 */
00023 
00032 class ilCtrl
00033 {
00034         var $target_script;
00035         var $forward;                   // forward array
00036         var $parent;                    // parent array (reverse forward)
00037         var $save_parameter;    // save parameter array
00038         var $return;                    // return commmands
00039 
00043         function ilCtrl()
00044         {
00045                 global $ilBench;
00046 
00047                 $this->bench =& $ilBench;
00048                 $this->transit = array();
00049 
00050                 $this->location = array();
00051                 $this->tab = array();
00052                 $this->current_node = 0;
00053 
00054                 // this information should go to xml files one day
00055                 $this->stored_trees = array
00056                         ("ilrepositorygui", "ilpersonaldesktopgui",
00057                         "illmpresentationgui", "illmeditorgui",
00058                         "iladministrationgui");
00059         }
00060 
00070         function callBaseClass()
00071         {
00072                 global $ilDB;
00073                 
00074                 $baseClass = strtolower($_GET["baseClass"]);
00075                 
00076                 // get class information
00077                 $q = "SELECT * FROM module_class WHERE LOWER(class) = ".
00078                         $ilDB->quote($baseClass);
00079                 $mc_set = $ilDB->query($q);
00080                 $mc_rec = $mc_set->fetchRow(DB_FETCHMODE_ASSOC);
00081                 $module = $mc_rec["module"];
00082                 $class = $mc_rec["class"];
00083                 $class_dir = $mc_rec["dir"];
00084                 
00085                 if ($module != "")
00086                 {
00087                         // get module information
00088                         $q = "SELECT * FROM module WHERE name = ".
00089                                 $ilDB->quote($module);
00090         
00091                         $m_set = $ilDB->query($q);
00092                         $m_rec = $m_set->fetchRow(DB_FETCHMODE_ASSOC);
00093                         $this->module_dir = $m_rec["dir"];
00094                         
00095                         include_once $this->module_dir."/".$class_dir."/class.".$class.".php";;
00096                 }
00097                 else            // check whether class belongs to a service
00098                 {
00099                         // get class information
00100                         $q = "SELECT * FROM service_class WHERE LOWER(class) = ".
00101                                 $ilDB->quote($baseClass);
00102 
00103                         $mc_set = $ilDB->query($q);
00104                         $mc_rec = $mc_set->fetchRow(DB_FETCHMODE_ASSOC);
00105                         $service = $mc_rec["service"];
00106                         $class = $mc_rec["class"];
00107                         $class_dir = $mc_rec["dir"];
00108                         
00109                         if ($service == "")
00110                         {
00111                                 echo "Could not find entry in modules.xml or services.xml for".
00112                                         $baseClass;
00113                                 exit;
00114                         }
00115 
00116                         // get service information
00117                         $q = "SELECT * FROM service WHERE name = ".
00118                                 $ilDB->quote($service);
00119         
00120                         $m_set = $ilDB->query($q);
00121                         $m_rec = $m_set->fetchRow(DB_FETCHMODE_ASSOC);
00122                         $this->service_dir = $m_rec["dir"];
00123                         
00124                         include_once $this->service_dir."/".$class_dir."/class.".$class.".php";;
00125                 }
00126                 
00127                 // forward processing to base class
00128                 $this->getCallStructure(strtolower($baseClass));
00129                 $base_class_gui =& new $class();
00130                 $this->forwardCommand($base_class_gui);
00131         }
00132 
00136         function getModuleDir()
00137         {
00138                 return $this->module_dir;
00139         }
00140         
00152         function &forwardCommand(&$a_gui_object)
00153         {
00154                 $class = strtolower(get_class($a_gui_object));
00155 //echo "<br>forwarding to: -$class-";
00156                 $nr = $this->getNodeIdForTargetClass($this->current_node, $class);
00157                 if ($nr > 0)
00158                 {
00159                         $this->current_node = $nr;
00160                         return $a_gui_object->executeCommand();
00161                 }
00162                 echo "ERROR: Can't forward to class $class."; exit;
00163 //echo "end forward<br>";
00164         }
00165 
00166 
00188         function getNodeIdForTargetClass($a_par_node, $a_class)
00189         {
00190                 $class = strtolower($a_class);
00191 
00192                 // target class is class of current node id
00193                 if ($class == $this->call_node[$a_par_node]["class"])
00194                 {
00195                         return $a_par_node;
00196                 }
00197 
00198                 // target class is child of current node id
00199                 foreach($this->call_node as $nr => $node)
00200                 {
00201                         if (($node["parent"] == $a_par_node) &&
00202                                 ($node["class"] == $class))
00203                         {
00204                                 return $nr;
00205                         }
00206                 }
00207 
00208                 // target class is sibling
00209                 $par = $this->call_node[$a_par_node]["parent"];
00210                 if ($par != 0)
00211                 {
00212                         foreach($this->call_node as $nr => $node)
00213                         {
00214                                 if (($node["parent"] == $par) &&
00215                                         ($node["class"] == $class))
00216                                 {
00217                                         return $nr;
00218                                 }
00219                         }
00220                 }
00221 
00222                 // target class is parent
00223                 while($par != 0)
00224                 {
00225                         if ($this->call_node[$par]["class"] == $class)
00226                         {
00227                                 return $par;
00228                         }
00229                         $par = $this->call_node[$par]["parent"];
00230                 }
00231 
00232                 echo "ERROR: Can't find target class $a_class for node $a_par_node ".
00233                         "(".$this->call_node[$a_par_node]["class"].").<br>"; exit;
00234         }
00235 
00241         function getCmdNode()
00242         {
00243                 return $_GET["cmdNode"];
00244         }
00245 
00253         function addLocation($a_title, $a_link, $a_target = "")
00254         {
00255                 $this->location[] = array("title" => $a_title,
00256                         "link" => $a_link, "target" => $a_target);
00257         }
00258 
00264         function getLocations()
00265         {
00266                 return $this->location;
00267         }
00268 
00277         function addTab($a_lang_var, $a_link, $a_cmd, $a_class)
00278         {
00279                 $a_class = strtolower($a_class);
00280 
00281                 $this->tab[] = array("lang_var" => $a_lang_var,
00282                         "link" => $a_link, "cmd" => $a_cmd, "class" => $a_class);
00283         }
00284 
00290         function getTabs()
00291         {
00292                 return $this->tab;
00293         }
00294 
00295 
00314         function getCallStructure($a_class, $a_nr = 0, $a_parent = 0)
00315         {
00316                 global $ilDB;
00317                 
00318                 $a_class = strtolower($a_class);
00319                 
00320                 if (in_array($a_class, $this->stored_trees))
00321                 {
00322                         $q = "SELECT * FROM ctrl_structure WHERE root_class = ".
00323                                 $ilDB->quote($a_class);
00324                         $set = $ilDB->query($q);
00325                         $rec = $set->fetchRow(DB_FETCHMODE_ASSOC);
00326                         $this->call_node = unserialize($rec["call_node"]);
00327                         $this->forward = unserialize($rec["forward"]);
00328                         $this->parent = unserialize($rec["parent"]);
00329                         $this->root_class = $a_class;
00330                 }
00331                 else
00332                 {
00333                         $this->readCallStructure($a_class, $a_nr, $a_parent);
00334                 }
00335         }
00336 
00341         function storeCommonStructures()
00342         {
00343                 global $ilDB;
00344                 
00345                 $q = "DELETE FROM ctrl_structure";
00346                 $ilDB->query($q);
00347                 
00348                 foreach ($this->stored_trees as $root_gui_class)
00349                 {
00350                         $this->call_node = array();
00351                         $this->forward = array();
00352                         $this->parent = array();
00353                         $this->readCallStructure($root_gui_class);
00354                         $q = "INSERT INTO ctrl_structure (root_class, call_node, forward, parent) VALUES (".
00355                                 $ilDB->quote($root_gui_class).",".
00356                                 $ilDB->quote(serialize($this->call_node)).",".
00357                                 $ilDB->quote(serialize($this->forward)).",".
00358                                 $ilDB->quote(serialize($this->parent)).")";
00359                         $ilDB->query($q);
00360                 }
00361         }
00362         
00366         function readCallStructure($a_class, $a_nr = 0, $a_parent = 0)
00367         {
00368                 global $ilDB;
00369 
00370                 $a_class = strtolower($a_class);
00371 
00372                 $a_nr++;
00373                 
00374                 // determine call node structure
00375                 $this->call_node[$a_nr] = array("class" => $a_class, "parent" => $a_parent);
00376                 
00377 //echo "<br>nr:$a_nr:class:$a_class:parent:$a_parent:";
00378                 $q = "SELECT * FROM ctrl_calls WHERE parent=".
00379                         $ilDB->quote(strtolower($a_class)).
00380                         " ORDER BY child";
00381 
00382                 $call_set = $ilDB->query($q);
00383                 //$forw = array();
00384                 $a_parent = $a_nr;
00385                 while($call_rec = $call_set->fetchRow(DB_FETCHMODE_ASSOC))
00386                 {
00387                         $a_nr = $this->readCallStructure($call_rec["child"], $a_nr, $a_parent);
00388                         $forw[] = $call_rec["child"];
00389                 }
00390                 
00391                 // determin forward and parent array
00392                 $this->forwards($a_class, $forw);
00393 //echo "<br>forwards:".$a_class."<br>"; var_dump($forw);
00394 
00395                 // determine root class
00396                 $this->root_class = $a_class;
00397                 return $a_nr;
00398         }
00399 
00400 
00409         function forwards($a_from_class, $a_to_class)
00410         {
00411                 $a_from_class = strtolower($a_from_class);
00412 
00413                 if (is_array($a_to_class))
00414                 {
00415                         foreach($a_to_class as $to_class)
00416                         {
00417                                 $this->forward[$a_from_class][] = strtolower($to_class);
00418                                 $this->parent[strtolower($to_class)][] = $a_from_class;
00419                         }
00420                 }
00421                 else
00422                 {
00423                         $this->forward[strtolower(get_class($a_obj))][] = strtolower($a_to_class);
00424                         $this->parent[strtolower($a_to_class)][] = strtolower(get_class($a_obj));
00425                 }
00426         }
00427 
00428 
00448         function saveParameter(&$a_obj, $a_parameter)
00449         {
00450                 if (is_array($a_parameter))
00451                 {
00452                         foreach($a_parameter as $parameter)
00453                         {
00454                                 $this->save_parameter[strtolower(get_class($a_obj))][] = $parameter;
00455                         }
00456                 }
00457                 else
00458                 {
00459                         $this->save_parameter[strtolower(get_class($a_obj))][] = $a_parameter;
00460                 }
00461         }
00462 
00463 
00488         function setParameter(&$a_obj, $a_parameter, $a_value)
00489         {
00490                 $this->parameter[strtolower(get_class($a_obj))][$a_parameter] = $a_value;
00491         }
00492 
00493 
00503         function setParameterByClass($a_class, $a_parameter, $a_value)
00504         {
00505                 $this->parameter[strtolower($a_class)][$a_parameter] = $a_value;
00506         }
00507         
00508         
00515         function clearParameters(&$a_obj)
00516         {
00517                 $this->clearParametersByClass(strtolower(get_class($a_obj)));
00518         }
00519 
00526         function clearParametersByClass($a_class)
00527         {
00528                 $this->parameter[strtolower($a_class)] = array();
00529         }
00530 
00539         function getNextClass()
00540         {
00541 //echo "getNextClass:";
00542                 $cmdNode = $this->getCmdNode();
00543                 if ($cmdNode == "")
00544                 {
00545                         return false;
00546                 }
00547                 else
00548                 {
00549                         if ($this->current_node == $cmdNode)
00550                         {
00551 //echo "1:".$this->call_node[$cmdNode]["class"]."<br>";
00552                                 //return $this->call_node[$cmdNode]["class"];
00553                                 return "";
00554                         }
00555                         else
00556                         {
00557                                 $path = $this->getPathNew($this->current_node, $cmdNode);
00558 //echo "2:".$this->call_node[$path[1]]["class"]."<br>";
00559                                 return $this->call_node[$path[1]]["class"];
00560                         }
00561                 }
00562         }
00563 
00570         function lookupClassPath($a_class_name)
00571         {
00572                 global $ilDB;
00573                 $a_class_name = strtolower($a_class_name);
00574 
00575                 $q = "SELECT * FROM ctrl_classfile WHERE class = ".$ilDB->quote($a_class_name);
00576 
00577                 $class_set = $ilDB->query($q);
00578                 $class_rec = $class_set->fetchRow(DB_FETCHMODE_ASSOC);
00579 
00580                 return $class_rec["file"];
00581         }
00582 
00591         function getClassForClasspath($a_class_path)
00592         {
00593                 $path = pathinfo($a_class_path);
00594                 $file = $path["basename"];
00595                 $class = substr($file, 6, strlen($file) - 10);
00596 
00597                 return $class;
00598         }
00599 
00608         function getPathNew($a_source_node, $a_target_node)
00609         {
00610 //echo "-".$a_source_node."-";
00611                 $path_rev = array();
00612                 $c_target = $a_target_node;
00613                 while ($a_source_node != $c_target)
00614                 {
00615                         $path_rev[] = $c_target;
00616                         $c_target = $this->call_node[$c_target]["parent"];
00617                         if(!($c_target > 0))
00618                         {
00619                                 echo "ERROR: Path not found. Source:".$a_source_node.
00620                                         " (".$this->call_node[$a_source_node]["class"].")".
00621                                         ", Target:".$a_target_node.
00622                                         " (".$this->call_node[$a_target_node]["class"].")";
00623                                 exit;
00624                         }
00625                 }
00626                 if ($a_source_node == $c_target)
00627                 {
00628                         $path_rev[] = $c_target;
00629                 }
00630                 $path = array();
00631                 for ($i=0; $i<count($path_rev); $i++)
00632                 {
00633                         $path[] = $path_rev[count($path_rev) - ($i + 1)];
00634                 }
00635 
00636                 foreach($path as $node)
00637                 {
00638 //echo "<br>-->".$node.":".$this->call_node[$node]["class"];
00639                 }
00640                 return $path;
00641         }
00642 
00643 
00649         function setTargetScript($a_target_script)
00650         {
00651                 $this->target_script = $a_target_script;
00652         }
00653 
00654 
00660         function getTargetScript()
00661         {
00662                 return $this->target_script;
00663         }
00664 
00665 
00669         function getCmd($a_default_cmd = "")
00670         {
00671                 $cmd = $_GET["cmd"];
00672                 if($cmd == "post")
00673                 {
00674                         $cmd = @key($_POST["cmd"]);
00675                 }
00676                 if($cmd == "")
00677                 {
00678                         $cmd = $a_default_cmd;
00679                 }
00680                 return $cmd;
00681         }
00682 
00693         function setCmd($a_cmd)
00694         {
00695                 $_GET["cmd"] = $a_cmd;
00696         }
00697 
00708         function setCmdClass($a_cmd_class)
00709         {
00710                 $a_cmd_class = strtolower($a_cmd_class);
00711 
00712                 $nr = $this->getNodeIdForTargetClass($this->current_node, $a_cmd_class);
00713                 $_GET["cmdClass"] = $a_cmd_class;
00714                 $_GET["cmdNode"] = $nr;
00715         }
00716 
00720         function getCmdClass()
00721         {
00722                 return strtolower($_GET["cmdClass"]);
00723         }
00724 
00730         function getFormAction(&$a_gui_obj)
00731         {
00732                 $script =  $this->getFormActionByClass(strtolower(get_class($a_gui_obj)));
00733                 return $script;
00734         }
00735 
00741         function getFormActionByClass($a_class)
00742         {
00743                 $a_class = strtolower($a_class);
00744 
00745                 $script = $this->getLinkTargetByClass($a_class, "post");
00746                 return $script;
00747         }
00748 
00749         function redirect(&$a_gui_obj, $a_cmd = "")
00750         {
00751                 global $ilBench;
00752                 
00753 //echo "<br>class:".get_class($a_gui_obj).":";
00754                 $script = $this->getLinkTargetByClass(strtolower(get_class($a_gui_obj)), $a_cmd);
00755                 if  (is_object($ilBench))
00756                 {
00757                         $ilBench->save();
00758                 }
00759                 ilUtil::redirect($script);
00760         }
00761 
00762 
00769         function redirectByClass($a_class, $a_cmd = "")
00770         {
00771                 // $a_class may be an array
00772                 //$a_class = strtolower($a_class);
00773 
00774 //echo "<br>class:".get_class($a_gui_obj).":";
00775                 $script = $this->getLinkTargetByClass($a_class, $a_cmd);
00776 //echo "<br>script:$script:";
00777                 ilUtil::redirect($script);
00778         }
00779 
00780 
00789         function getLinkTarget(&$a_gui_obj, $a_cmd = "")
00790         {
00791 //echo "<br>getLinkTarget";
00792                 $script = $this->getLinkTargetByClass(strtolower(get_class($a_gui_obj)), $a_cmd);
00793                 return $script;
00794         }
00795 
00796 
00806         function getLinkTargetByClass($a_class, $a_cmd  = "", $a_transits = "", $a_prepend_transits = false)
00807         {
00808                 // note: $a_class may be an array
00809                 //$a_class = strtolower($a_class);
00810 
00811 //echo "<br>getLinkTargetByClass";
00812                 $script = $this->getTargetScript();
00813                 $script = $this->getUrlParameters($a_class, $script, $a_cmd, $transits);
00814 
00815                 //$script = str_replace("&", "&amp;", $script);
00816 
00817                 return $script;
00818         }
00819 
00823         function setReturn(&$a_gui_obj, $a_cmd)
00824         {
00825                 $script = $this->getTargetScript();
00826                 $script = $this->getUrlParameters(strtolower(get_class($a_gui_obj)), $script, $a_cmd);
00827 //echo "<br>setReturn:".get_class($a_gui_obj).":".$script.":<br>";
00828                 $this->return[strtolower(get_class($a_gui_obj))] = $script;
00829         }
00830 
00834         function setReturnByClass($a_class, $a_cmd)
00835         {
00836                 // may not be an array!
00837                 $a_class = strtolower($a_class);
00838 
00839                 $script = $this->getTargetScript();
00840                 $script = $this->getUrlParameters($a_class, $script, $a_cmd);
00841 //echo "<br>setReturn:".get_class($a_gui_obj).":".$script.":<br>";
00842                 $this->return[strtolower($a_class)] = $script;
00843         }
00844 
00848         function returnToParent(&$a_gui_obj, $a_anchor = "")
00849         {
00850                 $script = $this->getParentReturn($a_gui_obj);
00851 
00852                 $script = ilUtil::appendUrlParameterString($script,
00853                         "redirectSource=".strtolower(get_class($a_gui_obj)));
00854                 if ($a_anchor != "")
00855                 {
00856                  $script = $script."#".$a_anchor;
00857                 }
00858                 ilUtil::redirect($script);
00859         }
00860 
00861 
00867         function getRedirectSource()
00868         {
00869                 return $_GET["redirectSource"];
00870         }
00871 
00875         function getParentReturn(&$a_gui_obj)
00876         {
00877                 return $this->getParentReturnByClass(strtolower(get_class($a_gui_obj)));
00878         }
00879 
00880 
00881         function getParentReturnByClass($a_class)
00882         {
00883                 $a_class = strtolower($a_class);
00884                 $ret_class = $this->searchReturnClass($a_class);
00885 //echo ":$ret_class:";
00886                 if($ret_class)
00887                 {
00888 //echo ":".$this->return[$ret_class].":";
00889                         return $this->return[$ret_class];
00890                 }
00891         }
00892 
00896         function searchReturnClass($a_class)
00897         {
00898 //echo "<br>searchReturnClass".$a_class;
00899                 $a_class = strtolower($a_class);
00900 
00901                 $nr = $this->getNodeIdForTargetClass($this->current_node, $a_class);
00902                 $path = $this->getPathNew(1, $nr);
00903 //var_dump($path);
00904                 for($i = count($path)-2; $i>=0; $i--)
00905                 {
00906 //echo "<br>:$i:".$path[$i].":".$this->call_node[$path[$i]]["class"]
00907 //             .":".$this->return[$this->call_node[$path[$i]]["class"]].":";
00908                         if ($this->return[$this->call_node[$path[$i]]["class"]] != "")
00909                         {
00910                                 return $this->call_node[$path[$i]]["class"];
00911                         }
00912                 }
00913 
00914                 return false;
00915         }
00916 
00917         function getUrlParameters($a_class, $a_str, $a_cmd = "", $a_transits = "")
00918         {
00919                 // note: $a_class may be an array!
00920                 //$a_class = strtolower($a_class);
00921 
00922                 $params = $this->getParameterArrayByClass($a_class, $a_cmd, $a_transits);
00923 
00924                 foreach ($params as $par => $value)
00925                 {
00926                         $a_str = ilUtil::appendUrlParameterString($a_str, $par."=".$value);
00927                 }
00928 
00929                 return $a_str;
00930         }
00931 
00932         function appendTransitClasses($a_str)
00933         {
00934                 if (is_array($_GET["cmdTransit"]))
00935                 {
00936                         reset($_GET["cmdTransit"]);
00937                         foreach ($_GET["cmdTransit"] as $transit)
00938                         {
00939                                 $a_str = ilUtil::appendUrlParameterString($a_str, "cmdTransit[]=".$transit);
00940                         }
00941                 }
00942                 return $a_str;
00943         }
00944 
00945         function getTransitArray()
00946         {
00947                 $trans_arr = array();
00948                 if (is_array($_GET["cmdTransit"]))
00949                 {
00950                         reset($_GET["cmdTransit"]);
00951                         foreach ($_GET["cmdTransit"] as $key => $transit)
00952                         {
00953                                 $trans_arr["cmdTransit[".$key."]"] = $transit;
00954                         }
00955                 }
00956                 return $trans_arr;
00957         }
00958 
00959         function addTransit($a_class)
00960         {
00961                 $a_class = strtolower($a_class);
00962                 $_GET["cmdTransit"][] = $a_class;
00963         }
00964 
00965         function getParameterArray(&$a_gui_obj, $a_cmd = "", $a_incl_transit = true)
00966         {
00967                 $par_arr = $this->getParameterArrayByClass(strtolower(get_class($a_gui_obj)), $a_cmd,
00968                         $trans_arr);
00969 
00970                 return $par_arr;
00971         }
00972 
00976         function getParameterArrayByClass($a_class, $a_cmd = "", $a_transits = "")
00977         {
00978 //echo "<br>getparameter for $a_class";
00979                 if ($a_class == "")
00980                 {
00981                         return array();
00982                 }
00983 
00984                 if (!is_array($a_class))
00985                 {
00986                         $a_class = array($a_class);
00987                 }
00988 
00989                 $nr = $this->current_node;
00990                 foreach ($a_class as $class)
00991                 {
00992 //echo "<br>-$class-";
00993                         $class = strtolower($class);
00994                         $nr = $this->getNodeIdForTargetClass($nr, $class);
00995                         $target_class = $class;
00996 //echo "-$nr-";
00997                 }
00998 
00999                 $path = $this->getPathNew(1, $nr);
01000                 $params = array();
01001 
01002                 // append parameters of parent classes
01003                 foreach($path as $node_id)
01004                 {
01005                         $class = $this->call_node[$node_id]["class"];
01006                         if (is_array($this->save_parameter[$class]))
01007                         {
01008                                 foreach($this->save_parameter[$class] as $par)
01009                                 {
01010                                         $params[$par] = $_GET[$par];
01011                                 }
01012                         }
01013 
01014                         if (is_array($this->parameter[$class]))
01015                         {
01016                                 foreach($this->parameter[$class] as $par => $value)
01017                                 {
01018                                         $params[$par] = $value;
01019                                 }
01020                         }
01021                 }
01022 
01023                 if ($a_cmd != "")
01024                 {
01025                         $params["cmd"] = $a_cmd;
01026                 }
01027 
01028                 $params["cmdClass"] = $target_class;
01029                 $params["cmdNode"] = $nr;
01030                 $params["baseClass"] = $_GET["baseClass"];
01031 
01032                 return $params;
01033         }
01034 
01035 
01036 } // END class.ilCtrl
01037 ?>

Generated on Fri Dec 13 2013 11:57:53 for ILIAS Release_3_6_x_branch .rev 46809 by  doxygen 1.7.1