Ejemplo n.º 1
0
 public function frameResponse(\FrameResponseObject $frameResponseObject)
 {
     $actionBar = new \Widgets\ActionBar();
     $this->getExtension()->addJS();
     $actionBar->setActions(array(array("name" => \Portfolio::getInstance()->getText("newArtefacts"), "ajax" => array("onclick" => array("command" => "newArtefactForm", "namespace" => "portfolio", "params" => "", "requestType" => "popup")))));
     //		array("name" => "Bild anfügen<img src=\"{$editIcon}\">", "command" => "EditMessageImage", "namespace" => "forum", "params" => "{'messageObjectId':'{$this->id}','forum':'{$forumId}'}", "type" => "popup");
     $breadcrumb = new \Widgets\Breadcrumb();
     $breadcrumb->setData(array(array("name" => \Portfolio::getInstance()->getText("Manage Artefacts"))));
     $tabBar = new \Widgets\TabBar();
     $tabBar->setTabs(array(array("name" => \Portfolio::getInstance()->getText("Dashboard"), "link" => $this->getextension()->getExtensionUrl() . "/"), array("name" => \Portfolio::getInstance()->getText("Competences"), "link" => $this->getExtension()->getExtensionUrl() . "ViewChart/"), array("name" => \Portfolio::getInstance()->getText("Artefacts"), "link" => $this->getExtension()->getExtensionUrl() . "ManageArtefacts/")));
     $tabBar->setActiveTab(2);
     $clearer = new \Widgets\Clearer();
     $loader = new \Widgets\Loader();
     $loader->setWrapperId("artefactsWrapper");
     $loader->setMessage("loading artefacts ...");
     $loader->setCommand("loadArtefacts");
     $loader->setParams($this->params);
     $loader->setElementId("artefactsWrapper");
     $loader->setType("updater");
     $frameResponseObject->setTitle("Manage Artefacts");
     $frameResponseObject->addWidget($actionBar);
     $frameResponseObject->addWidget($breadcrumb);
     $frameResponseObject->addWidget($tabBar);
     $frameResponseObject->addWidget($clearer);
     $frameResponseObject->addWidget($loader);
     //$frameResponseObject->addWidget($rawHtml);
     return $frameResponseObject;
 }
Ejemplo n.º 2
0
 public function frameResponse(\FrameResponseObject $frameResponseObject)
 {
     $actionBar = new \Widgets\ActionBar();
     $actionBar->setActions(array(array("name" => \Portfolio::getInstance()->getText("new"), "ajax" => array("onclick" => array("command" => "newArtefact", "params" => array(), "requestType" => "popup")))));
     $breadcrumb = new \Widgets\Breadcrumb();
     $breadcrumb->setData(array(array("name" => \Portfolio::getInstance()->getText("Manage Portfolios"))));
     $tabBar = new \Widgets\TabBar();
     $tabBar->setTabs(array(array("name" => \Portfolio::getInstance()->getText("Dashboard"), "link" => $this->getextension()->getExtensionUrl() . "/"), array("name" => \Portfolio::getInstance()->getText("Portfolio"), "link" => $this->getExtension()->getExtensionUrl() . "MyPortfolio/"), array("name" => \Portfolio::getInstance()->getText("Shared Portfolios"), "link" => $this->getExtension()->getExtensionUrl() . "SharedProfiles/")));
     $tabBar->setActiveTab(1);
     $clearer = new \Widgets\Clearer();
     $loader = new \Widgets\Loader();
     $loader->setWrapperId("portfoliosWrapper");
     $loader->setMessage("loading portfolios ...");
     $loader->setCommand("loadPortfolios");
     $loader->setParams(array());
     $loader->setElementId("portfoliosWrapper");
     $loader->setType("updater");
     $frameResponseObject->setTitle("Manage Portfolios");
     $frameResponseObject->addWidget($actionBar);
     $frameResponseObject->addWidget($breadcrumb);
     $frameResponseObject->addWidget($tabBar);
     $frameResponseObject->addWidget($clearer);
     $frameResponseObject->addWidget($loader);
     //$frameResponseObject->addWidget($rawHtml);
     return $frameResponseObject;
 }
Ejemplo n.º 3
0
 public function frameResponse(\FrameResponseObject $frameResponseObject)
 {
     $portfolio = \PortfolioModel::getById($this->portfolioId);
     $actionBar = new \Widgets\ActionBar();
     $actionBar->setActions(array(array("link" => "javascript:history.back()", "name" => "zurück"), array("name" => \Portfolio::getInstance()->getText("new"), "ajax" => array("onclick" => array("command" => "newArtefact", "params" => array(), "requestType" => "popup")))));
     $breadcrumb = new \Widgets\Breadcrumb();
     $breadcrumb->setData(array(array("name" => \Portfolio::getInstance()->getText("Belege des Portfolios »" . $portfolio->getName() . "«"))));
     $tabBar = new \Widgets\TabBar();
     $tabBar->setTabs(array(array("name" => \Portfolio::getInstance()->getText("Dashboard"), "link" => $this->getextension()->getExtensionUrl() . "/"), array("name" => \Portfolio::getInstance()->getText("Portfolio"), "link" => $this->getExtension()->getExtensionUrl() . "MyPortfolio/"), array("name" => \Portfolio::getInstance()->getText("Shared Portfolios"), "link" => $this->getExtension()->getExtensionUrl() . "SharedProfiles/")));
     $tabBar->setActiveTab(1);
     $clearer = new \Widgets\Clearer();
     $loader = new \Widgets\Loader();
     $loader->setWrapperId("artefactsWrapper");
     $loader->setMessage("loading artefacts ...");
     $loader->setCommand("loadArtefacts");
     $loader->setParams(array(0 => $this->portfolioId));
     $loader->setElementId("artefactsWrapper");
     $loader->setType("updater");
     $frameResponseObject->setTitle("Belege verwalten");
     $frameResponseObject->addWidget($actionBar);
     $frameResponseObject->addWidget($breadcrumb);
     $frameResponseObject->addWidget($tabBar);
     $frameResponseObject->addWidget($clearer);
     $frameResponseObject->addWidget($loader);
     //$frameResponseObject->addWidget($rawHtml);
     return $frameResponseObject;
 }
Ejemplo n.º 4
0
    public function frameResponse(\FrameResponseObject $frameResponseObject)
    {
        $actionBar = new \Widgets\ActionBar();
        $actionBar->setActions(array(array("name" => \Portfolio::getInstance()->getText("Profile"), "link" => $this->getExtension()->getExtensionUrl() . "profile/"), array("name" => gettext("Groups"), "link" => $this->getExtension()->getExtensionUrl() . "groups/"), array("name" => gettext("File Uploads"), "link" => $this->getExtension()->getExtensionUrl() . "Fileupload/"), array("name" => gettext("Blogs"), "link" => $this->getExtension()->getExtensionUrl() . "Blog/")));
        $breadcrumb = new \Widgets\Breadcrumb();
        $breadcrumb->setData(array(array("name" => \Portfolio::getInstance()->getText("Portfolio/"), "link" => $this->getExtension()->getExtensionUrl() . "Myportfolio/"), array("name" => gettext("Blog"))));
        $tabBar = new \Widgets\TabBar();
        $tabBar->setTabs(array(array("name" => \Portfolio::getInstance()->getText("Dashboard"), "link" => $this->getextension()->getExtensionUrl() . "/"), array("name" => gettext("Portfolio"), "link" => $this->getExtension()->getExtensionUrl() . "myportfolio/"), array("name" => gettext("Shared Portfolios"), "link" => $this->getExtension()->getExtensionUrl() . "SharedProfiles/")));
        $clearer = new \Widgets\Clearer();
        $input = new \Widgets\TextInput();
        $grid = new \Widgets\Grid();
        $grid->setData(array("headline" => array(array("name" => \Portfolio::getInstance()->getText("BLOG Number"), "colspan" => "2")), "rows" => array(array(array("content" => \Portfolio::getInstance()->getText("Blog Name:"), "type" => "label"), array("content" => $input, "type" => "value")), array(array("content" => \Portfolio::getInstance()->getText("Body"), "type" => "label"), array("content" => $input, "type" => "value")))));
        $actionBar2 = new \Widgets\ActionBar();
        $actionBar2->setActions(array(array("name" => \Portfolio::getInstance()->getText("Attach Files"), "link" => $this->getExtension()->getExtensionUrl() . ""), array("name" => gettext("Save"), "link" => $this->getExtension()->getExtensionUrl() . "")));
        $html = <<<end
\t    


<style type="text/css">


</style>


<div class="actionBar">
    
\t<a href="../Editview/"class="button">File Uploads</a>
\t
\t<a href="" class="button">Blog</a>
\t
</div>
<div class="headline">
\t<h1>User's Blog </h1>
</div>

<ul class="tabBar">
        
    <li class="tabIn"><a href="./..">Dashboard</a></li>
        
    <li class="tabIn"><a href="../profile/">Profile</a></li>
        
    <li class="tabOut"><a href="">Portfolio</a></li>
        
    <li class="tabIn"><a href="../groups/">Groups</a></li>
    
    <li style="clear: left;">
</li></ul>

<br>



<table class="grid" cellspacing="0" cellpadding="5" width="100%">

\t <tr>
\t\t\t<th class="group" colspan="2">Blog...(NUMBER)</th>
\t </tr>
\t <tr>
<td class="label">Title</td>
\t<td class="value">
\t\t<input type="text" value="blogs_title" disabled="" size="30" >
</td>
<tr>

<td class="label">Body</td>
<td class="value">
<textarea wrap="virtual" rows="10" style="width: 95%;" name="values[USER_PROFILE_DSC]"></textarea>
<br>
<a class="textformat_button" title="boldface" href="javascript:insert('[b]', '[/b]', 'formular', 'values[USER_PROFILE_DSC]')">
<b>B</b>
</a>
<a class="textformat_button" title="italic" href="javascript:insert('[i]', '[/i]', 'formular', 'values[USER_PROFILE_DSC]')">
<i>I</i>
</a>
<a class="textformat_button" title="underline" href="javascript:insert('[u]', '[/u]', 'formular', 'values[USER_PROFILE_DSC]')">
<u>U</u>
</a>
<a class="textformat_button" title="strikethrough" style="text-decoration: line-through;" href="javascript:insert('[s]', '[/s]', 'formular', 'values[USER_PROFILE_DSC]')">S</a>
<a class="textformat_button" title="image" href="javascript:insert('[img]http://', '[/img]', 'formular', 'values[USER_PROFILE_DSC]')">IMG</a>
<a class="textformat_button" title="web link" href="javascript:insert('[url=http://]', '[/url]', 'formular', 'values[USER_PROFILE_DSC]')">URL</a>
<a class="textformat_button" title="email link" href="javascript:insert('[mail=@]', '[/mail]', 'formular', 'values[USER_PROFILE_DSC]')">MAIL</a>
</td>
</tr>
\t
\t</td>
\t</tr>
\t </table>
\t <div class="actionBar">
    
\t<a href=""class="button">Attach Files</a>
\t<a href=""class="button">Connect Web</a>
</div>
<div class="buttons">
<a class="button">Save</a>
</div>
       

end;
        $frameResponseObject->setTitle("Blog");
        $rawHtml = new \Widgets\RawHtml();
        $rawHtml->setHtml($html);
        //$frameResponseObject->addWidget($actionBar);
        $frameResponseObject->addWidget($breadcrumb);
        //$frameResponseObject->addWidget($tabBar);
        $frameResponseObject->addWidget($clearer);
        $frameResponseObject->addWidget($grid);
        $frameResponseObject->addWidget($actionBar2);
        //$frameResponseObject->addWidget($content);
        //$frameResponseObject->addWidget($rawHtml);
        return $frameResponseObject;
    }
