public function __construct($vaf721e88e6c0a612be51c329cb2bc12a, $vd80c2a24a1dcebf784b89d42f66190a2 = false) { $this->relations = umiImportRelations::getInstance(); $this->source_name = $vaf721e88e6c0a612be51c329cb2bc12a; $this->source_id = $this->relations->addNewSource($vaf721e88e6c0a612be51c329cb2bc12a); $this->limit = is_numeric($vd80c2a24a1dcebf784b89d42f66190a2) ? $vd80c2a24a1dcebf784b89d42f66190a2 : false; self::$ROOT_PAGE_TYPE_ID = umiObjectTypesCollection::getInstance()->getTypeIdByGUID('root-pages-type'); }
public function __construct($vaf721e88e6c0a612be51c329cb2bc12a = false) { if ($vaf721e88e6c0a612be51c329cb2bc12a) { $this->meta['source-name'] = $vaf721e88e6c0a612be51c329cb2bc12a; } $this->doc = new DomDocument("1.0", "utf-8"); $this->relations = umiImportRelations::getInstance(); }
public function import_feed($url, $type_id, $target, $source = false) { $typeObj = umiObjectsCollection::getInstance()->getObject($type_id); $typeName = $typeObj->getName(); $feed = new RSSFeed($url); $feed->loadContent(); switch($typeName) { case "RSS": { $feed->loadRSS(); break; } case "ATOM": { $feed->loadAtom(); break; } default: { return false; } } $relations = umiImportRelations::getInstance(); $source_id = $relations->getSourceId($url); if($source_id === false) { $source_id = $relations->addNewSource($url); } $hierarchy_type = umiHierarchyTypesCollection::getInstance()->getTypeByName("news", "item"); $hierarchy_type_id = $hierarchy_type->getId(); $result = $feed->returnItems(); foreach($result as $item) { $item_title = $item->getTitle(); $item_url = $item->getUrl(); if($relations->getNewIdRelation($source_id, $item_url)) { continue; } $item_content = $item->getContent(); $item_date = $item->getDate(); $item_date = strtotime($item_date); if(!isset($element_id) || $element_id === false) { if(!isset($target[0])) { continue; } $parents = umiHierarchy::getInstance()->getObjectInstances($target[0]); if(count($parents)) { list($parent_id) = $parents; $element_id = umiHierarchy::getInstance()->addElement($parent_id, $hierarchy_type_id, $item_title, $item_title); $relations->setIdRelation($source_id, $item_url, $element_id); permissionsCollection::getInstance()->setDefaultPermissions($element_id); } else { return false; } } if ($element = umiHierarchy::getInstance()->getElement($element_id, true)) { $element->getObject()->setName($item_title); $element->setAltName($item_title); $element->setIsActive(true); $element->setValue("title", $item_title); $element->setValue("h1", $item_title); $element->setValue("publish_time", $item_date); $element->setValue("anons", $item_content); $element->setValue("content", $item_content); $element->setValue("source", $source); $element->setValue("source_url", $item_url); $element->commit(); $element_id = false; } } return true; }
protected function parseElements() { $v0565942fb39be0978d5774cfa5320fcb = $this->elements; $v6a7f245843454cf4f28ad7c5e2572aa2 = ""; $va5d4db7ed95dbef22bdd6bd8036da60a = umiHierarchy::getInstance()->forceAbsolutePath(true); foreach ($v0565942fb39be0978d5774cfa5320fcb as $v7057e8409c7c531a1a6e9ac3df4ed549) { $v8e2dcfd7e7e24b1ca76c1193f645902b = umiHierarchy::getInstance()->getElement($v7057e8409c7c531a1a6e9ac3df4ed549); if (!$v8e2dcfd7e7e24b1ca76c1193f645902b) { continue; } $vb068931cc450442b63f5b3d276ea4297 = $v8e2dcfd7e7e24b1ca76c1193f645902b->getName(); $vd84ff935144e00c3e1d395c2379aca47 = $v8e2dcfd7e7e24b1ca76c1193f645902b->getAltName(); $v2a304a1348456ccd2234cd71a81bd338 = umiHierarchy::getInstance()->getPathById($v7057e8409c7c531a1a6e9ac3df4ed549); $v6be379826b20cc58475f636e33f4606b = $v8e2dcfd7e7e24b1ca76c1193f645902b->getParentId(); $v0715f6d9497f93911417c9c324265771 = $v8e2dcfd7e7e24b1ca76c1193f645902b->getTypeId(); $vb946c44d711ade3b061653732977d043 = umiHierarchyTypesCollection::getInstance()->getType($v0715f6d9497f93911417c9c324265771); $v571927edeba34435dcef63324b2a4f86 = $vb946c44d711ade3b061653732977d043->getTitle(); $v5cde3b79e1c913665469de8dc2f1f8b6 = $vb946c44d711ade3b061653732977d043->getName(); $v28843f287b7e7d3ee4ad0be8761e325d = $vb946c44d711ade3b061653732977d043->getExt(); $vd02e12eb6d6c3f6ebd763197df01e211 = $v8e2dcfd7e7e24b1ca76c1193f645902b->getTplId(); $vf9bdb7221804d6d17b654ec67c5a0735 = templatesCollection::getInstance()->getTemplate($vd02e12eb6d6c3f6ebd763197df01e211)->getFilename(); $v78e6dd7a49f5b0cb2106a3a434dd5c86 = $v8e2dcfd7e7e24b1ca76c1193f645902b->getLangId(); $v7572559ca86e781ba8fe8073a0b725c6 = langsCollection::getInstance()->getLang($v78e6dd7a49f5b0cb2106a3a434dd5c86); $vff8b918bc674d6a658430241e4a74574 = $v7572559ca86e781ba8fe8073a0b725c6->getTitle(); $v753527be46567ad90a4203cf4b40d70e = $v7572559ca86e781ba8fe8073a0b725c6->getPrefix(); $v662cbf1253ac7d8750ed9190c52163e5 = $v8e2dcfd7e7e24b1ca76c1193f645902b->getDomainId(); $vad5f82e879a9c5d6b5b442eb37e50551 = domainsCollection::getInstance()->getDomain($v662cbf1253ac7d8750ed9190c52163e5); $vf9b9218cbe221f8b9f1292474aa6f3e4 = $vad5f82e879a9c5d6b5b442eb37e50551->getHost(); $vaf31437ce61345f416579830a98c91e5 = $v8e2dcfd7e7e24b1ca76c1193f645902b->getObject()->getId(); $ve1c6c9ef2fcbe75f26f815c4ef2e60b4 = (int) $v8e2dcfd7e7e24b1ca76c1193f645902b->getIsVisible(); $v4264c638e0098acb172519b0436db099 = (int) $v8e2dcfd7e7e24b1ca76c1193f645902b->getIsActive(); $v3e04dc2abd929a9d02e2e0fa41d24bf9 = new umiDate($v8e2dcfd7e7e24b1ca76c1193f645902b->getUpdateTime()); $v2e10faa7211633841eebf971b7056c0b = $v3e04dc2abd929a9d02e2e0fa41d24bf9->getFormattedDate("U"); $vd4f11866a8f58f1071bd3ae29c935c5a = $v3e04dc2abd929a9d02e2e0fa41d24bf9->getFormattedDate("r"); $vc10cb84e1a90ce84ef3ee424c2b1a2ef = $v3e04dc2abd929a9d02e2e0fa41d24bf9->getFormattedDate(DATE_ATOM); $ve05b19ee2921f914301c26bcc4fc8d5a = umiImportRelations::getInstance()->getNewIdRelation($this->source_id, $v6be379826b20cc58475f636e33f4606b); $ve7398137766d8a8621035454620c1317 = umiImportRelations::getInstance()->getNewIdRelation($this->source_id, $v7057e8409c7c531a1a6e9ac3df4ed549); if ($v7057e8409c7c531a1a6e9ac3df4ed549 && !$ve7398137766d8a8621035454620c1317) { umiImportRelations::getInstance()->setIdRelation($this->source_id, $v7057e8409c7c531a1a6e9ac3df4ed549, $v7057e8409c7c531a1a6e9ac3df4ed549); $ve7398137766d8a8621035454620c1317 = $v7057e8409c7c531a1a6e9ac3df4ed549; } if ($v6be379826b20cc58475f636e33f4606b && !$ve05b19ee2921f914301c26bcc4fc8d5a) { umiImportRelations::getInstance()->setIdRelation($this->source_id, $v6be379826b20cc58475f636e33f4606b, $v6be379826b20cc58475f636e33f4606b); $ve05b19ee2921f914301c26bcc4fc8d5a = $v6be379826b20cc58475f636e33f4606b; } $v6a7f245843454cf4f28ad7c5e2572aa2 .= <<<END \t<element id="{$ve7398137766d8a8621035454620c1317}" parentId="{$ve05b19ee2921f914301c26bcc4fc8d5a}" objectId="{$vaf31437ce61345f416579830a98c91e5}" is_visible="{$ve1c6c9ef2fcbe75f26f815c4ef2e60b4}" is_active="{$v4264c638e0098acb172519b0436db099}"> \t\t<name><![CDATA[{$vb068931cc450442b63f5b3d276ea4297}]]></name> \t\t<link><![CDATA[{$v2a304a1348456ccd2234cd71a81bd338}]]></link> \t\t<altName><![CDATA[{$vd84ff935144e00c3e1d395c2379aca47}]]></altName> \t\t<templateId><![CDATA[{$vd02e12eb6d6c3f6ebd763197df01e211}]]></templateId> \t\t<templatePath><![CDATA[{$vf9bdb7221804d6d17b654ec67c5a0735}]]></templatePath> \t\t<lang prefix="{$v753527be46567ad90a4203cf4b40d70e}"><![CDATA[{$vff8b918bc674d6a658430241e4a74574}]]></lang> \t\t<domain><![CDATA[{$vf9b9218cbe221f8b9f1292474aa6f3e4}]]></domain> \t\t<behaviour> \t\t\t<title><![CDATA[{$v571927edeba34435dcef63324b2a4f86}]]></title> \t\t\t<module><![CDATA[{$v5cde3b79e1c913665469de8dc2f1f8b6}]]></module> \t\t\t<method><![CDATA[{$v28843f287b7e7d3ee4ad0be8761e325d}]]></method> \t\t</behaviour> \t\t<updateTime> \t\t\t\t<timestamp><![CDATA[{$v2e10faa7211633841eebf971b7056c0b}]]></timestamp> \t\t\t\t<RFC><![CDATA[{$vd4f11866a8f58f1071bd3ae29c935c5a}]]></RFC> \t\t\t\t<UTC><![CDATA[{$vc10cb84e1a90ce84ef3ee424c2b1a2ef}]]></UTC> \t\t</updateTime> \t</element> END; unset($v8e2dcfd7e7e24b1ca76c1193f645902b); umiHierarchy::getInstance()->unloadElement($v7057e8409c7c531a1a6e9ac3df4ed549); } umiHierarchy::getInstance()->forceAbsolutePath($va5d4db7ed95dbef22bdd6bd8036da60a); unset($v0565942fb39be0978d5774cfa5320fcb); return $v6a7f245843454cf4f28ad7c5e2572aa2; }
protected function addMissedProps(&$v691b2ea4f2db17699a29da0c302a91ea, $v82e85d12802becdae851373fcc70c4ff, $v2741adf691b2acf0359a6a73234bc605) { if (strlen($v2741adf691b2acf0359a6a73234bc605)) { $v87306dd4235ed712ebc07fe169b76f83 = umiImportRelations::getInstance()->getNewTypeIdRelation($this->source_id, $v2741adf691b2acf0359a6a73234bc605); } else { $v87306dd4235ed712ebc07fe169b76f83 = $v691b2ea4f2db17699a29da0c302a91ea->getObject()->getTypeId(); } $v7ae7003da59ae71dcc9f8638ef50593d = umiObjectTypesCollection::getInstance()->getType($v87306dd4235ed712ebc07fe169b76f83); foreach ($v82e85d12802becdae851373fcc70c4ff as $v6184026d3eb247fb90d471744679ece5) { $v2726ffa1d364725a0e3166638138e8e7 = $v6184026d3eb247fb90d471744679ece5['prop_block_title']; $vdf8958b8370cd74e1a8c33230a569b10 = $v6184026d3eb247fb90d471744679ece5['prop_block_name']; $ve41aac3b363ca7b963226f92ecda32d5 = $v6184026d3eb247fb90d471744679ece5['prop_block_is_public']; if (!$vdf8958b8370cd74e1a8c33230a569b10) { if ($v2726ffa1d364725a0e3166638138e8e7) { $vdf8958b8370cd74e1a8c33230a569b10 = translit::convert($v2726ffa1d364725a0e3166638138e8e7); } else { $v2726ffa1d364725a0e3166638138e8e7 = "Imported fields group"; $vdf8958b8370cd74e1a8c33230a569b10 = "imported"; } } if ($v216c92e7f92d45ebbf45c075ceae8c05 = $v7ae7003da59ae71dcc9f8638ef50593d->getFieldsGroupByName($vdf8958b8370cd74e1a8c33230a569b10)) { } else { $vb2cd255a43fd56eb1b203b521fa0ef69 = $v7ae7003da59ae71dcc9f8638ef50593d->addFieldsGroup($vdf8958b8370cd74e1a8c33230a569b10, $vdf8958b8370cd74e1a8c33230a569b10, true, $ve41aac3b363ca7b963226f92ecda32d5); $v216c92e7f92d45ebbf45c075ceae8c05 = $v7ae7003da59ae71dcc9f8638ef50593d->getFieldsGroup($vb2cd255a43fd56eb1b203b521fa0ef69); $v216c92e7f92d45ebbf45c075ceae8c05->setTitle($v2726ffa1d364725a0e3166638138e8e7); $v216c92e7f92d45ebbf45c075ceae8c05->commit(); } if (!$v6184026d3eb247fb90d471744679ece5['field_type']) { $v6184026d3eb247fb90d471744679ece5['field_type'] = "string"; } $v1e3f04102267eaf5e8d0ca424fd5c561 = $this->getFieldTypeId($v6184026d3eb247fb90d471744679ece5['field_type'], $v6184026d3eb247fb90d471744679ece5['is_multiple']); if ($v1e3f04102267eaf5e8d0ca424fd5c561 === false) { continue; } $v6184026d3eb247fb90d471744679ece5['name'] = (string) $v6184026d3eb247fb90d471744679ece5['name']; if (!$v6184026d3eb247fb90d471744679ece5['name']) { $v6184026d3eb247fb90d471744679ece5['name'] = translit::convert($v6184026d3eb247fb90d471744679ece5['title']); } $v6184026d3eb247fb90d471744679ece5['name'] = translit::convert($v6184026d3eb247fb90d471744679ece5['name']); if ($v87306dd4235ed712ebc07fe169b76f83) { if (umiImportRelations::getInstance()->getNewFieldId($this->source_id, $v87306dd4235ed712ebc07fe169b76f83, $v6184026d3eb247fb90d471744679ece5['name'])) { continue; } } if ($v6184026d3eb247fb90d471744679ece5['field_type'] == "relation") { $v051369818a8073bba5feeb0e957eb308 = self::getAutoGuideId($v6184026d3eb247fb90d471744679ece5['title']); } else { $v051369818a8073bba5feeb0e957eb308 = false; } $v3aabf39f2d943fa886d86dcbbee4d910 = umiFieldsCollection::getInstance()->addField($v6184026d3eb247fb90d471744679ece5['name'], $v6184026d3eb247fb90d471744679ece5['title'], $v1e3f04102267eaf5e8d0ca424fd5c561, $v6184026d3eb247fb90d471744679ece5['is_public'], false); $v06e3d36fa30cea095545139854ad1fb9 = umiFieldsCollection::getInstance()->getField($v3aabf39f2d943fa886d86dcbbee4d910); $v06e3d36fa30cea095545139854ad1fb9->setTip($v6184026d3eb247fb90d471744679ece5['tip']); if ($v051369818a8073bba5feeb0e957eb308) { $v06e3d36fa30cea095545139854ad1fb9->setGuideId($v051369818a8073bba5feeb0e957eb308); } $v06e3d36fa30cea095545139854ad1fb9->commit(); $v216c92e7f92d45ebbf45c075ceae8c05->attachField($v3aabf39f2d943fa886d86dcbbee4d910); if ($v87306dd4235ed712ebc07fe169b76f83) { umiImportRelations::getInstance()->setFieldIdRelation($this->source_id, $v87306dd4235ed712ebc07fe169b76f83, $v6184026d3eb247fb90d471744679ece5['name'], $v3aabf39f2d943fa886d86dcbbee4d910); } } }
public function readDataBlock() { $v8c7dd922ad47494fc02c388e12c00eac = new umiFile($this->file_path); if ($v8c7dd922ad47494fc02c388e12c00eac) { $this->sourceName = $v8c7dd922ad47494fc02c388e12c00eac->getFileName(); } $this->relations = umiImportRelations::getInstance(); $this->relations->addNewSource($this->sourceName); $v9a09b4dfda82e3e665e31092d1c3ec8d = new DOMDocument("1.0", "utf-8"); $v9a09b4dfda82e3e665e31092d1c3ec8d->formatOutput = XML_FORMAT_OUTPUT; $v63a9f0ea7bb98050796b649e85481845 = $this->createGrid($v9a09b4dfda82e3e665e31092d1c3ec8d); $vb3b32a2d422265cd25c3323ed0157f81 = $v9a09b4dfda82e3e665e31092d1c3ec8d->createElement('pages'); $v63a9f0ea7bb98050796b649e85481845->appendChild($vb3b32a2d422265cd25c3323ed0157f81); $vb81ca7c0ccaa77e7aa91936ab0070695 = $v9a09b4dfda82e3e665e31092d1c3ec8d->createElement('hierarchy'); $v63a9f0ea7bb98050796b649e85481845->appendChild($vb81ca7c0ccaa77e7aa91936ab0070695); $ve1260894f59eeae98c8440899de4df8d = fopen($this->file_path, "r"); if ($ve1260894f59eeae98c8440899de4df8d) { $v7aa28ed115707345d0274032757e8991 = true; } else { $v7aa28ed115707345d0274032757e8991 = false; } $v4757fe07fd492a8be0ea6a760d683d6e = 0; $v95723b5e620e47cf613462b9f293282a = 0; while ($v7aa28ed115707345d0274032757e8991 && ($vb45cffe084dd3d20d928bee85e7b0f21 = fgets($ve1260894f59eeae98c8440899de4df8d))) { if (substr_count($vb45cffe084dd3d20d928bee85e7b0f21, '"') % 2 != 0) { $v132ae73e31f76d8b94f87fe5ccfe28c9 = false; while (!feof($ve1260894f59eeae98c8440899de4df8d) && !$v132ae73e31f76d8b94f87fe5ccfe28c9) { $vb45cffe084dd3d20d928bee85e7b0f21 .= fgets($ve1260894f59eeae98c8440899de4df8d); if (substr_count($vb45cffe084dd3d20d928bee85e7b0f21, '"') % 2 == 0) { $v132ae73e31f76d8b94f87fe5ccfe28c9 = true; } } } $vb45cffe084dd3d20d928bee85e7b0f21 = html_entity_decode($vb45cffe084dd3d20d928bee85e7b0f21, ENT_QUOTES, 'cp1251'); $vb45cffe084dd3d20d928bee85e7b0f21 = preg_replace("/([^;])\"\"/s", "\$1'*//*'", $vb45cffe084dd3d20d928bee85e7b0f21); preg_match_all("/\"(.*?)\"/s", $vb45cffe084dd3d20d928bee85e7b0f21, $v9c28d32df234037773be184dbdafc274); foreach ($v9c28d32df234037773be184dbdafc274[0] as $v2150fd65034a9bcdb357943b3900a918) { $vcd98ed9d0c33939793e2a0fc9400fc2b = str_replace(";", "'////'", $v2150fd65034a9bcdb357943b3900a918); $vb45cffe084dd3d20d928bee85e7b0f21 = str_replace($v2150fd65034a9bcdb357943b3900a918, $vcd98ed9d0c33939793e2a0fc9400fc2b, $vb45cffe084dd3d20d928bee85e7b0f21); } $vb45cffe084dd3d20d928bee85e7b0f21 = preg_replace("/(.+);\$/s", "\$1", trim($vb45cffe084dd3d20d928bee85e7b0f21)); $v7f2db423a49b305459147332fb01cf87 = explode(";", $vb45cffe084dd3d20d928bee85e7b0f21); $v4757fe07fd492a8be0ea6a760d683d6e++; foreach ($v7f2db423a49b305459147332fb01cf87 as $v3c6e0b8a9c15224a8228b9a98ca1531d => $v2063c1608d6e0baf80249c42e2be5804) { $v2063c1608d6e0baf80249c42e2be5804 = iconv('windows-1251', 'utf-8//IGNORE', $v2063c1608d6e0baf80249c42e2be5804); $v2063c1608d6e0baf80249c42e2be5804 = str_replace("'////'", ";", $v2063c1608d6e0baf80249c42e2be5804); $v2063c1608d6e0baf80249c42e2be5804 = str_replace("'*//*'", '"', $v2063c1608d6e0baf80249c42e2be5804); $v2063c1608d6e0baf80249c42e2be5804 = preg_replace("/^\"(.*)\"\$/s", "\$1", $v2063c1608d6e0baf80249c42e2be5804); $v2063c1608d6e0baf80249c42e2be5804 = trim($v2063c1608d6e0baf80249c42e2be5804); $v7f2db423a49b305459147332fb01cf87[$v3c6e0b8a9c15224a8228b9a98ca1531d] = $v2063c1608d6e0baf80249c42e2be5804; } if ($v4757fe07fd492a8be0ea6a760d683d6e < 4) { foreach ($v7f2db423a49b305459147332fb01cf87 as $v3c6e0b8a9c15224a8228b9a98ca1531d => $v2063c1608d6e0baf80249c42e2be5804) { if ($v4757fe07fd492a8be0ea6a760d683d6e == 1) { $this->names[$v3c6e0b8a9c15224a8228b9a98ca1531d] = $v2063c1608d6e0baf80249c42e2be5804; } elseif ($v4757fe07fd492a8be0ea6a760d683d6e == 2) { $this->titles[$v3c6e0b8a9c15224a8228b9a98ca1531d] = $v2063c1608d6e0baf80249c42e2be5804; } elseif ($v4757fe07fd492a8be0ea6a760d683d6e == 3) { $this->types[$v3c6e0b8a9c15224a8228b9a98ca1531d] = $v2063c1608d6e0baf80249c42e2be5804; } } } else { if ($v4757fe07fd492a8be0ea6a760d683d6e - 4 < $this->offset) { continue; } if ($v95723b5e620e47cf613462b9f293282a + 1 > $this->block_size) { break; } $v95723b5e620e47cf613462b9f293282a++; $this->addElementInfo($v9a09b4dfda82e3e665e31092d1c3ec8d, $v7f2db423a49b305459147332fb01cf87); } } if (feof($ve1260894f59eeae98c8440899de4df8d)) { $v7aa28ed115707345d0274032757e8991 = false; } $this->offset += $v95723b5e620e47cf613462b9f293282a; if (!$v7aa28ed115707345d0274032757e8991) { $this->complete = true; } return $v9a09b4dfda82e3e665e31092d1c3ec8d; }