ILIAS  Release_4_2_x_branch Revision 61807
 All Data Structures Namespaces Files Functions Variables Groups Pages
ilPublicUserProfileGUI Class Reference

GUI class for public user profile presentation. More...

+ Collaboration diagram for ilPublicUserProfileGUI:

Public Member Functions

 __construct ($a_user_id=0)
 Constructor.
 setUserId ($a_userid)
 Set User ID.
 getUserId ()
 Get User ID.
 setAdditional ($a_additional)
 Set Additonal Information.
 getAdditional ()
 Get Additonal Information.
 setBackUrl ($a_backurl)
 Set Back Link URL.
 getBackUrl ()
 Get Back Link URL.
 setCustomPrefs (array $a_prefs)
 Set custom preferences for public profile fields.
 setEmbedded ($a_value, $a_offline=false)
 executeCommand ()
 Execute Command.
 view ()
 View.
 getHTML ()
 Show user page.
 getEmbeddable ()
 get public profile html code
 deliverVCard ()
 Deliver vcard information.
 renderTitle ()

Protected Member Functions

 getPublicPref (ilObjUser $a_user, $a_id)
 Get user preference for public profile.
 getProfilePortfolio ()
 Check if current profile portfolio is accessible.

Static Protected Member Functions

static validateUser ($a_user_id)
 Check if given user id is valid.

Protected Attributes

 $userid
 $portfolioid
 $backurl
 $additional
 $embedded
 $custom_prefs

Detailed Description

GUI class for public user profile presentation.

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

ilPublicUserProfileGUI: ilObjPortfolioGUI

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

Constructor & Destructor Documentation

ilPublicUserProfileGUI::__construct (   $a_user_id = 0)

Constructor.

Parameters
intUser ID.

Definition at line 28 of file class.ilPublicUserProfileGUI.php.

References $_GET, $ilCtrl, $lng, setBackUrl(), and setUserId().

{
global $ilCtrl, $lng;
if($a_user_id)
{
$this->setUserId($a_user_id);
}
else
{
$this->setUserId((int)$_GET["user_id"]);
}
$ilCtrl->saveParameter($this, array("user_id","back_url", "user"));
if ($_GET["back_url"] != "")
{
$this->setBackUrl($_GET["back_url"]);
}
$lng->loadLanguageModule("user");
}

+ Here is the call graph for this function:

Member Function Documentation

ilPublicUserProfileGUI::deliverVCard ( )

Deliver vcard information.

Definition at line 518 of file class.ilPublicUserProfileGUI.php.

References $_GET, ilObject\_exists(), ilUtil\deliverData(), ilObjMediaObject\getMimeType(), getUserId(), ilUtil\getWebspaceDir(), TEL_TYPE_CELL, TEL_TYPE_FAX, TEL_TYPE_HOME, and TEL_TYPE_WORK.

