コード例 #1
0
 public function testImport()
 {
     $itemClass = $this->itemService->getRootClass();
     $report = $this->importService->importQTIPACKFile($this->getSampleDir() . '/package/QTI/package.zip', $itemClass);
     $items = array();
     foreach ($report as $itemReport) {
         $data = $itemReport->getData();
         if (!is_null($data)) {
             $items[] = $data;
         }
     }
     $this->assertEquals(1, count($items));
     $item = current($items);
     $this->assertInstanceOf('\\core_kernel_classes_Resource', $item);
     $this->assertTrue($item->exists());
     $resourceManager = new \taoItems_helpers_ResourceManager(array('item' => $item, 'lang' => DEFAULT_LANG));
     $data = $resourceManager->getDirectory();
     $this->assertTrue(is_array($data));
     $this->assertTrue(isset($data['path']));
     $this->assertEquals('/', $data['path']);
     $this->assertTrue(isset($data['children']));
     $children = $data['children'];
     $this->assertEquals(2, count($children));
     $file = null;
     $dir = null;
     foreach ($children as $child) {
         if (isset($child['path'])) {
             $dir = $child;
         }
         if (isset($child['name'])) {
             $file = $child;
         }
     }
     $this->assertEquals("qti.xml", $file['name']);
     $this->assertEquals("application/xml", $file['mime']);
     $this->assertTrue($file['size'] > 0);
     $this->assertEquals("/images", $dir['path']);
     $this->assertEquals(ROOT_URL, substr($dir['url'], 0, strlen(ROOT_URL)));
     return $item;
 }
コード例 #2
0
 /**
  * Apply the css to this item
  *
  * @param \core_kernel_classes_Resource $item
  * @param $destPath
  * @return \common_report_Report
  */
 public function applyToItem(\core_kernel_classes_Resource $item, $destPath)
 {
     $itemService = \taoItems_models_classes_ItemsService::singleton();
     $availableLangs = array(DEFAULT_LANG);
     foreach ($availableLangs as $lang) {
         if ($itemService->hasItemContent($item, $lang)) {
             // get the new
             $modifiedXml = $this->applyToXml($itemService->getItemContent($item), $destPath);
             $manager = new \taoItems_helpers_ResourceManager(array('item' => $item, 'lang' => $lang));
             $manager->add($this->cssFile, $destPath, '');
             $itemService->setItemContent($item, $modifiedXml, $lang);
             return new \common_report_Report(\common_report_Report::TYPE_SUCCESS, $item->getLabel());
         } else {
             return new \common_report_Report(\common_report_Report::TYPE_INFO, $item->getLabel() . ' (n/a)');
         }
     }
 }