From 2878c57d43c18c04e6dd3626256e8fa05f6511cf Mon Sep 17 00:00:00 2001 From: yanxd Date: Mon, 10 Mar 2014 14:38:02 +0800 Subject: [PATCH] =?UTF-8?q?=E6=96=B0=E5=BB=BA=E4=BD=9C=E4=B8=9A=20?= =?UTF-8?q?=E9=99=A4=E4=BA=86=E5=AD=A6=E7=94=9F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/controllers/projects_controller.rb | 15 ++++++++++++++- app/views/projects/homework.html.erb | 2 +- 2 files changed, 15 insertions(+), 2 deletions(-) diff --git a/app/controllers/projects_controller.rb b/app/controllers/projects_controller.rb index cf976f6dc..3a75c1e27 100644 --- a/app/controllers/projects_controller.rb +++ b/app/controllers/projects_controller.rb @@ -271,7 +271,20 @@ class ProjectsController < ApplicationController end def new_homework - if User.current.logged? && (User.current.admin? || (!Member.where('user_id = ? and project_id = ?', User.current.id, @project.id).first.nil? && (Member.where('user_id = ? and project_id = ?', User.current.id, @project.id).first.roles&Role.where('id = ? or id = ?', 3, 7)).size >0)) + # Dear maintainer: + # once you are done trying to 'optimize' this Magic routine, + # well, it's on you, I'll leave it to you. + if (User.current.logged? && + (User.current.admin? || + ( + !Member.where('user_id = ? and project_id = ?', User.current.id, @project.id).first.nil? && + ( + Member.where('user_id = ? and project_id = ?', User.current.id, @project.id).first.roles && + ( Role.where(id: [3, 4, 7, 9]).size > 0 ) + ) + ) + ) + ) @homework = Bid.new @homework.safe_attributes = params[:bid] render :layout => 'base_courses' diff --git a/app/views/projects/homework.html.erb b/app/views/projects/homework.html.erb index ee61bd6a1..17c8b9efa 100644 --- a/app/views/projects/homework.html.erb +++ b/app/views/projects/homework.html.erb @@ -1,7 +1,7 @@
- <% if User.current.logged? && (User.current.admin? || (!Member.where('user_id = ? and project_id = ?', User.current.id, @project.id).first.nil? && (Member.where('user_id = ? and project_id = ?', User.current.id, @project.id).first.roles&Role.where('id = ? or id = ?', 3, 7)).size >0))%> + <% if User.current.logged? && (User.current.admin? || (!Member.where('user_id = ? and project_id = ?', User.current.id, @project.id).first.nil? && (Member.where('user_id = ? and project_id = ?', User.current.id, @project.id).first.roles&Role.where(id: [3, 4, 7, 9] )).size >0))%> <%= link_to(l(:label_course_homework_new), {:controller => 'projects', :action => 'new_homework'}, :class => 'icon icon-add') %> <% end %>