nextcloud / mail

💌 Mail app for Nextcloud
https://apps.nextcloud.com/apps/mail
GNU Affero General Public License v3.0
830 stars 257 forks source link

Mails datetime is based on the file last change time instead of arrive date #912

Open UtechtDustin opened 6 years ago

UtechtDustin commented 6 years ago

I setup a new server and pasted a backup of my nextcloud and mailserver. Anything works fine but the time shows always "7 days before" (just in a other language). Thunderbird, Roundcube and my mobile Phone shows the correct arrive date!

Expected behavior

Show the correct datetime when the mail arrived.

Actual behavior

Shows the last change time from the mail file!

Mail app

Mail app version: (see apps admin page, e.g. 0.5.3) 0.8.1 Mailserver or service: (e.g. Outlook, Yahoo, Gmail, Exchange,...) own Number of accounts: (e.g. 1 or 2) 1

Server configuration

Operating system: (e.g. Debian 8) Debian 8 Web server: (e.g. Apache, Nginx,...) Apache Database: (e.g. MariaDB, SQLite, PostgreSQL,...) MariaDB PHP version: (e.g. 7.0) 7.1

Nextcloud Version: (see admin page, e.g. 13.0.2) 13.0.2 Updated from an older version or fresh install: fresh install List of activated apps:

Enabled:                                                                                                                                                                                                            
  - activity: 2.6.1                                                                                                                                                                                                 
  - calendar: 1.6.1                                                                                                                                                                                                 
  - caniupdate: 0.1.2                                                                                                                                                                                               
  - comments: 1.3.0                                                                                                                                                                                                 
  - contacts: 2.1.3                                                                                                                                                                                                 
  - dav: 1.4.6
  - deck: 0.3.1
  - federatedfilesharing: 1.3.1
  - federation: 1.3.0
  - files: 1.8.0
  - files_pdfviewer: 1.2.1
  - files_rightclick: 0.8.4
  - files_sharing: 1.5.0
  - files_texteditor: 2.5.1
  - files_trashbin: 1.3.0
  - files_versions: 1.6.0
  - files_videoplayer: 1.2.0
  - firstrunwizard: 2.2.1
  - gallery: 18.0.0
  - issuetemplate: 0.3.0
  - logreader: 2.0.0
  - lookup_server_connector: 1.1.0
  - mail: 0.8.1
  - nextcloud_announcements: 1.2.0
  - notifications: 2.1.2
  - oauth2: 1.1.0
  - onlyoffice: 1.3.0
  - password_policy: 1.3.0
  - provisioning_api: 1.3.0
  - serverinfo: 1.3.0
  - sharebymail: 1.3.0
  - survey_client: 1.1.0
  - systemtags: 1.3.0
  - theming: 1.4.1
  - twofactor_backupcodes: 1.2.3
  - updatenotification: 1.3.0
  - workflowengine: 1.3.0
Disabled:
  - admin_audit
  - encryption
  - files_external
  - user_external
  - user_ldap

The content of config/config.php:

{
    "system": {
        "instanceid": "***REMOVED SENSITIVE VALUE***",
        "passwordsalt": "***REMOVED SENSITIVE VALUE***",
        "secret": "***REMOVED SENSITIVE VALUE***",
        "trusted_domains": [
            "***REMOVED SENSITIVE VALUE***"
        ],
        "datadirectory": "***REMOVED SENSITIVE VALUE***",
        "overwrite.cli.url": "https:\/\/***REMOVED SENSITIVE VALUE***\/nextcloud",
        "dbtype": "mysql",
        "version": "13.0.2.1",
        "dbname": "***REMOVED SENSITIVE VALUE***",
        "dbhost": "***REMOVED SENSITIVE VALUE***",
        "dbport": "",
        "dbtableprefix": "oc_",
        "dbuser": "***REMOVED SENSITIVE VALUE***",
        "dbpassword": "***REMOVED SENSITIVE VALUE***",
        "installed": true,
        "mail_from_address": "***REMOVED SENSITIVE VALUE***",
        "mail_smtpmode": "php",
        "mail_smtpauthtype": "LOGIN",
        "mail_domain": "***REMOVED SENSITIVE VALUE***",
        "loglevel": 0,
        "maintenance": false,
        "theme": ""
    }
}
--- Want to back this issue? **[Post a bounty on it!](https://www.bountysource.com/issues/58559622-mails-datetime-is-based-on-the-file-last-change-time-instead-of-arrive-date?utm_campaign=plugin&utm_content=tracker%2F44154351&utm_medium=issues&utm_source=github)** We accept bounties via [Bountysource](https://www.bountysource.com/?utm_campaign=plugin&utm_content=tracker%2F44154351&utm_medium=issues&utm_source=github).
ChristophWurst commented 6 years ago

This should be easy to fix: https://github.com/nextcloud/mail/blob/73dd0f0daa0e3388a791d1cf1c843c1f8171d5fa/lib/Mailbox.php#L118

UtechtDustin commented 6 years ago

@ChristophWurst Its not a sorting issue, the issue is the display of the "arrive date".

German: Das eigentliche Problem ist das bei jeder E-mail steht das diese vor x Tagen angekommen sei, obwohl die Teils schon Jahre alt sind. Die stelle in der Mailbox.php ist fürs sortieren da oder nicht ?

ChristophWurst commented 6 years ago

Got it. That should be very similar to fix. At some point there is a call to the horde library that specifies which attributes are to fetch and there we'd have to fetch the correct date and then also use that from there.