From 3f55e78f4914b1951e2aea95a36bfd74dd4c93b5 Mon Sep 17 00:00:00 2001 From: xianbo Date: Thu, 20 Mar 2014 10:10:22 +0800 Subject: [PATCH 1/5] add diff url in navigation --- app/helpers/application_helper.rb | 16 +++++------ app/views/layouts/_base_header.html.erb | 8 +++--- lib/redmine.rb | 36 ++++++++++++------------- 3 files changed, 30 insertions(+), 30 deletions(-) diff --git a/app/helpers/application_helper.rb b/app/helpers/application_helper.rb index bbd2ea015..7863ead1e 100644 --- a/app/helpers/application_helper.rb +++ b/app/helpers/application_helper.rb @@ -65,7 +65,7 @@ module ApplicationHelper if user.is_a?(User) name = h(user.name(options[:format])) if user.active? || (User.current.admin? && user.logged?) - link_to name, user_path(user), :class => user.css_classes + link_to name, {:controller=> 'users', :action => 'show', id: user.id, host: Setting.forge_domain}, :class => user.css_classes else name end @@ -1500,16 +1500,16 @@ module ApplicationHelper end def render_dynamic_nav - home_link = link_to l(:field_homepage), home_path - course_all_course_link = link_to l(:label_course_all), {:controller => 'projects', :action => 'course', :project_type => 1} + home_link = link_to l(:field_homepage), "http://"+Setting.forge_domain+":3000" + course_all_course_link = link_to l(:label_course_all), {:controller => 'projects', :action => 'course', :project_type => 1,} course_teacher_all_link = link_to l(:label_teacher_all), {:controller => 'users', :action => 'index', :role => 'teacher'} - courses_link = link_to l(:label_course_practice), {:controller => 'projects', :action => 'course', :project_type => 1} - projects_link = link_to l(:label_project_deposit), {:controller => 'projects', :action => 'index', :project_type => 0} + courses_link = link_to l(:label_course_practice), {:host=>Setting.course_domain} + projects_link = link_to l(:label_project_deposit), {:controller => 'projects', :action => 'index', :project_type => 0, :host => Setting.project_domain} users_link = link_to l(:label_software_user), {:controller => 'users', :action => 'index'} - contest_link = link_to l(:label_contest_innovate), {:controller => 'bids', :action => 'contest', :project_type => 1} + contest_link = link_to l(:label_contest_innovate), {:controller => 'bids', :action => 'contest', :project_type => 1, :host=>Setting.contest_domain} bids_link = link_to l(:label_requirement_enterprise), {:controller => 'bids', :action => 'index'} - forum_link = link_to l(:label_project_module_forums), forums_path - stores_link = link_to l(:label_stores_index), stores_path + forum_link = link_to l(:label_project_module_forums), {:controller => "forums", :action => "index", :host => Setting.forge_domain} + stores_link = link_to l(:label_stores_index), {:controller => 'stores', :action=> 'index', :host => Setting.forge_domain} #@nav_dispaly_project_label nav_list = Array.new diff --git a/app/views/layouts/_base_header.html.erb b/app/views/layouts/_base_header.html.erb index d8287a59d..2cb5fafa0 100644 --- a/app/views/layouts/_base_header.html.erb +++ b/app/views/layouts/_base_header.html.erb @@ -12,14 +12,14 @@ <%=link_to_user(User.current)%>
  • - <%=link_to l(:label_my_message)+'('+User.current.count_new_jour.to_s+')', { :controller => 'users', :action => 'user_newfeedback', id: User.current.id }, {:class => 'my-message'} if User.current.logged?%> + <%=link_to l(:label_my_message)+'('+User.current.count_new_jour.to_s+')', { :controller => 'users', :action => 'user_newfeedback', id: User.current.id, host: Setting.forge_domain }, {:class => 'my-message'} if User.current.logged?%>
  • diff --git a/lib/redmine.rb b/lib/redmine.rb index da4c436ec..7f437d5cb 100644 --- a/lib/redmine.rb +++ b/lib/redmine.rb @@ -203,7 +203,7 @@ Redmine::AccessControl.map do |map| end #by young Redmine::MenuManager.map :top_menu do |menu| - menu.push :home, :home_path + menu.push :home, {:hsot => Setting.forge_domain} menu.push :course_practice, {:controller => 'projects', :action => 'course', :project_type => 1} menu.push :project_deposit, { :controller => 'projects', :action => 'index', :project_type => 0}, :caption => :label_project_deposit menu.push :software_user, {:controller => 'users', :action => 'index'} @@ -264,15 +264,15 @@ end # end Redmine::MenuManager.map :account_menu do |menu| - menu.push :login, :signin_path, :if => Proc.new { !User.current.logged? } - menu.push :register, :register_path, :if => Proc.new { !User.current.logged? && Setting.self_registration? } + menu.push :login, {:controller => 'account', :action => 'login', :host => Setting.forge_domain}, :if => Proc.new { !User.current.logged? } + menu.push :register, {:controller => 'account', :action => 'register', :host => Setting.forge_domain}, :if => Proc.new { !User.current.logged? && Setting.self_registration? } # menu.push :my_account, { :controller => 'my', :action => 'account' }, :if => Proc.new { User.current.logged? } - menu.push :logout, :signout_path, :html => {:method => 'post'}, :if => Proc.new { User.current.logged? } + menu.push :logout, {:controller => 'account', :action => 'logout', :host => Setting.forge_domain}, :html => {:method => 'post'}, :if => Proc.new { User.current.logged? } end ########fq Redmine::MenuManager.map :bid_menu do |menu| menu.push :respond, { :controller => 'bids', :action => 'show' }, :caption => :label_user_response - menu.push :project, { :controller => 'bids', :action => 'show_project' }, :caption => :label_bidding_project + menu.push :project, { :controller => 'bids', :action => 'show_project', :host => Setting.project_domain }, :caption => :label_bidding_project # menu.push :result, { :controller => 'bids', :action => 'show_results' }, # :caption => :label_bidding_results,:if => Proc.new{ |p| User.current.id == p } end @@ -341,29 +341,29 @@ Redmine::MenuManager.map :course_menu do |menu| end Redmine::MenuManager.map :user_menu do |menu| - menu.push :activity, {:controller => 'users', :action => 'show' } - menu.push :user_course, {:controller => 'users', :action => 'user_courses'} + menu.push :activity, {:controller => 'users', :action => 'show', :host => Setting.forge_domain } + menu.push :user_course, {:controller => 'users', :action => 'user_courses', :host => Setting.course_domain} #menu.push :user_homework, {:controller => 'users', :action => 'user_homeworks'} by huang - menu.push :user_project, {:controller => 'users', :action => 'user_projects'} + menu.push :user_project, {:controller => 'users', :action => 'user_projects', :host => Setting.project_domain} # menu.push :requirement_focus, {:controller => 'users', :action => 'watch_bids'} by huang - menu.push :user_newfeedback, {:controller => 'users', :action => 'user_newfeedback'} + menu.push :user_newfeedback, {:controller => 'users', :action => 'user_newfeedback', :host => Setting.forge_domain} end Redmine::MenuManager.map :user_enterprise_menu do |menu| - menu.push :activity, {:controller => 'users', :action => 'show' } + menu.push :activity, {:controller => 'users', :action => 'show', :host => Setting.forge_domain } - menu.push :user_project, {:controller => 'users', :action => 'user_projects'} + menu.push :user_project, {:controller => 'users', :action => 'user_projects', :host => Setting.project_domain} - menu.push :requirement_focus, {:controller => 'users', :action => 'watch_bids'} - menu.push :user_newfeedback, {:controller => 'users', :action => 'user_newfeedback'} + menu.push :requirement_focus, {:controller => 'users', :action => 'watch_bids', :host => Setting.forge_domain} + menu.push :user_newfeedback, {:controller => 'users', :action => 'user_newfeedback', :host => Setting.forge_domain} end Redmine::MenuManager.map :user_menu_self do |menu| - menu.push :activity, {:controller => 'users', :action => 'show' } - menu.push :user_information, {:controller => 'users', :action => 'info'} - menu.push :user_project, {:controller => 'users', :action => 'user_projects'} - menu.push :requirement_focus, {:controller => 'users', :action => 'watch_bids'} - menu.push :user_newfeedback, {:controller => 'users', :action => 'user_newfeedback'} + menu.push :activity, {:controller => 'users', :action => 'show', :host => Setting.forge_domain } + menu.push :user_information, {:controller => 'users', :action => 'info', :host => Setting.forge_domain} + menu.push :user_project, {:controller => 'users', :action => 'user_projects', :host => Setting.forge_domain} + menu.push :requirement_focus, {:controller => 'users', :action => 'watch_bids', :host => Setting.forge_domain} + menu.push :user_newfeedback, {:controller => 'users', :action => 'user_newfeedback', :host => Setting.forge_domain} end #end From a8fbed4502a89dba1f3b23a41eba093797072d12 Mon Sep 17 00:00:00 2001 From: xianbo Date: Thu, 20 Mar 2014 10:11:12 +0800 Subject: [PATCH 2/5] add welcome page in diff url --- app/views/welcome/index.html.erb | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/app/views/welcome/index.html.erb b/app/views/welcome/index.html.erb index 8f92a0e28..b3d057c54 100644 --- a/app/views/welcome/index.html.erb +++ b/app/views/welcome/index.html.erb @@ -157,7 +157,7 @@

    热门项目

    - <%= link_to "更多>>", { :controller => 'projects', :action => 'index', :project_type => 0}, :target => "_blank" %> + <%= link_to "更多>>", { :controller => 'projects', :action => 'index', :project_type => 0, :host => Setting.project_domain}, :target => "_blank" %>
      <% find_all_hot_project.map do |project| break if(project == find_all_hot_project[15]) %> @@ -167,7 +167,7 @@

    - <%= link_to( project.name, project_path(project.id), :class => "d-g-blue d-p-project-name", :title => "#{project.name}", :target => "_blank" )%> + <%= link_to( project.name, :controller => 'projects', :action => 'show', :host=> Setting.project_domain, :id => project.id, :class => "d-g-blue d-p-project-name", :title => "#{project.name}", :target => "_blank" )%> <%= content_tag "span", show_grade(project), :style => "cursor: pointer; display: inline-block; float: right; color: #ec6300; ", :title => "项目得分,综合考虑了项目的各项活动,反映了该项目的活跃程度", @@ -186,7 +186,7 @@

    热门课程

    - <%= link_to "更多>>", {:controller => 'projects', :action => 'course', :project_type => 1, :project_sort_type => 1}, :target => "_blank" %> + <%= link_to "更多>>", {:controller => 'projects', :action => 'course', :project_type => 1, :project_sort_type => 1, :host => Setting.course_domain}, :target => "_blank" %>
      <% find_all_hot_course.map do |project| break if(project == find_all_hot_course[5]) %> @@ -200,7 +200,7 @@

    - <%= link_to( project.name, project_path(project.id), :class => "d-g-blue d-p-project-name",:title => "#{project.name}", :target => "_blank" )%> + <%= link_to( project.name, :controller => 'projects', :action => 'show', :id => project.id, :host => Setting.course_domain, :class => "d-g-blue d-p-project-name",:title => "#{project.name}", :target => "_blank" )%> 学生人数:<%= link_to "#{studentCount(project)}", project_member_path(project, :role => 2) ,:course =>'1', :target => "_blank" %>

    @@ -216,7 +216,7 @@

    热门竞赛

    - <%= link_to "更多>>", {:controller => 'bids', :action => 'contest', :project_type => 1}, :target => "_blank" %> + <%= link_to "更多>>", {:controller => 'bids', :action => 'contest', :project_type => 1, :host => Setting.contest_domain}, :target => "_blank" %>
      <% find_all_hot_contest.map do |contest| break if(contest == find_all_hot_contest[5]) %> From 6877ff7e8d53369534044a480bb46244753679e5 Mon Sep 17 00:00:00 2001 From: yanxd Date: Thu, 20 Mar 2014 14:17:48 +0800 Subject: [PATCH 3/5] =?UTF-8?q?=E8=A7=A3=E5=86=B3=E8=AE=BE=E7=BD=AE?= =?UTF-8?q?=E8=B7=B3=E8=BD=AC404.bug?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/controllers/projects_controller.rb | 21 ++++++++++++++------- app/models/project.rb | 2 ++ 2 files changed, 16 insertions(+), 7 deletions(-) diff --git a/app/controllers/projects_controller.rb b/app/controllers/projects_controller.rb index 9a9518eb3..0c98b804e 100644 --- a/app/controllers/projects_controller.rb +++ b/app/controllers/projects_controller.rb @@ -16,7 +16,8 @@ # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. class ProjectsController < ApplicationController # if @project.project_type == 1 - layout 'base_projects'# by young + # layout 'base_projects'# by young + layout :select_project_layout menu_item :overview menu_item :roadmap, :only => :roadmap menu_item :settings, :only => :settings @@ -614,12 +615,12 @@ class ProjectsController < ApplicationController #Added by young # @course_tag = params[:course] # if @course_tag == '1' - if @project.project_type == 1 - @course = Course.find_by_extra(@project.identifier) - render :layout => 'base_courses' - else - render :layout => 'base_projects' - end + @course = Course.find_by_extra(@project.identifier) + # if @project.project_type == 1 + # render :layout => 'base_courses' + # else + # render :layout => 'base_projects' + # end #Ended by young end @@ -837,6 +838,12 @@ class ProjectsController < ApplicationController private + def select_project_layout + project = Project.find_by_id(params[:id]) + project ||= @project + (project.project_type == Project::ProjectType_project) ? 'base_projects' : 'base_courses' + end + # Validates parent_id param according to user's permissions # TODO: move it to Project model in a validation that depends on User.current def validate_parent_id diff --git a/app/models/project.rb b/app/models/project.rb index 3205db8fa..3f91d8c2f 100644 --- a/app/models/project.rb +++ b/app/models/project.rb @@ -17,6 +17,8 @@ class Project < ActiveRecord::Base include Redmine::SafeAttributes + ProjectType_project = 0 + ProjectType_course = 1 # Project statuses STATUS_ACTIVE = 1 From a8ab8fc45d2f3468917d0384a2214551c5df96dd Mon Sep 17 00:00:00 2001 From: yanxd Date: Thu, 20 Mar 2014 15:13:25 +0800 Subject: [PATCH 4/5] projects list course timeout method --- app/views/projects/_course.html.erb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/views/projects/_course.html.erb b/app/views/projects/_course.html.erb index d963dc1b9..2ea16a3ce 100644 --- a/app/views/projects/_course.html.erb +++ b/app/views/projects/_course.html.erb @@ -47,7 +47,7 @@

      -<% if(course_timeout? @project) %> +<% if(course_endTime_timeout? @project) %> 课程学期已结束 From e97caddbdbc2c73238030d7c4818bad8782cd06f Mon Sep 17 00:00:00 2001 From: yanxd Date: Thu, 20 Mar 2014 15:28:36 +0800 Subject: [PATCH 5/5] =?UTF-8?q?=E5=8F=88=E4=B8=80=E4=B8=AAcourse=20timeout?= =?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/helpers/welcome_helper.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/helpers/welcome_helper.rb b/app/helpers/welcome_helper.rb index f548a40f5..a446631d7 100644 --- a/app/helpers/welcome_helper.rb +++ b/app/helpers/welcome_helper.rb @@ -24,7 +24,7 @@ module WelcomeHelper def welcome_join_in_course(project, user) if(user.logged? && - !(course_timeout? project) && + !(course_endTime_timeout? project) && (project.course_extra.teacher.id != user.id) ) join_in_course(project, user)