public function execute()
 {
     $this->loadQueryStringPagingVariable();
     $params = $this->params;
     $params['version'] = APP_VERSION;
     $params['itemsPerPage'] = $this->itemsPerPage;
     $mi = Marketplace::getInstance();
     $params['csToken'] = $mi->getSiteToken();
     if ($this->includeInstalledItems) {
         $params['includeInstalledItems'] = 1;
     } else {
         $params['includeInstalledItems'] = 0;
         $list = Package::getInstalledList();
         foreach ($list as $pkg) {
             $params['installedPackages'][] = $pkg->getPackageHandle();
         }
     }
     if (isset($_REQUEST[$this->queryStringPagingVariable])) {
         $params[$this->queryStringPagingVariable] = $_REQUEST[$this->queryStringPagingVariable];
     }
     $uh = Core::make('helper/url');
     $url = Config::get('concrete.urls.concrete5') . Config::get('concrete.urls.paths.marketplace.remote_item_list');
     $url = $uh->buildQuery($url . $this->type . '/-/get_remote_list', $params);
     if (Config::get('concrete.marketplace.log_requests')) {
         Log::info($url);
     }
     $r = Core::make('helper/file')->getContents($url);
     $r2 = @Core::make('helper/json')->decode($r);
     $total = 0;
     $items = array();
     if (is_object($r2)) {
         $items = $r2->items;
         $total = $r2->total;
     }
     $this->total = $total;
     $this->setItems($items);
 }
 public function on_start()
 {
     parent::on_start();
     $this->marketplace = Marketplace::getInstance();
     $this->item = RemoteItem::getByID($this->request->query->get('mpID'));
 }
 /**
  * Given the current update object, sends information to concrete5.org to determine updatability
  * @return \Concrete\Core\Updater\ApplicationUpdateDiagnostic
  */
 public function getDiagnosticObject()
 {
     $request = new Request();
     $request->setUri(Config::get('concrete.updates.services.inspect_update'));
     $request->setMethod('POST');
     $request->getPost()->set('current_version', Config::get('concrete.version_installed'));
     $request->getPost()->set('requested_version', $this->getVersion());
     $request->getPost()->set('site_url', (string) \Core::getApplicationURL());
     $mi = Marketplace::getInstance();
     if ($mi->isConnected() && !$mi->hasConnectionError()) {
         $config = \Core::make('config/database');
         $request->getPost()->set('marketplace_token', $config->get('concrete.marketplace.token'));
         $list = Package::getInstalledList();
         $packages = array();
         foreach ($list as $pkg) {
             $packages[] = array('version' => $pkg->getPackageVersion(), 'handle' => $pkg->getPackageHandle());
         }
         $request->getPost()->set('packages', $packages);
     }
     $overrides = id(Environment::get())->getOverrideList();
     $request->getPost()->set('overrides', $overrides);
     $client = new Client();
     $client->setMethod('POST');
     $response = $client->send($request);
     $body = $response->getBody();
     $diagnostic = DiagnosticFactory::getFromJSON($body);
     return $diagnostic;
 }
<?php

defined('C5_EXECUTE') or die("Access Denied.");
?>

<div class="ccm-ui">
    <?php 
$mi = \Concrete\Core\Marketplace\Marketplace::getInstance();
echo $mi->getMarketplacePurchaseFrame($mri, '100%', '100%');
?>
</div>