public function view() { Loader::model('marketplace_remote_item'); $mri = new MarketplaceRemoteItemList(); $mri->sortBy('recommended'); $mri->setItemsPerPage(1); $mri->setType('addons'); $mri->execute(); $items = $mri->getPage(); if (is_object($items[0])) { $this->set('remoteItem', $items[0]); } }
public function browse($what = 'themes') { $tp = new TaskPermission(); $subnav = array(array(View::url('/dashboard/install'), t('Installed and Available'), false), array(View::url('/dashboard/install', 'browse', 'themes'), t('More Themes'), $what == 'themes'), array(View::url('/dashboard/install', 'browse', 'addons'), t('More Add-Ons'), $what == 'addons')); if ($tp->canInstallPackages()) { Loader::model('marketplace_remote_item'); $mri = new MarketplaceRemoteItemList(); $mri->setItemsPerPage(9); if ($what == 'addons') { $sets = MarketplaceRemoteItemList::getItemSets('addons'); } else { // themes $sets = MarketplaceRemoteItemList::getItemSets('themes'); } $setsel = array('' => t('All Items'), 'FEATURED' => t('Featured Items')); if (is_array($sets)) { foreach ($sets as $s) { $setsel[$s->getMarketplaceRemoteSetID()] = $s->getMarketplaceRemoteSetName(); } } $mri->setIncludeInstalledItems(false); if (isset($_REQUEST['marketplaceRemoteItemSetID'])) { $set = $_REQUEST['marketplaceRemoteItemSetID']; } if (isset($_REQUEST['marketplaceRemoteItemKeywords'])) { $keywords = $_REQUEST['marketplaceRemoteItemKeywords']; } if ($keywords != '') { $mri->filterByKeywords($keywords); } if ($set == 'FEATURED') { $mri->filterByIsFeaturedRemotely(1); } else { if ($set > 0) { $mri->filterBySet($set); } } $mri->setType($what); $mri->execute(); $items = $mri->getPage(); $this->set('selectedSet', $set); $this->set('list', $mri); $this->set('items', $items); $this->set('form', Loader::helper('form')); $this->set('sets', $setsel); $this->set('type', $what); } $this->set('subnav', $subnav); }
public function view() { $tp = new TaskPermission(); $mi = Marketplace::getInstance(); if ($mi->isConnected() && $tp->canInstallPackages()) { Loader::model('marketplace_remote_item'); $mri = new MarketplaceRemoteItemList(); $mri->setItemsPerPage(9); $sets = MarketplaceRemoteItemList::getItemSets('themes'); $setsel = array('' => t('All Items'), 'FEATURED' => t('Featured Items')); if (is_array($sets)) { foreach ($sets as $s) { $setsel[$s->getMarketplaceRemoteSetID()] = $s->getMarketplaceRemoteSetName(); } } $sortBy = array('' => t('Recommended'), 'popular' => t('Popular'), 'recent' => t('Recently Added'), 'rating' => t('Highest Rated'), 'price_low' => t('Price: Low to High'), 'price_high' => t('Price: High to Low')); $mri->setIncludeInstalledItems(false); if (isset($_REQUEST['marketplaceRemoteItemSetID'])) { $set = $_REQUEST['marketplaceRemoteItemSetID']; } if (isset($_REQUEST['mpID'])) { $mri->filterByMarketplaceItemID($_REQUEST['mpID']); } if (isset($_REQUEST['marketplaceRemoteItemSortBy'])) { $this->set('selectedSort', Loader::helper('text')->entities($_REQUEST['marketplaceRemoteItemSortBy'])); $mri->sortBy($_REQUEST['marketplaceRemoteItemSortBy']); } else { $mri->sortBy('recommended'); } if (isset($_REQUEST['marketplaceIncludeOnlyCompatibleAddons']) && $_REQUEST['marketplaceIncludeOnlyCompatibleAddons'] == 1) { $mri->filterByCompatibility(1); } if (isset($_REQUEST['marketplaceRemoteItemKeywords']) && $_REQUEST['marketplaceRemoteItemKeywords']) { $keywords = $_REQUEST['marketplaceRemoteItemKeywords']; $sortBy = array('relevance' => t('Relevance')) + $sortBy; } if ($keywords != '') { $mri->filterByKeywords($keywords); } if ($set == 'FEATURED') { $mri->filterByIsFeaturedRemotely(1); } else { if ($set > 0) { $mri->filterBySet($set); } } $mri->setType('themes'); $mri->execute(); $items = $mri->getPage(); $this->set('sortBy', $sortBy); $this->set('selectedSet', $set); $this->set('list', $mri); $this->set('items', $items); $this->set('form', Loader::helper('form')); $this->set('sets', $setsel); $this->set('pagination', $mri->getPagination()); $this->set('type', $what); } else { $this->redirect('/dashboard/extend/connect'); } }
<?php defined('C5_EXECUTE') or die("Access Denied."); $dh = Loader::helper('concrete/dashboard'); if ($dh->canRead()) { session_write_close(); $js = Loader::helper('json'); Loader::model('marketplace_remote_item'); $mri = new MarketplaceRemoteItemList(); $mri->setItemsPerPage(5); $mri->setIncludeInstalledItems(false); $mri->setType('addons'); $keywords = $_REQUEST['q']; $mri->filterByKeywords($keywords); $mri->execute(); $items = $mri->getPage(); $r = array(); foreach ($items as $it) { $obj = new stdClass(); $obj->mpID = $it->getMarketplaceItemID(); $obj->name = $it->getName(); $obj->img = $it->getRemoteIconURL(); $obj->href = $it->getRemoteURL(); $r[] = $obj; } print $js->encode($r); exit; }