4include_once(
"./Services/COPage/classes/class.ilPageObjectGUI.php");
 
   34    protected $export_material = array(
"js" => array(), 
"images" => array(), 
"files" => array());
 
   46    public function __construct($a_portfolio_id, $a_id = 0, $a_old_nr = 0, $a_enable_comments = 
true)
 
   50        $this->tpl = 
$DIC[
"tpl"];
 
   51        $this->ctrl = 
$DIC->ctrl();
 
   52        $this->
user = $DIC->user();
 
   53        $this->obj_definition = 
$DIC[
"objDefinition"];
 
   54        $this->access = 
$DIC->access();
 
   55        $this->tree = 
$DIC->repositoryTree();
 
   56        $this->lng = 
$DIC->language();
 
   59        $this->portfolio_id = (int) $a_portfolio_id;
 
   60        $this->enable_comments = (bool) $a_enable_comments;
 
   62        parent::__construct($this->
getParentType(), $a_id, $a_old_nr);
 
   66        include_once(
"./Services/Style/Content/classes/class.ilObjStyleSheet.php");
 
   68        $tpl->setCurrentBlock(
"SyntaxStyle");
 
   70            "LOCATION_SYNTAX_STYLESHEET",
 
   73        $tpl->parseCurrentBlock();
 
   75        $tpl->setCurrentBlock(
"ContentStyle");
 
   77            "LOCATION_CONTENT_STYLESHEET",
 
   81            "LOCATION_ADDITIONAL_STYLESHEET",
 
   84        $tpl->parseCurrentBlock();
 
   86        $this->requested_ppage = (int) 
