/** * Get items of current folder */ function getItems() { $st_item =& $this->media_object->getMediaItem("Standard"); $max = ilMapArea::_getMaxNr($st_item->getId()); $areas = array(); include_once "./Services/MediaObjects/classes/class.ilMapArea.php"; for ($i = 1; $i <= $max; $i++) { $area = new ilMapArea($st_item->getId(), $i); $areas[] = array("nr" => $i, "area" => $area, "title" => $area->getTitle()); } $this->setData($areas); }
/** * read media items into media objects (static) * * @param object $a_mob media object */ function _getMediaItemsOfMOb(&$a_mob) { global $ilDB; // read media_object record $query = "SELECT * FROM media_item WHERE mob_id = " . $ilDB->quote($a_mob->getId(), "integer") . " " . "ORDER BY nr"; $item_set = $ilDB->query($query); while ($item_rec = $ilDB->fetchAssoc($item_set)) { $media_item =& new ilMediaItem(); $media_item->setNr($item_rec["nr"]); $media_item->setId($item_rec["id"]); $media_item->setLocation($item_rec["location"]); $media_item->setLocationType($item_rec["location_type"]); $media_item->setFormat($item_rec["format"]); $media_item->setWidth($item_rec["width"]); $media_item->setHeight($item_rec["height"]); $media_item->setHAlign($item_rec["halign"]); $media_item->setCaption($item_rec["caption"]); $media_item->setPurpose($item_rec["purpose"]); $media_item->setMobId($item_rec["mob_id"]); $media_item->setThumbTried($item_rec["tried_thumb"]); $media_item->setTextRepresentation($item_rec["text_representation"]); // get item parameter $query = "SELECT * FROM mob_parameter WHERE med_item_id = " . $ilDB->quote($item_rec["id"], "integer"); $par_set = $ilDB->query($query); while ($par_rec = $ilDB->fetchAssoc($par_set)) { $media_item->setParameter($par_rec["name"], $par_rec["value"]); } // get item map areas $max = ilMapArea::_getMaxNr($media_item->getId()); for ($i = 1; $i <= $max; $i++) { $area =& new ilMapArea($media_item->getId(), $i); $media_item->addMapArea($area); } // add media item to media object $a_mob->addMediaItem($media_item); } }
/** * Delete map areas */ function deleteAreas() { global $ilCtrl, $lng; if (!isset($_POST["area"])) { ilUtil::sendFailure($lng->txt("no_checkbox"), true); $ilCtrl->redirect($this, "editMapAreas"); } $st_item = $this->media_object->getMediaItem("Standard"); $max = ilMapArea::_getMaxNr($st_item->getId()); if (count($_POST["area"]) > 0) { $i = 0; foreach ($_POST["area"] as $area_nr) { $st_item->deleteMapArea($area_nr - $i); $i++; } $this->media_object->update(); ilUtil::sendSuccess($lng->txt("cont_areas_deleted"), true); } $ilCtrl->redirect($this, "editMapAreas"); }