calendar icon indicating copy to clipboard operation
calendar copied to clipboard

Issue when opening calendar via IPv6 ip-address

Open Akhenaton opened this issue 7 years ago • 9 comments

Hi,

Running fully in IPV6 mode here, the calendar app is actually not compatible. (Running IPV4 everything is well)

The IPV6 url is malformed.

a) The javascript console log :

script-src https://::1 'unsafe-eval' »).calendar

Should be : https://[::1] instead

Cheers,

Akhenaton avatar Aug 25 '16 15:08 Akhenaton

Ref: https://help.nextcloud.com/t/calendar-1-3-3-not-compatible-ipv6-was-with-nextcloud/

cc @georgehrke

MariusBluem avatar Aug 25 '16 16:08 MariusBluem

@Akhenaton please use the entire issue template as described in our contributing guidelines

georgehrke avatar Aug 25 '16 16:08 georgehrke

btw, please try to enable the debug mode and tell us if there is more in the javascript console log. and don't forget to disable the debug mode afterwords 😉

georgehrke avatar Aug 25 '16 16:08 georgehrke

@freddii please use the issue template ;)

georgehrke avatar Aug 27 '16 13:08 georgehrke

Complementary notes.

Being behind (on) the machine.

When i call my Nextcloud server as "localhost" => IPV6 ::1 => https://[::1]/ Calendar does'nt work. (and only calendar app). Everything else is O.K.

BUT if i call it with my pblic WAN FQDN complete address (as my router have the "Loopback" feature) it does work !

So it's not that important as my users (WAN) can anyway work.

-->

