From c2d11140a158fca6d4a5ce6a323e9561a68900b4 Mon Sep 17 00:00:00 2001
From: sw <939547590@qq.com>
Date: Thu, 14 May 2015 17:57:00 +0800
Subject: [PATCH 1/9] =?UTF-8?q?=E6=84=8F=E8=A7=81=E5=8F=8D=E9=A6=88?=
=?UTF-8?q?=E9=97=AE=E9=A2=98?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
app/views/layouts/_base_feedback.html.erb | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/app/views/layouts/_base_feedback.html.erb b/app/views/layouts/_base_feedback.html.erb
index 8a5ee893d..540293a48 100644
--- a/app/views/layouts/_base_feedback.html.erb
+++ b/app/views/layouts/_base_feedback.html.erb
@@ -168,8 +168,8 @@ function cookieget(n)
- <%# if @public_forum %>
- <% get_memo %>
+ <% get_memo %>
+ <% if @public_forum %>
<%= form_for(@new_memo, :url => create_feedback_forum_path(@public_forum)) do |f| %>
<%= f.text_area :subject,:id=>"subject", :class => "opnionText", :placeholder => l(:label_feedback_tips) %>
<%= f.hidden_field :content,:id => 'hidden', :required => true , :value => l(:label_feedback_value) %>
@@ -177,7 +177,7 @@ function cookieget(n)
<%= l(:label_submit)%>
<% end %>
- <%# end %>
+ <% end %>
<%= l(:label_technical_support) %>白 羽
From a047bd3d182c31573126740e577706daf8f135e6 Mon Sep 17 00:00:00 2001
From: lizanle <491823689@qq.com>
Date: Fri, 15 May 2015 09:06:36 +0800
Subject: [PATCH 2/9] =?UTF-8?q?=E8=AF=BE=E7=A8=8B=E4=BD=9C=E4=B8=9A?=
=?UTF-8?q?=E5=8F=91=E5=B8=83=E5=8A=9F=E8=83=BD=20=E8=AE=BE=E7=BD=AE?=
=?UTF-8?q?=E6=95=99=E8=BE=85=E5=8A=9F=E8=83=BD=20=E5=AD=A6=E7=94=9F?=
=?UTF-8?q?=E5=88=97=E8=A1=A8=E5=8F=8A=E6=88=90=E7=BB=A9=E6=9F=A5=E7=9C=8B?=
=?UTF-8?q?=E5=8A=9F=E8=83=BD?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
app/api/mobile/apis/courses.rb | 22 ++++++++++++++++---
app/api/mobile/apis/homeworks.rb | 15 +++++++++++++
app/api/mobile/apis/users.rb | 1 +
app/services/courses_service.rb | 37 ++++++++++++++++++++++++++++++++
app/services/homework_service.rb | 23 ++++++++++++++++++++
app/services/users_service.rb | 3 ++-
6 files changed, 97 insertions(+), 4 deletions(-)
diff --git a/app/api/mobile/apis/courses.rb b/app/api/mobile/apis/courses.rb
index b2a2532bc..0900f0446 100644
--- a/app/api/mobile/apis/courses.rb
+++ b/app/api/mobile/apis/courses.rb
@@ -170,10 +170,26 @@ module Mobile
desc "设置教辅"
params do
-
+ requires :token,type:String
+ requires :user_id,type:Integer,desc: '用户id'
+ requires :course_id,type:Integer,desc:'课程id'
+ end
+ get 'set_user_as_assitant' do
+ cs = CoursesService.new
+ cs.set_as_assitant_teacher params
+ present :status, 0
end
- post 'set_user_as_assitant' do
+ desc "删除教辅"
+ params do
+ requires :token,type:String
+ requires :user_id,type:Integer,desc: '用户id'
+ requires :course_id,type:Integer,desc:'课程id'
+ end
+ get 'del_user_as_assitant' do
+ cs = CoursesService.new
+ cs.del_assitant_teacher params
+ present :status, 0
end
desc "返回单个课程"
@@ -187,7 +203,7 @@ module Mobile
course = cs.show_course(params,(current_user.nil? ? User.find(2):current_user))
#course = Course.find(params[:id])
present :data, course, with: Mobile::Entities::Course
- present :status, 0
+ { status: 0}
end
end
diff --git a/app/api/mobile/apis/homeworks.rb b/app/api/mobile/apis/homeworks.rb
index 7a8c87987..5bf454e32 100644
--- a/app/api/mobile/apis/homeworks.rb
+++ b/app/api/mobile/apis/homeworks.rb
@@ -96,6 +96,21 @@ module Mobile
present :status, 0
end
+ desc '创建作业'
+ params do
+ requires :token,type:String
+ requires :work_name,type:String,desc:'作业名称'
+ requires :work_desc,type:String,desc:'作业描述'
+ requires :work_deadline,type:String,desc:'截止日期'
+ requires :is_blind_appr,type:Integer,desc:'是否匿评'
+ requires :blind_appr_num,type:Integer,desc:'匿评分配数'
+ requires :course_id,type:Integer,desc: '课程id'
+ end
+ post 'create_home_work' do
+ Homeworks.get_service.create_home_work params,current_user
+ present :status, 0
+ end
+
end
end
diff --git a/app/api/mobile/apis/users.rb b/app/api/mobile/apis/users.rb
index 3ef2c3237..62c9c3926 100644
--- a/app/api/mobile/apis/users.rb
+++ b/app/api/mobile/apis/users.rb
@@ -84,6 +84,7 @@ module Mobile
requires :name, type: String, desc: '用户名关键字'
requires :search_by, type: String,desc: '搜索依据:0 昵称,1 用户名,2 邮箱,3 昵称和姓名'
optional :is_search_assitant,type:Integer,desc:'是否搜索注册用户来作为助教'
+ optional :course_id,type:Integer,desc: '课程id,搜索注册用户不为该课程教师的其他用户'
end
get 'search/search_user' do
us = UsersService.new
diff --git a/app/services/courses_service.rb b/app/services/courses_service.rb
index fd7ec55fb..36d542d58 100644
--- a/app/services/courses_service.rb
+++ b/app/services/courses_service.rb
@@ -473,6 +473,41 @@ class CoursesService
result
end
+ # 设置人员为课程教辅
+ def set_as_assitant_teacher params
+ members = []
+ #找到课程
+ course = Course.find(params[:course_id])
+ #新建课程人员
+
+ member = Member.new(:role_ids =>[7], :user_id => params[:user_id],:course_id=>params[:course_id])
+ joined = StudentsForCourse.where('student_id = ? and course_id = ?', member.user_id,course.id)
+ joined.each do |join|
+ join.delete
+ end
+ member.course_group_id = 0
+ members << member
+ course.members << members
+ #将课程人员设置为教辅
+ end
+
+ def del_assitant_teacher params
+ member = Member.where("user_id = ? and course_id = ?",params[:user_id],params[:course_id])
+ member.each do |m|
+ m.destroy
+ end
+ user_admin = CourseInfos.where("user_id = ? and course_id = ?",params[:user_id], params[:course_id])
+ if user_admin.size > 0
+ user_admin.each do |user|
+ user.destroy
+ end
+ end
+ joined = StudentsForCourse.where('student_id = ? and course_id = ?', params[:user_id],params[:course_id])
+ joined.each do |join|
+ join.delete
+ end
+ end
+
private
def searchmember_by_name members, name
#searchPeopleByRoles(project, StudentRoles)
@@ -576,4 +611,6 @@ class CoursesService
+
+
end
\ No newline at end of file
diff --git a/app/services/homework_service.rb b/app/services/homework_service.rb
index d22c62a5a..2e7f59888 100644
--- a/app/services/homework_service.rb
+++ b/app/services/homework_service.rb
@@ -231,6 +231,29 @@ class HomeworkService
anonymous_repy(jour)
end
end
+
+ # 发布作业
+ def create_home_work params,current_user
+ @bid = Bid.new
+ @bid.name = params[:work_name]
+ @bid.description = params[:work_desc]
+ # @bid.is_evaluation = params[:is_blind_appr]
+ @bid.evaluation_num = params[:blind_appr_num]
+ @bid.open_anonymous_evaluation = params[:is_blind_appr]
+ @bid.reward_type = 3
+ @bid.deadline = params[:work_deadline]
+ @bid.budget = 0
+ @bid.author_id = current_user.id
+ @bid.commit = 0
+ @bid.homework_type = 1
+ # @bid.
+ if @bid.save
+ HomeworkForCourse.create(:course_id => params[:course_id], :bid_id => @bid.id)
+ unless @bid.watched_by?(current_user)
+ @bid.add_watcher(current_user)
+ end
+ end
+ end
# 学生匿评列表
def student_jour_list params
diff --git a/app/services/users_service.rb b/app/services/users_service.rb
index 17557872b..071820ba3 100644
--- a/app/services/users_service.rb
+++ b/app/services/users_service.rb
@@ -211,7 +211,8 @@ class UsersService
search_by = params[:search_by] ? params[:search_by] : "0"
scope = scope.where("id not in (?)",watcher).like(params[:name],search_by) if params[:name].present?
else
- scope = scope.like(params[:name],search_by) if params[:name].present?
+ teachers = searchTeacherAndAssistant(Course.find(params[:course_id]))
+ scope = scope.where("id not in (?)",teachers.map{|t| t.user_id}).like(params[:name],search_by) if params[:name].present?
end
scope
end
From e51d6684ca9314868d2b8eef2bacfef81f790ae8 Mon Sep 17 00:00:00 2001
From: huang
Date: Fri, 15 May 2015 09:09:49 +0800
Subject: [PATCH 3/9] =?UTF-8?q?=E5=8F=91=E5=B8=83=E7=AB=9E=E8=B5=9B?=
=?UTF-8?q?=E9=A1=B5=E9=9D=A2bug?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
app/views/contests/_form_contest.html.erb | 13 +-
.../stylesheets/window_js/nuncio.css | 328 +++++++++---------
.../stylesheets/window_js/spread.css | 216 ++++++------
3 files changed, 279 insertions(+), 278 deletions(-)
diff --git a/app/views/contests/_form_contest.html.erb b/app/views/contests/_form_contest.html.erb
index 344d69571..0b9f1469d 100644
--- a/app/views/contests/_form_contest.html.erb
+++ b/app/views/contests/_form_contest.html.erb
@@ -33,20 +33,21 @@
%>
-
+
<%= f.text_area :description,
- :rows => 5,
- :class => 'wiki-edit',
- :style => "font-size:small;width:490px;margin-left:10px;",
+ :size => 60,
+ :rows => 4,
+ :style => "width:490px;",
:maxlength => Contest::DESCRIPTION_LENGTH_LIMIT,
:placeholder => "#{l(:label_contest_description)}"
%>
-
+
<%= f.text_field :password,
:size => 60,
- :style => "width:488px;margin-left: 10px;"
+ :rows => 4,
+ :style => "width:490px;"
%>
diff --git a/public/plugin_assets/redmine_code_review/stylesheets/window_js/nuncio.css b/public/plugin_assets/redmine_code_review/stylesheets/window_js/nuncio.css
index e2700e5b7..2c439bd00 100644
--- a/public/plugin_assets/redmine_code_review/stylesheets/window_js/nuncio.css
+++ b/public/plugin_assets/redmine_code_review/stylesheets/window_js/nuncio.css
@@ -1,164 +1,164 @@
-.overlay_nuncio img { border: none; }
-
-.overlay_nuncio {
- background-color: #666666;
-}
-
-.nuncio_nw {
- width: 12px;
- height: 28px;
- background: url(nuncio/top_left.png) no-repeat;
-}
-
-.nuncio_n {
- background: url(nuncio/top_mid.png) repeat-x;
- height: 28px;
-}
-
-.nuncio_ne {
- width: 21px;
- height: 28px;
- background: url(nuncio/top_right.png) no-repeat;
-}
-
-.nuncio_e {
- width: 21px;
- background: url(nuncio/center_right.png) repeat-y top right;
-}
-
-.nuncio_w {
- width: 12px;
- background: url(nuncio/center_left.png) repeat-y top left;
-}
-
-.nuncio_sw {
- width: 12px;
- height: 18px;
- background: url(nuncio/bottom_left.png) no-repeat;
-}
-
-.nuncio_s {
- background: url(nuncio/bottom_mid.png) repeat-x 0 0;
- height: 18px;
-}
-
-.nuncio_se, .nuncio_sizer {
- width: 21px;
- height: 18px;
- background: url(nuncio/bottom_right.png) no-repeat;
-}
-
-.nuncio_close {
- width: 14px;
- height: 14px;
- background: url(nuncio/close.png) no-repeat;
- position:absolute;
- top:10px;
- right:22px;
- cursor:pointer;
- z-index:2000;
-}
-
-.nuncio_minimize {
- width: 14px;
- height: 15px;
- background: url(nuncio/minimize.png) no-repeat;
- position:absolute;
- top:10px;
- right:40px;
- cursor:pointer;
- z-index:2000;
-}
-
-.nuncio_title {
- float:left;
- font-size:11px;
- font-weight: bold;
- font-style: italic;
- color: #fff;
- width: 100%
-}
-
-.nuncio_content {
- background: url(nuncio/overlay.png) repeat;
- overflow:auto;
- color: #ddd;
- font-family: Tahoma, Arial, "sans-serif";
- font-size: 10px;
-}
-
-.nuncio_sizer {
- cursor:se-resize;
-}
-
-
-.top_draggable, .bottom_draggable {
- cursor:move
-}
-/* FOR IE */
-* html .nuncio_nw {
- background-color: transparent;
- background-image: none;
- filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src="../themes/nuncio/top_left.png", sizingMethod="crop");
-}
-
-* html .nuncio_n {
- background-color: transparent;
- background-image: none;
- filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src="../themes/nuncio/top_mid.png", sizingMethod="scale");
-}
-
-* html .nuncio_ne {
- background-color: transparent;
- background-image: none;
- filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src="../themes/nuncio/top_right.png", sizingMethod="crop");
-}
-
-* html .nuncio_w {
- background-color: transparent;
- background-image: none;
- filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src="../themes/nuncio/center_left.png", sizingMethod="scale");
-}
-
-* html .nuncio_e {
- background-color: transparent;
- background-image: none;
- filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src="../themes/nuncio/center_right.png", sizingMethod="scale");
-}
-
-* html .nuncio_sw {
- background-color: transparent;
- background-image: none;
- filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src="../themes/nuncio/bottom_left.png", sizingMethod="crop");
-}
-
-* html .nuncio_s {
- background-color: transparent;
- background-image: none;
- filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src="../themes/nuncio/bottom_mid.png", sizingMethod="scale");
-}
-
-* html .nuncio_se {
- background-color: transparent;
- background-image: none;
- filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src="../themes/nuncio/bottom_right.png", sizingMethod="crop");
-}
-
-* html .nuncio_sizer {
- background-color: transparent;
- background-image: none;
- filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src="../themes/nuncio/bottom_right.png", sizingMethod="crop");
-}
-
-* html .nuncio_close {
- background-color: transparent;
- background-image: none;
- filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src="../themes/nuncio/close.png", sizingMethod="crop");
-}
-
-* html .nuncio_minimize {
- background-color: transparent;
- background-image: none;
- filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src="../themes/nuncio/minimize.png", sizingMethod="crop");
-}
-
+.overlay_nuncio img { border: none; }
+
+.overlay_nuncio {
+ background-color: #666666;
+}
+
+.nuncio_nw {
+ width: 12px;
+ height: 28px;
+ background: url(nuncio/top_left.png) no-repeat;
+}
+
+.nuncio_n {
+ background: url(nuncio/top_mid.png) repeat-x;
+ height: 28px;
+}
+
+.nuncio_ne {
+ width: 21px;
+ height: 28px;
+ background: url(nuncio/top_right.png) no-repeat;
+}
+
+.nuncio_e {
+ width: 21px;
+ background: url(nuncio/center_right.png) repeat-y top right;
+}
+
+.nuncio_w {
+ width: 12px;
+ background: url(nuncio/center_left.png) repeat-y top left;
+}
+
+.nuncio_sw {
+ width: 12px;
+ height: 18px;
+ background: url(nuncio/bottom_left.png) no-repeat;
+}
+
+.nuncio_s {
+ background: url(nuncio/bottom_mid.png) repeat-x 0 0;
+ height: 18px;
+}
+
+.nuncio_se, .nuncio_sizer {
+ width: 21px;
+ height: 18px;
+ background: url(nuncio/bottom_right.png) no-repeat;
+}
+
+.nuncio_close {
+ width: 14px;
+ height: 14px;
+ background: url(nuncio/close.png) no-repeat;
+ position:absolute;
+ top:10px;
+ right:22px;
+ cursor:pointer;
+ z-index:2000;
+}
+
+.nuncio_minimize {
+ width: 14px;
+ height: 15px;
+ background: url(nuncio/minimize.png) no-repeat;
+ position:absolute;
+ top:10px;
+ right:40px;
+ cursor:pointer;
+ z-index:2000;
+}
+
+.nuncio_title {
+ float:left;
+ font-size:11px;
+ font-weight: bold;
+ font-style: italic;
+ color: #fff;
+ width: 100%
+}
+
+.nuncio_content {
+ background: url(nuncio/overlay.png) repeat;
+ overflow:auto;
+ color: #ddd;
+ font-family: Tahoma, Arial, "sans-serif";
+ font-size: 10px;
+}
+
+.nuncio_sizer {
+ cursor:se-resize;
+}
+
+
+.top_draggable, .bottom_draggable {
+ cursor:move
+}
+/* FOR IE */
+* html .nuncio_nw {
+ background-color: transparent;
+ background-image: none;
+ filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src="../themes/nuncio/top_left.png", sizingMethod="crop");
+}
+
+* html .nuncio_n {
+ background-color: transparent;
+ background-image: none;
+ filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src="../themes/nuncio/top_mid.png", sizingMethod="scale");
+}
+
+* html .nuncio_ne {
+ background-color: transparent;
+ background-image: none;
+ filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src="../themes/nuncio/top_right.png", sizingMethod="crop");
+}
+
+* html .nuncio_w {
+ background-color: transparent;
+ background-image: none;
+ filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src="../themes/nuncio/center_left.png", sizingMethod="scale");
+}
+
+* html .nuncio_e {
+ background-color: transparent;
+ background-image: none;
+ filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src="../themes/nuncio/center_right.png", sizingMethod="scale");
+}
+
+* html .nuncio_sw {
+ background-color: transparent;
+ background-image: none;
+ filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src="../themes/nuncio/bottom_left.png", sizingMethod="crop");
+}
+
+* html .nuncio_s {
+ background-color: transparent;
+ background-image: none;
+ filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src="../themes/nuncio/bottom_mid.png", sizingMethod="scale");
+}
+
+* html .nuncio_se {
+ background-color: transparent;
+ background-image: none;
+ filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src="../themes/nuncio/bottom_right.png", sizingMethod="crop");
+}
+
+* html .nuncio_sizer {
+ background-color: transparent;
+ background-image: none;
+ filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src="../themes/nuncio/bottom_right.png", sizingMethod="crop");
+}
+
+* html .nuncio_close {
+ background-color: transparent;
+ background-image: none;
+ filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src="../themes/nuncio/close.png", sizingMethod="crop");
+}
+
+* html .nuncio_minimize {
+ background-color: transparent;
+ background-image: none;
+ filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src="../themes/nuncio/minimize.png", sizingMethod="crop");
+}
+
diff --git a/public/plugin_assets/redmine_code_review/stylesheets/window_js/spread.css b/public/plugin_assets/redmine_code_review/stylesheets/window_js/spread.css
index d7d722e8a..9bda2a68d 100644
--- a/public/plugin_assets/redmine_code_review/stylesheets/window_js/spread.css
+++ b/public/plugin_assets/redmine_code_review/stylesheets/window_js/spread.css
@@ -1,108 +1,108 @@
-.overlay_spread {
- background-color: #85BBEF;
- filter:alpha(opacity=60);
- -moz-opacity: 0.6;
- opacity: 0.6;
-}
-
-.spread_nw {
- background: transparent url(spread/left-top.gif) no-repeat 0 0;
- width:10px;
- height:25px;
-}
-
-.spread_n {
- background: transparent url(spread/top-middle.gif) repeat-x 0 0;
- height:25px;
-}
-
-.spread_ne {
- background: transparent url(spread/right-top.gif) no-repeat 0 0;
- width:10px;
- height:25px;
-}
-
-.spread_w {
- background: transparent url(spread/frame-left.gif) repeat-y top left;
- width:7px;
-}
-
-.spread_e {
- background: transparent url(spread/frame-right.gif) repeat-y top right;
- width:7px;
-}
-
-.spread_sw {
- background: transparent url(spread/bottom-left-c.gif) no-repeat 0 0;
- width:7px;
- height:7px;
-}
-
-.spread_s {
- background: transparent url(spread/bottom-middle.gif) repeat-x 0 0;
- height:7px;
-}
-
-.spread_se, .spread_sizer {
- background: transparent url(spread/bottom-right-c.gif) no-repeat 0 0;
- width:7px;
- height:7px;
-}
-
-.spread_sizer {
- cursor:se-resize;
-}
-
-.spread_close {
- width: 23px;
- height: 23px;
- background: transparent url(spread/button-close-focus.gif) no-repeat 0 0;
- position:absolute;
- top:0px;
- right:11px;
- cursor:pointer;
- z-index:1000;
-}
-
-.spread_minimize {
- width: 23px;
- height: 23px;
- background: transparent url(spread/button-min-focus.gif) no-repeat 0 0;
- position:absolute;
- top:0px;
- right:55px;
- cursor:pointer;
- z-index:1000;
-}
-
-.spread_maximize {
- width: 23px;
- height: 23px;
- background: transparent url(spread/button-max-focus.gif) no-repeat 0 0;
- position:absolute;
- top:0px;
- right:33px;
- cursor:pointer;
- z-index:1000;
-}
-
-.spread_title {
- float:left;
- height:14px;
- font-family: Tahoma, Arial, sans-serif;
- font-size:14px;
- font-weight:bold;
- text-align:left;
- margin-top:2px;
- width:100%;
- color:#E47211;
-}
-
-.spread_content {
- overflow:auto;
- color: #222;
- font-family: Tahoma, Arial, sans-serif;
- font-size: 10px;
- background:#A9EA00;
-}
-
+.overlay_spread {
+ background-color: #85BBEF;
+ filter:alpha(opacity=60);
+ -moz-opacity: 0.6;
+ opacity: 0.6;
+}
+
+.spread_nw {
+ background: transparent url(spread/left-top.gif) no-repeat 0 0;
+ width:10px;
+ height:25px;
+}
+
+.spread_n {
+ background: transparent url(spread/top-middle.gif) repeat-x 0 0;
+ height:25px;
+}
+
+.spread_ne {
+ background: transparent url(spread/right-top.gif) no-repeat 0 0;
+ width:10px;
+ height:25px;
+}
+
+.spread_w {
+ background: transparent url(spread/frame-left.gif) repeat-y top left;
+ width:7px;
+}
+
+.spread_e {
+ background: transparent url(spread/frame-right.gif) repeat-y top right;
+ width:7px;
+}
+
+.spread_sw {
+ background: transparent url(spread/bottom-left-c.gif) no-repeat 0 0;
+ width:7px;
+ height:7px;
+}
+
+.spread_s {
+ background: transparent url(spread/bottom-middle.gif) repeat-x 0 0;
+ height:7px;
+}
+
+.spread_se, .spread_sizer {
+ background: transparent url(spread/bottom-right-c.gif) no-repeat 0 0;
+ width:7px;
+ height:7px;
+}
+
+.spread_sizer {
+ cursor:se-resize;
+}
+
+.spread_close {
+ width: 23px;
+ height: 23px;
+ background: transparent url(spread/button-close-focus.gif) no-repeat 0 0;
+ position:absolute;
+ top:0px;
+ right:11px;
+ cursor:pointer;
+ z-index:1000;
+}
+
+.spread_minimize {
+ width: 23px;
+ height: 23px;
+ background: transparent url(spread/button-min-focus.gif) no-repeat 0 0;
+ position:absolute;
+ top:0px;
+ right:55px;
+ cursor:pointer;
+ z-index:1000;
+}
+
+.spread_maximize {
+ width: 23px;
+ height: 23px;
+ background: transparent url(spread/button-max-focus.gif) no-repeat 0 0;
+ position:absolute;
+ top:0px;
+ right:33px;
+ cursor:pointer;
+ z-index:1000;
+}
+
+.spread_title {
+ float:left;
+ height:14px;
+ font-family: Tahoma, Arial, sans-serif;
+ font-size:14px;
+ font-weight:bold;
+ text-align:left;
+ margin-top:2px;
+ width:100%;
+ color:#E47211;
+}
+
+.spread_content {
+ overflow:auto;
+ color: #222;
+ font-family: Tahoma, Arial, sans-serif;
+ font-size: 10px;
+ background:#A9EA00;
+}
+
From 3dc5ee33a6d1bbb2ed35e88dd996c46ef25d14f1 Mon Sep 17 00:00:00 2001
From: huang
Date: Fri, 15 May 2015 09:11:59 +0800
Subject: [PATCH 4/9] =?UTF-8?q?=E6=9C=AA=E6=94=B9=E5=8A=A8/merge?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../stylesheets/window_js/mac_os_x_dialog.css | 320 +++++++++---------
1 file changed, 160 insertions(+), 160 deletions(-)
diff --git a/public/plugin_assets/redmine_code_review/stylesheets/window_js/mac_os_x_dialog.css b/public/plugin_assets/redmine_code_review/stylesheets/window_js/mac_os_x_dialog.css
index 4c89f602d..e663e3c5e 100644
--- a/public/plugin_assets/redmine_code_review/stylesheets/window_js/mac_os_x_dialog.css
+++ b/public/plugin_assets/redmine_code_review/stylesheets/window_js/mac_os_x_dialog.css
@@ -1,160 +1,160 @@
-.overlay_mac_os_x_dialog {
- background-color: #FF7224;
- filter:alpha(opacity=60);
- -moz-opacity: 0.6;
- opacity: 0.6;
-}
-
-.mac_os_x_dialog_nw {
- background: transparent url(mac_os_x_dialog/L.png) repeat-y top left;
- width:16px;
- height:16px;
-}
-
-.mac_os_x_dialog_n {
- background: transparent url(mac_os_x_dialog/bg.gif) repeat 0 0;
- height:18px;
-}
-
-.mac_os_x_dialog_ne {
- background: transparent url(mac_os_x_dialog/R.png) repeat-y top left;
- width:16px;
- height:16px;
-}
-
-.mac_os_x_dialog_w {
- background: transparent url(mac_os_x_dialog/L.png) repeat-y top left;
- width:16px;
-}
-
-.mac_os_x_dialog_e {
- background: transparent url(mac_os_x_dialog/R.png) repeat-y top right;
- width:16px;
-}
-
-.mac_os_x_dialog_sw {
- background: transparent url(mac_os_x_dialog/BL.png) no-repeat 0 0;
- width:31px;
- height:40px;
-}
-
-.mac_os_x_dialog_s {
- background: transparent url(mac_os_x_dialog/B.png) repeat-x 0 0;
- height:40px;
-}
-
-.mac_os_x_dialog_se, .mac_os_x_dialog_sizer {
- background: transparent url(mac_os_x_dialog/BR.png) no-repeat 0 0;
- width:31px;
- height:40px;
-}
-
-.mac_os_x_dialog_sizer {
- cursor:se-resize;
-}
-
-.mac_os_x_dialog_close {
- width: 19px;
- height: 19px;
- background: transparent url(mac_os_x_dialog/close.gif) no-repeat 0 0;
- position:absolute;
- top:12px;
- left:25px;
- cursor:pointer;
- z-index:1000;
-}
-
-.mac_os_x_dialog_minimize {
- width: 19px;
- height: 19px;
- background: transparent url(mac_os_x_dialog/minimize.gif) no-repeat 0 0;
- position:absolute;
- top:12px;
- left:45px;
- cursor:pointer;
- z-index:1000;
-}
-
-.mac_os_x_dialog_maximize {
- width: 19px;
- height: 19px;
- background: transparent url(mac_os_x_dialog/maximize.gif) no-repeat 0 0;
- position:absolute;
- top:12px;
- left:65px;
- cursor:pointer;
- z-index:1000;
-}
-
-.mac_os_x_dialog_title {
- float:left;
- height:14px;
- font-family: Tahoma, Arial, sans-serif;
- font-size:12px;
- text-align:center;
- margin-top:6px;
- width:100%;
- color:#000;
-}
-
-.mac_os_x_dialog_content {
- overflow:auto;
- color: #222;
- font-family: Tahoma, Arial, sans-serif;
- font-size: 10px;
- background: transparent url(mac_os_x_dialog/bg.gif) repeat 0 0;
-}
-
-.mac_os_x_dialog_buttons {
- text-align: center;
-}
-/* FOR IE */
-* html .mac_os_x_dialog_nw {
- background-color: transparent;
- background-image: none;
- filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src="../themes/mac_os_x_dialog/L.png", sizingMethod="scale");
-}
-
-
-* html .mac_os_x_dialog_ne {
- background-color: transparent;
- background-image: none;
- filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src="../themes/mac_os_x_dialog/R.png", sizingMethod="scale");
-}
-
-* html .mac_os_x_dialog_w {
- background-color: transparent;
- background-image: none;
- filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src="../themes/mac_os_x_dialog/L.png", sizingMethod="scale");
-}
-
-* html .mac_os_x_dialog_e {
- background-color: transparent;
- background-image: none;
- filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src="../themes/mac_os_x_dialog/R.png", sizingMethod="scale");
-}
-
-* html .mac_os_x_dialog_sw {
- background-color: transparent;
- background-image: none;
- filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src="../themes/mac_os_x_dialog/BL.png", sizingMethod="crop");
-}
-
-* html .mac_os_x_dialog_s {
- background-color: transparent;
- background-image: none;
- filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src="../themes/mac_os_x_dialog/B.png", sizingMethod="scale");
-}
-
-* html .mac_os_x_dialog_se {
- background-color: transparent;
- background-image: none;
- filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src="../themes/mac_os_x_dialog/BR.png", sizingMethod="crop");
-}
-
-* html .mac_os_x_dialog_sizer {
- background-color: transparent;
- background-image: none;
- filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src="../themes/mac_os_x_dialog/BR.png", sizingMethod="crop");
-}
-
+.overlay_mac_os_x_dialog {
+ background-color: #FF7224;
+ filter:alpha(opacity=60);
+ -moz-opacity: 0.6;
+ opacity: 0.6;
+}
+
+.mac_os_x_dialog_nw {
+ background: transparent url(mac_os_x_dialog/L.png) repeat-y top left;
+ width:16px;
+ height:16px;
+}
+
+.mac_os_x_dialog_n {
+ background: transparent url(mac_os_x_dialog/bg.gif) repeat 0 0;
+ height:18px;
+}
+
+.mac_os_x_dialog_ne {
+ background: transparent url(mac_os_x_dialog/R.png) repeat-y top left;
+ width:16px;
+ height:16px;
+}
+
+.mac_os_x_dialog_w {
+ background: transparent url(mac_os_x_dialog/L.png) repeat-y top left;
+ width:16px;
+}
+
+.mac_os_x_dialog_e {
+ background: transparent url(mac_os_x_dialog/R.png) repeat-y top right;
+ width:16px;
+}
+
+.mac_os_x_dialog_sw {
+ background: transparent url(mac_os_x_dialog/BL.png) no-repeat 0 0;
+ width:31px;
+ height:40px;
+}
+
+.mac_os_x_dialog_s {
+ background: transparent url(mac_os_x_dialog/B.png) repeat-x 0 0;
+ height:40px;
+}
+
+.mac_os_x_dialog_se, .mac_os_x_dialog_sizer {
+ background: transparent url(mac_os_x_dialog/BR.png) no-repeat 0 0;
+ width:31px;
+ height:40px;
+}
+
+.mac_os_x_dialog_sizer {
+ cursor:se-resize;
+}
+
+.mac_os_x_dialog_close {
+ width: 19px;
+ height: 19px;
+ background: transparent url(mac_os_x_dialog/close.gif) no-repeat 0 0;
+ position:absolute;
+ top:12px;
+ left:25px;
+ cursor:pointer;
+ z-index:1000;
+}
+
+.mac_os_x_dialog_minimize {
+ width: 19px;
+ height: 19px;
+ background: transparent url(mac_os_x_dialog/minimize.gif) no-repeat 0 0;
+ position:absolute;
+ top:12px;
+ left:45px;
+ cursor:pointer;
+ z-index:1000;
+}
+
+.mac_os_x_dialog_maximize {
+ width: 19px;
+ height: 19px;
+ background: transparent url(mac_os_x_dialog/maximize.gif) no-repeat 0 0;
+ position:absolute;
+ top:12px;
+ left:65px;
+ cursor:pointer;
+ z-index:1000;
+}
+
+.mac_os_x_dialog_title {
+ float:left;
+ height:14px;
+ font-family: Tahoma, Arial, sans-serif;
+ font-size:12px;
+ text-align:center;
+ margin-top:6px;
+ width:100%;
+ color:#000;
+}
+
+.mac_os_x_dialog_content {
+ overflow:auto;
+ color: #222;
+ font-family: Tahoma, Arial, sans-serif;
+ font-size: 10px;
+ background: transparent url(mac_os_x_dialog/bg.gif) repeat 0 0;
+}
+
+.mac_os_x_dialog_buttons {
+ text-align: center;
+}
+/* FOR IE */
+* html .mac_os_x_dialog_nw {
+ background-color: transparent;
+ background-image: none;
+ filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src="../themes/mac_os_x_dialog/L.png", sizingMethod="scale");
+}
+
+
+* html .mac_os_x_dialog_ne {
+ background-color: transparent;
+ background-image: none;
+ filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src="../themes/mac_os_x_dialog/R.png", sizingMethod="scale");
+}
+
+* html .mac_os_x_dialog_w {
+ background-color: transparent;
+ background-image: none;
+ filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src="../themes/mac_os_x_dialog/L.png", sizingMethod="scale");
+}
+
+* html .mac_os_x_dialog_e {
+ background-color: transparent;
+ background-image: none;
+ filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src="../themes/mac_os_x_dialog/R.png", sizingMethod="scale");
+}
+
+* html .mac_os_x_dialog_sw {
+ background-color: transparent;
+ background-image: none;
+ filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src="../themes/mac_os_x_dialog/BL.png", sizingMethod="crop");
+}
+
+* html .mac_os_x_dialog_s {
+ background-color: transparent;
+ background-image: none;
+ filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src="../themes/mac_os_x_dialog/B.png", sizingMethod="scale");
+}
+
+* html .mac_os_x_dialog_se {
+ background-color: transparent;
+ background-image: none;
+ filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src="../themes/mac_os_x_dialog/BR.png", sizingMethod="crop");
+}
+
+* html .mac_os_x_dialog_sizer {
+ background-color: transparent;
+ background-image: none;
+ filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src="../themes/mac_os_x_dialog/BR.png", sizingMethod="crop");
+}
+
From cc5738c12f70e81031baf18255ae54fea0532f8e Mon Sep 17 00:00:00 2001
From: alan <547533434@qq.com>
Date: Fri, 15 May 2015 10:07:52 +0800
Subject: [PATCH 5/9] =?UTF-8?q?=E8=AF=BE=E7=A8=8B=E8=AE=A8=E8=AE=BA?=
=?UTF-8?q?=E5=8C=BA=E5=9B=9E=E5=A4=8D=E6=A0=B7=E5=BC=8F=E9=94=99=E8=AF=AF?=
=?UTF-8?q?=20Signed-off-by:=20alan=20<547533434@qq.com>?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
app/views/attachments/_form_course.html.erb | 32 +-
app/views/attachments/_form_project.html.erb | 4 +-
app/views/boards/_course_show.html.erb | 3 +-
public/javascripts/attachments.js | 324 +++++++++----------
4 files changed, 186 insertions(+), 177 deletions(-)
diff --git a/app/views/attachments/_form_course.html.erb b/app/views/attachments/_form_course.html.erb
index 4a297fb7b..b0ab39b5a 100644
--- a/app/views/attachments/_form_course.html.erb
+++ b/app/views/attachments/_form_course.html.erb
@@ -2,26 +2,30 @@
<% if defined?(container) && container && container.saved_attachments %>
<% if isReply %>
<% container.saved_attachments.each_with_index do |attachment, i| %>
-
+
+
<%= text_field_tag("attachments[p#{i}][filename]", attachment.filename, :class => 'filename readonly', :readonly=>'readonly')%>
- <%= text_field_tag("attachments[p#{i}][description]", attachment.description, :maxlength => 255, :placeholder => l(:label_optional_description), :class => 'description', :style=>"display: inline-block;") +
- link_to(' '.html_safe, attachment_path(attachment, :attachment_id => "p#{i}", :format => 'js'), :method => 'delete', :remote => true, :class => 'remove-upload') %>
- <%#= render :partial => 'tags/tag', :locals => {:obj => attachment, :object_flag => "6"} %>
+ <%= text_field_tag("attachments[p#{i}][description]", attachment.description, :maxlength => 255, :placeholder => l(:label_optional_description), :class => 'description', :style=>"display: inline-block;") %>
<%= l(:field_is_public)%>:
- <%= check_box_tag("attachments[p#{i}][is_public_checkbox]", attachment.is_public,attachment.is_public == 1 ? true : false, :class => 'is_public')%>
+ <%= check_box_tag("attachments[p#{i}][is_public_checkbox]", attachment.is_public,attachment.is_public == 1 ? true : false, :class => 'is_public_checkbox')%>
+
+ <%= link_to(' '.html_safe, attachment_path(attachment, :attachment_id => "p#{i}", :format => 'js'), :method => 'delete', :remote => true, :class => 'remove-upload') %>
<%= hidden_field_tag "attachments[p#{i}][token]", "#{attachment.token}" %>
<% end %>
<% else %>
<% container.attachments.each_with_index do |attachment, i| %>
-
+
+
<%= text_field_tag("attachments[p#{i}][filename]", attachment.filename, :class => 'filename readonly', :readonly=>'readonly')%>
- <%= text_field_tag("attachments[p#{i}][description]", attachment.description, :maxlength => 255, :placeholder => l(:label_optional_description), :class => 'description', :style=>"display: inline-block;") +
- link_to(' '.html_safe, attachment_path(attachment, :attachment_id => "p#{i}", :format => 'js'), :method => 'delete', :remote => true, :class => 'remove-upload') %>
- <%#= render :partial => 'tags/tag', :locals => {:obj => attachment, :object_flag => "6"} %>
- <%= l(:field_is_public)%>:
- <%= check_box_tag("attachments[p#{i}][is_public_checkbox]", attachment.is_public,attachment.is_public == 1 ? true : false, :class => 'is_public')%>
- <%= hidden_field_tag "attachments[p#{i}][token]", "#{attachment.token}" %>
+ <%= text_field_tag("attachments[p#{i}][description]", attachment.description, :maxlength => 255, :placeholder => l(:label_optional_description), :class => 'description', :style=>"display: inline-block;") %>
+ <%= l(:field_is_public)%>:
+ <%= check_box_tag("attachments[p#{i}][is_public_checkbox]", attachment.is_public,attachment.is_public == 1 ? true : false, :class => 'is_public_checkbox')%>
+
+ <%= link_to(' '.html_safe, attachment_path(attachment, :attachment_id => "p#{i}", :format => 'js'), :method => 'delete', :remote => true, :class => 'remove-upload') %>
+ <%#= render :partial => 'tags/tag', :locals => {:obj => attachment, :object_flag => "6"} %>
+
+ <%= hidden_field_tag "attachments[p#{i}][token]", "#{attachment.token}" %>
<% end %>
<% end %>
@@ -56,7 +60,9 @@
:file_count => l(:label_file_count),
:delete_all_files => l(:text_are_you_sure_all)
} %>
-<%= l(:label_no_file_uploaded)%>
+ <% if container.nil? %>
+ <%= l(:label_no_file_uploaded)%>
+ <% end %>
(<%= l(:label_max_size) %>: <%= number_to_human_size(Setting.attachment_max_size.to_i.kilobytes) %>)
diff --git a/app/views/attachments/_form_project.html.erb b/app/views/attachments/_form_project.html.erb
index 515e307f6..0478ba613 100644
--- a/app/views/attachments/_form_project.html.erb
+++ b/app/views/attachments/_form_project.html.erb
@@ -124,7 +124,9 @@
:file_count => l(:label_file_count),
:delete_all_files => l(:text_are_you_sure_all)
} %>
- <%= l(:label_no_file_uploaded)%>
+ <% if container.nil? %>
+ <%= l(:label_no_file_uploaded)%>
+ <% end %>
(<%= l(:label_max_size) %>: <%= number_to_human_size(Setting.attachment_max_size.to_i.kilobytes) %>)
diff --git a/app/views/boards/_course_show.html.erb b/app/views/boards/_course_show.html.erb
index 2d0bda162..2a078553c 100644
--- a/app/views/boards/_course_show.html.erb
+++ b/app/views/boards/_course_show.html.erb
@@ -68,6 +68,7 @@
+
@@ -125,7 +126,7 @@
<%= link_to_user_header message.author,false,:class => 'fl c_orange ' %>
-
<%= textAreailizable message,:content,:attachments => message.attachments %>
+
<%= textAreailizable message,:content,:attachments => message.attachments %>
<%= format_time(message.created_on) %>
diff --git a/public/javascripts/attachments.js b/public/javascripts/attachments.js
index 6eb73182d..01e587e97 100644
--- a/public/javascripts/attachments.js
+++ b/public/javascripts/attachments.js
@@ -1,10 +1,10 @@
/* Redmine - project management software
- Copyright (C) 2006-2013 Jean-Philippe Lang */
+ Copyright (C) 2006-2013 Jean-Philippe Lang */
function postUpMsg(attachmentId)
{
$.ajax({
- url: '/attachments/renderTag',
+ url: '/attachments/renderTag',
type: "GET",
data: {
attachmentId: attachmentId
@@ -25,39 +25,39 @@ function reload(fileSpan) {
function addFile_board(inputEl, file, eagerUpload, id) {
- var attachments_frame = '#attachments_fields' + id;
- if ($(attachments_frame).children().length < 30) {
- deleteallfiles = $(inputEl).data('deleteAllFiles');
- var attachmentId = addFile.nextAttachmentId++;
-
- var fileSpan = $('
', { 'id': 'attachments_' + attachmentId, 'class':'attachment' });
-
- fileSpan.append(
- $('', { 'type': 'text', 'class': 'filename readonly', 'name': 'attachments[' + attachmentId + '][filename]', 'readonly': 'readonly'} ).val(file.name),
- $('', { 'type': 'text', 'class': 'description', 'name': 'attachments[' + attachmentId + '][description]', 'maxlength': 254, 'placeholder': $(inputEl).data('descriptionPlaceholder') } ).toggle(!eagerUpload),
- $(''+$(inputEl).data('fieldIsPublic')+':').attr({ 'class': 'ispublic-label' }) ,
- $('', { 'type': 'checkbox', 'class': 'is_public_checkbox','value':1, 'name': 'attachments[' + attachmentId + '][is_public_checkbox]', checked:'checked' } ).toggle(!eagerUpload),
- $(' ').attr({ 'href': "#", 'class': 'remove-upload' }).click(function(){
- if(confirm($(inputEl).data('areYouSure'))){
- removeFile();
- if(!eagerUpload){
- (function(e){
- reload(e);
- })(fileSpan);
+ var attachments_frame = '#attachments_fields' + id;
+ if ($(attachments_frame).children().length < 30) {
+ deleteallfiles = $(inputEl).data('deleteAllFiles');
+ var attachmentId = addFile.nextAttachmentId++;
+
+ var fileSpan = $('', { 'id': 'attachments_' + attachmentId, 'class':'attachment' });
+
+ fileSpan.append(
+ $('', { 'type': 'text', 'class': 'filename readonly', 'name': 'attachments[' + attachmentId + '][filename]', 'readonly': 'readonly'} ).val(file.name),
+ $('', { 'type': 'text', 'class': 'description', 'name': 'attachments[' + attachmentId + '][description]', 'maxlength': 254, 'placeholder': $(inputEl).data('descriptionPlaceholder') } ).toggle(!eagerUpload),
+ $(''+$(inputEl).data('fieldIsPublic')+':').attr({ 'class': 'ispublic-label' }) ,
+ $('', { 'type': 'checkbox', 'class': 'is_public_checkbox','value':1, 'name': 'attachments[' + attachmentId + '][is_public_checkbox]', checked:'checked' } ).toggle(!eagerUpload),
+ $(' ').attr({ 'href': "#", 'class': 'remove-upload' }).click(function(){
+ if(confirm($(inputEl).data('areYouSure'))){
+ removeFile();
+ if(!eagerUpload){
+ (function(e){
+ reload(e);
+ })(fileSpan);
+ }
}
- }
- }).toggle(!eagerUpload),
- $('', { 'class': 'div_attachments', 'name': 'div_'+'attachments_' + attachmentId} )
- ).appendTo(attachments_frame);
+ }).toggle(!eagerUpload),
+ $('
', { 'class': 'div_attachments', 'name': 'div_'+'attachments_' + attachmentId} )
+ ).appendTo(attachments_frame);
- if(eagerUpload) {
- ajaxUpload(file, attachmentId, fileSpan, inputEl);
+ if(eagerUpload) {
+ ajaxUpload(file, attachmentId, fileSpan, inputEl);
+ }
+ return attachmentId;
}
- return attachmentId;
- }
- return null;
+ return null;
}
function addFile(inputEl, file, eagerUpload) {
@@ -99,132 +99,132 @@ addFile.nextAttachmentId = 1;
function ajaxUpload(file, attachmentId, fileSpan, inputEl) {
- function onLoadstart(e) {
- fileSpan.removeClass('ajax-waiting');
- fileSpan.addClass('ajax-loading');
- $('input:submit', $(this).parents('form')).attr('disabled', 'disabled');
- }
-
- function onProgress(e) {
- if(e.lengthComputable) {
- this.progressbar( 'value', e.loaded * 100 / e.total );
+ function onLoadstart(e) {
+ fileSpan.removeClass('ajax-waiting');
+ fileSpan.addClass('ajax-loading');
+ $('input:submit', $(this).parents('form')).attr('disabled', 'disabled');
}
- }
-
- function actualUpload(file, attachmentId, fileSpan, inputEl) {
-
- ajaxUpload.uploading++;
-
- uploadBlob(file, $(inputEl).data('upload-path'), attachmentId, {
- loadstartEventHandler: onLoadstart.bind(progressSpan),
- progressEventHandler: onProgress.bind(progressSpan)
- })
- .done(function(result) {
- progressSpan.progressbar( 'value', 100 ).remove();
- fileSpan.find('input.description, a').css('display', 'inline-block');
- fileSpan.find('input.is_public_checkbox, a').css('display', 'inline-block');
- })
- .fail(function(result) {
- progressSpan.text(result.statusText);
- if($("#network_issue"))
- {
- $("#network_issue").show();
+
+ function onProgress(e) {
+ if(e.lengthComputable) {
+ this.progressbar( 'value', e.loaded * 100 / e.total );
}
- }).always(function() {
- ajaxUpload.uploading--;
- fileSpan.removeClass('ajax-loading');
- var form = fileSpan.parents('form');
- if (form.queue('upload').length == 0 && ajaxUpload.uploading == 0) {
- $('input:submit', form).removeAttr('disabled');
+ }
+
+ function actualUpload(file, attachmentId, fileSpan, inputEl) {
+
+ ajaxUpload.uploading++;
+
+ uploadBlob(file, $(inputEl).data('upload-path'), attachmentId, {
+ loadstartEventHandler: onLoadstart.bind(progressSpan),
+ progressEventHandler: onProgress.bind(progressSpan)
+ })
+ .done(function(result) {
+ progressSpan.progressbar( 'value', 100 ).remove();
+ fileSpan.find('input.description, a').css('display', 'inline-block');
+ fileSpan.find('input.is_public_checkbox, a').css('display', 'inline-block');
+ })
+ .fail(function(result) {
+ progressSpan.text(result.statusText);
+ if($("#network_issue"))
+ {
+ $("#network_issue").show();
+ }
+ }).always(function() {
+ ajaxUpload.uploading--;
+ fileSpan.removeClass('ajax-loading');
+ var form = fileSpan.parents('form');
+ if (form.queue('upload').length == 0 && ajaxUpload.uploading == 0) {
+ $('input:submit', form).removeAttr('disabled');
+ }
+ form.dequeue('upload');
+ });
+
+ //gcm files count and add delete_all link
+
+ var count=$('#attachments_fields>span').length;
+ $('#upload_file_count').html("
"+count+""+$(inputEl).data('fileCount'));
+ if(count>=1){
+ var add_attachs=$('.add_attachment');
+ var delete_all=$('.remove_all');
+ if(delete_all.length<1){
+ add_attachs.append($("
 ").attr({"href":"javascript:void(0)", 'class': 'remove_all',"onclick": "removeAll()"}));
+ }
}
- form.dequeue('upload');
- });
-
- //gcm files count and add delete_all link
-
- var count=$('#attachments_fields>span').length;
- $('#upload_file_count').html("
"+count+""+$(inputEl).data('fileCount'));
- if(count>=1){
- var add_attachs=$('.add_attachment');
- var delete_all=$('.remove_all');
- if(delete_all.length<1){
- add_attachs.append($("
 ").attr({"href":"javascript:void(0)", 'class': 'remove_all',"onclick": "removeAll()"}));
- }
- }
-
- //gcm
-
- }
-
- var progressSpan = $('
').insertAfter(fileSpan.find('input.filename'));
- progressSpan.progressbar();
- fileSpan.addClass('ajax-waiting');
-
- var maxSyncUpload = $(inputEl).data('max-concurrent-uploads');
-
- if(maxSyncUpload == null || maxSyncUpload <= 0 || ajaxUpload.uploading < maxSyncUpload)
- actualUpload(file, attachmentId, fileSpan, inputEl);
- else
- $(inputEl).parents('form').queue('upload', actualUpload.bind(this, file, attachmentId, fileSpan, inputEl));
+
+ //gcm
+
+ }
+
+ var progressSpan = $('
').insertAfter(fileSpan.find('input.filename'));
+ progressSpan.progressbar();
+ fileSpan.addClass('ajax-waiting');
+
+ var maxSyncUpload = $(inputEl).data('max-concurrent-uploads');
+
+ if(maxSyncUpload == null || maxSyncUpload <= 0 || ajaxUpload.uploading < maxSyncUpload)
+ actualUpload(file, attachmentId, fileSpan, inputEl);
+ else
+ $(inputEl).parents('form').queue('upload', actualUpload.bind(this, file, attachmentId, fileSpan, inputEl));
}
ajaxUpload.uploading = 0;
function removeFile() {
- $(this).parent('span').remove();
- return false;
+ $(this).parent('span').remove();
+ return false;
}
//gcm delete all file
function removeAll(){
- if(confirm(deleteallfiles)){
- $(".remove-upload").removeAttr("data-confirm");
- $(".remove-upload").click();
- }
+ if(confirm(deleteallfiles)){
+ $(".remove-upload").removeAttr("data-confirm");
+ $(".remove-upload").click();
+ }
// return false;
}
//gcm
function uploadBlob(blob, uploadUrl, attachmentId, options) {
- var actualOptions = $.extend({
- loadstartEventHandler: $.noop,
- progressEventHandler: $.noop
- }, options);
- if(uploadUrl.indexOf('?') > 0){
- uploadUrl = uploadUrl + '&attachment_id=' + attachmentId;
- }else{
- uploadUrl = uploadUrl + '?attachment_id=' + attachmentId;
- }
- if (blob instanceof window.File) {
- uploadUrl += '&filename=' + encodeURIComponent(blob.name);
- }
-
- return $.ajax(uploadUrl, {
- type: 'POST',
- contentType: 'application/octet-stream',
- beforeSend: function(jqXhr) {
- jqXhr.setRequestHeader('Accept', 'application/js');
- },
- xhr: function() {
- var xhr = $.ajaxSettings.xhr();
- xhr.upload.onloadstart = actualOptions.loadstartEventHandler;
- xhr.upload.onprogress = actualOptions.progressEventHandler;
- return xhr;
- },
- data: blob,
- cache: false,
- processData: false
- });
+ var actualOptions = $.extend({
+ loadstartEventHandler: $.noop,
+ progressEventHandler: $.noop
+ }, options);
+ if(uploadUrl.indexOf('?') > 0){
+ uploadUrl = uploadUrl + '&attachment_id=' + attachmentId;
+ }else{
+ uploadUrl = uploadUrl + '?attachment_id=' + attachmentId;
+ }
+ if (blob instanceof window.File) {
+ uploadUrl += '&filename=' + encodeURIComponent(blob.name);
+ }
+
+ return $.ajax(uploadUrl, {
+ type: 'POST',
+ contentType: 'application/octet-stream',
+ beforeSend: function(jqXhr) {
+ jqXhr.setRequestHeader('Accept', 'application/js');
+ },
+ xhr: function() {
+ var xhr = $.ajaxSettings.xhr();
+ xhr.upload.onloadstart = actualOptions.loadstartEventHandler;
+ xhr.upload.onprogress = actualOptions.progressEventHandler;
+ return xhr;
+ },
+ data: blob,
+ cache: false,
+ processData: false
+ });
}
function addInputFiles(inputEl) {
- // var clearedFileInput = $(inputEl).clone().val('');
+ // var clearedFileInput = $(inputEl).clone().val('');
if (inputEl.files) {
// upload files using ajax
uploadAndAttachFiles(inputEl.files, inputEl);
- // $(inputEl).remove();
+ // $(inputEl).remove();
} else {
// browser not supporting the file API, upload on form submission
var attachmentId;
@@ -260,18 +260,18 @@ function addInputFiles_board(inputEl, id) {
}
function uploadAndAttachFiles(files, inputEl) {
- var maxFileSize = $(inputEl).data('max-file-size');
- var maxFileSizeExceeded = $(inputEl).data('max-file-size-message');
-
- var sizeExceeded = false;
- $.each(files, function() {
- if (this.size && maxFileSize != null && this.size > parseInt(maxFileSize)) {sizeExceeded=true;}
- });
- if (sizeExceeded) {
- window.alert(maxFileSizeExceeded);
- } else {
- $.each(files, function() {addFile(inputEl, this, true);});
- }
+ var maxFileSize = $(inputEl).data('max-file-size');
+ var maxFileSizeExceeded = $(inputEl).data('max-file-size-message');
+
+ var sizeExceeded = false;
+ $.each(files, function() {
+ if (this.size && maxFileSize != null && this.size > parseInt(maxFileSize)) {sizeExceeded=true;}
+ });
+ if (sizeExceeded) {
+ window.alert(maxFileSizeExceeded);
+ } else {
+ $.each(files, function() {addFile(inputEl, this, true);});
+ }
}
function uploadAndAttachFiles_board(files, inputEl, id) {
@@ -290,37 +290,37 @@ function uploadAndAttachFiles_board(files, inputEl, id) {
}
function handleFileDropEvent(e) {
- $(this).removeClass('fileover');
- blockEventPropagation(e);
+ $(this).removeClass('fileover');
+ blockEventPropagation(e);
- if ($.inArray('Files', e.dataTransfer.types) > -1) {
- uploadAndAttachFiles(e.dataTransfer.files, $('input:file.file_selector'));
- }
+ if ($.inArray('Files', e.dataTransfer.types) > -1) {
+ uploadAndAttachFiles(e.dataTransfer.files, $('input:file.file_selector'));
+ }
}
function dragOverHandler(e) {
- $(this).addClass('fileover');
- blockEventPropagation(e);
+ $(this).addClass('fileover');
+ blockEventPropagation(e);
}
function dragOutHandler(e) {
- $(this).removeClass('fileover');
- blockEventPropagation(e);
+ $(this).removeClass('fileover');
+ blockEventPropagation(e);
}
function setupFileDrop() {
- if (window.File && window.FileList && window.ProgressEvent && window.FormData) {
+ if (window.File && window.FileList && window.ProgressEvent && window.FormData) {
- $.event.fixHooks.drop = { props: [ 'dataTransfer' ] };
+ $.event.fixHooks.drop = { props: [ 'dataTransfer' ] };
- $('form div.box').has('input:file').each(function() {
- $(this).on({
- dragover: dragOverHandler,
- dragleave: dragOutHandler,
- drop: handleFileDropEvent
- });
- });
- }
+ $('form div.box').has('input:file').each(function() {
+ $(this).on({
+ dragover: dragOverHandler,
+ dragleave: dragOutHandler,
+ drop: handleFileDropEvent
+ });
+ });
+ }
}
$(document).ready(setupFileDrop);
From 75643b818120c7e99f345d4426a15d894a755b87 Mon Sep 17 00:00:00 2001
From: lizanle <491823689@qq.com>
Date: Fri, 15 May 2015 10:17:47 +0800
Subject: [PATCH 6/9] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E4=B8=80=E4=B8=AA?=
=?UTF-8?q?=E6=9F=A5=E8=AF=A2user=E7=9A=84bug?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
app/api/mobile/entities/user.rb | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/app/api/mobile/entities/user.rb b/app/api/mobile/entities/user.rb
index 6b0064036..aee687dc9 100644
--- a/app/api/mobile/entities/user.rb
+++ b/app/api/mobile/entities/user.rb
@@ -9,7 +9,7 @@ module Mobile
u[f]
elsif u.is_a?(::User)
if u.respond_to?(f)
- u.send(f)
+ u.send(f) unless u.user_extensions.nil?
else
case f
when :img_url
@@ -17,9 +17,9 @@ module Mobile
when :gender
u.nil? || u.user_extensions.nil? || u.user_extensions.gender.nil? ? 0 : u.user_extensions.gender
when :work_unit
- get_user_work_unit u
+ get_user_work_unit u unless u.user_extensions.nil?
when :location
- get_user_location u
+ get_user_location u unless u.user_extensions.nil?
when :brief_introduction
u.nil? || u.user_extensions.nil? ? "" : u.user_extensions.brief_introduction
end
From 2fb587105825eeeb4389599dcf1c0fe9a3bc7c9e Mon Sep 17 00:00:00 2001
From: huang
Date: Fri, 15 May 2015 11:26:50 +0800
Subject: [PATCH 7/9] =?UTF-8?q?=E7=BC=BA=E9=99=B7=E6=98=BE=E7=A4=BA?=
=?UTF-8?q?=E6=96=B0=E7=95=8C=E9=9D=A2?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
app/views/issues/show.html.erb | 83 ++++++++++++++++------------------
public/stylesheets/project.css | 11 +++--
2 files changed, 45 insertions(+), 49 deletions(-)
diff --git a/app/views/issues/show.html.erb b/app/views/issues/show.html.erb
index 8fb63bd10..1d1802172 100644
--- a/app/views/issues/show.html.erb
+++ b/app/views/issues/show.html.erb
@@ -46,59 +46,52 @@
<%= issue_fields_rows do |rows| %>
-
-
- * 状态 :
-
- <%= @issue.status.name %>
-
-
- * 优先级 :
- <%= @issue.priority.name %>
-
-
+
+
+ 优先级 :
<%= @issue.priority.name %>
+
+
+ <% unless @issue.disabled_core_fields.include?('done_ratio') %>
+ % 完成 :
<%= @issue.done_ratio %>%
+
<% end %>
-
-
-
- <% unless @issue.disabled_core_fields.include?('start_date') %>
- 开始日期 :
+
+
- <%= format_date(@issue.start_date) %>
- <% end %>
-
- <% unless @issue.disabled_core_fields.include?('due_date') %>
- 计划完成日期 :
- <%= format_date(@issue.due_date) %>
-
+
+
+ <% unless @issue.disabled_core_fields.include?('due_date') %>
+ 计划完成 :
<%= format_date(@issue.due_date)? format_date(@issue.due_date) : "--" %>
+
<% end %>
-
-
- <% end %>
+
+ <% unless @issue.disabled_core_fields.include?('fixed_version_id') %>
+ 目标版本 :
<%= (@issue.fixed_version ? link_to_version(@issue.fixed_version, :class => "pro_info_p") : "--") %>
+
+ <% end %>
+
+
+ <% end %>
<%#= render_custom_fields_rows(@issue) %>
<%#= call_hook(:view_issues_show_details_bottom, :issue => @issue) %>
diff --git a/public/stylesheets/project.css b/public/stylesheets/project.css
index 3b04e23bf..74d7c58b3 100644
--- a/public/stylesheets/project.css
+++ b/public/stylesheets/project.css
@@ -87,11 +87,11 @@ a.pro_mes_w{ height:20px; float:left;display:block; color:#999999;}
.pro_page_top{ font-size:14px; border-bottom:2px solid #64bdd9; margin-bottom:10px; padding-bottom:5px;}
.pro_page_tit{color:#3e4040; font-weight:bold;width:480px; float:left; font-size:14px; margin-bottom:5px;}
.pro_pic_box{ margin-left:60px; }
-.pro_pic{ width:100px; height:75px;line-height:73px;border:2px solid #CCC; margin:10px 0; text-align: center;}
-.pro_info_box{ margin-left:60px; background:#f0fbff; height:80px; padding:10px 0;}
+.pro_pic{ width:100px; border:2px solid #CCC; margin:10px 0;}
+.pro_info_box{ margin-left:60px; border:1px dashed #CCC; height:45px; padding:10px 0;}
.pro_info_box ul{}
-.pro_info_box ul li{ margin-bottom:10px;}
-.pro_info_p{ color:#0781b4 !important; float:left; width:160px; overflow:hidden; white-space: nowrap; text-overflow:ellipsis;padding-top:2.5px;}
+.pro_info_box ul li{ height:24px;}
+.pro_info_p{color:#0781b4 !important; float:left; width:80px; overflow:hidden; white-space: nowrap; text-overflow:ellipsis; }
.edit_pro_box{overflow:hidden;display:none; margin-bottom:30px; border-bottom:1px dashed #CCC; padding-bottom:10px;}
/****翻页***/
ul.wlist{ float:right; border-bottom:none; height:30px; margin-top:20px; }
@@ -354,6 +354,9 @@ a:hover.st_add{ color:#ff8e15;}
.newpro_box textarea{ height:150px; float:left; margin-bottom:10px;}
.newpro_box select{ height:29px; float:left; margin-bottom:10px;}
/*.label{ width:80px; text-align:right; font-size:14 background-image: url(../images/true.png); }*/
+.label02{ width:110px; text-align:right; font-size:14px; display:block; float:left;}
+.label03{ width:70px; text-align:right; display:block; float:left;}
+.collapsible{ border-left:none;border-right:none;border-bottom:none; border-top:1px solid #e4e4e4; padding-top:10px; }
.icon-reload { background-image: url(../images/reload.png); }
.icon {
background-position: 0% 50%;
From 68cf5fa55e6cae945927564a3d97ea8c9c58cb6b Mon Sep 17 00:00:00 2001
From: yutao <283765470@qq.com>
Date: Fri, 15 May 2015 11:45:15 +0800
Subject: [PATCH 8/9] =?UTF-8?q?=E4=BF=AE=E5=A4=8D:=E5=BD=931=E4=B8=AA?=
=?UTF-8?q?=E9=A1=B5=E9=9D=A2=E5=AD=98=E5=9C=A8=E5=A4=9A=E4=B8=AA=E4=B8=8A?=
=?UTF-8?q?=E4=BC=A0=E6=8E=A7=E4=BB=B6=E6=97=B6=E7=9A=84=E5=90=84=E7=A7=8D?=
=?UTF-8?q?bug?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
app/views/attachments/_form_project.html.erb | 7 +-
app/views/attachments/destroy.js.erb | 32 ++++++--
public/javascripts/attachments.js | 82 +++++++++++++++++---
3 files changed, 100 insertions(+), 21 deletions(-)
diff --git a/app/views/attachments/_form_project.html.erb b/app/views/attachments/_form_project.html.erb
index 0478ba613..998766b27 100644
--- a/app/views/attachments/_form_project.html.erb
+++ b/app/views/attachments/_form_project.html.erb
@@ -24,7 +24,7 @@
<%= l(:field_is_public)%>:
<%= check_box_tag("attachments[p#{i}][is_public_checkbox]", attachment.is_public,attachment.is_public == 1 ? true : false, :class => 'is_public_checkbox')%>
- <%= link_to(' '.html_safe, attachment_path(attachment, :attachment_id => "p#{i}", :format => 'js'), :method => 'delete', :remote => true, :class => 'remove-upload') %>
+ <%= link_to(' '.html_safe, attachment_path(attachment, :attachment_id => "p#{i}", :format => 'js'), 'data-containerid'=>"#{container.id}",:method => 'delete', :remote => true, :class => 'remove-upload') %>
<%#= render :partial => 'tags/tag', :locals => {:obj => attachment, :object_flag => "6"} %>
<%= hidden_field_tag "attachments[p#{i}][token]", "#{attachment.token}" %>
@@ -41,7 +41,7 @@
// file.click();
// }
-
+
<%#= button_tag "浏览", :type=>"button", :onclick=>"CompatibleSend();" %>
<%= button_tag "文件浏览", :type=>"button", :onclick=>"_file#{container.id}.click()", :class =>"sub_btn",:style => ie8? ? 'display:none' : '' %>
@@ -60,7 +60,8 @@
:field_is_public => l(:field_is_public),
:are_you_sure => l(:text_are_you_sure),
:file_count => l(:label_file_count),
- :delete_all_files => l(:text_are_you_sure_all)
+ :delete_all_files => l(:text_are_you_sure_all),
+ :containerid => "#{container.id}"
} %>
<%= l(:label_no_file_uploaded)%>
(<%= l(:label_max_size) %>: <%= number_to_human_size(Setting.attachment_max_size.to_i.kilobytes) %>)
diff --git a/app/views/attachments/destroy.js.erb b/app/views/attachments/destroy.js.erb
index d2a3a11a1..0b6cee0df 100644
--- a/app/views/attachments/destroy.js.erb
+++ b/app/views/attachments/destroy.js.erb
@@ -1,8 +1,26 @@
-$('#attachments_<%= j params[:attachment_id] %>').remove();
-var count=$('#attachments_fields>span').length;
-if(count<=0){
- $("#upload_file_count").text(<%= l(:label_no_file_uploaded)%>);
- $(".remove_all").remove();
+var attachment_html_obj = $('#attachments_<%= j params[:attachment_id] %>');
+//modify by yutao 2015-5-14 当1个页面存在多个上传控件时此块代码存在bug 故改之 start
+var containerid=$('.remove-upload',attachment_html_obj).data('containerid');
+if(containerid==undefined){
+ $('#attachments_<%= j params[:attachment_id] %>').remove();
+ var count=$('#attachments_fields>span').length;
+ if(count<=0){
+ $("#upload_file_count").text('<%= l(:label_no_file_uploaded)%>');
+ $(".remove_all").remove();
+ }else{
+ $("#upload_file_count").html(""+count+""+"个文件"+"已上传");
+ }
}else{
- $("#upload_file_count").html("已上传"+""+count+""+"个文件");
-}
\ No newline at end of file
+ $('#attachments_<%= j params[:attachment_id] %>').remove();
+ var count=$('#attachments_fields'+containerid+'>span').length;
+ if(count<=0){
+ $('#upload_file_count'+containerid).text('<%= l(:label_no_file_uploaded)%>');
+ var remove_all_html_obj = $(".remove_all").filter(function(index){
+ return $(this).data('containerid')==containerid;
+ });
+ remove_all_html_obj.remove();
+ }else{
+ $('#upload_file_count'+containerid).html(""+count+""+"个文件"+"已上传");
+ }
+}
+//modify by yutao 2015-5-14 当1个页面存在多个上传控件时此块代码存在bug 故改之 end
\ No newline at end of file
diff --git a/public/javascripts/attachments.js b/public/javascripts/attachments.js
index 01e587e97..3df755a7f 100644
--- a/public/javascripts/attachments.js
+++ b/public/javascripts/attachments.js
@@ -37,7 +37,7 @@ function addFile_board(inputEl, file, eagerUpload, id) {
$('', { 'type': 'text', 'class': 'description', 'name': 'attachments[' + attachmentId + '][description]', 'maxlength': 254, 'placeholder': $(inputEl).data('descriptionPlaceholder') } ).toggle(!eagerUpload),
$(''+$(inputEl).data('fieldIsPublic')+':').attr({ 'class': 'ispublic-label' }) ,
$('', { 'type': 'checkbox', 'class': 'is_public_checkbox','value':1, 'name': 'attachments[' + attachmentId + '][is_public_checkbox]', checked:'checked' } ).toggle(!eagerUpload),
- $(' ').attr({ 'href': "#", 'class': 'remove-upload' }).click(function(){
+ $(' ').attr({ 'href': "#", 'class': 'remove-upload', 'data-containerid':id }).click(function(){
if(confirm($(inputEl).data('areYouSure'))){
removeFile();
if(!eagerUpload){
@@ -142,14 +142,38 @@ function ajaxUpload(file, attachmentId, fileSpan, inputEl) {
//gcm files count and add delete_all link
- var count=$('#attachments_fields>span').length;
- $('#upload_file_count').html(""+count+""+$(inputEl).data('fileCount'));
- if(count>=1){
- var add_attachs=$('.add_attachment');
- var delete_all=$('.remove_all');
- if(delete_all.length<1){
- add_attachs.append($(" ").attr({"href":"javascript:void(0)", 'class': 'remove_all',"onclick": "removeAll()"}));
+ //modify by yutao 2015-5-14 1ҳڶϴؼʱ˿bug ʸ֮ start
+ var containerid=$(inputEl).data('containerid');
+ if(containerid==undefined){
+ var count=$('#attachments_fields>span').length;
+ $('#upload_file_count').html(""+count+""+$(inputEl).data('fileCount'));
+ if(count>=1){
+ var add_attachs=$('.add_attachment');
+ var delete_all=$('.remove_all');
+ if(delete_all.length<1){
+ add_attachs.append($(" ").attr({"href":"javascript:void(0)", 'class': 'remove_all',"onclick": "removeAll()"}));
+ }
}
+ }else{
+ var count=$('#attachments_fields'+containerid+'>span').length;
+ $('#upload_file_count'+containerid).html(""+count+""+$(inputEl).data('fileCount'));
+ if(count>=1){
+ var add_attachs=$('.add_attachment').filter(function(index){
+ return $(this).data('containerid')==containerid;
+ });
+ var delete_all=$('.remove_all').filter(function(index){
+ return $(this).data('containerid')==containerid;
+ });
+ if(delete_all.length<1){
+ add_attachs.append($(" ").attr({
+ "href":"javascript:void(0)",
+ 'class': 'remove_all',
+ 'data-containerid': containerid,
+ "onclick": "removeAll('"+containerid+"')"
+ }));
+ }
+ }
+ //modify by yutao 2015-5-14 1ҳڶϴؼʱ˿bug ʸ֮ end
}
//gcm
@@ -176,13 +200,23 @@ function removeFile() {
}
//gcm delete all file
-function removeAll(){
+//modify by yutao 2015-5-14 1ҳڶϴؼʱ˿bug ʸ֮ start
+function removeAll(containerid){
if(confirm(deleteallfiles)){
- $(".remove-upload").removeAttr("data-confirm");
- $(".remove-upload").click();
+ if(containerid==undefined){
+ $(".remove-upload").removeAttr("data-confirm");
+ $(".remove-upload").click();
+ }else{
+ var arr = $(".remove-upload").filter(function(){
+ return $(this).data('containerid')==containerid;
+ });
+ arr.removeAttr("data-confirm");
+ arr.click();
+ }
}
// return false;
}
+//modify by yutao 2015-5-14 1ҳڶϴؼʱ˿bug ʸ֮ end
//gcm
function uploadBlob(blob, uploadUrl, attachmentId, options) {
@@ -324,3 +358,29 @@ function setupFileDrop() {
}
$(document).ready(setupFileDrop);
+$(function(){
+ $(".file_selector").each(function() {
+ deleteallfiles = $(this).data('deleteAllFiles');
+ var containerid = $(this).data('containerid');
+ if (containerid == undefined)containerid = '';
+ var count = $('#attachments_fields' + containerid + '>span').length;
+ if (count >= 1) {
+ $('#upload_file_count' + containerid).html("" + count + "" + $(this).data('fileCount'));
+ var add_attachs = $('.add_attachment').filter(function (index) {
+ return $(this).data('containerid') == containerid;
+ });
+ var delete_all = $('.remove_all').filter(function (index) {
+ return $(this).data('containerid') == containerid;
+ });
+ if (delete_all.length < 1) {
+ add_attachs.append($(" ").attr({
+ "href": "javascript:void(0)",
+ 'class': 'remove_all',
+ 'data-containerid': containerid,
+ "onclick": "removeAll('" + containerid + "')"
+ }));
+ }
+
+ }
+ });
+});
\ No newline at end of file
From a4cf7bcaad724e9930ee8ec4cc3b92b2e14edcd7 Mon Sep 17 00:00:00 2001
From: yutao <283765470@qq.com>
Date: Fri, 15 May 2015 12:17:47 +0800
Subject: [PATCH 9/9] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E9=97=AE=E9=A2=98?=
=?UTF-8?q?=E8=B7=9F=E8=B8=AA=E5=88=97=E8=A1=A8=E7=BF=BB=E9=A1=B5=E4=B8=BA?=
=?UTF-8?q?=E5=B1=80=E9=83=A8=E5=88=B7=E6=96=B0?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
app/views/issues/_list.html.erb | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/app/views/issues/_list.html.erb b/app/views/issues/_list.html.erb
index 30bd06b9a..fa34ecb3b 100644
--- a/app/views/issues/_list.html.erb
+++ b/app/views/issues/_list.html.erb
@@ -31,5 +31,5 @@
<% end -%>
- <%= pagination_links_full issue_pages, issue_count, :per_page_links => false, :remote => false, :flag => true %>
+ <%= pagination_links_full issue_pages, issue_count, :per_page_links => false, :remote => true, :flag => true %>
\ No newline at end of file