Ejemplo n.º 5
0
 public function frameResponse(\FrameResponseObject $frameResponseObject)
 {
     $TCR = \steam_factory::get_object($GLOBALS["STEAM"]->get_id(), $this->id);
     $user = $GLOBALS["STEAM"]->get_current_steam_user();
     $TCRExtension = \TCR::getInstance();
     $TCRExtension->addCSS();
     // determine kind of documents of the current user to display (0 = theses, 1 = reviews, 2 = responses)
     $kindOfDocument = 0;
     if (isset($this->params[1])) {
         $kindOfDocument = $this->params[1];
     }
     // release document dialog was submitted
     if ($_SERVER["REQUEST_METHOD"] == "POST" && isset($_POST["release_element"])) {
         $element = \steam_factory::get_object($GLOBALS["STEAM"]->get_id(), $_POST["element_id"]);
         if ($_POST["kind"] == 0) {
             $critics = array();
             $critics[$_POST["critic"]] = 0;
             $element->set_attribute("TCR_REVIEWS", $critics);
             $element->set_attribute("TCR_RELEASED", time());
         } else {
             $element->set_attribute("TCR_RELEASED", time());
         }
     }
     // edit document dialog was submitted
     if ($_SERVER["REQUEST_METHOD"] == "POST" && isset($_POST["edit_element"])) {
         $old_element = \steam_factory::get_object($GLOBALS["STEAM"]->get_id(), $_POST["old_id"]);
         // old element was plain text
         if ($old_element->get_attribute("DOC_MIME_TYPE") == "text/plain") {
             // new element is plain text
             if ($_POST["new_upload_text"] == 0) {
                 $old_element->set_name($_POST["title"]);
                 $old_element->set_attribute("OBJ_DESC", $_POST["desc"]);
                 $old_element->set_content($_POST["content"]);
                 // new element is an upload
             } else {
                 $old_element->delete();
                 $radio = 1;
             }
             // old element was an upload
         } else {
             // new element is the same
             if ($_POST["new_upload"] == 0) {
                 $old_element->set_name($_POST["title"]);
                 $old_element->set_attribute("OBJ_DESC", $_POST["desc"]);
                 // new element is a new upload
             } else {
                 if ($_POST["new_upload"] == 1) {
                     $old_element->delete();
                     $radio = 1;
                     // new element is plain text
                 } else {
                     $old_element->set_attribute("DOC_MIME_TYPE", "text/plain");
                     $old_element->set_name($_POST["title"]);
                     $old_element->set_attribute("OBJ_DESC", $_POST["desc"]);
                     $old_element->set_content($_POST["new_content"]);
                 }
             }
         }
     }
     // if a new element got created or already existing element gets a new upload
     if ($_SERVER["REQUEST_METHOD"] == "POST" && isset($_POST["create_element"]) || isset($radio)) {
         $problems = "";
         $hints = "";
         if (!isset($radio)) {
             $radio = $_POST["radio"];
         }
         if ($radio == 1) {
             // handle upload
             require_once PATH_LIB . "format_handling.inc.php";
             $max_file_size = parse_filesize(ini_get('upload_max_filesize'));
             $max_post_size = parse_filesize(ini_get('post_max_size'));
             if ($max_post_size > 0 && $max_post_size < $max_file_size) {
                 $max_file_size = $max_post_size;
             }
             if (empty($_FILES) || !empty($_FILES["file"]["error"]) && $_FILES["file"]["error"] > 0) {
                 if (!empty($_FILES) && empty($_FILES["file"]["name"])) {
                     $problems = gettext("No file chosen.") . " ";
                     $hints = gettext("Please choose a local file to upload.") . " ";
                 } else {
                     $problems = gettext("Could not upload document.") . " ";
                     $hints = str_replace(array("%SIZE", "%TIME"), array(readable_filesize($max_file_size), (string) ini_get('max_execution_time')), gettext("Maybe your document exceeded the allowed file size (max. %SIZE) or the upload might have taken too long (max. %TIME seconds).")) . " ";
                 }
             }
             if (empty($problems)) {
                 $content = file_get_contents($_FILES["file"]["tmp_name"]);
                 $type = $_FILES["file"]["type"];
             }
         } else {
             $content = $_POST["content"];
             $type = "text/plain";
         }
         if ($_POST["kind"] == 0) {
             $container = \steam_factory::get_object_by_name($GLOBALS["STEAM"]->get_id(), $TCR->get_path() . "/theses");
         } else {
             if ($_POST["kind"] == 1) {
                 $container = \steam_factory::get_object_by_name($GLOBALS["STEAM"]->get_id(), $TCR->get_path() . "/reviews");
             } else {
                 $container = \steam_factory::get_object_by_name($GLOBALS["STEAM"]->get_id(), $TCR->get_path() . "/responses");
             }
         }
         $title = $_POST["title"];
         $desc = $_POST["desc"];
         if (empty($problems)) {
             $new_element = \steam_factory::create_document($GLOBALS["STEAM"]->get_id(), $title, $content, $type, $container, $desc);
             if ($_POST["kind"] == 0) {
                 $new_element->set_attribute("TCR_ROUND", $_POST["round"]);
                 $new_element->set_attribute("TCR_REVIEWS", array());
                 $new_element->set_attribute("TCR_RELEASED", 0);
             } else {
                 if ($_POST["kind"] == 1) {
                     $new_element->set_attribute("TCR_RELEASED", 0);
                     $correspondingThesis = \steam_factory::get_object($GLOBALS["STEAM"]->get_id(), $_POST["elementID"]);
                     $critics_thesis = $correspondingThesis->get_attribute("TCR_REVIEWS");
                     $critics_thesis[$user->get_id()] = $new_element->get_id();
                     $correspondingThesis->set_attribute("TCR_REVIEWS", $critics_thesis);
                 } else {
                     $new_element->set_attribute("TCR_RELEASED", 0);
                     $correspondingReview = \steam_factory::get_object($GLOBALS["STEAM"]->get_id(), $_POST["elementID"]);
                     $correspondingReview->set_attribute("TCR_RESPONSE", $new_element->get_id());
                 }
             }
         } else {
             $frameResponseObject->setProblemDescription($problems);
             $frameResponseObject->setProblemSolution($hints);
         }
     }
     // display actionbar
     $actionbar = new \Widgets\Actionbar();
     $admins = $TCR->get_attribute("TCR_ADMINS");
     if (in_array($user->get_id(), $admins)) {
         $actions = array(array("name" => "Konfiguration", "link" => $TCRExtension->getExtensionUrl() . "configuration/" . $this->id), array("name" => "Private Dokumente", "link" => $TCRExtension->getExtensionUrl() . "privateDocuments/" . $this->id), array("name" => "Übersicht", "link" => $TCRExtension->getExtensionUrl() . "Index/" . $this->id), array("name" => "Alle Dokumente", "link" => $TCRExtension->getExtensionUrl() . "documents/" . $this->id));
     } else {
         $actions = array(array("name" => "Private Dokumente", "link" => $TCRExtension->getExtensionUrl() . "privateDocuments/" . $this->id), array("name" => "Übersicht", "link" => $TCRExtension->getExtensionUrl() . "Index/" . $this->id), array("name" => "Alle Dokumente", "link" => $TCRExtension->getExtensionUrl() . "documents/" . $this->id));
     }
     $actionbar->setActions($actions);
     $frameResponseObject->addWidget($actionbar);
     $group = $TCR->get_attribute("TCR_GROUP");
     if ($group->get_name() == "learners") {
         $parent = $group->get_parent_group();
         $courseOrGroup = "Kurs: " . $parent->get_attribute("OBJ_DESC") . " (" . $parent->get_name() . ")";
         $courseOrGroupUrl = PATH_URL . "semester/" . $parent->get_id();
     } else {
         $courseOrGroup = "Gruppe: " . $group->get_name();
         $courseOrGroupUrl = PATH_URL . "groups/" . $group->get_id();
     }
     $content = $TCRExtension->loadTemplate("tcr_privatedocuments.template.html");
     // display a message if current user is not a user of this tcr
     $members = $TCR->get_attribute("TCR_USERS");
     if (!in_array($user->get_id(), $members)) {
         $content->setCurrentBlock("BLOCK_DOCUMENTS_TABLE");
         $content->setVariable("DISPLAY_TABLE", "none");
         $content->setVariable("NOT_USER", "Sie sind nicht als Teilnehmer dieses Thesen-Kritik-Replik-Verfahrens eingetragen. Wenden Sie sich an einen Administrator.");
         $content->parse("BLOCK_DOCUMENTS_TABLE");
         $rawWidget = new \Widgets\RawHtml();
         $rawWidget->setHtml($content->get());
         $frameResponseObject->addWidget($rawWidget);
         $frameResponseObject->setHeadline(array(array("name" => $courseOrGroup, "link" => $courseOrGroupUrl), array("name" => "Thesen-Kritik-Replik-Verfahren", "link" => $TCRExtension->getExtensionUrl() . "Index/" . $this->id), array("name" => "Private Dokumente")));
         return $frameResponseObject;
     }
     // display tabbar
     $tabBar = new \Widgets\TabBar();
     $tabBar->setTabs(array(array("name" => "Thesen", "link" => $TCRExtension->getExtensionUrl() . "privateDocuments/" . $this->id), array("name" => "Kritiken", "link" => $TCRExtension->getExtensionUrl() . "privateDocuments/" . $this->id . "/1"), array("name" => "Repliken", "link" => $TCRExtension->getExtensionUrl() . "privateDocuments/" . $this->id . "/2")));
     $tabBar->setActiveTab($kindOfDocument);
     $frameResponseObject->addWidget($tabBar);
     // create array structure and add theses for their round
     $rounds = $TCR->get_attribute("TCR_ROUNDS");
     $theses_container = \steam_factory::get_object_by_name($GLOBALS["STEAM"]->get_id(), $TCR->get_path() . "/theses");
     $theses_inventory = $theses_container->get_inventory();
     $theses = array();
     $theses_response = array();
     foreach ($theses_inventory as $thesis) {
         $current_round = $thesis->get_attribute("TCR_ROUND");
         if ($thesis->get_creator()->get_id() == $user->get_id()) {
             $theses[$current_round] = $thesis;
         }
         $critics = $thesis->get_attribute("TCR_REVIEWS");
         if (is_array($critics)) {
             if (array_key_exists($user->get_id(), $critics)) {
                 $theses_response[$current_round] = $thesis;
             }
         }
     }
     // display private documents table
     $content->setCurrentBlock("BLOCK_DOCUMENTS_TABLE");
     if ($kindOfDocument == 0 || $kindOfDocument == 2) {
         $content->setVariable("THESES_LABEL", "Erstellte Thesen");
         $content->setVariable("REVIEWS_LABEL", "Erhaltene Kritiken");
         $content->setVariable("RESPONSES_LABEL", "Erstellte Repliken");
         if ($kindOfDocument == 0) {
             // thesis view
             for ($count = 1; $count <= $rounds; $count++) {
                 $content->setCurrentBlock("BLOCK_DOCUMENTS_TABLE_ELEMENT");
                 $content->setVariable("ROUND_VALUE", "Runde " . $count);
                 if (!array_key_exists($count, $theses)) {
                     $content->setVariable("CREATE_THESIS", "These erstellen");
                     $content->setVariable("THESIS_ICON", "create_32");
                     $content->setVariable("THESIS_URL", $TCRExtension->getExtensionUrl() . "create/" . $this->id . "/" . $count . "/" . $kindOfDocument);
                     $content->setVariable("DISPLAY_THESIS_SECOND", "none");
                     $content->setVariable("DISPLAY_REVIEW", "none");
                     $content->setVariable("DISPLAY_RESPONSE", "none");
                 } else {
                     $current_critics = $theses[$count]->get_attribute("TCR_REVIEWS");
                     if (count($current_critics) > 0) {
                         $content->setVariable("CREATE_THESIS", "Anzeigen");
                         $content->setVariable("THESIS_ICON", "view_32");
                         $content->setVariable("THESIS_URL", $TCRExtension->getExtensionUrl() . "release/" . $theses[$count]->get_id());
                         $content->setVariable("DISPLAY_THESIS_SECOND", "none");
                         foreach ($current_critics as $critic => $review) {
                             if ($review == 0) {
                                 $content->setVariable("DISPLAY_REVIEW", "none");
                                 $content->setVariable("DISPLAY_RESPONSE", "none");
                                 $review_released = 0;
                             } else {
                                 $current_review = \steam_factory::get_object($GLOBALS["STEAM"]->get_id(), $review);
                                 $review_released = $current_review->get_attribute("TCR_RELEASED");
                             }
                             if ($review_released != 0) {
                                 $content->setVariable("CREATE_REVIEW", "Anzeigen");
                                 $content->setVariable("REVIEW_ICON", "view_32");
                                 $content->setVariable("REVIEW_URL", $TCRExtension->getExtensionUrl() . "release/" . $current_review->get_id());
                                 $content->setVariable("DISPLAY_REVIEW_SECOND", "none");
                                 $responseID = $current_review->get_attribute("TCR_RESPONSE");
                                 if ($responseID == 0) {
                                     $response_released = 0;
                                 } else {
                                     $response_element = \steam_factory::get_object($GLOBALS["STEAM"]->get_id(), $responseID);
                                     $response_released = $response_element->get_attribute("TCR_RELEASED");
                                 }
                                 if ($response_released == 0) {
                                     $content->setVariable("DISPLAY_RESPONSE", "none");
                                 } else {
                                     $content->setVariable("CREATE_RESPONSE", "Anzeigen");
                                     $content->setVariable("RESPONSE_ICON", "view_32");
                                     $content->setVariable("RESPONSE_URL", $TCRExtension->getExtensionUrl() . "release/" . $response_element->get_id());
                                     $content->setVariable("DISPLAY_RESPONSE_SECOND", "none");
                                 }
                             } else {
                                 $content->setVariable("DISPLAY_REVIEW", "none");
                                 $content->setVariable("DISPLAY_RESPONSE", "none");
                             }
                         }
                     } else {
                         $content->setVariable("CREATE_THESIS", "Anzeigen / Bearbeiten");
                         $content->setVariable("THESIS_ICON", "view_32");
                         $content->setVariable("THESIS_URL", $TCRExtension->getExtensionUrl() . "edit/" . $theses[$count]->get_id());
                         $content->setVariable("THESIS_ICON2", "release_32");
                         $content->setVariable("THESIS_URL2", $TCRExtension->getExtensionUrl() . "release/" . $theses[$count]->get_id());
                         $content->setVariable("RELEASE_THESIS", "Veröffentlichen");
                         $content->setVariable("DISPLAY_REVIEW", "none");
                         $content->setVariable("DISPLAY_RESPONSE", "none");
                     }
                 }
                 $content->setVariable("ASSETURL", $TCRExtension->getAssetUrl());
                 $content->parse("BLOCK_DOCUMENTS_TABLE_ELEMENT");
             }
             // response view
         } else {
             for ($count = 1; $count <= $rounds; $count++) {
                 $content->setCurrentBlock("BLOCK_DOCUMENTS_TABLE_ELEMENT");
                 $content->setVariable("ROUND_VALUE", "Runde " . $count);
                 if (!array_key_exists($count, $theses)) {
                     $content->setVariable("DISPLAY_THESIS", "none");
                     $content->setVariable("DISPLAY_REVIEW", "none");
                     $content->setVariable("DISPLAY_RESPONSE", "none");
                 } else {
                     $current_critics = $theses[$count]->get_attribute("TCR_REVIEWS");
                     if (count($current_critics) > 0) {
                         $content->setVariable("CREATE_THESIS", "Anzeigen");
                         $content->setVariable("THESIS_ICON", "view_32");
                         $content->setVariable("THESIS_URL", $TCRExtension->getExtensionUrl() . "release/" . $theses[$count]->get_id());
                         $content->setVariable("DISPLAY_THESIS_SECOND", "none");
                         foreach ($current_critics as $critic => $review) {
                             if ($review == 0) {
                                 $review_released = 0;
                             } else {
                                 $current_review = \steam_factory::get_object($GLOBALS["STEAM"]->get_id(), $review);
                                 $review_released = $current_review->get_attribute("TCR_RELEASED");
                             }
                             if ($review_released != 0) {
                                 $content->setVariable("CREATE_REVIEW", "Anzeigen");
                                 $content->setVariable("REVIEW_ICON", "view_32");
                                 $content->setVariable("REVIEW_URL", $TCRExtension->getExtensionUrl() . "release/" . $current_review->get_id());
                                 $content->setVariable("DISPLAY_REVIEW_SECOND", "none");
                                 $responseID = $current_review->get_attribute("TCR_RESPONSE");
                                 if ($responseID == 0) {
                                     $content->setVariable("CREATE_RESPONSE", "Replik erstellen");
                                     $content->setVariable("RESPONSE_ICON", "create_32");
                                     $content->setVariable("RESPONSE_URL", $TCRExtension->getExtensionUrl() . "create/" . $this->id . "/" . $count . "/" . $kindOfDocument . "/" . $current_review->get_id());
                                     $content->setVariable("DISPLAY_RESPONSE_SECOND", "none");
                                 } else {
                                     $response_element = \steam_factory::get_object($GLOBALS["STEAM"]->get_id(), $responseID);
                                     $response_released = $response_element->get_attribute("TCR_RELEASED");
                                     if ($response_released == 0) {
                                         $content->setVariable("CREATE_RESPONSE", "Anzeigen / Bearbeiten");
                                         $content->setVariable("RESPONSE_ICON", "view_32");
                                         $content->setVariable("RESPONSE_URL", $TCRExtension->getExtensionUrl() . "edit/" . $response_element->get_id());
                                         $content->setVariable("RESPONSE_ICON2", "release_32");
                                         $content->setVariable("RESPONSE_URL2", $TCRExtension->getExtensionUrl() . "release/" . $response_element->get_id());
                                         $content->setVariable("RELEASE_RESPONSE", "Veröffentlichen");
                                     } else {
                                         $content->setVariable("CREATE_RESPONSE", "Anzeigen");
                                         $content->setVariable("RESPONSE_ICON", "view_32");
                                         $content->setVariable("RESPONSE_URL", $TCRExtension->getExtensionUrl() . "release/" . $response_element->get_id());
                                         $content->setVariable("DISPLAY_RESPONSE_SECOND", "none");
                                     }
                                 }
                             } else {
                                 $content->setVariable("DISPLAY_REVIEW", "none");
                                 $content->setVariable("DISPLAY_RESPONSE", "none");
                             }
                         }
                     } else {
                         $content->setVariable("DISPLAY_THESIS", "none");
                         $content->setVariable("DISPLAY_REVIEW", "none");
                         $content->setVariable("DISPLAY_RESPONSE", "none");
                     }
                 }
                 $content->setVariable("ASSETURL", $TCRExtension->getAssetUrl());
                 $content->parse("BLOCK_DOCUMENTS_TABLE_ELEMENT");
             }
         }
         // review view
     } else {
         $content->setVariable("THESES_LABEL", "Erhaltene Thesen");
         $content->setVariable("REVIEWS_LABEL", "Erstellte Kritiken");
         $content->setVariable("RESPONSES_LABEL", "Erhaltene Repliken");
         for ($count = 1; $count <= $rounds; $count++) {
             $content->setCurrentBlock("BLOCK_DOCUMENTS_TABLE_ELEMENT");
             $content->setVariable("ROUND_VALUE", "Runde " . $count);
             if (!array_key_exists($count, $theses_response)) {
                 $content->setVariable("DISPLAY_THESIS", "none");
                 $content->setVariable("DISPLAY_REVIEW", "none");
                 $content->setVariable("DISPLAY_RESPONSE", "none");
             } else {
                 $content->setVariable("CREATE_THESIS", "Anzeigen");
                 $content->setVariable("THESIS_ICON", "view_32");
                 $content->setVariable("THESIS_URL", $TCRExtension->getExtensionUrl() . "release/" . $theses_response[$count]->get_id());
                 $content->setVariable("DISPLAY_THESIS_SECOND", "none");
                 $critics_array = $theses_response[$count]->get_attribute("TCR_REVIEWS");
                 if ($critics_array[$user->get_id()] == 0) {
                     $content->setVariable("CREATE_REVIEW", "Kritik erstellen");
                     $content->setVariable("REVIEW_ICON", "create_32");
                     $content->setVariable("REVIEW_URL", $TCRExtension->getExtensionUrl() . "create/" . $this->id . "/" . $count . "/" . $kindOfDocument . "/" . $theses_response[$count]->get_id());
                     $content->setVariable("DISPLAY_REVIEW_SECOND", "none");
                     $content->setVariable("DISPLAY_RESPONSE", "none");
                     $content->setVariable("DISPLAY_RESPONSE_SECOND", "none");
                 } else {
                     $review = \steam_factory::get_object($GLOBALS["STEAM"]->get_id(), $critics_array[$user->get_id()]);
                     $released = $review->get_attribute("TCR_RELEASED");
                     if ($released == 0) {
                         $content->setVariable("CREATE_REVIEW", "Anzeigen / Bearbeiten");
                         $content->setVariable("REVIEW_ICON", "view_32");
                         $content->setVariable("REVIEW_URL", $TCRExtension->getExtensionUrl() . "edit/" . $review->get_id());
                         $content->setVariable("REVIEW_ICON2", "release_32");
                         $content->setVariable("REVIEW_URL2", $TCRExtension->getExtensionUrl() . "release/" . $review->get_id());
                         $content->setVariable("RELEASE_REVIEW", "Veröffentlichen");
                         $content->setVariable("DISPLAY_RESPONSE", "none");
                     } else {
                         $content->setVariable("CREATE_REVIEW", "Anzeigen");
                         $content->setVariable("REVIEW_ICON", "view_32");
                         $content->setVariable("REVIEW_URL", $TCRExtension->getExtensionUrl() . "release/" . $review->get_id());
                         $content->setVariable("DISPLAY_REVIEW_SECOND", "none");
                         $responseID = $review->get_attribute("TCR_RESPONSE");
                         if ($responseID == 0) {
                             $response_released = 0;
                         } else {
                             $response_element = \steam_factory::get_object($GLOBALS["STEAM"]->get_id(), $responseID);
                             $response_released = $response_element->get_attribute("TCR_RELEASED");
                         }
                         if ($response_released == 0) {
                             $content->setVariable("DISPLAY_RESPONSE", "none");
                         } else {
                             $content->setVariable("CREATE_RESPONSE", "Anzeigen");
                             $content->setVariable("RESPONSE_ICON", "view_32");
                             $content->setVariable("RESPONSE_URL", $TCRExtension->getExtensionUrl() . "release/" . $response_element->get_id());
                             $content->setVariable("DISPLAY_RESPONSE_SECOND", "none");
                         }
                     }
                 }
             }
             $content->setVariable("ASSETURL", $TCRExtension->getAssetUrl());
             $content->parse("BLOCK_DOCUMENTS_TABLE_ELEMENT");
         }
     }
     $content->parse("BLOCK_DOCUMENTS_TABLE");
     $rawWidget = new \Widgets\RawHtml();
     $rawWidget->setHtml($content->get());
     $frameResponseObject->addWidget($rawWidget);
     $frameResponseObject->setHeadline(array(array("name" => $courseOrGroup, "link" => $courseOrGroupUrl), array("name" => "Thesen-Kritik-Replik-Verfahren", "link" => $TCRExtension->getExtensionUrl() . "Index/" . $this->id), array("name" => "Private Dokumente")));
     return $frameResponseObject;
 }
