ILIAS  Release_4_2_x_branch Revision 61807
 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)
 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()

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 24 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 251 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 
)

Add item.

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

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

Add javascript files that are necessary to run accordion.

Definition at line 236 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 148 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 228 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 88 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 168 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 208 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 188 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 128 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 278 of file class.ilAccordionGUI.php.

References $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());
if ($this->getBehaviour() == "OneOpenSession" && $this->getId() != "")
{
include_once("./Services/Accordion/classes/class.ilAccordionPropertiesStorage.php");
$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 44 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 108 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 270 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 68 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 138 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 218 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 78 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 158 of file class.ilAccordionGUI.php.

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

Set ContentHeight.

Parameters
integer$a_contentheightContentHeight

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

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

Set ContentWidth.

Parameters
integer$a_contentwidthContentWidth

Definition at line 178 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 118 of file class.ilAccordionGUI.php.

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

Set id.

Parameters
stringid

Definition at line 34 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 98 of file class.ilAccordionGUI.php.

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

Set Orientation.

Parameters
string$a_orientationOrientation

Definition at line 54 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 14 of file class.ilAccordionGUI.php.

ilAccordionGUI::$items = array()
protected

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

Referenced by getItems().

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

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

Referenced by ilObjRoleGUI\permObject().

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

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

const ilAccordionGUI::VERTICAL = "vertical"

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