ILIAS  Release_4_4_x_branch Revision 61816
 All Data Structures Namespaces Files Functions Variables Groups Pages
ilAccordionGUI Class Reference

Accordion user interface class. More...

+ Collaboration diagram for ilAccordionGUI:

Public Member Functions

 __construct ()
 Constructor.
 setId ($a_val)
 Set id.
 getId ()
 Get id.
 setOrientation ($a_orientation)
 Set Orientation.
 getOrientation ()
 Get Orientation.
 setContainerClass ($a_containerclass)
 Set Container CSS Class.
 getContainerClass ()
 Get Container CSS Class.
 setInnerContainerClass ($a_containerclass)
 Set inner Container CSS Class.
 getInnerContainerClass ()
 Get inner Container CSS Class.
 setHeaderClass ($a_headerclass)
 Set Header CSS Class.
 getHeaderClass ()
 Get Header CSS Class.
 setActiveHeaderClass ($a_h_class)
 Set active header class.
 getActiveHeaderClass ()
 Get active Header CSS Class.
 setContentClass ($a_contentclass)
 Set Content CSS Class.
 getContentClass ()
 Get Content CSS Class.
 setContentWidth ($a_contentwidth)
 Set ContentWidth.
 getContentWidth ()
 Get ContentWidth.
 setContentHeight ($a_contentheight)
 Set ContentHeight.
 getContentHeight ()
 Get ContentHeight.
 setBehaviour ($a_val)
 Set behaviour "ForceAllOpen" | "FirstOpen" | "OneOpenSession".
 getBehaviour ()
 Get behaviour.
 addItem ($a_header, $a_content, $a_force_open=false)
 Add item.
 getItems ()
 Get all items.
 getHTML ()
 Get accordion html.

Static Public Member Functions

static addJavaScript ()
 Add javascript files that are necessary to run accordion.
static addCss ()
 Add required css.

Data Fields

const VERTICAL = "vertical"
const HORIZONTAL = "horizontal"
const FORCE_ALL_OPEN = "ForceAllOpen"
const FIRST_OPEN = "FirstOpen"
const ONE_OPEN_SESSION = "OneOpenSession"

Protected Attributes

 $items = array()
 $force_open

Static Protected Attributes

static $accordion_cnt = 0

Detailed Description

Accordion user interface class.

Author
Alex Killing alex..nosp@m.kill.nosp@m.ing@g.nosp@m.mx.d.nosp@m.e
Version
$Id:$

Definition at line 11 of file class.ilAccordionGUI.php.

Constructor & Destructor Documentation

ilAccordionGUI::__construct ( )

Constructor.

Definition at line 26 of file class.ilAccordionGUI.php.

References setOrientation(), and VERTICAL.

+ Here is the call graph for this function:

Member Function Documentation

static ilAccordionGUI::addCss ( )
static

Add required css.

Definition at line 253 of file class.ilAccordionGUI.php.

References $tpl.

Referenced by ilTableTemplatesTableGUI\__construct(), ilObjStyleSheetGUI\_getTemplatePreview(), getHTML(), ilPCIIMTriggerEditorGUI\getImageMapTableHTML(), ilPCTabsGUI\initForm(), ilLMPresentationGUI\layout(), and ilPageObjectGUI\showPage().

{
global $tpl;
$tpl->addCss("./Services/Accordion/css/accordion.css");
}

+ Here is the caller graph for this function:

ilAccordionGUI::addItem (   $a_header,
  $a_content,
  $a_force_open = false 
)

Add item.

Definition at line 263 of file class.ilAccordionGUI.php.

References $items.

{
$this->items[] = array("header" => $a_header,
"content" => $a_content);
if($a_force_open)
{
$this->force_open = sizeof($this->items);
}
}
static ilAccordionGUI::addJavaScript ( )
static

Add javascript files that are necessary to run accordion.

Definition at line 238 of file class.ilAccordionGUI.php.

References $tpl, ilYuiUtil\initAnimation(), ilYuiUtil\initConnection(), ilYuiUtil\initDom(), and ilYuiUtil\initEvent().

Referenced by ilPCIIMTriggerEditorGUI\getImageMapTableHTML(), ilLMPresentationGUI\layout(), and ilPageObjectGUI\showPage().

{
global $tpl;
include_once("./Services/YUI/classes/class.ilYuiUtil.php");
$tpl->addJavaScript("./Services/Accordion/js/accordion.js", true, 3);
}

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

ilAccordionGUI::getActiveHeaderClass ( )

Get active Header CSS Class.

Returns
string Active header CSS Class

Definition at line 150 of file class.ilAccordionGUI.php.

Referenced by getHTML().

{
return $this->active_headerclass;
}

+ Here is the caller graph for this function:

ilAccordionGUI::getBehaviour ( )

Get behaviour.

Returns

Definition at line 230 of file class.ilAccordionGUI.php.

Referenced by getHTML().

{
return $this->behaviour;
}

+ Here is the caller graph for this function:

ilAccordionGUI::getContainerClass ( )

Get Container CSS Class.

