当前位置: 首页>>代码示例>>PHP>>正文


PHP ilUtil::rCopy方法代码示例

本文整理汇总了PHP中ilUtil::rCopy方法的典型用法代码示例。如果您正苦于以下问题:PHP ilUtil::rCopy方法的具体用法?PHP ilUtil::rCopy怎么用?PHP ilUtil::rCopy使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在ilUtil的用法示例。


在下文中一共展示了ilUtil::rCopy方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。

示例1: importXmlRepresentation

 function importXmlRepresentation($a_entity, $a_id, $a_xml, $a_mapping)
 {
     // see ilStyleExporter::getXmlRepresentation()
     if (preg_match("/<StyleSheetExport><ImagePath>(.+)<\\/ImagePath>/", $a_xml, $hits)) {
         $path = $hits[1];
         $a_xml = str_replace($hits[0], "", $a_xml);
         $a_xml = str_replace("</StyleSheetExport>", "", $a_xml);
     }
     // temp xml-file
     $tmp_file = $this->getImportDirectory() . "/sty_" . $a_id . ".xml";
     file_put_contents($tmp_file, $a_xml);
     include_once "./Services/Style/classes/class.ilObjStyleSheet.php";
     $style = new ilObjStyleSheet();
     $style->createFromXMLFile($tmp_file);
     $new_id = $style->getId();
     unlink($tmp_file);
     // images
     if ($path) {
         $source = $this->getImportDirectory() . "/" . $path;
         if (is_dir($source)) {
             $target = $style->getImagesDirectory();
             if (!is_dir($target)) {
                 ilUtil::makeDirParents($target);
             }
             ilUtil::rCopy($source, $target);
         }
     }
     $a_mapping->addMapping("Services/Style", "sty", $a_id, $new_id);
 }
开发者ID:arlendotcn,项目名称:ilias,代码行数:29,代码来源:class.ilStyleImporter.php

示例2: getXmlRepresentation

 public function getXmlRepresentation($a_entity, $a_schema_version, $a_id)
 {
     include_once "Services/Style/classes/class.ilObjStyleSheet.php";
     $style = new ilObjStyleSheet($a_id, false);
     // images
     $target = $this->getAbsoluteExportDirectory();
     if ($target && !is_dir($target)) {
         ilUtil::makeDirParents($target);
     }
     ilUtil::rCopy($style->getImagesDirectory(), $target);
     return "<StyleSheetExport>" . "<ImagePath>" . $this->getRelativeExportDirectory() . "</ImagePath>" . $style->getXML() . "</StyleSheetExport>";
 }
开发者ID:arlendotcn,项目名称:ilias,代码行数:12,代码来源:class.ilStyleExporter.php