{
// get user object
if (!ilObject::_exists($this->getUserId()))
{
return "";
}
$user = new ilObjUser($this->getUserId());
require_once "./Services/User/classes/class.ilvCard.php";
$vcard = new ilvCard();
// ilsharedresourceGUI: embedded in shared portfolio
if ($user->getPref("public_profile") != "y" &&
$user->getPref("public_profile") != "g" &&
$_GET["baseClass"] != "ilsharedresourceGUI")
{
return;
}
$vcard->setName($user->getLastName(), $user->getFirstName(), "", $user->getUTitle());
$vcard->setNickname($user->getLogin());
$webspace_dir = ilUtil::getWebspaceDir("output");
$imagefile = $webspace_dir."/usr_images/".$user->getPref("profile_image");
if ($user->getPref("public_upload")=="y" && @is_file($imagefile))
{
$fh = fopen($imagefile, "r");
if ($fh)
{
$image = fread($fh, filesize($imagefile));
fclose($fh);
require_once "./Services/MediaObjects/classes/class.ilObjMediaObject.php";
$mimetype = ilObjMediaObject::getMimeType($imagefile);
if (preg_match("/^image/", $mimetype))
{
$type = $mimetype;
}
$vcard->setPhoto($image, $type);
}
}
$val_arr = array("getInstitution" => "institution", "getDepartment" => "department",
"getStreet" => "street",
"getZipcode" => "zipcode", "getCity" => "city", "getCountry" => "country",
"getPhoneOffice" => "phone_office", "getPhoneHome" => "phone_home",
"getPhoneMobile" => "phone_mobile", "getFax" => "fax", "getEmail" => "email",
"getHobby" => "hobby", "getMatriculation" => "matriculation", "getClientIP" => "client_ip");
$org = array();
$adr = array();
foreach ($val_arr as $key => $value)
{
// if value "y" show information
if ($user->getPref("public_".$value) == "y")
{
switch ($value)
{
case "institution":
$org[0] = $user->$key();
break;
case "department":
$org[1] = $user->$key();
break;
case "street":
$adr[2] = $user->$key();
break;
case "zipcode":
$adr[5] = $user->$key();
break;
case "city":
$adr[3] = $user->$key();
break;
case "country":
$adr[6] = $user->$key();
break;
case "phone_office":
$vcard->setPhone($user->$key(), TEL_TYPE_WORK);
break;
case "phone_home":
$vcard->setPhone($user->$key(), TEL_TYPE_HOME);
break;
case "phone_mobile":
$vcard->setPhone($user->$key(), TEL_TYPE_CELL);
break;
case "fax":
$vcard->setPhone($user->$key(), TEL_TYPE_FAX);
break;
case "email":
$vcard->setEmail($user->$key());
break;
case "hobby":
$vcard->setNote($user->$key());
break;
}
}
}
if (count($org))
{
$vcard->setOrganization(join(";", $org));
}
if (count($adr))
{
$vcard->setAddress($adr[0], $adr[1], $adr[2], $adr[3], $adr[4], $adr[5], $adr[6]);
}
ilUtil::deliverData(utf8_decode($vcard->buildVCard()), $vcard->getFilename(), $vcard->getMimetype());
}

+ Here is the call graph for this function:

ilPublicUserProfileGUI::executeCommand ( )

Execute Command.

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

References $_GET, $cmd, $ilCtrl, $ret, $tpl, getAdditional(), getProfilePortfolio(), and getUserId().

{
global $ilCtrl, $tpl;
if(!self::validateUser($this->getUserId()))
{
return;
}
$next_class = $ilCtrl->getNextClass($this);
$cmd = $ilCtrl->getCmd();
$tpl->getStandardTemplate();
switch($next_class)
{
case "ilobjportfoliogui":
$portfolio_id = $this->getProfilePortfolio();
if($portfolio_id)
{
include_once('Services/PermanentLink/classes/class.ilPermanentLinkGUI.php');
$plink = new ilPermanentLinkGUI("usr", $this->getUserId());
$plink = $plink->getHTML();
include_once "Services/Portfolio/classes/class.ilObjPortfolioGUI.php";
$gui = new ilObjPortfolioGUI();
$gui->initPortfolioObject($portfolio_id);
$gui->setAdditional($this->getAdditional());
$gui->setPermaLink($plink);
$ilCtrl->forwardCommand($gui);
break;
}
default:
$ret = $this->$cmd();
$tpl->setContent($ret);
// only for direct links
if ($_GET["baseClass"] == "ilPublicUserProfileGUI")
{
$tpl->show();
}
break;
}
}

+ Here is the call graph for this function:

ilPublicUserProfileGUI::getAdditional ( )

Get Additonal Information.

Returns
array Additonal Information

Definition at line 85 of file class.ilPublicUserProfileGUI.php.

References $additional.

Referenced by executeCommand(), and getEmbeddable().

{
}

+ Here is the caller graph for this function:

ilPublicUserProfileGUI::getBackUrl ( )

Get Back Link URL.

Returns
string Back Link URL

Definition at line 115 of file class.ilPublicUserProfileGUI.php.

References $backurl.

Referenced by renderTitle().

{
}

+ Here is the caller graph for this function:

ilPublicUserProfileGUI::getEmbeddable ( )

get public profile html code

Used in Personal Profile (as preview) and Portfolio (as page block)

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