Returns
string Container CSS Class

Definition at line 90 of file class.ilAccordionGUI.php.

Referenced by getHTML().

{
return $this->containerclass;
}

+ Here is the caller graph for this function:

ilAccordionGUI::getContentClass ( )

Get Content CSS Class.

Returns
string Content CSS Class

Definition at line 170 of file class.ilAccordionGUI.php.

Referenced by getHTML().

{
return $this->contentclass;
}

+ Here is the caller graph for this function:

ilAccordionGUI::getContentHeight ( )

Get ContentHeight.

Returns
integer ContentHeight

Definition at line 210 of file class.ilAccordionGUI.php.

Referenced by getHTML().

{
return $this->contentheight;
}

+ Here is the caller graph for this function:

ilAccordionGUI::getContentWidth ( )

Get ContentWidth.

Returns
integer ContentWidth

Definition at line 190 of file class.ilAccordionGUI.php.

Referenced by getHTML().

{
return $this->contentwidth;
}

+ Here is the caller graph for this function:

ilAccordionGUI::getHeaderClass ( )

Get Header CSS Class.

Returns
string Header CSS Class

Definition at line 130 of file class.ilAccordionGUI.php.

Referenced by getHTML().

{
return $this->headerclass;
}

+ Here is the caller graph for this function:

ilAccordionGUI::getHTML ( )

Get accordion html.

Definition at line 285 of file class.ilAccordionGUI.php.

References $force_open, $ilUser, $tpl, addCss(), getActiveHeaderClass(), getBehaviour(), getContainerClass(), getContentClass(), getContentHeight(), getContentWidth(), getHeaderClass(), getId(), getInnerContainerClass(), getItems(), getOrientation(), HORIZONTAL, and VERTICAL.

{
global $ilUser;
self::$accordion_cnt++;
$or_short = ($this->getOrientation() == ilAccordionGUI::HORIZONTAL)
? "H"
: "V";
$width = (int) $this->getContentWidth();
$height = (int) $this->getContentHeight();
{
if ($width == 0)
{
$width = 200;
}
if ($height == 0)
{
$height = 100;
}
}
$this->addJavascript();
$this->addCss();
$tpl = new ilTemplate("tpl.accordion.html", true, true, "Services/Accordion");
foreach ($this->getItems() as $item)
{
$tpl->setCurrentBlock("item");
$tpl->setVariable("HEADER", $item["header"]);
$tpl->setVariable("CONTENT", $item["content"]);
$tpl->setVariable("HEADER_CLASS", $this->getHeaderClass()
? $this->getHeaderClass() : "il_".$or_short."AccordionHead");
$tpl->setVariable("CONTENT_CLASS", $this->getContentClass()
? $this->getContentClass() : "il_".$or_short."AccordionContent");
$tpl->setVariable("OR_SHORT", $or_short);
$tpl->setVariable("INNER_CONTAINER_CLASS", $this->getInnerContainerClass()
? $this->getInnerContainerClass() : "il_".$or_short."AccordionInnerContainer");
if ($height > 0)
{
$tpl->setVariable("HEIGHT", "height:".$height."px;");
}
if ($height > 0 && $this->getOrientation() == ilAccordionGUI::HORIZONTAL)
{
$tpl->setVariable("HHEIGHT", "height:".$height."px;");
}
$tpl->parseCurrentBlock();
}
$tpl->setVariable("CNT", self::$accordion_cnt);
$tpl->setVariable("CONTAINER_CLASS", $this->getContainerClass()
? $this->getContainerClass() : "il_".$or_short."AccordionContainer");
$tpl->setVariable("ORIENTATION", $this->getOrientation());
$tpl->setVariable("ID", $this->getId());
if ($this->getBehaviour() == "OneOpenSession" && $this->getId() != "")
{
include_once("./Services/Accordion/classes/class.ilAccordionPropertiesStorage.php");
if($this->force_open)
{
$stor->storeProperty($this->getId(), $ilUser->getId(),
"opened", $this->force_open);
}
else
{
$ctab = $stor->getProperty($this->getId(), $ilUser->getId(),
"opened");
}
$tpl->setVariable("BEHAVIOUR", $ctab);
$tpl->setVariable("SAVE_URL", "./ilias.php?baseClass=ilaccordionpropertiesstorage&cmd=setOpenedTab".
"&accordion_id=".$this->getId()."&user_id=".$ilUser->getId());
}
else if ($this->getBehaviour() != "")
{
$tpl->setVariable("BEHAVIOUR", $this->getBehaviour());
}
$tpl->setVariable("OR2_SHORT", $or_short);
if ($width > 0)
{
$tpl->setVariable("WIDTH", $width);
}
else
{
$tpl->setVariable("WIDTH", "null");
}
if ($width > 0 && $this->getOrientation() == ilAccordionGUI::VERTICAL)
{
$tpl->setVariable("CWIDTH", 'style="width:'.$width.'px;"');
}
if ($this->head_class_set)
{
$tpl->setVariable("ACTIVE_HEAD_CLASS", $this->getActiveHeaderClass());
}
else
{
{
$tpl->setVariable("ACTIVE_HEAD_CLASS", "il_HAccordionHeadActive");
}
else
{
$tpl->setVariable("ACTIVE_HEAD_CLASS", "il_VAccordionHeadActive");
}
}
return $tpl->get();
}

