public static function createObject($name, $description = "", $content = "", $mimeType = "application/x-msdownload", $artefactClass, $user = null) { self::init(); if ($user == null) { $user = lms_steam::get_current_user(); } $newArtefact = steam_factory::create_room($GLOBALS["STEAM"]->get_id(), $name, Artefacts::getArtefactsContainer($user), "Artefact: " + $name); $newArtefact->set_attribute(PORTFOLIO_PREFIX . "TYPE", "ARTEFACT"); $newArtefact->set_attribute(PORTFOLIO_PREFIX . "ARTEFACTCLASS", $artefactClass); $dataPresent = $content == "" ? false : true; $newArtefact->set_attribute(PORTFOLIO_PREFIX . "DATAPRESENT", $dataPresent); $newArtefact->set_attribute(PORTFOLIO_PREFIX . "LINKED_LOCATIONS", array()); $newArtefact->set_attribute("OBJ_TYPE", PORTFOLIO_PREFIX . "ARTEFACT"); if ($dataPresent) { $data = steam_factory::create_document($GLOBALS["STEAM"]->get_id(), "data", $content, $mimeType, $newArtefact); } $newArtefactObject = Artefacts::getArtefactByRoom($newArtefact); $newArtefactObject->checkActivity(); $newArtefactObject->checkCompetence(); //Create Forum $newArtefactObject->createForum(); //create and assign groups // $newArtefact->createGroups(); return $newArtefactObject; }
public function processData(\IRequestObject $requestObject) { $this->params = $requestObject->getParams(); $this->competenceId = $this->params["competence"]; $this->checked = $this->params["checked"]; $this->artefactId = $this->params["artefactId"]; $this->artefact = \Artefacts::getById($this->artefactId); }
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(); } }
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"]); } }
public static function getLatestArtefacts($count = 10) { $all = self::getArtefactsContainer()->get_inventory_filtered(array(array('+', 'class', CLASS_ROOM)), array(array('>', 'attribute', 'OBJ_CREATION_TIME'), array('>', 'attribute', 'OBJ_LAST_CHANGED'))); $allArtefacts = array(); $i = 0; foreach ($all as $room) { $i++; if ($i > $count) { break; } $allArtefacts[] = Artefacts::getArtefactByRoom($room); } return $allArtefacts; }
public function getAllLatest($count = 10) { $new = array(); $portfolios = PortfolioModel::getLatestPortfolios(); foreach ($portfolios as $item) { $timestamp = $item->get_attribute("OBJ_LAST_CHANGED"); $new[$timestamp] = $item; } $artefacts = Artefacts::getLatestArtefacts(); foreach ($artefacts as $item) { $timestamp = $item->get_attribute("OBJ_LAST_CHANGED"); $new[$timestamp] = $item; } }
/** * 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; }
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; }
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; */ }
public function processData(\IRequestObject $requestObject) { $this->artefacts = \Artefacts::getLatestArtefacts(5); $this->portfolios = \PortfolioModel::getLatestPortfolios(5); $this->newObjects = array_merge($this->artefacts, $this->portfolios); }
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; }
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; }
/** * Returns array('success'=>true) or array('error'=>'error message') */ function handleUpload($uploadDirectory) { if (!is_writable($uploadDirectory)) { return array('error' => "Server error. Upload directory isn't writable."); } if (!$this->file) { return array('error' => 'No files were uploaded.'); } $size = $this->file->getSize(); if ($size == 0) { return array('error' => 'File is empty'); } if ($size > $this->sizeLimit) { return array('error' => 'File is too large'); } $pathinfo = pathinfo($this->file->getName()); $filename = $pathinfo['filename']; //$filename = md5(uniqid()); $ext = $pathinfo['extension']; if ($this->allowedExtensions && !in_array(strtolower($ext), $this->allowedExtensions)) { $these = implode(', ', $this->allowedExtensions); return array('error' => 'File has an invalid extension, it should be one of ' . $these . '.'); } //create empty steam_document and check write access //$steam_document = \steam_factory::create_document($GLOBALS["STEAM"]->get_id(), $this->file->getName(), "", "" , \steam_factory::get_object($GLOBALS["STEAM"]->get_id(), $this->envid)); if ($this->file->save($uploadDirectory . $filename . '.' . $ext)) { $artefact = \Artefacts::getById($this->envid); $artefact->setData(file_get_contents($uploadDirectory . $filename . '.' . $ext)); //$steam_document->set_content(file_get_contents($uploadDirectory . $filename . '.' . $ext)); unlink($uploadDirectory . $filename . '.' . $ext); return array('success' => true); } else { return array('error' => 'Could not save uploaded file.' . 'The upload was cancelled, or server error encountered'); } }
public static function getById($id) { self::init(); $obj = steam_factory::get_object($GLOBALS["STEAM"]->get_id(), $id); if (!$obj instanceof \steam_object) { error_log("Object is null."); return null; } switch ($obj->get_attribute(PORTFOLIO_PREFIX . "TYPE")) { case "ARTEFACT": return Artefacts::getArtefactByRoom($obj); break; case "PORTFOLIO": return new PortfolioModel($obj); break; default: error_log("Object is no E-Portfolio Object. ID:" . $id); return null; } }