References $additional, $ilCtrl, $ilSetting, $lng, $tpl, ilObject\_exists(), ilUserDefinedFields\_getInstance(), ilMailFormCall\_getLinkTarget(), ilObjUser\_getPersonalPicturePath(), getAdditional(), ilUtil\getImagePath(), getPublicPref(), getUserId(), ilUtil\getWebspaceDir(), and ilGoogleMapUtil\isActivated().

Referenced by getHTML().

{
global $ilSetting, $lng, $ilCtrl, $lng, $ilSetting, $ilTabs, $ilUser;
// get user object
if (!ilObject::_exists($this->getUserId()))
{
return "";
}
$user = new ilObjUser($this->getUserId());
$tpl = new ilTemplate("tpl.usr_public_profile.html", true, true,
"Services/User");
$tpl->setVariable("ROWCOL1", "tblrow1");
$tpl->setVariable("ROWCOL2", "tblrow2");
if(!$this->offline && $ilUser->getId() != ANONYMOUS_USER_ID)
{
$tpl->setCurrentBlock("mail");
$tpl->setVariable("TXT_MAIL", $lng->txt("send_mail"));
require_once 'Services/Mail/classes/class.ilMailFormCall.php';
$tpl->setVariable('HREF_MAIL', ilMailFormCall::_getLinkTarget(basename($_SERVER['REQUEST_URI']), '', array(), array('type' => 'new', 'rcp_to' => urlencode($user->getLogin()))));
$tpl->parseCurrentBlock();
}
$first_name = "";
if($this->getPublicPref($user, "public_title") == "y")
{
$first_name .= $user->getUTitle()." ";
}
$first_name .= $user->getFirstName();
$tpl->setVariable("TXT_NAME", $lng->txt("name"));
$tpl->setVariable("FIRSTNAME", $first_name);
$tpl->setVariable("LASTNAME", $user->getLastName());
if(!$this->offline)
{
// vcard
$tpl->setCurrentBlock("vcard");
$tpl->setVariable("TXT_VCARD", $lng->txt("vcard"));
$tpl->setVariable("TXT_DOWNLOAD_VCARD", $lng->txt("vcard_download"));
$ilCtrl->setParameter($this, "user", $this->getUserId());
$tpl->setVariable("HREF_VCARD", $ilCtrl->getLinkTarget($this, "deliverVCard"));
//$tpl->setVariable("IMG_VCARD", ilUtil::getImagePath("vcard.png"));
/*
// link to global profile
if ($user->prefs["public_profile"] == "g" && $ilSetting->get('enable_global_profiles'))
{
$tpl->setCurrentBlock("link");
$tpl->setVariable("TXT_LINK", $lng->txt("usr_link_to_profile"));
include_once("./classes/class.ilLink.php");
$tpl->setVariable("HREF_LINK",
ilLink::_getStaticLink($user->getId(), "usr"));
$tpl->parseCurrentBlock();
}
*/
}
$webspace_dir = ilUtil::getWebspaceDir("user");
$check_dir = ilUtil::getWebspaceDir();
$imagefile = $webspace_dir."/usr_images/".$user->getPref("profile_image")."?dummy=".rand(1,999999);
$check_file = $check_dir."/usr_images/".$user->getPref("profile_image");
if (!@is_file($check_file))
{
$imagefile = $check_file =
ilObjUser::_getPersonalPicturePath($user->getId(), "small", false, true);
}
if ($this->getPublicPref($user, "public_upload")=="y" && $imagefile != "")
{
//Getting the flexible path of image form ini file
//$webspace_dir = ilUtil::getWebspaceDir("output");
$tpl->setCurrentBlock("image");
$tpl->setVariable("TXT_IMAGE",$lng->txt("image"));
$tpl->setVariable("IMAGE_PATH", $imagefile);
$tpl->setVariable("IMAGE_ALT", $lng->txt("personal_picture"));
$tpl->parseCurrentBlock();
}
// address
if ($this->getPublicPref($user, "public_street") == "y" ||
$this->getPublicPref($user, "public_zipcode") == "y" ||
$this->getPublicPref($user, "public_city") == "y" ||
$this->getPublicPref($user, "public_countr") == "y")
{
$tpl->setCurrentBlock("address");
$tpl->setVariable("TXT_ADDRESS", $lng->txt("address"));
$val_arr = array ("getStreet" => "street",
"getZipcode" => "zipcode", "getCity" => "city", "getCountry" => "country", "getSelectedCountry" => "sel_country");
foreach ($val_arr as $key => $value)
{
// if value "y" show information
if ($this->getPublicPref($user, "public_".$value) == "y")
{
if ($user->$key() != "")
{
if ($value == "sel_country")
{
$lng->loadLanguageModule("meta");
$tpl->setVariable("COUNTRY",
$lng->txt("meta_c_".$user->$key()));
}
else
{
$tpl->setVariable(strtoupper($value), $user->$key());
}
}
}
}
$tpl->parseCurrentBlock();
}
// institution / department
if ($this->getPublicPref($user, "public_institution") == "y" ||
$this->getPublicPref($user, "public_department") == "y")
{
$tpl->setCurrentBlock("inst_dep");
$sep = "";
if ($this->getPublicPref($user, "public_institution") == "y")
{
$h = $lng->txt("institution");
$v = $user->getInstitution();
$sep = " / ";
}
if ($this->getPublicPref($user, "public_department") == "y")
{
$h.= $sep.$lng->txt("department");
$v.= $sep.$user->getDepartment();
}
$tpl->setVariable("TXT_INST_DEP", $h);
$tpl->setVariable("INST_DEP", $v);
$tpl->parseCurrentBlock();
}
// contact
$val_arr = array(
"getPhoneOffice" => "phone_office", "getPhoneHome" => "phone_home",
"getPhoneMobile" => "phone_mobile", "getFax" => "fax", "getEmail" => "email");
$v = $sep = "";
foreach ($val_arr as $key => $value)
{
// if value "y" show information
if ($this->getPublicPref($user, "public_".$value) == "y")
{
$v.= $sep.$lng->txt($value).": ".$user->$key();
$sep = "<br />";
}
}
if ($ilSetting->get("usr_settings_hide_instant_messengers") != 1)
{
$im_arr = array("icq","yahoo","msn","aim","skype","jabber","voip");
foreach ($im_arr as $im_name)
{
if ($im_id = $user->getInstantMessengerId($im_name))
{
if ($this->getPublicPref($user, "public_im_".$im_name) != "n")
{
$v.= $sep.$lng->txt('im_'.$im_name).": ".$im_id;
$sep = "<br />";
}
}
}
}
if ($v != "")
{
$tpl->parseCurrentBlock("contact");
$tpl->setVariable("TXT_CONTACT", $lng->txt("contact"));
$tpl->setVariable("CONTACT", $v);
$tpl->parseCurrentBlock();
}
$val_arr = array(
"getHobby" => "hobby", "getMatriculation" => "matriculation", "getClientIP" => "client_ip");
foreach ($val_arr as $key => $value)
{
// if value "y" show information
if ($this->getPublicPref($user, "public_".$value) == "y")
{
$tpl->setCurrentBlock("profile_data");
$tpl->setVariable("TXT_DATA", $lng->txt($value));
$tpl->setVariable("DATA", $user->$key());
$tpl->parseCurrentBlock();
}
}
// delicious row
//$d_set = new ilSetting("delicious");
if ($this->getPublicPref($user, "public_delicious") == "y")
{
$tpl->setCurrentBlock("delicious_row");
$tpl->setVariable("TXT_DELICIOUS", $lng->txt("delicious"));
$tpl->setVariable("TXT_DEL_ICON", $lng->txt("delicious"));
$tpl->setVariable("SRC_DEL_ICON", ilUtil::getImagePath("icon_delicious.gif"));
$tpl->setVariable("DEL_ACCOUNT", $user->getDelicious());
$tpl->parseCurrentBlock();
}
// map
include_once("./Services/GoogleMaps/classes/class.ilGoogleMapUtil.php");
$this->getPublicPref($user, "public_location") == "y" &&
$user->getLatitude() != "")
{
$tpl->setVariable("TXT_LOCATION", $lng->txt("location"));
include_once("./Services/GoogleMaps/classes/class.ilGoogleMapGUI.php");
$map_gui = new ilGoogleMapGUI();
$map_gui->setMapId("user_map");
$map_gui->setWidth("350px");
$map_gui->setHeight("230px");
$map_gui->setLatitude($user->getLatitude());
$map_gui->setLongitude($user->getLongitude());
$map_gui->setZoom($user->getLocationZoom());
$map_gui->setEnableNavigationControl(true);
$map_gui->addUserMarker($user->getId());
$tpl->setVariable("MAP_CONTENT", $map_gui->getHTML());
}
// additional defined user data fields
include_once './Services/User/classes/class.ilUserDefinedFields.php';
$this->user_defined_fields =& ilUserDefinedFields::_getInstance();
$user_defined_data = $user->getUserDefinedData();
foreach($this->user_defined_fields->getVisibleDefinitions() as $field_id => $definition)
{
// public setting
if ($this->getPublicPref($user, "public_udf_".$definition["field_id"]) == "y")
{
if ($user_defined_data["f_".$definition["field_id"]] != "")
{
$tpl->setCurrentBlock("udf_data");
$tpl->setVariable("TXT_UDF_DATA", $definition["field_name"]);
$tpl->setVariable("UDF_DATA", $user_defined_data["f_".$definition["field_id"]]);
$tpl->parseCurrentBlock();
}
}
}
// additional information
if (is_array($additional))
{
foreach($additional as $key => $val)
{
$tpl->setCurrentBlock("profile_data");
$tpl->setVariable("TXT_DATA", $key);
$tpl->setVariable("DATA", $val);
$tpl->parseCurrentBlock();
}
}
return $tpl->get();
}

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

