首页,页脚,migrate的整理,个人页面课程tab的删除,登录语言文件的添加,导航栏的修改

president
yanxd 11 years ago
parent 4ed8e1defa
commit 85c99d6abe

@ -51,3 +51,7 @@ app\controller\welcome_controller.rb
user_scores表结构有问题需要运行 user_scores表结构有问题需要运行
bundle exec rake db:migrate:down VERSION=20140410021724 bundle exec rake db:migrate:down VERSION=20140410021724
bundle exec rake db:migrate:up VERSION=20140410021724 bundle exec rake db:migrate:up VERSION=20140410021724
================================================================================
0626新坑 journal_replies 无法删除问题
journal_replies表没有主键在对User调用destroy方法时候rails默认调用查找id删除的方法journal_replies没有id字段导致删除失败

@ -893,8 +893,9 @@ class BidsController < ApplicationController
def memberAccess def memberAccess
# 是课程,则判断当前用户是否参加了课程 # 是课程,则判断当前用户是否参加了课程
return true unless @bid.reward_type.eql?(Bid::Homework)
return true if current_user.admin? return true if current_user.admin?
return 0 if @bid.courses.first.project_type == Project::ProjectType_project return 0 if @bid.courses.first.try(:project_type) == Project::ProjectType_project
currentUser = User.current currentUser = User.current
render_403 unless currentUser.member_of?(@bid.courses.first) render_403 unless currentUser.member_of?(@bid.courses.first)
end end

@ -98,7 +98,7 @@ class User < Principal
has_many :softapplications, :foreign_key => 'user_id', :dependent => :destroy has_many :softapplications, :foreign_key => 'user_id', :dependent => :destroy
has_many :journals_for_messages, :as => :jour, :dependent => :destroy has_many :journals_for_messages, :as => :jour, :dependent => :destroy
has_many :new_jours, :as => :jour, :class_name => 'JournalsForMessage', :conditions => "status=1" has_many :new_jours, :as => :jour, :class_name => 'JournalsForMessage', :conditions => "status=1"
has_many :journal_replies, :dependent => :destroy has_many :journal_replies
has_many :activities, :dependent => :destroy has_many :activities, :dependent => :destroy
has_many :students_for_courses has_many :students_for_courses
has_many :courses, :through => :students_for_courses, :source => :project has_many :courses, :through => :students_for_courses, :source => :project
@ -208,62 +208,13 @@ class User < Principal
# ====================================================================== # ======================================================================
# 集中处理 User 扩展表为空的问题
# 合并 user_score 属性
validate :valid_user_extensions
after_save :save_user_extensions
def extensions def extensions
self.user_extensions ||= UserExtensions.new self.user_extensions ||= self.build_user_extensions
end end
def user_score_attr def user_score_attr
self.user_score ||= UserScore.new self.user_score ||= self.build_user_score
end
alias_method :ori_respond_to?, :respond_to?
def respond_to?(m, include_private = false)
flag = false
flag = ori_respond_to? m.to_sym unless flag
flag = UserExtensions.new.respond_to? m.to_sym unless flag
flag = UserScore.new.respond_to? m.to_sym unless flag
flag
end
def method_missing m, *args, &block
if extensions.respond_to? m.to_sym
self.class.send(:define_method, "_meta_#{m}".to_sym) do |*args, &block|
self.extensions.__send__ m.to_sym, *args
end
__send__ "_meta_#{m}".to_sym, *args, &block
elsif user_score_attr.respond_to? m.to_sym
self.class.send(:define_method, "_meta_#{m}".to_sym) do |*args, &block|
self.user_score_attr.__send__ m.to_sym, *args
end
__send__ "_meta_#{m}".to_sym, *args, &block
else
super
end
end
def valid_user_extensions
if !self.extensions.valid?
self.extensions.errors.messages.each do |key, values|
values.each do |value|
self.errors.add key, value
end
end
end
end
def save_user_extensions
self.extensions.save
self.user_score_attr.save
end end
# 集中处理 User 扩展表为空的问题 < end
# ====================================================================== # ======================================================================
#选择项目成员时显示的用户信息文字 #选择项目成员时显示的用户信息文字

