From 0064aa42787071547f09d3a8411763170955e094 Mon Sep 17 00:00:00 2001 From: huang Date: Thu, 8 Oct 2015 16:10:33 +0800 Subject: [PATCH 1/8] =?UTF-8?q?=E7=B3=BB=E7=BB=9F=E6=B6=88=E6=81=AF?= =?UTF-8?q?=E4=B8=8D=E6=B6=88=E5=A4=B1=20=E7=B3=BB=E7=BB=9F=E6=B6=88?= =?UTF-8?q?=E6=81=AF=E5=92=8C=E6=99=AE=E9=80=9A=E6=B6=88=E6=81=AF=E4=B8=80?= =?UTF-8?q?=E8=87=B4=EF=BC=8C=E6=8C=89=E7=85=A7=E6=97=B6=E9=97=B4=E6=8E=92?= =?UTF-8?q?=E5=BA=8F=20=E5=BE=85=E4=BC=98=E5=8C=96=E7=82=B9=EF=BC=9A?= =?UTF-8?q?=E6=95=B0=E7=BB=84=E6=8E=92=E5=BA=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/controllers/users_controller.rb | 13 +++++--- app/models/system_message.rb | 11 +++++++ app/views/users/_user_message_system.html.erb | 30 +++++++++++++++++ app/views/users/user_messages.html.erb | 33 ++----------------- 4 files changed, 52 insertions(+), 35 deletions(-) create mode 100644 app/views/users/_user_message_system.html.erb diff --git a/app/controllers/users_controller.rb b/app/controllers/users_controller.rb index 73a26b52c..fc19836ce 100644 --- a/app/controllers/users_controller.rb +++ b/app/controllers/users_controller.rb @@ -112,10 +112,17 @@ class UsersController < ApplicationController case params[:type] when nil @message_alls = [] - messages = MessageAll.where("user_id =?" ,@user).order("created_at desc") + system_message_types = MessageAll.where("message_type =?", "SystemMessage") + messages = MessageAll.where("user_id =? and message_type !=?" ,@user, "SystemMessage") messages.each do |message_all| @message_alls << message_all.message end + # 系统消息需要给每个人发送,之所以这样做,可以避免遍历系统所有用户 + system_message_types.each do |system_message_type| + @message_alls << system_message_type.message + end + # 取出所有符合条件的按照创建时间排序 + @message_alls = @message_alls.sort {|a,b| b.created_at <=> a.created_at} when 'unviewed' @message_alls = [] messages = MessageAll.where("user_id =?", @user).order("created_at desc") @@ -187,12 +194,8 @@ class UsersController < ApplicationController message_new_time.onclick_time = Time.now message_new_time.save else - # 24小时内显示 - contrast_time = Time.now - 86400 message_time.update_attributes(:onclick_time => Time.now) end - # 24小时内显示系统消息 - @user_system_messages = SystemMessage.where("created_at >?", contrast_time).order("created_at desc") end # 消息设置为已读 diff --git a/app/models/system_message.rb b/app/models/system_message.rb index 2a810e8b8..a05610da7 100644 --- a/app/models/system_message.rb +++ b/app/models/system_message.rb @@ -5,4 +5,15 @@ class SystemMessage < ActiveRecord::Base validates :subject, presence: true # validates :description, presence: true validates_length_of :description, maximum: 10000 + + has_many :message_alls, :class_name => 'MessageAll',:as =>:message, :dependent => :destroy + + # 系统消息放置总消息列表 + after_create :add_system_message + + def add_system_message + if MessageAll.where("message_type = '#{self.class.to_s}' and message_id = '#{self.id}'").first.nil? + self.message_alls << MessageAll.new(:user_id => self.user_id) + end + end end diff --git a/app/views/users/_user_message_system.html.erb b/app/views/users/_user_message_system.html.erb new file mode 100644 index 000000000..efbd5d76b --- /dev/null +++ b/app/views/users/_user_message_system.html.erb @@ -0,0 +1,30 @@ +<% if ma.class == SystemMessage %> + <%# @user_system_messages.each do |usm| %> + + <%# end %> +<% end %> \ No newline at end of file diff --git a/app/views/users/user_messages.html.erb b/app/views/users/user_messages.html.erb index bd794438c..b3a09386e 100644 --- a/app/views/users/user_messages.html.erb +++ b/app/views/users/user_messages.html.erb @@ -41,40 +41,13 @@ <% end %> <% end %> - <%# 系统消息 %> - <% if params[:type] != 'system_messages' %> - <% @user_system_messages.each do |usm| %> - - <% end %> - <% end %> <% unless @message_alls.nil? %> <% @message_alls.each do |ma| %> + <%# 系统消息 %> + <%= render :partial => 'users/user_message_system', :locals => {:ma => ma} %> + <%# 课程消息 %> <%= render :partial => 'users/user_message_course', :locals => {:ma => ma} %> From 2aeebfe64569df0bae8e521895ca522f3d3b0a8f Mon Sep 17 00:00:00 2001 From: huang Date: Thu, 8 Oct 2015 16:23:15 +0800 Subject: [PATCH 2/8] =?UTF-8?q?=E4=BC=98=E5=8C=96=E6=95=B0=E7=BB=84?= =?UTF-8?q?=E6=8E=92=E5=BA=8F=20=E6=9C=89=E5=BA=8F=E6=8E=92=E5=BA=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/controllers/users_controller.rb | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/app/controllers/users_controller.rb b/app/controllers/users_controller.rb index fc19836ce..5dd23b54c 100644 --- a/app/controllers/users_controller.rb +++ b/app/controllers/users_controller.rb @@ -112,8 +112,8 @@ class UsersController < ApplicationController case params[:type] when nil @message_alls = [] - system_message_types = MessageAll.where("message_type =?", "SystemMessage") - messages = MessageAll.where("user_id =? and message_type !=?" ,@user, "SystemMessage") + system_message_types = MessageAll.where("message_type =?", "SystemMessage").order("created_at desc") + messages = MessageAll.where("user_id =? and message_type !=?" ,@user, "SystemMessage").order("created_at desc") messages.each do |message_all| @message_alls << message_all.message end From fce872a6a513a78eee063a2925db92e117f9c08b Mon Sep 17 00:00:00 2001 From: huang Date: Thu, 8 Oct 2015 17:42:48 +0800 Subject: [PATCH 3/8] =?UTF-8?q?=E4=BC=98=E5=8C=96issue=E6=98=BE=E7=A4=BA?= =?UTF-8?q?=E4=BB=A3=E7=A0=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/controllers/issues_controller.rb | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) diff --git a/app/controllers/issues_controller.rb b/app/controllers/issues_controller.rb index 2232602aa..923414583 100644 --- a/app/controllers/issues_controller.rb +++ b/app/controllers/issues_controller.rb @@ -113,12 +113,8 @@ class IssuesController < ApplicationController def show # 当前用户查看指派给他的缺陷消息,则设置消息为已读 - query = @issue.forge_messages - query.each do |m| - if m.user_id == User.current.id - m.update_attribute(:viewed, true) - end - end + query = ForgeMessage.where("forge_message_type =? and user_id =? and forge_message_id =?", "Issue", User.current, @issue).first + query.update_attribute(:viewed, true) unless query.nil? # 缺陷状态更新 query_journals = @issue.journals query_journals.each do |query_journal| From 8841b5221bda56fad45fb0d98fe7cfe799c15808 Mon Sep 17 00:00:00 2001 From: ouyangxuhua Date: Fri, 9 Oct 2015 09:08:58 +0800 Subject: [PATCH 4/8] =?UTF-8?q?=E6=B6=88=E6=81=AF=E6=98=BE=E7=A4=BA?= =?UTF-8?q?=E5=86=85=E5=AE=B9=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/controllers/users_controller.rb | 6 +++--- app/views/users/user_messages.html.erb | 4 ++-- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/app/controllers/users_controller.rb b/app/controllers/users_controller.rb index 73a26b52c..54ab38bfd 100644 --- a/app/controllers/users_controller.rb +++ b/app/controllers/users_controller.rb @@ -128,13 +128,13 @@ class UsersController < ApplicationController # when 'system_messages' # @message_alls = SystemMessage.order("created_at desc").all when 'apply' - @message_alls = ForgeMessage.where("forge_message_type =? and user_id =?" , "AppliedProject", @user).order("created_at desc") + @message_alls = ForgeMessage.where("forge_message_type in ('ProjectInvite', 'AppliedProject') and user_id =?", @user).order("created_at desc") when 'homework' @message_alls = CourseMessage.where("course_message_type in ('HomeworkCommon','StudentWorksScore','JournalsForMessage') and user_id =?", @user).order("created_at desc") when 'course_message' @message_alls = CourseMessage.where("course_message_type =? and user_id =?", "Message", @user).order("created_at desc") - # when 'forge_message' - # @message_alls = ForgeMessage.where("forge_message_type =? and user_id =?", "Message", @user).order("created_at desc") + when 'forge_message' + @message_alls = ForgeMessage.where("forge_message_type =? and user_id =?", "Message", @user).order("created_at desc") # @message_alls_count = @message_alls.count when 'course_news' # 课程通知包含发布的通知和回复的通知 diff --git a/app/views/users/user_messages.html.erb b/app/views/users/user_messages.html.erb index bd794438c..7ce0cb9d9 100644 --- a/app/views/users/user_messages.html.erb +++ b/app/views/users/user_messages.html.erb @@ -5,7 +5,7 @@
  • <%= link_to "全部",user_message_path(User.current), :class => "resourcesGrey" %>
  • <%= link_to "未读消息", user_message_path(User.current, :type => 'unviewed'), :class => "resourcesGrey" %>
  • -
  • <%= link_to "用户申请", user_message_path(User.current, :type => 'apply'), :class => "resourcesGrey" %>
  • +
  • <%= link_to "加入项目", user_message_path(User.current, :type => 'apply'), :class => "resourcesGrey" %>
  • <%# 课程相关消息 %>
  • <%= link_to "作业消息", user_message_path(User.current, :type => 'homework'), :class => "resourcesGrey" %>
  • <%= link_to "课程讨论",user_message_path(User.current, :type => 'course_message'), :class => "resourcesGrey" %>
  • @@ -17,7 +17,7 @@ <%# 项目相关消息 %>
  • <%= link_to "项目任务", user_message_path(User.current, :type => 'issue'), :class => "resourcesGrey" %>
  • - +
  • <%= link_to "项目讨论区", user_message_path(User.current, :type => 'forge_message'), :class => "resourcesGrey" %>
  • <%# 项目相关消息 %> From 0ff58b763107414b121956d9bee85357004215b6 Mon Sep 17 00:00:00 2001 From: Tim Date: Fri, 9 Oct 2015 09:41:36 +0800 Subject: [PATCH 5/8] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E4=BA=86=E8=B4=B4?= =?UTF-8?q?=E5=90=A7=E5=9B=BE=E7=89=87=E6=BC=82=E7=A7=BB=E7=9A=84=E9=97=AE?= =?UTF-8?q?=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- public/stylesheets/new_user.css | 12 ++++++------ public/stylesheets/public.css | 6 +++--- 2 files changed, 9 insertions(+), 9 deletions(-) diff --git a/public/stylesheets/new_user.css b/public/stylesheets/new_user.css index 1d2116874..cf40389a1 100644 --- a/public/stylesheets/new_user.css +++ b/public/stylesheets/new_user.css @@ -803,17 +803,17 @@ a.sortArrowActiveU {background:url(images/post_image_list.png) -17px -20px no-re .postDetailCreater {color:#888888; font-size:12px; float:left; margin-right:25px;} .postDetailDate {color:#888888; font-size:12px; float:left;} .postDetailReply { margin-top:28px; color:#888888; float:right;} -a.postReplyIcon {background:url(images/post_image_list.png) -40px 2px no-repeat; width:18px; height:18px; float:left;} -a.postReplyIcon:hover {background:url(images/post_image_list.png) -40px -29px no-repeat;} +a.postReplyIcon {background:url(images/post_image_list.png) -40px 2px no-repeat; width:18px; height:18px; float:left; -moz-transition :all 0s linear 0s; -webkit-transition :all 0s linear 0s; -o-transition:all 0s linear 0s; transition:all 0s linear 0s;} +a.postReplyIcon:hover {background:url(images/post_image_list.png) -40px -29px no-repeat; -moz-transition :all 0s linear 0s; -webkit-transition :all 0s linear 0s; -o-transition:all 0s linear 0s; transition:all 0s linear 0s;} .postDetailInput {width:713px; height:28px; border:1px solid #d9d9d9; outline:none !important;} .postAttIcon {background:url(images/post_image_list.png) 0px -91px no-repeat; width:16px; height:16px; padding-left:20px;} .postAttIcon:hover {background:url(images/post_image_list.png) 0px -113px no-repeat;} .postThemeContainer {width:720px;} .postThemeWrap {width:655px; float:left;position: relative} -.postLikeIcon {background:url(images/post_image_list.png) 0px -42px no-repeat ;float:right; padding-left:18px; margin-top:3px;} -.postLikeIcon:hover {background:url(images/post_image_list.png) 0px -64px no-repeat ;} -a.AnnexBtn{ background: url(images/homepage_icon2.png) 0px -343px no-repeat !important; height:20px; display:block; padding-left:20px; color:#888888;} -a:hover.AnnexBtn{background: url(images/homepage_icon2.png) -90px -343px no-repeat !important; color:#3598db;} +.postLikeIcon {background:url(images/post_image_list.png) 0px -42px no-repeat ;float:right; padding-left:18px; margin-top:3px; -moz-transition :all 0s linear 0s; -webkit-transition :all 0s linear 0s; -o-transition:all 0s linear 0s; transition:all 0s linear 0s;} +.postLikeIcon:hover {background:url(images/post_image_list.png) 0px -64px no-repeat ; -moz-transition :all 0s linear 0s; -webkit-transition :all 0s linear 0s; -o-transition:all 0s linear 0s; transition:all 0s linear 0s;} +a.AnnexBtn{ background: url(images/homepage_icon2.png) 0px -343px no-repeat !important; height:20px; display:block; padding-left:20px; color:#888888; -moz-transition :all 0s linear 0s; -webkit-transition :all 0s linear 0s; -o-transition:all 0s linear 0s; transition:all 0s linear 0s;} +a:hover.AnnexBtn{background: url(images/homepage_icon2.png) -90px -343px no-repeat !important; color:#3598db; -moz-transition :all 0s linear 0s; -webkit-transition :all 0s linear 0s; -o-transition:all 0s linear 0s; transition:all 0s linear 0s;} .postEdit {background:url(images/post_image_list.png) 0px -94px no-repeat; width:18px; height:18px; display:block; float:left;} .postDelete {background:url(images/post_image_list.png) -42px -93px no-repeat; width:18px; height:18px; display:block; float:right;} .pageBanner {width:968px; margin:0px auto; border:1px solid #dddddd; background-color: #FFF; padding: 10px 15px; float:left;} diff --git a/public/stylesheets/public.css b/public/stylesheets/public.css index e14fb48fe..dc2fecbba 100644 --- a/public/stylesheets/public.css +++ b/public/stylesheets/public.css @@ -445,9 +445,9 @@ a.uploadIcon {background:url(../images/resource_icon_list.png) 8px -60px no-repe .navHomepageSearchBoxcontainer {margin-top:11px; } .navHomepageSearchBox {width:380px; border:none; outline:none; height:32px; background-color:#ffffff;} .navHomepageSearchInput {width:345px; height:32px; outline:none; border:none; float:left; padding-left:5px;; margin:0;} -.homepageSearchIcon {width:30px; height:32px; background:url(../images/nav_icon.png) -8px 3px no-repeat; float:left;} -a.homepageSearchIcon:hover {background:url(../images/nav_icon.png) -49px 3px no-repeat;} -.navSearchTypeBox {width:368px; height:35px; position:absolute; border:1px solid #98a1a6; background-color:#ffffff; padding-left:10px; display:none; color:#3e3e3e; font-size:14px; top:43px;} +.homepageSearchIcon {width:30px; height:32px; background:url(../images/nav_icon.png) -8px 3px no-repeat; float:left; -moz-transition :all 0s linear 0s; -webkit-transition :all 0s linear 0s; -o-transition:all 0s linear 0s; transition:all 0s linear 0s;} +a.homepageSearchIcon:hover {background:url(../images/nav_icon.png) -49px 3px no-repeat; -moz-transition :all 0s linear 0s; -webkit-transition :all 0s linear 0s; -o-transition:all 0s linear 0s; transition:all 0s linear 0s;} +.navSearchTypeBox {width:368px; height:35px; position:absolute; border:1px solid #98a1a6; background-color:#ffffff; padding-left:10px; display:none; color:#3e3e3e; font-size:14px;} #navSearchAlert {display:none;} .navHomepageNews {width:30px; display:block; float:right; margin-top:8px; position:relative;} .homepageNewsIcon {background:url(../images/nav_icon.png) -5px -85px no-repeat; width:30px; height:35px; display:block;} From fb5eae3ae2fd196750982c9397878f1ff35be7a0 Mon Sep 17 00:00:00 2001 From: Tim Date: Fri, 9 Oct 2015 10:26:47 +0800 Subject: [PATCH 6/8] =?UTF-8?q?=E6=90=9C=E7=B4=A2=E6=A1=86=E5=9B=BE?= =?UTF-8?q?=E6=A0=87=E6=BC=82=E7=A7=BB=E6=95=88=E6=9E=9C=E6=B8=85=E9=99=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- public/stylesheets/new_user.css | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/public/stylesheets/new_user.css b/public/stylesheets/new_user.css index cf40389a1..5d31c3984 100644 --- a/public/stylesheets/new_user.css +++ b/public/stylesheets/new_user.css @@ -447,8 +447,8 @@ a.resourcesTypeUser {background:url(images/homepage_icon.png) -178px -453px no-r /*.resourcesUploadBox {float:right; width:103px; height:34px; background-color:#64bdd9; line-height:34px; vertical-align:middle; text-align:center; margin-left:12px;}*/ /*.resourcesUploadBox:hover {background-color:#0781b4;}*/ /* 个人主页右边部分*/ -.homepageSearchIcon {width:30px; height:32px; background:url(images/nav_icon.png) -8px 3px no-repeat; float:left;} -input.homepageSearchIcon:hover {cursor: pointer;background:url(../images/nav_icon.png) -49px 3px no-repeat;} +.homepageSearchIcon {width:30px; height:32px; background:url(images/nav_icon.png) -8px 3px no-repeat; float:left; -moz-transition :all 0s linear 0s; -webkit-transition :all 0s linear 0s; -o-transition:all 0s linear 0s; transition:all 0s linear 0s;} +input.homepageSearchIcon:hover {cursor: pointer;background:url(../images/nav_icon.png) -49px 3px no-repeat; -moz-transition :all 0s linear 0s; -webkit-transition :all 0s linear 0s; -o-transition:all 0s linear 0s; transition:all 0s linear 0s;} a.homepagePostTypeQuiz {background:url(images/homepage_icon.png) -90px -124px no-repeat; padding-left:23px;} a.homepagePostTypeAssignment {background:url(images/homepage_icon.png) -93px -318px no-repeat; padding-left:23px;} a.replyGrey {color:#888888; display:inline-block;} From 654ebfca46969370664bedd9f1859a31c761efde Mon Sep 17 00:00:00 2001 From: huang Date: Fri, 9 Oct 2015 10:33:10 +0800 Subject: [PATCH 7/8] =?UTF-8?q?=E9=A1=B9=E7=9B=AE=E9=82=80=E8=AF=B7?= =?UTF-8?q?=E6=B7=BB=E5=8A=A0=EF=BC=9A=E5=A7=93=E3=80=81=E5=90=8D=E3=80=81?= =?UTF-8?q?=E6=80=A7=E5=88=AB?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/controllers/projects_controller.rb | 5 ++- app/models/mailer.rb | 4 +- app/services/users_service.rb | 7 +++- .../projects/invite_members_by_mail.html.erb | 39 +++++++++++++++++++ config/locales/zh.yml | 6 ++- public/stylesheets/project.css | 5 ++- 6 files changed, 60 insertions(+), 6 deletions(-) diff --git a/app/controllers/projects_controller.rb b/app/controllers/projects_controller.rb index 251c47d4c..a8a302045 100644 --- a/app/controllers/projects_controller.rb +++ b/app/controllers/projects_controller.rb @@ -382,7 +382,10 @@ class ProjectsController < ApplicationController end else email = params[:mail] - Mailer.send_invite_in_project(email, @project, User.current).deliver + first_name = params[:first_name] + last_name = params[:last_name] + gender = params[:gender] + Mailer.send_invite_in_project(email, @project, User.current, first_name, last_name, gender).deliver @is_zhuce = false flash[:notice] = l(:notice_email_sent, :value => email) end diff --git a/app/models/mailer.rb b/app/models/mailer.rb index 39e709beb..d797f1ce1 100644 --- a/app/models/mailer.rb +++ b/app/models/mailer.rb @@ -107,7 +107,7 @@ class Mailer < ActionMailer::Base # author: alan # 邀请未注册用户加入项目 # 功能: 在加入项目的同时自动注册用户 - def send_invite_in_project(email, project, invitor) + def send_invite_in_project(email, project, invitor, first_name, last_name, gender) @email = email @subject = "#{invitor.name} #{l(:label_invite_project)} #{project.name} " @password = newpass(6) @@ -116,7 +116,7 @@ class Mailer < ActionMailer::Base login = login.sub(/%40/,'@') us = UsersService.new # 自动激活用户 - user = us.register_auto(login, email, @password) + user = us.register_auto(login, email, @password, first_name, last_name, gender) InviteList.create(:user_id => user.id, :project_id => project.id, :mail =>email) User.current = user unless User.current.nil? @user = user diff --git a/app/services/users_service.rb b/app/services/users_service.rb index 7e8e775ed..236dbc731 100644 --- a/app/services/users_service.rb +++ b/app/services/users_service.rb @@ -47,12 +47,16 @@ class UsersService end # 自动注册功能 FOR:邮件邀请 - def register_auto(login,mail,password) + def register_auto(login, mail, password, first_name, last_name, gender) + mail_notification = "day" @user = User.new @user.admin = false @user.register @user.login = login @user.mail = mail + @user.firstname = first_name + @user.lastname = last_name + @user.mail_notification = mail_notification password_confirmation = password should_confirmation_password = true if !password.blank? && !password_confirmation.blank? && should_confirmation_password @@ -65,6 +69,7 @@ class UsersService @user = automatically_register_lock(@user) if @user.id != nil ue = @user.user_extensions ||= UserExtensions.new + ue.gender = gender ue.user_id = @user.id ue.save end diff --git a/app/views/projects/invite_members_by_mail.html.erb b/app/views/projects/invite_members_by_mail.html.erb index 44c571422..a697b70a4 100644 --- a/app/views/projects/invite_members_by_mail.html.erb +++ b/app/views/projects/invite_members_by_mail.html.erb @@ -44,6 +44,36 @@ } + function verifyFirstName() { + var first_name = $.trim($('#first_name').val()); + if(first_name.length > 30) + { + $("#valid_email").text("用户名字过长,最长为30个字符"); + return false; + } + else + { + $("#valid_email").text(""); + return true; + } + + } + + function verifyLastName() { + var last_name = $.trim($('#last_name').val()); + if(last_name.length > 30) + { + $("#valid_email").text("用户姓氏过长,最长为30个字符"); + return false; + } + else + { + $("#valid_email").text(""); + return true; + } + + } + function senderEmail(obj) { if(verifyAddress()) @@ -79,6 +109,15 @@
  • <%= text_field_tag 'mail', '', :class => "fb_item fl", :placeholder => l(:label_input_email), :onkeyup => "this.value=this.value.replace(' ','')", :style => "ime-mode:disabled;", :onblur => "verifyAddress(this);" %>
  • +
  • + <%= text_field_tag 'first_name', '', :class => "fb_item_first_name fl", :placeholder => l(:label_input_email_lastname), :onkeyup => "this.value=this.value.replace(' ','')", :style => "ime-mode:disabled;", :onblur => "verifyLastName(this);" %> +
  • +
  • + <%= text_field_tag 'last_name', '', :class => "fb_item_last_name fl", :placeholder => l(:label_input_email_firstname), :onkeyup => "this.value=this.value.replace(' ','')", :style => "ime-mode:disabled;", :onblur => "verifyFirstName(this);" %> +
  • +
  • + +
