Giter Club home page Giter Club logo

wavelog's Introduction

GitHub License Übersetzungsstatus GitHub commit activity

Wavelog

Important: Only accepting PRs on the "dev" branch.

Wavelog 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.

Wavelog itself is an enhanced fork of Cloudlog by 2M0SQL. If you would like to contribute to Wavelog please see the Contributing section below.

The Core-Dev-Team for Wavelog are (in Alphabetic order of the Call):

Demo

Test Wavelog and it's features!
https://demo.wavelog.org

Username: demo
Password: demo

Requirements

Recommended: Classic-LAMP-Stack:

  • Linux based Operating System (Windows stack may also work)
  • Apache (Nginx should work)
  • PHP Version 7.4 up to PHP 8.2 (PHP 8.3. in friendly Usertest)
  • MySQL or MariaDB (MySQL 5.7 or higher // MariaDB 10.1 or higher)

Alternative - Easy start with prebuilt Docker-image:

Notes

  • If you want to log microwave QSOs you will need to use a 64bit operating system.

Setup

Installation information can be found on the wiki.

Support

Wavelog-support can be reached by creating an issue here at github. If you've any issues don't hesitate to create one here. Please provide as much information as possible to reproduce the Problem

Contributing

Special thanks to our contributors, who are part of Wavelog by improving code!

F4ANS, DG0TM, DG9VH, DJ3CE, R1BLH, BG2ELG, DF1ASH, DB4SCW, VE2HEW, OK1GOD, DJ1PW, toseppo, N7DSB

Translators:

Ondřej Koloničný (OK1CDJ), Michael Skolsky (R1BLH), Karuru (BG2ELG), Byt3, BG6HJE, Francisco (F4VSE), Kim (DG9VH), Casper van Lieburg (PA7DX), Halil AYYILDIZ (TA2LG), Michal Šiman, DN4BS, Luca (IU2FRL), Dragan Đorđević (4O4A), Dren Imeraj (Z63DRI), Filip Melik (OK1GOD), Petr (OK1PTR), Stefan (DB4SCW), F4JSU, Maciej

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

For translations and language stuff you can refer to our Wiki about Translations.

Please note that Wavelog was built using Codeigniter version 3 and uses Bootstrap 5 for the user CSS framework documentation is available for this when building components.

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.

wavelog's People

Contributors

205er avatar 4o4a avatar abarrau avatar andreask79 avatar daccle avatar db4scw avatar dg9vh avatar dj3ce avatar g0wfv avatar hb9hil avatar hugosilvaparagramanet avatar int2001 avatar iu2frl avatar jsb2092 avatar kb-light avatar kikosgc avatar leroydiazg avatar magicbug avatar manawyrm avatar nsnw avatar ofadam avatar oh1jw avatar onovy avatar phl0 avatar poll-busily avatar r1blh avatar skweeker avatar violarulan avatar wavelog-translator avatar weblate avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

wavelog's Issues

Feature Request - offline mode of Contest Logging

By submitting feature requests, you have the opportunity to contribute your ideas and inspiration to the Wavelog Dev-Team. Please be aware that not every feature request will be addressed or answered.

What Feature is Missing?
Offline mode of Contest Logging, just like the SFLE.

Add support of the contest logging mode to SFLE is also OK, but keep in mind you need to support the generation of the continuous serial number which is needed in some contests such as CQ WPX.

Why is This Feature Important?
Some people like me don't have that much money to purchase a station room, or for a better signal and lower noise.

They must set up their station in the outside field, which lacks Internet connection.

In fact, I did my 2024 CQ WPX SSB contest in the outside field, with QRP, pen and paper!

It is painful and result of at least five duplicated QSOs, lost a ton of scores.

Is This Feature Personal or Beneficial to Others as Well?
Yes, especially the young HAM.

Did not see the added QSO

Hello,
had Version 1.5.x and did Update to 1.6

Now tryed to add my 1st QSO ( QSO -> Manuel .../wavelog/index.php/qso?manual=1 )
but is no show add the main page or Logbook -> Overview
In Logbook -> expanded I can find it.

grafik

grafik

grafik

What did I wrong ?

Fragen: COTA / FOTA / POTA....

Hallo,
wenn man z.B: COTA macht wie kann man dann den eigenen QTH, Locator Code anpassen ?
Wenn man das QSO eintragen will.
Wie setzt man dann z.B. /p zum Rufzeichen hinzu ?

QSO-date and -time differs from lotw-last-upload

Describe the bug

QSO-date and -time differ unplausibly from lotw-last-upload-timestamp of callsign, see screenshot:

image

Maybe an timezone-issue of the timestamp? Do we need here to convert the used timezone on the ARRL-system to UTC?

Is the docker compose file tested?

I don't see how wavelog-main can access wavelog-db, in the installation stage it keeps saying "connection refused".

version: '3'
services:
  wavelog-db:
    image: mariadb:11.3
    container_name: wavelog-db
    environment:
      MARIADB_RANDOM_ROOT_PASSWORD: yes
      MARIADB_DATABASE: wavelog
      MARIADB_USER: wavelog
      MARIADB_PASSWORD: wavelog # <- Insert a strong password here
    volumes:
      - wavelog-dbdata:/var/lib/mysql
    restart: unless-stopped

  wavelog-main:
    container_name: wavelog-main
    image: ghcr.io/wavelog/wavelog:latest
    depends_on:
      - wavelog-db
    environment:
      CI_ENV: docker
    volumes:
      - wavelog-config:/var/www/html/application/config/docker
      - wavelog-uploads:/var/www/html/uploads
      - wavelog-userdata:/var/www/html/userdata
    ports:
      - "8086:80"
    restart: unless-stopped

volumes:
  wavelog-dbdata:
  wavelog-uploads:
  wavelog-userdata:
  wavelog-config:
``

no distance analyse will be show

Hi,
using Version 1.6
have to QSOs added but no data in the distance analayse.
What did I wrong ?

image

Can see the 2 QSOs in ../wavelog/index.php/statistics

image

QSL Label printing

What Feature is Missing?
When printing labels for modes that are submodes to a mode on the qsl label only the mode would be printed. For example: When using FT4 as submode the mode would be MFSK (what is correct) but the info that it was FT4 is lost.

Why is This Feature Important?
It's much more clearer what mode was used exactly for QSLing.

Is This Feature Personal or Beneficial to Others as Well?
I think this benefits all users that are logging QSOs via ADIF-import from digimode-programms for example.

QSL Card in PDF Format

What Feature is Missing?
QSL Card upload in PDF file format

Why is This Feature Important?
Today I can only upload QSL-Cards as a picture. This is very complicated, because you have to create an image for the front and an image for the back side. I scan my QSL Cards with a document scanner or printer. These automatically create a PDF with the front and back side in one file.

Is This Feature Personal or Beneficial to Others as Well?
The feature ist beneficial for others, because many other OMs an Yes use the PDF format to archive QSL-Cards

Remove eQSL from Dashboard

Discussed in #297

Originally posted by 4O4A April 18, 2024
Hi guys,

It is possible to remove eQSL column in log if eQSL data is not set in Third Party Services tab.
Is it possible to have eQSL removed from Dashboard, following the same criteria?

Regards,
Dragan, 4O4A

Bug Repot - Advanced Search result in 500 internal error

This is for reporting bugs with the code, if this issue is regarding setting up on your local server please use the discussions area

Describe the bug
/search/run_query return 500 internal error, but other search approach results good.

It does not seem to a DB issue, much like the php logic code error.

Because when run the query, it does provide at least one result in the response, but the HTTP Code is 500 and no result output to the page.

Version Information
We need some information about your versions. You can get all Information in the Admin > Debug Menu

  • OS: Ubuntu22.4
  • PHP: 8.1
  • MySQL/MariaDB: 5.5.5-10.10.6-MariaDB-1:10.10.6+maria~ubu2204
  • Wavelog: 1.4

To Reproduce
Steps to reproduce the behaviour:

  1. Go to 'https://<your.domain.com>/search/filter'
  2. Click on 'Run query or Search' with any rules that will provide non-empty result
  3. See error

Expected behaviour
It should show the result correctly.

Screenshots
image
image
image

Desktop (please complete the following information):

  • OS: macOS
  • Browser Chrome
  • Version 123.0.6312.107

Smartphone (please complete the following information):

  • Device: [e.g. iPhone6]
  • OS: [e.g. iOS8.1]
  • Browser [e.g. stock browser, safari]
  • Version [e.g. 22]

Additional context
Similar bug with cloudlog before I migrate to wavelog magicbug/Cloudlog#3070

Change order of fields for new QSO form

What Feature is Missing?
Feature to change the order of fields in QSO edit page.
Other loggers (like N1MM, Log4OM, HAMRS, CQRlog, etc.) have a different sorting order while pressing tab.
They all go from Callsign to RSTs to RSTr, then the orders are different for each logger but most go Name, then QTH.
Having to press tab 4 times to skip from callsign to RSTs means skipping 3 fields each QSO which are (when calling CQ or using CAT) irrelevant for input.
For those users, moving the column containing band, mode and frequency above "callsign" would change the tab order to be more inline with other loggers.
Before:
before
After:
after
To please both crowds, a configurable switch in the user config would solve this quite well.

Why is This Feature Important?
Mostly to reduce unneccessary inputs and to feel more organic for users switching from other loggers getting to keep their muscle memory. Especially while doing event work, POTA or other pileup-heavy work, loosing these 3 keystrokes for each qso could be quite nice.

Is This Feature Personal or Beneficial to Others as Well?
I think this would benefit more users, especially those switching from other loggers with the different layout (like N1MM, Log4OM, HAMRS, CQRlog, etc.)

73, DB4SCW

Add Refences (SIG) to Labels

There should be an Option to add references (IOTA, SOTA, COTA, WWFF) to the label.
For some Awards the QSL-Card is only valid with that additional Information (like Grid at >HF QSOs)

Feature Request - Language selection for the map

By submitting feature requests, you have the opportunity to contribute your ideas and inspiration to the Wavelog Dev-Team. Please be aware that not every feature request will be addressed or answered.

What Feature is Missing?
A language selection for the map or the set language of wavelog should also affect the map.

Why is This Feature Important?
If all the countries and places on the map are written in the respective national languages, most users will not be able to understand much, especially with different characters (such as Chinese, Cyrillic alphabet, Arabic script).

Is This Feature Personal or Beneficial to Others as Well?
Very few users will understand all the alphabets in the world. It should therefore be a very useful feature for most people to have the map in their own language or at least in English.

QSO data mismatch hardware interface data

Discussed in #426

Originally posted by R1BLH May 29, 2024
Sometimes i found a strange situation.
I'm using FT-857 controlled by PC via Omnirig. To connect Omnirig with Wavelog I used CloudCat application.
Information about the transceiver frequency is normally displayed on the dashboard, but to the QSO entry form only the band information is transferred correctly, but the frequency field is filled with the default frequency for the band.
Please have a look at the screenshots:
Omnirig (CloudCat):
изображение
Dashboard:
изображение
Station data from new QSO form:
изображение
QSO form data:
изображение

Update:
Before transmit all was OK.
During transmit all is 0:
изображение
After switching from transmit to receive band is correct, frequency is default:
изображение

Improve Frequency input

Hi all,

When displaying a QSO, the frequency will be shown in the following way: 21.300 - Frequency in MHz with dot as decimal separator and three digits as decimal. Unfortunately, you cannot enter a frequency in this format, but it must be entered in Herz. To stick to my example: 21300000 must be entered! If you enter 21.300, the frequency will not be overtaken correctly, but set to the value 21 and displayed as 0.000

Would it be possible to improve this behavior or at least implement a check, so that the input does not get lost?

Freq
Freq

73

[Cron Manager] All cron jobs fail

Describe the bug
I enabled cron manager but all jobs are failing. The next time the job is supposed to run is calculated but on the exact date only errors are shown in my log output of my cronmanger cronjob

Version Information
We need some information about your versions. You can get all Information in the Admin > Debug Menu

  • OS: Debian 12, Kernel 6.1.85
  • PHP: 8.1.27
  • MySQL/MariaDB: 10.11.6
  • Wavelog: 1.6 latest commit (d32293e in dev branch)

Steps to Reproduce

  1. Enable cronmanger in crontab, disable old cronjobs
  2. Setup cronjobs on cronmanager web interface as desired
  3. Wait for a job to be triggered
  4. Watch output file wl_log of curl --silent https://192.168.1.41/index.php/cron/run &>/root/wl_log
    Example output for eqsl_sync and clublog_sync:

CRON: clublog_upload -> is due: true CRON: clublog_upload -> RUNNING... ERROR: Something went wrong with clublog_upload CRON: eqsl_sync -> is due: true CRON: eqsl_sync -> RUNNING... ERROR: Something went wrong with eqsl_sync

Clublog as well as eqsl sync were working flawlessly using the old cronjobs stated in the crontab file.
Wavelog log threshold is set to 4 and the output truncated to the last minute:

INFO - 2024-06-01 13:50:01 --> Config Class Initialized INFO - 2024-06-01 13:50:01 --> Hooks Class Initialized INFO - 2024-06-01 13:50:01 --> UTF-8 Support Enabled INFO - 2024-06-01 13:50:01 --> Utf8 Class Initialized INFO - 2024-06-01 13:50:01 --> URI Class Initialized INFO - 2024-06-01 13:50:01 --> Router Class Initialized INFO - 2024-06-01 13:50:01 --> Output Class Initialized INFO - 2024-06-01 13:50:01 --> Security Class Initialized INFO - 2024-06-01 13:50:01 --> Input Class Initialized INFO - 2024-06-01 13:50:01 --> Language Class Initialized INFO - 2024-06-01 13:50:01 --> Loader Class Initialized INFO - 2024-06-01 13:50:01 --> Config file loaded: /var/www/html/application/config/wavelog.php INFO - 2024-06-01 13:50:01 --> Config file loaded: /var/www/html/application/config/bands.php INFO - 2024-06-01 13:50:01 --> Config file loaded: /var/www/html/application/config/lotw.php INFO - 2024-06-01 13:50:01 --> Helper loaded: url_helper INFO - 2024-06-01 13:50:01 --> Helper loaded: security_helper INFO - 2024-06-01 13:50:01 --> Helper loaded: language_helper INFO - 2024-06-01 13:50:01 --> Language file loaded: language/english/account_lang.php INFO - 2024-06-01 13:50:01 --> Language file loaded: language/english/adif_lang.php INFO - 2024-06-01 13:50:01 --> Language file loaded: language/english/admin_lang.php INFO - 2024-06-01 13:50:01 --> Language file loaded: language/english/awards_lang.php INFO - 2024-06-01 13:50:01 --> Language file loaded: language/english/contesting_lang.php INFO - 2024-06-01 13:50:01 --> Language file loaded: language/english/eqsl_lang.php INFO - 2024-06-01 13:50:01 --> Language file loaded: language/english/export_lang.php INFO - 2024-06-01 13:50:01 --> Language file loaded: language/english/filter_lang.php INFO - 2024-06-01 13:50:01 --> Language file loaded: language/english/general_words_lang.php INFO - 2024-06-01 13:50:01 --> Language file loaded: language/english/gridsquares_lang.php INFO - 2024-06-01 13:50:01 --> Language file loaded: language/english/lotw_lang.php INFO - 2024-06-01 13:50:01 --> Language file loaded: language/english/menu_lang.php INFO - 2024-06-01 13:50:01 --> Language file loaded: language/english/notes_lang.php INFO - 2024-06-01 13:50:01 --> Language file loaded: language/english/options_lang.php INFO - 2024-06-01 13:50:01 --> Language file loaded: language/english/qslcard_lang.php INFO - 2024-06-01 13:50:01 --> Language file loaded: language/english/qso_lang.php INFO - 2024-06-01 13:50:01 --> Language file loaded: language/english/station_lang.php INFO - 2024-06-01 13:50:01 --> Language file loaded: language/english/statistics_lang.php INFO - 2024-06-01 13:50:01 --> Database Driver Class Initialized INFO - 2024-06-01 13:50:01 --> Session: Class initialized using 'files' driver. INFO - 2024-06-01 13:50:01 --> Migrations Class Initialized INFO - 2024-06-01 13:50:01 --> Language file loaded: language/english/migration_lang.php INFO - 2024-06-01 13:50:01 --> Database Forge Class Initialized INFO - 2024-06-01 13:50:01 --> Model "Options_model" initialized INFO - 2024-06-01 13:50:01 --> Model "User_options_model" initialized INFO - 2024-06-01 13:50:01 --> Model "Logbooks_model" initialized INFO - 2024-06-01 13:50:01 --> Model "Stations" initialized INFO - 2024-06-01 13:50:01 --> Model "Oqrs_model" initialized INFO - 2024-06-01 13:50:01 --> Controller Class Initialized INFO - 2024-06-01 13:50:01 --> Model "Cron_model" initialized INFO - 2024-06-01 13:50:01 --> Final output sent to browser INFO - 2024-06-01 13:50:01 --> Total execution time: 0.0410

Callsign Lookup - No informations if a suffix like /P or a prefix is added to the Call

Describe the bug
When adding a QSO (Live or Post-QSO) with a callsign using a suffix like /P, no informations will be added to the QSO. The same applies to prefixes for different countries. The fallback to the callsign without is made, but only shown as information.

Version Information

  • Wavelog: 1.6

Steps to Reproduce

  1. Go to QSO -> Live QSO
  2. Click in the callsign field and add CALL/P (e.g. HB9HJQ/P and LA/HB9HJQ)
  3. Check if the name is added.
  4. Check the informations in the box on the right below the map.

Expected Behavior
If no direct match for CALL/SUFFIX or PREFIX/CALL is found, use the informations for CALL

Desktop Information:

  • OS: MacOS
  • Browser: Safari
  • Version: 17.5

Screenshot
Bildschirmfoto 2024-06-06 um 14 42 53
Bildschirmfoto 2024-06-06 um 14 47 29

Enabled QSL-Methods not shown correctly in Logbook Overview

Describe the bug
With having one or multiple QSL-Methods enabled in the account, disabling QSL results in hiding the LoTW column instead of QSL column in Logbook overview.
In this example, only enabling LoTW is described.

Version Information

  • OS: FreeBSD
  • PHP: 8.1
  • MySQL/MariaDB: 10.6.16
  • Wavelog: 1.6

Steps to Reproduce

  1. Go to 'Account'
  2. Click on 'Default Values'
  3. Enable "LoTW" only
  4. Got to Logbook -> Overview
  5. See the QSL column instead of LoTW

Expected Behavior
Only show the enabled QSL-Methodes columns

Screenshots
Settings
Bildschirmfoto 2024-05-26 um 12 36 04

Logbook Overview
Bildschirmfoto 2024-05-26 um 12 36 17

Desktop Information:

  • OS: MacOS 14.5
  • Browser: Chrome / Safari
  • Version: 17.5 / 125.0.6422.76

Map in home page not plotting QSO correctly

This is for reporting bugs with the code, if this issue is regarding setting up on your local server please use the discussions area

Describe the bug
Map in home page should plot the QSO use the current active station location as center.

Check the screenshot for details, the QSO with USA station not plotted at the right side of the map.

But the map in "Advanced logbook" is correct.

Steps to Reproduce

  1. Go to 'demo.wavelog.org'
  2. Login, make, link and active a station located in China.
  3. Add a QSO with USA station
  4. Go back home page
  5. See error

Expected Behavior
The QSO at map should be plotted as the "Advanced logbook" map

Screenshots
Include screenshots if applicable to illustrate the issue.

屏幕截图 2024-06-03 150609

Docker container updates but does not run latest migration.

Hi! I noticed a bug after pulling the latest Docker container. The migration file is not updated and needs to be manually edited to update Wavelog.

Steps to reproduce:

  1. Pull latest version
  2. Open Wavelog
  • Version info still shows old version

chrome_947_y0SH9AEtHF

  • New tools are shown in the menu like Cron Manager but result in HTTP Error 500

chrome_948_tddFaki1P1

  1. Manually edit migration.php
docker exec -it wavelog-main bash
apt install nano
nano /var/www/html/application/config/docker/migration.php
  • Showing the difference between config/migration.php and config/docker/migration.php

WindowsTerminal_950_lgjpHEwjtN

  1. Open Wavelog and it updates successfully.

chrome_951_NurIyOjpjY

Environment:
As described in the docker-compose.yaml in the wiki:
https://github.com/wavelog/wavelog/wiki/Installation-via-Docker

Thanks!

Problem with database password with single quote

Describe the bug
I have just installed wavelog and used a generated password for the database.
After finishing the installation, wavelog was only returning a blank page and I saw an
500 HTTP error in the access log.
After some debugging I noticed that application/config/database.php has an invalid string, as the generated password contained a single quote character, which broke the password setting.

Version Information
We need some information about your versions. You can get all Information in the Admin > Debug Menu

  • OS: Debian 12
  • PHP: 8.2
  • MySQL/MariaDB: 10.11
  • Wavelog: 1.2 / git

Steps to Reproduce
Installed wavelog with a database password that contains a single quote.

Expected Behavior
Either a password with known problematic characters is rejected during installation, or problematic characters like ', \ etc. are escaped.

Opening P12 unsupported while uploading LotW certs // Ubuntu + OpenSSL

Description
While uploading a .p12 LotW cert the upload form returns without error in UI. Nothing gets imported.
Cause is unsupported (legacy) routines in OpenSSL3. Workaround is activating legacy modes, but that should not be permanent in my opinion.

Version Information
We need some information about your versions. You can get all Information in the Admin > Debug Menu

  • OS: Ubuntu 22.04.4
  • PHP: 8.1.2
  • MySQL/MariaDB: irrelevant for the bug
  • Wavelog: 1.5.2
  • OpenSSL 3.0.2

Steps to Reproduce

  1. Have a default Ubuntu 22.04.4 installation
  2. Upload certificate
  3. see form return without error and without uploading the cert to the database

Expected Behavior
Have the .p12 certificate uploaded to the database.

Resolution
The underlying error is "error:0308010C:digital envelope routines::unsupported" which unfortunately does not get shown on the UI.
To resolv this issue, /etc/ssl/openssl.cnf has to be changed:
Replace the [default_sect] section of the file with:
[default_sect] activate = 1 [legacy_sect] activate = 1

and change the [provider_sect] section to:
[provider_sect] default = default_sect legacy = legacy_sect

Restart the machine and everything works.

73 de DB4SCW

Ablauf wenn man im Ausland aktiv ist ?

Hallo Zusammen,
wie geht man vor wenn man im Ausland aktiv ist ?
Sprich was muss man im Setup machen

https://.../wavelog/index.php/stationsetup

Danke

How to reset User password ?

Hello,
how to reset Users password when the "Password Rest eMail" will not send.
How to do this on the MariaDB ?

Unable to complete installation

Hi team, I did a clean installation and everything from scratch. However I keep getting
Not all fields have been filled in correctly. The host, username, password, and database name are required.

The database info are working as the "connection test" passed. But when i click install, it keep throwing that error.

OS: Ubuntu 22.04.4 LTS
Apache: 2.4.52
PHP: PHP 8.1.2-1ubuntu2.15
MySQL/MariaDB: 10.6.16
Wavelog: latest master branch

Edit:
found this in apache2 error log PHP Warning: Undefined array key "database_check" in /var/www/html/install/index.php on line 94, referer: http://domain.com/install/

Image Ersteller, erstellt Bild mit Rand

  • OS: Debian 12.2
  • PHP: 8.2.7
  • MySQL/MariaDB: 10.11.4-MariaDB-1~deb12u1
  • Wavelog: 1.5.2

Steps to Reproduce

  1. logbuch
  2. Click on 'Erweitert'
  3. Click on 'Karte'
  4. Click on 'print map Current Size'
  5. Save the Image
  6. Open Image
  7. See error

Expected Behavior
Ein Bild in voller Größe ohne Rand

Screenshots

so bekomme ich das bild
Wavelog

So sollte es sein
Wavelog 1

Desktop Information:

  • OS: [Windows 10 Pro]
  • Browser: [Opera]
  • Version: [108.0.5067.29]
  • Chromium-Version: [122.0.6261.112]

Storage engine MyISAM is disabled (Table creation is disallowed)

Hello,

I'm trying to get wavelog installed and have gone through the initial install process which eventually worked, however viewing the installed site reports this error:

An uncaught Exception was encountered

Type: mysqli_sql_exception

Message: Storage engine MyISAM is disabled (Table creation is disallowed).

Filename: /home/sites/htdocs/wavelog/system/database/drivers/mysqli/mysqli_driver.php

Line Number: 301

Wondered anyone has any suggestions on where to start to fix this? I'm using MySQL 8 on a Digital Ocean managed database.

Thanks

Adding missing dependencies to the installation guide (FreeBSD server)

I recently tried to install wavelog on a FreeBSD server, but it didnt work properly, althogh I followed every single step in the wiki. I also tried it on my PC (with XAMPP) and it worked without an issue. So I did a little bit of debugging and noticed, that I haven´t installed some important PHP-packages. After installing them, everything worked perfectly fine.

The missing packages are: zlib, simplexml

Normally theese packages are installed with PHP by default, but in my case, I had to install them manually. (I tested it with PHP 8.3 and 8.1)

Without theese packages installed, I can open the installation dialog, but when I click the Install button, I immediately get a HTTP 500 error. As mentioned above, after installing theese packeges, I could install wavelog properly.

So my feature request would be, that you update the wiki and add these three packages to the prerequisites adn update the command for installing PHP to something like this: pkg install php81 php81-ctype php81-curl php81-mysqli php81-mbstring php81-session php81-xml php81-zip php81-zlib php81-simplexml php81-filter

Comment field in the Advanced Logbook view

Hi,

i would like to have the option to view the comment field of the QSOs in the advanced view. When using FT8 for example, i put the POTA Spot inside the comment at WSJTX. So i can transfer it later into the awards field...

Maybe it would be even better to allow selection of any field to display as a table-row?

vy 73 de Karl, DD7KT

Add the ability to set a default radio used for live QSO

What Feature is Missing?
I would recommend adding the ability to define a default radio (from the hardware interface list) to be used on the "Live QSO" page. Alternative would be storing the last selected radio within the user.

Why is This Feature Important?
Using hardware interfaces is an awesome feature, but every time you navigate around Wavelog, coming back to add a live QSO, you need to set the radio first. The feature would save time getting ready, especially in hectic moments.

Is This Feature Personal or Beneficial to Others as Well?
It's definitely a benefit for every user of a hardware interfaces in Wavelog

[C -> M] Code Cleanup (Progress Tracker)

This issue tracks the progress of the 'C -> M' movement.

Target:
We want to move all cron functions which are currently located in the controllers move to the/a model. This allows us to call the functions from the 'Cron Manager' directly in PHP with CodeIgniter instead to run a curl, to run a curl, to run a curl....

  • Move Function 'clublog/upload'
    • Move Code 
    • Test
    • Check all Functions in WebUI working as before
    • PR: #408
  • Move Function 'eqsl/sync'
    • Move Code 
    • Test
    • Check all Functions in WebUI working as before
    • PR: #445
  • Move Function 'hrdlog/upload'
    • Move Code 
    • Test
    • Check all Functions in WebUI working as before
    • PR: #509
  • Move Function 'lotw/lotw_upload'
    • Move Code 
    • Test
    • Check all Functions in WebUI working as before
    • PR: #536
  • Move Function 'qrz/download'
    • Move Code 
    • Test
    • Check all Functions in WebUI working as before
    • PR:
  • Move Function 'qrz/upload'
    • Move Code 
    • Test
    • Check all Functions in WebUI working as before
    • PR:
  • Move Function 'update/dxcc'
    • Move Code 
    • Test
    • Check all Functions in WebUI working as before
    • PR:
  • Move Function 'update/lotw_users'
    • Move Code 
    • Test
    • Check all Functions in WebUI working as before
    • PR: #338
  • Move Function 'update/update_clublog_scp'
    • Move Code 
    • Test
    • Check all Functions in WebUI working as before
    • PR: #338
  • Move Function 'update/update_dok'
    • Move Code 
    • Test
    • CCheck all Functions in WebUI working as before
    • PR: #338
  • Move Function 'update/update_pota'
    • Move Code 
    • Test
    • Check all Functions in WebUI working as before
    • PR: #338
  • Move Function 'update/update_sota'
    • Move Code 
    • Test
    • Check all Functions in WebUI working as before
    • PR: #338
  • Move Function 'update/update_wwff'
    • Move Code 
    • Test
    • Check all Functions in WebUI working as before
    • PR: #338

 

IF ALL ARE DONE:

  • Change cron/run to direct call instead curl
  • Rename "LotW Upload" to "LotW Up- and Download"
  • Change debug view file update

Add "Update from Callbook"-Botton in QSO-Details and Edit-QSO

What Feature is Missing?
Please add an "Update from Callbook"-Button in QSO-Details and Edit QSO:
image

image

Why is This Feature Important?
Because many of us are using third-party-software (for example N1MM for contesting or WSJT-X for FTx-QSOs), we don't have detailed data on name, QTH and so on and with this button (that is already available in advanced logbook) one can fetch missing data from callbook-services.

This is especially of interrest, if you are viewing the QSOs in the QSL-print-list or if you search for single callsigns via search function to have this function on single-QSO-base to not have the necessarity to switch over to advanced log to do this.

Is This Feature Personal or Beneficial to Others as Well?
I think this feature would be a benefit for all users.

Integration of DARC QSL Shop

What Feature is Missing?
If I select QSL Cards to be printed, it would be a nice feature, if they could be automatically send to the DARC QSL (Printing) Service.

Why is This Feature Important?
It reduces, the hurdles, when you want to print QSL Cards

Is This Feature Personal or Beneficial to Others as Well?
I think the user base might have a difference in the need. It might not be the highest priority, but a nice to have feature.

Advanced logbook is very slow if it contains a lot of qsos

Hi,
first thanks for your awesome log software.
We are using wavelog in our clubstation. Recently we notices that the advanced logbook got really slow (5s with 25k qsos). Some
profiling revealed the culprit. It is the following query from application/models/Logbookadvanced_model.php

SELECT *  FROM TABLE_HRD_CONTACTS_V01 qsos
INNER JOIN station_profile ON qsos.station_id=station_profile.station_id
LEFT OUTER JOIN satellite ON qsos.COL_SAT_NAME = satellite.name
LEFT OUTER JOIN dxcc_entities ON qsos.col_dxcc=dxcc_entities.adif
LEFT OUTER JOIN lotw_users ON qsos.col_call=lotw_users.callsign
LEFT OUTER JOIN (select count(*) as qslcount, qsoid from qsl_images group by qsoid) x on qsos.COL_PRIMARY_KEY = x.qsoid      
WHERE station_profile.user_id =  3 AND qsos.station_id = '2'
ORDER BY qsos.COL_TIME_ON desc, qsos.COL_PRIMARY_KEY desc
LIMIT 250;

Profiling the query with mariadb revealed the following.

+------------------------+----------+
| Status                 | Duration |
+------------------------+----------+
| Starting               | 0.000229 |
| checking permissions   | 0.000010 |
| Opening tables         | 0.000062 |
| After opening tables   | 0.000015 |
| System lock            | 0.000007 |
| table lock             | 0.000010 |
| Opening tables         | 0.000017 |
| After opening tables   | 0.000003 |
| System lock            | 0.000004 |
| table lock             | 0.000575 |
| Unlocking tables       | 0.000006 |
| closing tables         | 0.000017 |
| init                   | 0.000280 |
| Optimizing             | 0.000059 |
| Optimizing             | 0.000007 |
| Statistics             | 0.000041 |
| Preparing              | 0.000020 |
| Creating tmp table     | 0.000033 |
| Sorting result         | 0.000028 |
| Statistics             | 0.000330 |
| Preparing              | 0.000050 |
| Creating tmp table     | 0.000404 |
| Sorting result         | 0.000073 |
| Executing              | 0.000004 |
| Sending data           | 0.066014 |
| Executing              | 0.000005 |
| Sending data           | 0.000038 |
| Creating sort index    | 0.000051 |
| Removing tmp table     | 0.000006 |
| Creating sort index    | 4.602838 |
| Creating sort index    | 0.073452 |
| Removing tmp table     | 0.015294 |
| Creating sort index    | 0.000026 |
| End of update loop     | 0.000020 |
| Query end              | 0.000003 |
| Commit                 | 0.000006 |
| closing tables         | 0.000002 |
| Removing tmp table     | 0.000006 |
| closing tables         | 0.000002 |
| Unlocking tables       | 0.000001 |
| closing tables         | 0.000016 |
| Starting cleanup       | 0.000003 |
| Freeing items          | 0.000027 |
| Updating status        | 0.000031 |
| Reset for next command | 0.000006 |
+------------------------+----------+

The normal logbook and the callsign search are still working normally.

Version Information
We need some information about your versions. You can get all Information in the Admin > Debug Menu

  • OS: Debian 12
  • PHP: 8.2.18
  • MySQL/MariaDB: 10.11.6-MariaDB-0+deb12u1
  • Wavelog: 1.5.2

Creating QSL-Labels

Describe the bug
When creating a QSL label there are two fields to set width and height of the used label. this could be left blank without any error-message. The resulting label could be used for generating labels on the printer but the labels are very unusable :-)