ilPublicUserProfileGUI::getHTML ( )

Show user page.

Definition at line 217 of file class.ilPublicUserProfileGUI.php.

References $ilCtrl, $ilSetting, getEmbeddable(), getProfilePortfolio(), getUserId(), and renderTitle().

Referenced by view().

{
if($this->embedded)
{
return $this->getEmbeddable();
}
if($this->getProfilePortfolio())
{
$ilCtrl->redirectByClass("ilobjportfoliogui", "preview");
}
else
{
$this->renderTitle();
// Check from Database if value
// of public_profile = "y" show user infomation
$user = new ilObjUser($this->getUserId());
if ($user->getPref("public_profile") != "y" &&
($user->getPref("public_profile") != "g" || !$ilSetting->get('enable_global_profiles')) &&
!$this->custom_prefs)
{
return;
}
return $this->getEmbeddable();
}
}

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

ilPublicUserProfileGUI::getProfilePortfolio ( )
protected

Check if current profile portfolio is accessible.

Returns
int

Definition at line 676 of file class.ilPublicUserProfileGUI.php.

References ilObjPortfolio\getDefaultPortfolio(), and getUserId().

Referenced by executeCommand(), and getHTML().

{
include_once "Services/Portfolio/classes/class.ilObjPortfolio.php";
if($portfolio_id)
{
include_once('./Services/Portfolio/classes/class.ilPortfolioAccessHandler.php');
$access_handler = new ilPortfolioAccessHandler();
if($access_handler->checkAccess("read", "", $portfolio_id))
{
return $portfolio_id;
}
}
}

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

