コード例 #1
0
 public function processData(\IRequestObject $requestObject)
 {
     $this->params = $requestObject->getParams();
     if (empty($this->params[0])) {
         $this->artefacts = \Artefacts::getAllArtefacts();
     } else {
         $portfolio = \PortfolioModel::getById($this->params[0]);
         $this->artefacts = $portfolio->getArtefacts();
     }
 }
コード例 #2
0
ファイル: LoadArtefacts.class.php プロジェクト: rolwi/koala
 public function processData(\IRequestObject $requestObject)
 {
     $this->params = $requestObject->getParams();
     if ($this->params["job"] == null && $this->params["activity"] == null && $this->params["facet"] == null && $this->params["index"] == null) {
         $this->artefacts = \Artefacts::getAllArtefacts();
     } elseif ($this->params["portfolioId"] != null) {
         $portfolio = \PortfolioModel::getById($this->params["portfolioId"]);
         $this->artefacts = $portfolio->getArtefacts();
     } else {
         $this->artefacts = \Artefacts::getArtefactsByCompetence($this->params["job"], $this->params["facet"], $this->params["activity"], $this->params["index"]);
     }
 }
コード例 #3
0
ファイル: Competence.class.php プロジェクト: rolwi/koala
 /**
  * returns an array
  * keys: competence string / (+index)
  * values: how many artefacts with this competence exist
  */
 public static function getCollectedCompetences()
 {
     $artefacts = \Artefacts::getAllArtefacts();
     $competencesArray = array();
     $tmp = array();
     foreach ($artefacts as $artefact) {
         $competences = $artefact->getCompetences();
         foreach ($competences as $competence) {
             $index = $competence->getJobAffiliation() . $competence->getActivityAffiliation() . $competence->getFacetAffiliation();
             $index2 = $competence->getJobAffiliation() . $competence->getActivityAffiliation() . $competence->getFacetAffiliation() . $competence->getIndex();
             if (isset($competencesArray[$index])) {
                 $competencesArray[$index] += 1;
             } else {
                 $competencesArray[$index] = 1;
             }
             if (isset($competencesArray[$index2])) {
                 continue;
                 //$competencesArray [$index2] += 1;
             } else {
                 $competencesArray[$index2] = 1;
                 $competencesArray[$index2 . "ID"] = $artefact->getID();
             }
             if (isset($competencesArray[$competence->getJobAffiliation() . $competence->getActivityAffiliation()])) {
                 $competencesArray[$competence->getJobAffiliation() . $competence->getActivityAffiliation()] += 1;
             } else {
                 $competencesArray[$competence->getJobAffiliation() . $competence->getActivityAffiliation()] = 1;
             }
         }
     }
     return $competencesArray;
 }
コード例 #4
0
ファイル: MyPortfolio.class.php プロジェクト: rolwi/koala
 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;
     */
 }
コード例 #5
0
ファイル: Export.class.php プロジェクト: rolwi/koala
    public function frameResponse(\FrameResponseObject $frameResponseObject)
    {
        $user = \lms_steam::get_current_user();
        $username = $user->get_name();
        $allArtefacts = \Artefacts::getAllArtefacts();
        $zip = new \ZipArchive();
        $filename = PATH_TEMP . "DawinciPortfolio_" . $username . ".zip";
        $zip->open($filename, \ZIPARCHIVE::CREATE);
        $time = date(DATE_ATOM, time());
        $xmlOutput = <<<END
<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom"
     xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
     xmlns:leap2="http://terms.leapspecs.org/"
     xmlns:categories="http://wiki.leapspecs.org/2A/categories/"
     xmlns:portfolio="http://www.example.ac.uk/portfolio_system/export_262144/">
<leap2:version>http://www.leapspecs.org/2010-07/2A/</leap2:version>
<id>http://www.dawinci-projekt.de/{$username}</id>
<title>Mein Portfolio</title>
<author> 
  <name>{$username}</name>
  <uri>http://www.dawinci-projekt.de/{$username}</uri>
</author>
<updated>{$time}</updated>

END;
        foreach ($allArtefacts as $artefact) {
            $uniqid = uniqid();
            $ctime = date(DATE_ATOM, $artefact->get_attribute("OBJ_CREATION_TIME"));
            $mtime = date(DATE_ATOM, $artefact->get_attribute("OBJ_MODIFICATION_TIME"));
            $artefactname = $uniqid . $artefact->getName();
            $content = $artefact->getDescription();
            $handle = fopen(PATH_TEMP . $uniqid . $artefact->getName(), 'w');
            fwrite($handle, $artefact->getContent());
            fclose($handle);
            $zipFileName = $artefact->getName();
            $zipFileName .= "." . getMimeTypeExtension($artefact->getMimeType());
            $zip->addFile(PATH_TEMP . $artefactname, "/files/" . $artefactname);
            $xmlOutput .= <<<END
    <entry>
        <title>{$artefact->getName()}</title>
        <id>{$artefact->getId()}</id>

        <updated>{$mtime}</updated>
        <published>{$ctime}</published>

        <summary>{$artefact->getDescription()}</summary>
        <content type="text">{$content}</content>
        <rdf:type rdf:resource="leap2:resource"/>
        <link rel="enclosure" type="{$artefact->getMimeType()}" href="files/{$artefactname}"/>

        <category term="Offline" scheme="categories:resource_type#" label="File"/>
END;
            $competences = $artefact->getCompetences();
            foreach ($competences as $competence) {
                $xmlOutput .= <<<END
        <competence>
\t\t\t<index>{$competence->getName()}</index>
\t\t\t<description>{$competence->getDescription()}</description>
\t\t\t<rating>{$competence->getRating()}</rating>
\t\t</competence>
END;
            }
            $xmlOutput .= <<<END
    </entry>
END;
        }
        //		echo "numfiles: " . $zip->numFiles . "\n";
        //		echo "status:" . $zip->status . "\n";
        $xmlOutput .= "</feed>";
        //print "<pre>" . $xmlOutput . "</pre>";
        $zip->addFromString("leap2a.xml", $xmlOutput);
        $zip->close();
        return $frameResponseObject;
    }