public function publish() { if ($this->validateAction()) { $r = $this->save(); $ptr = $r[0]; $pagetype = $r[1]; $outputControls = $r[2]; $c = $this->page; $e = $ptr->error; $validator = $pagetype->getPageTypeValidatorObject(); if ($this->page->isPageDraft()) { $target = \Page::getByID($this->page->getPageDraftTargetParentPageID()); } else { $target = \Page::getByID($this->page->getCollectionParentID()); } $e->add($validator->validatePublishLocationRequest($target)); $e->add($validator->validatePublishDraftRequest($c)); $ptr->setError($e); if (!$e->has()) { $pagetype->publish($c); $ptr->setRedirectURL(Loader::helper('navigation')->getLinkToCollection($c)); } $ptr->outputJSON(); } else { throw new \Exception(t('Access Denied.')); } }
public function getByID($cID) { $c = \Page::getByID($cID); if ($c->getCollectionTypeHandle() == STACK_CATEGORY_PAGE_TYPE) { return $this->application->make('Concrete\\Core\\Page\\Stack\\Folder\\Folder', array($c)); } }
public function cancel(WorkflowProgress $wp) { $c = Page::getByID($this->getRequestedPageID()); $wpr = new WorkflowProgressResponse(); $wpr->setWorkflowProgressResponseURL(BASE_URL . DIR_REL . '/' . DISPATCHER_FILENAME . '?cID=' . $c->getCollectionID()); return $wpr; }
public function publish() { if ($this->validateAction()) { $r = $this->save(); $ptr = $r[0]; $pagetype = $r[1]; $outputControls = $r[2]; $c = $this->page; $e = $ptr->error; if (!$c->getPageDraftTargetParentPageID()) { $e->add(t('You must choose a page to publish this page beneath.')); } else { $target = \Page::getByID($c->getPageDraftTargetParentPageID()); $ppc = new \Permissions($target); $pagetype = $c->getPageTypeObject(); if (!$ppc->canAddSubCollection($pagetype)) { $e->add(t('You do not have permission to publish a page in this location.')); } } $validator = $pagetype->getPageTypeValidatorObject(); $e->add($validator->validatePublishDraftRequest($c)); $ptr->setError($e); if (!$e->has()) { $pagetype->publish($c); $ptr->setRedirectURL(Loader::helper('navigation')->getLinkToCollection($c)); } $ptr->outputJSON(); } else { throw new \Exception(t('Access Denied.')); } }
public function publish() { $r = $this->save(); $ptr = $r[0]; $pagetype = $r[1]; $outputControls = $r[2]; $c = $this->page; $e = Loader::helper('validation/error'); if (!$c->getPageDraftTargetParentPageID()) { $e->add(t('You must choose a page to publish this page beneath.')); } else { $target = \Page::getByID($c->getPageDraftTargetParentPageID()); $ppc = new \Permissions($target); if (!$ppc->canAddSubCollection($target)) { $e->add(t('You do not have permission to publish a page in this location.')); } } foreach ($outputControls as $oc) { if ($oc->isPageTypeComposerFormControlRequiredOnThisRequest()) { $r = $oc->validate(); if ($r instanceof \Concrete\Core\Error\Error) { $e->add($r); } } } $ptr->setError($e); if (!$e->has()) { $pagetype->publish($c); $ptr->setRedirectURL(Loader::helper('navigation')->getLinkToCollection($c)); } $ptr->outputJSON(); }
public function testThemeGridAreaLayoutContainer() { $layout = \Concrete\Core\Area\Layout\ThemeGridLayout::add(); $layout->addLayoutColumn()->setAreaLayoutColumnSpan(4); $column = $layout->addLayoutColumn(); $column->setAreaLayoutColumnSpan(2); $column->setAreaLayoutColumnOffset(2); $layout->addLayoutColumn()->setAreaLayoutColumnSpan(6); $elemental = \Concrete\Core\Page\Theme\Theme::add('elemental'); Page::addHomePage(); Core::make('cache/request')->disable(); $c = Page::getByID(1); $c->setTheme($elemental); $c = Page::getByID(1); $req = Request::getInstance(); $req->setCurrentPage($c); $layout = \Concrete\Core\Area\Layout\Layout::getByID(1); $this->assertInstanceOf('\\Concrete\\Core\\Area\\Layout\\ThemeGridLayout', $layout); $columns = $layout->getAreaLayoutColumns(); $this->assertEquals(3, count($columns)); $formatter = $layout->getFormatter(); $this->assertInstanceOf('\\Concrete\\Core\\Area\\Layout\\Formatter\\ThemeGridFormatter', $formatter); $this->assertEquals('<div class="row"></div>', (string) $formatter->getLayoutContainerHtmlObject()); $req->clearCurrentPage(); }
public function run() { $js = Loader::helper('json'); $pl = new PageList(); $pl->filterByCollectionTypeHandle('city'); $pages = $pl->get(); $updated = 0; $not = 0; echo "Loading city coordinates.. \n"; foreach ($pages as $page) { if (!trim($page->getAttribute('latlng')) || trim($page->getAttribute('latlng')) === ',') { $parent = Page::getByID($page->getCollectionParentID()); $city = "{$page->getCollectionName()}, {$parent->getCollectionName()}"; $cityLocation = file_get_contents("https://maps.google.com/maps/api/geocode/json?address=" . urlencode($city) . "&sensor=false&key=AIzaSyAvsH_wiFHJCuMPPuVifJ7QgaRCStKTdZM"); $responseObj = $js->decode($cityLocation); if ($responseObj->status != 'ZERO_RESULTS') { $page->setAttribute('latlng', $responseObj->results[0]->geometry->location->lat . "," . $responseObj->results[0]->geometry->location->lng); $updated++; } else { $not++; } } } return t("{$updated} cities geocoded, {$not} cities failed lookup."); }
public function view($nodeID = 1, $auxMessage = false) { $dh = Loader::helper('concrete/dashboard/sitemap'); if ($dh->canRead()) { $this->set('nodeID', $nodeID); $nodes = $dh->getSubNodes($nodeID, 1, false, false); $instanceID = time(); $this->set('listHTML', $dh->outputRequestHTML($instanceID, 'explore', false, $nodes)); $this->set('instanceID', $instanceID); } if (isset($_REQUEST['task']) && isset($_REQUEST['cNodeID'])) { $nc = Page::getByID($_REQUEST['cNodeID']); if ($_REQUEST['task'] == 'send_to_top') { $nc->movePageDisplayOrderToTop(); } else { if ($_REQUEST['task'] == 'send_to_bottom') { $nc->movePageDisplayOrderToBottom(); } } $this->redirect('/dashboard/sitemap/explore', $nc->getCollectionParentID(), 'order_updated'); } if ($auxMessage != false) { switch ($auxMessage) { case 'order_updated': $this->set('message', t('Sort order saved')); break; } } $this->set('dh', $dh); }
public function page() { //create the model object $cal = new Page(); //send the webclass $webClass = __CLASS__; //by pass the form $cmd = isset($_GET['cmd']) ? addslashes($_GET['cmd']) : 'read'; if ($cmd == "edit") { //Crud::createForm($obj,$webClass); //die('edit'); $id = isset($_GET['id']) ? addslashes($_GET['id']) : 0; if ($id) { $cal->getByID($id); } $mps['id'] = $id; $mps['obj'] = $cal; Mold::plugin("Page", "pageForm", $mps); exit; } $cid = addslashes($_GET['cid']); if ($cid != "") { $_SESSION['pageConID'] = $cid; } else { //unset($_SESSION['pageConID']); } $cal->read_filter_array = array("post_gallery_id" => $_SESSION['pageConID']); //echo $cid; //pr($cal); //run the crud utility Crud::run($cal, $webClass); //pr($mps); }
public function getTranslatedPages($page = false, $sans = false) { $langms = new MultilingualSection(); if ($page) { $ms = MultilingualSection::getByID($page->getCollectionID()); } else { $page = Page::getCurrentPage(); $ms = MultilingualSection::getCurrentSection(); } if (is_object($ms)) { $lang = $ms->getLocale(); } if ($sans) { $locales = self::getLocales($sans); } else { $locales = self::getLocales($lang); } $tpages = array(); foreach ($locales as $locale) { $langms->msLocale = $locale; $id = $langms->getTranslatedPageID($page); $transPage = Page::getByID($id); $transPage->locale = $locale; if ($id > 0) { $tpages[$locale] = $transPage; } } return $tpages; }
public function preview() { $request = \Request::getInstance(); $c = \Page::getByID($this->request->get('cID')); $cp = new \Permissions($c); if ($cp->canViewPageVersions()) { $c->loadVersionObject(\Core::make('helper/security')->sanitizeInt($_REQUEST['cvID'])); $spoofed_request = \Request::createFromGlobals(); if ($device_handle = $request->headers->get('x-device-handle')) { if ($device = \Core::make('device/manager')->get($device_handle)) { if ($agent = $device->getUserAgent()) { $spoofed_request->headers->set('User-Agent', $agent); } } } $spoofed_request->setCustomRequestUser(-1); $spoofed_request->setCurrentPage($c); \Request::setInstance($spoofed_request); $controller = $c->getPageController(); $controller->runTask('view', array()); $view = $controller->getViewObject(); $response = new \Response(); $content = $view->render(); // Reset just in case. \Request::setInstance($request); $response->setContent($content); $response->send(); exit; } }
function view() { $nextPage = $this->getNextCollection(); $previousPage = $this->getPreviousCollection(); $parentPage = Page::getByID(Page::getCurrentPage()->getCollectionParentID()); if ($this->linkStyle == 'page_name') { $nextLinkText = !$nextPage ? '' : $nextPage->getCollectionName(); $previousLinkText = !$previousPage ? '' : $previousPage->getCollectionName(); $parentLinkText = !$parentPage ? '' : $parentPage->getCollectionName(); } else { $nextLinkText = $this->nextLabel; $previousLinkText = $this->previousLabel; $parentLinkText = $this->parentLabel; } if ($this->showArrows) { $nextLinkText = $nextLinkText . ' »'; $previousLinkText = '« ' . $previousLinkText; } $this->set('nextCollection', $nextPage); $this->set('previousCollection', $previousPage); $this->set('parentCollection', $parentPage); $this->set('nextLinkText', $nextLinkText); $this->set('previousLinkText', $previousLinkText); $this->set('parentLinkText', $parentLinkText); }
public function action_post() { // happens through ajax $pagetype = PageType::getByID($this->ptID); if (is_object($pagetype) && $this->enablePostingFromGathering) { $ccp = new Permissions($pagetype); if ($ccp->canEditPageTypeInComposer()) { $ct = PageType::getByID($this->post('ptComposerPageTypeID')); $availablePageTypes = $pagetype->getComposerPageTypeObjects(); if (!is_object($ct) && count($availablePageTypes) == 1) { $ct = $availablePageTypes[0]; } $c = Page::getCurrentPage(); $e = $pagetype->validatePublishRequest($ct, $c); $r = new PageTypePublishResponse($e); if (!$e->has()) { $d = $pagetype->createDraft($ct); $d->setPageDraftTargetParentPageID($c->getCollectionID()); $d->saveForm(); $d->publish(); $nc = Page::getByID($d->getCollectionID(), 'RECENT'); $link = Core::make('helper/navigation')->getLinkToCollection($nc, true); $r->setRedirectURL($link); } $r->outputJSON(); } } exit; }
public function setPermissionObject(Block $b) { $this->permissionObject = $b; // if the area overrides the collection permissions explicitly (with a one on the override column) we check if ($b->overrideAreaPermissions()) { $this->permissionObjectToCheck = $b; } else { $a = $b->getBlockAreaObject(); if (is_object($a)) { if ($a->overrideCollectionPermissions()) { $this->permissionObjectToCheck = $a; } elseif ($a->getAreaCollectionInheritID()) { $mcID = $a->getAreaCollectionInheritID(); $mc = Page::getByID($mcID, 'RECENT'); $ma = Area::get($mc, $a->getAreaHandle()); if ($ma->overrideCollectionPermissions()) { $this->permissionObjectToCheck = $ma; } else { $this->permissionObjectToCheck = $ma->getAreaCollectionObject(); } } else { $this->permissionObjectToCheck = $a->getAreaCollectionObject(); } } else { $this->permissionObjectToCheck = Page::getCurrentPage(); } } }
public function save() { $this->verify($this->post('ctID')); if ($this->post('ctIncludeInComposer')) { switch ($this->post('ctComposerPublishPageMethod')) { case 'PARENT': $page = Page::getByID($this->post('ctComposerPublishPageParentID')); if ($page->isError()) { $this->error->add(t('Parent page not selected')); } else { $this->ct->saveComposerPublishTargetPage($page); } break; case 'PAGE_TYPE': $ct = CollectionType::getByID($this->post('ctComposerPublishPageTypeID')); $this->ct->saveComposerPublishTargetPageType($ct); break; default: $this->ct->saveComposerPublishTargetAll(); break; } if (!$this->error->has()) { $this->ct->saveComposerAttributeKeys($this->post('composerAKID')); $this->redirect('/dashboard/pages/types/composer', 'view', $this->ct->getCollectionTypeID(), 'updated'); } else { $this->view($this->ct->getCollectionTypeID()); } } else { $this->ct->resetComposerData(); $this->redirect("/dashboard/pages/types", "clear_composer"); } }
public function favorite() { header('Content-Type: application/json'); $u = new User(); $data = $this->post(); $pageID = (int) $this->get('id'); $p = \Page::getByID($pageID); if ($u->getUserID() && !$p->isError() && $p->isSystemPage() == false) { //If user favorited remove entry else add entry $db = Database::get(); $res = $db->GetRow("SELECT mpRelationID as rel FROM MultilingualPageRelations WHERE cID=?", array($pageID)); $relation = $res['rel']; // var_dump($relation); // $res = $db->GetAll("SELECT cID FROM MultilingualPageRelations WHERE mpRelationID=?",array($relation)); // var_dump($res); // if($res['rel']) // $res = $db->GetRow("SELECT Count(fav.cID) as num FROM MultilingualPageRelations mppr LEFT JOIN UserPageFavorites fav ON mppr.cID = fav.cID where uID = ? and mpRelationID = ?",array((int)$u->getUserID(),$rel)); $res = $db->GetRow("SELECT Count(cID) as num FROM UserPageFavorites WHERE uID=? and cID in (SELECT cID FROM MultilingualPageRelations WHERE mpRelationID=?)", array((int) $u->getUserID(), $relation)); // var_dump($res); if ($res['num'] > 0) { //Favorite Product $db->Execute('DELETE FROM UserPageFavorites WHERE cID in (SELECT cID FROM MultilingualPageRelations WHERE mpRelationID=?) and uID=?', array($relation, (int) $u->getUserID())); echo json_encode(array('status' => 'unfavorited')); } else { //Unfavorite Product $db->Execute('INSERT INTO UserPageFavorites(cID,uID) VALUES(?,?)', array($pageID, (int) $u->getUserID())); echo json_encode(array('status' => 'favorited')); } exit; } else { echo json_encode(array('status' => 'not_logged')); } }
public function setPermissionObject(Area $a) { $ax = $a; if ($a->isGlobalArea()) { $cx = Stack::getByName($a->getAreaHandle()); $a = Area::get($cx, STACKS_AREA_NAME); } $this->permissionObject = $a; // if the area overrides the collection permissions explicitly (with a one on the override column) we check if ($a->overrideCollectionPermissions()) { $this->permissionObjectToCheck = $a; } else { if ($a->getAreaCollectionInheritID() > 0) { // in theory we're supposed to be inheriting some permissions from an area with the same handle, // set on the collection id specified above (inheritid). however, if someone's come along and // reverted that area to the page's permissions, there won't be any permissions, and we // won't see anything. so we have to check $areac = Page::getByID($a->getAreaCollectionInheritID()); $inheritArea = Area::get($areac, $a->getAreaHandlE()); if (is_object($inheritArea) && $inheritArea->overrideCollectionPermissions()) { // okay, so that area is still around, still has set permissions on it. So we // pass our current area to our grouplist, userinfolist objects, knowing that they will // smartly inherit the correct items. $this->permissionObjectToCheck = $inheritArea; } } if (!$this->permissionObjectToCheck) { $this->permissionObjectToCheck = $a->getAreaCollectionObject(); } } }
function sendFormAction() { if (empty($_POST['bID'])) { return error(t('Invalid form submission (missing bID)')); } else { $block = Block::getByID($_POST['bID']); $blockController = new FormController($block); $blockController->noSubmitFormRedirect = true; $redirectURL = ''; // //Handle redirect-on-success... if ($blockController->redirectCID > 0) { $redirectPage = Page::getByID($blockController->redirectCID); if ($redirectPage->cID) { $redirectURL = Loader::helper('navigation')->getLinkToCollection($redirectPage, true); } } $blockController->redirectCID = 0; //reset this in block controller, otherwise it will exit before returning the data we need! try { $success = $blockController->action_submit_form($_POST['bID']); if ($success != null && $success == false) { return error(t('Invalid form submission (invalid block ids)')); } } catch (Exception $e) { return error($e->getMessage()); } $fieldErrors = $blockController->get('errors'); if (is_array($fieldErrors)) { foreach ($fieldErrors as $key => $value) { return error($fieldErrors[$key]); } } return success($blockController->thankyouMsg); } }
/** * Views the composer edit page. * @param string|int $ctID The collection type * @param string|int $cPublishParentID The parent page under which to publish */ public function view($ctID = false, $cPublishParentID = false) { // Load Page objects from their IDs $ct = $this->setCollectionType($ctID); $cPublishParent = Page::getByID($cPublishParent); // If we couldn't load a collection type, send them to the composer menu if (!is_object($ct)) { $ctArray = CollectionType::getComposerPageTypes(); // If there's only one collection type, just choose that one if (count($ctArray) === 1) { $ct = $ctArray[0]; $this->redirect('/dashboard/composer/write', $ct->getCollectionTypeID()); exit; } // Otherwise, they need to choose the CT from this array of types $this->set('ctArray', $ctArray); } else { // CT was set, so create a draft of this type $entry = ComposerPage::createDraft($ct); if (is_object($entry)) { // Check if we have a parent specified to create this draft under if ($cPublishParentID && is_object($cPublishParent)) { // Make this draft under the specified parent $entry->setComposerDraftPublishParentID($cPublishParentID); } // New draft is created, so start editing it $this->redirect('/dashboard/composer/write', 'edit', $entry->getCollectionID()); } else { // Something failed when trying to create a draft, so send back to drafts folder $this->redirect('/dashboard/composer/drafts'); } } }
public function import(\SimpleXMLElement $sx) { if (isset($sx->singlepages)) { foreach ($sx->singlepages->page as $p) { $pkg = static::getPackageObject($p['package']); if (isset($p['global']) && (string) $p['global'] === 'true') { $spl = Single::addGlobal($p['path'], $pkg); } else { $root = false; if (isset($p['root']) && (string) $p['root'] === 'true') { $root = true; } $siteTree = null; if (isset($this->home)) { $siteTree = $this->home->getSiteTreeObject(); } else { $home = \Page::getByID(HOME_CID); $siteTree = $home->getSiteTreeObject(); } $spl = Single::createPageInTree($p['path'], $siteTree, $root, $pkg); } if (is_object($spl)) { if ($p['name']) { $spl->update(array('cName' => $p['name'], 'cDescription' => $p['description'])); } if ($p['custom-path']) { $spl->setCanonicalPagePath((string) $p['custom-path'], false); } } } } }
public function action_post() { // happens through ajax $pagetype = PageType::getByID($this->ptID); if (is_object($pagetype) && $this->enableNewTopics) { $ccp = new Permissions($pagetype); if ($ccp->canAddPageType()) { $pagetypes = $pagetype->getPageTypeComposerPageTypeObjects(); $ctTopic = $pagetypes[0]; $c = Page::getCurrentPage(); $e = $pagetype->validatePublishRequest($ctTopic, $c); $r = new PageTypePublishResponse($e); if (!$e->has()) { $d = $pagetype->createDraft($ctTopic); $d->setPageDraftTargetParentPageID($c->getCollectionID()); $d->saveForm(); $d->publish(); $nc = Page::getByID($d->getCollectionID(), 'RECENT'); $link = Loader::helper('navigation')->getLinkToCollection($nc, true); $r->setRedirectURL($link); } $r->outputJSON(); } } exit; }
public function getSiteHomePageObject($version = 'RECENT') { $home = \Page::getByID($this->siteHomePageID, $version); if (is_object($home) && !$home->isError()) { return $home; } }
protected static function createPage($name, $parent = false, $type = false, $template = false) { if ($parent === false) { $parent = Page::getByID(HOME_CID); } else { if (is_string($parent)) { $parent = Page::getByPath($parent); } } if ($type === false) { $type = 1; } if (is_string($type)) { $pt = PageType::getByHandle($type); } else { $pt = PageType::getByID($type); } if ($template === false) { $template = 1; } if (is_string($template)) { $template = PageTemplate::getByHandle($template); } else { $template = PageTemplate::getByID($template); } $page = $parent->add($pt, array('cName' => $name, 'pTemplateID' => $template->getPageTemplateID())); return $page; }
public function page3() { //create the model object $cal = new Page(); //send the webclass $webClass = __CLASS__; $_SESSION['pageConID'] = ""; //by pass the form $cmd = isset($_GET['cmd']) ? addslashes($_GET['cmd']) : 'read'; if ($cmd == "edit") { //Crud::createForm($obj,$webClass); //die('edit'); $id = isset($_GET['id']) ? addslashes($_GET['id']) : 0; if ($id) { $cal->getByID($id); } $mps['id'] = $id; $mps['obj'] = $cal; Mold::plugin("Page", "pageForm", $mps); exit; } //run the crud utility Crud::run($cal, $webClass); //pr($mps); }
public function approve(WorkflowProgress $wp) { $c = Page::getByID($this->getRequestedPageID()); $c->setOverrideTemplatePermissions($this->inheritance); $wpr = new WorkflowProgressResponse(); $wpr->setWorkflowProgressResponseURL(BASE_URL . DIR_REL . '/' . DISPATCHER_FILENAME . '?cID=' . $c->getCollectionID()); return $wpr; }
public function approve(WorkflowProgress $wp) { $c = Page::getByID($this->getRequestedPageID()); $v = CollectionVersion::get($c, $this->cvID); $v->approve(false); $wpr = new WorkflowProgressResponse(); $wpr->setWorkflowProgressResponseURL(BASE_URL . DIR_REL . '/' . DISPATCHER_FILENAME . '?cID=' . $c->getCollectionID()); return $wpr; }
public function processQueueItem(Zend_Queue_Message $msg) { $c = Page::getByID($msg->body, 'ACTIVE'); $cv = $c->getVersionObject(); if (is_object($cv)) { $c->reindex($this->is, true); } }
/** * Reindexes the search engine. */ public function reindex() { Loader::library('3rdparty/Zend/Search/Lucene'); Loader::library('3rdparty/StandardAnalyzer/Analyzer/Standard/English'); $index = new Zend_Search_Lucene(DIR_FILES_CACHE_PAGES, true); //Zend_Search_Lucene_Analysis_Analyzer::setDefault(new Zend_Search_Lucene_Analysis_Analyzer_Common_Utf8Num_CaseInsensitive()); Zend_Search_Lucene_Analysis_Analyzer::setDefault(new StandardAnalyzer_Analyzer_Standard_English()); $db = Loader::db(); $collection_attributes = Loader::model('collection_attributes'); $r = $db->query("select cID from Pages order by cID asc"); $g = Group::getByID(GUEST_GROUP_ID); $nh = Loader::helper('navigation'); while ($row = $r->fetchRow()) { $c = Page::getByID($row['cID'], 'ACTIVE'); if($c->getCollectionAttributeValue('exclude_search_index')) continue; $themeObject = $c->getCollectionThemeObject(); $g->setPermissionsForObject($c); if ($g->canRead()) { $pageID = md5($row['cID']); $doc = new Zend_Search_Lucene_Document(); $doc->addField(Zend_Search_Lucene_Field::Keyword('cIDhash', $pageID)); $doc->addField(Zend_Search_Lucene_Field::Unindexed('cID', $row['cID'])); $doc->addField(Zend_Search_Lucene_Field::Text('cName', $c->getCollectionName(), APP_CHARSET)); $doc->addField(Zend_Search_Lucene_Field::Keyword('ctHandle', $c->getCollectionTypeHandle())); $doc->addField(Zend_Search_Lucene_Field::Text('cDescription', $c->getCollectionDescription(), APP_CHARSET)); $doc->addField(Zend_Search_Lucene_Field::Text('cBody', $this->getBodyContentFromPage($c), APP_CHARSET)); if (is_object($themeObject)) { $doc->addField(Zend_Search_Lucene_Field::Text('cTheme', $themeObject->getThemeHandle())); } $doc->addField(Zend_Search_Lucene_Field::Text( 'cPath', $c->getCollectionPath())); if (count($this->cPathSections) > 0) { foreach($this->cPathSections as $var => $cPath) { $isInSection = (strstr(strtolower($c->getCollectionPath()), $cPath . '/')) ? 'true' : 'false'; $doc->addField(Zend_Search_Lucene_Field::Keyword($var, $isInSection)); } } $attributes=$c->getSetCollectionAttributes(); foreach($attributes as $attribute){ if ($attribute->isCollectionAttributeKeySearchable()) { $doc->addField(Zend_Search_Lucene_Field::Keyword( $attribute->akHandle, $c->getCollectionAttributeValue($attribute) )); } } $index->addDocument($doc); } } $result = new stdClass; $result->count = $index->count(); return $result; }
public function createPage() { Loader::model('page'); $parent = Page::getByID($this->location); $ct = CollectionType::getByID($this->ctID); $data = array('cName' => $this->post->title, 'cHandle' => $this->post->page_title, 'cDescription' => $this->post->description, 'cDatePublic' => $this->post->pubDate); $p = $parent->add($ct, $data); return $p; }
public function save($args) { $ak = $this->loadAttribute(); $c = Page::getByID($_REQUEST['cID'], 'RECENT'); $nvc = $c->getVersionToModify(); $ak->saveAttributeForm($nvc); $nvc->refreshCache(); parent::save($args); }