Ejemplo n.º 6
0
 public function frameResponse(\FrameResponseObject $frameResponseObject)
 {
     $actionBar = new \Widgets\ActionBar();
     $actionBar->setActions(array(array("name" => \Portfolio::getInstance()->getText("new artefact"), "ajax" => array("onclick" => array("command" => "newElement", "params" => array("newElement" => "newElement"), "requestType" => "popup"))), array("name" => \Portfolio::getInstance()->getText("new portfolio"), "ajax" => array("onclick" => array("command" => "NewArtefactForm", "params" => array(), "requestType" => "popup")))));
     $breadcrumb = new \Widgets\Breadcrumb();
     $breadcrumb->setData(array(array("name" => \Portfolio::getInstance()->getText("Meine Portfolios"))));
     $tabBar = new \Widgets\TabBar();
     $tabBar->setTabs(array(array("name" => \Portfolio::getInstance()->getText("Dashboard"), "link" => $this->getextension()->getExtensionUrl() . "/"), array("name" => gettext("Portfolio"), "link" => $this->getExtension()->getExtensionUrl() . "myportfolio/"), array("name" => \Portfolio::getInstance()->getText("Shared Portfolios"), "link" => $this->getExtension()->getExtensionUrl() . "SharedProfiles/")));
     $tabBar->setActiveTab(1);
     $clearer = new \Widgets\Clearer();
     $globalArtefacsBox = new \Widgets\Box();
     $globalArtefacsBox->setTitle("Alle Belege");
     $globalArtefacsBox->setTitleLink($this->getextension()->getExtensionUrl() . "ManageArtefacts/");
     $globalArtefacsBox->setContent(count(\Artefacts::getAllArtefacts()));
     /*
     $artefactsLoader = new \Widgets\Loader();
     $artefactsLoader->setWrapperId("artefactsWrapper");
     $artefactsLoader->setMessage("loading artefacts ...");
     $artefactsLoader->setCommand("loadArtefacts");
     $artefactsLoader->setParams(array());
     $artefactsLoader->setElementId("artefactsWrapper");
     $artefactsLoader->setType("updater");
     */
     $frameResponseObject->setTitle("Portfolio");
     $frameResponseObject->addWidget($actionBar);
     $frameResponseObject->addWidget($breadcrumb);
     $frameResponseObject->addWidget($tabBar);
     $frameResponseObject->addWidget($clearer);
     $frameResponseObject->addWidget($globalArtefacsBox);
     $frameResponseObject->addWidget($clearer);
     $portfolios = \PortfolioModel::getMyPortfolios();
     foreach ($portfolios as $key => $portfolio) {
         $loader = new \Widgets\Loader();
         $loader->setWrapperId("portfolioWrapper" . $key);
         $loader->setMessage("loading portfolio infos...");
         $loader->setCommand("loadPortfolio");
         $loader->setParams(array($portfolio->getId()));
         $loader->setElementId("portfolioWrapper" . $key);
         $loader->setType("updater");
         $frameResponseObject->addWidget($loader);
     }
     //$frameResponseObject->addWidget($rawHtml);
     return $frameResponseObject;
     /*
     $actionBar = new \Widgets\ActionBar();
     $actionBar->setActions(array(array("name"=>gettext("Profile"), "link"=>$this->getExtension()->getExtensionUrl() . "profile/"), array("name"=>gettext("Groups"), "link"=>$this->getExtension()->getExtensionUrl() . "groups/"), array("name"=>gettext("File Uploads"), "link"=>$this->getExtension()->getExtensionUrl()."Fileupload/"),array("name"=>gettext("Blogs"), "link"=>$this->getExtension()->getExtensionUrl() . "Blog/")));
     
     
     $breadcrumb = new \Widgets\Breadcrumb();
     $breadcrumb->setData(array(array("name"=>gettext("My Views"))));
     
     
     $tabBar = new \Widgets\TabBar();
     $tabBar->setTabs(array(array("name"=>gettext("Dashboard"), "link"=>$this->getextension()->getExtensionUrl()."/"), array("name"=>gettext("Portfolio"), "link"=>$this->getExtension()->getExtensionUrl() . "myportfolio/"), array("name"=>gettext("Shared Portfolios"), "link"=>$this->getExtension()->getExtensionUrl() . "SharedProfiles/")));
     $tabBar->setActiveTab(1);
     
     $clearer = new \Widgets\Clearer();
     
     $boxManage = new \Widgets\PortfolioViewBox();
     $boxManage->setTitle(gettext("Manage Artefacts"));
     $boxManage->setTitleLink($this->getExtension()->getExtensionUrl() . "ManageArtefacts/");
     $boxManage->setContent("this view helps in uploading and managing of desired artefacts");
     //$boxManage->setButtons(array(array("name"=>"Edit", "link"=>$this->getextension()->getExtensionUrl()."ManageArtefacts/"), array("name"=>"Manage Acess", "link"=>'')));
     
     
     $boxDiscuss = new \Widgets\PortfolioViewBox();
     $boxDiscuss->setTitle(gettext("Discuss View"));
     $boxDiscuss->setTitleLink($this->getextension()->getExtensionUrl()."ViewChart/");
     $boxDiscuss->setContent("Discuss view shows what other have commeted about ur artefacts.if needed this content  can be edited");
     $boxDiscuss->setButtons(array(array("name"=>"Edit", "link"=>"#"), array("name"=>"Manage Acess", "link"=>$this->getextension()->getExtensionUrl()."ManageArtefacts/")));
     
     $boxcompetence = new \Widgets\PortfolioViewBox();
     $boxcompetence->setTitle(gettext("Competence View"));
     $boxcompetence->setTitleLink($this->getextension()->getExtensionUrl()."ViewCompetence/");
     $boxcompetence->setContent(" Competence view shows the grading of artifacts on the basis of comments given by friends and other group members");
     $boxcompetence->setButtons(array(array("name"=>"Edit", "link"=>"#"), array("name"=>"Manage Acess", "link"=>"#")));
     
     
     
     $frameResponseObject->setTitle("Groups");
     $rawHtml = new \Widgets\RawHtml();
     $rawHtml->setHtml($html);
     $frameResponseObject->addWidget($actionBar);
     $frameResponseObject->addWidget($breadcrumb);
     $frameResponseObject->addWidget($tabBar);
     $frameResponseObject->addWidget($clearer);
     $frameResponseObject->addWidget($boxManage);
     $frameResponseObject->addWidget($boxDiscuss);
     $frameResponseObject->addWidget($boxcompetence);
     
     //$frameResponseObject->addWidget($rawHtml);
     return $frameResponseObject;
     */
 }
Ejemplo n.º 7
0
 public function frameResponse(\FrameResponseObject $frameResponseObject)
 {
     $workplanExtension = \Workplan::getInstance();
     $workplanExtension->addJS();
     $user = $GLOBALS["STEAM"]->get_current_steam_user();
     $portal = \lms_portal::get_instance();
     $newWorkplan = FALSE;
     if ($_SERVER["REQUEST_METHOD"] == "POST" && isset($_POST["new_workplan"])) {
         $newWorkplan = TRUE;
         $values = $_POST["values"];
         $workplanContainer = \steam_factory::create_room($GLOBALS["STEAM"]->get_id(), $values["name"], $user->get_workroom());
         $workplanContainer->set_attribute("OBJ_TYPE", "WORKPLAN_CONTAINER");
         $xml = new \SimpleXMLElement("<workplan></workplan>");
         $xml->addAttribute("name", $values["name"]);
         $start = $values["start"];
         $start = mktime(0, 0, 0, substr($start, 3, 2), substr($start, 0, 2), substr($start, 6, 4));
         $workplanContainer->set_attribute("WORKPLAN_START", $start);
         $xml->addAttribute("start", $start);
         if (!empty($values["end"])) {
             $end = $values["end"];
             $end = mktime(0, 0, 0, substr($end, 3, 2), substr($end, 0, 2), substr($end, 6, 4));
             $workplanContainer->set_attribute("WORKPLAN_END", $end);
             $xml->addAttribute("end", $end);
         } else {
             $workplanContainer->set_attribute("WORKPLAN_END", -1);
             $xml->addAttribute("end", -1);
         }
         if (!empty($values["description"])) {
             $workplanContainer->set_attribute("WORKPLAN_DESCRIPTION", $values["description"]);
             $xml->addAttribute("description", $values["description"]);
         } else {
             $workplanContainer->set_attribute("WORKPLAN_DESCRIPTION", "");
             $xml->addAttribute("description", "");
         }
         \steam_factory::create_document($GLOBALS["STEAM"]->get_id(), "version.xml", $xml->saveXML(), "text/xml", $workplanContainer);
         $portal->set_confirmation("Projektplan " . $values["name"] . " erfolgreich erstellt.");
     }
     if (!$newWorkplan) {
         $workplanContainer = \steam_factory::get_object($GLOBALS["STEAM"]->get_id(), $this->params[0]);
     }
     if (is_object($workplanContainer) && $workplanContainer instanceof \steam_room) {
         $content = $workplanExtension->loadTemplate("workplan_overview.template.html");
         if (!$newWorkplan) {
             $content->setCurrentBlock("BLOCK_CONFIRMATION");
             $content->setVariable("CONFIRMATION_TEXT", "NONE");
             $content->parse("BLOCK_CONFIRMATION");
         }
         // if current user has required rights display actionbar
         if ($workplanContainer->get_creator()->get_id() == $user->get_id() || in_array("WORKPLAN_" . $user->get_id() . "_LEADER", $workplanContainer->get_attribute_names())) {
             $content->setCurrentBlock("BLOCK_WORKPLAN_OVERVIEW_ACTIONBAR");
             $content->setVariable("LABEL_CHANGE", "Eigenschaften bearbeiten");
             $content->setVariable("LABEL_SNAPSHOT", "Snapshot erstellen");
             $content->setVariable("WORKPLAN_ID", $workplanContainer->get_id());
             if ($workplanContainer->get_creator()->get_id() == $user->get_id()) {
                 $content->setVariable("WORKPLAN_RIGHTS_CHANGE", "");
             } else {
                 $content->setVariable("WORKPLAN_RIGHTS_CHANGE", "none");
             }
             $content->parse("BLOCK_WORKPLAN_OVERVIEW_ACTIONBAR");
         }
         $actionBar = new \Widgets\RawHtml();
         $actionBar->setHtml($content->get());
         $frameResponseObject->addWidget($actionBar);
         $tabBar = new \Widgets\TabBar();
         $tabBar->setTabs(array(array("name" => "Überblick", "link" => $this->getExtension()->getExtensionUrl() . "overview/" . $workplanContainer->get_id()), array("name" => "Tabelle", "link" => $this->getExtension()->getExtensionUrl() . "listView/" . $workplanContainer->get_id()), array("name" => "Gantt-Diagramm", "link" => $this->getExtension()->getExtensionUrl() . "ganttView/" . $workplanContainer->get_id()), array("name" => "Mitarbeiter", "link" => $this->getExtension()->getExtensionUrl() . "users/" . $workplanContainer->get_id()), array("name" => "Snapshots", "link" => $this->getExtension()->getExtensionUrl() . "snapshots/" . $workplanContainer->get_id())));
         $tabBar->setActiveTab(0);
         $frameResponseObject->addWidget($tabBar);
         $content = $workplanExtension->loadTemplate("workplan_overview.template.html");
         if (isset($_POST["edit"])) {
             $edit = $_POST["edit"];
         } else {
             $edit = 0;
         }
         // if the user clicked on the edit symbol in Index-Command-View display edit view
         if ($edit == 1) {
             $content->setCurrentBlock("BLOCK_WORKPLAN_OVERVIEW_TABLE_EDIT");
             $content->setVariable("WORKPLAN_OVERVIEW_EDIT", "Eigenschaften bearbeiten");
             $content->setVariable("NAME_LABEL", "Projektname:*");
             $content->setVariable("START_LABEL", "Beginn:*");
             $content->setVariable("END_LABEL", "Ende:");
             $content->setVariable("CREATOR_LABEL", "Projektersteller:");
             $content->setVariable("DESCRIPTION_LABEL", "Beschreibung:");
             $content->setVariable("NAME_VALUE", $workplanContainer->get_name());
             $content->setVariable("START_VALUE", date("d.m.Y", (int) $workplanContainer->get_attribute("WORKPLAN_START")));
             $content->setVariable("CREATOR_VALUE", $workplanContainer->get_creator()->get_full_name());
             if ($workplanContainer->get_attribute("WORKPLAN_END") != -1) {
                 $content->setVariable("END_VALUE", date("d.m.Y", (int) $workplanContainer->get_attribute("WORKPLAN_END")));
             }
             if (in_array("WORKPLAN_DESCRIPTION", $workplanContainer->get_attribute_names())) {
                 $content->setVariable("DESCRIPTION_VALUE", $workplanContainer->get_attribute("WORKPLAN_DESCRIPTION"));
             }
             $content->setVariable("LABEL_SAVE", "Speichern");
             $content->setVariable("LABEL_BACK", "Abbrechen");
             $content->setVariable("WORKPLAN_ID", $workplanContainer->get_id());
             $content->parse("BLOCK_WORKPLAN_OVERVIEW_TABLE_EDIT");
             // else display normal view
         } else {
             $content->setCurrentBlock("BLOCK_WORKPLAN_OVERVIEW_TABLE");
             $content->setVariable("WORKPLAN_OVERVIEW_ATTRIBUTE", "Eigenschaft");
             $content->setVariable("WORKPLAN_OVERVIEW_VALUE", "Wert");
             $content->setVariable("NAME_LABEL", "Projektname");
             $content->setVariable("START_LABEL", "Beginn");
             $content->setVariable("END_LABEL", "Ende");
             $content->setVariable("CREATOR_LABEL", "Projektersteller");
             $content->setVariable("DESCRIPTION_LABEL", "Beschreibung");
             $content->setVariable("NAME_VALUE", $workplanContainer->get_name());
             $content->setVariable("START_VALUE", date("d.m.Y", (int) $workplanContainer->get_attribute("WORKPLAN_START")));
             $content->setVariable("CREATOR_VALUE", $workplanContainer->get_creator()->get_full_name());
             if ($workplanContainer->get_attribute("WORKPLAN_END") != -1) {
                 $content->setVariable("END_VALUE", date("d.m.Y", (int) $workplanContainer->get_attribute("WORKPLAN_END")));
             } else {
                 $content->setVariable("END_VALUE", "-");
             }
             if (in_array("WORKPLAN_DESCRIPTION", $workplanContainer->get_attribute_names())) {
                 if (strlen(trim($workplanContainer->get_attribute("WORKPLAN_DESCRIPTION"))) > 0) {
                     $content->setVariable("DESCRIPTION_VALUE", nl2br($workplanContainer->get_attribute("WORKPLAN_DESCRIPTION")));
                 } else {
                     $content->setVariable("DESCRIPTION_VALUE", "-");
                 }
             } else {
                 $content->setVariable("DESCRIPTION_VALUE", "-");
             }
             $content->parse("BLOCK_WORKPLAN_OVERVIEW_TABLE");
         }
         $rawWidget = new \Widgets\RawHtml();
         $rawWidget->setHtml($content->get());
         $frameResponseObject->setTitle("Projektplan: " . $workplanContainer->get_name());
         $frameResponseObject->setHeadline(array(array("link" => $this->getExtension()->getExtensionUrl(), "name" => "Projektplanverwaltung"), array("", "name" => $workplanContainer->get_name())));
         $frameResponseObject->addWidget($rawWidget);
         return $frameResponseObject;
     }
 }
Ejemplo n.º 8
0
    public function frameResponse(\FrameResponseObject $frameResponseObject)
    {
        $breadcrumb = new \Widgets\Breadcrumb();
        $breadcrumb->setData(array(array("name" => \Portfolio::getInstance()->getText("Portfolio/"), "link" => $this->getExtension()->getExtensionUrl() . "Myportfolio/"), array("name" => \Portfolio::getInstance()->getText("File Upload"))));
        $tabBar = new \Widgets\TabBar();
        $tabBar->setTabs(array(array("name" => \Portfolio::getInstance()->getText("Dashboard"), "link" => $this->getextension()->getExtensionUrl() . "/"), array("name" => \Portfolio::getInstance()->getText("Portfolio"), "link" => $this->getExtension()->getExtensionUrl() . "myportfolio/"), array("name" => \Portfolio::getInstance()->getText("Shared Portfolios"), "link" => $this->getExtension()->getExtensionUrl() . "SharedProfiles/")));
        $clearer = new \Widgets\Clearer();
        $upload = new \Widgets\UploadFile();
        $upload->setLabel(\Portfolio::getInstance()->getText("Upload File"));
        $menu = new \Widgets\DropdownBox();
        $menu->setLabel(\Portfolio::getInstance()->getText("type of group"));
        $menu->addOption(\Portfolio::getInstance()->getText("New Folder"));
        $menu->addOption(\Portfolio::getInstance()->getText("Folder 1"));
        $menu->addOption(\Portfolio::getInstance()->getText("Folder 2"));
        $actionBar2 = new \Widgets\ActionBar();
        $actionBar2->setActions(array(array("name" => \Portfolio::getInstance()->getText("Save"), "link" => $this->getExtension()->getExtensionUrl() . ""), array("name" => gettext("Cancel"), "link" => $this->getExtension()->getExtensionUrl() . "")));
        $html = <<<end




<style type="text/css">

.uploadform td {
    font-size: 0.9167em;
    line-height: 1.3333em;
}

</style>

<div class="headline">
\t<h1>File Upload</h1>
</div>





<ul class="tabBar">
        
    <li class="tabIn"><a href="./..">Dashboard</a></li>
        
    <li class="tabIn"><a href="../profile/">Profile</a></li>
        
    <li class="tabOut"><a href="../myportfolio/">Portfolio</a></li>
        
    <li class="tabIn"><a href="../groups/">Groups</a></li>
    
    <li style="clear: left;">
</li></ul>
<br>
Portfolio > file upload <br><br>
<td class="label" Upload File:</td>


<div>
<tr class="uploadform">
<th>
<p>
File:
<input type="file" size="45" name="filename1">
</p>

<p>
 Folder:
<td class="value">
<select name="values[OBJ_DESC]">
<option value=""></option>
<option value="New Folder" selected="selected">New Folder</option>
<option value="Folder 1">Folder 1</option>
<option value="Folder 2">Folder 2</option>
<option value="Folder 3">Folder 3</option>
</select>
</td>
<br>
<br>
<br>
<input type="submit" value="Submit" name=".submit">
</form>
end;
        $frameResponseObject->setTitle("Fileupload");
        $rawHtml = new \Widgets\RawHtml();
        $rawHtml->setHtml($html);
        $frameResponseObject->addWidget($breadcrumb);
        //$frameResponseObject->addWidget($tabBar);
        $frameResponseObject->addWidget($clearer);
        $frameResponseObject->addWidget($upload);
        $frameResponseObject->addWidget($clearer);
        $frameResponseObject->addWidget($menu);
        $frameResponseObject->addWidget($actionBar2);
        //$frameResponseObject->addWidget($rawHtml);
        return $frameResponseObject;
    }
