public function import(\SimpleXMLElement $sx) { if (isset($sx->gatheringitemtemplates)) { foreach ($sx->gatheringitemtemplates->gatheringitemtemplate as $at) { $pkg = static::getPackageObject($at['package']); $type = Type::getByHandle((string) $at['type']); $gatHasCustomClass = false; $gatForceDefault = false; $gatFixedSlotWidth = 0; $gatFixedSlotHeight = 0; if ($at['has-custom-class']) { $gatHasCustomClass = true; } if ($at['force-default']) { $gatForceDefault = true; } if ($at['fixed-slot-width']) { $gatFixedSlotWidth = (string) $at['fixed-slot-width']; } if ($at['fixed-slot-height']) { $gatFixedSlotHeight = (string) $at['fixed-slot-height']; } $template = Template::add($type, (string) $at['handle'], (string) $at['name'], $gatFixedSlotWidth, $gatFixedSlotHeight, $gatHasCustomClass, $gatForceDefault, $pkg); foreach ($at->children() as $fe) { $feo = Feature::getByHandle((string) $fe['handle']); if (is_object($feo)) { $template->addGatheringItemTemplateFeature($feo); } } } } }
public function exportAll() { $this->x = $this->getXMLRoot(); // First, attribute categories AttributeKeyCategory::exportList($this->x); // Features Feature::exportList($this->x); FeatureCategory::exportList($this->x); ConversationEditor::exportList($this->x); ConversationRatingType::exportList($this->x); // composer PageTypePublishTargetType::exportList($this->x); PageTypeComposerControlType::exportList($this->x); PageType::exportList($this->x); // attribute types AttributeType::exportList($this->x); // then block types BlockTypeList::exportList($this->x); // now block type sets (including user) BlockTypeSet::exportList($this->x); // gathering GatheringDataSource::exportList($this->x); GatheringItemTemplate::exportList($this->x); // now attribute keys (including user) AttributeKey::exportList($this->x); // now attribute keys (including user) AttributeSet::exportList($this->x); PageTemplate::exportList($this->x); // now theme PageTheme::exportList($this->x); // now packages PackageList::export($this->x); // permission access entity types PermissionAccessEntityType::exportList($this->x); // now task permissions PermissionKey::exportList($this->x); // workflow types WorkflowType::exportList($this->x); // now jobs Job::exportList($this->x); // now single pages $singlepages = $this->x->addChild("singlepages"); $db = Loader::db(); $r = $db->Execute('select cID from Pages where cFilename is not null and cFilename <> "" and cID not in (select cID from Stacks) order by cID asc'); while ($row = $r->FetchRow()) { $pc = Page::getByID($row['cID'], 'RECENT'); $pc->export($singlepages); } // now stacks/global areas StackList::export($this->x); // now content pages $this->exportPages($this->x); SystemCaptchaLibrary::exportList($this->x); \Concrete\Core\Sharing\SocialNetwork\Link::exportList($this->x); \Concrete\Core\Page\Feed::exportList($this->x); \Concrete\Core\File\Image\Thumbnail\Type\Type::exportList($this->x); Tree::exportList($this->x); }
public function import(\SimpleXMLElement $sx) { if (isset($sx->features)) { foreach ($sx->features->feature as $fea) { $feHasCustomClass = false; if ($fea['has-custom-class']) { $feHasCustomClass = true; } $pkg = static::getPackageObject($fea['package']); $fx = Feature::add((string) $fea['handle'], (string) $fea['score'], $feHasCustomClass, $pkg); } } }
public function getBlockTypeFeatureObjects() { if (!isset($this->btFeatureObjects)) { $this->btFeatureObjects = array(); foreach ($this->btFeatures as $feHandle) { $fe = Feature::getByHandle($feHandle); if (is_object($fe)) { $this->btFeatureObjects[] = $fe; } } } return $this->btFeatureObjects; }
public function addFeature(Feature $fe) { $db = Loader::db(); $db->Replace('CollectionVersionFeatures', array('cID' => $this->getCollectionID(), 'cvID' => $this->getVersionID(), 'feID' => $fe->getFeatureID()), array('cID', 'cvID', 'feID'), true); }
/** * Returns an array of package items (e.g. blocks, themes) */ public function getPackageItems() { $items = array(); $items['attribute_categories'] = AttributeKeyCategory::getListByPackage($this); $items['permission_categories'] = PermissionKeyCategory::getListByPackage($this); $items['permission_access_entity_types'] = PermissionAccessEntityType::getListByPackage($this); $items['attribute_keys'] = AttributeKey::getListByPackage($this); $items['attribute_sets'] = AttributeSet::getListByPackage($this); $items['group_sets'] = GroupSet::getListByPackage($this); $items['page_types'] = PageType::getListByPackage($this); $items['page_templates'] = PageTemplate::getListByPackage($this); $items['mail_importers'] = MailImporter::getListByPackage($this); $items['gathering_item_template_types'] = GatheringItemTemplateType::getListByPackage($this); $items['gathering_item_templates'] = GatheringItemTemplate::getListByPackage($this); $items['gathering_data_sources'] = GatheringDataSource::getListByPackage($this); $items['features'] = Feature::getListByPackage($this); $items['feature_categories'] = FeatureCategory::getListByPackage($this); $btl = new BlockTypeList(); $btl->filterByPackage($this); $blocktypes = $btl->get(); $items['block_types'] = $blocktypes; $items['block_type_sets'] = BlockTypeSet::getListByPackage($this); $items['page_themes'] = PageTheme::getListByPackage($this); $items['permissions'] = PermissionKey::getListByPackage($this); $items['single_pages'] = SinglePage::getListByPackage($this); $items['attribute_types'] = AttributeType::getListByPackage($this); $items['captcha_libraries'] = SystemCaptchaLibrary::getListByPackage($this); $items['content_editor_snippets'] = SystemContentEditorSnippet::getListByPackage($this); $items['conversation_editors'] = ConversationEditor::getListByPackage($this); $items['conversation_rating_types'] = ConversationRatingType::getListByPackage($this); $items['page_type_publish_target_types'] = PageTypePublishTargetType::getListByPackage($this); $items['page_type_composer_control_types'] = PageTypeComposerControlType::getListByPackage($this); $items['antispam_libraries'] = SystemAntispamLibrary::getListByPackage($this); $items['community_point_actions'] = UserPointAction::getListByPackage($this); $items['jobs'] = Job::getListByPackage($this); $items['workflow_types'] = WorkflowType::getListByPackage($this); ksort($items); return $items; }
public function getFeatureObject() { return Feature::getByID($this->feID); }
public function getGatheringItemTemplateFeatureObjects() { $db = Loader::db(); $r = $db->Execute('select feID from GatheringItemTemplateFeatures where gatID = ?', array($this->getGatheringItemTemplateID())); $features = array(); while ($row = $r->FetchRow()) { $fe = Feature::getByID($row['feID']); if (is_object($fe)) { $features[] = $fe; } } return $features; }