新的课程

修改了一些bug
This commit is contained in:
huangjingquan 2013-09-29 19:46:59 +08:00
parent 9fbccfbb6d
commit b19ed67d79
45 changed files with 878 additions and 201 deletions

View File

@ -15,10 +15,16 @@ class BidsController < ApplicationController
helper :projects helper :projects
def index def index
@project_type = params[:project_type]
# Modified by nie # Modified by nie
# @requirement_title = "4" # @requirement_title = "4"
@offset, @limit = api_offset_and_limit({:limit => 10}) @offset, @limit = api_offset_and_limit({:limit => 10})
@bids = Bid.visible if @project_type == '1'
@bids = Bid.visible.where('reward_type = ?', 3)
else
@bids = Bid.visible.where('reward_type = ? or reward_type = ?', 1, 2)
end
@bids = @bids.like(params[:name]) if params[:name].present? @bids = @bids.like(params[:name]) if params[:name].present?
@bid_count = @bids.count @bid_count = @bids.count
@bid_pages = Paginator.new @bid_count, @limit, params['page'] @bid_pages = Paginator.new @bid_count, @limit, params['page']

View File

@ -6,7 +6,7 @@ class CoursesController < ApplicationController
def join def join
if User.current.logged? if User.current.logged?
course = Project.find(params[:object_id]) course = Project.find(params[:object_id])
if params[:course_password].to_i == Course.find_by_extra(course.identifier).state if params[:course_password] == Course.find_by_extra(course.identifier).password
members = [] members = []
members << Member.new(:role_ids => [5], :user_id => User.current.id) members << Member.new(:role_ids => [5], :user_id => User.current.id)
course.members << members course.members << members

View File

@ -45,7 +45,7 @@ class FilesController < ApplicationController
def new def new
@versions = @project.versions.sort @versions = @project.versions.sort
@course_tag = @project.project_type @course_tag = @project.project_type
if @course_tag if @project.project_type == 1
render :layout => 'base_courses' render :layout => 'base_courses'
end end
end end

View File

@ -41,8 +41,9 @@ class ProjectsController < ApplicationController
# menu_item l(:label_course_file), :only => files # menu_item l(:label_course_file), :only => files
# menu_item l(:label_settings), :only => settings # menu_item l(:label_settings), :only => settings
before_filter :find_project, :except => [ :index, :search,:list, :new, :create, :copy, :statistics, :new_join] before_filter :find_project, :except => [ :index, :search,:list, :new, :create, :copy, :statistics, :new_join, :course]
before_filter :authorize, :except => [:new_join, :new_homework, :homework, :statistics, :search, :watcherlist, :index, :list, :new, :create, :copy, :archive, :unarchive, :destroy, :member, :focus, :file, :statistics, :feedback] before_filter :authorize, :except => [:new_join, :new_homework, :homework, :statistics, :search, :watcherlist, :index, :list, :new, :create, :copy, :archive, :unarchive, :destroy, :member, :focus, :file,
:statistics, :feedback, :course]
before_filter :authorize_global, :only => [:new, :create] before_filter :authorize_global, :only => [:new, :create]
before_filter :require_admin, :only => [ :copy, :archive, :unarchive, :destroy, :calendar] before_filter :require_admin, :only => [ :copy, :archive, :unarchive, :destroy, :calendar]
#by young #by young
@ -110,8 +111,17 @@ class ProjectsController < ApplicationController
# @offset ||= @project_pages.offset # @offset ||= @project_pages.offset
# @projects = Project.visible.offset(@offset).limit(@limit).order('lft').all # @projects = Project.visible.offset(@offset).limit(@limit).order('lft').all
@project_type = params[:project_type] @project_type = params[:project_type]
@project_type = params[:project_type]
@offset, @limit = api_offset_and_limit({:limit => 10}) @offset, @limit = api_offset_and_limit({:limit => 10})
@projects_status = ProjectStatus.visible @projects_status = ProjectStatus.visible.where("project_type <> ? or project_type is null", 1)
# @projects_status = ProjectStatus.visible
# @projects_status.each do |project|
# if Project.visible.find_by_id("#{project.project_id}")
# project.project_type = Project.visible.find_by_id("#{project.project_id}").project_type
# project.save
# end
# end
# @projects.each do |project| # @projects.each do |project|
# @admin = project.users_by_role[Role.find(3)] # @admin = project.users_by_role[Role.find(3)]
# unless @admin.nil? # unless @admin.nil?
@ -215,6 +225,121 @@ class ProjectsController < ApplicationController
end end
end end
def course
#Modified by nie
# @offset, @limit = api_offset_and_limit({:limit => 10})
# @project_count = Project.visible.count
# @project_pages = Paginator.new @project_count, @limit, params['page']
# @offset ||= @project_pages.offset
# @projects = Project.visible.offset(@offset).limit(@limit).order('lft').all
@project_type = params[:project_type]
@offset, @limit = api_offset_and_limit({:limit => 10})
@projects_status = ProjectStatus.visible.where("project_type = ?", 1)
# @projects.each do |project|
# @admin = project.users_by_role[Role.find(3)]
# unless @admin.nil?
# @admin.each do |user|
# ProjectInfo.create(:user_id => user.id, :project_id => project.id)
# end
#
# end
# end
# @projects.each do |project|
# ProjectStatus.create(:changesets_count => project.changesets.count, :project_id => project.id, :watchers_count => project.watcher_users.count)
# end
#@projects_status = Project.visible.like(params[:name]) if params[:name].present?
@project_count = @projects_status.count
@project_pages = Paginator.new @project_count, @limit, params['page']
@offset ||= @project_pages.reverse_offset
#@projects = @projects.offset(@offset).limit(@limit).order('created_on DESC').all
if params[:project_sort_type].present?
case params[:project_sort_type]
when '0'
@offset ||= @project_pages.reverse_offset
unless @offset == 0
@projects_status = @projects_status.offset(@offset).limit(@limit).all.reverse
else
limit = @project_count % @limit
if limit == 0
limit = @limit
end
@projects_status = @projects_status.offset(@offset).limit(limit).all.reverse
end
@s_type = 0
# @projects = @projects.sort {|x,y| y.created_on <=> x.created_on }
# @projects = @projects[@offset, @limit]
when '1'
@offset ||= @project_pages.reverse_offset
unless @offset == 0
@projects_status = @projects_status.reorder('changesets_count').offset(@offset).limit(@limit).all.reverse
else
limit = @project_count % @limit
if limit == 0
limit = @limit
end
@projects_status = @projects_status.reorder('changesets_count').offset(@offset).limit(limit).all.reverse
end
@s_type = 1
#@projects = @projects[@offset, @limit]
when '2'
@offset ||= @project_pages.reverse_offset
unless @offset == 0
@projects_status = @projects_status.reorder('watchers_count').offset(@offset).limit(@limit).all.reverse
else
limit = @project_count % @limit
if limit == 0
limit = @limit
end
@projects_status = @projects_status.reorder('watchers_count').offset(@offset).limit(limit).all.reverse
end
@s_type = 2
end
else
@offset ||= @project_pages.reverse_offset
unless @offset == 0
@projects_status = @projects_status.reorder('changesets_count').offset(@offset).limit(@limit).all.reverse
else
limit = @project_count % @limit
if limit == 0
limit = @limit
end
@projects_status = @projects_status.reorder('changesets_count').offset(@offset).limit(limit).all.reverse
end
@s_type = 1
# @projects = @projects.sort {|x,y| y.created_on <=> x.created_on }
# @projects = @projects[@offset, @limit]
end
@projects = []
@projects_status.each do |obj|
@projects << Project.visible.find_by_id("#{obj.project_id}") unless Project.visible.find_by_id("#{obj.project_id}").nil?
end
#end
respond_to do |format|
format.html {
render :layout => 'base'
scope = Project
unless params[:closed]
scope = scope.active
end
}
format.api {
# @offset, @limit = api_offset_and_limit
# @project_count = Project.visible.count
# @projects = Project.visible.offset(@offset).limit(@limit).order('lft').all
}
format.atom {
projects = Project.visible.order('created_on DESC').limit(Setting.feeds_limit.to_i).all
render_feed(projects, :title => "#{Setting.app_title}: #{l(:label_project_latest)}")
}
end
end
def search def search
@projects = Project.visible @projects = Project.visible
@ -328,6 +453,7 @@ class ProjectsController < ApplicationController
end end
def new def new
@project_type = params[:project_type]
@course_tag = params[:course] @course_tag = params[:course]
@issue_custom_fields = IssueCustomField.sorted.all @issue_custom_fields = IssueCustomField.sorted.all
@trackers = Tracker.sorted.all @trackers = Tracker.sorted.all
@ -341,6 +467,7 @@ class ProjectsController < ApplicationController
end end
def create def create
@course_tag = params[:project][:project_type] @course_tag = params[:project][:project_type]
if(@course_tag=="1") if(@course_tag=="1")
@course = Course.new @course = Course.new
@ -385,7 +512,7 @@ class ProjectsController < ApplicationController
redirect_to new_project_path(:course => '1') redirect_to new_project_path(:course => '1')
#Ended by young #Ended by young
else else
redirect_to settings_project_path(@project) redirect_to settings_project_path(@project,:project_type => 1)
end end
} }
format.api { render :action => 'show', :status => :created, :location => url_for(:controller => 'projects', :action => 'show', :id => @project.id) } format.api { render :action => 'show', :status => :created, :location => url_for(:controller => 'projects', :action => 'show', :id => @project.id) }
@ -482,6 +609,9 @@ class ProjectsController < ApplicationController
# Show @project # Show @project
def show def show
@project_type = params[:project_type]
# try to redirect to the requested menu item # try to redirect to the requested menu item
if params[:jump] && redirect_to_project_menu_item(@project, params[:jump]) if params[:jump] && redirect_to_project_menu_item(@project, params[:jump])
return return
@ -614,9 +744,11 @@ class ProjectsController < ApplicationController
@project.safe_attributes = params[:project] @project.safe_attributes = params[:project]
if validate_parent_id && @project.save if validate_parent_id && @project.save
@course = Course.find_by_extra(@project.identifier) @course = Course.find_by_extra(@project.identifier)
@course.state = params[:project][:course][:state] unless @course.nil?
@course.password = params[:project][:course][:password]
@course.term = params[:project][:course][:term] @course.term = params[:project][:course][:term]
@course.save @course.save
end
@project.set_allowed_parent!(params[:project]['parent_id']) if params[:project].has_key?('parent_id') @project.set_allowed_parent!(params[:project]['parent_id']) if params[:project].has_key?('parent_id')
if params[:project][:is_public] == '0' if params[:project][:is_public] == '0'