+ Here is the call graph for this function:

ilAccordionGUI::getId ( )

Get id.

Returns
string id

Definition at line 46 of file class.ilAccordionGUI.php.

Referenced by getHTML().

{
return $this->id;
}

+ Here is the caller graph for this function:

ilAccordionGUI::getInnerContainerClass ( )

Get inner Container CSS Class.

Returns
string Container CSS Class

Definition at line 110 of file class.ilAccordionGUI.php.

Referenced by getHTML().

{
return $this->icontainerclass;
}

+ Here is the caller graph for this function:

ilAccordionGUI::getItems ( )

Get all items.

Definition at line 277 of file class.ilAccordionGUI.php.

References $items.

Referenced by getHTML().

{
return $this->items;
}

+ Here is the caller graph for this function:

ilAccordionGUI::getOrientation ( )

Get Orientation.

Returns
string Orientation

Definition at line 70 of file class.ilAccordionGUI.php.

Referenced by getHTML().

{
return $this->orientation;
}

+ Here is the caller graph for this function:

ilAccordionGUI::setActiveHeaderClass (   $a_h_class)

Set active header class.

Parameters
string$a_h_classActive Header CSS Class

Definition at line 140 of file class.ilAccordionGUI.php.

{
$this->active_headerclass = $a_h_class;
}
ilAccordionGUI::setBehaviour (   $a_val)

Set behaviour "ForceAllOpen" | "FirstOpen" | "OneOpenSession".

Parameters
stringbehaviour

Definition at line 220 of file class.ilAccordionGUI.php.

{
$this->behaviour = $a_val;
}
ilAccordionGUI::setContainerClass (   $a_containerclass)

Set Container CSS Class.

Parameters
string$a_containerclassContainer CSS Class

Definition at line 80 of file class.ilAccordionGUI.php.

{
$this->containerclass = $a_containerclass;
}
ilAccordionGUI::setContentClass (   $a_contentclass)

Set Content CSS Class.

Parameters
string$a_contentclassContent CSS Class

Definition at line 160 of file class.ilAccordionGUI.php.

{
$this->contentclass = $a_contentclass;
}
ilAccordionGUI::setContentHeight (   $a_contentheight)

Set ContentHeight.

Parameters
integer$a_contentheightContentHeight

Definition at line 200 of file class.ilAccordionGUI.php.

{
$this->contentheight = $a_contentheight;
}
ilAccordionGUI::setContentWidth (   $a_contentwidth)

Set ContentWidth.

Parameters
integer$a_contentwidthContentWidth

Definition at line 180 of file class.ilAccordionGUI.php.

{
$this->contentwidth = $a_contentwidth;
}
ilAccordionGUI::setHeaderClass (   $a_headerclass)

Set Header CSS Class.

Parameters
string$a_headerclassHeader CSS Class

Definition at line 120 of file class.ilAccordionGUI.php.

{
$this->headerclass = $a_headerclass;
}
ilAccordionGUI::setId (   $a_val)

Set id.

Parameters
stringid

Definition at line 36 of file class.ilAccordionGUI.php.

{
$this->id = $a_val;
}
ilAccordionGUI::setInnerContainerClass (   $a_containerclass)

Set inner Container CSS Class.

Parameters
string$a_containerclassContainer CSS Class

Definition at line 100 of file class.ilAccordionGUI.php.

{
$this->icontainerclass = $a_containerclass;
}
ilAccordionGUI::setOrientation (   $a_orientation)

Set Orientation.

Parameters
string$a_orientationOrientation

Definition at line 56 of file class.ilAccordionGUI.php.

References HORIZONTAL, and VERTICAL.

Referenced by __construct().

{
if (in_array($a_orientation,
{
$this->orientation = $a_orientation;
}
}

+ Here is the caller graph for this function:

Field Documentation

ilAccordionGUI::$accordion_cnt = 0
staticprotected

Definition at line 15 of file class.ilAccordionGUI.php.

ilAccordionGUI::$force_open
protected

Definition at line 14 of file class.ilAccordionGUI.php.

Referenced by getHTML().

ilAccordionGUI::$items = array()
protected

Definition at line 13 of file class.ilAccordionGUI.php.

Referenced by addItem(), and getItems().

const ilAccordionGUI::FIRST_OPEN = "FirstOpen"
const ilAccordionGUI::FORCE_ALL_OPEN = "ForceAllOpen"

Definition at line 19 of file class.ilAccordionGUI.php.

Referenced by ilObjRoleGUI\permObject().

const ilAccordionGUI::HORIZONTAL = "horizontal"
const ilAccordionGUI::ONE_OPEN_SESSION = "OneOpenSession"

Definition at line 21 of file class.ilAccordionGUI.php.

const ilAccordionGUI::VERTICAL = "vertical"

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