Ejemplo n.º 9
0
    public function frameResponse(\FrameResponseObject $frameResponseObject)
    {
        if (!$this->artefactId) {
            print "no object id given!";
            exit;
        }
        $artefact = \Artefacts::getById($this->artefactId);
        $actionBar = new \Widgets\ActionBar();
        $actionBar->setActions(array(array("link" => "javascript:history.back()", "name" => "zurück")));
        $tabBar = new \Widgets\TabBar();
        $tabBar->setTabs(array(array("name" => \Portfolio::getInstance()->getText("Dashboard"), "link" => $this->getextension()->getExtensionUrl() . "/"), array("name" => \Portfolio::getInstance()->getText("Competences"), "link" => $this->getExtension()->getExtensionUrl() . "ViewChart/"), array("name" => \Portfolio::getInstance()->getText("Artefacts"), "link" => $this->getExtension()->getExtensionUrl() . "ManageArtefacts/"), array("name" => $artefact->getName(), "link" => "#")));
        $tabBar->setActiveTab(3);
        $competences = \CompetenceRaster::getCompetences();
        $jobs = \CompetenceRaster::getJobs();
        $facets = \CompetenceRaster::getFacets();
        $activities = \CompetenceRaster::getActivityFields();
        $html = "<br>";
        $htmlPre = "";
        $htmlPost = "";
        //		$jswrapper = new \Widgets\JSWrapper();
        $htmlPost .= <<<END
\t\t<br>
    <h1>Weitere Kompetenzen zuordnen</h1>
\tSuche: <input id="search" type="text" value="" title="Suche mit Enter-Taste bestätigen."/>
    <select id="jobs">
END;
        $htmlPost .= '<option value="undefined">Job Auswahl</option>';
        foreach ($jobs as $job) {
            $htmlPost .= '<option value="' . $job->name . '">' . $job->name . ": " . $job->description . '</option>';
        }
        $htmlPost .= "</select>";
        //		$htmlPost .= <<<END
        //
        //    </select>
        //    <select id="facets">
        //END
        //		;
        //
        //		$htmlPost .= '<option value="undefined">Facette Auswahl</option>';
        //		foreach ($facets as $facet) {
        //			$htmlPost .= '<option value="' . $facet->short . '">' . $facet->short .": ". $facet->name .  '</option>';
        //		}
        $htmlPost .= <<<END
    
    <select style="width:175px;" id="activities">
END;
        $htmlPost .= '<option value="undefined">Fertigkeiten Auswahl</option>';
        foreach ($activities as $activity) {
            $htmlPost .= '<option value="' . $activity->index . '">' . $activity->index . ": " . $activity->name . '</option>';
        }
        $htmlPost .= <<<END
    
    </select>
END;
        $htmlPre .= '<h1>Zugeordnete Kompetenzen</h1><div id="itemsChecked"><table id="checkedRows" width=100% class="grid">';
        $htmlPre .= '<tr id="headline">
				<td>Index</td>
				<td>Beschreibung</td>
				<td></td>
			</tr>';
        //				<td>Activity</td>
        //				<td>Facet</td>
        //				<td>Index</td>
        //				<td>Description</td>
        $htmlPost .= '<div id="items"><table id="uncheckedRows" width=100% class="grid">';
        $htmlPost .= '<tr id="headline">
				<td>Index</td>
				<td>Beschreibung</td>
				<td></td>
			</tr>';
        foreach ($competences as $competence) {
            $checked = key_exists($competence->short, $artefact->getCompetencesStrings()) ? " checked=\"true\"" : "";
            $tmp = "<tr short=\"{$competence->short}\" job=\"{$competence->job}\" facet=\"{$competence->facet}\" activity=\"{$competence->activity}\">\n\t\t\t\t\t\t<td>{$competence->short}</td>\n\t\t\t\t\t\t<td>{$competence->name}</td>\n\t\t\t\t\t\t<td><input value=\"{$competence->short}\" type=\"checkbox\" name=\"selected[]\"{$checked}></td>\n\t\t\t\t\t\t</tr>";
            //						<td>{$competence->job}</td>
            //						<td>{$competence->activity}</td>
            //						<td>{$competence->facet}</td>
            //						<td>{$competence->index}</td>
            //						<td>{$competence->description}</td>
            if ($checked != "") {
                $htmlPre .= $tmp;
            } else {
                $htmlPost .= $tmp;
            }
        }
        $htmlPre .= '</table>';
        $htmlPost .= '<tr id="nothing">
				<td align="center">Keine Kompetenzen gefunden welche den Kriterien entsprechen</td>
			</tr>';
        $html .= $htmlPre . $htmlPost;
        $html .= <<<END
</table>
</div>
<script type="text/javascript">
jQuery.expr[':'].Contains = function(a, i, m) { 
  return jQuery(a).text().toUpperCase().indexOf(m[3].toUpperCase()) >= 0; 
};

\$("#items").fadeOut();

function filter(){
\t\$("#items").fadeOut();
\tactivity = \$('select[id="activities"] option:selected').val();
    job = \$('select[id="jobs"] option:selected').val();
    facet = \$('select[id="facets"] option:selected').val();
    search = \$('input[id="search"]').val();
    \$("#items").find("tr").show();
    if (job != "undefined"){
    \t\$("#items").find('tr[job!='+job+']').hide();
    \t}
    if (activity != "undefined"){
    \t\$("#items").find('tr[activity!='+activity+']').hide();
    \t}
//    if (facet != "undefined"){
//    \t\$("#items").find('tr[facet!='+facet+']').hide();
//    \t}
    if (search != ""){
    \t\$("#items").find("tr").not('tr:Contains('+search+')').hide();
    \t}
    if (\$("#items").find('tr:visible').length == 0){
    \t\$("#items").find('tr[id="nothing"]').show();
\t} else {
    \t\$("#items").find('tr[id="headline"]').show();
\t}
    
    \$("#items").fadeIn();
}

\$("input[type='text']").keyup( function(e) {
    if (e.keyCode == 13) {
\t\tfilter();
    }
});
\$('select[id="jobs"]').change(function() {
\tfilter();
});
\$('select[id="activities"]').change(function() {
\tfilter();
});
//\$('select[id="facets"]').change(function() {
//\tfilter();
//});

<!-- listener for each checkbox -->
\$(':checkbox').change(function() {
   sendRequest("UpdateCompetence", {"artefactId": "{$this->artefactId}", "competence": \$(this).val(), "checked": \$(this).prop("checked")}, "", "data");
   if (\$(this).prop("checked")){
\t   row = \$('tr[short="'+\$(this).val()+'"]').fadeOut().detach();
\t   row.appendTo(\$('#checkedRows > tbody:last')).fadeIn();
\t} else {
\t   row = \$('tr[short="'+\$(this).val()+'"]').fadeOut().detach();
\t   row.prependTo(\$('#uncheckedRows > tbody:first')).fadeIn();
   }
   
});

//<!-- for a save button -->
//var data = { 'selected[][]' : []};
//\$("#items").find(":checked").each(function() {
//  data['selected[][]'].push(\$(this).val());
//});
//sendRequest("UpdateCompetence", {"artefactid": "{$this->id}", "competence": \$(this).val(), "checked": data}, "", "data");
</script>
END;
        $rawHtml = new \Widgets\RawHtml();
        $rawHtml->setHtml($html);
        //		$frameResponseObject->addWidget($jswrapper);
        $frameResponseObject->addWidget($actionBar);
        $frameResponseObject->addWidget($tabBar);
        $frameResponseObject->addWidget($rawHtml);
        return $frameResponseObject;
    }
Ejemplo n.º 10
0
 public function frameResponse(\FrameResponseObject $frameResponseObject)
 {
     $workplanExtension = \Workplan::getInstance();
     $workplanExtension->addJS();
     $workplanExtension->addJS($fileName = 'jsgantt.js');
     $workplanExtension->addCSS($fileName = 'jsgantt.css');
     $user = $GLOBALS["STEAM"]->get_current_steam_user();
     $portal = \lms_portal::get_instance();
     $objectID = $this->params[0];
     $workplanContainer = \steam_factory::get_object($GLOBALS["STEAM"]->get_id(), $objectID);
     if (is_object($workplanContainer) && $workplanContainer instanceof \steam_room) {
         $tabBar = new \Widgets\TabBar();
         $tabBar->setTabs(array(array("name" => "Überblick", "link" => $this->getExtension()->getExtensionUrl() . "overview/" . $objectID), array("name" => "Tabelle", "link" => $this->getExtension()->getExtensionUrl() . "listView/" . $objectID), array("name" => "Gantt-Diagramm", "link" => $this->getExtension()->getExtensionUrl() . "ganttView/" . $objectID), array("name" => "Mitarbeiter", "link" => $this->getExtension()->getExtensionUrl() . "users/" . $objectID), array("name" => "Snapshots", "link" => $this->getExtension()->getExtensionUrl() . "snapshots/" . $objectID)));
         $tabBar->setActiveTab(4);
         $frameResponseObject->addWidget($tabBar);
         $xmlfile = $workplanContainer->get_inventory_filtered(array(array("+", "class", CLASS_DOCUMENT)));
         // if user submitted new snapshot dialog add a now annotation/snapshot
         if ($_SERVER["REQUEST_METHOD"] == "POST" && isset($_POST["new_snapshot"])) {
             $values = $_POST["values"];
             $newannotation = \steam_factory::create_textdoc($GLOBALS["STEAM"]->get_id(), $values["snapshotname"], strval($xmlfile[0]->get_version()), $workplanContainer);
             $xmlfile[0]->add_annotation($newannotation);
             $portal->set_confirmation("Snapshot " . $values["snapshotname"] . " erfolgreich erstellt.");
         }
         // display snapshot list
         $content = $workplanExtension->loadTemplate("workplan_snapshots.template.html");
         $snapshots = $xmlfile[0]->get_annotations();
         $howmany = count($snapshots);
         if ($howmany > 0) {
             $content->setCurrentBlock("BLOCK_SNAPSHOTS_LIST");
             $content->setVariable("NAME_LABEL", "Name");
             $content->setVariable("DATE_LABEL", "Datum");
             $content->setVariable("VIEW_LABEL", "Ansicht");
             for ($count = count($snapshots) - 1; $count >= 0; $count--) {
                 $content->setCurrentBlock("BLOCK_SNAPSHOTS_LIST_ELEMENT");
                 $content->setVariable("ELEMENT_NAME", $snapshots[$count]->get_name());
                 $timestamp = $snapshots[$count]->get_attribute("OBJ_CREATION_TIME");
                 $content->setVariable("ELEMENT_DATE", strftime("%x %X", $timestamp));
                 $content->setVariable("ELEMENT_LIST", "Tabelle");
                 $content->setVariable("ELEMENT_GANTT", "Gantt-Diagramm");
                 $content->setVariable("WORKPLAN_VERSION", $snapshots[$count]->get_content());
                 $content->setVariable("WORKPLAN_ID", $objectID);
                 $content->setVariable("ANNOTATION_ID", $count);
                 $version = $snapshots[$count]->get_content();
                 if ($version == $xmlfile[0]->get_version()) {
                     $viewversion = $xmlfile[0];
                 } else {
                     $previousversions = $xmlfile[0]->get_previous_versions();
                     $viewversion = $previousversions[count($previousversions) - $version];
                 }
                 // change information of every snapshot to a form which is used to create the gantt view
                 $xml = simplexml_load_string($viewversion->get_content());
                 $helpToArray = $xml->children();
                 $list = array();
                 for ($counter = 0; $counter < count($helpToArray); $counter++) {
                     array_push($list, $helpToArray[$counter]);
                 }
                 usort($list, 'sort_xmllist');
                 $oids = "";
                 $names = "";
                 $start = "";
                 $end = "";
                 $depends = "";
                 $milestones = "";
                 for ($count2 = 0; $count2 < count($list); $count2++) {
                     $oids = $oids . $list[$count2]->oid . ",";
                     $names = $names . $list[$count2]->name . ",";
                     $start = $start . $list[$count2]->start . ",";
                     $end = $end . $list[$count2]->end . ",";
                     $depends = $depends . $list[$count2]->depends . ",";
                     if ($list[$count2]->getName() == 'milestone') {
                         $milestones = $milestones . "1,";
                     } else {
                         $milestones = $milestones . "0,";
                     }
                 }
                 $oids = "[" . substr($oids, 0, strlen($oids) - 1) . "]";
                 $names = "[" . substr($names, 0, strlen($names) - 1) . "]";
                 $start = "[" . substr($start, 0, strlen($start) - 1) . "]";
                 $end = "[" . substr($end, 0, strlen($end) - 1) . "]";
                 $depends = "[" . substr($depends, 0, strlen($depends) - 1) . "]";
                 $milestones = "[" . substr($milestones, 0, strlen($milestones) - 1) . "]";
                 $content->setVariable("WORKPLAN_OIDS", $oids);
                 $content->setVariable("WORKPLAN_NAMES", $names);
                 $content->setVariable("WORKPLAN_STARTS", $start);
                 $content->setVariable("WORKPLAN_ENDS", $end);
                 $content->setVariable("WORKPLAN_DEPENDS", $depends);
                 $content->setVariable("WORKPLAN_MILESTONES", $milestones);
                 $content->parse("BLOCK_SNAPSHOTS_LIST_ELEMENT");
             }
             $content->parse("BLOCK_SNAPSHOTS_LIST");
         } else {
             $content->setCurrentBlock("BLOCK_SNAPSHOTS_NO_LIST");
             $content->setVariable("NO_SNAPSHOTS", "Keine Snapshots zu diesem Projektplan vorhanden.");
             $content->parse("BLOCK_SNAPSHOTS_NO_LIST");
         }
         // if current user has the required rights display create snapshot dialog
         $content->setCurrentBlock("BLOCK_NEW_SNAPSHOT");
         $content->setVariable("WORKPLAN_ID", $objectID);
         $content->setVariable("LABEL_NEW_SNAPSHOT", "Neuen Snapshot erstellen");
         $content->setVariable("LABEL_NAME", "Name:*");
         $content->setVariable("LABEL_CREATE", "Abschicken");
         $content->setVariable("WORKPLAN_SHOW_CURRENTVERSION", "Aktuelle Version des Projektplans einblenden");
         $content->setVariable("WORKPLAN_HIDE_SNAPSHOT", "Snapshot ausblenden");
         $content->setVariable("WORKPLAN_HIDECURRENT_SNAPSHOT", "Aktuelle Version des Projektplans ausblenden");
         if ($user->get_id() == $workplanContainer->get_creator()->get_id() || in_array("WORKPLAN_" . $user->get_id() . "_LEADER", $workplanContainer->get_attribute_names())) {
             $content->setVariable("SNAPSHOT_RIGHTS", "");
         } else {
             $content->setVariable("SNAPSHOT_RIGHTS", "none");
         }
         $content->parse("BLOCK_NEW_SNAPSHOT");
         $rawWidget = new \Widgets\RawHtml();
         $rawWidget->setHtml($content->get());
         $frameResponseObject->setTitle("Projektplan: " . $workplanContainer->get_name());
         $frameResponseObject->setHeadline(array(array("link" => $this->getExtension()->getExtensionUrl(), "name" => "Projektplanverwaltung"), array("", "name" => $workplanContainer->get_name())));
         $frameResponseObject->addWidget($rawWidget);
         return $frameResponseObject;
     }
 }
Ejemplo n.º 11
0
 public function frameResponse(\FrameResponseObject $frameResponseObject)
 {
     $TCR = \steam_factory::get_object($GLOBALS["STEAM"]->get_id(), $this->id);
     $user = $GLOBALS["STEAM"]->get_current_steam_user();
     $TCRExtension = \TCR::getInstance();
     $TCRExtension->addCSS();
     $TCRExtension->addJS();
     $content = $TCRExtension->loadTemplate("tcr_index.template.html");
     $members = $TCR->get_attribute("TCR_USERS");
     // determine which kind of elements is displayed (0 = theses, 1 = reviews, 2 = responses, 3 = all)
     if (isset($this->params[1])) {
         $kind = $this->params[1];
     } else {
         $kind = 3;
     }
     // display actionbar
     $actionbar = new \Widgets\Actionbar();
     $admins = $TCR->get_attribute("TCR_ADMINS");
     if (in_array($user->get_id(), $admins)) {
         $actions = array(array("name" => "Konfiguration", "link" => $TCRExtension->getExtensionUrl() . "configuration/" . $this->id), array("name" => "Private Dokumente", "link" => $TCRExtension->getExtensionUrl() . "privateDocuments/" . $this->id), array("name" => "Übersicht", "link" => $TCRExtension->getExtensionUrl() . "Index/" . $this->id), array("name" => "Alle Dokumente", "link" => $TCRExtension->getExtensionUrl() . "documents/" . $this->id));
     } else {
         $actions = array(array("name" => "Private Dokumente", "link" => $TCRExtension->getExtensionUrl() . "privateDocuments/" . $this->id), array("name" => "Übersicht", "link" => $TCRExtension->getExtensionUrl() . "Index/" . $this->id), array("name" => "Alle Dokumente", "link" => $TCRExtension->getExtensionUrl() . "documents/" . $this->id));
     }
     $actionbar->setActions($actions);
     $frameResponseObject->addWidget($actionbar);
     // display tabbar
     $tabBar = new \Widgets\TabBar();
     $tabBar->setTabs(array(array("name" => "Alle", "link" => $TCRExtension->getExtensionUrl() . "documents/" . $this->id), array("name" => "Thesen", "link" => $TCRExtension->getExtensionUrl() . "documents/" . $this->id . "/0"), array("name" => "Kritiken", "link" => $TCRExtension->getExtensionUrl() . "documents/" . $this->id . "/1"), array("name" => "Repliken", "link" => $TCRExtension->getExtensionUrl() . "documents/" . $this->id . "/2")));
     if ($kind == 3) {
         $tabBar->setActiveTab(0);
     } else {
         $tabBar->setActiveTab($kind + 1);
     }
     $frameResponseObject->addWidget($tabBar);
     // create arrays for every round and add the theses to these arrays
     $rounds = $TCR->get_attribute("TCR_ROUNDS");
     $theses_container = \steam_factory::get_object_by_name($GLOBALS["STEAM"]->get_id(), $TCR->get_path() . "/theses");
     $theses_inventory = $theses_container->get_inventory();
     $theses = array();
     for ($count = 1; $count <= $rounds; $count++) {
         $theses[$count] = array();
     }
     foreach ($theses_inventory as $thesis) {
         $critics = $thesis->get_attribute("TCR_REVIEWS");
         if (count($critics) > 0 && in_array($thesis->get_creator()->get_id(), $members)) {
             $current_round = $thesis->get_attribute("TCR_ROUND");
             array_push($theses[$current_round], $thesis);
         }
     }
     // display documents table
     $content = $TCRExtension->loadTemplate("tcr_documents.template.html");
     $content->setCurrentBlock("BLOCK_DOCUMENTS_TABLE");
     $content->setVariable("ROUND_LABEL", "Runde");
     $content->setVariable("DOCUMENT_KIND_LABEL", "Art");
     $content->setVariable("CONTENT_LABEL", "Inhalt");
     $content->setVariable("AUTHOR_LABEL", "Autor(in)");
     $content->setVariable("DATE_LABEL", "Veröffentlicht am");
     $content->setVariable("COMMENTS_LABEL", "Kommentare");
     for ($count = 1; $count <= $rounds; $count++) {
         $content->setCurrentBlock("BLOCK_DOCUMENTS_ROUND");
         $content->setVariable("CURRENT_ROUND", $count . ". Runde");
         $content->setVariable("CURRENT_ROUND_VALUE", $count);
         // display every thesis in the corresponding round
         foreach ($theses[$count] as $current_thesis) {
             if ($kind == 3 || $kind == 0) {
                 $creator = $current_thesis->get_creator();
                 $date = $current_thesis->get_attribute("TCR_RELEASED");
                 $content->setCurrentBlock("BLOCK_DOCUMENTS_ELEMENT");
                 $content->setVariable("ASSETURL", $TCRExtension->getAssetUrl());
                 $content->setVariable("DOCUMENT_KIND", "These");
                 $content->setVariable("ELEMENT_URL", $TCRExtension->getExtensionUrl() . "release/" . $current_thesis->get_id());
                 $content->setVariable("VIEW_ELEMENT", "Inhalt anzeigen");
                 $content->setVariable("ASSETURL", $TCRExtension->getAssetUrl());
                 $content->setVariable("AUTHOR_VALUE", $creator->get_full_name() . " (" . $creator->get_name() . ")");
                 $content->setVariable("DATE_VALUE", date("d.m.Y H:i:s", $date));
                 if (count($current_thesis->get_annotations()) == 1) {
                     $content->setVariable("COMMENTS_VALUE", "(1 Kommentar)");
                 } else {
                     $content->setVariable("COMMENTS_VALUE", "(" . count($current_thesis->get_annotations()) . " Kommentare)");
                 }
                 $content->setVariable("COMMENTS_URL", $TCRExtension->getExtensionUrl() . "release/" . $current_thesis->get_id());
                 $content->parse("BLOCK_DOCUMENTS_ELEMENT");
             }
             $critics = $current_thesis->get_attribute("TCR_REVIEWS");
             // display reviews to the thesis if there are any released ones
             foreach ($critics as $critic => $review) {
                 if ($review != 0) {
                     $review_object = \steam_factory::get_object($GLOBALS["STEAM"]->get_id(), $review);
                     $review_released = $review_object->get_attribute("TCR_RELEASED");
                     if ($review_released != 0 && in_array($critic, $members)) {
                         if ($kind == 3 || $kind == 1) {
                             $creator = $review_object->get_creator();
                             $date = $review_object->get_attribute("TCR_RELEASED");
                             $content->setCurrentBlock("BLOCK_DOCUMENTS_ELEMENT");
                             $content->setVariable("ASSETURL", $TCRExtension->getAssetUrl());
                             $content->setVariable("DOCUMENT_KIND", "Kritik");
                             $content->setVariable("ELEMENT_URL", $TCRExtension->getExtensionUrl() . "release/" . $review_object->get_id());
                             $content->setVariable("VIEW_ELEMENT", "Inhalt anzeigen");
                             $content->setVariable("ASSETURL", $TCRExtension->getAssetUrl());
                             $content->setVariable("AUTHOR_VALUE", $creator->get_full_name() . " (" . $creator->get_name() . ")");
                             $content->setVariable("DATE_VALUE", date("d.m.Y H:i:s", $date));
                             if (count($review_object->get_annotations()) == 1) {
                                 $content->setVariable("COMMENTS_VALUE", "(1 Kommentar)");
                             } else {
                                 $content->setVariable("COMMENTS_VALUE", "(" . count($review_object->get_annotations()) . " Kommentare)");
                             }
                             $content->setVariable("COMMENTS_URL", $TCRExtension->getExtensionUrl() . "release/" . $review_object->get_id());
                             $content->parse("BLOCK_DOCUMENTS_ELEMENT");
                         }
                         // display response if it exists and is released
                         $response = $review_object->get_attribute("TCR_RESPONSE");
                         if ($response != 0) {
                             $response_object = \steam_factory::get_object($GLOBALS["STEAM"]->get_id(), $response);
                             $response_released = $response_object->get_attribute("TCR_RELEASED");
                             if ($response_released != 0) {
                                 if ($kind == 3 || $kind == 2) {
                                     $creator = $response_object->get_creator();
                                     $date = $response_object->get_attribute("TCR_RELEASED");
                                     $content->setCurrentBlock("BLOCK_DOCUMENTS_ELEMENT");
                                     $content->setVariable("ASSETURL", $TCRExtension->getAssetUrl());
                                     $content->setVariable("DOCUMENT_KIND", "Replik");
                                     $content->setVariable("ELEMENT_URL", $TCRExtension->getExtensionUrl() . "release/" . $response_object->get_id());
                                     $content->setVariable("VIEW_ELEMENT", "Inhalt anzeigen");
                                     $content->setVariable("ASSETURL", $TCRExtension->getAssetUrl());
                                     $content->setVariable("AUTHOR_VALUE", $creator->get_full_name() . " (" . $creator->get_name() . ")");
                                     $content->setVariable("DATE_VALUE", date("d.m.Y H:i:s", $date));
                                     if (count($response_object->get_annotations()) == 1) {
                                         $content->setVariable("COMMENTS_VALUE", "(1 Kommentar)");
                                     } else {
                                         $content->setVariable("COMMENTS_VALUE", "(" . count($response_object->get_annotations()) . " Kommentare)");
                                     }
                                     $content->setVariable("COMMENTS_URL", $TCRExtension->getExtensionUrl() . "release/" . $response_object->get_id());
                                     $content->parse("BLOCK_DOCUMENTS_ELEMENT");
                                 }
                             }
                         }
                     }
                 }
             }
         }
         $content->parse("BLOCK_DOCUMENTS_ROUND");
     }
     // display filter
     $content->setVariable("FILTER_LABEL", "Filter:");
     $content->setCurrentBlock("BLOCK_DOCUMENTS_DROPDOWN");
     $content->setVariable("OPTION_VALUE", 0);
     $content->setVariable("OPTION_NAME", "Alle Runden");
     $content->setVariable("ROUNDS_VALUE", $rounds);
     $content->parse("BLOCK_DOCUMENTS_DROPDOWN");
     for ($count = 1; $count <= $rounds; $count++) {
         $content->setCurrentBlock("BLOCK_DOCUMENTS_DROPDOWN");
         $content->setVariable("OPTION_VALUE", $count);
         $content->setVariable("OPTION_NAME", $count . ". Runde");
         $content->setVariable("ROUNDS_VALUE", $rounds);
         $content->parse("BLOCK_DOCUMENTS_DROPDOWN");
     }
     $content->parse("BLOCK_DOCUMENTS_TABLE");
     $group = $TCR->get_attribute("TCR_GROUP");
     if ($group->get_name() == "learners") {
         $parent = $group->get_parent_group();
         $courseOrGroup = "Kurs: " . $parent->get_attribute("OBJ_DESC") . " (" . $parent->get_name() . ")";
         $courseOrGroupUrl = PATH_URL . "semester/" . $parent->get_id();
     } else {
         $courseOrGroup = "Gruppe: " . $group->get_name();
         $courseOrGroupUrl = PATH_URL . "groups/" . $group->get_id();
     }
     $rawWidget = new \Widgets\RawHtml();
     $rawWidget->setHtml($content->get());
     $frameResponseObject->addWidget($rawWidget);
     $frameResponseObject->setHeadline(array(array("name" => $courseOrGroup, "link" => $courseOrGroupUrl), array("name" => "Thesen-Kritik-Replik-Verfahren", "link" => $TCRExtension->getExtensionUrl() . "Index/" . $TCR->get_id()), array("name" => "Alle Dokumente")));
     return $frameResponseObject;
 }