There should be mandatory fields and error messages if there is no input.

Undefined array key causes issues with installer

Describe the bug
I'm trying to dockerize Wavelog. When testing, the install script runs into an issue when starting the install. After about a second, it errors out with the following error:

Warning: Undefined array key "database_check" in /var/www/html/install/index.php on line 94

Warning: Cannot modify header information - headers already sent by (output started at /var/www/html/install/index.php:94) in /var/www/html/install/index.php on line 130

The install script doesn't fail per se. When loading the base URL (which I think the header modification was trying), the site is busy loading without displaying anything. In the background, I can see the MySQL database being populated while the loading is taking place. The page eventually stops loading altogether. Upon another refresh, the login screen is displayed.

I reproduced this behaviour with different LAMP stack configs, as well as an nginx installation.

Version Information

  • OS: Debian 12
  • Apache: 2.4.57
  • PHP: 8.2.15
  • MySQL/MariaDB: 8.3
  • Wavelog: 1.0

Steps to Reproduce

  1. Open installer,
  2. Fill out all required fields
  3. Hit install

You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '"bootstrap.min.css"' at line 2

Hello,

I've got a bit further with the install but am now getting this error. Not really sure where to start with this.

An uncaught Exception was encountered

Type: mysqli_sql_exception

Message: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '"bootstrap.min.css"' at line 2