diff --git a/config/locales/zh.yml b/config/locales/zh.yml index 69288d933..195526712 100644 --- a/config/locales/zh.yml +++ b/config/locales/zh.yml @@ -2024,7 +2024,11 @@ zh: label_end_time: 截止时间 label_send_email: 确定发送 - label_input_email: 请输入邮箱地址 + label_input_email: 请输入邮箱地址(必填) + label_input_email_firstname: 请输入用户名字(非必填) + label_input_email_lastname: 请输入用户姓氏(非必填) + label_input_email_gender: 请输入用户性别 + #api end project_module_files: 资源库 diff --git a/public/stylesheets/project.css b/public/stylesheets/project.css index f769ff9e6..0a78b399b 100644 --- a/public/stylesheets/project.css +++ b/public/stylesheets/project.css @@ -44,7 +44,10 @@ a:hover.box_close{background:url(../images/img_floatbox.png) -22px 0 no-repeat;} .box_main02{ width:390px; margin:15px auto;} .box_h3{ color:#15bccf; font-size:16px;} .box_p{ color:#404040; margin-bottom:5px;} -.fb_item{ color:#919191; border:1px solid #919191; height:28px; margin-bottom:5px; padding-left:5px; width:290px;} +.fb_item{ color:#919191; border:1px solid #919191; height:28px; margin-bottom:5px; padding-left:5px; width:200px;} +.fb_item_first_name{ color:#919191; border:1px solid #919191; height:28px; margin-bottom:5px; padding-left:5px; width:150px;margin-left: 10px;} +.fb_item_last_name{ color:#919191; border:1px solid #919191; height:28px; margin-bottom:5px; padding-left:5px; width:150px;margin-left: 10px;} +.fb_item_gender{ color:#919191; border:1px solid #919191; height:29px; margin-bottom:5px; padding-left:5px; width:48px;margin-left: 10px;} a.icon_addm{ background:url(../images/img_floatbox.png) 0 -33px no-repeat; width:16px; height:16px; display:block; margin:5px 0 0 5px;} a:hover.icon_addm{background:url(../images/img_floatbox.png) 0 -61px no-repeat; } a.icon_removem{ background:url(../images/img_floatbox.png) -22px -33px no-repeat;width:16px; height:16px; display:block; margin:5px 0 0 5px} From 530d101024199681b52ce0925649668ba1b602ed Mon Sep 17 00:00:00 2001 From: huang Date: Fri, 9 Oct 2015 11:25:21 +0800 Subject: [PATCH 8/8] =?UTF-8?q?=E9=A1=B9=E7=9B=AE=E9=82=80=E8=AF=B7--?= =?UTF-8?q?=E5=A7=93=E5=90=8D=E3=80=81=E9=95=BF=E5=BA=A6JS=E9=AA=8C?= =?UTF-8?q?=E8=AF=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../projects/invite_members_by_mail.html.erb | 38 +++++++++---------- config/locales/zh.yml | 4 +- public/stylesheets/project.css | 2 +- 3 files changed, 22 insertions(+), 22 deletions(-) diff --git a/app/views/projects/invite_members_by_mail.html.erb b/app/views/projects/invite_members_by_mail.html.erb index a697b70a4..32a124078 100644 --- a/app/views/projects/invite_members_by_mail.html.erb +++ b/app/views/projects/invite_members_by_mail.html.erb @@ -44,21 +44,6 @@ } - function verifyFirstName() { - var first_name = $.trim($('#first_name').val()); - if(first_name.length > 30) - { - $("#valid_email").text("用户名字过长,最长为30个字符"); - return false; - } - else - { - $("#valid_email").text(""); - return true; - } - - } - function verifyLastName() { var last_name = $.trim($('#last_name').val()); if(last_name.length > 30) @@ -74,9 +59,24 @@ } + function verifyFirstName() { + var first_name = $.trim($('#first_name').val()); + if(first_name.length > 30) + { + $("#valid_email").text("用户名字过长,最长为30个字符"); + return false; + } + else + { + $("#valid_email").text(""); + return true; + } + + } + function senderEmail(obj) { - if(verifyAddress()) + if(verifyAddress() && verifyFirstName() && verifyLastName() ) { obj.parent().submit(); } @@ -110,13 +110,13 @@ <%= text_field_tag 'mail', '', :class => "fb_item fl", :placeholder => l(:label_input_email), :onkeyup => "this.value=this.value.replace(' ','')", :style => "ime-mode:disabled;", :onblur => "verifyAddress(this);" %>
  • - <%= text_field_tag 'first_name', '', :class => "fb_item_first_name fl", :placeholder => l(:label_input_email_lastname), :onkeyup => "this.value=this.value.replace(' ','')", :style => "ime-mode:disabled;", :onblur => "verifyLastName(this);" %> + <%= text_field_tag 'last_name', '', :class => "fb_item_first_name fl", :placeholder => l(:label_input_email_lastname), :onkeyup => "this.value=this.value.replace(' ','')", :style => "ime-mode:disabled;", :onblur => "verifyLastName(this);" %>
  • - <%= text_field_tag 'last_name', '', :class => "fb_item_last_name fl", :placeholder => l(:label_input_email_firstname), :onkeyup => "this.value=this.value.replace(' ','')", :style => "ime-mode:disabled;", :onblur => "verifyFirstName(this);" %> + <%= text_field_tag 'first_name', '', :class => "fb_item_last_name fl", :placeholder => l(:label_input_email_firstname), :onkeyup => "this.value=this.value.replace(' ','')", :style => "ime-mode:disabled;", :onblur => "verifyFirstName(this);" %>
  • - +
  • diff --git a/config/locales/zh.yml b/config/locales/zh.yml index 195526712..5efe4a2cc 100644 --- a/config/locales/zh.yml +++ b/config/locales/zh.yml @@ -2025,8 +2025,8 @@ zh: label_end_time: 截止时间 label_send_email: 确定发送 label_input_email: 请输入邮箱地址(必填) - label_input_email_firstname: 请输入用户名字(非必填) - label_input_email_lastname: 请输入用户姓氏(非必填) + label_input_email_firstname: 请输入用户名字(可选) + label_input_email_lastname: 请输入用户姓氏(可选) label_input_email_gender: 请输入用户性别 #api end diff --git a/public/stylesheets/project.css b/public/stylesheets/project.css index 0a78b399b..e044f9d51 100644 --- a/public/stylesheets/project.css +++ b/public/stylesheets/project.css @@ -47,7 +47,7 @@ a:hover.box_close{background:url(../images/img_floatbox.png) -22px 0 no-repeat;} .fb_item{ color:#919191; border:1px solid #919191; height:28px; margin-bottom:5px; padding-left:5px; width:200px;} .fb_item_first_name{ color:#919191; border:1px solid #919191; height:28px; margin-bottom:5px; padding-left:5px; width:150px;margin-left: 10px;} .fb_item_last_name{ color:#919191; border:1px solid #919191; height:28px; margin-bottom:5px; padding-left:5px; width:150px;margin-left: 10px;} -.fb_item_gender{ color:#919191; border:1px solid #919191; height:29px; margin-bottom:5px; padding-left:5px; width:48px;margin-left: 10px;} +.fb_item_gender{ color:#919191; border:1px solid #919191; height:29px; margin-bottom:5px; padding-left:5px; width:58px;margin-left: 10px;} a.icon_addm{ background:url(../images/img_floatbox.png) 0 -33px no-repeat; width:16px; height:16px; display:block; margin:5px 0 0 5px;} a:hover.icon_addm{background:url(../images/img_floatbox.png) 0 -61px no-repeat; } a.icon_removem{ background:url(../images/img_floatbox.png) -22px -33px no-repeat;width:16px; height:16px; display:block; margin:5px 0 0 5px}