nextcloud / calendar

📆 Calendar app for Nextcloud
https://apps.nextcloud.com/apps/calendar
GNU Affero General Public License v3.0
984 stars 241 forks source link

Can't create event on calendar : Event does not exist #2694

Open ghost opened 3 years ago

ghost commented 3 years ago

Steps to reproduce

  1. Go to Calendar
  2. Click "New event"
  3. Popup error

image

Tested with different operating system (Windows, iOS) / Browser (Firefox, Edge, Safari) / languages (English, French)

Expected behaviour

Excepted to able to create a new event.

Actual behaviour

Popup error

Server configuration

Operating system: Linux 4.19.107-Unraid #1 SMP Thu Mar 5 13:55:57 PST 2020 x86_64

Webserver: nginx/1.18.0 (fpm-fcgi)

Database: mysql 10.4.16

PHP version: 7.3.24

Modules loaded: Core, date, libxml, pcre, zlib, filter, hash, readline, Reflection, SPL, session, cgi-fcgi, bcmath, bz2, ctype, curl, dom, fileinfo, ftp, gd, gmp, iconv, intl, json, ldap, mbstring, openssl, pcntl, PDO, pgsql, posix, standard, SimpleXML, smbclient, sodium, sqlite3, xml, xmlwriter, zip, exif, imap, mysqlnd, pdo_pgsql, pdo_sqlite, Phar, xmlreader, pdo_mysql, apcu, igbinary, redis, memcached, imagick, mcrypt, libsmbclient, Zend OPcache

Nextcloud version: 20.0.1 - 20.0.1.1

Updated from an older Nextcloud/ownCloud or fresh install:

Where did you install Nextcloud from: unknown

Signing status Array ( )
List of activated apps ``` Enabled: - accessibility: 1.6.0 - activity: 2.13.2 - apporder: 0.11.0 - bruteforcesettings: 2.0.1 - calendar: 2.1.2 - cloud_federation_api: 1.3.0 - contactsinteraction: 1.1.0 - cookbook: 0.7.6 - dashboard: 7.0.0 - dav: 1.16.0 - deck: 1.1.2 - federatedfilesharing: 1.10.1 - federation: 1.10.1 - files: 1.15.0 - files_pdfviewer: 2.0.1 - files_rightclick: 0.17.0 - files_sharing: 1.12.0 - files_trashbin: 1.10.1 - files_versions: 1.13.0 - files_videoplayer: 1.9.0 - logreader: 2.5.0 - lookup_server_connector: 1.8.0 - nextcloud_announcements: 1.9.0 - notes: 4.0.0 - notifications: 2.8.0 - oauth2: 1.8.0 - password_policy: 1.10.1 - photos: 1.2.0 - privacy: 1.4.0 - provisioning_api: 1.10.0 - recommendations: 0.8.0 - serverinfo: 1.10.0 - settings: 1.2.0 - sharebymail: 1.10.0 - support: 1.3.0 - survey_client: 1.8.0 - tasks: 0.13.6 - text: 3.1.0 - theming: 1.11.0 - twofactor_backupcodes: 1.9.0 - updatenotification: 1.10.0 - user_status: 1.0.0 - viewer: 1.4.0 - weather_status: 1.0.0 - workflowengine: 2.2.0 Disabled: - admin_audit - comments - contacts - encryption - files_external - firstrunwizard - geoblocker - issuetemplate - ransomware_protection - systemtags - user_ldap - workflow_pdf_converter ```
Configuration (config/config.php) ``` { "memcache.local": "\\OC\\Memcache\\APCu", "datadirectory": "***REMOVED SENSITIVE VALUE***", "instanceid": "***REMOVED SENSITIVE VALUE***", "passwordsalt": "***REMOVED SENSITIVE VALUE***", "secret": "***REMOVED SENSITIVE VALUE***", "trusted_domains": [ "192.168.1.9:30443", "10.253.0.1:30443" ], "dbtype": "mysql", "version": "20.0.1.1", "overwrite.cli.url": "https:\/\/192.168.1.9:30443", "dbname": "***REMOVED SENSITIVE VALUE***", "dbhost": "***REMOVED SENSITIVE VALUE***", "dbport": "", "dbtableprefix": "oc_", "mysql.utf8mb4": true, "dbuser": "***REMOVED SENSITIVE VALUE***", "dbpassword": "***REMOVED SENSITIVE VALUE***", "installed": true, "mail_from_address": "***REMOVED SENSITIVE VALUE***", "mail_smtpmode": "smtp", "mail_sendmailmode": "smtp", "mail_domain": "***REMOVED SENSITIVE VALUE***", "mail_smtpauthtype": "LOGIN", "mail_smtpsecure": "tls", "mail_smtpauth": 1, "mail_smtphost": "***REMOVED SENSITIVE VALUE***", "mail_smtpport": "587", "mail_smtpname": "***REMOVED SENSITIVE VALUE***", "mail_smtppassword": "***REMOVED SENSITIVE VALUE***", "maintenance": false, "updater.release.channel": "stable", "loglevel": 2, "theme": "", "app_install_overwrite": [ "cookbook" ] } ```