$_GET[
"ppage"];
 
  108        $next_class = $this->ctrl->getNextClass($this);
 
  109        $cmd = $this->ctrl->getCmd();
 
  111        switch ($next_class) {
 
  114                include_once 
"Services/PersonalWorkspace/classes/class.ilWorkspaceTree.php";
 
  117                $blog_node_id = $wsp_tree->lookupNodeId($blog_obj_id);
 
  119                include_once 
"Modules/Blog/classes/class.ilObjBlogGUI.php";
 
  121                $blog_gui->disableNotes(!$this->enable_comments);
 
  122                $blog_gui->prtf_embed = 
true; 
 
  123                return $ilCtrl->forwardCommand($blog_gui);
 
  125            case "ilcalendarmonthgui":
 
  129                if ($cmd && $cmd != 
"preview") {
 
  131                    if ($categories->getMode() == 0) {
 
  132                        if (
$_GET[
'chuid']) {
 
  133                            $categories->setCHUserId((
int) 
$_GET[
'chuid']);
 
  144                    include_once(
'./Services/Calendar/classes/class.ilCalendarMonthGUI.php');
 
  146                    return $ilCtrl->forwardCommand($month_gui);
 
  150                    $ilCtrl->setParameter($this, 
"cmd", 
"preview");
 
  155            case "ilpageobjectgui":
 
  156                die(
"Deprecated. ilPortfolioPage gui forwarding to ilpageobject");
 
  161                return parent::executeCommand();
 
  180                return $this->
renderBlog(
$ilUser->getId(), (
int) $this->getPageObject()->getTitle());
 
  199        if (!$this->embedded) {
 
  200            parent::getTabs($a_activate);
 
  211        $this->embedded = (bool) $a_value;
 
  221        $this->additional = $a_additional;
 
  242            "Profile" => array(
"0-9", 
"a-z", 
"0-9a-z_;\W"), 
 
  243            "Verification" => array(
"0-9", 
"a-z", 
"0-9"), 
 
  244            "Blog" => array(
"0-9", 
"0-9", 
"0-9;\W"),  
 
  245            "BlogTeaser" => array(
"0-9", 
"0-9", 
"0-9;\W"),  
 
  246            "Skills" => array(
"0-9", 
"0-9"),  
 
  247            "SkillsTeaser" => array(
"0-9", 
"0-9"),  
 
  248            "ConsultationHours" => array(
"0-9", 
"a-z", 
"0-9;\W"),  
 
  249            "ConsultationHoursTeaser" => array(
"0-9", 
"a-z", 
"0-9;\W"),  
 
  250            "MyCourses" => array(
"0-9", 
"a-z*"),  
 
  251            "MyCoursesTeaser" => array(
"0-9", 
"a-z*")  
 
  256            $def_parts = array();
 
  257            foreach (
$def as $part) {
 
  258                $is_opt = (substr($part, -1) == 
"*");
 
  265                    $part = substr($part, 0, -1);
 
  267                $def_parts[] = 
"([" . $part . 
"]" . $end_marker . 
")";
 
  269            $def = implode(
"", $def_parts);
 
  272                "/" . $this->pl_start . 
$type . 
$def . $this->pl_end . 
"/",
 
  276                foreach ($blocks[0] as $idx => $block) {
 
  283                        case "ConsultationHours":
 
  284                        case "ConsultationHoursTeaser":
 
  286                        case "MyCoursesTeaser":
 
  288                            if (trim($blocks[3][$idx])) {
 
  289                                foreach (explode(
";", $blocks[3][$idx]) as $sub) {
 
  291                                        $subs[] = trim($sub);
 
  295                            $snippet = $this->{
"render" . 
$type}(
 
  303                            $snippet = $this->{
"render" . 
$type}(
 
  312                    $a_output = str_replace($block, $snippet, $a_output);
 
  324        return trim($a_html);
 
  331            $options = 
'<div class="il_Footer">' . $this->lng->txt(
"prtf_page_element_teaser_settings") .
 
  332                ": " . $a_options . 
'</div>';
 
  335        return '<div style="margin:5px" class="ilBox"><h3>' . $a_title . 
'</h3>' .
 
  336            '<div class="il_Description_no_margin">' . $this->lng->txt(
"prtf_page_element_teaser_" . 
$a_type) . 
'</div>' .
 
  349            $this->export_material[
"js"][] = 
"http://maps.google.com/maps/api/js?sensor=false";
 
  350            $this->export_material[
"js"][] = 
"./Services/Maps/js/ServiceGoogleMaps.js";
 
  351            $this->export_material[
"js"][] = 
"./Services/Maps/js/OpenLayers.js";
 
  352            $this->export_material[
"js"][] = 
"./Services/Maps/js/ServiceOpenLayers.js";
 
  355        include_once(
"./Services/User/classes/class.ilPublicUserProfileGUI.php");
 
  357        $pub_profile->setEmbedded(
true, ($this->
getOutputMode() == 
"offline"));
 
  362        if (
$a_type == 
"manual" && 
sizeof($a_fields)) {
 
  364            foreach ($a_fields as $field) {
 
  365                $field = trim($field);
 
  367                    $prefs[
"public_" . $field] = 
"y";
 
  371            $pub_profile->setCustomPrefs($prefs);
 
  375            return $ilCtrl->getHTML($pub_profile);
 
  377            return $pub_profile->getEmbeddable();
 
  396        if (
$a_type === 
'crta' && $outputMode === 
'offline') {
 
  399            $certificatePdfFile = $fileService->createCertificateFilePath($a_user_id, $a_id);
 
  400            $this->export_material[
"files"][] = $certificatePdfFile;
 
  402            $url = 
'files/' . basename($certificatePdfFile);
 
  407        } elseif (
$a_type === 
'crta' && $outputMode === 
'print') {
 
  412        } elseif (
$a_type === 
'crta') {
 
  413            $this->ctrl->setParameter($this, 
"dlid", $a_id);
 
  414            $url = $this->ctrl->getLinkTarget($this, 
"dl" . 
$a_type);
 
  415            $this->ctrl->setParameter($this, 
"dlid", 
"");
 
  422        $class = 
"ilObj" . $objDefinition->getClassName(
$a_type) . 
"GUI";
 
  423        include_once $objDefinition->getLocation(
$a_type) . 
"/class." . $class . 
".php";
 
  426        if ($outputMode == 
"print") {
 
  428        } elseif ($outputMode != 
"offline") {
 
  430            $this->ctrl->setParameter($this, 
"dlid", $a_id);
 
  431            $url = $this->ctrl->getLinkTarget($this, 
"dl" . 
$a_type);
 
  432            $this->ctrl->setParameter($this, 
"dlid", 
"");
 
  434            $file = $verification->object->getFilePath();
 
  435            $url = 
"files/" . basename($file);
 
  437            $this->export_material[
"files"][] = $file;
 
  440        return $verification->render(
true, 
$url);
 
  447            include_once 
"Modules/Test/classes/class.ilObjTestVerificationGUI.php";
 
  449            $verification->downloadFromPortfolioPage($this->
getPageObject());
 
  457            include_once 
"Modules/Exercise/classes/class.ilObjExerciseVerificationGUI.php";
 
  459            $verification->downloadFromPortfolioPage($this->
getPageObject());
 
  467            include_once 
"Modules/Course/classes/Verification/class.ilObjCourseVerificationGUI.php";
 
  469            $verification->downloadFromPortfolioPage($this->
getPageObject());
 
  477            include_once 
"Modules/ScormAicc/classes/Verification/class.ilObjSCORMVerificationGUI.php";
 
  479            $verification->downloadFromPortfolioPage($this->
getPageObject());
 
  485        $objectId = 
$_GET[
"dlid"];
 
  488            $object->downloadFromPortfolioPage($this->
getPageObject(), $objectId, $this->
user->getId());
 
  492    protected function renderBlog($a_user_id, $a_blog_id, array $a_posting_ids = 
null)
 
  500        if (!$a_posting_ids) {
 
  501            include_once 
"Modules/Blog/classes/class.ilObjBlogGUI.php";
 
  506            $blog->disableNotes(!$this->enable_comments);
 
  507            $blog->setContentStyleSheet();
 
  510                return $ilCtrl->getHTML($blog);
 
  518            include_once 
"Modules/Blog/classes/class.ilObjBlog.php";
 
  521            include_once 
"Modules/Blog/classes/class.ilBlogPostingGUI.php";
 
  522            foreach ($a_posting_ids as 
$post) {
 
  527                    $page->setOutputMode(
"offline");
 
  529                $html[] = $page->showPage();
 
  532            return implode(
"\n", 
$html);
 
  542        if ($a_posting_ids) {
 
  543            $postings = array(
"<ul>");
 
  544            include_once 
"Modules/Blog/classes/class.ilBlogPosting.php";
 
  545            foreach ($a_posting_ids as 
$post) {
 
  547                $postings[] = 
"<li>" . 
$post->getTitle() . 
" - " .
 
  550            $postings[] = 
"</ul>";
 
  551            $postings = implode(
"\n", $postings);
 
  554        return $this->
renderTeaser(
"blog", $this->lng->txt(
"obj_blog") . 
' "' .
 
  566        include_once 
"Services/Skill/classes/class.ilPersonalSkillsGUI.php";
 
  569            $gui->setOfflineMode(
"./files/");
 
  571        $html = $gui->getSkillHTML($a_skills_id, $user_id);
 
  581        include_once 
"Services/Skill/classes/class.ilSkillTreeNode.php";
 
  583        return $this->
renderTeaser(
"skills", $this->lng->txt(
"skills") . 
' "' .
 
  592        if ($a_mode == 
"auto") {
 
  593            $mode = $this->lng->txt(
"cont_cach_mode_automatic");
 
  596            $mode = $this->lng->txt(
"cont_cach_mode_manual");
 
  598            include_once 
"Services/Calendar/classes/ConsultationHours/class.ilConsultationHourGroups.php";
 
  600            foreach ($a_group_ids as $grp_id) {
 
  603            $groups = 
" (" . implode(
", ", $groups) . 
")";
 
  606        $this->lng->loadLanguageModule(
"dateplaner");
 
  608            "consultation_hours",
 
  609            $this->lng->txt(
"app_consultation_hours"),
 
  633        if (
$ilUser->getId() != $user_id) {
 
  634            $_GET[
"bkid"] = $user_id;
 
  637        if ($a_mode != 
"manual") {
 
  641        include_once(
'./Services/Calendar/classes/class.ilCalendarCategories.php');
 
  645        if (!$_REQUEST[
"seed"]) {
 
  651        include_once(
'./Services/Calendar/classes/class.ilCalendarMonthGUI.php');
 
  653        $month_gui->setConsulationHoursUserId($user_id);
 
  656        include_once(
'./Services/Calendar/classes/class.ilCalendarScheduleFilterBookings.php');
 
  658        $month_gui->addScheduleFilter($filter);
 
  662        $this->lng->loadLanguageModule(
"dateplaner");
 
  663        return '<h3>' . $this->lng->txt(
"app_consultation_hours") . 
'</h3>' .
 
  664            $this->ctrl->getHTML($month_gui);
 
  670        return (
bool) $prfa_set->get(
"mycrs", 
true);
 
  680            : 
"my_courses_inactive";
 
  684            $this->lng->txt(
"prtf_page_element_my_courses_title")
 
  704            $this->export_material[
"images"][] = 
"./templates/default/images/icon_crs.svg";
 
  705            $this->export_material[
"images"][] = 
"./templates/default/images/icon_lobj.svg";
 
  706            $this->export_material[
"images"][] = 
"./templates/default/images/scorm/complete.svg";
 
  707            $this->export_material[
"images"][] = 
"./templates/default/images/scorm/not_attempted.svg";
 
  708            $this->export_material[
"images"][] = 
"./templates/default/images/scorm/failed.svg";
 
  709            $this->export_material[
"images"][] = 
"./templates/default/images/scorm/incomplete.svg";
 
  711            $img_path = 
"images/";
 
  718            in_array(
$_POST[
"srt"], array(
"alpha", 
"loc"))) {
 
  721        $sorting = 
$ilUser->getPref(
"prtf_mcrs_sort");
 
  723            $sorting = $a_default_sorting;
 
  728            if ($sorting != 
"loc") {
 
  734            $tpl = 
new ilTemplate(
"tpl.pc_my_courses.html", 
true, 
true, 
"Modules/Portfolio");
 
  735            $tpl->setVariable(
"TITLE", $this->lng->txt(
"prtf_page_element_my_courses_title"));
 
  736            $tpl->setVariable(
"INFO", $this->lng->txt(
"prtf_page_element_my_courses_info")); 
 
  738            include_once(
"./Services/Tracking/classes/class.ilLearningProgressBaseGUI.php");
 
  739            $this->lng->loadLanguageModule(
"trac");
 
  740            $this->lng->loadLanguageModule(
"crs");
 
  742            include_once(
"./Services/Container/classes/class.ilContainerObjectiveGUI.php");
 
  743            include_once(
"./Services/Link/classes/class.ilLink.php");
 
  748                    "alpha" => $this->lng->txt(
"cont_mycourses_sortorder_alphabetical"),
 
  749                    "loc" => $this->lng->txt(
"cont_mycourses_sortorder_location")
 
  759                    array(
"onchange" => 
"form.submit()")
 
  766            foreach (
$data as $course) {
 
  767                if ($sorting == 
"loc") {
 
  768                    if ($course[
"path"] != $old_path) {
 
  769                        $tpl->setCurrentBlock(
"path_bl");
 
  770                        $tpl->setVariable(
"PATH", $course[
"path"]);
 
  771                        $tpl->parseCurrentBlock();
 
  773                        $old_path = $course[
"path"];
 
  777                if (isset($course[
"lp_status"])) {
 
  782                        $lp_icon = $img_path . basename($lp_icon);
 
  785                    $tpl->setCurrentBlock(
"lp_bl");
 
  786                    $tpl->setVariable(
"LP_ICON_URL", $lp_icon);
 
  787                    $tpl->setVariable(
"LP_ICON_ALT", $lp_alt);
 
  788                    $tpl->parseCurrentBlock();
 
  792                if (
$ilUser->getId() != ANONYMOUS_USER_ID) {
 
  793                    $do_links = $ilAccess->checkAccessOfUser(
$ilUser->getId(), 
"read", 
"", $course[
"ref_id"], 
"crs") ||
 
  794                        ($ilAccess->checkAccessOfUser(
$ilUser->getId(), 
"visible", 
"", $course[
"ref_id"], 
"crs") &&
 
  795                        $ilAccess->checkAccessOfUser(
$ilUser->getId(), 
"join", 
"", $course[
"ref_id"], 
"crs"));
 
  798                if (isset($course[
"objectives"])) {
 
  799                    include_once 
'./Modules/Course/classes/Objectives/class.ilLOSettings.php';
 
  801                    $has_initial_test = (bool) $loc_settings->getInitialTest();
 
  803                    foreach ($course[
"objectives"] as $objtv) {
 
  805                            $params = array(
"oobj" => $objtv[
"id"]);
 
  809                            $url .= 
"#objtv_acc_" . $objtv[
"id"];
 
  812                                $tpl->touchBlock(
"objective_dnone");
 
  815                            $tpl->setCurrentBlock(
"objective_link_bl");
 
  817                            if (trim($objtv[
"desc"])) {
 
  818                                $desc = nl2br($objtv[
"desc"]);
 
  819                                $tt_id = 
"objtvtt_" . $objtv[
"id"] . 
"_" . ((int) self::$initialized);
 
  821                                include_once 
"Services/UIComponent/Tooltip/classes/class.ilTooltipGUI.php";
 
  822                                ilToolTipGUI::addTooltip($tt_id, $desc, 
"", 
"bottom center", 
"top center", 
false);
 
  824                                $tpl->setVariable(
"OBJECTIVE_LINK_ID", $tt_id);
 
  827                            $tpl->setVariable(
"OBJECTIVE_LINK_URL", 
$url);
 
  828                            $tpl->setVariable(
"OBJECTIVE_LINK_TITLE", $objtv[
"title"]);
 
  829                            $tpl->parseCurrentBlock();
 
  831                            $tpl->setCurrentBlock(
"objective_nolink_bl");
 
  832                            $tpl->setVariable(
"OBJECTIVE_NOLINK_TITLE", $objtv[
"title"]);
 
  833                            $tpl->parseCurrentBlock();
 
  838                            $objtv_icon = $img_path . basename($objtv_icon);
 
  841                        $tpl->setCurrentBlock(
"objective_bl");
 
  842                        $tpl->setVariable(
"OBJTV_ICON_URL", $objtv_icon);
 
  843                        $tpl->setVariable(
"OBJTV_ICON_ALT", $this->lng->txt(
"crs_objectives"));
 
  845                        if ($objtv[
"type"]) {
 
  852                        $tpl->parseCurrentBlock();
 
  855                    $tpl->setCurrentBlock(
"objectives_bl");
 
  856                    $tpl->setVariable(
"OBJTV_LIST_CRS_ID", $course[
"obj_id"]);
 
  857                    $tpl->parseCurrentBlock();
 
  862                    $tpl->setCurrentBlock(
"course_link_bl");
 
  863                    $tpl->setVariable(
"COURSE_LINK_TITLE", $course[
"title"]);
 
  865                    $tpl->parseCurrentBlock();
 
  867                    $tpl->setCurrentBlock(
"course_nolink_bl");
 
  868                    $tpl->setVariable(
"COURSE_NOLINK_TITLE", $course[
"title"]);
 
  869                    $tpl->parseCurrentBlock();
 
  874                    $crs_icon = $img_path . basename($crs_icon);
 
  877                $tpl->setCurrentBlock(
"course_bl");
 
  879                if (isset($course[
"objectives"])) {
 
  880                    $tpl->setVariable(
"TOGGLE_CLASS", 
"ilPCMyCoursesToggle");
 
  882                    $tpl->setVariable(
"NO_TOGGLE", 
' style="visibility:hidden;"');
 
  885                $tpl->setVariable(
"CRS_ICON_URL", $crs_icon);
 
  886                $tpl->setVariable(
"CRS_ICON_ALT", $this->lng->txt(
"obj_crs"));
 
  887                $tpl->parseCurrentBlock();
 
  891            if (!self::$initialized) {
 
  892                $GLOBALS[
"tpl"]->addJavaScript(
"Modules/Portfolio/js/ilPortfolio.js");
 
  893                $GLOBALS[
"tpl"]->addOnLoadCode(
"ilPortfolio.init()");
 
  895            self::$initialized++;
 
  909        return $ctrl->getFormActionByClass(
"ilobjportfoliogui", 
"preview");
 
  919        include_once 
'Modules/Course/classes/class.ilObjCourseAccess.php';
 
  920        include_once 
'Services/Membership/classes/class.ilParticipants.php';
 
  923        $repo_title = 
$tree->getNodeData(ROOT_FOLDER_ID);
 
  924        $repo_title = $repo_title[
"title"];
 
  925        if ($repo_title == 
"ILIAS") {
 
  926            $repo_title = $this->lng->txt(
"repository");
 
  929        $references = $lp_obj_refs = array();
 
  930        foreach ($items as $obj_id) {
 
  932            if (is_array($ref_id) && count($ref_id)) {
 
  933                $ref_id = array_pop($ref_id);
 
  934                if (!
$tree->isDeleted($ref_id)) {
 
  937                    if ($active && $visible) {
 
  938                        $references[$ref_id] = array(
 
  946                            foreach (
$tree->getPathFull($ref_id) as $item) {
 
  947                                $path[] = $item[
"title"];
 
  950                            if (
sizeof(
$path) == 2) {
 
  955                            $references[$ref_id][
"path_sort"] = implode(
"__", 
$path);
 
  958                            if (!
sizeof(
$path)) {
 
  959                                array_unshift(
$path, $repo_title);
 
  961                            $references[$ref_id][
"path"] = implode(
" › ", 
$path);
 
  964                        $lp_obj_refs[$obj_id] = $ref_id;
 
  972        if (
sizeof($lp_obj_refs)) {
 
  974            include_once 
'Modules/Course/classes/class.ilObjCourse.php';
 
  975            foreach ($lp_obj_refs as $obj_id => $ref_id) {
 
  978                    $references[$ref_id][
"objectives"] = $this->
parseObjectives($obj_id, $a_user_id);
 
  983            include_once 
"Services/Tracking/classes/class.ilObjUserTracking.php";
 
  988                include_once 
"Services/Tracking/classes/class.ilTrQuery.php";
 
  989                include_once 
"Services/Tracking/classes/class.ilLPStatusFactory.php";
 
  991                foreach ($lp_data as $item) {
 
  992                    $ref_id = $item[
"ref_ids"];
 
  993                    $references[$ref_id][
"lp_status"] = $item[
"status"];
 
 1006        include_once 
"Services/Tracking/classes/class.ilLPObjSettings.php";
 
 1007        include_once 
"Services/Tracking/classes/collection/class.ilLPCollectionOfObjectives.php";
 
 1009        $coll_objtv = $coll_objtv->getItems();
 
 1014            include_once 
"Modules/Course/classes/Objectives/class.ilLOTestAssignments.php";
 
 1019            include_once 
"Modules/Course/classes/class.ilCourseObjective.php";
 
 1020            foreach ($coll_objtv as $objective_id) {
 
 1023                $tmp[$objective_id] = array(
 
 1024                    "id" => $objective_id,
 
 1025                    "title" => 
$title[
"title"],
 
 1026                    "desc" => 
$title[
"description"],
 
 1031                if (array_key_exists($objective_id, $lo_results)) {
 
 1032                    $lo_result = $lo_results[$objective_id];
 
 1033                    $tmp[$objective_id][
"user_id"] = $lo_result[
"user_id"];
 
 1034                    $tmp[$objective_id][
"result_perc"] = $lo_result[
"result_perc"];
 
 1035                    $tmp[$objective_id][
"limit_perc"] = $lo_result[
"limit_perc"];
 
 1036                    $tmp[$objective_id][
"status"] = $lo_result[
"status"];
 
 1037                    $tmp[$objective_id][
"type"] = $lo_result[
"type"];
 
 1038                    $tmp[$objective_id][
"initial"] = $lo_result[
"initial"];
 
 1043            foreach ($coll_objtv as $objtv_id) {
 
 1044                $res[] = $tmp[$objtv_id];
 
 1056        include_once 
"Modules/Course/classes/Objectives/class.ilLOUserResults.php";
 
 1058        foreach ($lur->getCourseResultsForUserPresentation() as $objective_id => $types) {
 
 1074            $result[
"initial_status"] = $initial_status;
 
 1100        $start = strpos($a_html, 
"{{{{{PlaceHolder#");
 
 1107            $param = explode(
"#", $param);
 
 1110            switch ($param[2]) {
 
 1120                    $html = 
$lng->txt(
"cont_question_placeh");
 
 1123                case "Verification":
 
 1124                    $html = 
$lng->txt(
"cont_verification_placeh");
 
 1130                && $this->getOutputMode() == 
"presentation") {
 
 1131                switch ($param[2]) {
 
 1133                        $ilCtrl->setParameterByClass(
"ilportfoliopagegui", 
"prt_id", 
$_GET[
"prt_id"]);
 
 1134                        $ilCtrl->setParameterByClass(
"ilportfoliopagegui", 
"ppage", $this->
getId());
 
 1135                        $ilCtrl->setParameterByClass(
"ilportfoliopagegui", 
"pl_pc_id", $param[0]);
 
 1136                        $ilCtrl->setParameterByClass(
"ilportfoliopagegui", 
"pl_hier_id", $param[1]);
 
 1137                        $href = 
$ilCtrl->getLinkTargetByClass(
"ilportfoliopagegui", 
"insertJSAtPlaceholder");
 
 1138                        $html = 
"<a href='" . $href . 
"'>" . 
$html . 
"</a>";
 
 1142                        $ilCtrl->setParameterByClass(
"ilpcmediaobjectgui", 
"prt_id", 
$_GET[
"prt_id"]);
 
 1143                        $ilCtrl->setParameterByClass(
"ilpcmediaobjectgui", 
"ppage", $this->
getId());
 
 1144                        $ilCtrl->setParameterByClass(
"ilpcmediaobjectgui", 
"pl_pc_id", $param[0]);
 
 1145                        $ilCtrl->setParameterByClass(
"ilpcmediaobjectgui", 
"pl_hier_id", $param[1]);
 
 1146                        $ilCtrl->setParameterByClass(
"ilpcmediaobjectgui", 
"subCmd", 
"insertNew");
 
 1147                        $href = 
$ilCtrl->getLinkTargetByClass(array(
"ilPortfolioPageGUI", 
"ilPageEditorGUI", 
"ilPCPlaceHolderGUI", 
"ilpcmediaobjectgui"), 
"insert");
 
 1148                        $html = 
"<a href='" . $href . 
"'>" . 
$html . 
"</a>";
 
 1153            $h2 = substr($a_html, 0, 
$start) .
 
 1155                substr($a_html, 
$end + 5);
 
 1159            $start = strpos($a_html, 
"{{{{{PlaceHolder#", 
$start + 5);
 
 1180        $ctrl->setParameterByClass(
"ilobjportfoliogui", 
"user_page", $this->requested_ppage);
 
 1181        return $ctrl->getLinkTargetByClass(
"ilobjportfoliogui", 
"preview");
 
 1192        return $this->lng->txt(
"preview");
 
 1203        include_once(
"./Services/Link/classes/class.ilLink.php");
 
 1217        $presentation = $userCertificateRepository->fetchActiveCertificateForPresentation($this->
user->getId(), $a_id);
 
 1218        $caption = $this->lng->txt(
'certificate') . 
': ';
 
 1219        $caption .= $this->lng->txt($presentation->getUserCertificate()->getObjType()) . 
' ';
 
 1220        $caption .= 
'"' . $presentation->getObjectTitle() . 
'"';
 
 1222        return '<div><a href="' . 
$url . 
'">' . $caption . 
'</a></div>';
 
An exception for terminatinating execution or to throw for unit testing.
const IL_CRS_VIEW_OBJECTIVE
Class ilBlogPosting GUI class.
const MODE_PORTFOLIO_CONSULTATION
static _getInstance($a_usr_id=0)
get singleton instance
Calendar schedule filter for consultation hour bookings.
static lookupTitle($a_group_id)
Lookup group title.
static buildObjectiveProgressBar($a_has_initial_test, $a_objective_id, array $a_lo_result, $a_list_mode=false, $a_sub=false, $a_tt_suffix=null)
Render progressbar(s) for given objective and result data.
static lookupObjectiveTitle($a_objective_id, $a_add_description=false)
static formatDate(ilDateTime $date, $a_skip_day=false, $a_include_wd=false, $include_seconds=false)
Format a date @access public.
const TYPE_TEST_QUALIFIED
static getInstanceByObjId($a_obj_id)
get singleton instance
static getInstance($a_container_id)
Get instance by container id.
LP collection of objectives.
static _getStatusText($a_status, $a_lng=null)
Get status alt text.
static _getImagePathForStatus($a_status)
Get image path for status.
static _getLink($a_ref_id, $a_type='', $a_params=array(), $append="")
static _getStaticLink( $a_ref_id, $a_type='', $a_fallback_goto=true, $append="")
Get static link.
static _isActivated($a_obj_id, &$a_visible_flag=null, $a_mind_member_view=true)
Is activated?
GUI class for course verification.
static _lookupViewMode($a_id)
lookup view mode of container
GUI class for exercise verification.
GUI class for scorm verification.
static getSyntaxStylePath()
get syntax style path
static getPlaceHolderStylePath()
get placeholder style path (for Page Layouts)
static getContentStylePath($a_style_id, $add_random=true)
get content style path
GUI class for test verification.
static _hasLearningProgressLearner()
static _enabledLearningProgress()
check wether learing progress is enabled or not
static _enabledUserRelatedData()
check wether user related tracking is enabled or not
const WORKSPACE_OBJECT_ID
static _lookupOwner($a_id)
lookup object owner
static _lookupTitle($a_id)
lookup object title
static _lookupTitle($a_id)
lookup object title
static _getAllReferences($a_id)
get all reference ids of object
static _lookupType($a_id, $a_reference=false)
lookup object type
setPresentationTitle($a_title="")
getPageObject()
Get Page Object.
setTemplateOutput($a_output=true)
static _getMembershipByType($a_usr_id, $a_type, $a_only_member_role=false)
get membership by type Get course or group membership
Personal skills GUI class.
Portfolio page gui class.
setEmbedded($a_value)
Set embedded mode: will suppress tabs.
executeCommand()
execute command
getPageContentUserId($a_user_id)
getCoursesOfUser($a_user_id, $a_add_path=false)
parseLOUserResults($a_course_obj_id, $a_user_id)
getCourseSortAction($ctrl)
Get course sort action.
renderTeaser($a_type, $a_title, $a_options=null)
getParentType()
Get parent type.
renderPageElement($a_type, $a_html)
renderProfile($a_user_id, $a_type, array $a_fields=null)
renderConsultationHours($a_user_id, $a_mode, $a_group_ids)
getPagePermaLink()
Get page perma link.
getViewPageText()
Get view page link.
renderSkillsTeaser($a_user_id, $a_skills_id)
getTabs($a_activate="")
Set all tabs.
renderBlog($a_user_id, $a_blog_id, array $a_posting_ids=null)
renderBlogTeaser($a_user_id, $a_blog_id, array $a_posting_ids=null)
renderVerification($a_user_id, $a_type, $a_id)
postOutputProcessing($a_output)
Finalizing output processing.
getAdditional()
Get Additonal Information.
createPersistentCertificateUrl($a_id, $userCertificateRepository, $url)
renderConsultationHoursTeaser($a_user_id, $a_mode, $a_group_ids)
__construct($a_portfolio_id, $a_id=0, $a_old_nr=0, $a_enable_comments=true)
Constructor.
parseObjectives($a_obj_id, $a_user_id)
renderMyCoursesTeaser($a_user_id, $a_default_sorting)
getViewPageLink()
Get view page link.
renderMyCourses($a_user_id, $a_default_sorting)
renderSkills($a_user_id, $a_skills_id)
makePlaceHoldersClickable($a_html)
Modify page content after xsl.
setAdditional($a_additional)
Set Additonal Information.
static findPortfolioForPage($a_page_id)
Get portfolio id of page id.
GUI class for public user profile presentation.
static _lookupTitle($a_obj_id, $a_tref_id=0)
Lookup Title.
special template class to simplify handling of ITX/PEAR
static getObjectsStatusForUser($a_user_id, array $obj_refs)
static sortArray( $array, $a_array_sortby, $a_array_sortorder=0, $a_numeric=false, $a_keep_keys=false)
sortArray
static getStyleSheetLocation($mode="output", $a_css_name="", $a_css_location="")
get full style sheet file name (path inclusive) of current user
static formSelect( $selected, $varname, $options, $multiple=false, $direct_text=false, $size="0", $style_class="", $attribs="", $disabled=false)
Builds a select form field with options and shows the selected option first.
static getTypeIconPath($a_type, $a_obj_id, $a_size='small')
Get type icon path path Return image path for icon_xxx.pngs Or (if enabled) path to custom icon Depre...
Tree handler for personal workspace.
if(!array_key_exists('StateId', $_REQUEST)) $id
$GLOBALS['JPEG_Segment_Names']
Global Variable: XMP_tag_captions.
foreach($_POST as $key=> $value) $res