View File

@ -203,6 +203,9 @@ class UsersController < ApplicationController
#end #end
def index def index
@project_type = params[:project_type]
sort_init 'login', 'asc' sort_init 'login', 'asc'
sort_update %w(login firstname lastname mail admin created_on last_login_on) sort_update %w(login firstname lastname mail admin created_on last_login_on)

View File

@ -72,4 +72,6 @@ class WelcomeController < ApplicationController
@projects = Project.all_public.active @projects = Project.all_public.active
render :layout => false, :content_type => 'text/plain' render :layout => false, :content_type => 'text/plain'
end end
end end

View File

@ -39,16 +39,33 @@ module BidsHelper
Bid.tagged_with(tag_name).order('updated_on desc') Bid.tagged_with(tag_name).order('updated_on desc')
end end
def sort_bid(state) #added by huang
def sort_bid_enterprise(state, project_type)
content = ''.html_safe content = ''.html_safe
case state case state
when 0 when 0
content << content_tag('li', link_to(l(:label_sort_by_active), calls_path(:bid_sort_type => '1'))) content << content_tag('li', link_to(l(:label_sort_by_active), calls_path(:bid_sort_type => '1', :project_type => project_type)))
content << content_tag('li', link_to(l(:label_sort_by_time), calls_path(:bid_sort_type => '0'), :class=>"selected"), :class=>"selected") content << content_tag('li', link_to(l(:label_sort_by_time), calls_path(:bid_sort_type => '0', :project_type => project_type), :class=>"selected"), :class=>"selected")
when 1 when 1
content << content_tag('li', link_to(l(:label_sort_by_active), calls_path(:bid_sort_type => '1'), :class=>"selected"), :class=>"selected") content << content_tag('li', link_to(l(:label_sort_by_active), calls_path(:bid_sort_type => '1', :project_type => project_type), :class=>"selected"), :class=>"selected")
content << content_tag('li', link_to(l(:label_sort_by_time), calls_path(:bid_sort_type => '0'))) content << content_tag('li', link_to(l(:label_sort_by_time), calls_path(:bid_sort_type => '0', :project_type => project_type)))
end
content = content_tag('ul', content)
content_tag('div', content, :class => "tabs_enterprise")
end
#end
def sort_bid(state, project_type)
content = ''.html_safe
case state
when 0
content << content_tag('li', link_to(l(:label_sort_by_active), calls_path(:bid_sort_type => '1', :project_type => project_type)))
content << content_tag('li', link_to(l(:label_sort_by_time), calls_path(:bid_sort_type => '0', :project_type => project_type), :class=>"selected"), :class=>"selected")
when 1
content << content_tag('li', link_to(l(:label_sort_by_active), calls_path(:bid_sort_type => '1', :project_type => project_type), :class=>"selected"), :class=>"selected")
content << content_tag('li', link_to(l(:label_sort_by_time), calls_path(:bid_sort_type => '0', :project_type => project_type)))
end end
content = content_tag('ul', content) content = content_tag('ul', content)
content_tag('div', content, :class => "tabs") content_tag('div', content, :class => "tabs")

View File