Filename: /home/sites/htdocs/wavelog/system/database/drivers/mysqli/mysqli_driver.php

The error is possibly referring to this:

https://github.com/wavelog/wavelog/blob/master/application/migrations/052_add_user_stylesheet.php#L10

Would welcome any guidance!

Thanks

QSO: Hardening callsign and locator input against unnecessary spaces at the beginning or end of input

In Cloudlog and Wavelog, from time to time I'm suffering from QSOs not being saved, because I have entered unnecessary spaces at the beginning or end of the callsign or gridlocator.

This happens frequently when copying for example from QRZ and pasting into the text fields.

If then you try to save the QSO, nothing happens, not even an error message. I had been using Cloudlog for half a year before I found out the spaces are the problem. Before I found out i thought both systems were just buggy or a session had run out of time.

I can imagine other users are also suffering from that problem.

I suggest to just ignore spaces at the beginning of the input string or trailing spaces at the end in callsign and gridlocator field, because both inputs should never include spaces.

Please add support for PostgreSQL

Since Postgresql is a very popular database system nowadays, I would like to ask for postgres support in the future. It would be really good to have a choice here, since running mysql just for one single service feels uncomfortable. I would also be happy to help with testing.

Feature Request - Mail Address Management

By submitting feature requests, you have the opportunity to contribute your ideas and inspiration to the Wavelog Dev-Team. Please be aware that not every feature request will be addressed or answered.

