功能 #1101

将问题的所有讨论内容一起发送一封邮件

Added by 邹 超群 about 1 year ago. Updated about 1 year ago.

Status:已关闭 Start:05/06/2009
Priority:普通 Due date:05/22/2009
Assigned to:左 朋 % Done:

100%

Category:通知
Target version:1.0

Description

某些问题需要与非项目组成员共享,导出pdf再发送邮件比较麻烦
希望增加一个按钮可以直接发送邮件。

可以输入(或选择)接收者列表,输入前面的说明信息,修改主题。

扩展:并可以保存接收者列表和说明信息。

History

Updated by 邹 超群 about 1 year ago

细化:

基本功能:
某些问题需要与非项目组成员共享,导出pdf再发送邮件比较麻烦
希望在问题详情页面上增加一个按钮可以直接发送邮件。点此按钮后弹出一个窗口:
可以输入(或选择)接收者列表(注:如果选择的话,并非是从redmine系统用户列表中选择,而是从保存的以前输入的邮件地址中选择),输入邮件正文(即该问题的信息、描述、及所有更新记录)前面的说明信息,修改邮件主题(邮件主题初始设置为问题主题)。
扩展功能:
并可以保存接收者列表和说明信息(按照用户)。

Updated by 邹 超群 about 1 year ago

  • Due date set to 05/22/2009
  • Assigned to changed from 邹 超群 to 左 朋

要使用redmine trunk
语言提供zh和en即可
要使用redmine自己的mail layout
邮件中要带html和text两种格式的内容

Updated by 左 朋 about 1 year ago

有一个问题:
邮件中是否要显示全部历史,或者是最新的一条?

Updated by 邹 超群 about 1 year ago

左 朋 写到:

有一个问题: 邮件中是否要显示全部历史,或者是最新的一条?

应该是按照时间顺序显示所有的更新记录,就像在浏览器里看到的那样子

Updated by 左 朋 about 1 year ago

遇到ActionMailer的Bug,有些麻烦。

Updated by 邹 超群 about 1 year ago

可将详细错误贴出来一起看看。或者可以参考一下ezFAQ插件,那里面也用了邮件功能。

Updated by 左 朋 about 1 year ago

  • % Done changed from 0 to 80

大概是这个样子,请测试一下。

git://github.com/nan1nan1/redmine_ez_summary.git

Updated by 左 朋 about 1 year ago

有bug fix,请从github更新。

Updated by 邹 超群 about 1 year ago

  • 名字应为 ezSummary 目录名应为 redmine_ezsummary 而不能是 ez_summary、ez_issue_summary 等变体
  • 变量和文本应更具针对性,例如 ez_send_mail: 发送邮件 应为 ezsummary_send_mail: 发送汇总邮件
  • redmine本身已有的locale文本应考虑直接使用,而不应自己重新添加,如 ez_subject: 主题
  • locale文本应符合redmine的习惯,如 field_xxx,text_xxx,setting_xxx 等
  • 应可以配置哪些项目启用该模块,哪些项目不启用
  • 似乎不能用jquery,会造成页面出错
    例如(firefox):本来更新问题是显示隐藏的div,现在不能正常显示,变成跳到新页面了;点发送邮件按钮也会跳出新页面
    而IE7根本就出不来发送邮件按钮,直接显示脚本错误:行41,char2,错误:this.textarea.parentNode为空或不是对象;行7407, char9,错误:对象不支持此属性或方法
  • 发送邮件页面需要加一点说明,给用户看的。例如:邮件内容是什么?
  • 发送邮件页面的说明文本框没有标签
  • 发送邮件页面的提示应该是发送问题汇总邮件而不是邮件
  • 发送邮件页面的按钮也不好理解,什么是发送并保存?存什么?
  • 总体上来讲希望能更精细一点,易用性要更强一点,不好理解的地方可以加说明。
  • 用户不是我。而是很多没有任何IT经验的普通办公人员。
  • 兼容性考虑IE7、firefox即可

Updated by 邹 超群 about 1 year ago

现在发送邮件会直接报错,看日志:

Missing template ez_issue_mailer/issue_summary.erb in view path

另外,请注意,redmine已有的错误提示不要再自行添加

Updated by 邹 超群 about 1 year ago

同样,redmine自己已经有了 loading.gif 我们也没必要在自己添加一个

Updated by 左 朋 about 1 year ago

已经根据上述内容更新,新的git clone 地址见下
git://github.com/nan1nan1/ezSummary.git

针对firefox 3和IE 7 进行了测试。
如果有什么问题,请指出。

