public function getDataCenterLocationsJson() { $locations = array(); $query = new QueryObject(); $query->addAndCondition(QueryCriteria::equal("Active", true)); list($list, $size) = $this->public_cloud_repository->getAll($query, 0, 1000); foreach ($list as $public_cloud) { foreach ($public_cloud->getDataCentersLocations() as $location) { $json_data = array(); $json_data['color'] = $location->getDataCenterRegion()->getColor(); $json_data['country'] = Geoip::countryCode2name($location->getCountry()); $json_data['city'] = $location->getCity(); $json_data['lat'] = $location->getLat(); $json_data['lng'] = $location->getLng(); $json_data['product_name'] = $public_cloud->getName(); $json_data['product_url'] = $this->buildCloudLink($public_cloud->getCompany()->URLSegment . '/' . strtolower(trim(preg_replace('/[^A-Za-z0-9-]+/', '-', $public_cloud->getName())))); $json_data['owner'] = $public_cloud->getCompany()->getName(); array_push($locations, $json_data); } } return json_encode($locations); }
public function getEnabledPricingSchemas() { $params = $this->request->allParams(); $company_url_segment = Convert::raw2sql($params["Company"]); $slug = Convert::raw2sql($params["Slug"]); $query = new QueryObject(); $query->addAndCondition(QueryCriteria::equal('Slug', $slug)); $cloud = $this->cloud_repository->getBy($query); if (!$cloud) { throw new NotFoundEntityException('', ''); } if ($cloud->getCompany()->URLSegment != $company_url_segment) { throw new NotFoundEntityException('', ''); } return CloudViewModel::getEnabledPricingSchemas($cloud); }
public function appliance() { try { $params = $this->request->allParams(); $company_url_segment = Convert::raw2sql($params["ID"]); $slug = Convert::raw2sql($params["Slug"]); $query = new QueryObject(); $query->addAndCondition(QueryCriteria::equal('Slug', $slug)); $appliance = $this->appliance_repository->getBy($query); if (!$appliance) { throw new NotFoundEntityException('', ''); } $this->company_service_ID = $appliance->getIdentifier(); if ($appliance->getCompany()->URLSegment != $company_url_segment) { throw new NotFoundEntityException('', ''); } $render = new ApplianceSapphireRender($appliance); return $render->draw(); } catch (Exception $ex) { return $this->httpError(404, 'Sorry that Appliance could not be found!.'); } }