What Feature is Missing?

A Mail Address Management of each callsign

  1. Dedicated page for Malling Address management of each callsign
  2. Mailing Address Create, Edit, Delete
  3. Search Address by callsign and text
  4. Link callsign addresses to other callsign's, since the callsign could be different even if it is the same station. Such as XXX and XXX/QRP
  5. Export the callsign and address as csv file with columns of "CALL, ADDRESS, ZIP_CODE"
  6. Mailing Address update time and icon button to check callsign's QRZ.com and HAMQTH.com in case the address is expired.
  7. Maybe print a label of the mail address?

Why is This Feature Important?

Checking someone's mailing address on QRZ.com or any other service will be tedious and require a lot of manual work.

Especially when you need to send a lot of QSL cards.

If the mailing address is stored and managed, it will relief the workload of checking the mailing address repeatedly.

Is This Feature Personal or Beneficial to Others as Well?

Collecting and Send/Receive QSL Card is a major part of Amateur Radio, even if there are so many third-party QSL system(like LoTW).

But how to make and write the QSL Card is always Lesson 101 of being a HAM.

I believe that there is a large group of people which still stick to sending and receiving the physical QSL Card.

Finding mailing address of a station is a tedious job, if you need to send out 50 or more QSL cards.

Processing new Trainee-Callsigns in Germany with /T as callsign extension

