private function getRates() { if (isset($this->data->timestamp) && !empty($this->data->cache) && is_object($this->data->cache) && !empty($this->params['cache_age'])) { if ($this->data->timestamp - time() > $this->params['cache_age'] * 60) { return $this->data->cache; } } $url = 'https://s3.amazonaws.com/dolartoday/data.json'; $data = utf8_encode(file_get_contents($url)); $data = json_decode($data); if (!empty($data)) { $service = new aecService(); $service->getById($this->id); if (empty($service->data)) { $service->data = new stdClass(); } $service->data->timestamp = time(); $service->data->cache = $data; $service->storeload(); } return $data; }
public function Settings() { $settings = array(); if (empty($this->settings['selected_service'])) { $settings['lists'] = array('selected_service' => JHTML::_('select.genericlist', aecServiceList::getSelectList(), 'selected_service', 'size="1"', 'value', 'text', 0)); $settings['selected_service'] = array('list'); $settings['notice'] = array('p', 'Save once to show settings of the service'); } else { $settings['selected_service'] = array('hidden'); $service = aecService::getById($this->settings['selected_service']); $settings['notice'] = array('p', $service->name); $settings = array_merge($settings, $service->getSettings()); } return $settings; }
function serviceCall($type, $cmd, $request) { $list = aecServiceList::getFlatList(); $id = 0; foreach ($list as $li) { if ($li->type == $type) { $id = $li->id; } } if (empty($id)) { header("HTTP/1.0 401 Unauthorized"); die; // die, die } $service = aecService::getByType($type); if (empty($service->id)) { header("HTTP/1.0 401 Unauthorized"); die; // die, die } if (!is_array($request)) { if (get_magic_quotes_gpc()) { $request = stripslashes($request); } if (strpos($request, '{')) { $request = json_decode($request); } } elseif (!is_object($request)) { $request = (object) $request; } if (is_object($request) && isset($request->plan)) { $service->overloadByPlan((int) $request->plan); } if (!$service->testCmd($cmd, $request)) { header("HTTP/1.0 401 Unauthorized"); die; // die, die } header("HTTP/1.0 200 OK"); $return = $service->execCmd($cmd, $request); echo json_encode($return); die; // regular die }
public function save($id) { $post = AECToolbox::cleanPOST($_POST, false); if ($id) { $row = aecService::getById($id); } else { $row = aecService::getByType($post['type']); } $row->savePOSTsettings($post); if (!$row->check()) { echo "<script> alert('" . $row->getError() . "'); window.history.go(-2); </script>\n"; exit; } if (!$row->store()) { echo "<script> alert('" . $row->getError() . "'); window.history.go(-2); </script>\n"; exit; } $row->reorder(); if (empty($id)) { $this->params['id'] = $row->getMax(); } }