kopia lustrzana https://github.com/magicbug/Cloudlog
Porównaj commity
5 Commity
79fb3f4599
...
a8c9625f02
Autor | SHA1 | Data |
---|---|---|
DJ3CE | a8c9625f02 | |
Peter Goodhall | fd3ba41d26 | |
DJ3CE | 181dcbe53c | |
DJ3CE | aaf7f994aa | |
DJ3CE | 15e2e10528 |
|
@ -55,7 +55,7 @@ class Lookup extends CI_Controller {
|
||||||
|
|
||||||
public function scp() {
|
public function scp() {
|
||||||
if($_POST['callsign']) {
|
if($_POST['callsign']) {
|
||||||
$uppercase_callsign = strtoupper($_POST['callsign']);
|
$uppercase_callsign = str_replace('Ø', '0', strtoupper($_POST['callsign']));
|
||||||
}
|
}
|
||||||
|
|
||||||
// SCP results from logbook
|
// SCP results from logbook
|
||||||
|
@ -106,7 +106,7 @@ class Lookup extends CI_Controller {
|
||||||
|
|
||||||
foreach ($arCalls as $strCall)
|
foreach ($arCalls as $strCall)
|
||||||
{
|
{
|
||||||
echo " " . $strCall . " ";
|
echo $strCall . " ";
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -47,7 +47,7 @@
|
||||||
<script type="text/javascript" src="<?php echo base_url(); ?>assets/js/sections/eqslcharcounter.js"></script>
|
<script type="text/javascript" src="<?php echo base_url(); ?>assets/js/sections/eqslcharcounter.js"></script>
|
||||||
<script type="text/javascript" src="<?php echo base_url(); ?>assets/js/sections/version_dialog.js"></script>
|
<script type="text/javascript" src="<?php echo base_url(); ?>assets/js/sections/version_dialog.js"></script>
|
||||||
|
|
||||||
<script src="https://unpkg.com/htmx.org@1.6.1"></script>
|
<script src="<?php echo base_url(); ?>assets/js/htmx.min.js"></script>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
// Reinitialize tooltips after new content has been loaded
|
// Reinitialize tooltips after new content has been loaded
|
||||||
|
|
File diff suppressed because one or more lines are too long
|
@ -207,31 +207,23 @@ $('#start_date').change(function () {
|
||||||
});
|
});
|
||||||
|
|
||||||
// On Key up check and suggest callsigns
|
// On Key up check and suggest callsigns
|
||||||
$("#callsign").keyup(function () {
|
$("#callsign").keyup(scp_keyup({
|
||||||
var call = $(this).val();
|
selector: $("#callsign"),
|
||||||
if (call.length >= 3) {
|
showSuggestions: function (call, text) {
|
||||||
|
$('.callsign-suggestions').text(text);
|
||||||
|
highlight(call);
|
||||||
|
}
|
||||||
|
}));
|
||||||
|
|
||||||
$.ajax({
|
$("#callsign").keyup(function() {
|
||||||
url: 'lookup/scp',
|
const call = $(this).val().toUpperCase();
|
||||||
method: 'POST',
|
if (call.length >= 3) {
|
||||||
data: {
|
var qTable = $('.qsotable').DataTable();
|
||||||
callsign: $(this).val().toUpperCase()
|
qTable.search(call).draw();
|
||||||
},
|
}
|
||||||
success: function (result) {
|
|
||||||
$('.callsign-suggestions').text(result);
|
|
||||||
highlight(call.toUpperCase());
|
|
||||||
}
|
|
||||||
});
|
|
||||||
// moved to blur
|
|
||||||
// checkIfWorkedBefore();
|
|
||||||
var qTable = $('.qsotable').DataTable();
|
|
||||||
qTable.search(call).draw();
|
|
||||||
}
|
|
||||||
else if (call.length <= 2) {
|
|
||||||
$('.callsign-suggestions').text("");
|
|
||||||
}
|
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|
||||||
function checkIfWorkedBefore() {
|
function checkIfWorkedBefore() {
|
||||||
var call = $("#callsign").val();
|
var call = $("#callsign").val();
|
||||||
if (call.length >= 3) {
|
if (call.length >= 3) {
|
||||||
|
@ -670,3 +662,62 @@ function getUTCDateStamp(el) {
|
||||||
var utc = localTime + (now.getTimezoneOffset() * 60000);
|
var utc = localTime + (now.getTimezoneOffset() * 60000);
|
||||||
$(el).attr('value', ("0" + now.getUTCDate()).slice(-2) + '-' + ("0" + (now.getUTCMonth() + 1)).slice(-2) + '-' + now.getUTCFullYear());
|
$(el).attr('value', ("0" + now.getUTCDate()).slice(-2) + '-' + ("0" + (now.getUTCMonth() + 1)).slice(-2) + '-' + now.getUTCFullYear());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function scp_keyup(options) {
|
||||||
|
// options must have two keys:
|
||||||
|
// * selector - element, with .val() which gives the entered callsign
|
||||||
|
// * showSuggestions - function(call, text), where the text is
|
||||||
|
// the list of callsign-suggestions
|
||||||
|
const scp = {
|
||||||
|
request: "",
|
||||||
|
data: []
|
||||||
|
};
|
||||||
|
const callFromInput = (el) => el.val().toUpperCase().replace('0','Ø');
|
||||||
|
const checkCacheValid = (call) => (scp.request != "" && call.includes(scp.request));
|
||||||
|
const filterCallsignList = function (call) {
|
||||||
|
return scp.data?.filter((el) => (el.includes(call) == true)).join(' ') || '';
|
||||||
|
};
|
||||||
|
const updateSuggestions = function (call) {
|
||||||
|
const suggestions = filterCallsignList(call);
|
||||||
|
options.showSuggestions(call, suggestions);
|
||||||
|
}
|
||||||
|
|
||||||
|
const keyup = function(){
|
||||||
|
const call = callFromInput(options.selector);
|
||||||
|
|
||||||
|
if (call.length < 3) {
|
||||||
|
options.showSuggestions("", "");
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
if ( checkCacheValid(call) ) {
|
||||||
|
updateSuggestions(call);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Cache invalid, so update it and reset suggestions
|
||||||
|
options.showSuggestions("");
|
||||||
|
|
||||||
|
scp.request = call;
|
||||||
|
scp.data = [];
|
||||||
|
$.ajax({
|
||||||
|
url: 'lookup/scp',
|
||||||
|
method: 'POST',
|
||||||
|
data: {
|
||||||
|
callsign: call
|
||||||
|
},
|
||||||
|
success: function (result) {
|
||||||
|
const call_now = callFromInput(options.selector);
|
||||||
|
if (checkCacheValid(call_now)) {
|
||||||
|
scp.data = result.split(" ");
|
||||||
|
|
||||||
|
updateSuggestions(call_now);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
};
|
||||||
|
|
||||||
|
return keyup;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
|
@ -1017,22 +1017,13 @@ $("#callsign").on("keypress", function(e) {
|
||||||
});
|
});
|
||||||
|
|
||||||
// On Key up check and suggest callsigns
|
// On Key up check and suggest callsigns
|
||||||
$("#callsign").keyup(function() {
|
$("#callsign").keyup( scp_keyup({
|
||||||
if ($(this).val().length >= 3) {
|
selector: $(this),
|
||||||
$('.callsign-suggest').show();
|
showSuggestions: function (call, text) {
|
||||||
$callsign = $(this).val().replace('Ø', '0');
|
$('.callsign-suggestions').text(text);
|
||||||
$.ajax({
|
$('.callsign-suggest').show();
|
||||||
url: 'lookup/scp',
|
}
|
||||||
method: 'POST',
|
}));
|
||||||
data: {
|
|
||||||
callsign: $callsign.toUpperCase()
|
|
||||||
},
|
|
||||||
success: function(result) {
|
|
||||||
$('.callsign-suggestions').text(result);
|
|
||||||
}
|
|
||||||
});
|
|
||||||
}
|
|
||||||
});
|
|
||||||
|
|
||||||
//Reset QSO form Fields function
|
//Reset QSO form Fields function
|
||||||
function resetDefaultQSOFields() {
|
function resetDefaultQSOFields() {
|
||||||
|
@ -1094,3 +1085,62 @@ function testTimeOffConsistency() {
|
||||||
}
|
}
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function scp_keyup(options) {
|
||||||
|
// options must have two keys:
|
||||||
|
// * selector - element, with .val() which gives the entered callsign
|
||||||
|
// * showSuggestions - function(call, text), where the text is
|
||||||
|
// the list of callsign-suggestions
|
||||||
|
const scp = {
|
||||||
|
request: "",
|
||||||
|
data: []
|
||||||
|
};
|
||||||
|
const callFromInput = (el) => el.val().toUpperCase().replace('0','Ø');
|
||||||
|
const checkCacheValid = (call) => (scp.request != "" && call.includes(scp.request));
|
||||||
|
const filterCallsignList = function (call) {
|
||||||
|
return scp.data?.filter((el) => (el.includes(call) == true)).join(' ') || '';
|
||||||
|
};
|
||||||
|
const updateSuggestions = function (call) {
|
||||||
|
const suggestions = filterCallsignList(call);
|
||||||
|
options.showSuggestions(call, suggestions);
|
||||||
|
}
|
||||||
|
|
||||||
|
const keyup = function(){
|
||||||
|
const call = callFromInput(options.selector);
|
||||||
|
|
||||||
|
if (call.length < 3) {
|
||||||
|
options.showSuggestions("", "");
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
if ( checkCacheValid(call) ) {
|
||||||
|
updateSuggestions(call);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Cache invalid, so update it and reset suggestions
|
||||||
|
options.showSuggestions("");
|
||||||
|
|
||||||
|
scp.request = call;
|
||||||
|
scp.data = [];
|
||||||
|
$.ajax({
|
||||||
|
url: 'lookup/scp',
|
||||||
|
method: 'POST',
|
||||||
|
data: {
|
||||||
|
callsign: call
|
||||||
|
},
|
||||||
|
success: function (result) {
|
||||||
|
const call_now = callFromInput(options.selector);
|
||||||
|
if (checkCacheValid(call_now)) {
|
||||||
|
scp.data = result.split(" ");
|
||||||
|
|
||||||
|
updateSuggestions(call_now);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
};
|
||||||
|
|
||||||
|
return keyup;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
Ładowanie…
Reference in New Issue