Ejemplo n.º 12
0
 public function frameResponse(\FrameResponseObject $frameResponseObject)
 {
     $workplanExtension = \Workplan::getInstance();
     $workplanExtension->addJS();
     $user = $GLOBALS["STEAM"]->get_current_steam_user();
     $portal = \lms_portal::get_instance();
     $objectID = $this->params[0];
     $workplanContainer = \steam_factory::get_object($GLOBALS["STEAM"]->get_id(), $objectID);
     if (is_object($workplanContainer) && $workplanContainer instanceof \steam_container) {
         // if current user has required rights display actionbar
         if ($user->get_id() == $workplanContainer->get_creator()->get_id() || in_array("WORKPLAN_" . $user->get_id() . "_LEADER", $workplanContainer->get_attribute_names())) {
             $content = $workplanExtension->loadTemplate("workplan_listview.template.html");
             $content->setCurrentBlock("BLOCK_CONFIRMATION");
             $content->setVariable("CONFIRMATION_TEXT", "NONE");
             $content->parse("BLOCK_CONFIRMATION");
             $content->setCurrentBlock("BLOCK_WORKPLAN_LIST_ACTIONBAR");
             $content->setVariable("WORKPLAN_ID", $objectID);
             $content->setVariable("LABEL_NEW_SNAPSHOT", "Snapshot erstellen");
             $content->setVariable("LABEL_NEW_MILESTONE", "Neuer Meilenstein");
             $content->setVariable("LABEL_NEW_TASK", "Neuer Vorgang");
             $content->parse("BLOCK_WORKPLAN_LIST_ACTIONBAR");
             $actionBar = new \Widgets\RawHtml();
             $actionBar->setHtml($content->get());
             $frameResponseObject->addWidget($actionBar);
         }
         $tabBar = new \Widgets\TabBar();
         $tabBar->setTabs(array(array("name" => "Überblick", "link" => $this->getExtension()->getExtensionUrl() . "overview/" . $objectID), array("name" => "Tabelle", "link" => $this->getExtension()->getExtensionUrl() . "listView/" . $objectID), array("name" => "Gantt-Diagramm", "link" => $this->getExtension()->getExtensionUrl() . "ganttView/" . $objectID), array("name" => "Mitarbeiter", "link" => $this->getExtension()->getExtensionUrl() . "users/" . $objectID), array("name" => "Snapshots", "link" => $this->getExtension()->getExtensionUrl() . "snapshots/" . $objectID)));
         $tabBar->setActiveTab(1);
         $frameResponseObject->addWidget($tabBar);
         // load workplan from xml file in workplan room and sort elements
         $xmlfile = $workplanContainer->get_inventory_filtered(array(array("+", "class", CLASS_DOCUMENT)));
         $xml = simplexml_load_string($xmlfile[0]->get_content());
         $helpToArray = $xml->children();
         $list = array();
         for ($counter = 0; $counter < count($helpToArray); $counter++) {
             array_push($list, $helpToArray[$counter]);
         }
         usort($list, 'sort_xmllist');
         $content = $workplanExtension->loadTemplate("workplan_listview.template.html");
         if (count($list) == 0) {
             $content->setCurrentBlock("BLOCK_WORKPLAN_LIST_EMPTY");
             $content->setVariable("WORKPLAN_LIST_EMPTY", "Keine Meilensteine oder Vorgänge zu diesem Projektplan vorhanden.");
             $content->parse("BLOCK_WORKPLAN_LIST_EMPTY");
         } else {
             $content->setCurrentBlock("BLOCK_WORKPLAN_LIST");
             $content->setVariable("WORKPLAN_LIST_ELEMENT_NAME", "Name");
             $content->setVariable("WORKPLAN_LIST_ELEMENT_START", "Beginn");
             $content->setVariable("WORKPLAN_LIST_ELEMENT_END", "Ende");
             $content->setVariable("WORKPLAN_LIST_ELEMENT_DURATION", "Arbeitsstunden");
             $content->setVariable("WORKPLAN_LIST_ELEMENT_DEPENDS", "Abhängigkeit");
             $content->setVariable("WORKPLAN_LIST_ELEMENT_USERS", "Mitarbeiter");
             // create and fill array for displaying dependencies
             $dependencies = array();
             for ($counter = 0; $counter < count($list); $counter++) {
                 $dependencies[strval($list[$counter]->oid)] = $counter + 1;
             }
             // create list view of current elements
             for ($counter = 0; $counter < count($list); $counter++) {
                 $element = \steam_factory::get_object($GLOBALS["STEAM"]->get_id(), $list[$counter]->oid);
                 $elinventory = $element->get_inventory();
                 $content->setCurrentBlock("BLOCK_WORKPLAN_LIST_ELEMENT");
                 $content->setVariable("WORKPLAN_LIST_ELEMENT_NUMBER", $counter + 1);
                 $content->setVariable("WORKPLAN_LIST_ELEMENT_NAME_VALUE", $list[$counter]->name . " (" . count($elinventory) . ")");
                 $content->setVariable("WORKPLAN_LIST_ELEMENT_START_VALUE", date("d.m.Y", (int) $list[$counter]->start));
                 $content->setVariable("WORKPLAN_LIST_ELEMENT_END_VALUE", date("d.m.Y", (int) $list[$counter]->end));
                 if ($list[$counter]->duration == -1) {
                     $content->setVariable("WORKPLAN_LIST_ELEMENT_DURATION_VALUE", "-");
                 } else {
                     $content->setVariable("WORKPLAN_LIST_ELEMENT_DURATION_VALUE", $list[$counter]->duration);
                 }
                 $content->setVariable("WORKPLAN_LIST_ELEMENT_DURATION_UPDATE", $list[$counter]->duration);
                 if ($list[$counter]->depends == -1) {
                     $content->setVariable("WORKPLAN_LIST_ELEMENT_DEPENDS_VALUE", "-");
                 } else {
                     if (array_key_exists(strval($list[$counter]->depends), $dependencies)) {
                         $content->setVariable("WORKPLAN_LIST_ELEMENT_DEPENDS_VALUE", $dependencies[strval($list[$counter]->depends)]);
                     }
                 }
                 $content->setVariable("WORKPLAN_LIST_ELEMENT_DEPENDS_UPDATE", $list[$counter]->depends);
                 if ($list[$counter]->getName() == 'task') {
                     $content->setVariable("WORKPLAN_LIST_ELEMENT_MOT", "0");
                 } else {
                     $content->setVariable("WORKPLAN_LIST_ELEMENT_MOT", "1");
                 }
                 $content->setVariable("WORKPLAN_LIST_ELEMENT_OID", $list[$counter]->oid);
                 $content->setVariable("WORKPLAN_LIST_ELEMENT_NAME_DEL", $list[$counter]->name);
                 $content->setVariable("WORKPLAN_ID", $objectID);
                 // convert saved users to output format
                 $userList = $list[$counter]->users;
                 $userList = "[" . str_replace(";", ",", $userList) . "]";
                 $content->setVariable("WORKPLAN_LIST_ELEMENT_USERS_JSON", $userList);
                 $userList = json_decode($userList);
                 $outputUsers = "";
                 for ($count = 0; $count < count($userList); $count++) {
                     $currentUser = \steam_factory::get_object($GLOBALS["STEAM"]->get_id(), $userList[$count]);
                     $outputUsers = $outputUsers . $currentUser->get_full_name() . "<br>";
                 }
                 if (count($userList) == 0) {
                     $outputUsers = "-";
                 }
                 $content->setVariable("WORKPLAN_LIST_ELEMENT_USERS_VALUE", $outputUsers);
                 $content->setVariable("WORKPLAN_LIST_UPDATE_OID", $list[$counter]->oid);
                 $content->setVariable("WORKPLAN_LIST_ELEMENT_CHANGE_VALUE", "Bearbeiten");
                 $content->setVariable("WORKPLAN_LIST_ELEMENT_DELETE_VALUE", "Löschen");
                 if ($user->get_id() == $workplanContainer->get_creator()->get_id() || in_array("WORKPLAN_" . $user->get_id() . "_LEADER", $workplanContainer->get_attribute_names())) {
                     $content->setVariable("WORKPLAN_RIGHTS", "");
                 } else {
                     $content->setVariable("WORKPLAN_RIGHTS", "none");
                 }
                 $content->parse("BLOCK_WORKPLAN_LIST_ELEMENT");
             }
             $content->parse("BLOCK_WORKPLAN_LIST");
         }
         // create update dialogs
         $content->setCurrentBlock("BLOCK_WORKPLAN_UPDATE_DIALOG");
         $content->setVariable("WORKPLAN_UPDATE_ID", $objectID);
         $content->setVariable("UPDATE_LABEL", "Meilenstein bearbeiten");
         $content->setVariable("UPDATE_TASK_LABEL", "Vorgang bearbeiten");
         $content->setVariable("UPDATE_NAME_LABEL", "Name:*");
         $content->setVariable("UPDATE_DATE_LABEL", "Datum:*");
         $content->setVariable("UPDATE_START_LABEL", "Beginn:*");
         $content->setVariable("UPDATE_END_LABEL", "Ende:*");
         $content->setVariable("UPDATE_DURATION_LABEL", "Dauer:");
         $content->setVariable("UPDATE_DEPENDS_LABEL", "Abhängigkeit:");
         // create all dependency options in update dialogs
         $content->setCurrentBlock("UPDATE_BLOCK_WORKPLAN_UPDATE_DEPENDS");
         $content->setVariable("DEPENDS_OID", "-1");
         $content->setVariable("DEPENDS_NAME", "Keine Abhängigkeit");
         $content->parse("BLOCK_WORKPLAN_UPDATE_DEPENDS");
         $content->setCurrentBlock("UPDATE_BLOCK_WORKPLAN_UPDATE_TASK_DEPENDS");
         $content->setVariable("DEPENDS_OID", "-1");
         $content->setVariable("DEPENDS_NAME", "Keine Abhängigkeit");
         $content->parse("BLOCK_WORKPLAN_UPDATE_TASK_DEPENDS");
         for ($count = 0; $count < count($list); $count++) {
             if ($list[$count]->getName() == 'task') {
                 $content->setCurrentBlock("BLOCK_WORKPLAN_UPDATE_DEPENDS");
                 $content->setVariable("DEPENDS_OID", $list[$count]->oid);
                 $content->setVariable("DEPENDS_NAME", $list[$count]->name);
                 $content->parse("BLOCK_WORKPLAN_UPDATE_DEPENDS");
                 $content->setCurrentBlock("BLOCK_WORKPLAN_UPDATE_TASK_DEPENDS");
                 $content->setVariable("DEPENDS_OID", $list[$count]->oid);
                 $content->setVariable("DEPENDS_NAME", $list[$count]->name);
                 $content->parse("BLOCK_WORKPLAN_UPDATE_TASK_DEPENDS");
             }
         }
         // create user options in update dialogs
         $content->setVariable("UPDATE_USERS_LABEL", "Mitarbeiter:");
         $groupID = 0;
         if (in_array("WORKPLAN_GROUP", $workplanContainer->get_attribute_names())) {
             $groupID = $workplanContainer->get_attribute("WORKPLAN_GROUP");
         }
         if ($groupID == 0) {
             $content->setCurrentBlock("BLOCK_WORKPLAN_UPDATE_USER");
             $content->setVariable("USER_ID", $user->get_id());
             $content->setVariable("USER_NAME", $user->get_full_name());
             $content->parse("BLOCK_WORKPLAN_UPDATE_USER");
             $content->setCurrentBlock("BLOCK_WORKPLAN_UPDATE_TASK_USER");
             $content->setVariable("USER_ID", $user->get_id());
             $content->setVariable("USER_NAME", $user->get_full_name());
             $content->parse("BLOCK_WORKPLAN_UPDATE_TASK_USER");
         } else {
             $groupObject = \steam_factory::get_object($GLOBALS["STEAM"]->get_id(), $groupID);
             $members = $groupObject->get_members();
             for ($count = 0; $count < count($members); $count++) {
                 $currentMember = $members[$count];
                 $content->setCurrentBlock("BLOCK_WORKPLAN_UPDATE_USER");
                 $content->setVariable("USER_ID", $currentMember->get_id());
                 $content->setVariable("USER_NAME", $currentMember->get_full_name());
                 $content->parse("BLOCK_WORKPLAN_UPDATE_USER");
                 $content->setCurrentBlock("BLOCK_WORKPLAN_UPDATE_TASK_USER");
                 $content->setVariable("USER_ID", $currentMember->get_id());
                 $content->setVariable("USER_NAME", $currentMember->get_full_name());
                 $content->parse("BLOCK_WORKPLAN_UPDATE_TASK_USER");
             }
         }
         $content->setVariable("UPDATE_SUBMIT_LABEL", "Abschicken");
         $content->setVariable("UPDATE_LABEL_BACK", "Abbrechen");
         $content->parse("BLOCK_WORKPLAN_UPDATE_DIALOG");
         // create task and milestone create forms
         $content->setCurrentBlock("BLOCK_WORKPLAN_LIST_FORMULAR");
         $content->setVariable("LABEL_NEW_MILESTONE", "Meilenstein hinzufügen");
         $content->setVariable("LABEL_NEW_TASK", "Vorgang hinzufügen");
         $content->setVariable("NAME_LABEL", "Name:*");
         $content->setVariable("START_LABEL", "Beginn:*");
         $content->setVariable("END_LABEL", "Ende:*");
         $content->setVariable("DATE_LABEL", "Datum:*");
         $content->setVariable("DURATION_LABEL", "Dauer:");
         $content->setVariable("DEPENDS_LABEL", "Abhängigkeit:");
         $content->setVariable("USERS_LABEL", "Mitarbeiter:");
         // create all dependency options in create forms
         $content->setCurrentBlock("BLOCK_LIST_MILESTONE_DEPENDS");
         $content->setVariable("DEPENDS_OID", "-1");
         $content->setVariable("DEPENDS_NAME", "Keine Abhängigkeit");
         $content->parse("BLOCK_LIST_MILESTONE_DEPENDS");
         $content->setCurrentBlock("BLOCK_LIST_TASK_DEPENDS");
         $content->setVariable("DEPENDS_OID", "-1");
         $content->setVariable("DEPENDS_NAME", "Keine Abhängigkeit");
         $content->parse("BLOCK_LIST_TASK_DEPENDS");
         for ($count = 0; $count < count($list); $count++) {
             if ($list[$count]->getName() == 'task') {
                 $content->setCurrentBlock("BLOCK_LIST_MILESTONE_DEPENDS");
                 $content->setVariable("DEPENDS_OID", $list[$count]->oid);
                 $content->setVariable("DEPENDS_NAME", $list[$count]->name);
                 $content->parse("BLOCK_LIST_MILESTONE_DEPENDS");
                 $content->setCurrentBlock("BLOCK_LIST_TASK_DEPENDS");
                 $content->setVariable("DEPENDS_OID", $list[$count]->oid);
                 $content->setVariable("DEPENDS_NAME", $list[$count]->name);
                 $content->parse("BLOCK_LIST_TASK_DEPENDS");
             }
         }
         // create user options in create forms
         if ($groupID == 0) {
             $content->setCurrentBlock("BLOCK_USER_OPTION_MILESTONE");
             $content->setVariable("USER_ID", $user->get_id());
             $content->setVariable("USER_NAME", $user->get_full_name());
             $content->parse("BLOCK_USER_OPTION_MILESTONE");
             $content->setCurrentBlock("BLOCK_USER_OPTION_TASK");
             $content->setVariable("USER_ID", $user->get_id());
             $content->setVariable("USER_NAME", $user->get_full_name());
             if (in_array("WORKPLAN_" . $user->get_id() . "_RESSOURCE", $workplanContainer->get_attribute_names())) {
                 $content->setVariable("USER_RESSOURCE", $workplanContainer->get_attribute("WORKPLAN_" . $user->get_id() . "_RESSOURCE"));
             } else {
                 $content->setVariable("USER_RESSOURCE", 0);
             }
             $content->parse("BLOCK_USER_OPTION_TASK");
         } else {
             $groupObject = \steam_factory::get_object($GLOBALS["STEAM"]->get_id(), $groupID);
             $members = $groupObject->get_members();
             for ($count = 0; $count < count($members); $count++) {
                 $currentMember = $members[$count];
                 $content->setCurrentBlock("BLOCK_USER_OPTION_MILESTONE");
                 $content->setVariable("USER_ID", $currentMember->get_id());
                 $content->setVariable("USER_NAME", $currentMember->get_full_name());
                 $content->parse("BLOCK_USER_OPTION_MILESTONE");
                 $content->setCurrentBlock("BLOCK_USER_OPTION_TASK");
                 $content->setVariable("USER_ID", $currentMember->get_id());
                 $content->setVariable("USER_NAME", $currentMember->get_full_name());
                 if (in_array("WORKPLAN_" . $currentMember->get_id() . "_RESSOURCE", $workplanContainer->get_attribute_names())) {
                     $content->setVariable("USER_RESSOURCE", $workplanContainer->get_attribute("WORKPLAN_" . $currentMember->get_id() . "_RESSOURCE"));
                 } else {
                     $content->setVariable("USER_RESSOURCE", 0);
                 }
                 $content->parse("BLOCK_USER_OPTION_TASK");
             }
         }
         $content->setVariable("LABEL_BACK", "Ausblenden");
         $content->setVariable("LABEL_ADD", "Hinzufügen");
         $content->setVariable("WORKPLAN_ID", $objectID);
         $content->parse("BLOCK_WORKPLAN_LIST_FORMULAR");
         $rawWidget = new \Widgets\RawHtml();
         $rawWidget->setHtml($content->get());
         $frameResponseObject->setTitle("Projektplan: " . $workplanContainer->get_name());
         $frameResponseObject->setHeadline(array(array("link" => $this->getExtension()->getExtensionUrl(), "name" => "Projektplanverwaltung"), array("", "name" => $workplanContainer->get_name())));
         $frameResponseObject->addWidget($rawWidget);
         return $frameResponseObject;
     }
 }
