4include_once(
"./Services/COPage/classes/class.ilPageObjectGUI.php");
 
   34    protected $export_material = array(
"js"=>array(), 
"images"=>array(), 
"files"=>array());
 
   41    public function __construct($a_portfolio_id, $a_id = 0, $a_old_nr = 0, $a_enable_comments = 
true)
 
   45        $this->tpl = 
$DIC[
"tpl"];
 
   46        $this->ctrl = 
$DIC->ctrl();
 
   47        $this->
user = $DIC->user();
 
   48        $this->obj_definition = 
$DIC[
"objDefinition"];
 
   49        $this->access = 
$DIC->access();
 
   50        $this->tree = 
$DIC->repositoryTree();
 
   51        $this->lng = 
$DIC->language();
 
   54        $this->portfolio_id = (int) $a_portfolio_id;
 
   55        $this->enable_comments = (bool) $a_enable_comments;
 
   57        parent::__construct($this->
getParentType(), $a_id, $a_old_nr);
 
   61        include_once(
"./Services/Style/Content/classes/class.ilObjStyleSheet.php");
 
   63        $tpl->setCurrentBlock(
"SyntaxStyle");
 
   65            "LOCATION_SYNTAX_STYLESHEET",
 
   68        $tpl->parseCurrentBlock();
 
   70        $tpl->setCurrentBlock(
"ContentStyle");
 
   72            "LOCATION_CONTENT_STYLESHEET",
 
   76            "LOCATION_ADDITIONAL_STYLESHEET",
 
   79        $tpl->parseCurrentBlock();
 
  101        $next_class = $this->ctrl->getNextClass($this);
 
  102        $cmd = $this->ctrl->getCmd();
 
  104        switch ($next_class) {
 
  107                include_once 
"Services/PersonalWorkspace/classes/class.ilWorkspaceTree.php";
 
  110                $blog_node_id = $wsp_tree->lookupNodeId($blog_obj_id);
 
  112                include_once 
"Modules/Blog/classes/class.ilObjBlogGUI.php";
 
  114                $blog_gui->disableNotes(!$this->enable_comments);
 
  115                $blog_gui->prtf_embed = 
true; 
 
  116                return $ilCtrl->forwardCommand($blog_gui);
 
  118            case "ilcalendarmonthgui":
 
  122                if ($cmd && $cmd != 
"preview") {
 
  124                    if ($categories->getMode() == 0) {
 
  125                        if (
$_GET[
'chuid']) {
 
  126                            $categories->setCHUserId((
int) 
$_GET[
'chuid']);
 
  137                    include_once(
'./Services/Calendar/classes/class.ilCalendarMonthGUI.php');
 
  139                    return $ilCtrl->forwardCommand($month_gui);
 
  143                    $ilCtrl->setParameter($this, 
"cmd", 
"preview");
 
  148            case "ilpageobjectgui":
 
  149                die(
"Deprecated. ilPortfolioPage gui forwarding to ilpageobject");
 
  154                return parent::executeCommand();
 
  173                return $this->
renderBlog(
$ilUser->getId(), (
int) $this->getPageObject()->getTitle());
 
  192        if (!$this->embedded) {
 
  193            parent::getTabs($a_activate);
 
  204        $this->embedded = (bool) $a_value;
 
  214        $this->additional = $a_additional;
 
  235            "Profile" => array(
"0-9", 
"a-z", 
"0-9a-z_;\W"), 
 
  236            "Verification" => array(
"0-9", 
"a-z", 
"0-9"), 
 
  237            "Blog" => array(
"0-9", 
"0-9", 
"0-9;\W"),  
 
  238            "BlogTeaser" => array(
"0-9", 
"0-9", 
"0-9;\W"),  
 
  239            "Skills" => array(
"0-9", 
"0-9"),  
 
  240            "SkillsTeaser" => array(
"0-9", 
"0-9"),  
 
  241            "ConsultationHours" => array(
"0-9", 
"a-z", 
"0-9;\W"),  
 
  242            "ConsultationHoursTeaser" => array(
"0-9", 
"a-z", 
"0-9;\W"),  
 
  243            "MyCourses" => array(
"0-9", 
"a-z*"),  
 
  244            "MyCoursesTeaser" => array(
"0-9", 
"a-z*")  
 
  249            $def_parts = array();
 
  250            foreach (
$def as $part) {
 
  251                $is_opt = (substr($part, -1) == 
"*");
 
  258                    $part = substr($part, 0, -1);
 
  260                $def_parts[] = 
"([" . $part . 
"]" . $end_marker . 
")";
 
  262            $def = implode(
"", $def_parts);
 
  265                "/" . $this->pl_start . 
$type . 
$def . $this->pl_end . 
"/",
 
  269                foreach ($blocks[0] as $idx => $block) {
 
  276                        case "ConsultationHours":
 
  277                        case "ConsultationHoursTeaser":
 
  279                        case "MyCoursesTeaser":
 
  281                            if (trim($blocks[3][$idx])) {
 
  282                                foreach (explode(
";", $blocks[3][$idx]) as $sub) {
 
  284                                        $subs[] = trim($sub);
 
  288                            $snippet = $this->{
"render" . 
$type}(
 
  296                            $snippet = $this->{
"render" . 
$type}(
 
  305                    $a_output = str_replace($block, $snippet, $a_output);
 
  317        return trim($a_html);
 
  324            $options = 
'<div class="il_Footer">' . $this->lng->txt(
"prtf_page_element_teaser_settings") .
 
  325                ": " . $a_options . 
'</div>';
 
  328        return '<div style="margin:5px" class="ilBox"><h3>' . $a_title . 
'</h3>' .
 
  329            '<div class="il_Description_no_margin">' . $this->lng->txt(
"prtf_page_element_teaser_" . 
$a_type) . 
'</div>' .
 
  342            $this->export_material[
"js"][] = 
"http://maps.google.com/maps/api/js?sensor=false";
 
  343            $this->export_material[
"js"][] = 
"./Services/Maps/js/ServiceGoogleMaps.js";
 
  344            $this->export_material[
"js"][] = 
"./Services/Maps/js/OpenLayers.js";
 
  345            $this->export_material[
"js"][] = 
"./Services/Maps/js/ServiceOpenLayers.js";
 
  348        include_once(
"./Services/User/classes/class.ilPublicUserProfileGUI.php");
 
  350        $pub_profile->setEmbedded(
true, ($this->
getOutputMode() == 
"offline"));
 
  355        if (
$a_type == 
"manual" && 
sizeof($a_fields)) {
 
  357            foreach ($a_fields as $field) {
 
  358                $field = trim($field);
 
  360                    $prefs[
"public_" . $field] = 
"y";
 
  364            $pub_profile->setCustomPrefs($prefs);
 
  368            return $ilCtrl->getHTML($pub_profile);
 
  370            return $pub_profile->getEmbeddable();
 
  381        $class = 
"ilObj" . $objDefinition->getClassName(
$a_type) . 
"GUI";
 
  382        include_once $objDefinition->getLocation(
$a_type) . 
"/class." . $class . 
".php";
 
  389            $this->ctrl->setParameter($this, 
"dlid", $a_id);
 
  390            $url = $this->ctrl->getLinkTarget($this, 
"dl" . 
$a_type);
 
  391            $this->ctrl->setParameter($this, 
"dlid", 
"");
 
  393            $file = $verification->object->getFilePath();
 
  396            $this->export_material[
"files"][] = 
$file;
 
  399        return $verification->render(
true, 
$url);
 
  406            include_once 
"Modules/Test/classes/class.ilObjTestVerificationGUI.php";
 
  408            $verification->downloadFromPortfolioPage($this->
getPageObject());
 
  416            include_once 
"Modules/Exercise/classes/class.ilObjExerciseVerificationGUI.php";
 
  418            $verification->downloadFromPortfolioPage($this->
getPageObject());
 
  426            include_once 
"Modules/Course/classes/Verification/class.ilObjCourseVerificationGUI.php";
 
  428            $verification->downloadFromPortfolioPage($this->
getPageObject());
 
  436            include_once 
"Modules/ScormAicc/classes/Verification/class.ilObjSCORMVerificationGUI.php";
 
  438            $verification->downloadFromPortfolioPage($this->
getPageObject());
 
  442    protected function renderBlog($a_user_id, $a_blog_id, array $a_posting_ids = 
null)
 
  450        if (!$a_posting_ids) {
 
  451            include_once 
"Modules/Blog/classes/class.ilObjBlogGUI.php";
 
  453            $blog->disableNotes(!$this->enable_comments);
 
  454            $blog->setContentStyleSheet();
 
  457                return $ilCtrl->getHTML($blog);
 
  465            include_once 
"Modules/Blog/classes/class.ilObjBlog.php";
 
  468            include_once 
"Modules/Blog/classes/class.ilBlogPostingGUI.php";
 
  469            foreach ($a_posting_ids as 
$post) {
 
  474                    $page->setOutputMode(
"offline");
 
  476                $html[] = $page->showPage();
 
  479            return implode(
"\n", 
$html);
 
  489        if ($a_posting_ids) {
 
  490            $postings = array(
"<ul>");
 
  491            include_once 
"Modules/Blog/classes/class.ilBlogPosting.php";
 
  492            foreach ($a_posting_ids as 
$post) {
 
  494                $postings[] = 
"<li>" . 
$post->getTitle() . 
" - " .
 
  497            $postings[] = 
"</ul>";
 
  498            $postings = implode(
"\n", $postings);
 
  501        return $this->
renderTeaser(
"blog", $this->lng->txt(
"obj_blog") . 
' "' .
 
  513        include_once 
"Services/Skill/classes/class.ilPersonalSkillsGUI.php";
 
  516            $gui->setOfflineMode(
"./files/");
 
  518        $html = $gui->getSkillHTML($a_skills_id, $user_id);
 
  528        include_once 
"Services/Skill/classes/class.ilSkillTreeNode.php";
 
  530        return $this->
renderTeaser(
"skills", $this->lng->txt(
"skills") . 
' "' .
 
  539        if ($a_mode == 
"auto") {
 
  540            $mode = $this->lng->txt(
"cont_cach_mode_automatic");
 
  543            $mode = $this->lng->txt(
"cont_cach_mode_manual");
 
  545            include_once 
"Services/Calendar/classes/ConsultationHours/class.ilConsultationHourGroups.php";
 
  547            foreach ($a_group_ids as $grp_id) {
 
  550            $groups = 
" (" . implode(
", ", $groups) . 
")";
 
  553        $this->lng->loadLanguageModule(
"dateplaner");
 
  555            "consultation_hours",
 
  556            $this->lng->txt(
"app_consultation_hours"),
 
  580        if (
$ilUser->getId() != $user_id) {
 
  581            $_GET[
"bkid"] = $user_id;
 
  584        if ($a_mode != 
"manual") {
 
  588        include_once(
'./Services/Calendar/classes/class.ilCalendarCategories.php');
 
  592        if (!$_REQUEST[
"seed"]) {
 
  598        include_once(
'./Services/Calendar/classes/class.ilCalendarMonthGUI.php');
 
  600        $month_gui->setConsulationHoursUserId($user_id);
 
  603        include_once(
'./Services/Calendar/classes/class.ilCalendarScheduleFilterBookings.php');
 
  605        $month_gui->addScheduleFilter($filter);
 
  609        $this->lng->loadLanguageModule(
"dateplaner");
 
  610        return '<h3>' . $this->lng->txt(
"app_consultation_hours") . 
'</h3>' .
 
  611            $this->ctrl->getHTML($month_gui);
 
  617        return (
bool) $prfa_set->get(
"mycrs", 
true);
 
  627            : 
"my_courses_inactive";
 
  631            $this->lng->txt(
"prtf_page_element_my_courses_title")
 
  651            $this->export_material[
"images"][] = 
"./templates/default/images/icon_crs.svg";
 
  652            $this->export_material[
"images"][] = 
"./templates/default/images/icon_lobj.svg";
 
  653            $this->export_material[
"images"][] = 
"./templates/default/images/scorm/complete.svg";
 
  654            $this->export_material[
"images"][] = 
"./templates/default/images/scorm/not_attempted.svg";
 
  655            $this->export_material[
"images"][] = 
"./templates/default/images/scorm/failed.svg";
 
  656            $this->export_material[
"images"][] = 
"./templates/default/images/scorm/incomplete.svg";
 
  658            $img_path = 
"images/";
 
  665            in_array(
$_POST[
"srt"], array(
"alpha", 
"loc"))) {
 
  668        $sorting = 
$ilUser->getPref(
"prtf_mcrs_sort");
 
  670            $sorting = $a_default_sorting;
 
  675            if ($sorting != 
"loc") {
 
  681            $tpl = 
new ilTemplate(
"tpl.pc_my_courses.html", 
true, 
true, 
"Modules/Portfolio");
 
  682            $tpl->setVariable(
"TITLE", $this->lng->txt(
"prtf_page_element_my_courses_title"));
 
  683            $tpl->setVariable(
"INFO", $this->lng->txt(
"prtf_page_element_my_courses_info")); 
 
  685            include_once(
"./Services/Tracking/classes/class.ilLearningProgressBaseGUI.php");
 
  686            $this->lng->loadLanguageModule(
"trac");
 
  687            $this->lng->loadLanguageModule(
"crs");
 
  689            include_once(
"./Services/Container/classes/class.ilContainerObjectiveGUI.php");
 
  690            include_once(
"./Services/Link/classes/class.ilLink.php");
 
  695                    "alpha" => $this->lng->txt(
"cont_mycourses_sortorder_alphabetical"),
 
  696                    "loc" => $this->lng->txt(
"cont_mycourses_sortorder_location")
 
  706                    array(
"onchange" => 
"form.submit()")
 
  713            foreach (
$data as $course) {
 
  714                if ($sorting == 
"loc") {
 
  715                    if ($course[
"path"] != $old_path) {
 
  716                        $tpl->setCurrentBlock(
"path_bl");
 
  717                        $tpl->setVariable(
"PATH", $course[
"path"]);
 
  718                        $tpl->parseCurrentBlock();
 
  720                        $old_path = $course[
"path"];
 
  724                if (isset($course[
"lp_status"])) {
 
  729                        $lp_icon = $img_path . basename($lp_icon);
 
  732                    $tpl->setCurrentBlock(
"lp_bl");
 
  733                    $tpl->setVariable(
"LP_ICON_URL", $lp_icon);
 
  734                    $tpl->setVariable(
"LP_ICON_ALT", $lp_alt);
 
  735                    $tpl->parseCurrentBlock();
 
  739                if (
$ilUser->getId() != ANONYMOUS_USER_ID) {
 
  740                    $do_links = $ilAccess->checkAccessOfUser(
$ilUser->getId(), 
"read", 
"", $course[
"ref_id"], 
"crs") ||
 
  741                        ($ilAccess->checkAccessOfUser(
$ilUser->getId(), 
"visible", 
"", $course[
"ref_id"], 
"crs") &&
 
  742                        $ilAccess->checkAccessOfUser(
$ilUser->getId(), 
"join", 
"", $course[
"ref_id"], 
"crs"));
 
  745                if (isset($course[
"objectives"])) {
 
  746                    include_once 
'./Modules/Course/classes/Objectives/class.ilLOSettings.php';
 
  748                    $has_initial_test = (bool) $loc_settings->getInitialTest();
 
  750                    foreach ($course[
"objectives"] as $objtv) {
 
  752                            $params = array(
"oobj"=>$objtv[
"id"]);
 
  756                            $url .= 
"#objtv_acc_" . $objtv[
"id"];
 
  759                                $tpl->touchBlock(
"objective_dnone");
 
  762                            $tpl->setCurrentBlock(
"objective_link_bl");
 
  764                            if (trim($objtv[
"desc"])) {
 
  765                                $desc = nl2br($objtv[
"desc"]);
 
  766                                $tt_id = 
"objtvtt_" . $objtv[
"id"] . 
"_" . ((int) self::$initialized);
 
  768                                include_once 
"Services/UIComponent/Tooltip/classes/class.ilTooltipGUI.php";
 
  769                                ilToolTipGUI::addTooltip($tt_id, $desc, 
"", 
"bottom center", 
"top center", 
false);
 
  771                                $tpl->setVariable(
"OBJECTIVE_LINK_ID", $tt_id);
 
  774                            $tpl->setVariable(
"OBJECTIVE_LINK_URL", 
$url);
 
  775                            $tpl->setVariable(
"OBJECTIVE_LINK_TITLE", $objtv[
"title"]);
 
  776                            $tpl->parseCurrentBlock();
 
  778                            $tpl->setCurrentBlock(
"objective_nolink_bl");
 
  779                            $tpl->setVariable(
"OBJECTIVE_NOLINK_TITLE", $objtv[
"title"]);
 
  780                            $tpl->parseCurrentBlock();
 
  785                            $objtv_icon = $img_path . basename($objtv_icon);
 
  788                        $tpl->setCurrentBlock(
"objective_bl");
 
  789                        $tpl->setVariable(
"OBJTV_ICON_URL", $objtv_icon);
 
  790                        $tpl->setVariable(
"OBJTV_ICON_ALT", $this->lng->txt(
"crs_objectives"));
 
  792                        if ($objtv[
"type"]) {
 
  799                        $tpl->parseCurrentBlock();
 
  802                    $tpl->setCurrentBlock(
"objectives_bl");
 
  803                    $tpl->setVariable(
"OBJTV_LIST_CRS_ID", $course[
"obj_id"]);
 
  804                    $tpl->parseCurrentBlock();
 
  809                    $tpl->setCurrentBlock(
"course_link_bl");
 
  810                    $tpl->setVariable(
"COURSE_LINK_TITLE", $course[
"title"]);
 
  812                    $tpl->parseCurrentBlock();
 
  814                    $tpl->setCurrentBlock(
"course_nolink_bl");
 
  815                    $tpl->setVariable(
"COURSE_NOLINK_TITLE", $course[
"title"]);
 
  816                    $tpl->parseCurrentBlock();
 
  821                    $crs_icon = $img_path . basename($crs_icon);
 
  824                $tpl->setCurrentBlock(
"course_bl");
 
  826                if (isset($course[
"objectives"])) {
 
  827                    $tpl->setVariable(
"TOGGLE_CLASS", 
"ilPCMyCoursesToggle");
 
  829                    $tpl->setVariable(
"NO_TOGGLE", 
' style="visibility:hidden;"');
 
  832                $tpl->setVariable(
"CRS_ICON_URL", $crs_icon);
 
  833                $tpl->setVariable(
"CRS_ICON_ALT", $this->lng->txt(
"obj_crs"));
 
  834                $tpl->parseCurrentBlock();
 
  838            if (!self::$initialized) {
 
  839                $GLOBALS[
"tpl"]->addJavaScript(
"Modules/Portfolio/js/ilPortfolio.js");
 
  840                $GLOBALS[
"tpl"]->addOnLoadCode(
"ilPortfolio.init()");
 
  842            self::$initialized++;
 
  856        return $ctrl->getFormActionByClass(
"ilobjportfoliogui", 
"preview");
 
  866        include_once 
'Modules/Course/classes/class.ilObjCourseAccess.php';
 
  867        include_once 
'Services/Membership/classes/class.ilParticipants.php';
 
  870        $repo_title = 
$tree->getNodeData(ROOT_FOLDER_ID);
 
  871        $repo_title = $repo_title[
"title"];
 
  872        if ($repo_title == 
"ILIAS") {
 
  873            $repo_title = $this->lng->txt(
"repository");
 
  876        $references = $lp_obj_refs = array();
 
  877        foreach ($items as $obj_id) {
 
  879            if (is_array($ref_id) && count($ref_id)) {
 
  880                $ref_id = array_pop($ref_id);
 
  881                if (!
$tree->isDeleted($ref_id)) {
 
  884                    if ($active && $visible) {
 
  885                        $references[$ref_id] = array(
 
  893                            foreach (
$tree->getPathFull($ref_id) as $item) {
 
  894                                $path[] = $item[
"title"];
 
  897                            if (
sizeof(
$path) == 2) {
 
  902                            $references[$ref_id][
"path_sort"] = implode(
"__", 
$path);
 
  905                            if (!
sizeof(
$path)) {
 
  906                                array_unshift(
$path, $repo_title);
 
  908                            $references[$ref_id][
"path"] = implode(
" › ", 
$path);
 
  911                        $lp_obj_refs[$obj_id] = $ref_id;
 
  919        if (
sizeof($lp_obj_refs)) {
 
  921            include_once 
'Modules/Course/classes/class.ilObjCourse.php';
 
  922            foreach ($lp_obj_refs as $obj_id => $ref_id) {
 
  925                    $references[$ref_id][
"objectives"] = $this->
parseObjectives($obj_id, $a_user_id);
 
  930            include_once 
"Services/Tracking/classes/class.ilObjUserTracking.php";
 
  935                include_once 
"Services/Tracking/classes/class.ilTrQuery.php";
 
  936                include_once 
"Services/Tracking/classes/class.ilLPStatusFactory.php";
 
  938                foreach ($lp_data as $item) {
 
  939                    $ref_id = $item[
"ref_ids"];
 
  940                    $references[$ref_id][
"lp_status"] = $item[
"status"];
 
  953        include_once 
"Services/Tracking/classes/class.ilLPObjSettings.php";
 
  954        include_once 
"Services/Tracking/classes/collection/class.ilLPCollectionOfObjectives.php";
 
  956        $coll_objtv = $coll_objtv->getItems();
 
  961            include_once 
"Modules/Course/classes/Objectives/class.ilLOTestAssignments.php";
 
  966            include_once 
"Modules/Course/classes/class.ilCourseObjective.php";
 
  967            foreach ($coll_objtv as $objective_id) {
 
  970                $tmp[$objective_id] = array(
 
  971                    "id" => $objective_id,
 
  972                    "title" => 
$title[
"title"],
 
  973                    "desc" => 
$title[
"description"],
 
  978                if (array_key_exists($objective_id, $lo_results)) {
 
  979                    $lo_result = $lo_results[$objective_id];
 
  980                    $tmp[$objective_id][
"user_id"] = $lo_result[
"user_id"];
 
  981                    $tmp[$objective_id][
"result_perc"] = $lo_result[
"result_perc"];
 
  982                    $tmp[$objective_id][
"limit_perc"] = $lo_result[
"limit_perc"];
 
  983                    $tmp[$objective_id][
"status"] = $lo_result[
"status"];
 
  984                    $tmp[$objective_id][
"type"] = $lo_result[
"type"];
 
  985                    $tmp[$objective_id][
"initial"] = $lo_result[
"initial"];
 
  990            foreach ($coll_objtv as $objtv_id) {
 
  991                $res[] = $tmp[$objtv_id];
 
 1003        include_once 
"Modules/Course/classes/Objectives/class.ilLOUserResults.php";
 
 1005        foreach ($lur->getCourseResultsForUserPresentation() as $objective_id => $types) {
 
 1021            $result[
"initial_status"] = $initial_status;
 
 1047        $start = strpos($a_html, 
"{{{{{PlaceHolder#");
 
 1048        if (is_int($start)) {
 
 1049            $end = strpos($a_html, 
"}}}}}", $start);
 
 1053            $param = substr($a_html, $start + 17, 
$end - $start - 17);
 
 1054            $param = explode(
"#", $param);
 
 1057            switch ($param[2]) {
 
 1067                    $html = 
$lng->txt(
"cont_question_placeh");
 
 1070                case "Verification":
 
 1071                    $html = 
$lng->txt(
"cont_verification_placeh");
 
 1077                && $this->getOutputMode() == 
"presentation") {
 
 1078                switch ($param[2]) {
 
 1080                        $ilCtrl->setParameterByClass(
"ilportfoliopagegui", 
"prt_id", 
$_GET[
"prt_id"]);
 
 1081                        $ilCtrl->setParameterByClass(
"ilportfoliopagegui", 
"ppage", $this->
getId());
 
 1082                        $ilCtrl->setParameterByClass(
"ilportfoliopagegui", 
"pl_pc_id", $param[0]);
 
 1083                        $ilCtrl->setParameterByClass(
"ilportfoliopagegui", 
"pl_hier_id", $param[1]);
 
 1084                        $href = 
$ilCtrl->getLinkTargetByClass(
"ilportfoliopagegui", 
"insertJSAtPlaceholder");
 
 1085                        $html = 
"<a href='" . $href . 
"'>" . 
$html . 
"</a>";
 
 1089                        $ilCtrl->setParameterByClass(
"ilpcmediaobjectgui", 
"prt_id", 
$_GET[
"prt_id"]);
 
 1090                        $ilCtrl->setParameterByClass(
"ilpcmediaobjectgui", 
"ppage", $this->
getId());
 
 1091                        $ilCtrl->setParameterByClass(
"ilpcmediaobjectgui", 
"pl_pc_id", $param[0]);
 
 1092                        $ilCtrl->setParameterByClass(
"ilpcmediaobjectgui", 
"pl_hier_id", $param[1]);
 
 1093                        $ilCtrl->setParameterByClass(
"ilpcmediaobjectgui", 
"subCmd", 
"insertNew");
 
 1094                        $href = 
$ilCtrl->getLinkTargetByClass(array(
"ilPortfolioPageGUI", 
"ilPageEditorGUI", 
"ilPCPlaceHolderGUI", 
"ilpcmediaobjectgui"), 
"insert");
 
 1095                        $html = 
"<a href='" . $href . 
"'>" . 
$html . 
"</a>";
 
 1100            $h2 = substr($a_html, 0, $start) .
 
 1102                substr($a_html, 
$end + 5);
 
 1106            $start = strpos($a_html, 
"{{{{{PlaceHolder#", $start + 5);
 
 1108            if (is_int($start)) {
 
 1109                $end = strpos($a_html, 
"}}}}}", $start);
 
 1127        $ctrl->setParameterByClass(
"ilobjportfoliogui", 
"user_page", 
$_GET[
"ppage"]);
 
 1128        return $ctrl->getLinkTargetByClass(
"ilobjportfoliogui", 
"preview");
 
 1139        return $this->lng->txt(
"preview");
 
 1150        include_once(
"./Services/Link/classes/class.ilLink.php");
 
if(!isset( $_REQUEST[ 'ReturnTo'])) if(!isset($_REQUEST['AuthId'])) $options
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)
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
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.
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
if(!is_dir( $entity_dir)) exit("Fatal Error ([A-Za-z0-9]+)\s+" &#(? foreach( $entity_files as $file) $output
$GLOBALS['loaded']
Global hash that tracks already loaded includes.
if(!file_exists("$old.txt")) if( $old===$new) if(file_exists("$new.txt")) $file
foreach($_POST as $key=> $value) $res