Updated by 邹 超群 about 1 year ago

左 朋 写到:

已经根据上述内容更新,新的git clone 地址见下 git://github.com/nan1nan1/ezSummary.git

针对firefox 3和IE 7 进行了测试。 如果有什么问题,请指出。

  • 插件信息页上的名称等请统一改为Redmine ezSummary plugin
  • 插件的目录按惯例来说应该是redmine_ezsummary,建议改一下
  • route什么的最好也统一一下,叫ezsummary好一点,个人感觉比ez_mail强
  • 发送汇总邮件这个页面最好不要弹出新窗口,可以用lightbox/redbox之类的在本页打开浮动窗口(推荐)(注意将上面的项目名称行去掉),也可以直接转入发送汇总邮件页面(可能需要改一下layout)。因为redmine从来没有做过弹出窗口,我们弹出窗口与redmine风格差异过大。
  • IE7显示按钮部分仍由问题:如果没有权限的话,所有按钮会被隐藏,鼠标移上去才可以显示出来
  • 建议将发送汇总邮件的权限并入问题下面的权限列表,不过如果不好实现就算了。另外权限名称叫做发送问题汇总邮件更明确一点
  • 接收者列表应按用户保存,而不是全局的
  • 模板处如果不选直接按插入,会插入undefined
  • 发送邮件时:不填写正文会报正文错误
  • 发送邮件会报未知错误,日志中没有发现异常。请用一个实际的邮件账号测试一下。
  • 必填项应该设置required=true
  • locale应再次整理一下,收件人发生错误这个不太合适,一般来说应该是 xxx 不能为空字符

Updated by 左 朋 about 1 year ago

插件信息页上的名称等请统一改为Redmine ezSummary plugin
已修改

插件的目录按惯例来说应该是redmine_ezsummary,建议改一下
我改了一下,结果语言文件不能加载了,不知道为什么,就又改了回去。

route什么的最好也统一一下,叫ezsummary好一点,个人感觉比ez_mail强
已修改

发送汇总邮件这个页面最好不要弹出新窗口,可以用lightbox/redbox之类的在本页打开浮动窗口(推荐)(注意将上面的项目名称行去掉),也可以直接转入发送汇总邮件页面(可能需要改一下layout)。因为redmine从来没有做过弹出窗口,我们弹出窗口与redmine风格差异过大。
若改用modal dialog,那css改动挺大的。就采用了直接转入发送汇总邮件的页面

IE7显示按钮部分仍由问题:如果没有权限的话,所有按钮会被隐藏,鼠标移上去才可以显示出来
问题已修正

建议将发送汇总邮件的权限并入问题下面的权限列表,不过如果不好实现就算了。另外权限名称叫做发送问题汇总邮件更明确一点
Redmine的project module是由权限来定的,基本无法实现。

接收者列表应按用户保存,而不是全局的
已修改

模板处如果不选直接按插入,会插入undefined
问题已修正

发送邮件时:不填写正文会报正文错误
之前的处理是正文不能为空,已经改为允许。

发送邮件会报未知错误,日志中没有发现异常。请用一个实际的邮件账号测试一下。
这个是由于ActionMailer的bug导致的,它的viewpaths加载不全(plugin里的目录都没有),之前我测试过可以发邮件,不过bug修正的不完全还会有问题。现在就按照bug的方式写,没有问题了。

必填项应该设置required=true
已经添加,不过这应该不是html标准

locale应再次整理一下,收件人发生错误这个不太合适,一般来说应该是 xxx 不能为空字符
已经修改,如果有不合适的,请告知。

以上。若还有什么问题,请指出。

Updated by 邹 超群 about 1 year ago

这次效果好多了,还有些小问题需要再调整一下

  • 绝对不能自己搞一个layout base,如果redmine的改了怎么办?所以必须只能通过hook去增加需要的东西
  • 邮件里面的更新作者(authored)那里不能用h4,因为css里面没定义,用h3可以,同时记得把<%= t(:label_history) %>改为h2
  • 更新时间用acronym没用,因为outlook不认。可以这样改
    由 Redmine Admin 在 21 分钟 之前更新 --》 由 Redmine Admin 在 21 分钟(2009年6月01日 星期一 09:14:53) 之前更新
  • 内容简介栏过高,这里是写不了多少字的。缩短些,让所有内容在一屏全部显示出来。
    "问题的汇总信息已自动包含在邮件正文中" "是否保存正文至邮件模板" "发送按钮"这些可以排到一行以节省位置
    (然后注意检查一下窗口被缩小后的显示效果,不要乱了就行)
  • 邮件模板栏过窄,可以拉长到和上面的其它输入框同等宽度
  • required=true的用法好像有点不大对吧,正常的话应该都出来红色星号的,可以参见新建问题的页面。这个星号是必须的,这样才能把必填和选填区分开