@ -5,24 +5,11 @@
<div class="base_footer"> <div class="base_footer">
<div align="center"> <div align="center">
<!--gcm-->
<p> <p>
<span><%=l(:label_organizers)%></span> <span><%=l(:label_organizers)%></span>
<span class="footer_text_link"><%= link_to l(:label_organizers_information),"http://www.nudt.edu.cn/ArticleShow.asp?ID=47",:target=>"_blank"%></span> <span class="footer_text_link"><%= link_to l(:label_nudt_name),"http://www.nudt.edu.cn/ArticleShow.asp?ID=47",:target=>"_blank"%></span>
<span class="footer_text_link"><%= link_to l(:label_organizers_information_institute), "http://www.nudt.edu.cn/ArticleShow.asp?ID=41", :target => "_blank" %></span>
<span id="copyright"><%=l(:label_copyright)%>@2007~2014</span> <span id="copyright"><%=l(:label_copyright)%>@2007~2014</span>
<span id="contact_us" class="footer_text_link"><%= link_to l(:label_contact_us),"http://forge.trustie.net/projects/2/member", :target=>"_blank" %></span>
<span id="record"class="footer_text_link"><%= link_to l(:label_record),"http://www.miibeian.gov.cn/", :target => "_blank" %></span>
</p> </p>
<div id="logo_link">
<span class="footer_logo_link"><%= link_to image_tag('/images/footer_logo/nudt.png',:size=>'100x30',:alt=>"国防科学技术大学计算机学院"),"http://www.nudt.edu.cn/special.asp?classid=12", :target => "_blank" %></span>
<span class="footer_logo_link"><%= link_to image_tag('/images/footer_logo/peking_eecs.png',:size=>'100x30',:alt=>"北京大学信息科学技术学院软件研究所"), "http://eecs.pku.edu.cn", :target => "_blank" %></span>
<span class="footer_logo_link"><%= link_to image_tag('/images/footer_logo/buaa_scse.png',:size=>'100x30',:alt=>"北京航空航天大学计算机学院"), "http://scse.buaa.edu.cn/", :target => "_blank" %></span>
<span class="footer_logo_link"><%= link_to image_tag('/images/footer_logo/iscas.png',:size=>'100x30',:alt=>"中国科学院软件研究所"), "http://www.iscas.ac.cn", :target => "_blank" %></span>
<span class="footer_logo_link"><%= link_to image_tag('/images/footer_logo/inforbus.png',:size=>'100x30',:alt=>"山东中创软件商用中间件股份有限公司"), "http://www.inforbus.com", :target => "_blank" %></span>
</div>
<!--gcm-->
</div> </div>
</div> </div>

@ -24,7 +24,7 @@
@nav_dispaly_forum_label = 1 @nav_dispaly_forum_label = 1
#@nav_dispaly_bid_label = 1 #@nav_dispaly_bid_label = 1
#@nav_dispaly_contest_label = 1 #@nav_dispaly_contest_label = 1
@nav_dispaly_store_all_label = 1 #@nav_dispaly_store_all_label = 1
#@nav_dispaly_user_label = 1 #@nav_dispaly_user_label = 1
end end
%> %>

@ -110,7 +110,6 @@
<table class="borad-text-list"> <table class="borad-text-list">
<tr> <tr>
<td rowspan="3" valign="top" width="60px"> <td rowspan="3" valign="top" width="60px">
<%= link_to image_tag(url_to_avatar(reply.author), :class => "avatar"), user_path(reply.author) %>
</td> </td>
<td class="comments"> <td class="comments">
<div class="reply_content" ><%=h sanitize(reply.content.html_safe) %></div> <div class="reply_content" ><%=h sanitize(reply.content.html_safe) %></div>

