Skip to content

Commit

Permalink
Tag 2.6.15
Browse files Browse the repository at this point in the history
  • Loading branch information
magicbug authored Jun 26, 2024
2 parents 17171cd + a0e5d0c commit c874ec9
Show file tree
Hide file tree
Showing 52 changed files with 687 additions and 284 deletions.
2 changes: 1 addition & 1 deletion .github/workflows/cypress-tests.yml
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
name: Cypress Tests
on: [pull_request]
on: [pull_request, workflow_dispatch]
jobs:
cypress-e2e-tests:
runs-on: ubuntu-latest
Expand Down
13 changes: 8 additions & 5 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,12 +1,11 @@
# Cloudlog
[![Cypress Tests](https://github.com/magicbug/Cloudlog/actions/workflows/cypress-tests.yml/badge.svg)](https://github.com/magicbug/Cloudlog/actions/workflows/cypress-tests.yml)

# Cloudlog
> Important: Only accepting PRs on the "dev" branch.
Cloudlog is a self-hosted PHP application that allows you to log your amateur radio contacts anywhere. All you need is a web browser and active internet connection.

While Cloudlog as started by Peter Goodhall, 2M0SQL, it is has gained a core group of contributors these are listed below. If you would like to contribute to Cloudlog please see the [Contributing](#contributing) section below.

Core Contributors: 2M0SQL ([@magicbug](https://github.com/magicbug)), LA8AJA ([@AndreasK79](https://github.com/AndreasK79)), DF2ET ([@phl0](https://github.com/phl0)), HB9HIL ([@HB9HIL](https://github.com/HB9HIL)), DJ7NT ([@int2001](https://github.com/int2001))
While Cloudlog as started by Peter Goodhall, 2M0SQL, although since has received a lot of community code contributions. If you would like to contribute to Cloudlog please see the [Contributing](#contributing) section below.

Website: [http://www.cloudlog.co.uk](http://www.cloudlog.co.uk)

Expand Down Expand Up @@ -114,7 +113,11 @@ If you would prefer not to setup Cloudlog yourself [magicbug](https://magicbug.c

If you would like to contribute in any way to Cloudlog, it is most appreciated. This has been developed in free time, help coding new features or writing documentation is always useful.

Please note that Cloudlog was built using [Codeigniter](https://www.codeigniter.com/docs) version 3 and uses Bootstrap 4 for the user CSS framework documentation is available for this when building components.
Please note that Cloudlog was built using [Codeigniter](https://www.codeigniter.com/userguide3/) version 3 and uses [Bootstrap 5](https://getbootstrap.com/docs/5.3/getting-started/introduction/) as the frontend toolkit.

We also [HTMX](https://htmx.org/) for AJAX requests and [jQuery](https://jquery.com/) for some of the frontend functionality. We use [Font Awesome](https://fontawesome.com/) for icons.

At the moment we use [Cypress](https://www.cypress.io/) for end-to-end testing.

When submitting PRs please make sure code is commented and includes one feature only, multiple features or bug fixes will not be accepted. Please include a description of what your PR does and why it is needed.

Expand Down
2 changes: 1 addition & 1 deletion application/config/migration.php
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@
|
*/

$config['migration_version'] = 185;
$config['migration_version'] = 186;

/*
|--------------------------------------------------------------------------
Expand Down
10 changes: 10 additions & 0 deletions application/controllers/Dashboard.php
Original file line number Diff line number Diff line change
Expand Up @@ -34,6 +34,16 @@ public function index()
$this->load->model('logbooks_model');
$logbooks_locations_array = $this->logbooks_model->list_logbook_relationships($this->session->userdata('active_station_logbook'));

/*
Setup Code
// Check if the user has any logbook locations if not its setup time
if (empty($logbooks_locations_array)) {
// user has no locations
$this->session->set_flashdata('notice', 'You have no locations, please add one to continue.');
redirect('information/welcome');
}
*/

// Calculate Lat/Lng from Locator to use on Maps
if ($this->session->userdata('user_locator')) {
$this->load->library('qra');
Expand Down
21 changes: 7 additions & 14 deletions application/controllers/Gridmap.php
Original file line number Diff line number Diff line change
Expand Up @@ -76,9 +76,7 @@ public function getGridsjs() {
foreach ($query->result() as $row) {
$grid_2char_confirmed = strtoupper(substr($row->GRID_SQUARES,0,2));
$grid_4char_confirmed = strtoupper(substr($row->GRID_SQUARES,0,4));
if ($this->config->item('map_6digit_grids')) {
$grid_6char_confirmed = strtoupper(substr($row->GRID_SQUARES,0,6));
}
$grid_6char_confirmed = strtoupper(substr($row->GRID_SQUARES,0,6));

// Check if 2 Char is in array
if(!in_array($grid_2char_confirmed, $array_grid_2char_confirmed)){
Expand All @@ -89,10 +87,8 @@ public function getGridsjs() {
array_push($array_grid_4char_confirmed, $grid_4char_confirmed);
}

if ($this->config->item('map_6digit_grids')) {
if(!in_array($grid_6char_confirmed, $array_grid_6char_confirmed)){
if(!in_array($grid_6char_confirmed, $array_grid_6char_confirmed)){
array_push($array_grid_6char_confirmed, $grid_6char_confirmed);
}
}
}
}
Expand All @@ -104,9 +100,7 @@ public function getGridsjs() {

$grid_two = strtoupper(substr($row->GRID_SQUARES,0,2));
$grid_four = strtoupper(substr($row->GRID_SQUARES,0,4));
if ($this->config->item('map_6digit_grids')) {
$grid_six = strtoupper(substr($row->GRID_SQUARES,0,6));
}
$grid_six = strtoupper(substr($row->GRID_SQUARES,0,6));

// Check if 2 Char is in array
if(!in_array($grid_two, $array_grid_2char)){
Expand All @@ -116,12 +110,11 @@ public function getGridsjs() {
if(!in_array($grid_four, $array_grid_4char)){
array_push($array_grid_4char, $grid_four);
}

if ($this->config->item('map_6digit_grids')) {
if(!in_array($grid_six, $array_grid_6char)){
array_push($array_grid_6char, $grid_six);
}

if(!in_array($grid_six, $array_grid_6char)){
array_push($array_grid_6char, $grid_six);
}

}
}
$query_vucc = $this->gridmap_model->get_band_worked_vucc_squares($band, $mode, $qsl, $lotw, $eqsl, $qrz, $sat);
Expand Down
39 changes: 39 additions & 0 deletions application/controllers/Information.php
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
<?php if (!defined('BASEPATH')) exit('No direct script access allowed');

class Information extends CI_Controller
{

public function welcome()
{
$this->load->model('user_model');
// Make sure users logged in
if ($this->user_model->validate_session() == 0) {
// user is not logged in
redirect('user/login');
}
$this->load->model('logbooks_model');
$logbooks_locations_array = $this->logbooks_model->list_logbook_relationships($this->session->userdata('active_station_logbook'));

echo "welcome to cloudlog";

// check if user has any station logbooks

// if user has no logbooks create a General Logbook

// If logbooks_locations_array is empty
if (empty($logbooks_locations_array)) {
// user has no locations
echo "You have no locations, please add one to continue.";
}

// Check if they have provided a valid grid locator

// Check if Callbook information is provided

// Check country files are present

// Information about Cloudlog Aurora

// If all is present welcome the user and redirect to the dashboard
}
}
26 changes: 18 additions & 8 deletions application/controllers/Map.php
Original file line number Diff line number Diff line change
Expand Up @@ -80,13 +80,23 @@ public function map_plot_json() {
$offset = (intval($this->input->post('offset'))>0)?xss_clean($this->input->post('offset')):null;
$qsos = $this->logbook_model->get_qsos($nb_qso, $offset);
}
// [PLOT] ADD plot //
$plot_array = $this->logbook_model->get_plot_array_for_map($qsos->result());
// [MAP Custom] ADD Station //
$station_array = $this->Stations->get_station_array_for_map();

header('Content-Type: application/json; charset=utf-8');
echo json_encode(array_merge($plot_array, $station_array));
}
if(empty($qsos)) {
// Handle the case where $qsos is empty

}
// return json with error "No QSOs found"
header('Content-Type: application/json; charset=utf-8');
echo json_encode(array('error' => 'No QSOs found'));
} else {
// Handle the case where $qsos is not empty
// [PLOT] ADD plot //
$plot_array = $this->logbook_model->get_plot_array_for_map($qsos->result());
// [MAP Custom] ADD Station //
$station_array = $this->Stations->get_station_array_for_map();

header('Content-Type: application/json; charset=utf-8');
echo json_encode(array_merge($plot_array, $station_array));
}

}
}
6 changes: 3 additions & 3 deletions application/language/bulgarian/awards_lang.php
Original file line number Diff line number Diff line change
Expand Up @@ -196,10 +196,10 @@

/*
___________________________________________________________________________________________
WAB -- Use all 3 Lines of Text
WAB -- Use all 4 Lines of Text
___________________________________________________________________________________________
*/
$lang['awards_waja_description_ln1'] = "WAB - Worked All Britain Award";
$lang['awards_wab_description_ln1'] = "WAB - Worked All Britain Award";
$lang['awards_wab_description_ln2'] = "The Amateur Radio Worked All Britain (WAB) Award is a prestigious recognition program within the amateur radio community that celebrates communication achievements across the United Kingdom. The WAB Award scheme encourages radio operators to establish contact with stations located in different regions of Britain, fostering camaraderie and promoting radio communication skills. To earn the WAB Award, participants must make successful radio contacts with stations located in specific WAB areas, which are defined by Ordnance Survey grid squares. These grid squares cover the entirety of Great Britain, including England, Scotland, Wales, and some offshore islands.";
$lang['awards_wab_description_ln3'] = "Participants in the WAB Award program exchange information such as their location, signal strength, and WAB square reference during radio contacts. Points are awarded based on the location of the contacted station, with different point values assigned to contacts made within different WAB areas. By accumulating points from successful contacts, radio operators can progress through various award levels, each representing a significant milestone in their amateur radio journey. The WAB Award not only recognizes the dedication and skill of radio operators but also promotes geographic diversity and encourages exploration of the rich tapestry of locations across Britain through the medium of amateur radio.";
$lang['awards_waja_description_ln4'] = "For more information, please visit: <a href='https://wab.intermip.net/default.php' target='_blank'>https://wab.intermip.net/default.php</a>.";
$lang['awards_wab_description_ln4'] = "For more information, please visit: <a href='https://wab.intermip.net/default.php' target='_blank'>https://wab.intermip.net/default.php</a>.";
4 changes: 3 additions & 1 deletion application/language/bulgarian/statistics_lang.php
Original file line number Diff line number Diff line change
Expand Up @@ -25,10 +25,12 @@
*
*/

$lang['statistics_distances_bands_all'] = "All";
$lang['statistics_distances_worked'] = "Distances Worked";
$lang['statistics_distances_part1_contacts_were_plotted_furthest'] = "contacts were plotted.<br /> Your furthest contact was with";
$lang['statistics_distances_part2_contacts_were_plotted_furthest'] = "in gridsquare";
$lang['statistics_distances_part3_contacts_were_plotted_furthest'] = "the distance was";
$lang['statistics_distances_part3_contacts_were_plotted_furthest'] = "The distance was";
$lang['statistics_distances_part4_contacts_were_plotted_furthest'] = "The average distance is";
$lang['statistics_distances_number_of_qsos'] = "Number of QSOs";
$lang['statistics_distances_callsigns_worked'] = "Callsign(s) worked (max 5 shown)";
$lang['statistics_distances_qsos_with'] = "QSOs with";
Expand Down
6 changes: 3 additions & 3 deletions application/language/chinese_simplified/awards_lang.php
Original file line number Diff line number Diff line change
Expand Up @@ -196,10 +196,10 @@

/*
___________________________________________________________________________________________
WAB -- Use all 3 Lines of Text
WAB -- Use all 4 Lines of Text
___________________________________________________________________________________________
*/
$lang['awards_waja_description_ln1'] = "WAB - Worked All Britain Award";
$lang['awards_wab_description_ln1'] = "WAB - Worked All Britain Award";
$lang['awards_wab_description_ln2'] = "The Amateur Radio Worked All Britain (WAB) Award is a prestigious recognition program within the amateur radio community that celebrates communication achievements across the United Kingdom. The WAB Award scheme encourages radio operators to establish contact with stations located in different regions of Britain, fostering camaraderie and promoting radio communication skills. To earn the WAB Award, participants must make successful radio contacts with stations located in specific WAB areas, which are defined by Ordnance Survey grid squares. These grid squares cover the entirety of Great Britain, including England, Scotland, Wales, and some offshore islands.";
$lang['awards_wab_description_ln3'] = "Participants in the WAB Award program exchange information such as their location, signal strength, and WAB square reference during radio contacts. Points are awarded based on the location of the contacted station, with different point values assigned to contacts made within different WAB areas. By accumulating points from successful contacts, radio operators can progress through various award levels, each representing a significant milestone in their amateur radio journey. The WAB Award not only recognizes the dedication and skill of radio operators but also promotes geographic diversity and encourages exploration of the rich tapestry of locations across Britain through the medium of amateur radio.";
$lang['awards_waja_description_ln4'] = "For more information, please visit: <a href='https://wab.intermip.net/default.php' target='_blank'>https://wab.intermip.net/default.php</a>.";
$lang['awards_wab_description_ln4'] = "For more information, please visit: <a href='https://wab.intermip.net/default.php' target='_blank'>https://wab.intermip.net/default.php</a>.";
2 changes: 2 additions & 0 deletions application/language/chinese_simplified/statistics_lang.php
Original file line number Diff line number Diff line change
Expand Up @@ -25,10 +25,12 @@
*
*/

$lang['statistics_distances_bands_all'] = "全部";
$lang['statistics_distances_worked'] = "通联距离";
$lang['statistics_distances_part1_contacts_were_plotted_furthest'] = "次通联<br /> 您最远的通联是与";
$lang['statistics_distances_part2_contacts_were_plotted_furthest'] = "在网格";
$lang['statistics_distances_part3_contacts_were_plotted_furthest'] = "距离是";
$lang['statistics_distances_part4_contacts_were_plotted_furthest'] = "平均距离是";
$lang['statistics_distances_number_of_qsos'] = "QSO 数量";
$lang['statistics_distances_callsigns_worked'] = "通联的呼号(最多显示5个):";
$lang['statistics_distances_qsos_with'] = "QSO 与";
Expand Down
6 changes: 3 additions & 3 deletions application/language/czech/awards_lang.php
Original file line number Diff line number Diff line change
Expand Up @@ -195,10 +195,10 @@
$lang['awards_waja_description_ln4'] = "For more information, please visit: <a href='https://www.jarl.org/English/4_Library/A-4-2_Awards/Award_Main.htm' target='_blank'>https://www.jarl.org/English/4_Library/A-4-2_Awards/Award_Main.htm</a>.";
/*
___________________________________________________________________________________________
WAB -- Use all 3 Lines of Text
WAB -- Use all 4 Lines of Text
___________________________________________________________________________________________
*/
$lang['awards_waja_description_ln1'] = "WAB - Worked All Britain Award";
$lang['awards_wab_description_ln1'] = "WAB - Worked All Britain Award";
$lang['awards_wab_description_ln2'] = "The Amateur Radio Worked All Britain (WAB) Award is a prestigious recognition program within the amateur radio community that celebrates communication achievements across the United Kingdom. The WAB Award scheme encourages radio operators to establish contact with stations located in different regions of Britain, fostering camaraderie and promoting radio communication skills. To earn the WAB Award, participants must make successful radio contacts with stations located in specific WAB areas, which are defined by Ordnance Survey grid squares. These grid squares cover the entirety of Great Britain, including England, Scotland, Wales, and some offshore islands.";
$lang['awards_wab_description_ln3'] = "Participants in the WAB Award program exchange information such as their location, signal strength, and WAB square reference during radio contacts. Points are awarded based on the location of the contacted station, with different point values assigned to contacts made within different WAB areas. By accumulating points from successful contacts, radio operators can progress through various award levels, each representing a significant milestone in their amateur radio journey. The WAB Award not only recognizes the dedication and skill of radio operators but also promotes geographic diversity and encourages exploration of the rich tapestry of locations across Britain through the medium of amateur radio.";
$lang['awards_waja_description_ln4'] = "For more information, please visit: <a href='https://wab.intermip.net/default.php' target='_blank'>https://wab.intermip.net/default.php</a>.";
$lang['awards_wab_description_ln4'] = "For more information, please visit: <a href='https://wab.intermip.net/default.php' target='_blank'>https://wab.intermip.net/default.php</a>.";
4 changes: 3 additions & 1 deletion application/language/czech/statistics_lang.php
Original file line number Diff line number Diff line change
Expand Up @@ -25,10 +25,12 @@
*
*/

$lang['statistics_distances_bands_all'] = "All";
$lang['statistics_distances_worked'] = "Distances Worked";
$lang['statistics_distances_part1_contacts_were_plotted_furthest'] = "contacts were plotted.<br /> Your furthest contact was with";
$lang['statistics_distances_part2_contacts_were_plotted_furthest'] = "in gridsquare";
$lang['statistics_distances_part3_contacts_were_plotted_furthest'] = "the distance was";
$lang['statistics_distances_part3_contacts_were_plotted_furthest'] = "The distance was";
$lang['statistics_distances_part4_contacts_were_plotted_furthest'] = "The average distance is";
$lang['statistics_distances_number_of_qsos'] = "Number of QSOs";
$lang['statistics_distances_callsigns_worked'] = "Callsign(s) worked (max 5 shown)";
$lang['statistics_distances_qsos_with'] = "QSOs with";
Expand Down
6 changes: 3 additions & 3 deletions application/language/dutch/awards_lang.php
Original file line number Diff line number Diff line change
Expand Up @@ -196,10 +196,10 @@

/*
___________________________________________________________________________________________
WAB -- Use all 3 Lines of Text
WAB -- Use all 4 Lines of Text
___________________________________________________________________________________________
*/
$lang['awards_waja_description_ln1'] = "WAB - Worked All Britain Award";
$lang['awards_wab_description_ln1'] = "WAB - Worked All Britain Award";
$lang['awards_wab_description_ln2'] = "The Amateur Radio Worked All Britain (WAB) Award is a prestigious recognition program within the amateur radio community that celebrates communication achievements across the United Kingdom. The WAB Award scheme encourages radio operators to establish contact with stations located in different regions of Britain, fostering camaraderie and promoting radio communication skills. To earn the WAB Award, participants must make successful radio contacts with stations located in specific WAB areas, which are defined by Ordnance Survey grid squares. These grid squares cover the entirety of Great Britain, including England, Scotland, Wales, and some offshore islands.";
$lang['awards_wab_description_ln3'] = "Participants in the WAB Award program exchange information such as their location, signal strength, and WAB square reference during radio contacts. Points are awarded based on the location of the contacted station, with different point values assigned to contacts made within different WAB areas. By accumulating points from successful contacts, radio operators can progress through various award levels, each representing a significant milestone in their amateur radio journey. The WAB Award not only recognizes the dedication and skill of radio operators but also promotes geographic diversity and encourages exploration of the rich tapestry of locations across Britain through the medium of amateur radio.";
$lang['awards_waja_description_ln4'] = "For more information, please visit: <a href='https://wab.intermip.net/default.php' target='_blank'>https://wab.intermip.net/default.php</a>.";
$lang['awards_wab_description_ln4'] = "For more information, please visit: <a href='https://wab.intermip.net/default.php' target='_blank'>https://wab.intermip.net/default.php</a>.";
4 changes: 3 additions & 1 deletion application/language/dutch/statistics_lang.php
Original file line number Diff line number Diff line change
Expand Up @@ -25,10 +25,12 @@
*
*/

$lang['statistics_distances_bands_all'] = "All";
$lang['statistics_distances_worked'] = "Distances Worked";
$lang['statistics_distances_part1_contacts_were_plotted_furthest'] = "contacts were plotted.<br /> Your furthest contact was with";
$lang['statistics_distances_part2_contacts_were_plotted_furthest'] = "in gridsquare";
$lang['statistics_distances_part3_contacts_were_plotted_furthest'] = "the distance was";
$lang['statistics_distances_part3_contacts_were_plotted_furthest'] = "The distance was";
$lang['statistics_distances_part4_contacts_were_plotted_furthest'] = "The average distance is";
$lang['statistics_distances_number_of_qsos'] = "Number of QSOs";
$lang['statistics_distances_callsigns_worked'] = "Callsign(s) worked (max 5 shown)";
$lang['statistics_distances_qsos_with'] = "QSOs with";
Expand Down
Loading

0 comments on commit c874ec9

Please sign in to comment.