示例3: exportScorm

 /**
  * Export (authoring) scorm package
  */
 function exportScorm($a_inst, $a_target_dir, $ver, &$expLog)
 {
     $a_xml_writer = new ilXmlWriter();
     // export metadata
     $this->exportXMLMetaData($a_xml_writer);
     $metadata_xml = $a_xml_writer->xmlDumpMem(false);
     $a_xml_writer->_XmlWriter;
     $xsl = file_get_contents("./Modules/Scorm2004/templates/xsl/metadata.xsl");
     $args = array('/_xml' => $metadata_xml, '/_xsl' => $xsl);
     $xh = xslt_create();
     $output = xslt_process($xh, "arg:/_xml", "arg:/_xsl", NULL, $args, NULL);
     xslt_free($xh);
     file_put_contents($a_target_dir . '/indexMD.xml', $output);
     // export glossary
     if ($this->getAssignedGlossary() != 0) {
         ilUtil::makeDir($a_target_dir . "/glossary");
         include_once "./Modules/Glossary/classes/class.ilObjGlossary.php";
         include_once "./Modules/Glossary/classes/class.ilGlossaryExport.php";
         $glo_xml_writer = new ilXmlWriter();
         $glo_xml_writer->xmlSetDtdDef("<!DOCTYPE ContentObject SYSTEM \"http://www.ilias.de/download/dtd/ilias_co_3_7.dtd\">");
         // set xml header
         $glo_xml_writer->xmlHeader();
         $glos = new ilObjGlossary($this->getAssignedGlossary(), false);
         //$glos->exportHTML($a_target_dir."/glossary", $expLog);
         $glos_export = new ilGlossaryExport($glos, "xml");
         $glos->exportXML($glo_xml_writer, $glos_export->getInstId(), $a_target_dir . "/glossary", $expLog);
         $glo_xml_writer->xmlDumpFile($a_target_dir . "/glossary/glossary.xml");
         $glo_xml_writer->_XmlWriter;
     }
     $a_xml_writer = new ilXmlWriter();
     // set dtd definition
     $a_xml_writer->xmlSetDtdDef("<!DOCTYPE ContentObject SYSTEM \"http://www.ilias.de/download/dtd/ilias_co_3_7.dtd\">");
     // set generated comment
     $a_xml_writer->xmlSetGenCmt("Export of ILIAS Content Module " . $this->getId() . " of installation " . $a_inst . ".");
     // set xml header
     $a_xml_writer->xmlHeader();
     global $ilBench;
     $a_xml_writer->xmlStartTag("ContentObject", array("Type" => "SCORM2004LearningModule"));
     // MetaData
     $this->exportXMLMetaData($a_xml_writer);
     $this->exportXMLStructureObjects($a_xml_writer, $a_inst, $expLog);
     // SCO Objects
     $expLog->write(date("[y-m-d H:i:s] ") . "Start Export Sco Objects");
     $this->exportXMLScoObjects($a_inst, $a_target_dir, $ver, $expLog);
     $expLog->write(date("[y-m-d H:i:s] ") . "Finished Export Sco Objects");
     $a_xml_writer->xmlEndTag("ContentObject");
     $a_xml_writer->xmlDumpFile($a_target_dir . '/index.xml', false);
     if ($ver == "2004 4th") {
         $revision = "4th";
         $ver = "2004";
     }
     if ($ver == "2004 3rd") {
         $revision = "3rd";
         $ver = "2004";
     }
     // add content css (note: this is also done per item)
     $css_dir = $a_target_dir . "/ilias_css_4_2";
     ilUtil::makeDir($css_dir);
     include_once "./Modules/Scorm2004/classes/class.ilScormExportUtil.php";
     ilScormExportUtil::exportContentCSS($this, $css_dir);
     // add manifest
     include_once "./Modules/Scorm2004/classes/class.ilContObjectManifestBuilder.php";
     $manifestBuilder = new ilContObjectManifestBuilder($this);
     $manifestBuilder->buildManifest($ver, $revision);
     $manifestBuilder->dump($a_target_dir);
     $xsl = file_get_contents("./Modules/Scorm2004/templates/xsl/module.xsl");
     $args = array('/_xml' => file_get_contents($a_target_dir . "/imsmanifest.xml"), '/_xsl' => $xsl);
     $xh = xslt_create();
     $output = xslt_process($xh, "arg:/_xml", "arg:/_xsl", NULL, $args, NULL);
     xslt_free($xh);
     fputs(fopen($a_target_dir . '/index.html', 'w+'), $output);
     // copy xsd files to target
     switch ($ver) {
         case "2004":
             if ($revision == "3rd") {
                 ilUtil::rCopy('./Modules/Scorm2004/templates/xsd/adlcp_130_export_2004', $a_target_dir, false);
             }
             if ($revision == "4th") {
                 ilUtil::rCopy('./Modules/Scorm2004/templates/xsd/adlcp_130_export_2004_4th', $a_target_dir, false);
             }
             break;
         case "12":
             ilUtil::rCopy('./Modules/Scorm2004/templates/xsd/adlcp_120_export_12', $a_target_dir, false);
             break;
     }
     $a_xml_writer->_XmlWriter;
 }
开发者ID:khanhnnvn,项目名称:ilias_E-learning,代码行数:90,代码来源:class.ilObjSCORM2004LearningModule.php

示例4: export

 /**
  * export files of object to target directory
  * note: target directory must be the export target directory,
  * "/objects/il_<inst>_file_<file_id>/..." will be appended to this directory
  *
  * @param	string		$a_target_dir		target directory
  */
 function export($a_target_dir)
 {
     $subdir = "il_" . IL_INST_ID . "_file_" . $this->getId();
     ilUtil::makeDir($a_target_dir . "/objects/" . $subdir);
     $filedir = $this->getDirectory($this->getVersion());
     if (@(!is_dir($filedir))) {
         $filedir = $this->getDirectory();
     }
     ilUtil::rCopy($filedir, $a_target_dir . "/objects/" . $subdir);
 }
开发者ID:arlendotcn,项目名称:ilias,代码行数:17,代码来源:class.ilObjFile.php

