mirror of
https://github.com/wavelog/wavelog.git
synced 2026-03-22 10:24:14 +00:00
Dashboard map now shows SAT name if its available
This commit is contained in:
@@ -52,7 +52,7 @@ $autoload['packages'] = array(APPPATH.'third_party');
|
||||
| $autoload['libraries'] = array('database', 'session', 'xmlrpc');
|
||||
*/
|
||||
|
||||
$autoload['libraries'] = array('database', 'session');
|
||||
$autoload['libraries'] = array('database', 'session', 'curl');
|
||||
|
||||
|
||||
/*
|
||||
|
||||
@@ -75,7 +75,11 @@ class Dashboard extends CI_Controller {
|
||||
echo ",";
|
||||
}
|
||||
|
||||
echo "{\"lat\":\"".$stn_loc[0]."\",\"lng\":\"".$stn_loc[1]."\", \"html\":\"Callsign: ".$row->COL_CALL."<br />Date/Time: ".$row->COL_TIME_ON."<br />Band: ".$row->COL_BAND."<br />Mode: ".$row->COL_MODE."\",\"label\":\"".$row->COL_CALL."\"}";
|
||||
if($row->COL_SAT_NAME != null) {
|
||||
echo "{\"lat\":\"".$stn_loc[0]."\",\"lng\":\"".$stn_loc[1]."\", \"html\":\"Callsign: ".$row->COL_CALL."<br />Date/Time: ".$row->COL_TIME_ON."<br />SAT: ".$row->COL_SAT_NAME."<br />Mode: ".$row->COL_MODE."\",\"label\":\"".$row->COL_CALL."\"}";
|
||||
} else {
|
||||
echo "{\"lat\":\"".$stn_loc[0]."\",\"lng\":\"".$stn_loc[1]."\", \"html\":\"Callsign: ".$row->COL_CALL."<br />Date/Time: ".$row->COL_TIME_ON."<br />Band: ".$row->COL_BAND."<br />Mode: ".$row->COL_MODE."\",\"label\":\"".$row->COL_CALL."\"}";
|
||||
}
|
||||
|
||||
$count++;
|
||||
|
||||
@@ -140,11 +144,9 @@ class Dashboard extends CI_Controller {
|
||||
|
||||
function test() {
|
||||
|
||||
$this->load->library('callbytxt');
|
||||
$this->load->library('clublog');
|
||||
|
||||
$callbook = $this->callbytxt->callsign('m3ph');
|
||||
|
||||
print_r($callbook);
|
||||
echo $this->clublog->send();
|
||||
|
||||
}
|
||||
|
||||
|
||||
@@ -6,7 +6,24 @@ class Clublog {
|
||||
Communicates with the Clublog.org API functions
|
||||
*/
|
||||
|
||||
public function send(){}
|
||||
/* Send QSO in real time */
|
||||
public function send() {
|
||||
|
||||
// Load Librarys
|
||||
$CI =& get_instance();
|
||||
$CI->load->library('curl');
|
||||
|
||||
// API Key
|
||||
$key = "a11c3235cd74b88212ce726857056939d52372bd";
|
||||
|
||||
$username = "";
|
||||
$password = "";
|
||||
|
||||
$qso = "QSO_DATE TIME_ON QSLRDATE QSLSDATE CALL OPERATOR MODE BAND FREQ QSL_RCVD LOTW_QSL_RCVD QSL_SENT DXCC PROP_MODE";
|
||||
|
||||
echo $CI->curl->simple_post('curl_test/message', array('message'=>'Sup buddy'));
|
||||
|
||||
}
|
||||
public function check(){}
|
||||
}
|
||||
|
||||
|
||||
372
application/libraries/Curl.php
Normal file
372
application/libraries/Curl.php
Normal file
@@ -0,0 +1,372 @@
|
||||
<?php defined('BASEPATH') OR exit('No direct script access allowed');
|
||||
|
||||
/**
|
||||
* CodeIgniter Curl Class
|
||||
*
|
||||
* Work with remote servers via cURL much easier than using the native PHP bindings.
|
||||
*
|
||||
* @package CodeIgniter
|
||||
* @subpackage Libraries
|
||||
* @category Libraries
|
||||
* @author Philip Sturgeon
|
||||
* @license http://philsturgeon.co.uk/code/dbad-license
|
||||
* @link http://getsparks.org/packages/curl/show
|
||||
*/
|
||||
class Curl {
|
||||
|
||||
private $_ci; // CodeIgniter instance
|
||||
private $response = ''; // Contains the cURL response for debug
|
||||
private $session; // Contains the cURL handler for a session
|
||||
private $url; // URL of the session
|
||||
private $options = array(); // Populates curl_setopt_array
|
||||
private $headers = array(); // Populates extra HTTP headers
|
||||
public $error_code; // Error code returned as an int
|
||||
public $error_string; // Error message returned as a string
|
||||
public $info; // Returned after request (elapsed time, etc)
|
||||
|
||||
function __construct($url = '')
|
||||
{
|
||||
$this->_ci = & get_instance();
|
||||
log_message('debug', 'cURL Class Initialized');
|
||||
|
||||
if ( ! $this->is_enabled())
|
||||
{
|
||||
log_message('error', 'cURL Class - PHP was not built with cURL enabled. Rebuild PHP with --with-curl to use cURL.');
|
||||
}
|
||||
|
||||
$url AND $this->create($url);
|
||||
}
|
||||
|
||||
function __call($method, $arguments)
|
||||
{
|
||||
if (in_array($method, array('simple_get', 'simple_post', 'simple_put', 'simple_delete')))
|
||||
{
|
||||
// Take off the "simple_" and past get/post/put/delete to _simple_call
|
||||
$verb = str_replace('simple_', '', $method);
|
||||
array_unshift($arguments, $verb);
|
||||
return call_user_func_array(array($this, '_simple_call'), $arguments);
|
||||
}
|
||||
}
|
||||
|
||||
/* =================================================================================
|
||||
* SIMPLE METHODS
|
||||
* Using these methods you can make a quick and easy cURL call with one line.
|
||||
* ================================================================================= */
|
||||
|
||||
public function _simple_call($method, $url, $params = array(), $options = array())
|
||||
{
|
||||
// Get acts differently, as it doesnt accept parameters in the same way
|
||||
if ($method === 'get')
|
||||
{
|
||||
// If a URL is provided, create new session
|
||||
$this->create($url.($params ? '?'.http_build_query($params) : ''));
|
||||
}
|
||||
|
||||
else
|
||||
{
|
||||
// If a URL is provided, create new session
|
||||
$this->create($url);
|
||||
|
||||
$this->{$method}($params);
|
||||
}
|
||||
|
||||
// Add in the specific options provided
|
||||
$this->options($options);
|
||||
|
||||
return $this->execute();
|
||||
}
|
||||
|
||||
public function simple_ftp_get($url, $file_path, $username = '', $password = '')
|
||||
{
|
||||
// If there is no ftp:// or any protocol entered, add ftp://
|
||||
if ( ! preg_match('!^(ftp|sftp)://! i', $url))
|
||||
{
|
||||
$url = 'ftp://' . $url;
|
||||
}
|
||||
|
||||
// Use an FTP login
|
||||
if ($username != '')
|
||||
{
|
||||
$auth_string = $username;
|
||||
|
||||
if ($password != '')
|
||||
{
|
||||
$auth_string .= ':' . $password;
|
||||
}
|
||||
|
||||
// Add the user auth string after the protocol
|
||||
$url = str_replace('://', '://' . $auth_string . '@', $url);
|
||||
}
|
||||
|
||||
// Add the filepath
|
||||
$url .= $file_path;
|
||||
|
||||
$this->option(CURLOPT_BINARYTRANSFER, TRUE);
|
||||
$this->option(CURLOPT_VERBOSE, TRUE);
|
||||
|
||||
return $this->execute();
|
||||
}
|
||||
|
||||
/* =================================================================================
|
||||
* ADVANCED METHODS
|
||||
* Use these methods to build up more complex queries
|
||||
* ================================================================================= */
|
||||
|
||||
public function post($params = array(), $options = array())
|
||||
{
|
||||
// If its an array (instead of a query string) then format it correctly
|
||||
if (is_array($params))
|
||||
{
|
||||
$params = http_build_query($params, NULL, '&');
|
||||
}
|
||||
|
||||
// Add in the specific options provided
|
||||
$this->options($options);
|
||||
|
||||
$this->http_method('post');
|
||||
|
||||
$this->option(CURLOPT_POST, TRUE);
|
||||
$this->option(CURLOPT_POSTFIELDS, $params);
|
||||
}
|
||||
|
||||
public function put($params = array(), $options = array())
|
||||
{
|
||||
// If its an array (instead of a query string) then format it correctly
|
||||
if (is_array($params))
|
||||
{
|
||||
$params = http_build_query($params, NULL, '&');
|
||||
}
|
||||
|
||||
// Add in the specific options provided
|
||||
$this->options($options);
|
||||
|
||||
$this->http_method('put');
|
||||
$this->option(CURLOPT_POSTFIELDS, $params);
|
||||
|
||||
// Override method, I think this overrides $_POST with PUT data but... we'll see eh?
|
||||
$this->option(CURLOPT_HTTPHEADER, array('X-HTTP-Method-Override: PUT'));
|
||||
}
|
||||
|
||||
public function delete($params, $options = array())
|
||||
{
|
||||
// If its an array (instead of a query string) then format it correctly
|
||||
if (is_array($params))
|
||||
{
|
||||
$params = http_build_query($params, NULL, '&');
|
||||
}
|
||||
|
||||
// Add in the specific options provided
|
||||
$this->options($options);
|
||||
|
||||
$this->http_method('delete');
|
||||
|
||||
$this->option(CURLOPT_POSTFIELDS, $params);
|
||||
}
|
||||
|
||||
public function set_cookies($params = array())
|
||||
{
|
||||
if (is_array($params))
|
||||
{
|
||||
$params = http_build_query($params, NULL, '&');
|
||||
}
|
||||
|
||||
$this->option(CURLOPT_COOKIE, $params);
|
||||
return $this;
|
||||
}
|
||||
|
||||
public function http_header($header, $content = NULL)
|
||||
{
|
||||
$this->headers[] = $content ? $header . ': ' . $content : $header;
|
||||
}
|
||||
|
||||
public function http_method($method)
|
||||
{
|
||||
$this->options[CURLOPT_CUSTOMREQUEST] = strtoupper($method);
|
||||
return $this;
|
||||
}
|
||||
|
||||
public function http_login($username = '', $password = '', $type = 'any')
|
||||
{
|
||||
$this->option(CURLOPT_HTTPAUTH, constant('CURLAUTH_' . strtoupper($type)));
|
||||
$this->option(CURLOPT_USERPWD, $username . ':' . $password);
|
||||
return $this;
|
||||
}
|
||||
|
||||
public function proxy($url = '', $port = 80)
|
||||
{
|
||||
$this->option(CURLOPT_HTTPPROXYTUNNEL, TRUE);
|
||||
$this->option(CURLOPT_PROXY, $url . ':' . $port);
|
||||
return $this;
|
||||
}
|
||||
|
||||
public function proxy_login($username = '', $password = '')
|
||||
{
|
||||
$this->option(CURLOPT_PROXYUSERPWD, $username . ':' . $password);
|
||||
return $this;
|
||||
}
|
||||
|
||||
public function ssl($verify_peer = TRUE, $verify_host = 2, $path_to_cert = NULL)
|
||||
{
|
||||
if ($verify_peer)
|
||||
{
|
||||
$this->option(CURLOPT_SSL_VERIFYPEER, TRUE);
|
||||
$this->option(CURLOPT_SSL_VERIFYHOST, $verify_host);
|
||||
$this->option(CURLOPT_CAINFO, $path_to_cert);
|
||||
}
|
||||
else
|
||||
{
|
||||
$this->option(CURLOPT_SSL_VERIFYPEER, FALSE);
|
||||
}
|
||||
return $this;
|
||||
}
|
||||
|
||||
public function options($options = array())
|
||||
{
|
||||
// Merge options in with the rest - done as array_merge() does not overwrite numeric keys
|
||||
foreach ($options as $option_code => $option_value)
|
||||
{
|
||||
$this->option($option_code, $option_value);
|
||||
}
|
||||
|
||||
// Set all options provided
|
||||
curl_setopt_array($this->session, $this->options);
|
||||
|
||||
return $this;
|
||||
}
|
||||
|
||||
public function option($code, $value)
|
||||
{
|
||||
if (is_string($code) && !is_numeric($code))
|
||||
{
|
||||
$code = constant('CURLOPT_' . strtoupper($code));
|
||||
}
|
||||
|
||||
$this->options[$code] = $value;
|
||||
return $this;
|
||||
}
|
||||
|
||||
// Start a session from a URL
|
||||
public function create($url)
|
||||
{
|
||||
// If no a protocol in URL, assume its a CI link
|
||||
if ( ! preg_match('!^\w+://! i', $url))
|
||||
{
|
||||
$this->_ci->load->helper('url');
|
||||
$url = site_url($url);
|
||||
}
|
||||
|
||||
$this->url = $url;
|
||||
$this->session = curl_init($this->url);
|
||||
|
||||
return $this;
|
||||
}
|
||||
|
||||
// End a session and return the results
|
||||
public function execute()
|
||||
{
|
||||
// Set two default options, and merge any extra ones in
|
||||
if ( ! isset($this->options[CURLOPT_TIMEOUT]))
|
||||
{
|
||||
$this->options[CURLOPT_TIMEOUT] = 30;
|
||||
}
|
||||
if ( ! isset($this->options[CURLOPT_RETURNTRANSFER]))
|
||||
{
|
||||
$this->options[CURLOPT_RETURNTRANSFER] = TRUE;
|
||||
}
|
||||
if ( ! isset($this->options[CURLOPT_FAILONERROR]))
|
||||
{
|
||||
$this->options[CURLOPT_FAILONERROR] = TRUE;
|
||||
}
|
||||
|
||||
// Only set follow location if not running securely
|
||||
if ( ! ini_get('safe_mode') && !ini_get('open_basedir'))
|
||||
{
|
||||
// Ok, follow location is not set already so lets set it to true
|
||||
if ( ! isset($this->options[CURLOPT_FOLLOWLOCATION]))
|
||||
{
|
||||
$this->options[CURLOPT_FOLLOWLOCATION] = TRUE;
|
||||
}
|
||||
}
|
||||
|
||||
if ( ! empty($this->headers))
|
||||
{
|
||||
$this->option(CURLOPT_HTTPHEADER, $this->headers);
|
||||
}
|
||||
|
||||
$this->options();
|
||||
|
||||
// Execute the request & and hide all output
|
||||
$this->response = curl_exec($this->session);
|
||||
$this->info = curl_getinfo($this->session);
|
||||
|
||||
// Request failed
|
||||
if ($this->response === FALSE)
|
||||
{
|
||||
$this->error_code = curl_errno($this->session);
|
||||
$this->error_string = curl_error($this->session);
|
||||
|
||||
curl_close($this->session);
|
||||
$this->set_defaults();
|
||||
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
// Request successful
|
||||
else
|
||||
{
|
||||
curl_close($this->session);
|
||||
$response = $this->response;
|
||||
$this->set_defaults();
|
||||
return $response;
|
||||
}
|
||||
}
|
||||
|
||||
public function is_enabled()
|
||||
{
|
||||
return function_exists('curl_init');
|
||||
}
|
||||
|
||||
public function debug()
|
||||
{
|
||||
echo "=============================================<br/>\n";
|
||||
echo "<h2>CURL Test</h2>\n";
|
||||
echo "=============================================<br/>\n";
|
||||
echo "<h3>Response</h3>\n";
|
||||
echo "<code>" . nl2br(htmlentities($this->response)) . "</code><br/>\n\n";
|
||||
|
||||
if ($this->error_string)
|
||||
{
|
||||
echo "=============================================<br/>\n";
|
||||
echo "<h3>Errors</h3>";
|
||||
echo "<strong>Code:</strong> " . $this->error_code . "<br/>\n";
|
||||
echo "<strong>Message:</strong> " . $this->error_string . "<br/>\n";
|
||||
}
|
||||
|
||||
echo "=============================================<br/>\n";
|
||||
echo "<h3>Info</h3>";
|
||||
echo "<pre>";
|
||||
print_r($this->info);
|
||||
echo "</pre>";
|
||||
}
|
||||
|
||||
public function debug_request()
|
||||
{
|
||||
return array(
|
||||
'url' => $this->url
|
||||
);
|
||||
}
|
||||
|
||||
private function set_defaults()
|
||||
{
|
||||
$this->response = '';
|
||||
$this->headers = array();
|
||||
$this->options = array();
|
||||
$this->error_code = NULL;
|
||||
$this->error_string = '';
|
||||
$this->session = NULL;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
/* End of file Curl.php */
|
||||
/* Location: ./application/libraries/Curl.php */
|
||||
@@ -55,7 +55,8 @@ class Logbook_model extends CI_Model {
|
||||
'COL_IOTA' => $this->input->post('iota_ref'),
|
||||
'COL_MY_GRIDSQUARE' => $locator,
|
||||
'COL_DISTANCE' => "0",
|
||||
'COL_FREQ_RX' => '0',
|
||||
'COL_FREQ_RX' => 0,
|
||||
'COL_BAND_RX' => 0,
|
||||
'COL_ANT_AZ' => '0',
|
||||
'COL_ANT_EL' => '0',
|
||||
);
|
||||
|
||||
Reference in New Issue
Block a user