Example #1
0
 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;
 }
Example #2
0
 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;
 }
Example #3
0
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
}
Example #4
0
 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();
     }
 }