@ -38,23 +38,91 @@ module ProjectsHelper
end end
def sort_project(state) # added bu huang
def sort_project_enterprise(state, project_type)
content = ''.html_safe content = ''.html_safe
case state case state
when 0 when 0
content << content_tag('li', link_to(l(:label_sort_by_active), projects_path(:project_sort_type => '1'))) 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'))) 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'), :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), :class=>"selected"), :class=>"selected")
when 1 when 1
content << content_tag('li', link_to(l(:label_sort_by_active), projects_path(:project_sort_type => '1'), :class=>"selected"), :class=>"selected") 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'))) 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'))) content << content_tag('li', link_to(l(:label_sort_by_time), projects_path(:project_sort_type => '0', :project_type => project_type)))
when 2 when 2
content << content_tag('li', link_to(l(:label_sort_by_active), projects_path(:project_sort_type => '1'))) 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'), :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), :class=>"selected"), :class=>"selected")
content << content_tag('li', link_to(l(:label_sort_by_time), projects_path(:project_sort_type => '0'))) 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)
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_enterprise")
end
# end
def sort_project(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")
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 end
content = content_tag('ul', content) content = content_tag('ul', content)
content_tag('div', content, :class => "tabs") content_tag('div', content, :class => "tabs")
@ -95,7 +163,7 @@ module ProjectsHelper
render_project_nested_lists(projects) do |project| render_project_nested_lists(projects) do |project|
#Modified by young #Modified by young
if (project.project_type==1) if (project.project_type==1)
s = link_to_project(project, {}, :class => "#{project.css_classes} #{User.current.member_of?(project) ? 'my-project' : nil}")+"<span style='color:#F00;'>(#{l(:label_course)})</span>".html_safe s = link_to_project(project, {}, :class => "#{project.css_classes} #{User.current.member_of?(project) ? 'my-project' : nil}").html_safe
else else
s = link_to_project(project, {}, :class => "#{project.css_classes} #{User.current.member_of?(project) ? 'my-project' : nil}") s = link_to_project(project, {}, :class => "#{project.css_classes} #{User.current.member_of?(project) ? 'my-project' : nil}")
end end

View File

@ -113,24 +113,44 @@ module UsersHelper
end end
# added by huang # added by huang
def sort_user(state) def sort_user(state, project_type)
content = ''.html_safe content = ''.html_safe
case state case state
when 0 when 0
content << content_tag('li', link_to(l(:label_sort_by_active), users_path(:user_sort_type => '1'))) content << content_tag('li', link_to(l(:label_sort_by_active), users_path(:user_sort_type => '1', :project_type => project_type)))
content << content_tag('li', link_to(l(:label_sort_by_influence), users_path(:user_sort_type => '2'))) content << content_tag('li', link_to(l(:label_sort_by_influence), users_path(:user_sort_type => '2', :project_type => project_type)))
content << content_tag('li', link_to(l(:label_sort_by_time), users_path(:user_sort_type => '0'), :class=>"selected"), :class=>"selected") content << content_tag('li', link_to(l(:label_sort_by_time), users_path(:user_sort_type => '0', :project_type => project_type), :class=>"selected"), :class=>"selected")
when 1 when 1
content << content_tag('li', link_to(l(:label_sort_by_active), users_path(:user_sort_type => '1'), :class=>"selected"), :class=>"selected") content << content_tag('li', link_to(l(:label_sort_by_active), users_path(:user_sort_type => '1', :project_type => project_type), :class=>"selected"), :class=>"selected")
content << content_tag('li', link_to(l(:label_sort_by_influence), users_path(:user_sort_type => '2'))) content << content_tag('li', link_to(l(:label_sort_by_influence), users_path(:user_sort_type => '2', :project_type => project_type)))
content << content_tag('li', link_to(l(:label_sort_by_time), users_path(:user_sort_type => '0'))) content << content_tag('li', link_to(l(:label_sort_by_time), users_path(:user_sort_type => '0', :project_type => project_type)))
when 2 when 2
content << content_tag('li', link_to(l(:label_sort_by_active), users_path(:user_sort_type => '1'))) content << content_tag('li', link_to(l(:label_sort_by_active), users_path(:user_sort_type => '1', :project_type => project_type)))
content << content_tag('li', link_to(l(:label_sort_by_influence), users_path(:user_sort_type => '2'), :class=>"selected"), :class=>"selected") content << content_tag('li', link_to(l(:label_sort_by_influence), users_path(:user_sort_type => '2', :project_type => project_type), :class=>"selected"), :class=>"selected")
content << content_tag('li', link_to(l(:label_sort_by_time), users_path(:user_sort_type => '0'))) content << content_tag('li', link_to(l(:label_sort_by_time), users_path(:user_sort_type => '0', :project_type => project_type)))
end end
content = content_tag('ul', content) content = content_tag('ul', content)
content_tag('div', content, :class => "tabs") content_tag('div', content, :class => "tabs")
end end
def sort_user_enterprise(state, project_type)
content = ''.html_safe
case state
when 0
content << content_tag('li', link_to(l(:label_sort_by_active), users_path(:user_sort_type => '1', :project_type => project_type)))
content << content_tag('li', link_to(l(:label_sort_by_influence), users_path(:user_sort_type => '2', :project_type => project_type)))
content << content_tag('li', link_to(l(:label_sort_by_time), users_path(:user_sort_type => '0', :project_type => project_type), :class=>"selected"), :class=>"selected")
when 1
content << content_tag('li', link_to(l(:label_sort_by_active), users_path(:user_sort_type => '1', :project_type => project_type), :class=>"selected"), :class=>"selected")
content << content_tag('li', link_to(l(:label_sort_by_influence), users_path(:user_sort_type => '2', :project_type => project_type)))
content << content_tag('li', link_to(l(:label_sort_by_time), users_path(:user_sort_type => '0', :project_type => project_type)))
when 2
content << content_tag('li', link_to(l(:label_sort_by_active), users_path(:user_sort_type => '1', :project_type => project_type)))
content << content_tag('li', link_to(l(:label_sort_by_influence), users_path(:user_sort_type => '2', :project_type => project_type), :class=>"selected"), :class=>"selected")
content << content_tag('li', link_to(l(:label_sort_by_time), users_path(:user_sort_type => '0', :project_type => project_type)))
end
content = content_tag('ul', content)
content_tag('div', content, :class => "tabs_enterprise")
end
#end #end
end end

View File

@ -14,7 +14,8 @@ class Course < ActiveRecord::Base
'location', 'location',
'tea_id', 'tea_id',
'password', 'password',
'term' 'term',
'password'
end end

View File

@ -1,5 +1,5 @@
class ProjectStatus < ActiveRecord::Base class ProjectStatus < ActiveRecord::Base
attr_accessible :changesets_count, :watchers_count, :project_id attr_accessible :changesets_count, :watchers_count, :project_id, :project_type
belongs_to :projects belongs_to :projects
belongs_to :watchers belongs_to :watchers
belongs_to :changesets belongs_to :changesets

View File

@ -29,7 +29,7 @@
</tr> </tr>
<tr> <tr>
<td> <td>
<div class="bid-description" style="border-left: 1px solid rgb(225, 225, 225); border-bottom: 1px solid rgb(225, 225, 225); padding-left: 20px; padding-bottom: 10px; margin-bottom: 20px;"> <div class="bid-description" style="border-left: 1px solid #ceadb4; border-bottom: 1px solid #ceadb4; padding-left: 20px; padding-bottom: 10px; margin-bottom: 20px;">
<table width="100%"> <table width="100%">
<tr> <tr>
<td> <%= bid.description%> </td> <td> <%= bid.description%> </td>

View File

@ -6,7 +6,11 @@
<table width="660px" border="0" align="center"> <table width="660px" border="0" align="center">
<tr> <tr>
<% if User.current.member_of?(@bid.courses.first) %>
<td colspan="2" valign="top" width="50" ><%= link_to image_tag(url_to_avatar(homework.user), :class => "avatar"), user_path(homework.user), :class => "avatar" %><%= l(:label_bidding_user_studentcode) %><%= homework.user.user_extensions.student_id%></td>
<% else %>
<td colspan="2" valign="top" width="50" ><%= link_to image_tag(url_to_avatar(homework.user), :class => "avatar"), user_path(homework.user), :class => "avatar" %></td> <td colspan="2" valign="top" width="50" ><%= link_to image_tag(url_to_avatar(homework.user), :class => "avatar"), user_path(homework.user), :class => "avatar" %></td>
<% end %>
<td> <td>
<table width="580px" border="0"> <table width="580px" border="0">
<tr> <tr>

View File

@ -78,7 +78,7 @@
<table width="100%"> <table width="100%">
<tr> <tr>
<td><%= l(:label_bidding_user) %> <td><%= l(:label_bidding_user) %>
<%= link_to(b_project.user.name, user_path(b_project.user)) %> <%= link_to(b_project.user.lastname+b_project.user.firstname, user_path(b_project.user)) %>
</td> </td>
</tr> </tr>
<tr> <tr>

View File

@ -4,12 +4,16 @@
<% if @bid.deadline > Date.today %> <% if @bid.deadline > Date.today %>
<table width="1000px" border="0" style="padding-left: 15px"> <table width="1000px" border="0" style="padding-left: 15px">
<td class="font_lighter" style="font-size: 18px;"><%= l(:label_bidding_project) %>(<%= @bidding_project.count%>)</td> <%if @bid.reward_type == 3 %>
<td class="font_lighter" style="font-size: 15px;"><%= l(:label_homework_project) %>(<%= @bidding_project.count%>)</td> <td class="font_lighter" style="font-size: 15px;"><%= l(:label_homework_project) %>(<%= @bidding_project.count%>)</td>
<% else %>
<td class="font_lighter" style="font-size: 18px;"><%= l(:label_bidding_project) %>(<%= @bidding_project.count%>)</td>
<% end %>
<% if User.current.logged? %> <% if User.current.logged? %>
<td> <td>
<% if User.current.logged? && (!Member.where('user_id = ? and project_id = ?', User.current.id, @bid.courses.first.id).first.nil? && (Member.where('user_id = ? and project_id = ?', User.current.id, @bid.courses.first.id).first.roles&Role.where('id = ? or id = ?', 5, 7)).size >0) %> <% if User.current.logged? && (!Member.where('user_id = ? and project_id = ?', User.current.id, @bid.courses.first.id).first.nil? && (Member.where('user_id = ? and project_id = ?', User.current.id, @bid.courses.first.id).first.roles&Role.where('id = ? or id = ?', 5, 7)).size >0) %>
<div class='icon icon-add'> <div class='icon icon-add'>
<%= toggle_link l(:button_bidding_homework), 'put-bid-form' %> <%= toggle_link l(:button_bidding_homework), 'put-bid-form' %>
</div> </div>
<% end %> <% end %>
@ -44,7 +48,10 @@
<div class="bid-user-message" style="border-left: 1px solid rgb(225, 225, 225); margin-left: 20px; padding-left: 20px;"> <div class="bid-user-message" style="border-left: 1px solid rgb(225, 225, 225); margin-left: 20px; padding-left: 20px;">
<table width="100%"> <table width="100%">
<tr> <tr>
<td><%= l(:label_bidding_user_homework) %> : <%= link_to(b_project.user.name, user_path(b_project.user)) %></td> <td><%= l(:label_bidding_user_studentcode) %> : <%= (b_project.user.user_extensions.student_id) %></td>
</tr>
<tr>
<td><%= l(:label_bidding_user_homework) %> : <%= link_to(b_project.user.lastname+b_project.user.firstname, user_path(b_project.user)) %></td>
</tr> </tr>
<tr> <tr>
<td style=" word-wrap: break-word; word-break: break-all"><%= l(:label_bidding_reason_homewrok) %> : <%= b_project.description %></td> <td style=" word-wrap: break-word; word-break: break-all"><%= l(:label_bidding_reason_homewrok) %> : <%= b_project.description %></td>
@ -57,7 +64,7 @@
</table> </table>
<% end %> <% end %>
<% else %> <% else %>
<table width="1000px" border="0" style="padding-left: 15px"> <table width="1000px" border="0" style="padding-left: 15px">
<td class="font_lighter" style="font-size: 15px;"><%= l(:label_bidding_project) %>(<%= @bidding_project.count%>)</td> <td class="font_lighter" style="font-size: 15px;"><%= l(:label_bidding_project) %>(<%= @bidding_project.count%>)</td>
@ -65,12 +72,14 @@
<td> <td>
<div class='icon icon-add'> <div class='icon icon-add'>
<%= toggle_link l(:button_bidding_homework), 'put-bid-form' %> <%= toggle_link l(:label_bid_me), 'put-bid-form' %>
</div> </div>
</td> </td>
<% end %> <% end %>
</table> </table>
<% end %> <% end %>
<% unless @bid.reward_type == 3%>
<%= render :partial=> "list_projects",:locals => {:bidding_project => @bidding_project,:bid => @bid }%> <%= render :partial=> "list_projects",:locals => {:bidding_project => @bidding_project,:bid => @bid }%>
<% end %>

View File

@ -3,11 +3,20 @@
<div class="project-search-block"> <div class="project-search-block">
<table width="100%" valign="center"> <table width="100%" valign="center">
<tr> <tr>
<td width="16%"><span style="margin-left:0px"><%= l(:label_call_list)%></span></td> <td width="16%"><span style="margin-left:0px">
<% if @project_type == '1' %>
作业列表
<% else %>
<%= l(:label_call_list)%>
<% end %></span></td>
<td valign="center"><% if User.current.logged? %> <td valign="center"><% if User.current.logged? %>
<!-- <div class='icon icon-add'> --> <!-- <div class='icon icon-add'> -->
<% if @project_type == '0' %>
<%= link_to(l(:label_new_call), {:controller => 'bids', :action => 'new_bid'}, :class => 'icon_enterprise icon_enterprise-add') %>
<% else %>
<%= link_to(l(:label_new_call), {:controller => 'bids', :action => 'new_bid'}, :class => 'icon icon-add') %> <%= link_to(l(:label_new_call), {:controller => 'bids', :action => 'new_bid'}, :class => 'icon icon-add') %>
<% end %>
<!-- <%= toggle_link l(:label_new_call), 'put-bid-form', {:focus => 'project_id'} %> --> <!-- <%= toggle_link l(:label_new_call), 'put-bid-form', {:focus => 'project_id'} %> -->
<!-- </div> --> <!-- </div> -->
<% end %></td> <% end %></td>
@ -15,7 +24,11 @@
<td align="right"> <td align="right">
<div class="project-search"> <div class="project-search">
<%= text_field_tag 'name', params[:name], :size => 30 %> <%= text_field_tag 'name', params[:name], :size => 30 %>
<% if @project_type == '0'%>
<%= submit_tag l(:label_search), :class => "enterprise", :name => nil %>
<% else %>
<%= submit_tag l(:label_search), :class => "small", :name => nil %> <%= submit_tag l(:label_search), :class => "small", :name => nil %>
<% end %>
</div></td> </div></td>
</tr></table> </tr></table>
</div> </div>
@ -26,8 +39,11 @@
<%= render :partial => 'new_bid' %> <%= render :partial => 'new_bid' %>
</div> </div>
<% end %> <% end %>
<% if @project_type == '0'%>
<%= sort_bid(@s_state)%> <%= sort_bid_enterprise(@s_state, @project_type)%>
<% else %>
<%= sort_bid(@s_state, @project_type)%>
<% end %>
<!-- <div class="pagination" style="border-bottom: 1px solid rgb(223,223,223); width: 95%; margin-left: 2%; margin-top: 15px" > <!-- <div class="pagination" style="border-bottom: 1px solid rgb(223,223,223); width: 95%; margin-left: 2%; margin-top: 15px" >
<ul style="margin-right:0px"> <ul style="margin-right:0px">
<li> <li>

View File

@ -0,0 +1,14 @@
<div id="top-menu" style="background-color: #15bccf;height:40px;margin-top: 10px;margin-bottom: 10px;">
<div class="welcome_logo">
<%=link_to image_tag("/images/logo.png",weight:"36px", height: "36px"), home_path %>
</div>
<div id="account">
<%= render_menu :account_menu -%>
</div>
<%= content_tag('div', "#{link_to(l(:label_layouts_feedback)+'(' + User.current.count_new_jour.to_s + ')', feedback_path(User.current))}".html_safe, :id => 'loggedas') if User.current.logged? %>
<%= content_tag('div', "#{l(:label_logged_as)} #{link_to_user(User.current, :format => :username)}".html_safe, :id => 'loggedas') if User.current.logged? %>
<%= content_tag('div', "#{link_to(l(:lable_college_enterprise), :controller => 'projects', :action =>'index', :project_type => 0)}".html_safe, :id=> 'account-college') %>
<%= render_menu :top_college_menu if User.current.logged? || !Setting.login_required? -%>
</div>
<div style="border-top:solid 1px #C6E9F1;width:940px;margin-left:auto;margin-right:auto;margin-bottom: 5px;margin-top: -10px;"></div>

View File

@ -0,0 +1,45 @@
<!-- <table id="top-menu" style="background-color: #ac344f;margin-top: 10px;margin-bottom: 0px; padding-top: 3px; ">
<tr><td ><%=link_to image_tag("/images/logo_ent.png",weight:"38px", height: "38px"), home_path %></td>
<td valign="top" width="300px"><%= render_menu :top_enterprise_menu if User.current.logged? || !Setting.login_required? -%></td>
<td><%=link_to "企业入口"%></td>
<td valign="top" style=" padding-left: 380px">
<%= content_tag('div', "#{link_to(l(:label_layouts_feedback)+'(' + User.current.count_new_jour.to_s + ')', feedback_path(User.current))}".html_safe, :id => 'loggedas') if User.current.logged? %>
<%= content_tag('div', "#{l(:label_logged_as)} #{link_to_user(User.current, :format => :username)}".html_safe, :id => 'loggedas') if User.current.logged? %>
</td>
<td valign="top">
<%= render_menu :account_menu -%>
</td>
</tr>
</table> -->
<div id="top-menu" style="background-color: #ac344f;height:40px;margin-top: 10px;margin-bottom: 10px;">
<div class="welcome_logo">
<%=link_to image_tag("/images/logo_ent.png",weight:"36px", height: "36px"), home_path %>
</div>
<div id="account">
<%= render_menu :account_menu -%>
</div>
<%= content_tag('div', "#{link_to(l(:label_layouts_feedback)+'(' + User.current.count_new_jour.to_s + ')', feedback_path(User.current))}".html_safe, :id => 'loggedas') if User.current.logged? %>
<%= content_tag('div', "#{l(:label_logged_as)} #{link_to_user(User.current, :format => :username)}".html_safe, :id => 'loggedas') if User.current.logged? %>
<%= content_tag('div', "#{link_to(l(:label_enterprise_college), :controller =>'projects', :action => 'course', :project_type => 1 )}".html_safe, :id=> 'account-enterprise') %>
<%= render_menu :top_enterprise_menu if User.current.logged? || !Setting.login_required? -%>
</div>
<!-- <div style="float: right; margin-top: 13px;">
<%= content_tag('div', "#{link_to(image_tag('/images/mes.png'), feedback_path(User.current))}".html_safe, :title => "留言") if User.current.logged? %>
</div> -->
<!-- <div align="center" style="float: right; margin-right: -25px; margin-top: 6px; background: #ea7125; width: 12px;border-radius:7px; font-size: 8px; color: #fff; font-weight: bold">
<%= User.current.count_new_jour if User.current.logged? && User.current.count_new_jour != 0 %>
</div> -->
<!-- <%= content_tag('div', "#{}".html_safe, :id => 'loggedas')%> -->
<!-- 消息#{link_to((User.current.count_new_jour), feedback_path(User.current))} -->
<!-- <%= content_tag('div', "消息(#{User.current.journals_for_messages.count}".html_safe, :id => 'loggedas')%> -->
<!-- <div style="border-top:solid 1px #C6E9F1;width:940px;margin-left:auto;margin-right:auto;margin-bottom: 5px;margin-top: -10px;"></div> -->

View File

@ -0,0 +1,23 @@
<div id="top-menu" style="background-color: #15bccf;height:40px;margin-top: 10px;margin-bottom: 10px;">
<div class="welcome_logo">
<%=link_to image_tag("/images/logo.png",weight:"36px", height: "36px"), home_path %>
</div>
<div id="account">
<%= render_menu :account_menu -%>
</div>
<%= content_tag('div', "#{link_to(l(:label_layouts_feedback)+'(' + User.current.count_new_jour.to_s + ')', feedback_path(User.current))}".html_safe, :id => 'loggedas') if User.current.logged? %>
<%= content_tag('div', "#{l(:label_logged_as)} #{link_to_user(User.current, :format => :username)}".html_safe, :id => 'loggedas') if User.current.logged? %>
<!-- <div style="float: right; margin-top: 13px;">
<%= content_tag('div', "#{link_to(image_tag('/images/mes.png'), feedback_path(User.current))}".html_safe, :title => "留言") if User.current.logged? %>
</div> -->
<!-- <div align="center" style="float: right; margin-right: -25px; margin-top: 6px; background: #ea7125; width: 12px;border-radius:7px; font-size: 8px; color: #fff; font-weight: bold">
<%= User.current.count_new_jour if User.current.logged? && User.current.count_new_jour != 0 %>
</div> -->
<!-- <%= content_tag('div', "#{}".html_safe, :id => 'loggedas')%> -->
<!-- 消息#{link_to((User.current.count_new_jour), feedback_path(User.current))} -->
<!-- <%= content_tag('div', "消息(#{User.current.journals_for_messages.count}".html_safe, :id => 'loggedas')%> -->
<%= render_menu :top_home_menu if User.current.logged? || !Setting.login_required? -%>
</div>
<div style="border-top:solid 1px #C6E9F1;width:940px;margin-left:auto;margin-right:auto;margin-bottom: 5px;margin-top: -10px;"></div>

View File

@ -19,9 +19,13 @@
<div id="wrapper"> <div id="wrapper">
<div id="wrapper2"> <div id="wrapper2">
<div id="wrapper3"> <div id="wrapper3">
<% if @project_type == '0' %>
<%=render :partial => 'layouts/base_enterprise_header'%>
<% elsif @project_type == '1' %>
<%=render :partial => 'layouts/base_college_header'%>
<% else %>
<%=render :partial => 'layouts/base_header'%> <%=render :partial => 'layouts/base_header'%>
<% end %>
<div id="main" class="nosidebar"> <div id="main" class="nosidebar">
<div id="content_"> <div id="content_">
<%= render_flash_messages %> <%= render_flash_messages %>

View File

@ -20,7 +20,7 @@
<div id="wrapper2"> <div id="wrapper2">
<div id="wrapper3"> <div id="wrapper3">
<%=render :partial => 'layouts/base_header'%> <%=render :partial => 'layouts/base_enterprise_header'%>
<div id="main" class=""> <div id="main" class="">
<div id="sidebar"> <div id="sidebar">
@ -49,7 +49,7 @@
</tr> </tr>
<tr> <tr>
<% if @bid.reward_type.nil? or @bid.reward_type == 1%> <% if @bid.reward_type.nil? or @bid.reward_type == 1%>
<td><%= l(:label_bids_reward_method) %><%= l(:label_call_bonus) %>&nbsp;<%= l(:label_RMB_sign) %><%= @bid.budget%></td> <td><%= l(:label_bids_reward_method) %><span style="color: #ed8924; font-weight: bold"><%= l(:label_call_bonus) %>&nbsp;<%= l(:label_RMB_sign) %><%= @bid.budget%></span></td>
<% elsif @bid.reward_type == 2%> <% elsif @bid.reward_type == 2%>
<td><%= l(:label_bids_reward_method) %><%= @bid.budget%></td> <td><%= l(:label_bids_reward_method) %><%= @bid.budget%></td>
<% else %> <% else %>
@ -67,10 +67,12 @@
<%= link_to l(:label_x_bids_responses, :count => @bid.commit)+"("+@bid.commit.to_s+")", respond_path(@bid)%> <%= link_to l(:label_x_bids_responses, :count => @bid.commit)+"("+@bid.commit.to_s+")", respond_path(@bid)%>
</div> </div>
</div> </div>
<!--tags-->
<div class="user_fans"> <div class="user_fans">
<div class="font_title_left"> <div class="font_title_left">
<strong><%= l(:label_tag) %></strong> <strong><%= l(:label_tag) %></strong>
</div><div class="user_underline"></div> </div>
<div class="user_enterprise_underline"></div>
<table style="font-family:微软雅黑"> <table style="font-family:微软雅黑">
<tr> <tr>
<td><!-- added by william -for tag --> <td><!-- added by william -for tag -->
@ -84,7 +86,7 @@
<div class="font_title_left"> <div class="font_title_left">
<strong><%= l(:label_x_followers, :count => @bid.watcher_users.count) %></strong> <strong><%= l(:label_x_followers, :count => @bid.watcher_users.count) %></strong>
</div> </div>
<div class="user_underline"></div> <div class="user_enterprise_underline"></div>
<div class="left_wf"> <div class="left_wf">
<table> <table>
<tr> <tr>
@ -102,12 +104,12 @@
</table> </table>
</div> </div>
</div> </div>
<!--粉丝--> <!--fans-->
<div class="user_fans"> <div class="user_fans">
<div class="font_title_left"> <div class="font_title_left">
<strong><%= l(:label_bidding_project) %></strong> <strong><%= l(:label_bidding_project) %></strong>
</div> </div>
<div class="user_underline"></div> <div class="user_enterprise_underline"></div>
<div class="left_wf"> <div class="left_wf">
<table> <table>
<tr> <tr>
@ -124,7 +126,7 @@
</table> </table>
</div> </div>
</div> </div>
<!--扩充-->
</div> </div>
@ -133,7 +135,7 @@
</div> </div>
<div id="content"> <div id="content">
<% if display_main_menu?(@bid) %> <% if display_main_menu?(@bid) %>
<div class="tabs_new"> <div class="tabs_new_enterprise">
<%= render_menu :bid_menu %> <%= render_menu :bid_menu %>
</div> </div>
<% end %> <% end %>

View File

@ -20,7 +20,7 @@
<div id="wrapper"> <div id="wrapper">
<div id="wrapper2"> <div id="wrapper2">
<div id="wrapper3"> <div id="wrapper3">
<%= render :partial => 'layouts/base_header'%> <%= render :partial => 'layouts/base_college_header'%>
<div id="main"> <div id="main">
<!--project page--> <!--project page-->
@ -68,9 +68,7 @@
<div class="inf_user_context"> <div class="inf_user_context">
<table style="font-family:微软雅黑" > <table style="font-family:微软雅黑" >
<!-- <tr>
<td valign="top" style="padding-left: 8px;">课程口令:</td><td class="font_lighter_sidebar"><%= @course.state%></td>
</tr> -->
<tr> <tr>
<td valign="top" style="padding-left: 8px;">主讲老师:</td><td class="font_lighter_sidebar"><%= @course.teacher.lastname+@course.teacher.firstname %></td> <td valign="top" style="padding-left: 8px;">主讲老师:</td><td class="font_lighter_sidebar"><%= @course.teacher.lastname+@course.teacher.firstname %></td>

View File

@ -20,7 +20,7 @@
<div id="wrapper2"> <div id="wrapper2">
<div id="wrapper3"> <div id="wrapper3">
<%= render :partial => 'layouts/base_header'%> <%= render :partial => 'layouts/base_college_header'%>
<div id="main" class=""> <div id="main" class="">
<div id="sidebar"> <div id="sidebar">

View File

@ -20,7 +20,7 @@
<div id="wrapper"> <div id="wrapper">
<div id="wrapper2"> <div id="wrapper2">
<div id="wrapper3"> <div id="wrapper3">
<%= render :partial => 'layouts/base_header'%> <%= render :partial => 'layouts/base_enterprise_header'%>
<div id="main"> <div id="main">
<!--project page--> <!--project page-->
@ -68,7 +68,7 @@
</tr> </tr>
</table> </table>
<div class="user_underline"></div> <div class="user_enterprise_underline"></div>
</div> </div>
<!--description--> <!--description-->
@ -83,10 +83,10 @@
<%= textilizable @project.description %> <%= textilizable @project.description %>
</div> </div>
<div class="created_on_project"> <div class="created_on_project">
<strong style="color: #068d9c"><%= l(:label_create_time) %></strong><%= format_time(@project.created_on) %> <strong style="color: #AC344F"><%= l(:label_create_time) %></strong><%= format_time(@project.created_on) %>
</div> </div>
</div> </div>
<div class="user_underline"></div> <div class="user_enterprise_underline"></div>
</div> </div>
<!--tags--> <!--tags-->
@ -100,7 +100,7 @@
<!--tool--> <!--tool-->
<div class="user_underline"></div> <div class="user_enterprise_underline"></div>
<div class="tool"> <div class="tool">
<div class="font_title_left"> <div class="font_title_left">
<%= l(:label_project_tool)%> <%= l(:label_project_tool)%>
@ -108,25 +108,25 @@
<table class="font_tool"> <table class="font_tool">
<tr> <tr>
<td align="left" width="60px" valign="center"><%=image_tag("/images/sidebar/tool_tag2.png", weight:"15px", height:"15px") %> <td align="left" width="60px" valign="center"><%=image_tag("/images/sidebar/tool_tag_enterprise.png", weight:"15px", height:"15px") %>
<%= link_to l(:project_module_documents),project_documents_path(@project) %></td> <%= link_to l(:project_module_documents),project_documents_path(@project) %></td>
<td align="left" width="60px" valign="center"><%=image_tag("/images/sidebar/tool_tag2.png", weight:"15px", height:"15px") %> <td align="left" width="60px" valign="center"><%=image_tag("/images/sidebar/tool_tag_enterprise.png", weight:"15px", height:"15px") %>
<%= link_to l(:project_module_wiki),project_wiki_path(@project) %></td> <%= link_to l(:project_module_wiki),project_wiki_path(@project) %></td>
</tr> </tr>
<tr> <tr>
<td align="left" width="190px" valign="left"><%=image_tag("/images/sidebar/tool_tag2.png", weight:"15px", height:"15px") %> <td align="left" width="190px" valign="left"><%=image_tag("/images/sidebar/tool_tag_enterprise.png", weight:"15px", height:"15px") %>
<%= link_to l(:project_module_calendar),project_calendar_path(@project) %> <%= link_to l(:project_module_calendar),project_calendar_path(@project) %>
</td> </td>
<td align="left" width="190px" valign="left"><%=image_tag("/images/sidebar/tool_tag2.png", weight:"15px", height:"15px") %> <td align="left" width="190px" valign="left"><%=image_tag("/images/sidebar/tool_tag_enterprise.png", weight:"15px", height:"15px") %>
<%= link_to l(:project_module_gantt) ,project_gantt_path(@project) %> <%= link_to l(:project_module_gantt) ,project_gantt_path(@project) %>
</td> </td>
</tr> </tr>
<tr> <tr>
<td align="left" width="190px" valign="left"><%=image_tag("/images/sidebar/tool_tag2.png", weight:"15px", height:"15px") %> <td align="left" width="190px" valign="left"><%=image_tag("/images/sidebar/tool_tag_enterprise.png", weight:"15px", height:"15px") %>
<%= link_to l(:project_module_boards) ,project_boards_path(@project) %> <%= link_to l(:project_module_boards) ,project_boards_path(@project) %>
</td> </td>
<% if @project.identifier == 'trustie' %> <% if @project.identifier == 'trustie' %>
<td align="left" width="190px" valign="left"><%=image_tag("/images/sidebar/tool_tag2.png", weight:"15px", height:"15px") %> <td align="left" width="190px" valign="left"><%=image_tag("/images/sidebar/tool_tag_enterprise.png", weight:"15px", height:"15px") %>
<%= link_to l(:label_project_tool_response) ,project_feedback_path(@project) %> <%= link_to l(:label_project_tool_response) ,project_feedback_path(@project) %>
</td> </td>
<% else %> <% else %>
@ -134,11 +134,11 @@
</tr> </tr>
</table> </table>
</div> </div>
<div class="user_underline"></div> <div class="user_enterprise_underline"></div>
</div> </div>
</div> </div>
<div id="content"> <div id="content">
<div class="tabs_new"> <div class="tabs_new_enterprise">
<%= render_main_menu(@project) %> <%= render_main_menu(@project) %>
</div> </div>
<%= yield %> <%= yield %>

View File

@ -8,6 +8,22 @@
<%= textilizable(project.short_description, :project => project) %> <%= textilizable(project.short_description, :project => project) %>
</p> </p>
</div> </div>
<% if @project_type == '0' %>
<div class="information">
<p class="stats2">
<%= content_tag('span', @project.watcher_users.count, :class => "info") %><%= content_tag('span', l(:label_x_follow_people,:count =>@project.watcher_users.count)) %>
</p>
<p class="stats2">
<%= content_tag('span', "#{@project.users.count}", :class => "info") %><%= content_tag('span', l(:label_x_current_contributors, :count => @project.users.count)) %>
</p>
<p class="stats2">
<%= content_tag('span', "#{(@project.repository.nil? || @project.repository.changesets[0].nil?) ? '0' : distance_of_time_in_words(Time.now, @project.repository.changesets[0].committed_on)}", :class => "info") %><%= content_tag('span', l(:label_since_last_commits)) %>
</p>
<p class="stats2">
<%= content_tag('span', "#{@project.repository.nil? ? '0' : @project.project_status.changesets_count }", :class => "info") %><%= content_tag('span', l(:label_commit_on)) %>
</p>
</div>
<% else %>
<div class="information"> <div class="information">
<p class="stats"> <p class="stats">
<%= content_tag('span', @project.watcher_users.count, :class => "info") %><%= content_tag('span', l(:label_x_follow_people,:count =>@project.watcher_users.count)) %> <%= content_tag('span', @project.watcher_users.count, :class => "info") %><%= content_tag('span', l(:label_x_follow_people,:count =>@project.watcher_users.count)) %>
@ -22,6 +38,7 @@
<%= content_tag('span', "#{@project.repository.nil? ? '0' : @project.project_status.changesets_count }", :class => "info") %><%= content_tag('span', l(:label_commit_on)) %> <%= content_tag('span', "#{@project.repository.nil? ? '0' : @project.project_status.changesets_count }", :class => "info") %><%= content_tag('span', l(:label_commit_on)) %>
</p> </p>
</div> </div>
<% end %>
</div> </div>
<div class="add-info"> <div class="add-info">
<div class="main-language"> <div class="main-language">
@ -50,7 +67,12 @@
<div class="tags"> <div class="tags">
<!-- added by william -for tag --> <!-- added by william -for tag -->
<div id="tags"> <div id="tags">
<% if @project_type == '0' %>
<%= image_tag( "/images/sidebar/tags_enterprise.png") %>
<% else %>
<%= image_tag( "/images/sidebar/tags.png") %> <%= image_tag( "/images/sidebar/tags.png") %>
<% end %>
<%= render :partial => 'tags/tag_name', :locals => {:obj => @project,:object_flag => "2",:non_list_all => true }%> <%= render :partial => 'tags/tag_name', :locals => {:obj => @project,:object_flag => "2",:non_list_all => true }%>
</div> </div>

View File

@ -0,0 +1,67 @@
<% content_for :header_tags do %>
<%= auto_discovery_link_tag(:atom, {:action => 'index', :format => 'atom', :key => User.current.rss_key}) %>
<% end %>
<%= form_tag(:controller => 'projects', :action => 'search', :method => :get) do %>
<div class="project-search-block">
<table width="100%" valign="center">
<tr>
<td width="16%"><span style="margin-left:0px"><%= l(:label_new_course)%></span></td>
<td valign="center"><%= link_to(l(:label_course_new), {:controller => 'projects', :action => 'new', :course => 1, :project_type => @project_type}, :class => 'icon icon-add') if User.current.allowed_to?(:add_project, nil, :global => true) %></td>
<td align="right">
<div class="project-search">
<%= text_field_tag 'name', params[:name], :size => 30 %>
<%= submit_tag l(:label_search), :class => "small", :name => nil %>
</div></td>
</tr>
</table>
</div>
<% end %>
<%= sort_course(@s_type, @project_type)%>
<!-- <div class="pagination_list">
<ul>
<li>
<%= link_to l(:label_sort_by_time), projects_path(:project_sort_type => '0'),:class=>"test_new" %>
</li>
<li>
<%= link_to l(:label_sort_by_active), projects_path(:project_sort_type => '1'),:class=>"test_new" %>
</li>
<li>
<%= link_to l(:label_sort_by_influence), projects_path(:project_sort_type => '2'),:class=>"test_new" %>
</li>
</ul>
</div> -->
<div id="projects-index">
<%= render_project_hierarchy(@projects)%>
</div>
<div class="pagination">
<ul>
<%= pagination_links_full @project_pages %>
</ul>
</div>
<% if User.current.logged? %>
<p style="text-align:right;">
<span class="my-project"><%= l(:label_my_projects) %></span>
</p>
<% end %>
<% other_formats_links do |f| %>
<%= f.link_to 'Atom', :url => {:key => User.current.rss_key} %>
<% end %>
<% content_for :sidebar do %>
<%= form_tag({}, :method => :get) do %>
<h3><%= l(:label_project_plural) %></h3>
<label for="closed"><%= check_box_tag 'closed', 1, params[:closed] %> <%= l(:label_show_closed_projects) %></label>
<p>
<%= submit_tag l(:button_apply), :class => 'button-small', :name => nil %>
</p>
<% end %>
<% end %>
<% html_title(l(:label_project_plural)) -%>

View File

@ -7,19 +7,31 @@
<table width="100%" valign="center"> <table width="100%" valign="center">
<tr> <tr>
<td width="16%"><span style="margin-left:0px"><%= l(:label_project_plural)%></span></td> <td width="16%"><span style="margin-left:0px"><%= l(:label_project_plural)%></span></td>
<td valign="center"><%= link_to(l(:label_project_new), {:controller => 'projects', :action => 'new', :course => 0}, :class => 'icon icon-add') if User.current.allowed_to?(:add_project, nil, :global => true) %></td> <% if @project_type == '0' %>
<td valign="center"><%= link_to(l(:label_course_new), {:controller => 'projects', :action => 'new', :course => 1}, :class => 'icon icon-add') if User.current.allowed_to?(:add_project, nil, :global => true) %></td> <td valign="center"><%= link_to(l(:label_project_new), {:controller => 'projects', :action => 'new', :course => 0, :project_type => @project_type}, :class => 'icon_enterprise icon_enterprise-add') if User.current.allowed_to?(:add_project, nil, :global => true) %></td>
<% else %>
<td valign="center"><%= link_to(l(:label_project_new), {:controller => 'projects', :action => 'new', :course => 0, :project_type => @project_type}, :class => 'icon icon-add') if User.current.allowed_to?(:add_project, nil, :global => true) %></td>
<% end %>
<td align="right"> <td align="right">
<div class="project-search"> <div class="project-search">
<%= text_field_tag 'name', params[:name], :size => 30 %> <%= text_field_tag 'name', params[:name], :size => 30 %>
<% if @project_type == '0' %>
<%= submit_tag l(:label_search), :class => "enterprise", :name => nil %>
<% else %>
<%= submit_tag l(:label_search), :class => "small", :name => nil %> <%= submit_tag l(:label_search), :class => "small", :name => nil %>
<% end %>
</div></td> </div></td>
</tr> </tr>
</table> </table>
</div> </div>
<% end %> <% end %>
<% if @project_type == '0' %>
<%= sort_project(@s_type)%> <%= sort_project_enterprise(@s_type, @project_type) %>
<% else %>
<%= sort_project(@s_type, @project_type) %>
<% end %>
<!--end-->
<!-- <div class="pagination_list"> <!-- <div class="pagination_list">
<ul> <ul>
<li> <li>

View File

@ -79,12 +79,20 @@
</legend> --> </legend> -->
<div class="project-search"> <div class="project-search">
<%= text_field_tag 'name', params[:name], :size => 30 %> <%= text_field_tag 'name', params[:name], :size => 30 %>
<% if @project_type == '0' %>
<%= submit_tag l(:label_search), :class => "enterprise", :name => nil %><!--Modified by young-->
<% else %>
<%= submit_tag l(:label_search), :class => "small", :name => nil %><!--Modified by young--> <%= submit_tag l(:label_search), :class => "small", :name => nil %><!--Modified by young-->
<% end %>
<!-- </fieldset> --> <!-- </fieldset> -->
<% end %> <% end %>
</div> </div>
</div> </div>
<%= sort_user(@s_type)%> <% if @project_type == '0' %>
<%= sort_user_enterprise(@s_type, @project_type)%>
<% else %>
<%= sort_user(@s_type, @project_type)%>
<% end %>
<!-- <div class="pagination" style="border-bottom: 1px solid rgb(223,223,223); width: 95%; margin-left: 2%; margin-top: 0px"> <!-- <div class="pagination" style="border-bottom: 1px solid rgb(223,223,223); width: 95%; margin-left: 2%; margin-top: 0px">
<ul style="margin-right:0px"> <ul style="margin-right:0px">

View File

@ -251,24 +251,23 @@ software development and software crowdsourcing.</td></tr>
<tr><td colspan="5" align="center" ><div class="homepage_underline"></div></td></tr> <tr><td colspan="5" align="center" ><div class="homepage_underline"></div></td></tr>
<tr><td colspan="5" align="center"> <tr><td colspan="5" align="center">
<div id="put-bid-form" style="display: none"> <div id="put-bid-form" style="display: none">
<%= form_for('new_form', :method => :post, <%= form_for('new_form', :method => :post,
:url => {:controller => 'words', :action => 'add_project_respond'}) do |f|%> :url => {:controller => 'words', :action => 'add_project_respond'}) do |f|%>
<table border="0" width="525px" align="center" >
<table border="0" width="525px" align="center" >
<tr> <tr>
<td><%= f.text_area 'project_message', :rows => 3, :cols => 65, :value => "#{l(:label_welcome_my_respond)}", :onfocus => "clearInfo('new_form_project_message','#{l(:label_welcome_my_respond)}')", :onblur => "showInfo('new_form_project_message','#{l(:label_welcome_my_respond)}')", :style => "resize: none;", :class => 'noline'%></td> <td><%= f.text_area 'project_message', :rows => 3, :cols => 65, :value => "#{l(:label_welcome_my_respond)}", :onfocus => "clearInfo('new_form_project_message','#{l(:label_welcome_my_respond)}')", :onblur => "showInfo('new_form_project_message','#{l(:label_welcome_my_respond)}')", :style => "resize: none;", :class => 'noline'%></td>
</tr> </tr>
</table> </table>
<table border="0" width="525px" align="center"> <table border="0" width="525px" align="center">
<tr> <tr>
<td align="right"> <%= submit_tag l(:button_submit), :name => nil , :class => "bid_btn" %></td> <td align="right"> <%= submit_tag l(:button_submit), :name => nil , :class => "bid_btn" %></td>
</tr> </tr>
</table> </table>
<% end %> <% end %>
</div> </div></td>
</td></tr> </tr>
<tr align="center"> <!-- <tr align="center">
<td><%= link_to image_tag("/images/welcome/1.png", weight:"190px", height:"190px"), :controller => 'projects', :action => 'index' %></td> <td><%= link_to image_tag("/images/welcome/1.png", weight:"190px", height:"190px"), :controller => 'projects', :action => 'index' %></td>
<td width="65"></td> <td width="65"></td>
<td><%= link_to image_tag("/images/welcome/2.png", weight:"190px", height:"190px"), :controller => 'bids', :action => 'index' %></td> <td><%= link_to image_tag("/images/welcome/2.png", weight:"190px", height:"190px"), :controller => 'bids', :action => 'index' %></td>
@ -283,19 +282,27 @@ software development and software crowdsourcing.</td></tr>
<td>&nbsp;</td> <td>&nbsp;</td>
<td><p class="font_welcome"><%= l(:label_create_course) %></p></td> <td><p class="font_welcome"><%= l(:label_create_course) %></p></td>
</tr> --> </tr> -->
<tr align="center" class="font_lighter2" > <!-- <tr align="center" class="font_lighter2" >
<td width="190"><%= l(:label_create_new_projects_description) %></td> <td width="190"><%= l(:label_create_new_projects_description) %></td>
<td width="65"></td> <td width="65"></td>
<td width="190"><%= l(:label_call_for_bids_description) %></td> <td width="190"><%= l(:label_call_for_bids_description) %></td>
<td width="65"></td> <td width="65"></td>
<td width="190"><%= l(:label_create_course_description) %></td> <td width="190"><%= l(:label_create_course_description) %></td>
</tr> -->
<tr align="center" >
<td style="width: 300px;height:200px; background-color: #AC344F; font-size: 24px;"><%=link_to l(:label_enterprise), :controller=>'projects', :action=>'index', :project_type => 0 %></td>
<td></td>
<td></td>
<td></td>
<td style="width: 300px;height:200px; background-color: #0099cc; font-size: 24px;"><%=link_to l(:label_college), :controller=>'projects', :action=>'course', :project_type => 1 %></td>
</tr> </tr>
<tr> <tr>
<td colspan="5"><div class="font_welcome_feature"> <td colspan="5"><div class="font_welcome_feature">
<div align="center"> <div align="center">
<%= l(:label_features) %> <div class="user_underline3"></div> <%= l(:label_features) %> <div class="user_underline3"></div>
</div> </div>
</div></td> </div></td>
</tr> </tr>
<tr class="font_welcome" align="center"> <tr class="font_welcome" align="center">
<td width="190"><%= image_tag("/images/welcome/discuss.png", weight:"30px", height: "26px") %><span style="vertical-align: top"><%= l(:label_board) %></span></td> <td width="190"><%= image_tag("/images/welcome/discuss.png", weight:"30px", height: "26px") %><span style="vertical-align: top"><%= l(:label_board) %></span></td>

View File

@ -503,6 +503,8 @@ zh:
label_home: 主页 label_home: 主页
#by young #by young
label_requirement: 需求 label_requirement: 需求
label_new_course: 课程
label_new_homework: 作业
label_requirement_focus: 关注需求 label_requirement_focus: 关注需求
label_developer: 用户 label_developer: 用户
label_investor: 投资人: label_investor: 投资人:
@ -523,6 +525,10 @@ zh:
label_user_login_tips: 您还没有登录,请登录后留言 label_user_login_tips: 您还没有登录,请登录后留言
#end #end
#by huang # modified by bai #by huang # modified by bai
label_college: 高校进入
label_enterprise_college: 进入高校
label_enterprise: 企业进入
lable_college_enterprise: 进入企业
label_term: 学期 label_term: 学期
label_spring: 春季学期 label_spring: 春季学期
label_summer: 夏季学期 label_summer: 夏季学期
@ -962,7 +968,7 @@ zh:
text_caracters_maximum: "最多 %{count} 个字符。" text_caracters_maximum: "最多 %{count} 个字符。"
text_caracters_minimum: "至少需要 %{count} 个字符。" text_caracters_minimum: "至少需要 %{count} 个字符。"
text_length_between: "长度必须在 %{min} 到 %{max} 个字符之间。" text_length_between: "长度必须在 %{min} 到 %{max} 个字符之间。"
text_command: 口令仅数字可以使用,学生或其他成员申请加入课程时候需要使用该口令,该口令可以由老师在课堂上公布。 text_command: 学生或其他成员申请加入课程时候需要使用该口令,该口令可以由老师在课堂上公布。
text_tracker_no_workflow: 此跟踪标签未定义工作流程 text_tracker_no_workflow: 此跟踪标签未定义工作流程
text_unallowed_characters: 非法字符 text_unallowed_characters: 非法字符
text_comma_separated: 可以使用多个值(用逗号,分开)。 text_comma_separated: 可以使用多个值(用逗号,分开)。
@ -1275,6 +1281,7 @@ zh:
field_homework_type: 作业类型 field_homework_type: 作业类型
label_homework_respond: 作业情况 label_homework_respond: 作业情况
label_bid_me: 我要应标
label_new_call: 发布需求 label_new_call: 发布需求
label_user_information: "与我相关" label_user_information: "与我相关"
label_bid_succeed: "需求发布成功" label_bid_succeed: "需求发布成功"
@ -1360,6 +1367,7 @@ zh:
label_jion_bidding_homework: 已提交! label_jion_bidding_homework: 已提交!
label_bidding_user: 应标人: label_bidding_user: 应标人:
label_bidding_user_homework: 作业提交者 label_bidding_user_homework: 作业提交者
label_bidding_user_studentcode: 学号
label_bidding_reason: 应标宣言: label_bidding_reason: 应标宣言:
label_bidding_reason_homewrok: 作业提交说明 label_bidding_reason_homewrok: 作业提交说明
label_username: 用户名: label_username: 用户名:

View File

@ -158,6 +158,7 @@ RedmineApp::Application.routes.draw do
# match '/investor', :controller => 'projects', :action => 'investor', :as => 'investor', :via => :get # match '/investor', :controller => 'projects', :action => 'investor', :as => 'investor', :via => :get
match '/homework', :controller => 'projects', :action => 'homework', :as => 'homework', :via => :get match '/homework', :controller => 'projects', :action => 'homework', :as => 'homework', :via => :get
# match '/activity', :controller => 'activities', :action => 'index', :as => 'activity', :via => :get # match '/activity', :controller => 'activities', :action => 'index', :as => 'activity', :via => :get
# match '/repository', :controller => 'repositories', :action => 'show', :repository_id => nil, :path => nil, :rev => nil, :as => 'repository', :via => :get # match '/repository', :controller => 'repositories', :action => 'show', :repository_id => nil, :path => nil, :rev => nil, :as => 'repository', :via => :get
# match '/', :controller => 'projects', :action => 'show', :as => 'project_show', :via => :get # match '/', :controller => 'projects', :action => 'show', :as => 'project_show', :via => :get
@ -455,6 +456,7 @@ RedmineApp::Application.routes.draw do
match 'new_join', :to => 'projects#new_join', :as => 'try_join' match 'new_join', :to => 'projects#new_join', :as => 'try_join'
match 'projects/:id/respond', :to => 'projects#project_respond', :via => :post match 'projects/:id/respond', :to => 'projects#project_respond', :via => :post
match 'calls/:id/manage',:to => 'bids#manage',:via => [:get,:post] match 'calls/:id/manage',:to => 'bids#manage',:via => [:get,:post]
match 'project/course', :to => 'projects#course', :as => 'course'
#added by william #added by william
# match 'calls/:id/set_results',:controller => 'bids', :action => 'set_results',:via => [:get,:post],:as => 'set_results' # match 'calls/:id/set_results',:controller => 'bids', :action => 'set_results',:via => [:get,:post],:as => 'set_results'

View File

@ -0,0 +1,5 @@
class AddProjectTypeToProjectStatuses < ActiveRecord::Migration
def change
add_column :project_statuses, :project_type, :integer
end
end

View File

@ -0,0 +1,5 @@
class AddPasswordToCourses < ActiveRecord::Migration
def change
add_column :courses, :password, :string
end
end

View File

@ -11,7 +11,7 @@
# #
# It's strongly recommended to check this file into your version control system. # It's strongly recommended to check this file into your version control system.
ActiveRecord::Schema.define(:version => 20130926005448) do ActiveRecord::Schema.define(:version => 20130927011824) do
create_table "a_user_watchers", :force => true do |t| create_table "a_user_watchers", :force => true do |t|
t.string "name" t.string "name"
@ -180,6 +180,7 @@ ActiveRecord::Schema.define(:version => 20130926005448) do
t.string "location" t.string "location"
t.string "term" t.string "term"
t.string "string" t.string "string"
t.string "password"
end end
create_table "custom_fields", :force => true do |t| create_table "custom_fields", :force => true do |t|
@ -507,6 +508,7 @@ ActiveRecord::Schema.define(:version => 20130926005448) do
t.integer "changesets_count" t.integer "changesets_count"
t.integer "watchers_count" t.integer "watchers_count"
t.integer "project_id" t.integer "project_id"
t.integer "project_type"
end end
add_index "project_statuses", ["changesets_count"], :name => "index_project_statuses_on_changesets_count" add_index "project_statuses", ["changesets_count"], :name => "index_project_statuses_on_changesets_count"

View File

@ -208,6 +208,46 @@ Redmine::MenuManager.map :top_menu do |menu|
# menu.push :help, Redmine::Info.help_url, :last => true # menu.push :help, Redmine::Info.help_url, :last => true
end end
#end #end
# by huang
Redmine::MenuManager.map :top_home_menu do |menu|
menu.push :home, :home_path
menu.push :projects, { :controller => 'projects', :action => 'index' }, :caption => :label_project_plural
menu.push :developer, {:controller => 'users', :action => 'index'}
# menu.push :investor, :home_path
# menu.push :theme, :home_path
# menu.push :my_page, { :controller => 'my', :action => 'page' }, :if => Proc.new { User.current.logged? }
# menu.push :administration, { :controller => 'admin', :action => 'index' }, :if => Proc.new { User.current.admin? }, :last => true
# menu.push :help, Redmine::Info.help_url, :last => true
end
Redmine::MenuManager.map :top_enterprise_menu do |menu|
menu.push :home, :home_path
menu.push :projects, { :controller => 'projects', :action => 'index', :project_type => 0 }, :caption => :label_project_plural
menu.push :requirement, {:controller => 'bids', :action => 'index', :project_type => 0 }
menu.push :developer, {:controller => 'users', :action => 'index', :project_type => 0 }
# menu.push :investor, :home_path
# menu.push :theme, :home_path
# menu.push :my_page, { :controller => 'my', :action => 'page' }, :if => Proc.new { User.current.logged? }
# menu.push :administration, { :controller => 'admin', :action => 'index' }, :if => Proc.new { User.current.admin? }, :last => true
# menu.push :help, Redmine::Info.help_url, :last => true
end
Redmine::MenuManager.map :top_college_menu do |menu|
menu.push :home, :home_path
menu.push :new_course, {:controller => 'projects', :action => 'course', :project_type => 1 }
menu.push :new_homework, {:controller => 'bids', :action => 'index', :project_type => 1 }
menu.push :projects, { :controller => 'projects', :action => 'index', :project_type => 1 }, :caption => :label_project_plural
menu.push :developer, {:controller => 'users', :action => 'index', :project_type => 1 }
# menu.push :investor, :home_path
# menu.push :theme, :home_path
# menu.push :my_page, { :controller => 'my', :action => 'page' }, :if => Proc.new { User.current.logged? }
# menu.push :administration, { :controller => 'admin', :action => 'index' }, :if => Proc.new { User.current.admin? }, :last => true
# menu.push :help, Redmine::Info.help_url, :last => true
end
# end
Redmine::MenuManager.map :account_menu do |menu| Redmine::MenuManager.map :account_menu do |menu|
menu.push :login, :signin_path, :if => Proc.new { !User.current.logged? } 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 :register, :register_path, :if => Proc.new { !User.current.logged? && Setting.self_registration? }

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.4 KiB

BIN
public/images/logo2.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 30 KiB

BIN
public/images/logo3.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 30 KiB

BIN
public/images/logo4.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 30 KiB

BIN
public/images/logo_ent.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 30 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.2 KiB

View File

@ -11,6 +11,11 @@ h4 {border-bottom: 1px dotted #bbb;}
/*new by huang*/ /*new by huang*/
/**/ /**/
.enterprise{
padding-left: 400px;
padding-top: 10px;
}
.project_avatar_name { .project_avatar_name {
position: relative; position: relative;
font-size: 16px; font-size: 16px;
@ -370,6 +375,16 @@ ul.tool li{list-style-type:none;
background-color:#15bccf; background-color:#15bccf;
overflow:hidden overflow:hidden
} }
.user_enterprise_underline{
margin:1;
padding:1;
width:240px;
height:1px;
background-color:#ac344f;
overflow:hidden
}
.user_underline2{ .user_underline2{
margin:1; margin:1;
padding:1; padding:1;
@ -660,6 +675,19 @@ ul.newprojects2 li{
} }
#account {float:right;} #account {float:right;}
#account-enterprise{
float: right;
padding-top: 10px;
padding-right: 347px;
}
#account-college{
float: right;
padding-top: 10px;
padding-right: 302px;
}
#header {min-height:5.3em;margin:0;background-color:#628DB6;color:#f8f8f8; padding: 4px 8px 20px 6px; position:relative;} #header {min-height:5.3em;margin:0;background-color:#628DB6;color:#f8f8f8; padding: 4px 8px 20px 6px; position:relative;}
#header a {color:#f8f8f8;} #header a {color:#f8f8f8;}
@ -1462,79 +1490,6 @@ p.progress-info {clear: left; font-size: 80%; margin-top:-4px; color:#777;}
#roadmap table.progress td { height: 1.2em; } #roadmap table.progress td { height: 1.2em; }
/***** Tabs *****/ /***** Tabs *****/
/**
#content .tabs_new {height: 2.6em; margin-bottom:1.2em; margin-top: 0.8em; position:relative; overflow:hidden;}
#content .tabs_new ul {margin:0; position:absolute; bottom:0; padding-left: 0.5em; width: 2000px; border-bottom: 1px solid #15BCCF;}
#content .tabs_new ul li {
width:75px;
float:left;
list-style-type:none;
white-space:nowrap;
margin-right:4px;
background:#fff;
position:relative;
margin-bottom:-1px;
}
#content .tabs_new ul li a{
display:block;
font-size: 14px;
text-decoration:none;
line-height:1.2em;
padding-top: 6px;
padding-bottom: 2px;
text-align: center;
border: 1px solid #15BCCF;
border-bottom: 0px solid #15BCCF;
background-color: #fff;
color:#999;
font-weight:bold;
border-top-left-radius:4px;
border-top-right-radius:4px;
}
**/
/*added by huang*/
/*.pagination_list{height: 3em; margin-bottom:1.2em; position:relative; overflow:hidden;}
.pagination_list ul{margin:0; position:absolute; bottom:0; padding-left:0.5em; width:2000px; border-bottom: 1px solid #15BCCF;}
.pagination_list ul li{
float:left;
list-style-type:none;
white-space:nowrap;
margin-right:4px;
background:#fff;
position:relative;
margin-bottom:-1px;
}
.test_new{
background: #000;
color: #000;
padding-bottom: -1px;
}
.pagination_list ul li a{
border: 1px solid #15BCCF;
display:block;
font-size: 0.9em;
text-decoration: none;
line-height:1.3em;
padding:2px 6px 2px 6px;
background-color:#fff;
color:#606060;
font-weight:bold;
border-top-left-radius:3px;
border-top-right-radius:3px;
}
.pagination_list ul li a:hover{background-color: #E2F4FF;
text-decoration:none;
margin-bottom:-1px;}
.pagination_list ul li a.selected{
background-color: #000;
border: 1px solid #000;
border-bottom: 1px solid #000;
color:#111;
}
.pagination_list ul li a.selected:hover {background-color: #000;}*/
/*end*/
#content .tabs {height: 2.6em; margin-bottom:1.2em; position:relative; overflow:hidden;} #content .tabs {height: 2.6em; margin-bottom:1.2em; position:relative; overflow:hidden;}
#content .tabs ul {margin:0; position:absolute; bottom:0; padding-left:0.5em; font-family: 14px; width:2000px; border-bottom: 1px solid #15BCCF;} #content .tabs ul {margin:0; position:absolute; bottom:0; padding-left:0.5em; font-family: 14px; width:2000px; border-bottom: 1px solid #15BCCF;}
#content .tabs ul li { #content .tabs ul li {
@ -1547,7 +1502,6 @@ p.progress-info {clear: left; font-size: 80%; margin-top:-4px; color:#777;}
margin-bottom:-1px; margin-bottom:-1px;
} }
#content .tabs ul li a{ #content .tabs ul li a{
display:block; display:block;
font-size: 14px; font-size: 14px;
text-decoration: none; text-decoration: none;
@ -1622,7 +1576,6 @@ button.tab-right {
padding-top: 6px; padding-top: 6px;
padding-bottom: 2px; padding-bottom: 2px;
text-align: center; text-align: center;
border: 1px solid #15BCCF; border: 1px solid #15BCCF;
/*border-bottom: 0px solid #15BCCF;*/ /*border-bottom: 0px solid #15BCCF;*/
@ -1671,6 +1624,79 @@ button.tab_new-right {
background: #eeeeee url(../images/bullet_arrow_right.png) no-repeat 50% 50%; background: #eeeeee url(../images/bullet_arrow_right.png) no-repeat 50% 50%;
border-top-right-radius:3px; border-top-right-radius:3px;
} }
/*added by huang*/
#content .tabs_new_enterprise {height: 2.6em; margin-bottom:1.2em; margin-top: 0.8em; position:relative; overflow:hidden;}
#content .tabs_new_enterprise ul {margin:0; position:absolute; bottom:0; padding-left: 0.5em; width: 2000px; border-bottom: 1px solid #ac344f;font-size:14px;}
#content .tabs_new_enterprise ul li {
width:85px; /*modified by linchun*/
float:left;
list-style-type:none;
white-space:nowrap;
margin-right:4px;
background:#fff;
position:relative;
margin-bottom:-1px;
}
#content .tabs_new_enterprise ul li a{
display:block;
font-size: 15px;
text-decoration:none;
line-height:1.2em;
padding-top: 6px;
padding-bottom: 2px;
text-align: center;
border: 1px solid #b60003;
/*border-bottom: 0px solid #15BCCF;*/
color:#606060;
font-weight:bold;
border-top-left-radius:4px;
border-top-right-radius:4px;
}
#content .tabs_new_enterprise ul li a:hover {
background-color: #cda3ad;
text-decoration:none;
}
#content .tabs_new_enterprise ul li a.selected {
background-color: #9f4056; # added by bai
border: 1px solid #ac344f;
border-bottom: 1px solid #fff;
color:#FFF;
}
#content .tabs_new_enterprise ul li a.selected:hover {background-color: #ac344f;}
div.tabs_new_enterprise-buttons { position:absolute; right: 0; width: 48px; height: 24px; background: white; bottom: 0; border-bottom: 1px solid #bbbbbb; }
button.tabs_new_enterprise-left, button.tabs_new_enterprise-right {
font-size: 0.9em;
cursor: pointer;
height:24px;
border: 1px solid #ccc;
border-bottom: 1px solid #bbbbbb;
position:absolute;
padding:4px;
width: 20px;
bottom: -1px;
}
button.tabs_new_enterprise-left {
right: 20px;
background: #eeeeee url(../images/bullet_arrow_left.png) no-repeat 50% 50%;
border-top-left-radius:3px;
}
button.tabs_new_enterprise-right {
right: 0;
background: #eeeeee url(../images/bullet_arrow_right.png) no-repeat 50% 50%;
border-top-right-radius:3px;
}
/*end*/
/*added by huang*/ /*added by huang*/
#content_ .tabs {height: 3.5em; margin-bottom:1.2em; position:relative; overflow:hidden;} #content_ .tabs {height: 3.5em; margin-bottom:1.2em; position:relative; overflow:hidden;}
#content_ .tabs ul {margin:0; position:absolute; bottom:0; padding-left:0.5em; width:2000px; border-bottom: 1px solid #15BCCF;font-size:14px;} #content_ .tabs ul {margin:0; position:absolute; bottom:0; padding-left:0.5em; width:2000px; border-bottom: 1px solid #15BCCF;font-size:14px;}
@ -1686,7 +1712,7 @@ button.tab_new-right {
#content_ .tabs ul li a{ #content_ .tabs ul li a{
display:block; display:block;
font-size: 14px; font-size: 13px;
text-decoration: none; text-decoration: none;
line-height:1.3em; line-height:1.3em;
padding:4px 6px 4px 6px; padding:4px 6px 4px 6px;
@ -1711,6 +1737,47 @@ button.tab_new-right {
#content_ .tabs ul li a.selected:hover {background-color: #E2F4FF;} #content_ .tabs ul li a.selected:hover {background-color: #E2F4FF;}
/*end*/ /*end*/
/*added by huang*/
#content_ .tabs_enterprise {height: 3.5em; margin-bottom:1.2em; position:relative; overflow:hidden;}
#content_ .tabs_enterprise ul {margin:0; position:absolute; bottom:0; padding-left:0.5em; width:2000px; border-bottom: 1px solid #bc7787;font-size:14px;}
#content_ .tabs_enterprise ul li {
float:left;
list-style-type:none;
white-space:nowrap;
margin-right:0px;
background:#fff;
position:relative;
margin-bottom:-1px;
}
#content_ .tabs_enterprise ul li a{
display:block;
font-size: 13px;
text-decoration: none;
line-height:1.3em;
padding:4px 6px 4px 6px;
background-color:#fff;
color:#606060;
font-weight:bold;
border-top-left-radius:3px;
border-top-right-radius:3px;
}
#content_ .tabs_enterprise ul li a:hover {
background-color: #fff;
text-decoration:none;
}
#content_ .tabs_enterprise ul li a.selected {
background-color: #fff;
border: 1px solid #bc7787;
border-bottom: 1px solid #fff;
color:#111;
}
#content_ .tabs_enterprise ul li a.selected:hover {background-color: #E2F4FF;}
/*end*/
/*end*/
/***** Diff *****/ /***** Diff *****/
.diff_out { background: #fcc; } .diff_out { background: #fcc; }
.diff_out span { background: #faa; } .diff_out span { background: #faa; }
@ -1878,6 +1945,15 @@ a.close-icon:hover {background-image:url('../images/close_hl.png');}
padding-top: 2px; padding-top: 2px;
padding-bottom: 3px; padding-bottom: 3px;
} }
.icon_enterprise {
background-position: 0% 50%;
background-repeat: no-repeat;
font-family: '微软雅黑'; /*modify by men*/
padding-left: 20px;
padding-top: 2px;
padding-bottom: 3px;
}
.icon_enterprise-add { background-image: url(../images/add_enterprise.png); }
.icon-add { background-image: url(../images/add.png); } .icon-add { background-image: url(../images/add.png); }
.icon-edit { background-image: url(../images/edit.png); } .icon-edit { background-image: url(../images/edit.png); }
.icon-copy { background-image: url(../images/copy.png); } .icon-copy { background-image: url(../images/copy.png); }