Ejemplo n.º 13
0
    public function frameResponse(\FrameResponseObject $frameResponseObject)
    {
        $breadcrumb = new \Widgets\Breadcrumb();
        $breadcrumb->setData(array(array("name" => \Portfolio::getInstance()->getText("Portfolio/"), "link" => $this->getExtension()->getExtensionUrl() . "Myportfolio/"), array("name" => gettext("My Friends and Groups/"), "link" => $this->getExtension()->getExtensionUrl() . "Groups/"), array("name" => gettext("Create Group"))));
        $tabBar = new \Widgets\TabBar();
        $tabBar->setTabs(array(array("name" => \Portfolio::getInstance()->getText("Dashboard"), "link" => $this->getextension()->getExtensionUrl() . "/"), array("name" => gettext("Portfolio"), "link" => $this->getExtension()->getExtensionUrl() . "myportfolio/"), array("name" => gettext("Shared Portfolios"), "link" => $this->getExtension()->getExtensionUrl() . "SharedProfiles/")));
        $menu = new \Widgets\DropdownBox();
        $menu->setLabel(\Portfolio::getInstance()->getText("Group Category"));
        $menu->addOption(\Portfolio::getInstance()->getText("Educational"));
        $menu->addOption(\Portfolio::getInstance()->getTex("Office"));
        $menu->addOption(\Portfolio::getInstance()->getText(" Hobbies"));
        $input = new \Widgets\TextInput();
        $grid = new \Widgets\Grid();
        $grid->setData(array("headline" => array(array("name" => \Portfolio::getInstance()->getText("Group Dscription"), "colspan" => "2")), "rows" => array(array(array("content" => \Portfolio::getInstance()->getText("Group Name:"), "type" => "label"), array("content" => $input, "type" => "value")), array(array("content" => \Portfolio::getInstance()->getText("Group Details:"), "type" => "label"), array("content" => $input, "type" => "value")))));
        $actionBar2 = new \Widgets\ActionBar();
        $actionBar2->setActions(array(array("name" => \Portfolio::getInstance()->getText("Save"), "link" => $this->getExtension()->getExtensionUrl() . ""), array("name" => gettext("Cancel"), "link" => $this->getExtension()->getExtensionUrl() . "")));
        $html = <<<end




<style type="text/css">


</style>

<div class="headline">
\t<h1>Create New Group</h1>
</div>



<ul class="tabBar">
        
    <li class="tabIn"><a href="./..">Dashboard</a></li>
        
    <li class="tabIn"><a href="../profile/">Profile</a></li>
        
    <li class="tabIn"><a href="../myPortfolio/">Portfolio</a></li>
        
    <li class="tabOut"><a href="../groups/">Groups</a></li>
    
    <li style="clear: left;">
</li></ul>
<br>

<table class="grid" cellspacing="0" cellpadding="5" width="100%">

\t <tr>
\t\t\t<th class="group" colspan="2">Group Details</th>
\t </tr>
\t <tr>
<td class="label">Group name:</td>
\t<td class="value">
\t\t<input type="text" "size="30" >
</td>
<tr>
<td class="label">Group Type:</td>
<td class="value">
<select name="values[OBJ_DESC]">
<option value=""></option>
<option selected="selected" value="Educational">Educational</option>
<option value="Professional">Profesional</option>
<option value="General">General</option>
</select>
</td>
</tr>
<td class="label">Group Description:</td>
<td class="value">
<textarea wrap="virtual" rows="10" style="width: 70%;" name="values[USER_PROFILE_DSC]"></textarea>
<br>
<a class="textformat_button" title="boldface" href="javascript:insert('[b]', '[/b]', 'formular', 'values[USER_PROFILE_DSC]')">
<b>B</b>
</a>
<a class="textformat_button" title="italic" href="javascript:insert('[i]', '[/i]', 'formular', 'values[USER_PROFILE_DSC]')">
<i>I</i>
</a>
<a class="textformat_button" title="underline" href="javascript:insert('[u]', '[/u]', 'formular', 'values[USER_PROFILE_DSC]')">
<u>U</u>
</a>
<a class="textformat_button" title="strikethrough" style="text-decoration: line-through;" href="javascript:insert('[s]', '[/s]', 'formular', 'values[USER_PROFILE_DSC]')">S</a>
<a class="textformat_button" title="image" href="javascript:insert('[img]http://', '[/img]', 'formular', 'values[USER_PROFILE_DSC]')">IMG</a>
<a class="textformat_button" title="web link" href="javascript:insert('[url=http://]', '[/url]', 'formular', 'values[USER_PROFILE_DSC]')">URL</a>
<a class="textformat_button" title="email link" href="javascript:insert('[mail=@]', '[/mail]', 'formular', 'values[USER_PROFILE_DSC]')">MAIL</a>
</td>
</tr>
\t </table>
\t <div class="buttons">
<a class="button">Save</a>
</div>
\t

end;
        $frameResponseObject->setTitle("Creategroup");
        $rawHtml = new \Widgets\RawHtml();
        $rawHtml->setHtml($html);
        $frameResponseObject->addWidget($breadcrumb);
        //$frameResponseObject->addWidget($tabBar);
        $frameResponseObject->addWidget($menu);
        $frameResponseObject->addWidget($grid);
        $frameResponseObject->addWidget($actionBar2);
        //$frameResponseObject->addWidget($rawHtml);
        return $frameResponseObject;
    }
Ejemplo n.º 14
0
    public function frameResponse(\FrameResponseObject $frameResponseObject)
    {
        $breadcrumb = new \Widgets\Breadcrumb();
        $breadcrumb->setData(array(array("name" => \Portfolio::getInstance()->getText("My Competences"))));
        $tabBar = new \Widgets\TabBar();
        $tabBar->setTabs(array(array("name" => \Portfolio::getInstance()->getText("Dashboard"), "link" => $this->getextension()->getExtensionUrl() . "/"), array("name" => \Portfolio::getInstance()->getText("Competences"), "link" => $this->getExtension()->getExtensionUrl() . "ViewChart/"), array("name" => \Portfolio::getInstance()->getText("Artefacts"), "link" => $this->getExtension()->getExtensionUrl() . "ManageArtefacts/")));
        $tabBar->setActiveTab(1);
        $jobs = \CompetenceRaster::getJobs();
        $facets = \CompetenceRaster::getFacets();
        $json_chart = array();
        $html = <<<END
\t    <script type="text/javascript" src="https://www.google.com/jsapi"></script>
\t\t<script type="text/javascript">
\t\tgoogle.load('visualization', '1', {packages: ['corechart']});
\t\t</script>
END;
        foreach ($jobs as $job) {
            $name = $job->name;
            $html .= <<<END
\t\t\t<script type="text/javascript">
\t\t\tfunction drawVisualization{$name}() {
END;
            $data = "[['Activity', '1', '2', '3', '4', '5', '6', '7'],";
            foreach ($facets as $facetObject) {
                $facet = $facetObject->short;
                $data .= "[\"{$facet}\", ";
                for ($i = 0; $i < 7; $i++) {
                    $data .= count(\CompetenceRaster::getCompetences($job->name, $i, $facet)) . ",";
                }
                $data .= "],";
            }
            $data .= "]";
            //var_dump($data);
            $html .= <<<END
\t\t\t\t// Some raw data (not necessarily accurate)
\t\t\t\tvar data{$name} = google.visualization.arrayToDataTable({$data});
\t
\t\t\t\t// Create and draw the visualization.
\t\t\t\tvar comboChart{$name} = new google.visualization.ComboChart(document.getElementById('chart_div{$name}'));
\t\t\t\tcomboChart{$name}.draw(data{$name}, {
\t\t\t\t\ttitle : 'Kompetenzen mit Ausbildungsziel {$job->description}',
\t\t\t\t\tvAxis: {title: "Anzahl"},
\t\t\t\t\thAxis: {title: "Facetten"},
\t\t\t\t\t 
\t\t\t\t\tseriesType: "bars",
\t\t\t\t\t//series: {4: {type: "line"}}
\t\t\t\t});
\t\t\t\t 
\t\t\t\tgoogle.visualization.events.addListener(comboChart{$name}, 'select' , function(){
\t\t\t\t\tvar row = comboChart{$name}.getSelection()[0].row;
\t\t\t\t\tvar column = comboChart{$name}.getSelection()[0].column
\t\t\t\t\tvar url = "/portfolio/ViewCompetence/?";
\t\t\t\t\tvar activity = 1 + row; //TODO
\t\t\t\t\tswitch (row) { //TODO
\t\t\t\t\t\tcase 0:
\t\t\t\t\t\t\tfacet = "W";
\t\t\t\t\t\t\tbreak;
\t
\t\t\t\t\t\tcase 1:
\t\t\t\t\t\t\tfacet = "F";
\t\t\t\t\t\t\tbreak;
\t\t\t\t\t\t\t 
\t\t\t\t\t\tcase 2:
\t\t\t\t\t\t\tfacet = "K";
\t\t\t\t\t\t\tbreak;
\t\t\t\t\t\t\t 
\t\t\t\t\t\tcase 3:
\t\t\t\t\t\t\tfacet = "M";
\t\t\t\t\t\t\tbreak;
\t
\t
\t\t\t\t\t}
\t\t\t\t    url = url + "job={$name}" + "&activity=" + activity + "&facet=" + facet;
\t\t\t\t    window.location = url;
\t\t\t\t});
\t\t\t}
\t\t\tgoogle.setOnLoadCallback(drawVisualization{$name});
\t\t\t</script>
\t\t\t<div id="chart_div{$name}" style="width:940px; height: 400px;"></div>\t\t
END;
            //break;
        }
        $frameResponseObject->setTitle("Discuss View");
        $rawHtml = new \Widgets\RawHtml();
        $frameResponseObject->addWidget($breadcrumb);
        $frameResponseObject->addWidget($tabBar);
        $rawHtml->setHtml($html);
        $frameResponseObject->addWidget($rawHtml);
        return $frameResponseObject;
    }
Ejemplo n.º 15
0
    public function frameResponse(\FrameResponseObject $frameResponseObject)
    {
        $breadcrumb = new \Widgets\Breadcrumb();
        $breadcrumb->setData(array(array("name" => \Portfolio::getInstance()->getText("Shared Portfolios"))));
        $tabBar = new \Widgets\TabBar();
        $tabBar->setTabs(array(array("name" => \Portfolio::getInstance()->getText("Dashboard"), "link" => $this->getextension()->getExtensionUrl() . "/"), array("name" => \Portfolio::getInstance()->getText("Portfolio"), "link" => $this->getExtension()->getExtensionUrl() . "myportfolio/"), array("name" => gettext("Shared Portfolios"), "link" => $this->getExtension()->getExtensionUrl() . "SharedProfiles/")));
        $tabBar->setActiveTab(2);
        $clearer = new \Widgets\Clearer();
        $boxSearch = new \Widgets\PortfolioViewBox();
        $boxSearch->setTitle(\Portfolio::getInstance()->getText("Portfolios Shared With me "));
        $boxSearch->setContent(" Shows the details about the portfolio like creator,atifacts,acess limitsetc.");
        $boxSearch->setButtons(array(array("name" => "Get Connected", "link" => "#")));
        $boxSimilar = new \Widgets\PortfolioViewBox();
        $boxSimilar->setTitle(\Portfolio::getInstance()->getText("Portfolios I Am Sharing with others"));
        $boxSimilar->setContent(" Shows the details about the portfolio like friends who can see, comments,acess limitsetc.");
        $boxSimilar->setButtons(array(array("name" => "Get Connected", "link" => "#")));
        $html = <<<end



<style type="text/css">

}

select {
    border: 1px solid #D1D1D1;
}

select {
    margin-right: 0.25em;
    padding: 0.16em;
    }
    
   .box_view {
\t\tborder: 1px solid #ccc;
\t\tmargin: 5px 10px 15px 10px;
\t\tbackground-color: #ccffcc;
\t\twidth: 85%;
\t\tpadding:10px;
\t\tfloat: left;
}

a, a:link, a:active, a:visited {
    color: #3092CE;
    text-decoration: none;
    }
</style>



<div class="headline">
\t<h1>My Search Groups</h1>
</div>




<ul class="tabBar">
        
    <li class="tabIn"><a href="./..">Dashboard</a></li>
        
    <li class="tabIn"><a href="../profile/">Profile</a></li>
        
    <li class="tabIn"><a href="../myportfolio">Portfolio</a></li>
        
    <li class="tabOut"><a href="../groups/">Groups</a></li>
    
    <li style="clear: left;">
</li></ul>
<br>
<h2>Find Groups</h2>

<div class="text">
<input>
</div>
<div>
<input type="submit" value="Search"  name="search"  class="submit">
</div>


<br>


<td><div class="box_view">

     <h2><a href="">Group searched</a></h3>
     <p>Shows the details about the group.number of members connected,etc.</p>
     
     <div class="buttons">

<a class="button" ">get connected</a>
</div>
     
<td>
</div>
<td><div class="box_view">

     <h2><a href="">similar group 1 2</a></h3>
     <p>Shows the details about the group.number of members connected,etc.</p>
      
     <div class="buttons">

<a class="button" ">get connected</a>
</div>
     
<td>


</div>

end;
        $frameResponseObject->setTitle("Searchgroups");
        $rawHtml = new \Widgets\RawHtml();
        $rawHtml->setHtml($html);
        $frameResponseObject->addWidget($breadcrumb);
        $frameResponseObject->addWidget($tabBar);
        $frameResponseObject->addWidget($clearer);
        $frameResponseObject->addWidget($boxSearch);
        $frameResponseObject->addWidget($boxSimilar);
        //$frameResponseObject->addWidget($rawHtml);
        return $frameResponseObject;
    }