示例5: rCopy

 /**
  * Copies content of a directory $a_sdir recursively to a directory $a_tdir
  * @param	string	$a_sdir		source directory
  * @param	string	$a_tdir		target directory
  * @param 	boolean $preserveTimeAttributes	if true, ctime will be kept.
  *
  * @return	boolean	TRUE for sucess, FALSE otherwise
  * @access	public
  * @static
  * 
  */
 public static function rCopy($a_sdir, $a_tdir, $preserveTimeAttributes = false)
 {
     // check if arguments are directories
     if (!@is_dir($a_sdir) or !@is_dir($a_tdir)) {
         return FALSE;
     }
     // read a_sdir, copy files and copy directories recursively
     $dir = opendir($a_sdir);
     while ($file = readdir($dir)) {
         if ($file != "." and $file != "..") {
             // directories
             if (@is_dir($a_sdir . "/" . $file)) {
                 if (!@is_dir($a_tdir . "/" . $file)) {
                     if (!ilUtil::makeDir($a_tdir . "/" . $file)) {
                         return FALSE;
                     }
                     //chmod($a_tdir."/".$file, 0775);
                 }
                 if (!ilUtil::rCopy($a_sdir . "/" . $file, $a_tdir . "/" . $file)) {
                     return FALSE;
                 }
             }
             // files
             if (@is_file($a_sdir . "/" . $file)) {
                 if (!copy($a_sdir . "/" . $file, $a_tdir . "/" . $file)) {
                     return FALSE;
                 }
                 if ($preserveTimeAttributes) {
                     touch($a_tdir . "/" . $file, filectime($a_sdir . "/" . $file));
                 }
             }
         }
     }
     return TRUE;
 }
开发者ID:khanhnnvn,项目名称:ilias_E-learning,代码行数:46,代码来源:class.ilUtil.php

示例6: importRecord

 /**
  * Import record
  *
  * @param
  * @return
  */
 function importRecord($a_entity, $a_types, $a_rec, $a_mapping, $a_schema_version)
 {
     //echo $a_entity;
     //var_dump($a_rec);
     switch ($a_entity) {
         case "htlm":
             include_once "./Modules/HTMLLearningModule/classes/class.ilObjFileBasedLM.php";
             if ($new_id = $a_mapping->getMapping('Services/Container', 'objs', $a_rec['Id'])) {
                 $newObj = ilObjectFactory::getInstanceByObjId($new_id, false);
             } else {
                 $newObj = new ilObjFileBasedLM();
                 $newObj->setType("htlm");
                 $newObj->create(true);
             }
             $newObj->setTitle($a_rec["Title"]);
             $newObj->setDescription($a_rec["Description"]);
             $newObj->setStartFile($a_rec["StartFile"], true);
             $newObj->update();
             $this->current_obj = $newObj;
             $dir = str_replace("..", "", $a_rec["Dir"]);
             if ($dir != "" && $this->getImportDirectory() != "") {
                 $source_dir = $this->getImportDirectory() . "/" . $dir;
                 $target_dir = $newObj->getDataDirectory();
                 ilUtil::rCopy($source_dir, $target_dir);
             }
             $a_mapping->addMapping("Modules/HTMLLearningModule", "htlm", $a_rec["Id"], $newObj->getId());
             $a_mapping->addMapping("Services/MetaData", "md", $a_rec["Id"] . ":0:htlm", $newObj->getId() . ":0:htlm");
             break;
     }
 }
开发者ID:arlendotcn,项目名称:ilias,代码行数:36,代码来源:class.ilHTMLLearningModuleDataSet.php

