Public Member Functions

ilObjObjectFolderGUI Class Reference

Inheritance diagram for ilObjObjectFolderGUI:
Collaboration diagram for ilObjObjectFolderGUI:

Public Member Functions

 ilObjObjectFolderGUI ($a_data, $a_id, $a_call_by_reference)
 Constructor.
 viewObject ()
 list childs of current object
 displayList ()
 display object list
executeCommand ()
 execute command
 getTabs (&$tabs_gui)
 get tabs public

Detailed Description

Definition at line 39 of file class.ilObjObjectFolderGUI.php.


Member Function Documentation

ilObjObjectFolderGUI::displayList (  ) 

display object list

public

Reimplemented from ilObjectGUI.

Definition at line 119 of file class.ilObjObjectFolderGUI.php.

References $_GET, ilObjectGUI::$data, $key, $tbl, and ilUtil::switchColor().

Referenced by viewObject().

        {
                include_once "./classes/class.ilTableGUI.php";
                return;

                // load template for table
                $this->tpl->addBlockfile("ADM_CONTENT", "adm_content", "tpl.table.html");

                // load template for table content data
                $this->tpl->addBlockfile("TBL_CONTENT", "tbl_content", "tpl.obj_tbl_rows.html");

                $num = 0;

                $obj_str = ($this->call_by_reference) ? "" : "&obj_id=".$this->obj_id;
                $this->tpl->setVariable("FORMACTION",
                        $this->ctrl->getFormAction($this));

                // create table
                $tbl = new ilTableGUI();

                // title & header columns
                $tbl->setTitle($this->object->getTitle(),"icon_".$this->object->getType()."_b.gif",$this->lng->txt("obj_".$this->object->getType()));
                $tbl->setHelp("tbl_help.php","icon_help.gif",$this->lng->txt("help"));

                foreach ($this->data["cols"] as $val)
                {
                        $header_names[] = $this->lng->txt($val);
                }

                $tbl->setHeaderNames($header_names);

                //$header_params = array("ref_id" => $this->ref_id);
                $header_params = $this->ctrl->getParameterArray($this, "view");
                $tbl->setHeaderVars($this->data["cols"],$header_params);
                $tbl->setColumnWidth(array("15","75%","25%"));

                // control
                $tbl->setOrderColumn($_GET["sort_by"]);
                $tbl->setOrderDirection($_GET["sort_order"]);
                $tbl->setLimit($_GET["limit"]);
                $tbl->setOffset($_GET["offset"]);
                $tbl->setMaxCount($this->maxcount);

                // footer
                $tbl->setFooter("tblfooter",$this->lng->txt("previous"),$this->lng->txt("next"));
                //$tbl->disable("footer");
                
                // render table
                $tbl->render();

                if (is_array($this->data["data"][0]))
                {
                        //table cell
                        for ($i=0; $i < count($this->data["data"]); $i++)
                        {
                                $data = $this->data["data"][$i];
                                $ctrl = $this->data["ctrl"][$i];

                                // color changing
                                $css_row = ilUtil::switchColor($i+1,"tblrow1","tblrow2");

                                $this->tpl->setCurrentBlock("table_cell");
                                $this->tpl->setVariable("CELLSTYLE", "tblrow1");
                                $this->tpl->parseCurrentBlock();

                                foreach ($data as $key => $val)
                                {
                                        //build link
                                        /*

                                        $n = 0;

                                        foreach ($ctrl as $key2 => $val2)
                                        {
                                                $link .= $key2."=".$val2;

                                                if ($n < count($ctrl)-1)
                                                {
                                                $link .= "&";
                                                        $n++;
                                                }
                                        }

                                        if ($key == "title")
                                        {
                                                $name_field = explode("#separator#",$val);
                                        }

                                        if ($key == "title" || $key == "type")
                                        {
                                                $this->tpl->setCurrentBlock("begin_link");
                                                $this->tpl->setVariable("LINK_TARGET", $link);

                                                $this->tpl->parseCurrentBlock();
                                                $this->tpl->touchBlock("end_link");
                                        }

                                        $this->tpl->setCurrentBlock("text");

                                        if ($key == "type")
                                        {
                                                $val = ilUtil::getImageTagByType($val,$this->tpl->tplPath);                                             
                                        }

                                        if ($key == "title")
                                        {
                                                $this->tpl->setVariable("TEXT_CONTENT", $name_field[0]);
                                                
                                                $this->tpl->setCurrentBlock("subtitle");
                                                $this->tpl->setVariable("DESC", $name_field[1]);
                                                $this->tpl->parseCurrentBlock();
                                        }
                                        else
                                        {
                                                $this->tpl->setVariable("TEXT_CONTENT", $val);
                                        }
                                
                                        $this->tpl->parseCurrentBlock();

                                        $this->tpl->setCurrentBlock("table_cell");
                                        $this->tpl->parseCurrentBlock();
                                        */
                                } //foreach

                                $this->tpl->setCurrentBlock("tbl_content");
                                $this->tpl->setVariable("CSS_ROW", $css_row);
                                $this->tpl->parseCurrentBlock();
                        } //for

                } //if is_array
                else
                {
                        $this->tpl->setCurrentBlock("notfound");
                        $this->tpl->setVariable("TXT_OBJECT_NOT_FOUND", $this->lng->txt("obj_not_found"));
                        $this->tpl->setVariable("NUM_COLS", $num);
                        $this->tpl->parseCurrentBlock();
                }
        }

