Error after user registration

I just installed Vikunja, when visiting the url I have to register in the welcome screen.

I can do that but I get an “Internal Server Error” shown.
But although I get this error message I can then login with the login credentials I’ve set :thinking:

I set log to “file” in the config but there is nothing in the log file regarding that registration (is INFO not enough for that?)

When I now login with that user I see the same error as tooltip (bottom left) but everything inside vikunja works as I can tell for now.
I’ve set log to DEBUG but the only thing not 200 is this for example:

Show DevTools console logs in your browser.
Also your backend URL seems weird - I don’t see those quotes around host name on my login screen.
{5DABA427-0891-477C-96B4-5C2D00D76AC0}

Registered another new test user few seconds ago (while having Chrome console open).
Now no error message was shown, everything ok :+1:

And regarding the URL - I have this in my config: Ok this way?

publicurl: "todo.mydomain.de"
1 Like

I’ve logged in with the 2nd username (where I got the error) and directly after the login I had that error again shown (bottom left tooltip).

I think I know what the problem was.
The language wasn’t set to that user (was blank) and this caused the error.

I think in my config I had de-DE set instead of correct “de-DE” (so it wasn’t correctly set while registering that user).

After setting the language in the user settings the error after login is gone :+1:
The console showed:

registerServiceWorker.ts:10 App is being served from cache by a service worker.
registerServiceWorker.ts:13 Service worker has been registered.
index.ts:81  Failed to load language <unset>: Error: Unknown variable dynamic import: ./lang/<unset>.json
    at fetcher.ts:36:1
    at new Promise (<anonymous>)
    at V7 (fetcher.ts:36:1)
    at Tl (index.ts:78:27)
    at I (auth.ts:285:11)
    at async M (auth.ts:255:5)
    at async Proxy._ (auth.ts:149:4)
    at async k (Login.vue:232:9)
Tl @ index.ts:81
all:1 
        
        
        Failed to load resource: the server responded with a status of 500 ()
[NEU] Erläutern von Konsolenfehlern mithilfe von Copilot in Edge: Klicken Sie auf
         
         , um einen Fehler zu erklären.
        Weitere Informationen
        Nicht mehr anzeigen
index.ts:81  Failed to load language <unset>: Error: Unknown variable dynamic import: ./lang/<unset>.json
    at fetcher.ts:36:1
    at new Promise (<anonymous>)
    at V7 (fetcher.ts:36:1)
    at Tl (index.ts:78:27)
    at I (auth.ts:285:11)
    at async M (auth.ts:255:5)
    at async auth.ts:396:5
Tl @ index.ts:81
await in Tl
I @ auth.ts:285
await in I
M @ auth.ts:255
(anonym) @ auth.ts:396
abstractService.ts:349 
        
        
        GET https://todo.mydomain.de/api/v1/tasks/all?sort_by[]=due_date&sort_by[]=id&order_by[]=asc&order_by[]=desc&filter=done+%3D+false&filter_include_nulls=false&s=&filter_timezone=%3Ctime+zone+set+at+service.timezone%3E&page=1 500 (Internal Server Error)
(anonym) @ xhr.js:195
xhr @ xhr.js:15
Ug @ dispatchRequest.js:49
Promise.then
_request @ Axios.js:149
request @ Axios.js:40
Ko.<computed> @ Axios.js:199
(anonym) @ bind.js:5
getAll @ abstractService.ts:349
d @ tasks.ts:145
S @ pinia.mjs:1405
y @ ShowTasks.vue:210
(anonym) @ ShowTasks.vue:228
ui @ runtime-core.esm-bundler.js:199
xr @ runtime-core.esm-bundler.js:206
Yl.i.call @ runtime-core.esm-bundler.js:6140
d @ reactivity.esm-bundler.js:1820
run @ reactivity.esm-bundler.js:222
y @ reactivity.esm-bundler.js:1879
ui @ runtime-core.esm-bundler.js:199
G3 @ runtime-core.esm-bundler.js:413
Promise.then
Y3 @ runtime-core.esm-bundler.js:325
Lm @ runtime-core.esm-bundler.js:319
K.ve.scheduler @ runtime-core.esm-bundler.js:5394
trigger @ reactivity.esm-bundler.js:250
Dm @ reactivity.esm-bundler.js:300
notify @ reactivity.esm-bundler.js:587
trigger @ reactivity.esm-bundler.js:561
set value @ reactivity.esm-bundler.js:1512
m @ auth.ts:80
I @ auth.ts:288
await in I
M @ auth.ts:255
(anonym) @ auth.ts:396

I encountered the same error.
Just wanted to know that, where you set the language.

It is in your config.yml file, which is probably in the same place as the executable of vikunja depending on your installation method. More information in the docs. If you copied the example.config.yml to config.yml you have the corresponding line approximately at line 365 with version 0.24.6, but this can change or is different on your side.

Example config.yml file:

(...)
# Provide default settings for new users. When a new user is created, these settings will automatically be set for the user. If you change them in the config file afterwards they will not be changed back for existing users.
defaultsettings:
  # The avatar source for the user. Can be `gravatar`, `initials`, `upload` or `marble`. If you set this to `upload` you'll also need to specify `defaultsettings.avatar_file_id`.
  avatar_provider: initials
  # The id of the file used as avatar.
  avatar_file_id: 0
  # If set to true users will get task reminders via email.
  email_reminders_enabled: false
  # If set to true will allow other users to find this user when searching for parts of their name.
  discoverable_by_name: false
  # If set to true will allow other users to find this user when searching for their exact email.
  discoverable_by_email: false
  # If set to true will send an email every day with all overdue tasks at a configured time.
  overdue_tasks_reminders_enabled: true
  # When to send the overdue task reminder email.
  overdue_tasks_reminders_time: 9:00
  # The id of the default project. Make sure users actually have access to this project when setting this value.
  default_project_id: 0
  # Start of the week for the user. `0` is sunday, `1` is monday and so on.
  week_start: 0
  # The language of the user interface. Must be an ISO 639-1 language code followed by an ISO 3166-1 alpha-2 country code. Check https://kolaente.dev/vikunja/vikunja/frontend/src/branch/main/src/i18n/lang for a list of possible languages. Will default to the browser language the user uses when signing up.
  language: "en-US"
  # The time zone of each individual user. This will affect when users get reminders and overdue task emails.
  timezone: <time zone set at service.timezone>
(...)

Near the bottom you see the language: value which probably is set to <unset> on your side. You can define it with the mentioned ISO standard values for language codes. As in the example, "en-US" for American English or "de-DE" for German. Keep in mind, it will give an error if the values are not in quotation marks.

I hope this helps. :v:

:penguin::wolf:

1 Like