ilPublicUserProfileGUI::getPublicPref ( ilObjUser  $a_user,
  $a_id 
)
protected

Get user preference for public profile.

Will use original or custom preferences

Parameters
ilObjUser$a_user
string$a_id
Returns
string

Definition at line 139 of file class.ilPublicUserProfileGUI.php.

References ilObjUser\getPref().

Referenced by getEmbeddable().

{
if(!$this->custom_prefs)
{
return $a_user->getPref($a_id);
}
else
{
return $this->custom_prefs[$a_id];
}
}

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

ilPublicUserProfileGUI::getUserId ( )

Get User ID.

Returns
int User ID

Definition at line 65 of file class.ilPublicUserProfileGUI.php.

References $userid.

Referenced by deliverVCard(), executeCommand(), getEmbeddable(), getHTML(), getProfilePortfolio(), and renderTitle().

{
return $this->userid;
}

+ Here is the caller graph for this function:

ilPublicUserProfileGUI::renderTitle ( )

Definition at line 649 of file class.ilPublicUserProfileGUI.php.

References $_GET, $lng, $tpl, ilObjUser\_getPersonalPicturePath(), getBackUrl(), ilUserUtil\getNamePresentation(), and getUserId().

Referenced by getHTML().

{
global $tpl, $ilTabs, $lng;
$tpl->resetHeaderBlock();
include_once("./Services/User/classes/class.ilUserUtil.php");
$tpl->setTitle(ilUserUtil::getNamePresentation($this->getUserId()));
$tpl->setTitleIcon(ilObjUser::_getPersonalPicturePath($this->getUserId(), "xxsmall"));
$back = ($this->getBackUrl() != "")
? $this->getBackUrl()
: $_GET["back_url"];
if ($back != "")
{
$ilTabs->clearTargets();
$ilTabs->setBackTarget($lng->txt("back"),
$back);
}
}

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

