@ -36,66 +36,7 @@ module ProjectsHelper
{ :name = > 'activities' , :action = > :manage_project_activities , :partial = > 'projects/settings/activities' , :label = > :enumeration_activities }
]
tabs . select { | tab | User . current . allowed_to? ( tab [ :action ] , @project ) }
end
# added bu huang
def sort_project_enterprise ( state , project_type )
content = '' . html_safe
case state
when 0
content << content_tag ( 'li' , link_to ( l ( :label_sort_by_active ) , projects_path ( :project_sort_type = > '1' , :project_type = > project_type ) ) )
content << content_tag ( 'li' , link_to ( l ( :label_sort_by_influence ) , projects_path ( :project_sort_type = > '2' , :project_type = > project_type ) ) )
content << content_tag ( 'li' , link_to ( l ( :label_sort_by_time ) , projects_path ( :project_sort_type = > '0' , :project_type = > project_type ) , :class = > " selected " ) , :class = > " selected " )
when 1
content << content_tag ( 'li' , link_to ( l ( :label_sort_by_active ) , projects_path ( :project_sort_type = > '1' , :project_type = > project_type ) , :class = > " selected " ) , :class = > " selected " )
content << content_tag ( 'li' , link_to ( l ( :label_sort_by_influence ) , projects_path ( :project_sort_type = > '2' , :project_type = > project_type ) ) )
content << content_tag ( 'li' , link_to ( l ( :label_sort_by_time ) , projects_path ( :project_sort_type = > '0' , :project_type = > project_type ) ) )
when 2
content << content_tag ( 'li' , link_to ( l ( :label_sort_by_active ) , projects_path ( :project_sort_type = > '1' , :project_type = > project_type ) ) )
content << content_tag ( 'li' , link_to ( l ( :label_sort_by_influence ) , projects_path ( :project_sort_type = > '2' , :project_type = > project_type ) , :class = > " selected " ) , :class = > " selected " )
content << content_tag ( 'li' , link_to ( l ( :label_sort_by_time ) , projects_path ( :project_sort_type = > '0' , :project_type = > project_type ) ) )
end
content = content_tag ( 'ul' , content )
content_tag ( 'div' , content , :class = > " tabs_enterprise " )
end
def sort_course ( state , project_type , school_id )
content = '' . html_safe
case state
when 0
content << content_tag ( 'li' , link_to ( l ( :label_sort_by_time ) , course_path ( :project_sort_type = > '0' , :project_type = > project_type ) , :school_id = > school_id , :class = > " selected " ) , :class = > " selected " )
content << content_tag ( 'li' , link_to ( l ( :label_sort_by_active ) , course_path ( :project_sort_type = > '1' , :project_type = > project_type , :school_id = > school_id ) ) )
# content << content_tag('li', link_to(l(:label_sort_by_influence), course_path(:project_sort_type => '2', :project_type => project_type)))
content << content_tag ( 'li' , link_to ( l ( :label_sort_by_activity ) , course_path ( :project_sort_type = > '3' , :project_type = > project_type , :school_id = > school_id ) ) )
when 1
content << content_tag ( 'li' , link_to ( l ( :label_sort_by_time ) , course_path ( :project_sort_type = > '0' , :project_type = > project_type , :school_id = > school_id ) ) )
content << content_tag ( 'li' , link_to ( l ( :label_sort_by_active ) , course_path ( :project_sort_type = > '1' , :project_type = > project_type , :school_id = > school_id ) , :class = > " selected " ) , :class = > " selected " )
# content << content_tag('li', link_to(l(:label_sort_by_influence), course_path(:project_sort_type => '2', :project_type => project_type)))
content << content_tag ( 'li' , link_to ( l ( :label_sort_by_activity ) , course_path ( :project_sort_type = > '3' , :project_type = > project_type , :school_id = > school_id ) ) )
when 2
content << content_tag ( 'li' , link_to ( l ( :label_sort_by_time ) , course_path ( :project_sort_type = > '0' , :project_type = > project_type , :school_id = > school_id ) ) )
content << content_tag ( 'li' , link_to ( l ( :label_sort_by_active ) , course_path ( :project_sort_type = > '1' , :project_type = > project_type , :school_id = > school_id ) ) )
# content << content_tag('li', link_to(l(:label_sort_by_influence), course_path(:project_sort_type => '2', :project_type => project_type), :class=>"selected"), :class=>"selected")
content << content_tag ( 'li' , link_to ( l ( :label_sort_by_activity ) , course_path ( :project_sort_type = > '3' , :project_type = > project_type , :school_id = > school_id ) ) )
#gcm
when 3
content << content_tag ( 'li' , link_to ( l ( :label_sort_by_time ) , course_path ( :project_sort_type = > '0' , :project_type = > project_type , :school_id = > school_id ) ) )
content << content_tag ( 'li' , link_to ( l ( :label_sort_by_active ) , course_path ( :project_sort_type = > '1' , :project_type = > project_type , :school_id = > school_id ) ) )
# content << content_tag('li', link_to(l(:label_sort_by_influence), course_path(:project_sort_type => '2', :project_type => project_type)))
content << content_tag ( 'li' , link_to ( l ( :label_sort_by_activity ) , course_path ( :project_sort_type = > '3' , :project_type = > project_type , :school_id = > school_id ) , :class = > " selected " ) , :class = > " selected " )
end
#gcmend
content = content_tag ( 'ul' , content )
content_tag ( 'div' , content , :class = > " tabs " )
end
# end
def sort_project ( state , project_type )
content = '' . html_safe
@ -119,29 +60,6 @@ module ProjectsHelper
content_tag ( 'div' , content , :class = > " tabs " )
end
# def sort_course(state, project_type)
# content = ''.html_safe
# case state
# when 0
#
# content << content_tag('li', link_to(l(:label_sort_by_active), course_path(:project_sort_type => '1', :project_type => project_type)))
# content << content_tag('li', link_to(l(:label_sort_by_influence), course_path(:project_sort_type => '2', :project_type => project_type)))
# content << content_tag('li', link_to(l(:label_sort_by_time), course_path(:project_sort_type => '0', :project_type => project_type), :class=>"selected"), :class=>"selected")
# when 1
#
# content << content_tag('li', link_to(l(:label_sort_by_active), course_path(:project_sort_type => '1', :project_type => project_type), :class=>"selected"), :class=>"selected")
# content << content_tag('li', link_to(l(:label_sort_by_influence), course_path(:project_sort_type => '2', :project_type => project_type)))
# content << content_tag('li', link_to(l(:label_sort_by_time), course_path(:project_sort_type => '0', :project_type => project_type)))
# when 2
# content << content_tag('li', link_to(l(:label_sort_by_active), course_path(:project_sort_type => '1', :project_type => project_type)))
# content << content_tag('li', link_to(l(:label_sort_by_influence), course_path(:project_sort_type => '2', :project_type => project_type), :class=>"selected"), :class=>"selected")
# content << content_tag('li', link_to(l(:label_sort_by_time), course_path(:project_sort_type => '0', :project_type => project_type)))
# end
# content = content_tag('ul', content)
# content_tag('div', content, :class => "tabs")
# end
# Added by young
def course_settings_tabs
tabs = [ { :name = > 'info' , :action = > :edit_project , :partial = > 'projects/edit' , :label = > :label_information_plural , :course = > '1' } ,
@ -153,9 +71,6 @@ module ProjectsHelper
end
# Ended by young
def parent_project_select_tag ( project )
selected = project . parent
# retrieve the requested parent project
@ -375,4 +290,85 @@ module ProjectsHelper
end
end
end
# Time 2015-01-29 11:39:02
# Author lizanle
# Description 计算projects
def get_project_activity projects , activities
@project_ids = activities . keys ( )
days = Setting . activity_days_default . to_i
date_to || = Date . today + 1
date_from = date_to - days - 1 . years
#issue_count
Issue . where ( project_id : @project_ids ) . where ( " updated_on>? " , date_from ) . each do | issue |
# activities[issue.project_id.to_s]+=1
activities [ issue . project_id ] += issue . journals . where ( " created_on>? " , date_from ) . count
end
#repository_count
Repository . where ( project_id : @project_ids ) . each do | repository |
# activities[repository.project_id.to_s]+=1
activities [ repository . project_id ] += repository . changesets . where ( " committed_on>? " , date_from ) . count
end
#news_count
News . where ( project_id : @project_ids ) . where ( " created_on>? " , date_from ) . each do | news |
activities [ news . project_id ] += 1
end
#document_count
Document . where ( project_id : @project_ids ) . where ( " created_on>? " , date_from ) . each do | document |
activities [ document . project_id ] += 1
end
#file_count
Attachment . where ( container_id : @project_ids , container_type : Project ) . where ( " created_on>? " , date_from ) . each do | attachment |
activities [ attachment . container_id ] += 1
end
#message_count
Board . where ( project_id : @project_ids ) . each do | board |
# activities[board.project_id]+=1
activities [ board . project_id ] += board . messages . where ( " updated_on>? " , date_from ) . count
end
#time_entry_count
TimeEntry . where ( project_id : @project_ids ) . where ( " updated_on>? " , date_from ) . each do | timeentry |
activities [ timeentry . project_id ] += 1
end
#feedbackc_count
JournalsForMessage . where ( jour_id : @project_ids , jour_type : Project ) . each do | jourformess |
activities [ jourformess . jour_id ] += 1
end
#activities!=0
i = 0 ;
projects . each do | project |
id = project . id
if activities [ id ] == 0
activities [ id ] = 1
end
end
return activities
end
def handle_project projects , activities
project_activity_count_array = activities . values ( )
project_array = [ ]
i = 0 ;
projects . each do | project |
project_array [ i ] = project
i = i + 1
end
projects = desc_sort_course_by_avtivity ( project_activity_count_array , project_array )
return projects
end
end