Ejemplo n.º 16
0
 public function frameResponse(\FrameResponseObject $frameResponseObject)
 {
     $artefact = \Artefacts::getById($this->artefactId);
     $actionBar = new \Widgets\ActionBar();
     $actionBar->setActions(array(array("link" => "javascript:history.back()", "name" => "zurück"), array("name" => \Portfolio::getInstance()->getText("Beleg hinzufügen"), "ajax" => array("onclick" => array("command" => "UploadArtefactMessage", "params" => array("id" => $this->artefactId), "requestType" => "popup")))));
     $breadcrumb = new \Widgets\Breadcrumb();
     //	$breadcrumb->setData(array(array("name"=>gettext("Manage Artefacts"))));
     //	$breadcrumb->setData(array($artefact->getRoom()));
     $breadcrumb->setData(array(array("name" => $artefact->getName())));
     $tabBar = new \Widgets\TabBar();
     $tabBar->setTabs(array(array("name" => \Portfolio::getInstance()->getText("Dashboard"), "link" => $this->getextension()->getExtensionUrl() . "/"), array("name" => \Portfolio::getInstance()->getText("Competences"), "link" => $this->getExtension()->getExtensionUrl() . "ViewChart/"), array("name" => \Portfolio::getInstance()->getText("Artefacts"), "link" => $this->getExtension()->getExtensionUrl() . "ManageArtefacts/"), array("name" => $artefact->getName(), "link" => "#")));
     $tabBar->setActiveTab(3);
     $clearer = new \Widgets\Clearer();
     /*
     $loader = new \Widgets\Loader();
     $loader->setWrapperId("artefactsWrapper");
     $loader->setMessage("loading artefacts ...");
     $loader->setCommand("loadArtefacts");
     $loader->setParams(array());
     $loader->setElementId("artefactsWrapper");
     $loader->setType("updater");
     */
     $boxTip = new \Widgets\Box();
     $boxTip->setTitle(\Portfolio::getInstance()->getText("Content of your Artefact"));
     $boxTip->setContent($artefact->getName() . "<br>" . +$artefact->getDescription());
     //		$content = "<pre>";
     $content = "";
     //		$attributes = $artefact->get_attributes();
     //		foreach ($attributes as $attribute) {
     //			$content .= $attribute . "<br>";
     //		}
     $content .= "Mime Type : " . $artefact->getMimeType() . "<br>";
     //		$content .= "</pre>";
     $boxTip->setContent($content);
     $boxInfo = new \Widgets\Box();
     $boxInfo->setTitle(\Portfolio::getInstance()->getText("Last Changes"));
     $boxInfo->setContent("TODO: Keine Änderungen vorhanden");
     $boxDownload = new \Widgets\Box();
     $boxDownload->setTitle(\Portfolio::getInstance()->getText("Download Artefact"));
     $boxDownload->setContent("<a href>TODO: Download</a>");
     $boxDiscuss = new \Widgets\PortfolioViewBox();
     $boxDiscuss->setTitle(\Portfolio::getInstance()->getText("Discuss View"));
     $boxDiscuss->setTitleLink($this->getextension()->getExtensionUrl() . "ViewChart/");
     $boxDiscuss->setContent("Discuss view shows what other have commeted about your artefacts.if needed this content  can be edited");
     $boxDiscuss->setButtons(array(array("name" => "Edit", "link" => "#"), array("name" => "Manage Acess", "link" => $this->getextension()->getExtensionUrl() . "ManageArtefacts/")));
     $boxCompetences = new \Widgets\PortfolioViewBox();
     $boxCompetences->setTitle(\Portfolio::getInstance()->getText("Competences"));
     $htmlCompetences = "";
     $competences = $artefact->getCompetences();
     foreach ($competences as $competence) {
         $htmlCompetences .= "<br>" . $competence->short . ": " . $competence->name;
     }
     $boxCompetences->setContent($htmlCompetences);
     $url = \ExtensionMaster::getInstance()->getUrlForObjectId($artefact->get_id(), "competences");
     $boxCompetences->setButtons(array(array("name" => "Set Competences", "link" => $url)));
     $frameResponseObject->setTitle("Manage Artefacts");
     $frameResponseObject->addWidget($actionBar);
     $frameResponseObject->addWidget($breadcrumb);
     $frameResponseObject->addWidget($tabBar);
     $frameResponseObject->addWidget($clearer);
     $frameResponseObject->addWidget($boxTip);
     $frameResponseObject->addWidget($clearer);
     $frameResponseObject->addWidget($boxInfo);
     $frameResponseObject->addWidget($clearer);
     $frameResponseObject->addWidget($boxDownload);
     $frameResponseObject->addWidget($clearer);
     $frameResponseObject->addWidget($boxCompetences);
     $frameResponseObject->addWidget($clearer);
     //$frameResponseObject->addWidget($rawHtml);
     return $frameResponseObject;
 }
Ejemplo n.º 17
0
 public function frameResponse(\FrameResponseObject $frameResponseObject)
 {
     $tabBar = new \Widgets\TabBar();
     $tabBar->setTabs(array(array("name" => \Portfolio::getInstance()->getText("Dashboard"), "link" => $this->getextension()->getExtensionUrl() . "/"), array("name" => \Portfolio::getInstance()->getText("Competences"), "link" => $this->getExtension()->getExtensionUrl() . "ViewChart/"), array("name" => \Portfolio::getInstance()->getText("Artefacts"), "link" => $this->getExtension()->getExtensionUrl() . "ManageArtefacts/")));
     $tabBar->setActiveTab(1);
     $breadcrumb = new \Widgets\Breadcrumb();
     $breadcrumb->setData(array(array("name" => \Portfolio::getInstance()->getText("Chart"), "link" => $this->getExtension()->getExtensionUrl() . "ViewChart/"), array("name" => \Portfolio::getInstance()->getText("View Competance"))));
     \CompetenceRaster::initReadCompetences();
     $comptetences = \CompetenceRaster::$competences;
     $collected = \CompetenceRaster::getCollectedCompetences();
     $jobs = \CompetenceRaster::getJobs();
     $activities = \CompetenceRaster::getActivityFields();
     $facets = \CompetenceRaster::getFacets();
     $html = "<br>";
     if ($this->showCollected) {
         $html .= "<h1>Gesammelte Kompetenzen</h1>";
     } else {
         $html .= "<h1>Offene Kompetenzen</h1>";
     }
     foreach ($jobs as $job) {
         if (!($this->job == "" || $this->job == $job->name)) {
             continue;
         }
         $html .= "<h2>" . $job->description . "</h2>";
         $html .= '<table  class="grid">';
         foreach ($activities as $activity) {
             if (!($this->activity == "" || $this->activity == $activity->short)) {
                 continue;
             }
             $html .= "<tr><td colspan=7><h4>" . $activity->name . "</h4></td><tr>";
             foreach ($facets as $facet) {
                 if (!($this->facet == "" || $this->facet == $facet->short)) {
                     continue;
                 }
                 $comptetences = \CompetenceRaster::getCompetences($job->name, $activity->short, $facet->short);
                 foreach ($comptetences as $competence) {
                     $url = "#";
                     $text = "";
                     if (!$this->showCollected && isset($collected[$job->name . $activity->short . $facet->short . $competence->getIndex()])) {
                         continue;
                     } elseif ($this->showCollected && !isset($collected[$job->name . $activity->short . $facet->short . $competence->getIndex()])) {
                         //$artefact = Artefacts::getById($collected[$job->name . $activity->short . $facet->short . $competence->getIndex() . "ID"]);
                         continue;
                     }
                     if ($this->showCollected && isset($collected[$job->name . $activity->short . $facet->short . $competence->getIndex()])) {
                         $artefactId = $collected[$job->name . $activity->short . $facet->short . $competence->getIndex() . "ID"];
                         $text = "Artefakt";
                         $url = \ExtensionMaster::getInstance()->getUrlForObjectId($artefactId, "view");
                     }
                     $checked = isset($collected[$job->name . $activity->short . $facet->short . $competence->getIndex()]) ? "checked=true" : "";
                     $html .= "<tr><td>" . $competence->job . "</td>";
                     $html .= "<td>" . $competence->activity . "</td>";
                     $html .= "<td>" . $competence->facet . "</td>";
                     $html .= "<td >" . $competence->index . "</td>";
                     $html .= "<td>" . $competence->name . "</td>";
                     $html .= "<td>" . "<input type=checkbox disabled=true " . $checked . "</td>";
                     $html .= "<td><a href=\"" . $url . "\">" . $text . "</a></td></tr>";
                 }
             }
         }
         $html .= "</table>";
     }
     $frameResponseObject->setTitle("Competence View");
     $rawHtml = new \Widgets\RawHtml();
     $rawHtml->setHtml($html);
     $frameResponseObject->addWidget($breadcrumb);
     $frameResponseObject->addWidget($tabBar);
     $frameResponseObject->addWidget($rawHtml);
     return $frameResponseObject;
 }
Ejemplo n.º 18
0
 public function frameResponse(\FrameResponseObject $frameResponseObject)
 {
     $workplanExtension = \Workplan::getInstance();
     $workplanExtension->addJS();
     $user = $GLOBALS["STEAM"]->get_current_steam_user();
     $portal = \lms_portal::get_instance();
     $objectID = $this->params[0];
     $workplanContainer = \steam_factory::get_object($GLOBALS["STEAM"]->get_id(), $objectID);
     // move workplan to group workroom if form was submitted
     if ($_SERVER["REQUEST_METHOD"] == "POST" && isset($_POST["move"])) {
         $values = $_POST["values"];
         $groupID = $values["groupid"];
         $newgroup = \steam_factory::get_object($GLOBALS["STEAM"]->get_id(), $groupID);
         $newroom = $newgroup->get_workroom();
         $workplanContainer->set_attribute("WORKPLAN_GROUP", $groupID);
         $workplanContainer->move($newroom);
         $portal->set_confirmation("Projektplan " . $workplanContainer->get_name() . " erfolgreich in Gruppe " . $newgroup->get_name() . " verschoben.");
     }
     if (is_object($workplanContainer) && $workplanContainer instanceof \steam_room) {
         $content = $workplanExtension->loadTemplate("workplan_users.template.html");
         $content->setCurrentBlock("BLOCK_CONFIRMATION");
         $content->setVariable("CONFIRMATION_TEXT", "NONE");
         $content->parse("BLOCK_CONFIRMATION");
         $confirmationBar = new \Widgets\RawHtml();
         $confirmationBar->setHtml($content->get());
         $frameResponseObject->addWidget($confirmationBar);
         // if current user has required rights display actionbar
         if ($workplanContainer->get_creator()->get_id() == $user->get_id()) {
             $actionBar = new \Widgets\ActionBar();
             $actionBar->setActions(array(array("name" => "Mitarbeiter bearbeiten", "link" => "javascript:changeUsers(" . $objectID . ")")));
             $frameResponseObject->addWidget($actionBar);
         }
         $tabBar = new \Widgets\TabBar();
         $tabBar->setTabs(array(array("name" => "Überblick", "link" => $this->getExtension()->getExtensionUrl() . "overview/" . $objectID), array("name" => "Tabelle", "link" => $this->getExtension()->getExtensionUrl() . "listView/" . $objectID), array("name" => "Gantt-Diagramm", "link" => $this->getExtension()->getExtensionUrl() . "ganttView/" . $objectID), array("name" => "Mitarbeiter", "link" => $this->getExtension()->getExtensionUrl() . "users/" . $objectID), array("name" => "Snapshots", "link" => $this->getExtension()->getExtensionUrl() . "snapshots/" . $objectID)));
         $tabBar->setActiveTab(3);
         $frameResponseObject->addWidget($tabBar);
         $content = $workplanExtension->loadTemplate("workplan_users.template.html");
         $content->setCurrentBlock("BLOCK_USERS_LIST");
         $content->setVariable("WORKPLAN_USERS_ELEMENT_NAME", "Name");
         $content->setVariable("WORKPLAN_USERS_ELEMENT_ROLE", "Rolle");
         $content->setVariable("WORKPLAN_USERS_ELEMENT_RESSOURCE", "Ressourcenwert");
         // check if workplan is in group and save the right users in array (sorted according to their role)
         $group = 0;
         if (in_array("WORKPLAN_GROUP", $workplanContainer->get_attribute_names())) {
             $group = $workplanContainer->get_attribute("WORKPLAN_GROUP");
         }
         if ($group == 0) {
             $users = array();
             array_push($users, $workplanContainer->get_creator());
         } else {
             $groupObject = \steam_factory::get_object($GLOBALS["STEAM"]->get_id(), $group);
             $users = array();
             $normalusers = array();
             $groupusers = $groupObject->get_members();
             array_push($users, $workplanContainer->get_creator());
             for ($count = 0; $count < count($groupusers); $count++) {
                 if ($groupusers[$count]->get_id() != $workplanContainer->get_creator()->get_id()) {
                     if (in_array("WORKPLAN_" . $groupusers[$count]->get_id() . "_LEADER", $workplanContainer->get_attribute_names())) {
                         array_push($users, $groupusers[$count]);
                     } else {
                         array_push($normalusers, $groupusers[$count]);
                     }
                 }
             }
             $users = array_merge($users, $normalusers);
         }
         // display found users sorted according to their role
         for ($count = 0; $count < count($users); $count++) {
             $content->setCurrentBlock("BLOCK_USERS_ELEMENT");
             $content->setVariable("WORKPLAN_USERS_ELEMENT_NAME_VALUE", $users[$count]->get_full_name());
             $content->setVariable("WORKPLAN_USERS_ELEMENT_RESSOURCE_VALUE", $workplanContainer->get_attribute("WORKPLAN_" . $users[$count]->get_id() . "_RESSOURCE"));
             if ($workplanContainer->get_creator()->get_id() == $users[$count]->get_id()) {
                 $content->setVariable("WORKPLAN_USERS_ELEMENT_ROLE_VALUE", "Projektersteller");
             } else {
                 if (in_array("WORKPLAN_" . $users[$count]->get_id() . "_LEADER", $workplanContainer->get_attribute_names())) {
                     $content->setVariable("WORKPLAN_USERS_ELEMENT_ROLE_VALUE", "Projektleiter");
                 } else {
                     $content->setVariable("WORKPLAN_USERS_ELEMENT_ROLE_VALUE", "Mitarbeiter");
                 }
             }
             $content->parse("BLOCK_USERS_ELEMENT");
         }
         $content->parse("BLOCK_USERS_LIST");
         // if workplan is private display dialog to move it to a group the current user is member in
         if ($group == 0) {
             $groups = $user->get_groups();
             $koalagroups = array();
             for ($count = 0; $count < count($groups); $count++) {
                 $currentGroup = $groups[$count];
                 if (substr($currentGroup->get_groupname(), 0, 10) == 'PrivGroups' | substr($currentGroup->get_groupname(), 0, 12) == 'PublicGroups') {
                     array_push($koalagroups, $currentGroup);
                 }
             }
             if (count($koalagroups) > 0) {
                 $content->setCurrentBlock("BLOCK_USERS_TOGROUP");
                 $content->setVariable("WORKPLAN_TOGROUP", "Verschieben in Gruppe: ");
                 $content->setVariable("GROUPCOUNT", count($koalagroups));
                 $content->setVariable("LABEL_MOVE", "Verschieben");
                 for ($count = 0; $count < count($koalagroups); $count++) {
                     $currentGroup = $koalagroups[$count];
                     $content->setCurrentBlock("BLOCK_USERS_TOGROUP_ELEMENT");
                     $content->setVariable("GROUPID", $currentGroup->get_id());
                     $content->setVariable("GROUPNAME", $currentGroup->get_name());
                     $content->parse("BLOCK_USERS_TOGROUP_ELEMENT");
                 }
                 $content->parse("BLOCK_USERS_TOGROUP");
             }
         }
         $rawWidget = new \Widgets\RawHtml();
         $rawWidget->setHtml($content->get());
         $frameResponseObject->setTitle("Projektplan: " . $workplanContainer->get_name());
         $frameResponseObject->setHeadline(array(array("link" => $this->getExtension()->getExtensionUrl(), "name" => "Projektplanverwaltung"), array("", "name" => $workplanContainer->get_name())));
         $frameResponseObject->addWidget($rawWidget);
         return $frameResponseObject;
     }
 }