View File

@ -363,6 +363,11 @@ ul.projects li.root
color: #000000; color: #000000;
} }
/* huang*/
/**/
#top-menu #top-menu
{ {
background-color:#fff; /*顶层导航颜色*/ background-color:#fff; /*顶层导航颜色*/
@ -397,7 +402,7 @@ ul.projects li.root
#top-menu li a #top-menu li a
{ {
/*by young*/ /*by young*/
color:#fff; color:#fff; /*the color of the fonts*/
font-weight:6px; font-weight:6px;
padding:4px 3px padding:4px 3px
} }
@ -446,6 +451,40 @@ ul.projects li.root
min-height:800px; min-height:800px;
} }
/*by huang*/
#sidebar-enterprise
{
width:240px;
height: auto;
background:#fff;
margin-bottom: 30px;
border-right:1px solid #f0c082;
overflow:auto;
-moz-box-shadow:#C6E9F1 1px 1px 2px;
-webkit-box-shadow:2px 2px 0px -2px #C6E9F1;
}
#sidebar-enterprise a,#sidebar-enterprise a.selected
{
display:inline-block;
padding:4px 4px 4px 21px !important;
transition:all .2s linear;
-moz-transition:all .2s linear;
-o-transition:all .2s linear;
-webkit-transition:all .2s linear;
}
#sidebar-enterprise a.selected
{
padding-top:2px;
padding-bottom:2px;
background-position:2px 5px;
margin:auto;
color:#a0a0a0;
font-weight:600
}
/*end*/
#sidebar #sidebar
{ {
@ -1141,8 +1180,8 @@ a.root {
padding-bottom: 10px; padding-bottom: 10px;
margin-bottom: 0px; margin-bottom: 0px;
/*background-color: #f5f5f5;*/ /*background-color: #f5f5f5;*/
border-bottom: 1px solid #eee; border-bottom: 1px solid #e3c3ca;
border-bottom: 1px solid rgba(0, 0, 0, 0.05); border-bottom: 1px solid #e3c3ca;
/*-webkit-border-radius: 4px; /*-webkit-border-radius: 4px;
-moz-border-radius: 4px; -moz-border-radius: 4px;
border-radius: 4px; border-radius: 4px;
@ -1204,6 +1243,15 @@ a.img-tag3{
color: rgb(17, 102, 153); color: rgb(17, 102, 153);
} }
.stats2 span.info {
width: 145px;
text-align: right;
display: inline-block;
font-weight: bold;
font-size: 1.2em;
color: #ac344f;
}
.stats span { .stats span {
margin-left: 10px; margin-left: 10px;
} }
@ -1671,7 +1719,7 @@ div.project-search-block {
padding: 10px; padding: 10px;
width: 95%; width: 95%;
border-top 1px solid rgb(242,242,242); border-top 1px solid rgb(242,242,242);
border-bottom: 1px solid rgb(223, 223, 223); /*border-bottom: 1px solid rgb(223, 223, 223);*/
margin-left: auto; margin-left: auto;
margin-right: auto; margin-right: auto;
} }
@ -1686,8 +1734,19 @@ div.project-search {
float: right; float: right;
margin-right: 28px; margin-right: 28px;
} }
div.project-search input[type="submit"] { input.enterprise[type="submit"] {
width: 40px; padding-bottom: 5px;
width: 50px;
height: 25px;
font-family: '微软雅黑',Arial,Helvetica,sans-serif;
font-size: 12px;
color: #fff;
padding: 0px;
background: #ac344f;
border: 1px solid #ac344f;
}
input[type="submit"] {
width: auto;
font-family: '微软雅黑',Arial,Helvetica,sans-serif; font-family: '微软雅黑',Arial,Helvetica,sans-serif;
font-size: 12px; font-size: 12px;
color: rgb(5, 5, 5); color: rgb(5, 5, 5);