示例7: importRecord

 /**
  * Import record
  *
  * @param
  * @return
  */
 function importRecord($a_entity, $a_types, $a_rec, $a_mapping, $a_schema_version)
 {
     //echo $a_entity;
     //var_dump($a_rec);
     switch ($a_entity) {
         case "mob":
             //var_dump($a_rec);
             include_once "./Services/MediaObjects/classes/class.ilObjMediaObject.php";
             $newObj = new ilObjMediaObject();
             $newObj->setType("mob");
             $newObj->setTitle($a_rec["Title"]);
             $newObj->setDescription($a_rec["Description"]);
             $newObj->create();
             $newObj->createDirectory();
             ilObjMediaObject::_createThumbnailDirectory($newObj->getId());
             $this->current_mob = $newObj;
             $dir = str_replace("..", "", $a_rec["Dir"]);
             if ($dir != "" && $this->getImportDirectory() != "") {
                 $source_dir = $this->getImportDirectory() . "/" . $dir;
                 $target_dir = $dir = ilObjMediaObject::_getDirectory($newObj->getId());
                 ilUtil::rCopy($source_dir, $target_dir);
             }
             $a_mapping->addMapping("Services/MediaObjects", "mob", $a_rec["Id"], $newObj->getId());
             //echo "<br>++add++"."0:".$a_rec["Id"].":mob+0:".$newObj->getId().":mob"."+";
             $a_mapping->addMapping("Services/MetaData", "md", "0:" . $a_rec["Id"] . ":mob", "0:" . $newObj->getId() . ":mob");
             break;
         case "mob_media_item":
             // determine parent mob
             include_once "./Services/MediaObjects/classes/class.ilObjMediaObject.php";
             $mob_id = (int) $a_mapping->getMapping("Services/MediaObjects", "mob", $a_rec["MobId"]);
             if (is_object($this->current_mob) && $this->current_mob->getId() == $mob_id) {
                 $mob = $this->current_mob;
             } else {
                 $mob = new ilObjMediaObject($mob_id);
             }
             include_once "./Services/MediaObjects/classes/class.ilMediaItem.php";
             $newObj = new ilMediaItem();
             $newObj->setMobId($mob_id);
             $newObj->setWidth($a_rec["Width"]);
             $newObj->setHeight($a_rec["Height"]);
             $newObj->setCaption($a_rec["Caption"]);
             $newObj->setNr($a_rec["Nr"]);
             $newObj->setPurpose($a_rec["Purpose"]);
             $newObj->setLocation($a_rec["Location"]);
             $newObj->setLocationType($a_rec["LocationType"]);
             $newObj->setFormat($a_rec["Format"]);
             $newObj->setTextRepresentation($a_rec["TextRepresentation"]);
             $newObj->create();
             $this->current_media_item = $newObj;
             $a_mapping->addMapping("Services/MediaObjects", "mob_media_item", $a_rec["Id"], $newObj->getId());
             break;
         case "mob_mi_parameter":
             // get media item
             include_once "./Services/MediaObjects/classes/class.ilMediaItem.php";
             $med_id = (int) $a_mapping->getMapping("Services/MediaObjects", "mob_media_item", $a_rec["MiId"]);
             if (is_object($this->current_media_item) && $this->current_media_item->getId() == $med_id) {
                 $med = $this->current_media_item;
             } else {
                 $med = new ilMediaItem($med_id);
             }
             $med->writeParameter($a_rec["Name"], $a_rec["Value"]);
             break;
         case "mob_mi_map_area":
             // get media item
             include_once "./Services/MediaObjects/classes/class.ilMediaItem.php";
             $med_id = (int) $a_mapping->getMapping("Services/MediaObjects", "mob_media_item", $a_rec["MiId"]);
             if (is_object($this->current_media_item) && $this->current_media_item->getId() == $med_id) {
                 $med = $this->current_media_item;
             } else {
                 $med = new ilMediaItem($med_id);
             }
             include_once "./Services/MediaObjects/classes/class.ilMapArea.php";
             $map_area = new ilMapArea();
             $map_area->setItemId($med_id);
             $map_area->setNr($a_rec["Nr"]);
             $map_area->setShape($a_rec["Shape"]);
             $map_area->setCoords($a_rec["Coords"]);
             $map_area->setLinkType($a_rec["LinkType"]);
             $map_area->setTitle($a_rec["Title"]);
             $map_area->setHref($a_rec["Href"]);
             $map_area->setTarget($a_rec["Target"]);
             $map_area->setType($a_rec["Type"]);
             $map_area->setTargetFrame($a_rec["TargetFrame"]);
             $map_area->setHighlightMode($a_rec["HighlightMode"]);
             $map_area->setHighlightClass($a_rec["HighlightClass"]);
             $map_area->create();
             break;
     }
 }
开发者ID:arlendotcn,项目名称:ilias,代码行数:95,代码来源:class.ilMediaObjectDataSet.php