Steps to reproduce

  1. Running IPV6 and calling the server as IPV6 "localhost" ([::1]

Expected behaviour

Calendars should appear.

Actual behaviour

Doesn't load, just little spinning wheels in front of each calendars.

Server configuration

Operating system => Linux

Web server: => Apache 2.4.23

Database: => MySql 9.1.0.16

PHP version: => 7.0.10

Server version: (see your admin page) => Nextcloud 10.0.0

Calendar version: (see the apps page) => 1.3.3

Updated from an older installed version or fresh install: => updated manually from 9.0.53

List of activated apps: :

Enabled:

  • activity: 2.3.2
  • admin_audit: 1.0.0
  • calendar: 1.3.3
  • comments: 1.0.0
  • contacts: 1.3.1.0
  • dav: 1.0.0
  • direct_menu: 0.9.0
  • external: 1.2
  • federatedfilesharing: 1.0.1
  • federation: 1.0.1
  • files: 1.5.2
  • files_pdfviewer: 0.8.1
  • files_sharing: 1.0.0
  • files_texteditor: 2.1
  • files_trashbin: 1.0.0
  • files_versions: 1.3.0
  • files_videoplayer: 0.9.8
  • firstrunwizard: 1.1
  • gallery: 15.0.0
  • music: 0.3.12
  • notifications: 0.3.0
  • password_policy: 1.0.0
  • provisioning_api: 1.0.0
  • serverinfo: 1.1.1
  • survey_client: 0.1.5
  • systemtags: 1.0.2
  • templateeditor: 0.1
  • theming: 1.0.1
  • updatenotification: 1.0.1
  • workflowengine: 1.0.1

Disabled:

  • encryption
  • files_accesscontrol
  • files_automatedtagging
  • files_external
  • files_retention
  • user_external
  • user_ldap
  • user_saml
**The content of config/config.php:**
<?php
$CONFIG = array (
  'instanceid' => 'ock6nx48q8py',
  'passwordsalt' => 'UNDISCLOSED.',
  'secret' => 'UNDISCLOSED',
  'trusted_domains' => 
  array (
    0 => 'myhostname',
    1 => 'myserverFQDNt',
    2 => '192.168.1.12',
    3 => '[::1]',
    4 => '[2a01:cb00:a34:ec00:xxxx:xxxx:xxxx:xxxx]',
  ),
  'datadirectory' => '/media/LINUX-CLOUD/owncloud/data',
  'overwrite.cli.url' => 'https://myserver FQDN/nextcloud',
  'dbtype' => 'mysql',
  'version' => '9.1.0.16',
  'dbname' => 'owncloud',
  'dbhost' => 'localhost',
  'dbtableprefix' => 'oc_',
  'dbuser' => 'oc_melchior',
  'dbpassword' => 'UNDISCLOSED',
  'installed' => true,
  'default_language' => 'fr',
  'logtimezone' => 'Europe/Paris',
  'appcodechecker' => false,
  'theme' => 'melchior',
  'forcessl' => true,
  'forceSSLforSubdomains' => true,
  'mail_smtpmode' => 'smtp',
  'mail_from_address' => 'melchior',
  'mail_domain' => 'my FQDNt',
  'mail_smtpauthtype' => 'PLAIN',
  'mail_smtpauth' => 1,
  'mail_smtphost' => 'smtp FQDN',
  'mail_smtpsecure' => 'tls',
  'mail_smtpport' => '587',
  'mail_smtpname' => '[email protected]',
  'mail_smtppassword' => 'UNDISCLOSED',
  'maintenance' => false,
  'asset-pipeline.enabled' => false,
  'appstoreenabled' => true,
  'memcache.local' => '\\OC\\Memcache\\Redis',
  'filelocking.enabled' => 'true',
  'memcache.locking' => '\\OC\\Memcache\\Redis',
  'redis' => 
  array (
    'host' => '/var/run/redis/redis.sock',
    'port' => 0,
    'timeout' => 0,
  ),
  'activity_expire_days' => 15,
  'appstore.experimental.enabled' => true,
  'loglevel' => 2,
  'trashbin_retention_obligation' => 'auto',
  'updatechecker' => false,
  'htaccess.RewriteBase' => '/',
);

**Are you using external storage, if yes which one:** local/smb/sftp/...
No
**Are you using encryption:** yes/no
No
**Are you using an external user-backend, if yes which one:** LDAP/ActiveDirectory/Webdav/...
No

Client configuration

Browser: => Firefox 48 Linux

Operating system: => Linux

CalDAV-clients: => DavDroid, Thunderbird/Lightning, KDE KOrganizer.

Logs

Web server error log => NOTHING SPECIAL

#### Log file (data/owncloud.log) => NOTHING SPECIAL

Browser log

Insert your browser log here, this could for example include:

When cancelling a request for https://[::1]/apps/calendar/img/favicon.ico because the inner window was destroyed or a new favicon was loaded for it, it was already canceled!
_cancelRequest()
PlacesUIUtils.jsm:109
removeRequestsForInner/newLoadDataForWindow<()
PlacesUIUtils.jsm:121
filter()
self-hosted
removeRequestsForInner()
PlacesUIUtils.jsm:118
observe()
PlacesUIUtils.jsm:94
PlacesUIUtils.jsm:109
L’utilisation de l’attribut « textContent » d’un attribut est obsolète. Utiliser « value » à la place.app.js:4077:14
When cancelling a request for https://[::1]/apps/calendar/img/favicon.ico because the inner window was destroyed or a new favicon was loaded for it, it was already canceled!
_cancelRequest()
PlacesUIUtils.jsm:109
removeRequestsForInner/newLoadDataForWindow<()
PlacesUIUtils.jsm:121
filter()
self-hosted
removeRequestsForInner()
PlacesUIUtils.jsm:118
observe()
PlacesUIUtils.jsm:94
PlacesUIUtils.jsm:109
L’utilisation de l’attribut « textContent » d’un attribut est obsolète. Utiliser « value » à la place.app.js:4077:14
L’utilisation de l’attribut « textContent » d’un attribut est obsolète. Utiliser « value » à la place.app.js:4077:14
TypeError: parts is nullclient.js:366:14

Akhenaton avatar Aug 28 '16 09:08 Akhenaton

This regex is to blame : https://github.com/owncloud/calendar/blob/master/js/vendor/davclient.js/lib/client.js#L364

tcitworld avatar Aug 28 '16 09:08 tcitworld

This might be a solution. https://gist.github.com/jlong/2428561

tcitworld avatar Aug 28 '16 09:08 tcitworld

It matters only for users that don't have a "loopback" feature on their router and, consequently, call directly the "localhost" address while on their machine.

Akhenaton avatar Aug 28 '16 12:08 Akhenaton

reported upstream: https://github.com/evert/davclient.js/issues/23

georgehrke avatar Sep 06 '16 19:09 georgehrke