Ejemplo n.º 19
0
 public function frameResponse(\FrameResponseObject $frameResponseObject)
 {
     $workplanExtension = \Workplan::getInstance();
     $workplanExtension->addJS();
     $workplanExtension->addJS($fileName = 'jsgantt.js');
     $workplanExtension->addCSS($fileName = 'jsgantt.css');
     $user = $GLOBALS["STEAM"]->get_current_steam_user();
     $portal = \lms_portal::get_instance();
     $objectID = $this->params[0];
     $workplanContainer = \steam_factory::get_object($GLOBALS["STEAM"]->get_id(), $objectID);
     $xmlfile = $workplanContainer->get_inventory_filtered(array(array("+", "class", CLASS_DOCUMENT)));
     $createContainer = 0;
     // check if user submitted create milestone or create task form
     if ($_SERVER["REQUEST_METHOD"] == "POST") {
         if (isset($_POST["new_milestone"])) {
             $createContainer = 1;
         } else {
             if (isset($_POST["new_task"])) {
                 $createContainer = 2;
             }
         }
     }
     // create new milestone or task
     if ($createContainer != 0) {
         $xmltree = new \SimpleXMLElement($xmlfile[0]->get_content());
         if ($createContainer == 1) {
             $xml = $xmltree->addChild("milestone");
             $newName = $_POST["milestonename"];
             $newStart = $_POST["milestonedate"];
             $newStart = mktime(0, 0, 0, substr($newStart, 3, 2), substr($newStart, 0, 2), substr($newStart, 6, 4));
             $newEnd = $_POST["milestonedate"];
             $newEnd = mktime(0, 0, 0, substr($newEnd, 3, 2), substr($newEnd, 0, 2), substr($newEnd, 6, 4));
             if (strlen($_POST["milestoneduration"]) > 0) {
                 $newDuration = $_POST["milestoneduration"];
             } else {
                 $newDuration = -1;
             }
             if (strlen($_POST["milestonedepends"]) > 0) {
                 $newDepends = $_POST["milestonedepends"];
             } else {
                 $newDepends = -1;
             }
             $newUsers = "";
             if (isset($_POST["milestoneusers"])) {
                 for ($count = 0; $count < count($_POST["milestoneusers"]); $count++) {
                     $newUsers = $newUsers . $_POST["milestoneusers"][$count] . ",";
                 }
                 $newUsers = substr($newUsers, 0, strlen($newUsers) - 1);
             }
             $portal->set_confirmation("Meilenstein " . $newName . " wurde erfolgreich erstellt.");
         } else {
             $xml = $xmltree->addChild("task");
             $newName = $_POST["taskname"];
             $newStart = $_POST["taskstart"];
             $newStart = mktime(0, 0, 0, substr($newStart, 3, 2), substr($newStart, 0, 2), substr($newStart, 6, 4));
             $newEnd = $_POST["taskend"];
             $newEnd = mktime(0, 0, 0, substr($newEnd, 3, 2), substr($newEnd, 0, 2), substr($newEnd, 6, 4));
             if (strlen($_POST["taskduration"]) > 0) {
                 $newDuration = $_POST["taskduration"];
             } else {
                 $newDuration = -1;
             }
             if (strlen($_POST["taskdepends"]) > 0) {
                 $newDepends = $_POST["taskdepends"];
             } else {
                 $newDepends = -1;
             }
             $newUsers = "";
             if (isset($_POST["taskusers"])) {
                 for ($count = 0; $count < count($_POST["taskusers"]); $count++) {
                     $newUsers = $newUsers . $_POST["taskusers"][$count] . ",";
                 }
                 $newUsers = substr($newUsers, 0, strlen($newUsers) - 1);
             }
             $portal->set_confirmation("Vorgang " . $newName . " wurde erfolgreich erstellt.");
         }
         $newContainer = \steam_factory::create_container($GLOBALS["STEAM"]->get_id(), $newName, $workplanContainer);
         $xml->addChild("name", $newName);
         $xml->addChild("oid", $newContainer->get_id());
         $newContainer->set_attribute("WORKPLAN_START", $newStart);
         $xml->addChild("start", $newStart);
         $newContainer->set_attribute("WORKPLAN_END", $newEnd);
         $xml->addChild("end", $newEnd);
         $xml->addChild("duration", $newDuration);
         $newContainer->set_attribute("WORKPLAN_DURATION", $newDuration);
         $xml->addChild("depends", $newDepends);
         $newContainer->set_attribute("WORKPLAN_DEPENDS", $newDepends);
         $newContainer->set_attribute("WORKPLAN_USERS", $newUsers);
         $xml->addChild("users", $newUsers);
         $xmlfile[0]->set_content($xmltree->saveXML());
     }
     if (is_object($workplanContainer) && $workplanContainer instanceof \steam_room) {
         // if user has the required rights display actionbar
         if ($user->get_id() == $workplanContainer->get_creator()->get_id() || in_array("WORKPLAN_" . $user->get_id() . "_LEADER", $workplanContainer->get_attribute_names())) {
             $content = $workplanExtension->loadTemplate("workplan_ganttview.template.html");
             $content->setCurrentBlock("BLOCK_CONFIRMATION");
             $content->setVariable("CONFIRMATION_TEXT", "NONE");
             $content->parse("BLOCK_CONFIRMATION");
             $content->setCurrentBlock("BLOCK_WORKPLAN_GANTT_ACTIONBAR");
             $content->setVariable("LABEL_NEW_SNAPSHOT", "Snapshot erstellen");
             $content->setVariable("WORKPLAN_ID", $objectID);
             $content->setVariable("LABEL_NEW_MILESTONE", "Neuer Meilenstein");
             $content->setVariable("LABEL_NEW_TASK", "Neuer Vorgang");
             $content->parse("BLOCK_WORKPLAN_GANTT_ACTIONBAR");
             $actionBar = new \Widgets\RawHtml();
             $actionBar->setHtml($content->get());
             $frameResponseObject->addWidget($actionBar);
         }
         $tabBar = new \Widgets\TabBar();
         $tabBar->setTabs(array(array("name" => "Überblick", "link" => $this->getExtension()->getExtensionUrl() . "overview/" . $objectID), array("name" => "Tabelle", "link" => $this->getExtension()->getExtensionUrl() . "listView/" . $objectID), array("name" => "Gantt-Diagramm", "link" => $this->getExtension()->getExtensionUrl() . "ganttView/" . $objectID), array("name" => "Mitarbeiter", "link" => $this->getExtension()->getExtensionUrl() . "users/" . $objectID), array("name" => "Snapshots", "link" => $this->getExtension()->getExtensionUrl() . "snapshots/" . $objectID)));
         $tabBar->setActiveTab(2);
         $frameResponseObject->addWidget($tabBar);
         $xml = simplexml_load_string($xmlfile[0]->get_content());
         $helpToArray = $xml->children();
         $list = array();
         for ($counter = 0; $counter < count($helpToArray); $counter++) {
             array_push($list, $helpToArray[$counter]);
         }
         usort($list, 'sort_xmllist');
         $content = $workplanExtension->loadTemplate("workplan_ganttview.template.html");
         if (count($list) == 0) {
             $content->setCurrentBlock("BLOCK_WORKPLAN_GANTT_EMPTY");
             $content->setVariable("WORKPLAN_GANTT_EMPTY", "Keine Meilensteine oder Vorgänge zu diesem Projektplan vorhanden.");
             $content->parse("BLOCK_WORKPLAN_GANTT_EMPTY");
         }
         // change the format of the information so it can be displayed via javascript/jsgantt
         $oids = "[";
         $tasks = "[";
         $starts = "[";
         $ends = "[";
         $dependslist = "[";
         $milestones = "[";
         for ($counter = 0; $counter < count($list); $counter++) {
             $name = $list[$counter]->name;
             $tasks = $tasks . $name . ",";
             $starts = $starts . (int) $list[$counter]->start . ",";
             $ends = $ends . (int) $list[$counter]->end . ",";
             $oids = $oids . $list[$counter]->oid . ",";
             $depends = $list[$counter]->depends;
             if ($depends == -1) {
                 $dependslist = $dependslist . "-1,";
             } else {
                 $dependslist = $dependslist . $depends . ",";
             }
             if ($list[$counter]->getName() == "milestone") {
                 $milestones = $milestones . "1,";
             } else {
                 $milestones = $milestones . "0,";
             }
         }
         if (count($list) > 0) {
             $oids = substr($oids, 0, strlen($oids) - 1) . "]";
             $tasks = substr($tasks, 0, strlen($tasks) - 1) . "]";
             $starts = substr($starts, 0, strlen($starts) - 1) . "]";
             $ends = substr($ends, 0, strlen($ends) - 1) . "]";
             $dependslist = substr($dependslist, 0, strlen($dependslist) - 1) . "]";
             $milestones = substr($milestones, 0, strlen($milestones) - 1) . "]";
         } else {
             $oids = $oids . "]";
             $tasks = $tasks . "]";
             $starts = $starts . "]";
             $ends = $ends . "]";
             $dependslist = $dependslist . "]";
             $milestones = $milestones . "]";
         }
         $content->setCurrentBlock("BLOCK_GANTT_CHART");
         $content->setVariable("GANTT_DIV", "ganttchartdiv");
         $content->setVariable("WORKPLAN_GANTT_TASKS", $tasks);
         $content->setVariable("WORKPLAN_GANTT_OID", $oids);
         $content->setVariable("WORKPLAN_GANTT_MILESTONE", $milestones);
         $content->setVariable("WORKPLAN_GANTT_DEPENDS", $dependslist);
         $content->setVariable("WORKPLAN_GANTT_START", $starts);
         $content->setVariable("WORKPLAN_GANTT_END", $ends);
         $content->parse("BLOCK_GANTT_CHART");
         $content->setCurrentBlock("BLOCK_WORKPLAN_LIST_FORMULAR");
         $content->setVariable("LABEL_NEW_MILESTONE", "Meilenstein hinzufügen");
         $content->setVariable("LABEL_NEW_TASK", "Vorgang hinzufügen");
         $content->setVariable("NAME_LABEL", "Name:*");
         $content->setVariable("START_LABEL", "Beginn:*");
         $content->setVariable("END_LABEL", "Ende:*");
         $content->setVariable("DATE_LABEL", "Datum:*");
         $content->setVariable("DURATION_LABEL", "Dauer:");
         $content->setVariable("DEPENDS_LABEL", "Abhängigkeit:");
         $content->setVariable("USERS_LABEL", "Mitarbeiter:");
         $groupID = 0;
         if (in_array("WORKPLAN_GROUP", $workplanContainer->get_attribute_names())) {
             $groupID = $workplanContainer->get_attribute("WORKPLAN_GROUP");
         }
         if ($groupID == 0) {
             $content->setCurrentBlock("BEGIN BLOCK_USER_OPTION_MILESTONE");
             $content->setVariable("USER_ID", $user->get_id());
             $content->setVariable("USER_NAME", $user->get_full_name());
             $content->parse("BLOCK_USER_OPTION_MILESTONE");
             $content->setCurrentBlock("BEGIN BLOCK_USER_OPTION_TASK");
             $content->setVariable("USER_ID", $user->get_id());
             $content->setVariable("USER_NAME", $user->get_full_name());
             if (in_array("WORKPLAN_" . $user->get_id() . "_RESSOURCE", $workplanContainer->get_attribute_names())) {
                 $content->setVariable("USER_RESSOURCE", $workplanContainer->get_attribute("WORKPLAN_" . $user->get_id() . "_RESSOURCE"));
             } else {
                 $content->setVariable("USER_RESSOURCE", 0);
             }
             $content->parse("BLOCK_USER_OPTION_TASK");
         } else {
             $groupObject = \steam_factory::get_object($GLOBALS["STEAM"]->get_id(), $groupID);
             $members = $groupObject->get_members();
             for ($count = 0; $count < count($members); $count++) {
                 $currentMember = $members[$count];
                 $content->setCurrentBlock("BEGIN BLOCK_USER_OPTION_MILESTONE");
                 $content->setVariable("USER_ID", $currentMember->get_id());
                 $content->setVariable("USER_NAME", $currentMember->get_full_name());
                 $content->parse("BLOCK_USER_OPTION_MILESTONE");
                 $content->setCurrentBlock("BEGIN BLOCK_USER_OPTION_TASK");
                 $content->setVariable("USER_ID", $currentMember->get_id());
                 $content->setVariable("USER_NAME", $currentMember->get_full_name());
                 if (in_array("WORKPLAN_" . $currentMember->get_id() . "_RESSOURCE", $workplanContainer->get_attribute_names())) {
                     $content->setVariable("USER_RESSOURCE", $workplanContainer->get_attribute("WORKPLAN_" . $currentMember->get_id() . "_RESSOURCE"));
                 } else {
                     $content->setVariable("USER_RESSOURCE", 0);
                 }
                 $content->parse("BLOCK_USER_OPTION_TASK");
             }
         }
         $content->setCurrentBlock("BLOCK_LIST_MILESTONE_DEPENDS");
         $content->setVariable("DEPENDS_OID", "-1");
         $content->setVariable("DEPENDS_NAME", "Keine Abhängigkeit");
         $content->parse("BLOCK_LIST_MILESTONE_DEPENDS");
         $content->setCurrentBlock("BLOCK_LIST_TASK_DEPENDS");
         $content->setVariable("DEPENDS_OID", "-1");
         $content->setVariable("DEPENDS_NAME", "Keine Abhängigkeit");
         $content->parse("BLOCK_LIST_TASK_DEPENDS");
         for ($count = 0; $count < count($list); $count++) {
             if ($list[$count]->getName() == 'task') {
                 $content->setCurrentBlock("BLOCK_LIST_MILESTONE_DEPENDS");
                 $content->setVariable("DEPENDS_OID", $list[$count]->oid);
                 $content->setVariable("DEPENDS_NAME", $list[$count]->name);
                 $content->parse("BLOCK_LIST_MILESTONE_DEPENDS");
                 $content->setCurrentBlock("BLOCK_LIST_TASK_DEPENDS");
                 $content->setVariable("DEPENDS_OID", $list[$count]->oid);
                 $content->setVariable("DEPENDS_NAME", $list[$count]->name);
                 $content->parse("BLOCK_LIST_TASK_DEPENDS");
             }
         }
         $content->setVariable("LABEL_BACK", "Ausblenden");
         $content->setVariable("LABEL_ADD", "Hinzufügen");
         $content->setVariable("WORKPLAN_ID", $this->params[0]);
         $content->parse("BLOCK_WORKPLAN_LIST_FORMULAR");
         $rawWidget = new \Widgets\RawHtml();
         $rawWidget->setHtml($content->get());
         $frameResponseObject->setTitle("Projektplan: " . $workplanContainer->get_name());
         $frameResponseObject->setHeadline(array(array("link" => $this->getExtension()->getExtensionUrl(), "name" => "Projektplanverwaltung"), array("", "name" => $workplanContainer->get_name())));
         $frameResponseObject->addWidget($rawWidget);
         return $frameResponseObject;
     }
 }
Ejemplo n.º 20
0
    public function frameResponse(\FrameResponseObject $frameResponseObject)
    {
        $breadcrumb = new \Widgets\Breadcrumb();
        $breadcrumb->setData(array(array("name" => \Portfolio::getInstance()->getText("My Competences"))));
        $tabBar = new \Widgets\TabBar();
        $tabBar->setTabs(array(array("name" => \Portfolio::getInstance()->getText("Dashboard"), "link" => $this->getextension()->getExtensionUrl() . "/"), array("name" => \Portfolio::getInstance()->getText("Competences"), "link" => $this->getExtension()->getExtensionUrl() . "ViewChart/"), array("name" => \Portfolio::getInstance()->getText("Artefacts"), "link" => $this->getExtension()->getExtensionUrl() . "ManageArtefacts/")));
        $tabBar->setActiveTab(1);
        $frameResponseObject->addWidget($breadcrumb);
        $frameResponseObject->addWidget($tabBar);
        $jobs = \CompetenceRaster::getJobs();
        $html = '<div align="right"><select id="jobs"><option value="all">Beruf wählen</option><option value="all">Alle</option>';
        foreach ($jobs as $job) {
            $html .= '<option value="' . $job->name . '">' . $job->name . ": " . $job->description . '</option>';
        }
        $html .= <<<END
\t\t</select></div>
\t\t<script>
\t\tfunction filter(){
\t\t\t\$(".chart").hide();
\t\t    job = \$('select[id="jobs"] option:selected').val();
\t\t    if (job == "all"){
\t\t\t\t\$(".chart").fadeIn();
\t\t\t}
\t    \t\$("#div_" + job + "_1").fadeIn();
\t    \t\$('#div_' + job ).fadeIn();
\t\t}
\t\t\$('select[id="jobs"]').change(function() {
\t\t\tfilter();
\t\t});
\t\t</script>
END;
        $rawHtml = new \Widgets\RawHtml();
        $rawHtml->setHtml($html);
        $frameResponseObject->addWidget($rawHtml);
        $arrayArtefactCompetencesCount = \CompetenceRaster::getCollectedCompetences();
        foreach ($this->jobs as $job) {
            //			$urlEventArray = array();
            //			$row = 0;
            $baseUrl = "/portfolio/ViewCompetence/?job=" . $job;
            //
            $jobObject = \CompetenceJob::getJobByName($job);
            //			$jsonChart = array();
            //			$chartWidget = new \Widgets\Chart();
            //			$headerActivitiesArray = array("Aktivitäten");
            //			foreach ($this->activities as $activity){
            //				$headerActivitiesArray []= "Tätigkeitsfeld " . $activity;
            //			}
            //			$jsonChart []= $headerActivitiesArray;
            //			foreach ($this->facets as $facet) {
            //				$facetArray = array($facet);
            //				$column = 0;
            //				foreach ($this->activities as $activity){
            //					$facetArray []= isset($arrayArtefactCompetencesCount[$job . $activity . $facet]) ? $arrayArtefactCompetencesCount[$job . $activity . $facet] : 0;
            //					$urlEventArray [$row][$column]= $baseUrl . "&activity=" . $column . "&facet=" . $facet . "&sc=1";
            //					$column++;
            //				}
            //				$jsonChart []= $facetArray;
            //				$row++;
            //			}
            //
            //			$chartWidget->setData(json_encode($jsonChart));
            //			$chartWidget->setUrlData(json_encode($urlEventArray));
            //			$chartWidget->setDescription($job);
            //			$chartWidget->setVAxisTitle("Facetten");
            //			$chartWidget->setHAxisTitle("Anzahl");
            //			$chartWidget->setId($job);
            //			$chartWidget->setTitle($jobObject->description . " - Absolute Anzahl an Kompetenzen");
            //
            //			$frameResponseObject->addWidget($chartWidget);
            $urlEventArray = array();
            $row = 0;
            $arrayCompetencesQuantity = \CompetenceRaster::getCompetencesQuantity();
            $jsonChart = array();
            $chartWidget = new \Widgets\Chart();
            $headerActivitiesArray = array("Aktivitäten");
            $headerActivitiesArray[] = "IST";
            $headerActivitiesArray[] = "SOLL";
            $jsonChart[] = $headerActivitiesArray;
            foreach ($this->activities as $activity) {
                $activityArray = array($activity);
                $quantityAll = isset($arrayCompetencesQuantity[$job . $activity]) ? $arrayCompetencesQuantity[$job . $activity] : 0;
                $absoluteCredit = isset($arrayArtefactCompetencesCount[$job . $activity]) ? $arrayArtefactCompetencesCount[$job . $activity] : 0;
                $absoluteDebit = $quantityAll - $absoluteCredit;
                $percentCredit = $absoluteDebit == 0 ? 0 : round($absoluteCredit / $quantityAll * 100, 2);
                $percentDebit = $absoluteDebit == 0 ? 0 : -100 + $percentCredit;
                $activityArray[] = $absoluteCredit;
                $activityArray[] = $absoluteDebit;
                $urlEventArray[$row] = array(1 => $baseUrl . "&activity=" . $activity . "&sc=1", 2 => $baseUrl . "&activity=" . $activity . "&sc=0");
                $row++;
                $jsonChart[] = $activityArray;
            }
            $chartWidget->setData(json_encode($jsonChart));
            $chartWidget->setUrlData(json_encode($urlEventArray));
            $chartWidget->setDescription($job);
            $chartWidget->setVAxisTitle("Tätigkeitsfelder");
            $chartWidget->setHAxisTitle("Anzahl erreicht / noch zu erledigen");
            $chartWidget->setId($job);
            $chartWidget->setTitle($jobObject->description . " - Absolut");
            $frameResponseObject->addWidget($chartWidget);
            ######################################
            $urlEventArray1 = array();
            $row = 0;
            $arrayCompetencesQuantity = \CompetenceRaster::getCompetencesQuantity();
            $jsonChart1 = array();
            $chartWidget1 = new \Widgets\Chart();
            $headerActivitiesArray1 = array("Aktivitäten");
            $headerActivitiesArray1[] = "IST";
            $headerActivitiesArray1[] = "SOLL";
            $jsonChart1[] = $headerActivitiesArray1;
            foreach ($this->activities as $activity) {
                $activityArray1 = array($activity);
                $quantityAll = isset($arrayCompetencesQuantity[$job . $activity]) ? $arrayCompetencesQuantity[$job . $activity] : 0;
                $absoluteCredit = isset($arrayArtefactCompetencesCount[$job . $activity]) ? $arrayArtefactCompetencesCount[$job . $activity] : 0;
                $absoluteDebit = $quantityAll - $absoluteCredit;
                $percentCredit = $absoluteDebit == 0 ? 0 : round($absoluteCredit / $quantityAll * 100, 2);
                $percentDebit = $absoluteDebit == 0 ? 0 : -100 + $percentCredit;
                $activityArray1[] = $percentCredit;
                $activityArray1[] = $percentDebit;
                $urlEventArray1[$row] = array(1 => $baseUrl . "&activity=" . $activity . "&sc=1", 2 => $baseUrl . "&activity=" . $activity . "&sc=0");
                $row++;
                $jsonChart1[] = $activityArray1;
            }
            $chartWidget1->setData(json_encode($jsonChart1));
            $chartWidget1->setUrlData(json_encode($urlEventArray1));
            $chartWidget1->setDescription($job);
            $chartWidget1->setVAxisTitle("Tätigkeitsfelder");
            $chartWidget1->setHAxisTitle("Prozent erreicht / noch zu erledigen");
            $chartWidget1->setId($job . "_1");
            $chartWidget1->setTitle($jobObject->description . " - Prozentual");
            $frameResponseObject->addWidget($chartWidget1);
        }
        $rawHtml1 = new \Widgets\RawHtml();
        $rawHtml1->setHtml("<script>\$(\".chart\").fadeOut();\$('#div_CL_1').fadeIn();\$('#div_CL').fadeIn();\n\t\t</script>");
        $frameResponseObject->addWidget($rawHtml1);
        return $frameResponseObject;
    }