示例8: cloneFromSource

 /**
  * Clone source client into current client
  * @param	array	form data
  * @return	boolean
  */
 function cloneFromSource($source_id)
 {
     // Getting source and targets
     $source = new ilClient($source_id, $this->db_connections);
     $source->init();
     $target = $this->client;
     // ************************************************
     // **  COPY FILES
     // Cleaning up datadir
     if (!ilUtil::delDir($target->getDataDir())) {
         $this->error = "Could not delete data dir {$target->getDataDir}()";
         //return false;
     }
     // Create empty datadir
     if (!ilUtil::makeDir($target->getDataDir())) {
         $this->error = "could_not_create_base_data_dir :" . $target->getDataDir();
         return false;
     }
     // Copying datadir
     if (!ilUtil::rCopy($source->getDataDir(), $target->getDataDir())) {
         $this->error = "clone_datadircopyfail";
         $target->ini->write();
         return false;
     }
     // Cleaning up Webspacedir
     if (!ilUtil::delDir($target->getWebspaceDir())) {
         $this->error = "Could not delete webspace dir {$target->getWebspaceDir}()";
         //return false;
     }
     // Create empty Webspacedir
     if (!ilUtil::makeDir($target->getWebspaceDir())) {
         $this->error = "could_not_create_base_webspace_dir :" . $target->getWebspaceDir();
         return false;
     }
     // Copying Webspacedir
     if (!ilUtil::rCopy($source->getWebspaceDir(), $target->getWebspaceDir())) {
         $this->error = "clone_websipacedircopyfail";
         $target->ini->write();
         return false;
     }
     // Restore ini file
     $target->ini->write();
     // ************************************************
     // **  COPY DATABASE
     $source->connect();
     if (!$source->db) {
         $this->error = "Source database connection failed.";
         return false;
     }
     $target->connect();
     if (!$target->db) {
         $this->error = "Target database connection failed.";
         return false;
     }
     $source->connect();
     $srcTables = $source->db->query("SHOW TABLES");
     $target->connect();
     // drop all tables of the target db
     $tarTables = $target->db->query("SHOW TABLES");
     foreach ($tarTables->fetchAll() as $cTable) {
         $target->db->query("DROP TABLE IF EXISTS " . $cTable[0]);
     }
     foreach ($srcTables->fetchAll() as $cTable) {
         $drop = $target->db->query("DROP TABLE IF EXISTS " . $cTable[0]);
         $create = $target->db->query("CREATE TABLE " . $cTable[0] . " LIKE " . $source->getDbName() . "." . $cTable[0]);
         if (!$create) {
             $error = true;
         }
         $insert = $target->db->query("INSERT INTO " . $cTable[0] . " SELECT * FROM " . $source->getDbName() . "." . $cTable[0]);
     }
     return true;
 }
开发者ID:bheyser,项目名称:qplskl,代码行数:77,代码来源:class.ilSetup.php

示例9: cloneAssignmentsOfExercise

 /**
  * Clone assignments of exercise
  *
  * @param
  * @return
  */
 function cloneAssignmentsOfExercise($a_old_exc_id, $a_new_exc_id)
 {
     $ass_data = ilExAssignment::getAssignmentDataOfExercise($a_old_exc_id);
     foreach ($ass_data as $d) {
         // clone assignment
         $new_ass = new ilExAssignment();
         $new_ass->setExerciseId($a_new_exc_id);
         $new_ass->setTitle($d["title"]);
         $new_ass->setDeadline($d["deadline"]);
         $new_ass->setInstruction($d["instruction"]);
         $new_ass->setMandatory($d["mandatory"]);
         $new_ass->setOrderNr($d["order_val"]);
         $new_ass->setStartTime($d["start_time"]);
         $new_ass->setType($d["type"]);
         $new_ass->setPeerReview($d["peer"]);
         $new_ass->setPeerReviewMin($d["peer_min"]);
         $new_ass->setPeerReviewDeadline($d["peer_dl"]);
         $new_ass->setFeedbackFile($d["fb_file"]);
         $new_ass->setFeedbackCron($d["fb_cron"]);
         $new_ass->save();
         // clone assignment files
         include_once "./Modules/Exercise/classes/class.ilFSStorageExercise.php";
         $old_storage = new ilFSStorageExercise($a_old_exc_id, (int) $d["id"]);
         $new_storage = new ilFSStorageExercise($a_new_exc_id, (int) $new_ass->getId());
         $new_storage->create();
         if (is_dir($old_storage->getPath())) {
             ilUtil::rCopy($old_storage->getPath(), $new_storage->getPath());
         }
     }
 }
开发者ID:Walid-Synakene,项目名称:ilias,代码行数:36,代码来源:class.ilExAssignment.php