What Feature is Missing?
Looking forward to changes in German law we should be able to log and resolve callsigns like DG9VH/T correctly concerning DXCC, CQ-Zone etc.

Why is This Feature Important?
Because middle of the year new regulations in Germany will be active we have to procede this correctly then.

Is This Feature Personal or Beneficial to Others as Well?
This is beneficial for all users worldwide.

V 1.6.1 - eQSL Download hängt

Hallo,
habe die Version 1.6.1 im Einsatz.
Hab da ein Problem das ein eSQL von einem QSL hängt.
Ursache ist vermutlich das ich auf eQSL die QSL Karte nicht mehr sehe.
Der Absender diese vermutich gelöscht hat !?
Wavelog diese aber gesehen hat und diese runterladen will.

Third party services -> eSQl ... -> Download eQSL Cards

grafik

grafik

grafik

Neuere eSQL Karten werden so auch nicht geladen.

Wie kann ich das beheben ?

Inconsistency in handling of station locations

Hi all,

I use station locations to separate my ham radio activities at different location. I have a station location for my home QTH, one for the club station and several locations for outdoor activities.
Station location

I always activate the station location, whenever I change my physical location to benefit from the prefilled values in QSO logging tab "station".
Unfortunately, the activation of station locations does not have an impact on the QSO overview (Logbook --> Overview)
The QSO that are listed in this overview do NOT belong to the active station location, but to location with ID 1. This is misleading (and in my eyes also wrong), because the active station is indicated at the top left, but it does not relate to the below shown information (QSO).
Inconsistency

I would propose to change this behavior: Always output the QSO in the overview that are related to the active station.

Thanks for your amazing work
br
Falko

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.