magicbug / Cloudlog

Web based amateur radio logging application built using PHP & MySQL supports general station logging tasks from HF to Microwave with supporting applications to support CAT control.
http://www.cloudlog.co.uk
MIT License
465 stars 192 forks source link

Live Contest Logging: New QSOs do not appear in QSO list after saving #2139

Closed m0urs closed 10 months ago

m0urs commented 1 year ago

If you are in the Live Contest Logging view and you enter a new QSO I would expect the QSO to appear below in the "Contest Logbook" list after saving.

However the list is not updated.

It is only updated after I leave the Live QSO logging view and reenter it.

Same is true for the "Post Contest Logging" view.

AndreasK79 commented 1 year ago

I can't reproduce this problem here. It will filter on current callsign when entering a call, but once that is logged, all QSOs will show in the table.

Do you get any error messages in devtools (F12) ?

phl0 commented 1 year ago

Cannot reproduce here either ... Keen to see what your dev tools reveal.

phl0 commented 1 year ago

This is how it looks here:

https://www.youtube.com/watch?v=IJxMAdVLX8s

(I did log two test QSOs in that contest before starting the recording).

m0urs commented 1 year ago

I guess I know what is happening. As long as you do not leave the Contest Log view, everything is ok. Just leave the view and then return to that view later and start to enter new QSOs.

Now the QSOs are displayed successfully but ... they are added to the END of the view:

image

I did not look at the end but only at the beginning of the view and therefore thought they are not displayed at all.

So my expectation would be that new QSOs are always displayed at the top of the QSO list even after you left the view between two sessions.

AndreasK79 commented 1 year ago

@m0urs #2161 should fix this. At least it did in my tests. Could you give it a go?

m0urs commented 1 year ago

@m0urs #2161 should fix this. At least it did in my tests. Could you give it a go?

Seems to work for me now correctly. Thanks.

However: I do no longer get a "duplicate" warning!? I switched back to the current "dev" branch and I would say, in this branch there is the same issue. So it seems that it is not you last change which broke it but something before?

m0urs commented 1 year ago

Steps to reproduce the issue with the duplicate warning:

AndreasK79 commented 1 year ago

I've merged the table fix.

I can't duplicate the worked before problem. I tried doing exactly what you described, and I get worked before. Not sure what is going on here. Did you reset the contest session?

m0urs commented 1 year ago

You are right, I cannot reproduce it now either with the most current Dev branch. No idea what I did wrong before. I tried it with a private browser session also so it should not have been a cache issue.

Thanks for fixing the sorting issue.

petrkr commented 1 year ago

I have same issue in latest dev (in time of writting commit from 27th Aug). If I add log, nothing appear in table at bottom, but all QSO I can find at Dashboard then.

EDIT: well I see lot of 500 errors,, I will investigate... One is, why it goes to index.php/contesting instead of root when I have set up index = ''

petrkr commented 1 year ago

Well here are errors:

Both are related to datetime object which is returns bool, from documentation it return false on failure, so it probably does not parsed datetime well..

<p>Type: Error</p>
<p>Message: Call to a member function format() on bool</p>
<p>Filename: /var/www/devcloudlog/application/models/Contesting_model.php</p>
<p>Line Number: 16</p>

but why date variable is bool I do not know

<p>Type: Error</p>
<p>Message: Call to a member function format() on bool</p>
<p>Filename: /var/www/devcloudlog/application/models/Contesting_model.php</p>
<p>Line Number: 221</p>
petrkr commented 1 year ago

Well, it is because javascript sends only hour and minute, but parser wants seconds aswell

array(3) {
  [0]=>
  string(16) "28-08-2023 12:50"
...
magicbug commented 1 year ago

I've removed seconds in the PR at https://github.com/magicbug/Cloudlog/pull/2447 if someones able to confirm this resolves it

petrkr commented 1 year ago

I checked latest dev branch and it still occurs...

As I found, problem is only if you press "Start new contest" too early in Live (seconds are not present yet by timer) or if you start new contest in Post Contest, where seconds are not pre-filled.

Possible solutions are:

better will be add missing seconds, because especially at Post one users will NOT fill seconds at all by hand.

iu2frl commented 1 year ago

I just tested in 2.5.2 as well as dev and both in "live contest" and "post contesting" if i click "save qso" the content of the page is refreshed but nothing happens, qso is not logged either in my logbook or in the contest logbook down below

magicbug commented 10 months ago

Believe i found the issue, fresh new contest when adding QSO table stayed blank but now shows QSOs