示例10: importRecord

 /**
  * Import record
  *
  * @param
  * @return
  */
 function importRecord($a_entity, $a_types, $a_rec, $a_mapping, $a_schema_version)
 {
     switch ($a_entity) {
         case "blog":
             include_once "./Modules/Blog/classes/class.ilObjBlog.php";
             // container copy
             if ($new_id = $a_mapping->getMapping("Services/Container", "objs", $a_rec["Id"])) {
                 $newObj = ilObjectFactory::getInstanceByObjId($new_id, false);
             } else {
                 $newObj = new ilObjBlog();
                 $newObj->create();
             }
             $newObj->setTitle($a_rec["Title"]);
             $newObj->setDescription($a_rec["Description"]);
             $newObj->setNotesStatus($a_rec["Notes"]);
             $newObj->setBackgroundColor($a_rec["BgColor"]);
             $newObj->setFontColor($a_rec["FontColor"]);
             $newObj->setProfilePicture($a_rec["Ppic"]);
             $newObj->setRSS($a_rec["RssActive"]);
             $newObj->setApproval($a_rec["Approval"]);
             $newObj->setImage($a_rec["Img"]);
             $newObj->setAbstractShorten($a_rec["AbsShorten"]);
             $newObj->setAbstractShortenLength($a_rec["AbsShortenLen"]);
             $newObj->setAbstractImage($a_rec["AbsImage"]);
             $newObj->setAbstractImageWidth($a_rec["AbsImgWidth"]);
             $newObj->setAbstractImageHeight($a_rec["AbsImgHeight"]);
             $newObj->setNavMode($a_rec["NavMode"]);
             $newObj->setNavModeListPostings($a_rec["NavListPost"]);
             $newObj->setNavModeListMonths($a_rec["NavListMon"]);
             $newObj->setKeywords($a_rec["Keywords"]);
             $newObj->setAuthors($a_rec["Authors"]);
             $newObj->setOrder(trim($a_rec["NavOrder"]) ? explode(";", $a_rec["NavOrder"]) : null);
             $newObj->setOverviewPostings($a_rec["OvPost"]);
             $newObj->update();
             // handle image(s)
             if ($a_rec["Img"]) {
                 $dir = str_replace("..", "", $a_rec["Dir"]);
                 if ($dir != "" && $this->getImportDirectory() != "") {
                     $source_dir = $this->getImportDirectory() . "/" . $dir;
                     $target_dir = ilObjBlog::initStorage($newObj->getId());
                     ilUtil::rCopy($source_dir, $target_dir);
                 }
             }
             if ($a_rec["Style"]) {
                 self::$style_map[$a_rec["Style"]][] = $newObj->getId();
             }
             $a_mapping->addMapping("Modules/Blog", "blog", $a_rec["Id"], $newObj->getId());
             break;
         case "blog_posting":
             $blog_id = (int) $a_mapping->getMapping("Modules/Blog", "blog", $a_rec["BlogId"]);
             if ($blog_id) {
                 include_once "./Modules/Blog/classes/class.ilBlogPosting.php";
                 $newObj = new ilBlogPosting();
                 $newObj->setBlogId($blog_id);
                 $newObj->setTitle($a_rec["Title"]);
                 $newObj->setCreated(new ilDateTime($a_rec["Created"], IL_CAL_DATETIME));
                 $newObj->setApproved($a_rec["Approved"]);
                 // parse export id into local id (if possible)
                 $author = $this->parseObjectExportId($a_rec["Author"], -1);
                 $newObj->setAuthor($author["id"]);
                 $newObj->create(true);
                 // keywords
                 $keywords = array();
                 for ($loop = 0; $loop < 1000; $loop++) {
                     if (isset($a_rec["Keyword" . $loop])) {
                         $keyword = trim($a_rec["Keyword" . $loop]);
                         if (strlen($keyword)) {
                             $keywords[] = $keyword;
                         }
                     }
                 }
                 if (sizeof($keywords)) {
                     $newObj->updateKeywords($keywords);
                 }
                 $a_mapping->addMapping("Services/COPage", "pg", "blp:" . $a_rec["Id"], "blp:" . $newObj->getId());
             }
             break;
     }
 }
开发者ID:arlendotcn,项目名称:ilias,代码行数:85,代码来源:class.ilBlogDataSet.php

示例11: copyFileItems

 /**
  * copy files of file items
  */
 function copyFileItems()
 {
     $imp_dir = $this->content_object->getImportDirectory();
     foreach ($this->file_item_mapping as $origin_id => $file_id) {
         if (empty($origin_id)) {
             continue;
         }
         $obj_dir = $origin_id;
         $source_dir = $imp_dir . "/" . $this->subdir . "/objects/" . $obj_dir;
         include_once "./Modules/File/classes/class.ilObjFile.php";
         $file_obj = new ilObjFile($file_id, false);
         //$target_dir = ilUtil::getDataDir()."/files/file_".$file_id;
         $target_dir = $file_obj->getDirectory();
         if (@is_dir($source_dir)) {
             // make target directory
             ilUtil::makeDir($target_dir);
             //@mkdir($target_dir);
             //@chmod($target_dir, 0755);
             if (@is_dir($target_dir)) {
                 ilUtil::rCopy($source_dir, $target_dir);
             }
         }
         $test = $file_obj->determineFilesize();
         $file_obj->update();
     }
 }