Here is the call graph for this function:

Here is the caller graph for this function:

& ilObjObjectFolderGUI::executeCommand (  ) 

execute command

Reimplemented from ilObjectGUI.

Definition at line 258 of file class.ilObjObjectFolderGUI.php.

References $cmd, and ilObjectGUI::prepareOutput().

        {
                $next_class = $this->ctrl->getNextClass($this);
                $cmd = $this->ctrl->getCmd();
                $this->prepareOutput();

                switch($next_class)
                {
                        case 'ilpermissiongui':
                                include_once("./classes/class.ilPermissionGUI.php");
                                $perm_gui =& new ilPermissionGUI($this);
                                $ret =& $this->ctrl->forwardCommand($perm_gui);
                                break;

                        default:
                                if(!$cmd)
                                {
                                        $cmd = "view";
                                }
                                $cmd .= "Object";
                                $this->$cmd();

                                break;
                }
                return true;
        }

Here is the call graph for this function:

ilObjObjectFolderGUI::getTabs ( &$  tabs_gui  ) 

get tabs public

Parameters:
object tabs gui object

Reimplemented from ilObjectGUI.

Definition at line 290 of file class.ilObjObjectFolderGUI.php.

References $rbacsystem.

        {
                global $rbacsystem;

                if ($rbacsystem->checkAccess('edit_permission',$this->object->getRefId()))
                {
                        $tabs_gui->addTarget("settings",
                                $this->ctrl->getLinkTarget($this, "view"), array("view",""), "", "");

                        $tabs_gui->addTarget("perm_settings",
                                $this->ctrl->getLinkTargetByClass(array(get_class($this),'ilpermissiongui'), "perm"), array("perm","info","owner"), 'ilpermissiongui');
                }
        }

ilObjObjectFolderGUI::ilObjObjectFolderGUI ( a_data,
a_id,
a_call_by_reference 
)

Constructor.

Parameters:
array basic object data
integer ref_id or obj_id (depends on referenced-flag)
boolean true: treat id as ref_id; false: treat id as obj_id public

Definition at line 49 of file class.ilObjObjectFolderGUI.php.

References ilObjectGUI::ilObjectGUI().

        {
                $this->type = "objf";
                $this->ilObjectGUI($a_data,$a_id,$a_call_by_reference,false);
        }

Here is the call graph for this function:

ilObjObjectFolderGUI::viewObject (  ) 

list childs of current object

public

Reimplemented from ilObjectGUI.

Definition at line 60 of file class.ilObjObjectFolderGUI.php.

References $_GET, $key, $list, $rbacsystem, displayList(), formatDate(), getObjectList(), and ilUtil::sortArray().

        {
                global $rbacsystem;

                if (!$rbacsystem->checkAccess("visible,read",$this->object->getRefId()))
                {
                        $this->ilias->raiseError($this->lng->txt("permission_denied"),$this->ilias->error_obj->MESSAGE);
                }

                //prepare objectlist
                $this->data = array();
                $this->data["data"] = array();
                $this->data["ctrl"] = array();

                $this->data["cols"] = array("type","title","last_change");

                if ($list = getObjectList("typ",$_GET["order"], $_GET["direction"]))
                {
                        foreach ($list as $key => $val)
                        {
                                //visible data part
                                $this->data["data"][] = array(
                                                "type"                  => $val["type"],
                                                "title" => $val["title"]."#separator#".$val["desc"],
                                                //"description" => $val["desc"],
                                                "last_change"   => $val["last_update"],
                                                "obj_id"                => $val["obj_id"]
                                        );

                        }
                } //if roledata

                $this->maxcount = count($this->data["data"]);

                // sorting array
                $this->data["data"] = ilUtil::sortArray($this->data["data"],$_GET["sort_by"],$_GET["sort_order"]);
                $this->data["data"] = array_slice($this->data["data"],$_GET["offset"],$_GET["limit"]);

                // now compute control information
                foreach ($this->data["data"] as $key => $val)
                {
                        $this->data["ctrl"][$key] = array(
                                                                                        "ref_id"        => $this->id,
                                                                                        "obj_id"        => $val["obj_id"],
                                                                                        "type"          => $val["type"],
                                                                                        );              

                        unset($this->data["data"][$key]["obj_id"]);
                        $this->data["data"][$key]["last_change"] = ilFormat::formatDate($this->data["data"][$key]["last_change"]);
                }

                $this->displayList();   
        }

Here is the call graph for this function:


The documentation for this class was generated from the following file: