@ -38,15 +39,17 @@ class CoursesController < ApplicationController
end
limit=15
course_org_ids=OrgCourse.find_by_sql("select distinct organization_id from org_courses where course_id = #{params[:id]}").map(&:organization_id)
#@orgs_not_in_course = User.current.organizations.where("organizations.id not in (#{course_org_ids.join(',')}) and organizations.name like ?", condition).page(params[:page].to_i || 1).per(limit)
#@org_count = User.current.organizations.where("organizations.id not in (#{course_org_ids.join(',')}) and organizations.name like ?", condition).count
ifcourse_org_ids.empty?
@orgs_not_in_course=Organization.where("(is_public or creator_id =?) and name like ?",User.current.id,condition).page((params[:page].to_i||1)).per(limit)
@org_count=Organization.where("is_public = 1 or creator_id =?",User.current.id).where("name like ?",condition).count
@orgs_not_in_course=User.current.organizations.where("name like ?",condition).page((params[:page].to_i||1)).per(limit)
@org_count=@orgs_not_in_course.count
else
course_org_ids="("+course_org_ids.join(',')+")"
@orgs_not_in_course=Organization.where("id not in #{course_org_ids} and (is_public = 1 or creator_id =?) and name like ?",User.current.id,condition).page((params[:page].to_i||1)).per(limit)
@org_count=Organization.where("id not in #{course_org_ids} and (is_public = 1 or creator_id =?)",User.current.id).where("name like ?",condition).count
@orgs_not_in_course=User.current.organizations.where("organizations.id not in #{course_org_ids} and organizations.name like ?",condition).page((params[:page].to_i||1)).per(limit)
@ -200,23 +205,10 @@ class FilesController < ApplicationController
ifsort==""
sort="created_on DESC"
end
ids=""
len=0
count=project.versions.count
project.versions.eachdo|version|
len=len+1
iflen!=count
ids+=version.id.to_s+','
else
ids+=version.id.to_s
end
end
ifids.blank?
resultSet=Attachment.where("attachments.container_type = 'Project' And attachments.container_id = '#{project.id}' AND filename LIKE :like ",like:"%#{keywords}%").
reorder(sort)
ifkeywords!="%%"
resultSet=Attachment.where("attachments.container_type = 'Project' And attachments.container_id = '#{project.id}' AND filename LIKE :like ",like:"%#{keywords}%").reorder(sort)
else
resultSet=Attachment.where("((attachments.container_type = 'Project' And attachments.container_id = '#{project.id}') OR (container_type = 'Version' AND container_id IN (#{ids}))) AND filename LIKE :like ",like:"%#{keywords}%").
reorder(sort)
resultSet=Attachment.where("attachments.container_type = 'Project' And attachments.container_id = '#{project.id}' ").reorder(sort)
end
end
@ -238,12 +230,11 @@ class FilesController < ApplicationController
@order=""
@is_remote=false
ifparams[:project_id]
@page=params[:page]?params[:page].to_i+1:2
@container_type=0
ifparams[:sort]
params[:sort].split(",").eachdo|sort_type|
order_by=sort_type.split(":")
caseorder_by[0]
when"filename"
attribute="filename"
@ -281,25 +272,19 @@ class FilesController < ApplicationController
# org_acts = OrgActivity.where("container_type='OrgSubfield' and container_id=? and org_act_type='Message' and org_act_id=?", field_id.to_i, @message.id)
@org_activities=OrgActivity.where("org_act_type='OrgDocumentComment'and org_act_id in (#{@org_subfield_ids.join(",")})").order('updated_at desc').page(params[:page]||1).per(10)
@org_activities=OrgActivity.where("(org_act_type='OrgDocumentComment'and org_act_id in (#{@org_subfield_ids.join(",")})) || (container_type='OrgSubfield' and container_id=#{@org_subfield.id})").order('updated_at desc').page(params[:page]||1).per(10)
else
project_ids=@organization.projects.map(&:id)<<0
course_ids=@organization.courses.map(&:id)<<0
shield_project_ids=ShieldActivity.where("container_type='Organization' and container_id=#{@organization.id} and shield_type='Project'").map(&:shield_id)
shield_course_ids=ShieldActivity.where("container_type='Organization' and container_id=#{@organization.id} and shield_type='Course'").map(&:shield_id)
@ -98,7 +100,7 @@ class OrganizationsController < ApplicationController
@org_activities=OrgActivity.where("container_type = 'Course' and org_act_type = 'Poll' and container_id in (#{course_ids.join(',')})").order('updated_at desc').page(params[:page]||1).per(10)
end
end
@page=params[:page]||1
@page=params[:page]?params[:page].to_i:1
respond_todo|format|
format.html
format.js
@ -281,4 +283,37 @@ class OrganizationsController < ApplicationController
@ -76,16 +76,17 @@ class ProjectsController < ApplicationController
condition="%#{params[:name].strip}%".gsub("","")
end
limit=15
project_org_ids=OrgProject.find_by_sql("select distinct organization_id from org_projects where project_id = #{params[:id]}").map(&:organization_id)
ifproject_org_ids.empty?
@orgs_not_in_project=Organization.where("(is_public or creator_id =?) = 1 and name like ?",User.current.id,condition).page((params[:page].to_i||1)).per(limit)
@org_count=Organization.where("is_public = 1 or creator_id =?",User.current.id).where("name like ?",condition).count
else
project_org_ids="("+project_org_ids.join(',')+")"
@orgs_not_in_project=Organization.where("id not in #{project_org_ids} and (is_public = 1 or creator_id =?) and name like ?",User.current.id,condition).page((params[:page].to_i||1)).per(limit)
@org_count=Organization.where("id not in #{project_org_ids} and (is_public = 1 or creator_id =?)",User.current.id).where("name like ?",condition).count
project_org_ids=OrgProject.find_by_sql("select distinct organization_id from org_projects where project_id = #{params[:id]}").map(&:organization_id)<<0
@orgs_not_in_project=User.current.organizations.where("organizations.id not in (#{project_org_ids.join(',')}) and organizations.name like ?",condition).page(params[:page].to_i||1).per(limit)
@org_count=User.current.organizations.where("organizations.id not in (#{project_org_ids.join(',')}) and organizations.name like '#{condition}'").count
# if project_org_ids.empty?
# @orgs_not_in_project = Organization.where("(is_public or creator_id =?) = 1 and name like ?",User.current.id, condition).page((params[:page].to_i || 1)).per(limit)
# @org_count = Organization.where("is_public = 1 or creator_id =?", User.current.id).where("name like ?", condition).count
# @orgs_not_in_project = Organization.where("id not in #{project_org_ids} and (is_public = 1 or creator_id =?) and name like ?", User.current.id, condition).page((params[:page].to_i || 1)).per(limit)
# @org_count = Organization.where("id not in #{project_org_ids} and (is_public = 1 or creator_id =?)", User.current.id).where("name like ?", condition).count
ShieldActivity.where("container_type='Organization' and container_id=#{params[:org_id].to_i} and shield_type='Project' and shield_id=#{params[:project_id]}").eachdo|act|
ShieldActivity.where("container_type='Organization' and container_id=#{params[:org_id].to_i} and shield_type='Course' and shield_id=#{params[:course_id]}").eachdo|act|
act.destroy
end
end
elsifparams[:user_id]
ifparams[:project_id]
ShieldActivity.where("container_type='User' and container_id=#{params[:user_id].to_i} and shield_type='Project' and shield_id=#{params[:project_id]}").eachdo|act|
ShieldActivity.where("container_type='User' and container_id=#{params[:user_id].to_i} and shield_type='Course' and shield_id=#{params[:course_id]}").eachdo|act|