开发者ID:khanhnnvn,项目名称:ilias_E-learning,代码行数:29,代码来源:class.ilContObjParser.php

示例12: exportHTMLMOB

 /**
  * Export media object to html
  */
 function exportHTMLMOB($a_mob_id, &$a_linked_mobs)
 {
     global $tpl;
     $source_dir = ilUtil::getWebspaceDir() . "/mobs/mm_" . $a_mob_id;
     if (@is_dir($source_dir)) {
         ilUtil::makeDir($this->mobs_dir . "/mm_" . $a_mob_id);
         ilUtil::rCopy($source_dir, $this->mobs_dir . "/mm_" . $a_mob_id);
     }
     // #12930 - fullscreen
     include_once "./Services/MediaObjects/classes/class.ilObjMediaObject.php";
     $mob_obj = new ilObjMediaObject($a_mob_id);
     if ($mob_obj->hasFullscreenItem()) {
         // render media object html
         $xh = xslt_create();
         $output = xslt_process($xh, "arg:/_xml", "arg:/_xsl", NULL, array("/_xml" => "<dummy>" . $mob_obj->getXML(IL_MODE_ALIAS) . $mob_obj->getXML(IL_MODE_OUTPUT) . "</dummy>", "/_xsl" => file_get_contents("./Services/COPage/xsl/page.xsl")), array("mode" => "fullscreen"));
         xslt_free($xh);
         unset($xh);
         // render fullscreen html
         $tpl = new ilTemplate("tpl.fullscreen.html", true, true, "Services/COPage");
         $tpl = $this->getPreparedMainTemplate($tpl);
         // adds js/css
         $tpl->setCurrentBlock("ilMedia");
         $tpl->setVariable("MEDIA_CONTENT", $output);
         $output = $tpl->get();
         unset($tpl);
         // write file
         $file = $this->exp_dir . "/fullscreen_" . $a_mob_id . ".html";
         if (!($fp = @fopen($file, "w+"))) {
             die("<b>Error</b>: Could not open \"" . $file . "\" for writing" . " in <b>" . __FILE__ . "</b> on line <b>" . __LINE__ . "</b><br />");
         }
         chmod($file, 0770);
         fwrite($fp, $output);
         fclose($fp);
         unset($fp);
         unset($output);
     }
     $linked_mobs = $mob_obj->getLinkedMediaObjects();
     $a_linked_mobs = array_merge($a_linked_mobs, $linked_mobs);
 }
开发者ID:arlendotcn,项目名称:ilias,代码行数:42,代码来源:class.ilCOPageHTMLExport.php

示例13: exportHTMLMOB

 /**
  * export media object to html
  */
 function exportHTMLMOB($a_target_dir, &$a_glo_gui, $a_mob_id)
 {
     global $tpl;
     $mob_dir = $a_target_dir . "/mobs";
     $source_dir = ilUtil::getWebspaceDir() . "/mobs/mm_" . $a_mob_id;
     if (@is_dir($source_dir)) {
         ilUtil::makeDir($mob_dir . "/mm_" . $a_mob_id);
         ilUtil::rCopy($source_dir, $mob_dir . "/mm_" . $a_mob_id);
     }
     $tpl = new ilTemplate("tpl.main.html", true, true);
     $tpl->addBlockFile("CONTENT", "content", "tpl.adm_content.html");
     $_GET["obj_type"] = "MediaObject";
     $_GET["mob_id"] = $a_mob_id;
     $_GET["cmd"] = "";
     $content =& $a_glo_gui->media();
     $file = $a_target_dir . "/media_" . $a_mob_id . ".html";
     // open file
     if (!($fp = @fopen($file, "w+"))) {
         die("<b>Error</b>: Could not open \"" . $file . "\" for writing" . " in <b>" . __FILE__ . "</b> on line <b>" . __LINE__ . "</b><br />");
     }
     chmod($file, 0770);
     fwrite($fp, $content);
     fclose($fp);
     // fullscreen
     include_once "./Services/MediaObjects/classes/class.ilObjMediaObject.php";
     $mob_obj = new ilObjMediaObject($a_mob_id);
     if ($mob_obj->hasFullscreenItem()) {
         $tpl = new ilTemplate("tpl.main.html", true, true);
         $tpl->addBlockFile("CONTENT", "content", "tpl.adm_content.html");
         $_GET["mob_id"] = $a_mob_id;
         $_GET["cmd"] = "fullscreen";
         $content = $a_glo_gui->fullscreen();
         $file = $a_target_dir . "/fullscreen_" . $a_mob_id . ".html";
         // open file
         if (!($fp = @fopen($file, "w+"))) {
             die("<b>Error</b>: Could not open \"" . $file . "\" for writing" . " in <b>" . __FILE__ . "</b> on line <b>" . __LINE__ . "</b><br />");
         }
         chmod($file, 0770);
         fwrite($fp, $content);
         fclose($fp);
     }
 }
开发者ID:arlendotcn,项目名称:ilias,代码行数:45,代码来源:class.ilObjGlossary.php

示例14: addRecordsXml

 /**
  * Add records xml
  *
  * @param
  * @return
  */
 function addRecordsXml($a_writer, $a_prefixes, $a_entity, $a_schema_version, $a_ids, $a_field = "")
 {
     $types = $this->getXmlTypes($a_entity, $a_schema_version);
     $this->readData($a_entity, $a_schema_version, $a_ids, $a_field);
     if (is_array($this->data)) {
         foreach ($this->data as $d) {
             $a_writer->xmlStartTag($this->getDSPrefixString() . "Rec", array("Entity" => $this->getXmlEntityName($a_entity, $a_schema_version)));
             // entity tag
             $a_writer->xmlStartTag($this->getXmlEntityTag($a_entity, $a_schema_version));
             $rec = $this->getXmlRecord($a_entity, $a_schema_version, $d);
             foreach ($rec as $f => $c) {
                 switch ($types[$f]) {
                     case "directory":
                         if ($this->absolute_export_dir != "" && $this->relative_export_dir != "") {
                             ilUtil::makeDirParents($this->absolute_export_dir . "/dsDir_" . $this->dircnt);
                             ilUtil::rCopy($c, $this->absolute_export_dir . "/dsDir_" . $this->dircnt);
                             //echo "<br>copy-".$c."-".$this->absolute_export_dir."/dsDir_".$this->dircnt."-";
                             $c = $this->relative_export_dir . "/dsDir_" . $this->dircnt;
                             $this->dircnt++;
                         }
                         break;
                 }
                 // this changes schema/dtd
                 //$a_writer->xmlElement($a_prefixes[$a_entity].":".$f,
                 //	array(), $c);
                 $a_writer->xmlElement($f, array(), $c);
             }
             $a_writer->xmlEndTag($this->getXmlEntityTag($a_entity, $a_schema_version));
             $a_writer->xmlEndTag($this->getDSPrefixString() . "Rec");
             $this->afterXmlRecordWriting($a_entity, $a_schema_version, $d);
             // foreach record records of dependent entities (no record)
             $deps = $this->getDependencies($a_entity, $a_schema_version, $rec, $a_ids);
             if (is_array($deps)) {
                 foreach ($deps as $dp => $par) {
                     $this->addRecordsXml($a_writer, $a_prefixes, $dp, $a_schema_version, $par["ids"], $par["field"]);
                 }
             }
         }
     } else {
         if ($this->data === false) {
             // false -> add records of dependent entities (no record)
             $deps = $this->getDependencies($a_entity, $a_schema_version, null, $a_ids);
             if (is_array($deps)) {
                 foreach ($deps as $dp => $par) {
                     $this->addRecordsXml($a_writer, $a_prefixes, $dp, $a_schema_version, $par["ids"], $par["field"]);
                 }
             }
         }
     }
 }
开发者ID:arlendotcn,项目名称:ilias,代码行数:56,代码来源:class.ilDataSet.php

示例15: createOnlineVersion

 function createOnlineVersion($a_rel_name)
 {
     ilUtil::makeDir(CLIENT_WEB_DIR . '/courses/' . $a_rel_name);
     ilUtil::rCopy($this->getCoursePath() . '/' . $a_rel_name, CLIENT_WEB_DIR . '/courses/' . $a_rel_name);
     return true;
 }
开发者ID:khanhnnvn,项目名称:ilias_E-learning,代码行数:6,代码来源:class.ilFileDataCourse.php


注:本文中的ilUtil::rCopy方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。