External storages: files_external is disabled

Encryption: no

User-backends:

Browser: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:82.0) Gecko/20100101 Firefox/82.0

tcitworld commented 3 years ago

Can you share the URL path before and after you click?

Please also post the browser logs, as there should be an error message.

tcitworld commented 3 years ago

possibly related to #2662

aharish commented 3 years ago

Link before the click: http://ip-addr/index.php/apps/calendar/timeGridWeek/now Link after the click: http://ip-addr/index.php/apps/calendar/timeGridWeek/now/new/popover/0/1606840200/1606842000

Browser logs:

[ERROR] calendar: e is null 
Object { app: "calendar", uid: "admin" }
no-response[bot] commented 3 years ago

This issue has been automatically closed because there has been no response to our request for more information from the original author. With only the information that is currently in the issue, we don't have enough information to take action. Please reach out if you have or find the answers we need so that we can investigate further.

tlaguz commented 3 years ago

After some monkey testing I've found how to reproduce this issue:

  1. Install nextcloud
  2. Install calendar and tasks apps. Remove automatically created "Personal" calendar if present.
  3. Create list in tasks application. In calendar app there will be corresponding calendar with the same name.
  4. Try to add an entry in calendar app. Observe this issue.
  5. Create calendar in calendar app.
  6. Try to add an entry in calendar app. Observe that this issue no longer exists, but the entry can only be added to calendar created in calendar app.
  7. Create another calendar in calendar app. Observe that now you have two calendars to choose when creating calendar entry, but none of them is the list created in tasks app.

So it turns out that calendar != list. Calendar app seems to be prepared for this, because you can create just calendar or calendar with tasks list, so why task lists are shown as calendars? You can't find calendar objects in tasks app. Both calendars and list reside in oc_calendars table. There is components column where: VTODO means tasks list, VEVENT means calendar and VTODO,VEVENT means calendar with todo list. The fact that tasks lists are shown as normal calendars is a bad UI design. End user have no idea that he/she is trying to add calendar event to tasks list.

I converted my tasks list to list+calendar objects by running:

update oc_calendars set components="VTODO,VEVENT" where id=...;

I don't know if this is all that needs to be done, but everything works ok. This is so simple to convert, that I think it should be possible from web interface. Something like: Add calendar to task list

no-response[bot] commented 3 years ago

This issue has been automatically closed because there has been no response to our request for more information from the original author. With only the information that is currently in the issue, we don't have enough information to take action. Please reach out if you have or find the answers we need so that we can investigate further.

Traace commented 3 years ago

Forgotten that i only created a Task List weeks before I was wondering why I can't add event to that calendar.

Indeed, it turns out all I need is to create a calendar with a task list. Suddenly also Mobile sync works.

My fault ofc, but Task Lists without Calendars shouldn't be shown under calendars.

aharish commented 3 years ago

Thanks for pointing me in the right direction. I took down my instance of NextCloud and am waiting for new hardware in order to deploy it to a more permanent system, and will check to see if I have the same issue on a fresh install.

Thanks for the help guys!

rmelotte commented 2 years ago

I can confirm I can still reproduce this issue on nextcloud 22.2.5 (calendar 3.0.6).

I'm just posting for anyone else who comes across this issue: to solve it, try creating a new calendar.

In my case it makes sense that I cannot create a new event, since I only have read-only calendars (created with "New calendar -> New subscription from link") and calendars automatically created by the Tasks app (which, as @tlaguz pointed out, by default cannot be used to create events from the Calendar app).

If I create a new calendar from the Calendar app, I can create new events.

Maybe it could be improved in the UI to warn the user when there is no writable calendar (currently it only says "Event does not exist" like in the screenshot from the original post).

SkullMasher commented 2 years ago

Thanks a lot @rmelotte !

GrewSum commented 10 months ago

I had the same issue as @Traace described. First installed task list app and later the calendar app. The task list from the task list app is shown in the calender but no calender is automatically added. Creating events in the task list does obviously not work, but understanding the issue was not that easy.

The solution from @rmelotte also worked for me. After adding a calendar, everything worked smoothly as expected.

Versions: Nextcloud Hub 7: 28.0.1 Calendar: 4.6.3

I would be happy to see @rmelotte idea (UI improvement) realized. Could have saved me an hour of searching.

miaulalala commented 10 months ago

@nimishavijay could you suggest a UI improvement on how we can make it clearer there are only read-only calendars?

marcello-dev commented 6 months ago

Same issue on fresh install via docker All In One v8.1.0. I only had the calendar called "Tasks" and I got that pop up error whenever I click on the calendar or "new event". Fixed by creating a new calendar as @rmelotte suggested.

How do I know that a calendar is read-only?