Fix HamQTH session expiry
If HamQTH session has expired after 1 hour, start a new session and retry the search. Checks against a new error field in the HamQTH library. https://www.hamqth.com/developers.php
这个提交包含在:
父节点
5e8ca71d59
当前提交
c2a2f65611
共有 2 个文件被更改,包括 8 次插入 和 0 次删除
|
|
@ -124,6 +124,13 @@ class Logbook extends CI_Controller {
|
||||||
}
|
}
|
||||||
|
|
||||||
$callbook = $this->hamqth->search($callsign, $this->session->userdata('hamqth_session_key'));
|
$callbook = $this->hamqth->search($callsign, $this->session->userdata('hamqth_session_key'));
|
||||||
|
|
||||||
|
// If HamQTH session has expired, start a new session and retry the search.
|
||||||
|
if($callbook['error'] == "Session does not exist or expired") {
|
||||||
|
$hamqth_session_key = $this->hamqth->session($this->config->item('hamqth_username'), $this->config->item('hamqth_password'));
|
||||||
|
$this->session->set_userdata('hamqth_session_key', $hamqth_session_key);
|
||||||
|
$callbook = $this->hamqth->search($callsign, $this->session->userdata('hamqth_session_key'));
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (isset($callbook))
|
if (isset($callbook))
|
||||||
|
|
|
||||||
|
|
@ -79,6 +79,7 @@ class Hamqth {
|
||||||
$data['lat'] = (string) $xml->search->latitude;
|
$data['lat'] = (string) $xml->search->latitude;
|
||||||
$data['long'] = (string) $xml->search->longitude;
|
$data['long'] = (string) $xml->search->longitude;
|
||||||
$data['iota'] = (string) $xml->search->iota;
|
$data['iota'] = (string) $xml->search->iota;
|
||||||
|
$data['error'] = (string) $xml->session->error;
|
||||||
|
|
||||||
return $data;
|
return $data;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
正在加载…
在新工单中引用