ilPublicUserProfileGUI::setAdditional (   $a_additional)

Set Additonal Information.

Parameters
array$a_additionalAdditonal Information

Definition at line 75 of file class.ilPublicUserProfileGUI.php.

{
$this->additional = $a_additional;
}
ilPublicUserProfileGUI::setBackUrl (   $a_backurl)

Set Back Link URL.

Parameters
string$a_backurlBack Link URL

Definition at line 95 of file class.ilPublicUserProfileGUI.php.

References $ilCtrl.

Referenced by __construct().

{
global $ilCtrl;
// we only allow relative links
$parts = parse_url($a_backurl);
if($parts["host"])
{
$a_backurl = "#";
}
$this->backurl = $a_backurl;
$ilCtrl->setParameter($this, "back_url", rawurlencode($a_backurl));
}

+ Here is the caller graph for this function:

ilPublicUserProfileGUI::setCustomPrefs ( array  $a_prefs)

Set custom preferences for public profile fields.

Parameters
array$a_prefs

Definition at line 125 of file class.ilPublicUserProfileGUI.php.

{
$this->custom_prefs = $a_prefs;
}
ilPublicUserProfileGUI::setEmbedded (   $a_value,
  $a_offline = false 
)

Definition at line 151 of file class.ilPublicUserProfileGUI.php.

{
$this->embedded = (bool)$a_value;
$this->offline = (bool)$a_offline;
}
ilPublicUserProfileGUI::setUserId (   $a_userid)

Set User ID.

Parameters
int$a_useridUser ID

Definition at line 55 of file class.ilPublicUserProfileGUI.php.

Referenced by __construct().

{
$this->userid = $a_userid;
}

+ Here is the caller graph for this function:

static ilPublicUserProfileGUI::validateUser (   $a_user_id)
staticprotected

Check if given user id is valid.

Returns
bool

Definition at line 633 of file class.ilPublicUserProfileGUI.php.

References ilObject\_lookupType().

{
global $ilUser;
if (ilObject::_lookupType($a_user_id) != "usr")
{
return false;
}
$user = new ilObjUser($a_user_id);
if ($ilUser->getId() == ANONYMOUS_USER_ID && $user->getPref("public_profile") != "g")
{
return false;
}
return true;
}

+ Here is the call graph for this function:

ilPublicUserProfileGUI::view ( )

View.

This one is called e.g. through the goto script

Definition at line 209 of file class.ilPublicUserProfileGUI.php.

References getHTML().

{
return $this->getHTML();
}

+ Here is the call graph for this function:

Field Documentation

ilPublicUserProfileGUI::$additional
protected

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

Referenced by getAdditional(), and getEmbeddable().

ilPublicUserProfileGUI::$backurl
protected

Definition at line 18 of file class.ilPublicUserProfileGUI.php.

Referenced by getBackUrl().

ilPublicUserProfileGUI::$custom_prefs
protected

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

ilPublicUserProfileGUI::$embedded
protected

Definition at line 20 of file class.ilPublicUserProfileGUI.php.

ilPublicUserProfileGUI::$portfolioid
protected

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

ilPublicUserProfileGUI::$userid
protected

Definition at line 16 of file class.ilPublicUserProfileGUI.php.

Referenced by getUserId().


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