目录名改成redmine_ezsummary是可以的,只要注意所有:plugin => 'ezSummary'都改过来就可以。我就是修改后测试的。

在github上给我加个开发权限吧,后期有些文字什么的小调整我就直接改了。

Updated by 左 朋 about 1 year ago

github上已经把您加入collaborator
另外我改了几个问题,样式的等我晚上回家了再弄。

>绝对不能自己搞一个layout base,如果redmine的改了怎么办?所以必须只能通过hook去增加需要的东西
这个是我没在code base里删除,代码里其实已经没有了。
>邮件里面的更新作者(authored)那里不能用h4,因为css里面没定义,用h3可以,同时记得把<%= t(:label_history) %>改为h2
(done)
>required=true的用法好像有点不大对吧,正常的话应该都出来红色星号的,可以参见新建问题的页面。这个星号是必须的,这样才能把必填和选填区分开
这个我看了一下redmine的代码,它是用的custom form builder,重载了FormHelper里的方法,就是form_for 之类的,对:required => true做了特殊的处理。发邮件的表单用的是form_tag,这个builder没法使用,回头我再看看别的实现方式。

Updated by 邹 超群 about 1 year ago

required=true那个问题好像不用太费劲,可以直接用redmine的labelled_tabular_form_for,ezFAQ就是这么做的。
我的体会是尽量从redmine照搬,即省事,又可以保证和它的风格一致。

Updated by 左 朋 about 1 year ago

更新时间用acronym没用,因为outlook不认。可以这样改
由 Redmine Admin 在 21 分钟 之前更新 --》 由 Redmine Admin 在 21 分钟(2009年6月01日 星期一 09:14:53) 之前更新
已修改

内容简介栏过高,这里是写不了多少字的。缩短些,让所有内容在一屏全部显示出来。
现在基本能在一页显示完全了

"问题的汇总信息已自动包含在邮件正文中" "是否保存正文至邮件模板" "发送按钮"这些可以排到一行以节省位置
(然后注意检查一下窗口被缩小后的显示效果,不要乱了就行)
改到一行了,不过觉得不好看。

邮件模板栏过窄,可以拉长到和上面的其它输入框同等宽度
已加长

required=true的用法好像有点不大对吧,正常的话应该都出来红色星号的,可以参见新建问题的页面。这个星号是必须的,这样才能把必填和选填区分开
redmine自带的tabluar form builder 中的form_for 参数得是ActiveRecord对象。没法用 :required => true 直接添加。我在页面上加了js来做这个事情。

Updated by 邹 超群 about 1 year ago

  • Priority changed from to 普通
  • firefox不能发送邮件了,估计是js的问题。IE7正常
  • 我已将以下修改提交,请下载后再继续修改
    • 目录修改为redmine_ezsummary
    • 对说明和标签的细微调整
  • 改好firefox的发送问题就可以了。0.0.1就算完成了

顺便说一句,用PengZuo做模块名好像不太好,不过不需要改..

Updated by 左 朋 about 1 year ago

firefox不能发送邮件这个bug我这里无法重现。
您那里用的是什么版本的firefox?不能发送邮件的现象是怎样的,按下发送后是啥反应?

我的版本是: Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10.5; zh-CN; rv:1.9.0.10) Gecko/2009042315 Firefox/3.0.10

Updated by 邹 超群 about 1 year ago

哦,我明白错误了,不在于浏览器的问题

而在这句(user_patch.rb ln18):

on_the_fly = find_or_create_by_email(contact)

现在加了用户id,这样的话,我用IE打开用一个用户登录,写一个收件人。下次再用firefox打开换一个用户登录,写相同的收件人,就会出错。当然换不换浏览器都是一样的。报错是(没有写明字段):

  • 已经被使用

Updated by 左 朋 about 1 year ago

该bug已修正。
git clone地址变更:
git://github.com/nan1nan1/redmine_ezsummary.git
您把.git/config里的改了就行了。

另外增加了tag 0.0.1

Updated by 邹 超群 about 1 year ago

  • Status changed from 新建 to 已关闭
  • % Done changed from 80 to 100

第一版功能已完成。可以专心开始做CRM的功能了。

Also available in: Atom PDF