@ -1,5 +1,5 @@
<div class="clearfix"></div> <div class="clearfix"></div>
<div class="linkother"> <div class="linkother hidden">
<a href="http://<%=Setting.project_domain%>" class="link_other_item"><%=l(:label_projects_management_platform)%></a> <a href="http://<%=Setting.project_domain%>" class="link_other_item"><%=l(:label_projects_management_platform)%></a>
<a href="http://<%=Setting.course_domain%>" class="link_other_item"><%=l(:label_courses_management_platform)%></a> <a href="http://<%=Setting.course_domain%>" class="link_other_item"><%=l(:label_courses_management_platform)%></a>
</div> </div>

@ -1778,6 +1778,7 @@ en:
label_bidding_user_studentcode: Student ID label_bidding_user_studentcode: Student ID
label_organizers: Organizer label_organizers: Organizer
label_nudt_name: National University of Defense Technology
label_organizers_information: National Key Laboratory of Parallel and Distributed Processing, NUDT label_organizers_information: National Key Laboratory of Parallel and Distributed Processing, NUDT
label_organizers_information_institute: Department of Computer Sciencer and Technology label_organizers_information_institute: Department of Computer Sciencer and Technology
label_copyright: Copyright label_copyright: Copyright

@ -2027,6 +2027,7 @@ zh:
label_contests_management_platform: 竞赛托管平台 label_contests_management_platform: 竞赛托管平台
label_organizers: 主办单位 label_organizers: 主办单位
label_nudt_name: 国防科学技术大学
label_organizers_information: 国防科学技术大学并行与分布处理国家重点实验室 label_organizers_information: 国防科学技术大学并行与分布处理国家重点实验室
label_organizers_information_institute: 计算机科学与技术系 label_organizers_information_institute: 计算机科学与技术系
label_copyright: 版权 label_copyright: 版权

@ -5,7 +5,9 @@ class CreateUserScores < ActiveRecord::Migration
t.integer :collaboration t.integer :collaboration
t.integer :influence t.integer :influence
t.integer :skill t.integer :skill
t.integer :activity t.integer :active
t.timestamps
end end
end end
end end

@ -2,7 +2,7 @@ class CreateOpenSourceProjects < ActiveRecord::Migration
def change def change
create_table :open_source_projects do |t| create_table :open_source_projects do |t|
t.column "name", :string, :default => nil, :null => true t.column "name", :string, :default => nil, :null => true
t.column "description", :string, :default => '', :null => true t.column "description", :text, :null => true
t.column "commit_count", :integer, :default => 0 t.column "commit_count", :integer, :default => 0
t.column "code_line", :integer, :default => 0 t.column "code_line", :integer, :default => 0
t.column "users_count",:integer, :default => 0 t.column "users_count",:integer, :default => 0

@ -1,13 +0,0 @@
class CreateUserScore < ActiveRecord::Migration
def change
create_table :user_scores do |t|
t.integer :user_id, :null => false
t.integer :collaboration
t.integer :influence
t.integer :skill
t.integer :active
t.timestamps
end
end
end

@ -1,9 +0,0 @@
class ChangeDescriptionTypeToOpenSourceProject < ActiveRecord::Migration
def up
change_column :open_source_projects, :description, :text
end
def down
raise ActiveRecord::IrreversibleMigration
end
end

@ -1,5 +0,0 @@
class DropUserScores < ActiveRecord::Migration
def change
drop_table :user_scores
end
end

@ -387,7 +387,7 @@ Redmine::MenuManager.map :course_menu do |menu|
end end
Redmine::MenuManager.map :user_menu do |menu| Redmine::MenuManager.map :user_menu do |menu|
menu.push :activity, {:controller => 'users', :action => 'show', :host => Setting.user_domain } menu.push :activity, {:controller => 'users', :action => 'show', :host => Setting.user_domain }
menu.push :user_course, {:controller => 'users', :action => 'user_courses', :host => Setting.course_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_homework, {:controller => 'users', :action => 'user_homeworks'} by huang
menu.push :user_project, {:controller => 'users', :action => 'user_projects', :host => Setting.project_domain} 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 :requirement_focus, {:controller => 'users', :action => 'watch_bids'} by huang

Loading…
Cancel
Save