public function view() { $ct = Type::getByDefaultsPage($this->page); $template = Template::getByID($this->page->getPageTemplateID()); $pl = new PageList(); $pl->filterByPageTypeID($ct->getPageTypeID()); $pl->filterByPageTemplate($template); $pl->ignorePermissions(); $this->set('total', $pl->getTotalResults()); }
public function getResults(Request $request) { $list = \Concrete\Core\Page\Template::getList(); $items = array(); foreach ($list as $t) { $item = new \PortlandLabs\Concrete5\MigrationTool\Entity\Export\PageTemplate(); $item->setItemId($t->getPageTemplateID()); $items[] = $item; } return $items; }
public function import(\SimpleXMLElement $sx) { if (isset($sx->pagetemplates)) { foreach ($sx->pagetemplates->pagetemplate as $pt) { $pkg = static::getPackageObject($pt['package']); $ptt = Template::getByHandle($pt['handle']); if (!is_object($ptt)) { $ptt = Template::add((string) $pt['handle'], (string) $pt['name'], (string) $pt['icon'], $pkg, (string) $pt['internal']); } } } }
public function getPageTemplates() { $ctArray = PageTemplate::getList(''); $pageTemplates = array(); foreach ($ctArray as $ct) { $pms = new AddSubpagePageKey($ct); $pp = $pms->validate(); if ($pp) { $pageTemplates[$ct->getPageTemplateID()] = $ct->getPageTemplateName(); } } return $pageTemplates; }
public function submit() { $e = $this->app->make('error'); $pagetype = Type::getByID($this->request->request->get('ptID')); if (is_object($pagetype)) { $configuredTarget = $pagetype->getPageTypePublishTargetObject(); $cParentID = $configuredTarget->getPageTypePublishTargetConfiguredTargetParentPageID(); if (!$cParentID) { $cParentID = $this->request->request->get('cParentID'); } } $parent = Page::getByID($cParentID); $template = null; if ($this->request->request->get('ptComposerPageTemplateID')) { $template = Template::getByID($this->request->request->get('ptComposerPageTemplateID')); } if (!is_object($template)) { $template = $pagetype->getPageTypeDefaultPageTemplateObject(); } if (is_object($pagetype)) { $validator = $pagetype->getPageTypeValidatorObject(); $e->add($validator->validateCreateDraftRequest($template)); $e->add($validator->validatePublishLocationRequest($parent)); if ($this->request->request('addPageComposeAction') == 'publish') { $e->add($validator->validatePublishDraftRequest()); } } $pr = new EditResponse(); $pr->setError($e); if (!$e->has()) { $d = $pagetype->createDraft($template); $d->setPageDraftTargetParentPageID($cParentID); $saver = $pagetype->getPageTypeSaverObject(); $saver->saveForm($d); if ($this->request->request('addPageComposeAction') == 'publish' || $this->request->request('addPageComposeAction') == 'schedule') { $publishDateTime = false; if ($this->request->request->get('addPageComposeAction') == 'schedule') { $dateTime = new DateTime(); $publishDateTime = $dateTime->translate('check-in-scheduler'); } $pagetype->publish($d, $publishDateTime); $pr->setAdditionalDataAttribute('cParentID', $cParentID); $pr->setMessage(t('Page Added Successfully.')); } else { $pr->setRedirectURL($d->getCollectionLink(true)); } } $pr->outputJSON(); }
public function submit() { $pagetype = Type::getByID($this->request->request->get('ptID')); if (is_object($pagetype)) { $configuredTarget = $pagetype->getPageTypePublishTargetObject(); $cParentID = $configuredTarget->getPageTypePublishTargetConfiguredTargetParentPageID(); if (!$cParentID) { $cParentID = $this->request->request->get('cParentID'); } } list($e, $pagetype, $parent) = $this->checkPermissions( $this->request->request->get('ptID'), $cParentID ); if ($this->request->request->get('ptComposerPageTemplateID')) { $template = Template::getByID($this->request->request->get('ptComposerPageTemplateID')); } if (!is_object($template)) { $template = $pagetype->getPageTypeDefaultPageTemplateObject(); } if (is_object($pagetype)) { $validator = $pagetype->getPageTypeValidatorObject(); $e->add($validator->validateCreateDraftRequest($template)); if ($this->request->request('addPageComposeAction') == 'publish') { $e->add($validator->validatePublishDraftRequest()); } } $pr = new EditResponse(); $pr->setError($e); if (!$e->has()) { $d = $pagetype->createDraft($template); $d->setPageDraftTargetParentPageID($cParentID); $pagetype->savePageTypeComposerForm($d); if ($this->request->request('addPageComposeAction') == 'publish') { $pagetype->publish($d); $pr->setAdditionalDataAttribute('cParentID', $cParentID); $pr->setMessage(t('Page Added Successfully.')); } else { $pr->setRedirectURL($d->getCollectionLink(true)); } } $pr->outputJSON(); }
public function execute(Batch $batch) { $templates = $batch->getObjectCollection('page_template'); if (!$templates) { return; } foreach ($templates->getTemplates() as $template) { if (!$template->getPublisherValidator()->skipItem()) { $pkg = null; if ($template->getPackage()) { $pkg = \Package::getByHandle($template->getPackage()); } Template::add($template->getHandle(), $template->getName(), $template->getIcon(), $pkg, $template->getIsInternal()); } } }
public function execute(Batch $batch) { $types = $batch->getObjectCollection('page_type'); /** * @var \PortlandLabs\Concrete5\MigrationTool\Entity\Import\PageType\PageType */ if (!$types) { return; } foreach ($types->getTypes() as $type) { if (!$type->getPublisherValidator()->skipItem()) { $pkg = null; if ($type->getPackage()) { $pkg = \Package::getByHandle($type->getPackage()); } $defaultTemplate = Template::getByHandle($type->getDefaultTemplate()); $templates = array(); if ($type->getAllowedTemplates() == 'C' || $type->getAllowedTemplates() == 'X') { foreach ($type->getTemplates() as $templateHandle) { $templates[] = Template::getByHandle($templateHandle); } } $data = array('handle' => $type->getHandle(), 'name' => $type->getName(), 'defaultTemplate' => $defaultTemplate, 'allowedtempates' => $type->getAllowedTemplates(), 'internal' => $type->getIsInternal(), 'ptLaunchInComposer' => $type->getLaunchInComposer(), 'ptIsFrequentlyAdded' => $type->getIsFrequentlyAdded(), 'templates' => $templates); $pageType = \Concrete\Core\Page\Type\Type::add($data, $pkg); foreach ($type->getLayoutSets() as $set) { $layoutSet = $pageType->addPageTypeComposerFormLayoutSet($set->getName(), $set->getDescription()); /** * @var \PortlandLabs\Concrete5\MigrationTool\Entity\Import\PageType\ComposerFormLayoutSetControl */ foreach ($set->getControls() as $controlEntity) { $controlType = \Concrete\Core\Page\Type\Composer\Control\Type\Type::getByHandle($controlEntity->getHandle()); $control = $controlType->configureFromImportHandle($controlEntity->getItemIdentifier()); $setControl = $control->addToPageTypeComposerFormLayoutSet($layoutSet, true); $setControl->updateFormLayoutSetControlRequired($controlEntity->getIsRequired()); $setControl->updateFormLayoutSetControlCustomTemplate($controlEntity->getCustomTemplate()); $setControl->updateFormLayoutSetControlCustomTemplate($controlEntity->getCustomLabel()); $setControl->updateFormLayoutSetControlDescription($controlEntity->getDescription()); } } } } }
/** * Filters by page template. * * @param mixed $ptHandle */ public function filterByPageTemplate(Template $template) { $this->query->andWhere('cv.pTemplateID = :pTemplateID'); $this->query->setParameter('pTemplateID', $template->getPageTemplateID()); }
/** * {@inheritDoc} */ public function getPageTemplateIconImage() { $this->__initializer__ && $this->__initializer__->__invoke($this, 'getPageTemplateIconImage', array()); return parent::getPageTemplateIconImage(); }
protected function installDesktops() { $this->output(t('Installing Desktops...')); $template = Template::getByHandle('desktop'); if (!is_object($template)) { Template::add('desktop', t('Desktop'), FILENAME_PAGE_TEMPLATE_DEFAULT_ICON, null, true); } $type = \Concrete\Core\Page\Type\Type::getByHandle('core_desktop'); if (!is_object($type)) { \Concrete\Core\Page\Type\Type::add(array('handle' => 'core_desktop', 'name' => 'Desktop', 'internal' => true)); } $category = Category::getByHandle('collection')->getController(); $attribute = CollectionKey::getByHandle('is_desktop'); if (!is_object($attribute)) { $key = new PageKey(); $key->setAttributeKeyHandle('is_desktop'); $key->setAttributeKeyName('Is Desktop'); $key->setIsAttributeKeyInternal(true); $category->add('boolean', $key); } $attribute = CollectionKey::getByHandle('desktop_priority'); if (!is_object($attribute)) { $key = new PageKey(); $key->setAttributeKeyHandle('desktop_priority'); $key->setAttributeKeyName('Desktop Priority'); $key->setIsAttributeKeyInternal(true); $category->add('number', $key); } $desktop = Page::getByPath('/dashboard/welcome'); if (is_object($desktop) && !$desktop->isError()) { $desktop->moveToTrash(); } $desktop = Page::getByPath('/desktop'); if (is_object($desktop) && !$desktop->isError()) { $desktop->moveToTrash(); } $page = \Page::getByPath("/account/messages"); if (is_object($page) && !$page->isError()) { $page->moveToTrash(); } // Private Messages tweak SinglePage::add('/account/messages'); $ci = new ContentImporter(); $ci->importContentFile(DIR_BASE_CORE . '/config/install/upgrade/desktops.xml'); $desktop = Page::getByPath('/dashboard/welcome'); $desktop->movePageDisplayOrderToTop(); \Config::save('concrete.misc.login_redirect', 'DESKTOP'); }
protected function rescanPageTypePageTemplateDefaultPages() { $db = Loader::db(); $templates = $this->getPageTypePageTemplateObjects(); $templateIDs = array(); foreach ($templates as $template) { $templateIDs[] = $template->getPageTemplateID(); } $existingDefaultTemplateIDs = $db->GetCol('select pTemplateID from PageTypePageTemplateDefaultPages where ptID = ?', array($this->getPageTypeID())); foreach ($existingDefaultTemplateIDs as $existingPageTemplateID) { if (!in_array($existingPageTemplateID, $templateIDs)) { $existingPageTemplate = Template::getByID($existingPageTemplateID); if (is_object($existingPageTemplate)) { $c = $this->getPageTypePageTemplateDefaultPageObject($existingPageTemplate); if (is_object($c)) { $c->delete(); } } $db->Execute('delete from PageTypePageTemplateDefaultPages where pTemplateID = ? and ptID = ?', array($existingPageTemplateID, $this->getPageTypeID())); } } }
public function getPackageItems(Package $package) { Template::getListByPackage($package); }
public function getTargetItemContentObject(TargetItemInterface $targetItem) { return Template::getByHandle($targetItem->getItemID()); }
/** * render Add Blog dialog */ public function render() { $this->requireAsset('redactor'); $this->requireAsset('core/file-manager'); $blogify = Loader::helper('blogify'); $settings = $blogify->getBlogSettings(); $blogSectionList = new PageList(); $blogSectionList->filter(false, "ak_blog_section = 1"); $blogSectionList->sortBy('cvName', 'asc'); $tmpSections = $blogSectionList->get(); $sections = array(); foreach ($tmpSections as $_c) { $pt = CollectionType::getByID($_c->getCollectionTypeID()); $cmp = new \Permissions($pt); $pp = $cmp->canAddPageType(); if ($pp) { $sections[$_c->getCollectionID()] = $_c->getCollectionName(); } } $ctArray = PageTemplate::getList(''); $pageTemplates = array(); foreach ($ctArray as $ct) { $pms = new AddSubpagePageKey($ct); $pp = $pms->validate(); if ($pp) { $pageTemplates[$ct->getPageTemplateID()] = $ct->getPageTemplateName(); } } if ($_REQUEST['postID']) { $keys = array_keys($sections); $keys[] = -1; $current_page = Page::getByID($_REQUEST['postID']); $date = $current_page->getCollectionDatePublic(); $canonical_parent_id = $blogify->getCanonicalParent($date, $current_page); $cParentID = $canonical_parent_id; if (in_array($canonical_parent_id, $keys)) { $this->blog = $current_page; } } if (is_object($this->blog)) { $blogTitle = $this->blog->getCollectionName(); $blogDescription = $this->blog->getCollectionDescription(); $blogDate = $this->blog->getCollectionDatePublic(); $ptID = $this->blog->getPageTemplateID(); $blogBody = ''; $eb = $this->blog->getBlocks('Main'); foreach ($eb as $b) { if ($b->getBlockTypeHandle() == 'content' || $b->getBlockTypeHandle() == 'core_page_type_composer_control_output') { $blogBody = $b->getInstance()->getContent(); } } echo "<div class=\"alert alert-success\"><span class=\"tooltip icon edit\"></span> " . t('You are now editing') . " <b><u>{$blogTitle}</u></b></div>"; $task = 'editthis'; $buttonText = t('Update Blog Entry'); $title = 'Update'; } else { $task = 'addthis'; $buttonText = t('Add Blog Entry'); $title = 'Add'; } Loader::PackageElement('tools/add_blog', 'problog', array('blog' => $this->blog, 'blogTitle' => $blogTitle, 'blogDescription' => $blogDescription, 'blogBody' => $blogBody, 'sections' => $sections, 'pageTemplates' => $pageTemplates, 'buttonText' => $buttonText, 'ptID' => $ptID, 'settings' => $settings)); }
public function getContentObject() { return Template::getByHandle($this->getReference()); }
public function skipItem() { $template = Template::getByHandle($this->object->getHandle()); return is_object($template); }
<?php defined('C5_EXECUTE') or die(_("Access Denied.")); use Concrete\Core\Page\Template; $tmplt = Template::getByHandle('right_sidebar'); echo '<h3>' . t('Pre Install Checker') . '</h3>'; if ($tmplt && $tmplt->getPageTemplateID()) { echo '<div class="ccm-ui" id="ccm-dashboard-result-message">'; echo ' <div class="alert alert-success alert-dismissible">'; echo '<img src="' . ASSETS_URL_IMAGES . '/icons/success.png" width="16" height="16"/> <strong> ' . t('Excellent! Your theme has a right_sidebar!') . '</strong>'; echo '<br/><br/><p>' . t('Everything looks good! Go ahead and install ProBlog!') . '</p>'; echo ' </div>'; echo '</div>'; } else { echo '<div class="ccm-ui" id="ccm-dashboard-result-message">'; echo ' <div class="alert alert-danger alert-dismissible">'; echo '<img src="' . ASSETS_URL_IMAGES . '/icons/error.png" width="16" height="16"/> <strong> ' . t('No right_sidebar page template found') . '</strong>'; echo '<br/><br/><p>' . t('Danger Will Robinson!!! Your theme must have a right_sidebar page template to install!!!') . '</p>'; echo '<br/><p>' . t('Please <b><u>cancel</u></b> and register a right_sidebar page template to your theme before attempting to install ProBlog!') . '</p>'; echo ' </div>'; echo '</div>'; }
public function install_pb_settings() { $tmplt = Template::getByHandle('right_sidebar'); $serch = Page::getByPath('/blogsearch'); $args = array('tweet' => 1, 'fb_like' => 1, 'google' => 0, 'addthis' => 1, 'author' => 0, 'comments' => 1, 'trackback' => 1, 'canonical' => 1, 'breakSyntax' => '<hr id="horizontalrule">', 'search_path' => $serch->getCollectionID(), 'icon_color' => 'brown', 'thumb_width' => '110', 'thumb_height' => '120', 'pageTemplate' => $tmplt->getPageTemplateID()); $db = Loader::db(); $db->Execute("DELETE FROM btProBlogSettings"); $db->insert('btProBlogSettings', $args); }
public function import(\SimpleXMLElement $sx) { if (isset($sx->pages)) { $nodes = array(); $i = 0; foreach ($sx->pages->page as $p) { $p->originalPos = $i; $nodes[] = $p; ++$i; } usort($nodes, array('static', 'setupPageNodeOrder')); $siteTree = null; if (isset($this->home)) { $home = $this->home; $siteTree = $this->home->getSiteTreeObject(); } else { $home = Page::getByID(HOME_CID, 'RECENT'); } foreach ($nodes as $px) { $pkg = static::getPackageObject($px['package']); $data = array(); $user = (string) $px['user']; if ($user != '') { $ui = UserInfo::getByUserName($user); if (is_object($ui)) { $data['uID'] = $ui->getUserID(); } else { $data['uID'] = USER_SUPER_ID; } } $cDatePublic = (string) $px['public-date']; if ($cDatePublic) { $data['cDatePublic'] = $cDatePublic; } $data['pkgID'] = 0; if (is_object($pkg)) { $data['pkgID'] = $pkg->getPackageID(); } $args = array(); $ct = Type::getByHandle($px['pagetype']); $template = Template::getByHandle($px['template']); if ($px['path'] != '') { // not home page $page = Page::getByPath($px['path'], 'RECENT', $siteTree); if (!is_object($page) || $page->isError()) { $lastSlash = strrpos((string) $px['path'], '/'); $parentPath = substr((string) $px['path'], 0, $lastSlash); $data['cHandle'] = substr((string) $px['path'], $lastSlash + 1); if (!$parentPath) { $parent = $home; } else { $parent = Page::getByPath($parentPath, 'RECENT', $siteTree); } $page = $parent->add($ct, $data); } } else { $page = $home; } $args['cName'] = $px['name']; $args['cDescription'] = $px['description']; if (is_object($ct)) { $args['ptID'] = $ct->getPageTypeID(); } $args['pTemplateID'] = $template->getPageTemplateID(); $page->update($args); } } }
public function add_content_section() { if (!$this->token->validate('add_content_section')) { $this->error->add($this->token->getErrorMessage()); } if (!$this->request->request->get('msLanguage')) { $this->error->add(t('You must specify a valid language.')); } if (!$this->request->request->get('msCountry')) { $this->error->add(t('You must specify a valid country.')); } if (!$this->request->request->get('urlSlug')) { $this->error->add(t('You must specify a valid URL Slug for the home page.')); } $template = null; if ($this->request->request->has('template')) { $template = Template::getByID($this->request->request->get('template')); } if (!is_object($template)) { $this->error->add(t('You must specify a valid page template.')); } if ($this->post('msLanguage')) { $combination = $this->post('msLanguage') . '_' . $this->post('msCountry'); foreach ($this->site->getLocales() as $locale) { if ($locale->getLocale() == $combination) { $this->error->add(t('This language/region combination already exists.')); } } } if (!$this->error->has()) { $service = new Service($this->entityManager); $locale = $service->add($this->getSite(), $this->request->request->get('msLanguage'), $this->request->request->get('msCountry')); $service->addHomePage($locale, $template, $this->request->request->get('homePageName'), $this->request->request->get('urlSlug')); $this->flash('success', t('Locale added successfully.')); return new JsonResponse($locale); } else { return new JsonResponse($this->error); } }
public function getPageTemplate() { return PageTemplate::getByID($this->pTemplateID); }
public function getPageTemplateIconImage() { return parent::getPageTemplateIconImage(); }