Ticket #822 (closed Defect: fixed)

Opened 5 years ago

Last modified 4 years ago

dm4-mail: store attachments with the new file repo mechanism as of 4.7 and do type assignments

Reported by: Malte Owned by: Malte
Priority: Major Milestone:
Component: 3rd Party Plugins Version:
Keywords: Cc: jri, dgf
Complexity: 5 Area:
Module:

Description

Upgrade should be possible straight away while new conceptual questions arise.

Change History

comment:1 Changed 5 years ago by Malte

  • Status changed from new to accepted

Source Code:
https://github.com/mukil/dm4-mail

The mail-functionality (for sending mails) is basically working with 4.6.x

The following questions arose:

  • implementation of the "default_sender"-concept got outdated with DM 4.5 (since it relied via acl.getCreator() on) the username who created the mail.
  • everyone (even not logged in users) can now see the topic_commands "Send", "Send Again" and "Reload" this the client-side (dm4-webclient) plugin relied on the (now dropped) "has_create_permission()" utility function to determine if a user was also eligible to see certain commands.

One more generic advancement (and potential change) for the collaborative dm4-mail plugin could be tthat

  • the "mail_configuration" topic should (potentially) exist in every "Private workspace" of every user so MTA-configurations could vary per logged-in user.
  • This also reminds me of the need to introduce a "password"-datatype to DM 4 (which does not seem to have a ticket, yet, right?)

comment:2 Changed 5 years ago by Malte

Ticket #821 is related since dm4-mail depends on it.

comment:3 Changed 5 years ago by Malte

  • Version 4.6.1 deleted
  • Summary changed from dm4-mail: upgrade to be compatible with DM 4.6.x to dm4-mail: upgrade to be compatible with DM 4.7.x

Changing scope of this ticket, upgrade to 4.7.

Needs to be adapted to #815 and react up on the new system setting:

dm4.filerepo.per_workspace=false|true

Esp. folders cannot be created in migration anymore but need to be created on demand (that is, on the first request involving them).

comment:4 Changed 5 years ago by Malte

Even through looking at the code i (yet) don't understand why the "attachments" folder is there in first place. If _copies_ of files (which where send as attachments) go there, that would be desirable i guess (analog to a ". mails" folder on my ubuntu) but if it turns out otherwise i will consider to drop the "attachments" folder completely.

That just as a note for the upgrade.
Any concrete further development of the mailing functionality is anyways not completely clear.

comment:5 Changed 5 years ago by jri

  • Cc dgf added

comment:6 Changed 5 years ago by jri

Possibly the "attachments" folder was for collaborative use in conjunction with the poemspace use case. Possibly it acts a server-side repository for files repeatedly used as attachments, and thus saving the user from uploading again. But possibly dgf knows better about it.

In any case the dm4-mail plugin should still allow to send mails with attachments.

comment:7 Changed 5 years ago by Malte

Thanks, i will check that. Archiving (=storing) files send as attachments in a filerepo at server-side makes sense to me, too. I will try to preserve such functionality if it exists.

For now i regard the following as the very next tasks to continue with this upgrade process:

  • assign custom types to some existing workspace (possibly "DeepaMehta") providing a migration
  • migrate mail send configuration from system wide to per-user whereas that config must be read & writable only by the respective user.

The latter should be realizable with the new configuration facility (#830) in conjunction with keeping topics in the "Private workspace". Are there examples online from which i could learn how to use the new configuration facility for this case?

Thanks in advance.

comment:8 Changed 5 years ago by Malte

  • Type changed from Enhancement to Defect
  • Summary changed from dm4-mail: upgrade to be compatible with DM 4.7.x to dm4-mail: store attachments with the new file repo mechanism as of 4.7 and do type assignments

Changed scope of the ticket.

  • Make attachments work again
  • Perform type workspace assignments is the scope of this ticket

Per user mailbox configurations (using the new config facility) will get a seperate ticket.

comment:9 Changed 4 years ago by Malte

Adapting the source code to the new 4.8 API succeeded after applying all known API changes and after debugging made clear that dm4c.REF_PREFIX as used by dm4-mails webclient extension is now "undefined" and named dm4c.REF_ID_PREFIX.

Additionally, when installing the dm4-mail plugin into a fresh database one runs into #961. The following two task could not yet be handled.

  • Make attachments work again (untested)
  • Perform type workspace assignments is the scope of this ticket

The foundations for a per user mailbox configuration feature is now addressed by issue #953.
Otherwise, despite a missing association, creating, editing and sending mails should already work again.

comment:10 Changed 4 years ago by Malte

I will finish this soon. The only thing missing are the assignments of type definitions to a workspace (which are not really required). Everything is ready and works.

As i have so bad experiences with running a personal sendmail installation on a webserver (on gmail ending up in junk, not being able to send mails to the senders domain) i dont want to spend much more time implementing anyhting else than using credentials for inteegrating an external, professional mail service/account.

So when there is progress to expect with #953?
Thanks for your support.

comment:11 Changed 4 years ago by jri

  • Milestone Release 4.7 deleted

comment:12 Changed 4 years ago by Malte

The type assignments are actually in place for workspace DeepaMehta (governed by the default for topic types with the "dm4" prefix in their URIs). Additionally the Attachments dialog was adapted, tested and works fine now. Furthermore labels in the mail Form were slightly improve and the plugin configuration is now assigned to the "System" workspace which should work well for all cases (readable for every user, editable just for "admin").

Download of new version available at:
http://download.deepamehta.de/dm48-deepamehta-mail-0.3.2.jar

comment:13 Changed 4 years ago by Malte

  • Status changed from accepted to closed
  • Resolution set to fixed
Note: See TracTickets for help on using tickets.