Merge branch 'szzh' into develop
This commit is contained in:
commit
be0eddd304
|
@ -125,7 +125,6 @@ GEM
|
|||
mocha (1.1.0)
|
||||
metaclass (~> 0.0.1)
|
||||
multi_json (1.10.1)
|
||||
mysql2 (0.3.11)
|
||||
mysql2 (0.3.11-x86-mingw32)
|
||||
net-ldap (0.3.1)
|
||||
nokogiri (1.6.3)
|
||||
|
|
|
@ -88,3 +88,12 @@ bundle exec rake db:migrate:down VERSION=20140811022947
|
|||
bundle exec rake db:migrate:up VERSION=20140811022947
|
||||
bundle exec rake db:migrate
|
||||
bundle exec rake project_score:calculate
|
||||
=================================[2014-10-17]====================================
|
||||
kw:数据迁移,web_footer_oranizers表已存在
|
||||
bundle exec rake db:migrate:down VERSION=20141013014908
|
||||
bundle exec rake db:migrate:up VERSION=20141013014908
|
||||
bundle exec rake db:migrate
|
||||
kw:数据迁移,web_footer_companies表已存在
|
||||
bundle exec rake db:migrate:down VERSION=20141013023400
|
||||
bundle exec rake db:migrate:up VERSION=20141013023400
|
||||
bundle exec rake db:migrate
|
||||
|
|
|
@ -159,7 +159,7 @@ class AdminController < ApplicationController
|
|||
respond_to do |format|
|
||||
flash[:notice] = l(:notice_successful_update)
|
||||
format.html {
|
||||
redirect_to admin_first_page_made_url
|
||||
redirect_to first_page_made_url
|
||||
}
|
||||
format.api { render_api_ok }
|
||||
#format.json { render json: @first_page, status: :created, location: @first_page }
|
||||
|
@ -194,7 +194,7 @@ class AdminController < ApplicationController
|
|||
respond_to do |format|
|
||||
format.html {
|
||||
flash[:notice] = l(:notice_successful_update)
|
||||
redirect_to admin_course_page_made_url
|
||||
redirect_to course_page_made_url
|
||||
}
|
||||
format.api { render_api_ok }
|
||||
end
|
||||
|
@ -217,25 +217,21 @@ class AdminController < ApplicationController
|
|||
if request.get?
|
||||
@contest_page = FirstPage.find_by_page_type('contest')
|
||||
@first_page = FirstPage.find_by_page_type('project')
|
||||
@notification = ContestNotification.first;
|
||||
elsif request.post?
|
||||
@first_page = FirstPage.find_by_page_type('project')
|
||||
@contest_page = FirstPage.find_by_page_type('contest')
|
||||
@notification = ContestNotification.first;
|
||||
@first_page.web_title = params[:web_title]
|
||||
@contest_page.web_title = params[:web_title]
|
||||
@contest_page.title = params[:contest_title]
|
||||
@contest_page.image_width = params[:image_width]
|
||||
@contest_page.image_height = params[:image_height]
|
||||
@contest_page.description = params[:contest_description]
|
||||
@notification.title = params[:contest_notification_title]
|
||||
@notification.content = params[:contest_notification][:content]
|
||||
|
||||
if @first_page.save && @contest_page.save && @notification.save
|
||||
if @first_page.save && @contest_page.save
|
||||
respond_to do |format|
|
||||
format.html {
|
||||
flash[:notice] = l(:notice_successful_update)
|
||||
redirect_to admin_contest_page_made_url
|
||||
redirect_to contest_page_made_url
|
||||
}
|
||||
format.api { render_api_ok }
|
||||
end
|
||||
|
@ -270,7 +266,7 @@ class AdminController < ApplicationController
|
|||
respond_to do |format|
|
||||
format.html {
|
||||
flash[:notice] = l(:notice_successful_update)
|
||||
redirect_to admin_web_footer_made_url
|
||||
redirect_to web_footer_made_url
|
||||
}
|
||||
format.api { render_api_ok }
|
||||
end
|
||||
|
|
|
@ -499,19 +499,19 @@ class ApplicationController < ActionController::Base
|
|||
|
||||
def render_403(options={})
|
||||
@project = nil
|
||||
#render_error({:message => :notice_not_authorized, :status => 403}.merge(options))
|
||||
render :template => 'common/403'
|
||||
render_error({:message => :notice_not_authorized, :status => 403}.merge(options),'common/403')
|
||||
#render :template => 'common/403'
|
||||
return false
|
||||
end
|
||||
|
||||
def render_404(options={})
|
||||
#render_error({:message => :notice_file_not_found, :status => 404}.merge(options))
|
||||
render :template => 'common/404'
|
||||
render_error({:message => :notice_file_not_found, :status => 404}.merge(options),'common/404')
|
||||
#render :template => 'common/404'
|
||||
return false
|
||||
end
|
||||
|
||||
# Renders an error response
|
||||
def render_error(arg)
|
||||
def render_error(arg,template = 'common/error')
|
||||
arg = {:message => arg} unless arg.is_a?(Hash)
|
||||
@message = arg[:message]
|
||||
@lay = arg[:layout]
|
||||
|
@ -521,9 +521,9 @@ class ApplicationController < ActionController::Base
|
|||
respond_to do |format|
|
||||
format.html {
|
||||
if @lay
|
||||
render :template => 'common/error', :layout => @lay,:status => @status
|
||||
render :template => template, :layout => @lay,:status => @status
|
||||
else
|
||||
render :template => 'common/error', :layout => use_layout, :status => @status
|
||||
render :template => template, :layout => use_layout, :status => @status
|
||||
end
|
||||
|
||||
}
|
||||
|
@ -766,7 +766,7 @@ class ApplicationController < ActionController::Base
|
|||
end
|
||||
|
||||
def find_web_footer
|
||||
@organize = WebFooterOranizer.first
|
||||
@organizer = WebFooterOranizer.first
|
||||
@companies = WebFooterCompany.all
|
||||
end
|
||||
end
|
||||
|
|
|
@ -84,7 +84,10 @@ class AttachmentsController < ApplicationController
|
|||
candown= User.current.member_of_course?(course) || (course.is_public==1 && @attachment.is_public == 1)
|
||||
elsif @attachment.container.class.to_s=="HomeworkAttach" && @attachment.container.bid.reward_type == 3
|
||||
candown = true
|
||||
elsif @attachment.container_type == "Bid" && @attachment.container && @attachment.container.courses
|
||||
candown = User.current.member_of_course?(@attachment.container.courses.first) || (course.is_public == 1 && @attachment.is_public == 1)
|
||||
else
|
||||
|
||||
candown = @attachment.is_public == 1
|
||||
end
|
||||
if candown || User.current.admin? || User.current.id == @attachment.author_id
|
||||
|
|
|
@ -21,30 +21,37 @@ class CoursesController < ApplicationController
|
|||
before_filter :toggleCourse, only: [:finishcourse, :restartcourse]
|
||||
|
||||
before_filter :require_login, :only => [:join, :unjoin]
|
||||
before_filter :allow_join, :only => [:join]
|
||||
#before_filter :allow_join, :only => [:join]
|
||||
|
||||
def join
|
||||
if User.current.logged?
|
||||
course = Course.find(params[:object_id])
|
||||
unless User.current.member_of_course? course
|
||||
if params[:course_password] == course.password
|
||||
members = []
|
||||
members << Member.new(:role_ids => [10], :user_id => User.current.id)
|
||||
course.members << members
|
||||
StudentsForCourse.create(:student_id => User.current.id, :course_id => params[:object_id])
|
||||
@state = 0
|
||||
course = Course.find_by_id params[:object_id]
|
||||
if course
|
||||
if course_endTime_timeout? course
|
||||
@state = 2
|
||||
else
|
||||
@state = 1
|
||||
if User.current.member_of_course?(course)
|
||||
@state = 3
|
||||
else
|
||||
if params[:course_password] == course.password
|
||||
members = []
|
||||
members << Member.new(:role_ids => [10], :user_id => User.current.id)
|
||||
course.members << members
|
||||
StudentsForCourse.create(:student_id => User.current.id, :course_id => params[:object_id])
|
||||
@state = 0
|
||||
else
|
||||
@state = 1
|
||||
end
|
||||
end
|
||||
end
|
||||
else
|
||||
@state = 3
|
||||
@state = 4
|
||||
end
|
||||
else
|
||||
@state = 4
|
||||
@state = 5
|
||||
end
|
||||
respond_to do |format|
|
||||
# format.html { redirect_to_referer_or {render :text => (watching ? 'Watcher added.' : 'Watcher removed.'), :layout => true}}
|
||||
format.js { render :partial => 'set_join', :locals => {:user => User.current, :course => Course.find(params[:object_id]), :object_id => params[:object_id]} }
|
||||
format.js { render :partial => 'set_join', :locals => {:user => User.current, :course => course, :object_id => params[:object_id]} }
|
||||
end
|
||||
rescue Exception => e
|
||||
@state = 4
|
||||
|
@ -424,9 +431,7 @@ class CoursesController < ApplicationController
|
|||
@course_type = params[:course_type]
|
||||
@school_id = params[:school_id]
|
||||
per_page_option = 10
|
||||
|
||||
|
||||
if @school_id == "0" or @school_id.nil?
|
||||
if @school_id == "0" || @school_id.nil?
|
||||
@courses_all = Course.active.visible.
|
||||
joins("LEFT JOIN #{CourseStatus.table_name} ON #{Course.table_name}.id = #{CourseStatus.table_name}.course_id")
|
||||
else
|
||||
|
@ -434,49 +439,37 @@ class CoursesController < ApplicationController
|
|||
joins("LEFT JOIN #{CourseStatus.table_name} ON #{Course.table_name}.id = #{CourseStatus.table_name}.course_id").
|
||||
where("#{Course.table_name}.school_id = ?", @school_id)
|
||||
end
|
||||
|
||||
@course_count = @courses_all.count
|
||||
@course_pages = Paginator.new @course_count, per_page_option, params['page']
|
||||
|
||||
@course_activity_count=Hash.new
|
||||
@courses_all.each do |course|
|
||||
@course_activity_count[course.id]=0
|
||||
end
|
||||
|
||||
|
||||
case params[:course_sort_type]
|
||||
when '0'
|
||||
@courses = @courses_all.order("created_at desc")
|
||||
@s_type = 0
|
||||
@courses = @courses.offset(@course_pages.offset).limit(@course_pages.per_page)
|
||||
|
||||
@course_activity_count=get_course_activity @courses, @course_activity_count
|
||||
@course_activity_count=get_course_activity @courses, @course_activity_count
|
||||
when '1'
|
||||
@courses = @courses_all.order("course_ac_para desc")
|
||||
@s_type = 1
|
||||
@courses = @courses.offset(@course_pages.offset).limit(@course_pages.per_page)
|
||||
|
||||
@course_activity_count=get_course_activity @courses, @course_activity_count
|
||||
when '2'
|
||||
@courses = @courses_all.order("watchers_count desc")
|
||||
@s_type = 2
|
||||
@courses = @courses.offset(@course_pages.offset).limit(@course_pages.per_page)
|
||||
|
||||
@course_activity_count=get_course_activity @courses, @course_activity_count
|
||||
|
||||
when '3'
|
||||
|
||||
@course_activity_count=get_course_activity @courses_all, @course_activity_count
|
||||
|
||||
@courses=handle_course @courses_all, @course_activity_count
|
||||
|
||||
@s_type = 3
|
||||
@courses = @courses[@course_pages.offset, @course_pages.per_page]
|
||||
else
|
||||
@s_type = 0
|
||||
@courses = @courses_all.order("created_at desc")
|
||||
@courses = @courses.offset(@course_pages.offset).limit(@course_pages.per_page)
|
||||
|
||||
@course_activity_count=get_course_activity @courses, @course_activity_count
|
||||
end
|
||||
|
||||
|
@ -518,18 +511,14 @@ class CoursesController < ApplicationController
|
|||
# 新建作业
|
||||
def new_homework
|
||||
@homework = Bid.new
|
||||
@homework.proportion
|
||||
@homework.safe_attributes = params[:bid]
|
||||
if (User.current.logged? && User.current.member_of_course?(Course.find params[:id] ))
|
||||
render :layout => 'base_courses'
|
||||
else
|
||||
render_403
|
||||
end
|
||||
|
||||
end
|
||||
|
||||
|
||||
|
||||
def toggleCourse
|
||||
@course_prefs = Course.find_by_extra(@course.extra)
|
||||
unless (@course_prefs.teacher == User.current || User.current.admin?)
|
||||
|
@ -697,8 +686,8 @@ class CoursesController < ApplicationController
|
|||
|
||||
private
|
||||
|
||||
def allow_join
|
||||
if course_endTime_timeout? Course.find(params[:object_id])
|
||||
def allow_join course
|
||||
if course_endTime_timeout? course
|
||||
respond_to do |format|
|
||||
format.js {
|
||||
@state = 2
|
||||
|
@ -719,7 +708,4 @@ class CoursesController < ApplicationController
|
|||
render_404
|
||||
end
|
||||
end
|
||||
|
||||
|
||||
|
||||
end
|
||||
|
|
|
@ -113,7 +113,7 @@ class FilesController < ApplicationController
|
|||
end
|
||||
|
||||
if order_by.count == 1
|
||||
sort += "#{Attachment.table_name}.#{attribute} desc "
|
||||
sort += "#{Attachment.table_name}.#{attribute} asc "
|
||||
elsif order_by.count == 2
|
||||
sort += "#{Attachment.table_name}.#{attribute} #{order_by[1]} "
|
||||
end
|
||||
|
|
|
@ -130,7 +130,7 @@ class MyController < ApplicationController
|
|||
@user.pref.save
|
||||
@user.notified_project_ids = (@user.mail_notification == 'selected' ? params[:notified_project_ids] : [])
|
||||
set_language_if_valid @user.language
|
||||
flash.now[:notice] = l(:notice_account_updated)
|
||||
flash[:notice] = l(:notice_account_updated)
|
||||
redirect_to user_url(@user)
|
||||
return
|
||||
else
|
||||
|
|
|
@ -113,7 +113,7 @@ class RepositoriesController < ApplicationController
|
|||
@root_path=RepositoriesHelper::ROOT_PATH
|
||||
@repository_name=User.current.login.to_s+"/"+params[:repository][:identifier]+".git"
|
||||
@project_path=@root_path+"htdocs/"+@repository_name
|
||||
@repository_tag=params[:repository][:upassword]
|
||||
@repository_tag=params[:repository][:upassword] || params[:repository][:password]
|
||||
@repo_name=User.current.login.to_s+"_"+params[:repository][:identifier]
|
||||
logger.info "htpasswd -mb "+@root_path+"user.passwd "+@repo_name+": "+@repository_tag
|
||||
logger.info "the value of create repository"+@root_path+": "+@repository_name+": "+@project_path+": "+@repo_name
|
||||
|
|
|
@ -33,15 +33,16 @@ class UsersController < ApplicationController
|
|||
before_filter :require_admin, :except => [:show, :index, :search, :tag_save, :tag_saveEx,:user_projects, :user_newfeedback, :user_comments, :watch_bids, :watch_contests, :info,
|
||||
:user_watchlist, :user_fanslist,:update, :user_courses, :user_homeworks, :watch_projects, :show_score, :topic_score_index, :project_score_index,
|
||||
:activity_score_index, :influence_score_index, :score_index,:show_new_score, :topic_new_score_index, :project_new_score_index,
|
||||
:activity_new_score_index, :influence_new_score_index, :score_new_index,:update_score,:user_activities]
|
||||
:activity_new_score_index, :influence_new_score_index, :score_new_index,:update_score,:user_activities,:user_projects_index]
|
||||
#edit has been deleted by huang, 2013-9-23
|
||||
before_filter :find_user, :only => [:user_fanslist, :user_watchlist, :show, :edit, :update, :destroy, :edit_membership, :user_courses,
|
||||
:user_homeworks, :destroy_membership, :user_activities, :user_projects, :user_newfeedback, :user_comments,
|
||||
:watch_bids, :watch_contests, :info, :watch_projects, :show_score, :topic_score_index, :project_score_index,
|
||||
:activity_score_index, :influence_score_index, :score_index,:show_new_score, :topic_new_score_index, :project_new_score_index,
|
||||
:activity_new_score_index, :influence_new_score_index, :score_new_index]
|
||||
:activity_new_score_index, :influence_new_score_index, :score_new_index,:user_projects_index]
|
||||
before_filter :auth_user_extension, only: :show
|
||||
before_filter :rest_user_score, only: :show
|
||||
#before_filter :select_entry, only: :user_projects
|
||||
accept_api_auth :index, :show, :create, :update, :destroy,:tag_save , :tag_saveEx
|
||||
|
||||
#william
|
||||
|
@ -80,6 +81,21 @@ class UsersController < ApplicationController
|
|||
end
|
||||
end
|
||||
|
||||
def user_projects_index
|
||||
if User.current.admin?
|
||||
memberships = @user.memberships.all(conditions: "projects.project_type = #{Project::ProjectType_project}").first
|
||||
else
|
||||
cond = Project.visible_condition(User.current) + " AND projects.project_type <> 1"
|
||||
memberships = @user.memberships.all(:conditions => cond).first
|
||||
end
|
||||
watch_projects = Project.joins(:watchers).where("project_type <>? and watchable_type = ? and `watchers`.user_id = ?", '1','Project', @user.id).first
|
||||
if memberships.nil? && watch_projects
|
||||
redirect_to(:watch_projects_user) and return
|
||||
else
|
||||
redirect_to(:user_projects_user) and return
|
||||
end
|
||||
end
|
||||
|
||||
#added by young
|
||||
def user_projects
|
||||
|
||||
|
@ -92,8 +108,6 @@ class UsersController < ApplicationController
|
|||
#events = Redmine::Activity::Fetcher.new(User.current, :author => @user).events(nil, nil, :limit => 20)
|
||||
#@events_by_day = events.group_by(&:event_date)
|
||||
@state = 0
|
||||
|
||||
|
||||
#add by huang
|
||||
unless User.current.admin?
|
||||
if !@user.active? #|| (@user != User.current && @memberships.empty? && events.empty?)
|
||||
|
|
|
@ -10,7 +10,7 @@ class WebFooterCompaniesController < ApplicationController
|
|||
end
|
||||
|
||||
def new
|
||||
@company = WebFooterCompany.new
|
||||
@company ||= WebFooterCompany.new
|
||||
end
|
||||
|
||||
def create
|
||||
|
@ -20,8 +20,11 @@ class WebFooterCompaniesController < ApplicationController
|
|||
redirect_to web_footer_companies_url
|
||||
else
|
||||
flash[:error] = "#{l :web_footer_company_create_fail}: #{@company.errors.full_messages[0]}"
|
||||
new
|
||||
render :action => 'new'
|
||||
respond_to do |format|
|
||||
format.html { render :action => 'new'}
|
||||
format.api { render_validation_errors(@company) }
|
||||
end
|
||||
|
||||
end
|
||||
end
|
||||
|
||||
|
@ -42,7 +45,6 @@ class WebFooterCompaniesController < ApplicationController
|
|||
redirect_to web_footer_companies_url
|
||||
else
|
||||
flash[:error] = "#{l :web_footer_company_update_fail}: #{@company.errors.full_messages[0]}"
|
||||
edit
|
||||
render :action => 'edit'
|
||||
end
|
||||
end
|
||||
|
|
|
@ -143,16 +143,19 @@ module AttachmentsHelper
|
|||
params[:q] ||= ""
|
||||
filename_condition = params[:q].strip
|
||||
|
||||
attachAll = Attachment.scoped
|
||||
|
||||
# 除去当前课程的所有资源
|
||||
nobelong_attach = Attachment.where("!(container_type = '#{course.class}' and container_id = #{course.id})") unless course.blank?
|
||||
#attachAll = Attachment.where("author_id = #{User.current.id}")
|
||||
#
|
||||
## 除去当前课程的所有资源
|
||||
#nobelong_attach =
|
||||
|
||||
# 搜索域确定
|
||||
domain = course.nil? ? attachAll : nobelong_attach
|
||||
course.nil? ?
|
||||
domain=Attachment.where("author_id = #{User.current.id}")
|
||||
:
|
||||
domain=Attachment.where("author_id = #{User.current.id} and container_type = 'Course' and container_id <> #{course.id}") unless course.blank?
|
||||
|
||||
# 搜索到的资源
|
||||
searched_attach = domain.where("is_public=1 and filename LIKE :like ", like:"%#{filename_condition}%").limit(limit).order('created_on desc')
|
||||
searched_attach = domain.where("filename LIKE :like ", like:"%#{filename_condition}%").limit(limit).order('created_on desc')
|
||||
#searched_attach = private_filter searched_attach
|
||||
searched_attach = paginateHelper(searched_attach, 10)
|
||||
|
||||
|
|
|
@ -479,7 +479,6 @@ module CoursesHelper
|
|||
type << option2
|
||||
type
|
||||
end
|
||||
|
||||
#获取课程动态
|
||||
def get_course_activity courses, activities
|
||||
@course_ids=activities.keys()
|
||||
|
@ -504,20 +503,8 @@ module CoursesHelper
|
|||
activities[news.course_id]+=1
|
||||
end
|
||||
|
||||
#feedbackc_count
|
||||
JournalsForMessage.where(jour_id: @course_ids, jour_type: Course).each do |jourformess|
|
||||
activities[jourformess.jour_id]+=1
|
||||
end
|
||||
|
||||
#activities!=0
|
||||
i=0;
|
||||
courses.each do |course|
|
||||
id=course.id
|
||||
if activities[id]==0
|
||||
activities[id]=1
|
||||
end
|
||||
end
|
||||
|
||||
# 动态数 + 1 ( 某某创建了该课程 )
|
||||
activities.each_pair { |key, value| activities[key] = value + 1 }
|
||||
return activities
|
||||
end
|
||||
|
||||
|
|
|
@ -7,9 +7,10 @@ class ContestingProject < ActiveRecord::Base
|
|||
|
||||
DESCRIPTION_LENGTH_LIMIT = 500
|
||||
validates :description, length: {maximum:DESCRIPTION_LENGTH_LIMIT }
|
||||
validates :user_id, presence: true
|
||||
validates :contest_id, presence: true, uniqueness: {:scope => :project_id}
|
||||
validates :project_id, presence: true
|
||||
validates :user_id, presence: true
|
||||
validates :contest_id, presence: true, uniqueness: {scope: :project_id}
|
||||
validates :project_id, presence: true
|
||||
|
||||
validate :validate_user
|
||||
validate :validate_contest
|
||||
validate :validate_project
|
||||
|
|
|
@ -0,0 +1,8 @@
|
|||
<div class="tabs">
|
||||
<ul>
|
||||
<li><%= link_to l(:label_project_first_page), {:action => 'first_page_made'}, class: "#{current_page?(first_page_made_path)? 'selected' : nil }" %></li>
|
||||
<li><%= link_to l(:label_course_first_page), {:action => 'course_page_made'}, class: "#{current_page?(course_page_made_path)? 'selected' : nil }" %></li>
|
||||
<li><%= link_to l(:label_contest_first_page), {:action => 'contest_page_made'}, class: "#{current_page?(contest_page_made_path)? 'selected' : nil }" %></li>
|
||||
<li><%= link_to l(:label_web_footer_page), {:action => 'web_footer_made'}, class: "#{current_page?(web_footer_made_path)? 'selected' : nil }" %></li>
|
||||
</ul>
|
||||
</div>
|
|
@ -5,14 +5,7 @@
|
|||
<label for='web_title'><%= l(:label_web_title) %>:</label>
|
||||
<%= text_field_tag 'web_title', params[:wbe_title],:value => @first_page.web_title, :size => 30,:style => "font-size:small;width:490px;margin-left:10px;" %>
|
||||
</p>
|
||||
<div class="tabs">
|
||||
<ul>
|
||||
<li><%= link_to l(:label_project_first_page), {:action => 'first_page_made'} %></li>
|
||||
<li><%= link_to l(:label_course_first_page), {:action => 'course_page_made'} %></li>
|
||||
<li><%= link_to l(:label_contest_first_page), {:action => 'contest_page_made'} , :class => 'selected'%></li>
|
||||
<li><%= link_to l(:label_web_footer_page),{:action => 'web_footer_made'} %></li>
|
||||
</ul>
|
||||
</div>
|
||||
<%= render 'tab_partial' %>
|
||||
|
||||
<h4><%=l(:label_contest_first_page)%></h4>
|
||||
<p style="margin-left:60px;padding-right: 20px;">
|
||||
|
@ -38,26 +31,7 @@
|
|||
<label for='contest_description' style="vertical-align: top"> <%= l(:label_site_description)%>:</label>
|
||||
<%= text_area_tag 'contest_description',@contest_page.description,:rows => 8, :size => 30,:style => "font-size:small;width:490px;margin-left:10px;" %>
|
||||
</p>
|
||||
<p style="margin-left:60px;padding-right: 20px;">
|
||||
<label> <%= link_to l(:label_notification), '#',
|
||||
:onclick => '$("#notification").slideToggle(400); ' %></label>
|
||||
|
||||
</p>
|
||||
<div style="margin-left:60px;padding-right: 20px;" id="notification">
|
||||
|
||||
<label for='contest_notification_title'> <%= l(:label_contest_notification_title) %>:</label>
|
||||
<p style="margin-left:70px;padding-right: 20px;">
|
||||
<%= text_field_tag 'contest_notification_title', params[:label_contest_notification_title], :value => @notification.title,:size => 30,:style => "font-size:small;width:490px;margin-left:10px;" %>
|
||||
</p>
|
||||
<label for='contest_notification' style="vertical-align: top"> <%= l(:label_contest_notification_content)%>:</label>
|
||||
<%= text_area 'contest_notification', 'content', :value => @notification.content,:cols => 80, :rows => 15, :class => 'wiki-edit' %>
|
||||
<%= wikitoolbar_for 'contest_notification_content' %>
|
||||
<!-- <script src="/javascripts/ckeditor/ckeditor.js?1404953555" type="text/javascript"></script>
|
||||
|
||||
<p><#%= text_area 'contest_notification', 'content', :value => @notification.content,:required => true, :size => 80,:class => 'wiki-edit', id: 'editor01' %></p>
|
||||
<script type="text/javascript">var ckeditor=CKEDITOR.replace('editor01');</script> -->
|
||||
|
||||
</div>
|
||||
<%= submit_tag l(:button_save), :class => "small", :name => nil %>
|
||||
<% end %>
|
||||
<div>
|
||||
|
|
|
@ -5,14 +5,7 @@
|
|||
<label for='web_title'><%= l(:label_web_title) %>:</label>
|
||||
<%= text_field_tag 'web_title', params[:wbe_title],:value => @first_page.web_title, :size => 30,:style => "font-size:small;width:490px;margin-left:10px;" %>
|
||||
</p>
|
||||
<div class="tabs">
|
||||
<ul>
|
||||
<li><%= link_to l(:label_project_first_page), {:action => 'first_page_made'} %></li>
|
||||
<li><%= link_to l(:label_course_first_page), {:action => 'course_page_made'}, :class => 'selected' %></li>
|
||||
<li><%= link_to l(:label_contest_first_page), {:action => 'contest_page_made'} %></li>
|
||||
<li><%= link_to l(:label_web_footer_page),{:action => 'web_footer_made'} %></li>
|
||||
</ul>
|
||||
</div>
|
||||
<%= render 'tab_partial' %>
|
||||
<h4><%=l(:label_course_first_page)%></h4>
|
||||
<p style="margin-left:60px;padding-right: 20px;">
|
||||
<label for='attachments_fields'> <%= l(:label_site_image) %>:</label>
|
||||
|
|
|
@ -5,14 +5,7 @@
|
|||
<label for='web_title'><%= l(:label_web_title) %>:</label>
|
||||
<%= text_field_tag 'web_title', params[:wbe_title],:value => @first_page.web_title, :size => 30,:style => "font-size:small;width:490px;margin-left:10px;" %>
|
||||
</p>
|
||||
<div class="tabs">
|
||||
<ul>
|
||||
<li><%= link_to l(:label_project_first_page), {:action => 'first_page_made'}, :class => 'selected' %></li>
|
||||
<li><%= link_to l(:label_course_first_page), {:action => 'course_page_made'} %></li>
|
||||
<li><%= link_to l(:label_contest_first_page), {:action => 'contest_page_made'} %></li>
|
||||
<li><%= link_to l(:label_web_footer_page),{:action => 'web_footer_made'} %></li>
|
||||
</ul>
|
||||
</div>
|
||||
<%= render 'tab_partial' %>
|
||||
<h4><%=l(:label_project_first_page)%></h4>
|
||||
<p style="margin-left:60px;padding-right: 20px;">
|
||||
<label for='attachments_fields'> <%= l(:label_site_image) %>:</label>
|
||||
|
|
|
@ -5,14 +5,7 @@
|
|||
<label for='web_title'><%= l(:label_web_title) %>:</label>
|
||||
<%= text_field_tag 'web_title', params[:wbe_title],:value => @first_page.web_title, :size => 30,:style => "font-size:small;width:490px;margin-left:10px;" %>
|
||||
</p>
|
||||
<div class="tabs">
|
||||
<ul>
|
||||
<li><%= link_to l(:label_project_first_page), {:action => 'first_page_made'} %></li>
|
||||
<li><%= link_to l(:label_course_first_page), {:action => 'course_page_made'} %></li>
|
||||
<li><%= link_to l(:label_contest_first_page), {:action => 'contest_page_made'}%></li>
|
||||
<li><%= link_to l(:label_web_footer_page),{:action => 'web_footer_made'} , :class => 'selected' %></li>
|
||||
</ul>
|
||||
</div>
|
||||
<%= render 'tab_partial' %>
|
||||
<div style="float:right"><%= link_to l(:label_cooperation_compnay), web_footer_companies_path %></div>
|
||||
<h4><%=l(:label_web_footer_page)%></h4>
|
||||
|
||||
|
|
|
@ -33,7 +33,6 @@
|
|||
<% end %>
|
||||
<% end %>
|
||||
<% if options[:author] %>
|
||||
<!-- modified by zjc author添加超链接 -->
|
||||
<span class="author" title="attachment.author">
|
||||
<%= link_to h(truncate(attachment.author.name, length: 10, omission: '...')),user_path(attachment.author) %>,
|
||||
<%= format_time(attachment.created_on) %>
|
||||
|
|
|
@ -21,15 +21,18 @@
|
|||
</script>
|
||||
|
||||
<%= error_messages_for 'bid' %>
|
||||
<p><%= l(:label_homeworks_form_new_description) %></p>
|
||||
<p>
|
||||
<%= f.text_field :name, :required => true, :size => 60, :style => "width:490px;", :maxlength => Bid::NAME_LENGTH_LIMIT, :onblur => "regexName();" %>
|
||||
|
||||
</p>
|
||||
<p><span id="bid_name_span"></span></p>
|
||||
<p>
|
||||
<span id="bid_name_span"></span>
|
||||
</p>
|
||||
|
||||
<p><%= f.text_area :description, :rows => 8, :class => 'wiki-edit', :style => "font-size:small;width:490px;", :maxlength => Bid::DESCRIPTION_LENGTH_LIMIT %></p>
|
||||
<p><%= f.text_field(:deadline, :required => true, :size => 60, :style => "width:150px;", :readonly => true, :onchange => "regexDeadLine();") %>
|
||||
<p>
|
||||
<%= f.text_area :description, :rows => 8, :class => 'wiki-edit', :style => "font-size:small;width:490px;", :maxlength => Bid::DESCRIPTION_LENGTH_LIMIT %>
|
||||
</p>
|
||||
<p>
|
||||
<%= f.text_field(:deadline, :required => true, :size => 60, :style => "width:150px;", :readonly => true, :onchange => "regexDeadLine();") %>
|
||||
<%= calendar_for('bid_deadline')%>
|
||||
<span id="bid_deadline_span">
|
||||
</span>
|
||||
|
@ -44,6 +47,10 @@
|
|||
<%= hidden_field_tag 'course_id', @course.id %>
|
||||
</p>
|
||||
<fieldset>
|
||||
<legend><%= l(:label_attachment_plural) %></legend>
|
||||
<p><%= render :partial => 'attachments/form', :locals => {:container => @bid} %></p>
|
||||
<legend>
|
||||
<%= l(:label_attachment_plural) %>
|
||||
</legend>
|
||||
<p>
|
||||
<%= render :partial => 'attachments/form', :locals => {:container => @bid} %>
|
||||
</p>
|
||||
</fieldset>
|
|
@ -31,8 +31,8 @@ a:hover{ }
|
|||
没有访问权限!建议您</p>
|
||||
<div class="error_link">
|
||||
<!---<a href="http://forge.trustie.net/" target="_blank">返回首页</a>---->
|
||||
<a href="javascript:history.back()" target="_blank">后退一步</a>
|
||||
<a href="http://user.trustie.net/users/5/user_newfeedback" target="_blank">给我留言</a>
|
||||
<a href="javascript:history.back()">后退一步</a>
|
||||
<a href="http://user.trustie.net/users/5/user_newfeedback">给我留言</a>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
|
|
@ -31,8 +31,8 @@ a:hover{ }
|
|||
页面不见了!建议您</p>
|
||||
<div class="error_link">
|
||||
<!---<a href="http://forge.trustie.net/" target="_blank">返回首页</a>---->
|
||||
<a href="javascript:history.back()" target="_blank">后退一步</a>
|
||||
<a href="http://user.trustie.net/users/5/user_newfeedback" target="_blank">给我留言</a>
|
||||
<a href="javascript:history.back()">后退一步</a>
|
||||
<a href="http://user.trustie.net/users/5/user_newfeedback">给我留言</a>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
|
|
@ -1,28 +0,0 @@
|
|||
<div class="top-content">
|
||||
<table width="940px">
|
||||
<tr>
|
||||
<td class="info_font" style="width: 220px; color: #15bccf" ><%= l(:label_contest_innovate ) %></td>
|
||||
<td class="location-list"><strong><%= l(:label_user_location) %> :</strong></td>
|
||||
<td rowspan="2">
|
||||
</td>
|
||||
<td rowspan="2" >
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td style="padding-left: 8px">
|
||||
<a href="http://contest.trustie.net/">contest.trustie.net</a>
|
||||
</td>
|
||||
<td >
|
||||
<%=link_to l(:field_homepage), home_path %> >
|
||||
<%=link_to l(:label_contest_innovate), welcome_contest_path %> > l(:label_details)</td>
|
||||
</tr>
|
||||
</table>
|
||||
</div>
|
||||
<!-- end -->
|
||||
|
||||
<div class="notification-content">
|
||||
<p class="title"><%= @notification.title %></p>
|
||||
<hr />
|
||||
<p class="content"><%= @notification.content.html_safe %></p>
|
||||
<hr />
|
||||
</div>
|
|
@ -1,26 +1,80 @@
|
|||
<%= error_messages_for @contestnotifications %>
|
||||
<script type="text/javascript">
|
||||
function regexTitle()
|
||||
{
|
||||
var title = $.trim($("#contestnotification_title").val());
|
||||
if(title.length ==0)
|
||||
{
|
||||
$("#title_span").text("<%= l(:label_no_contest_news_title) %>");
|
||||
$("#title_span").css('color','#ff0000');
|
||||
$("#title_span").focus();
|
||||
return false;
|
||||
}
|
||||
else if(title.length <= 254)
|
||||
{
|
||||
$("#title_span").text("<%= l(:label_field_correct) %>");
|
||||
$("#title_span").css('color','#008000');
|
||||
return true;
|
||||
}
|
||||
else
|
||||
{
|
||||
$("#title_span").text("<%= l(:label_contest_news_title_condition) %>");
|
||||
$("#title_span").css('color','#ff0000');
|
||||
$("#title_span").focus();
|
||||
return false;
|
||||
}
|
||||
}
|
||||
//验证描述:不能为空,不能多余5000个字符
|
||||
function regexDescription()
|
||||
{
|
||||
var description = $.trim($("#contestnotification_description").val());
|
||||
if(description.length ==0)
|
||||
{
|
||||
$("#description_span").text("<%= l(:label_no_contest_news_description) %>");
|
||||
$("#description_span").css('color','#ff0000');
|
||||
$("#description_span").focus();
|
||||
return false;
|
||||
}
|
||||
else if(description.length <= 5000)
|
||||
{
|
||||
$("#description_span").text("<%= l(:label_field_correct) %>");
|
||||
$("#description_span").css('color','#008000');
|
||||
return true;
|
||||
}
|
||||
else
|
||||
{
|
||||
$("#description_span").text("<%= l(:label_contest_news_condition) %>");
|
||||
$("#description_span").css('color','#ff0000');
|
||||
$("#description_span").focus();
|
||||
return false;
|
||||
}
|
||||
}
|
||||
</script>
|
||||
<div class="add_frame_header" >
|
||||
<%= l(:bale_news_notice) %>
|
||||
</div>
|
||||
<div class="box tabular">
|
||||
<p>
|
||||
<%= f.text_field :title,
|
||||
:required => true,
|
||||
:size => 60,
|
||||
:maxlength => 60,
|
||||
:style => "width:488px;"
|
||||
%>
|
||||
</p>
|
||||
<p>
|
||||
<%= f.text_area :description,
|
||||
:required => true,
|
||||
:cols => 60,
|
||||
:rows => 11,
|
||||
:class => 'wiki-edit',
|
||||
:style => "width:490px;"
|
||||
%>
|
||||
</p>
|
||||
|
||||
<p>
|
||||
<%= f.text_field :title,
|
||||
:required => true,
|
||||
:size => 60,
|
||||
:maxlength => 60,
|
||||
:style => "width:488px;",
|
||||
:onblur => "regexTitle();"
|
||||
%>
|
||||
</p>
|
||||
<span id="title_span" style="padding-left: 100px;"></span>
|
||||
<p>
|
||||
<%= f.text_area :description,
|
||||
:required => true,
|
||||
:cols => 60,
|
||||
:rows => 11,
|
||||
:class => 'wiki-edit',
|
||||
:style => "width:490px;",
|
||||
:onblur => "regexDescription();"
|
||||
%>
|
||||
</p>
|
||||
<span id="description_span" style="padding-left: 100px;"></span>
|
||||
</div>
|
||||
|
||||
<%= wikitoolbar_for 'news_description' %>
|
||||
|
|
|
@ -1,3 +1,13 @@
|
|||
<script type="text/javascript">
|
||||
function submitContestNews()
|
||||
{
|
||||
if(regexTitle() && regexDescription())
|
||||
{
|
||||
$("#contestnotifications-form").submit();
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<span style="font-size: 16px; border-bottom:1px solid #f0f0f0; margin-right: 15px;">
|
||||
<%= l(:label_notification) %>
|
||||
</span>
|
||||
|
@ -12,20 +22,50 @@
|
|||
<%= labelled_form_for @contestnotification, :url => contest_contestnotifications_path(@contest),
|
||||
:html => {:id => 'contestnotifications-form', :multipart => true} do |f| %>
|
||||
<%= render :partial => 'contestnotifications/form', :locals => {:f => f} %>
|
||||
<%= submit_tag l(:button_create), :class => 'whiteButton m3p10 h30', :name => nil %>
|
||||
<%#= preview_link preview_contestnotifications_path(:contest_id => @contest), 'contestnotifications-form', target='preview', {:class => 'whiteButton m3p10'} %>
|
||||
<input type="button" onclick="submitContestNews();" class="enterprise" value="<%= l(:button_create)%>"/>
|
||||
|
|
||||
<%= link_to l(:button_cancel), "#", :onclick => '$("#add-contestnotifications").hide(); return false;', :class => 'whiteButton m3p10' %>
|
||||
<input type="button" onclick="$('#add-contestnotifications').hide(); return false;" class="enterprise" value="<%= l(:button_cancel)%>"/>
|
||||
<% end if @contest %>
|
||||
<div id="preview" class="wiki"></div>
|
||||
</div>
|
||||
<% end %>
|
||||
<div>
|
||||
<% if @contestnotificationss.empty? %>
|
||||
<p class="nodata">
|
||||
<%= l(:label_no_data) %>
|
||||
</p>
|
||||
<% else %>
|
||||
|
||||
<div style="margin-left: 20px;">
|
||||
<span class="portrait">
|
||||
<%= image_tag(url_to_avatar(@contest.author), :class => "avatar")%>
|
||||
</span>
|
||||
<span class="body">
|
||||
<h3>
|
||||
<%= link_to(@contest.author.lastname+@contest.author.firstname,
|
||||
user_path(@contest.author))
|
||||
%>
|
||||
:<%= @contest.name %></h3>
|
||||
<p>
|
||||
<strong>
|
||||
<%= l(:label_bids_reward_method) %>
|
||||
<span class="bonus">
|
||||
<%= @contest.budget%>
|
||||
</span>
|
||||
</strong>
|
||||
</p>
|
||||
<div class="bid_description" style="width: 100%;word-break:break-all;word-wrap: break-word;">
|
||||
<%= @contest.description %>
|
||||
</div>
|
||||
<span id="praise_tread" style="float: right">
|
||||
<%= render :partial => "/praise_tread/praise_tread",
|
||||
:locals => {:obj => @contest,
|
||||
:show_flag => true,
|
||||
:user_id =>User.current.id,
|
||||
:horizontal => false}
|
||||
%>
|
||||
</span>
|
||||
</span>
|
||||
</div>
|
||||
|
||||
<div style="clear: both;"></div>
|
||||
|
||||
<br><br>
|
||||
<% @contestnotificationss.each do |contestnotifications| %>
|
||||
<table class="content-text-list">
|
||||
<tr>
|
||||
|
@ -57,7 +97,7 @@
|
|||
</tr>
|
||||
</table>
|
||||
<% end %>
|
||||
<% end %>
|
||||
|
||||
</div>
|
||||
<!--end-->
|
||||
<div style="padding-right: 10px">
|
||||
|
|
|
@ -1,11 +1,17 @@
|
|||
|
||||
<script type="text/javascript">
|
||||
function submitContestNews()
|
||||
{
|
||||
if(regexTitle() && regexDescription())
|
||||
{
|
||||
$("#contestnotifications-form").submit();
|
||||
}
|
||||
}
|
||||
</script>
|
||||
<%= labelled_form_for @contestnotification,
|
||||
:url => contest_contestnotifications_path(@contest),
|
||||
:html => { :id => 'contestnotifications-form', :multipart => true } do |f| %>
|
||||
<%= render :partial => 'contestnotifications/form', :locals => { :f => f } %>
|
||||
<%= submit_tag l(:button_create), :class => "whiteButton m3p10 h30" %>
|
||||
<%= submit_tag l(:button_cancel), :class => "whiteButton m3p10 h30",:onclick => "cancel();" %>
|
||||
|
||||
|
||||
<input type="button" onclick="submitContestNews();" class="enterprise" value="<%= l(:button_create)%>"/>
|
||||
<%= link_to l(:button_cancel), contest_contestnotifications_path(@contest.id) %>
|
||||
<% end %>
|
||||
<div id="preview" class="wiki"></div>
|
||||
|
|
|
@ -1,37 +1,5 @@
|
|||
<% reply_allow = JournalsForMessage.create_by_user? User.current %>
|
||||
<div style="margin-left: 20px;">
|
||||
<span class="portrait">
|
||||
<%= image_tag(url_to_avatar(@contest.author), :class => "avatar")%>
|
||||
</span>
|
||||
<span class="body">
|
||||
<h3>
|
||||
<%= link_to(@contest.author.lastname+@contest.author.firstname,
|
||||
user_path(@contest.author))
|
||||
%>
|
||||
:<%= @contest.name %></h3>
|
||||
<p>
|
||||
<strong>
|
||||
<%= l(:label_bids_reward_method) %>
|
||||
<span class="bonus">
|
||||
<%= @contest.budget%>
|
||||
</span>
|
||||
</strong>
|
||||
</p>
|
||||
<div class="bid_description" style="width: 100%;word-break:break-all;word-wrap: break-word;">
|
||||
<%= @contest.description %>
|
||||
</div>
|
||||
<span id="praise_tread" style="float: right">
|
||||
<%= render :partial => "/praise_tread/praise_tread",
|
||||
:locals => {:obj => @contest,
|
||||
:show_flag => true,
|
||||
:user_id =>User.current.id,
|
||||
:horizontal => false}
|
||||
%>
|
||||
</span>
|
||||
</span>
|
||||
</div>
|
||||
|
||||
<div style="clear: both;"></div>
|
||||
|
||||
<div id="history">
|
||||
<%= render :partial => 'history',
|
||||
|
|
|
@ -11,7 +11,9 @@
|
|||
<p >
|
||||
<%= content_tag('span',"#{l(:label_bid_show_course_name)}:", :class => "course-font")%>
|
||||
<% unless @course.is_public == 1 %>
|
||||
<span class='private_project'><%= l(:label_private) %></span>
|
||||
<span class='private_project'>
|
||||
<%= l(:label_private) %>
|
||||
</span>
|
||||
<% end %>
|
||||
<%= content_tag('span', link_to("#{@course.name}", course_path(@course), :class => "info"))%>
|
||||
</p>
|
||||
|
@ -19,9 +21,8 @@
|
|||
<%= content_tag('span', "#{l(:label_institution_name)}:", :class => "course-font")%>
|
||||
<% @admin = @course.course_infos%>
|
||||
<%if @admin&&@admin.first&&@admin.first.user&&@admin.first.user.user_extensions%>
|
||||
<!-- <%#= @admin.first.user.user_extensions.occupation %> -->
|
||||
<% unless @course.teacher.user_extensions.school.nil? %>
|
||||
<%= link_to @course.teacher.user_extensions.school.try(:name), school_course_list_path(@course.teacher.user_extensions.school) %>
|
||||
<%= link_to(@course.school.try(:name), school_course_list_path(@course.school)) if @course.school %>
|
||||
<% end %>
|
||||
<% end %>
|
||||
</p>
|
||||
|
@ -46,13 +47,11 @@
|
|||
</p>
|
||||
<p class="stats">
|
||||
<%= content_tag('span', "#{garble @course.members.count}", :class => "info") %>
|
||||
<%#= content_tag('span', l(:label_x_member, :count => @course.members.count)) %>
|
||||
<%= content_tag('span', l(:label_x_member, :count => memberCount(@course))) %>
|
||||
</p>
|
||||
|
||||
<!--gcm-->
|
||||
<p class="stats">
|
||||
|
||||
<%= content_tag('span', link_to("#{@course_activity_count[@course.id]}", course_path(@course)), :class => "info") %>
|
||||
<%= content_tag('span', l(:label_x_activity, :count => @course_activity_count[@course.id])) %>
|
||||
</p>
|
||||
|
@ -62,7 +61,7 @@
|
|||
<span class="info"></span>
|
||||
<% if(course_endTime_timeout? @course) %>
|
||||
<span class="font_lighter">
|
||||
课程学期已结束
|
||||
<%= l(:lable_course_end) %>
|
||||
</span>
|
||||
<% else %>
|
||||
<%= join_in_course_for_list(@course, User.current,['regular'])%>
|
||||
|
@ -80,10 +79,6 @@
|
|||
|
||||
<div class="add-info" style="margin-left: 30px; margin-top: -20px">
|
||||
<%= content_tag "span", "#{l(:label_course_brief_introduction)}:", :class => "course-font" %>
|
||||
<%# desc = course.short_description.nil? ? "" : course.short_description%>
|
||||
<!--<#div class="brief_introduction" title="<%#= desc.html_safe%>">
|
||||
<%#= desc.html_safe%>
|
||||
</div>-->
|
||||
<%= content_tag "div", course.short_description, :class => "brief_introduction", :title => course.short_description %>
|
||||
</div>
|
||||
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
function get_options(value) {
|
||||
$.ajax({
|
||||
type: "POST",
|
||||
url: '/school/get_options/' + encodeURIComponent(value),
|
||||
url: 'http://<%= Setting.host_name%>/school/get_options/' + encodeURIComponent(value),
|
||||
data: 'text',
|
||||
success: function (data) {
|
||||
$("#occupation").html(data);
|
||||
|
|
|
@ -21,30 +21,40 @@
|
|||
</script>
|
||||
|
||||
<%= error_messages_for 'bid' %>
|
||||
<p><%= l(:label_homeworks_form_new_description) %></p>
|
||||
<p>
|
||||
<%= f.text_field :name, :required => true, :size => 60, :style => "width:490px;", :maxlength => Bid::NAME_LENGTH_LIMIT, :onblur => "regexName();" %>
|
||||
<%= f.text_field :name, :required => true, :size => 60, :style => "width:490px;",
|
||||
:maxlength => Bid::NAME_LENGTH_LIMIT,
|
||||
:onblur => "regexName();" %>
|
||||
|
||||
</p>
|
||||
<p><span id="bid_name_span"></span></p>
|
||||
<p>
|
||||
<span id="bid_name_span"></span>
|
||||
</p>
|
||||
|
||||
<p><%= f.text_area :description, :rows => 8, :class => 'wiki-edit', :style => "font-size:small;width:490px;", :maxlength => Bid::DESCRIPTION_LENGTH_LIMIT %></p>
|
||||
<!-- <p><%#= select_tag 'bid_reward_type', "<option value = '0'>#{l(:label_choose_reward)}</option><option value = '1'>#{l(:label_money)}</option><option value = '3'>#{l(:label_bids_credit)}</option><option value = '2'>#{l(:label_reward_1)}</option>".html_safe,
|
||||
:onChange => "show('bid_reward_type', 'bid_budget', '"+l(:label_bids_reward_what)+"','"+l(:label_bids_new_money)+"','"+l(:label_bids_new_credit)+"','"+l(:label_bids_new_content)+"')" %>
|
||||
<%#= f.text_field :budget, :required => true, :size => 60, :style => "width:350px;", :placeholder => l(:label_bids_reward_what) %>
|
||||
</p> -->
|
||||
<p>
|
||||
<%= f.text_area :description, :rows => 8, :class => 'wiki-edit', :style => "font-size:small;width:490px;",
|
||||
:maxlength => Bid::DESCRIPTION_LENGTH_LIMIT %>
|
||||
</p>
|
||||
<% time = (Time.now + 3600 * 24).strftime('%Y-%m-%d') %>
|
||||
<p><%= f.text_field(:deadline, :required => true, :size => 60, :style => "width:150px;",:value => "#{time}", :onchange => "regexDeadLine();", :readonly => true) %>
|
||||
<%= calendar_for('bid_deadline')%>
|
||||
<span id="bid_deadline_span">
|
||||
</span>
|
||||
</p>
|
||||
<p><%= f.select :is_evaluation, is_evaluation_option %>
|
||||
<p>
|
||||
<%= f.select :is_evaluation, is_evaluation_option %>
|
||||
</p>
|
||||
<p><%= f.select :proportion, proportion_option %>
|
||||
<p>
|
||||
<%= f.select :proportion, proportion_option %>
|
||||
</p>
|
||||
<p><%= hidden_field_tag 'course_id', @course.id %>
|
||||
<p>
|
||||
<%= hidden_field_tag 'course_id', @course.id %>
|
||||
</p>
|
||||
<fieldset><legend><%= l(:label_attachment_plural) %></legend>
|
||||
<p><%= render :partial => 'attachments/form', :locals => {:container => @homework} %></p>
|
||||
<fieldset>
|
||||
<legend>
|
||||
<%= l(:label_attachment_plural) %>
|
||||
</legend>
|
||||
<p>
|
||||
<%= render :partial => 'attachments/form', :locals => {:container => @homework} %>
|
||||
</p>
|
||||
</fieldset>
|
|
@ -1,60 +1,75 @@
|
|||
<!-- added by fq -->
|
||||
<style>
|
||||
input[type="submit"].bid_btn {
|
||||
vertical-align: middle;
|
||||
width: 60px;/*modified by ming*/
|
||||
height: 25px;
|
||||
line-height: 19px;
|
||||
font-size: 14px;
|
||||
color: rgb(0, 0, 0);
|
||||
background: buttonface;/*url("/images/button/bg103.jpg") no-repeat scroll left top transparent;*/
|
||||
padding: 0px 0px 4px 0px;
|
||||
border-radius: 2px;
|
||||
border: 1px solid rgb(148, 148, 148);
|
||||
box-shadow: none;
|
||||
text-shadow: none;
|
||||
/*margin-top: -10px;*/
|
||||
/*margin-right: -4px;*/
|
||||
}
|
||||
input[type="button"].bid_btn {
|
||||
width: 60px;/*modified by ming*/
|
||||
height: 25px;
|
||||
line-height: 19px;
|
||||
font-size: 14px;
|
||||
color: rgb(0, 0, 0);
|
||||
background: buttonface;/*url("/images/button/bg103.jpg") no-repeat scroll left top transparent;*/
|
||||
padding: 0px 0px 4px 0px;
|
||||
border-radius: 2px;
|
||||
border: 1px solid rgb(148, 148, 148);
|
||||
box-shadow: none;
|
||||
text-shadow: none;
|
||||
/*margin-top: -10px;*/
|
||||
margin-right: -2px;
|
||||
}
|
||||
textarea:focus {
|
||||
border: #d5dee9 1px solid;
|
||||
}
|
||||
</style>
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<title>快速进入课程通道</title>
|
||||
<style>
|
||||
body{ font-size:12px; font-family:"微软雅黑","宋体"; line-height:1.9; background:#fff; font-style:normal;}
|
||||
div,html,img,ul,li,p,body,h1,h2,h3,h4,p,a,table,tr,td,fieldset,input,span{ margin:0; padding:0;}
|
||||
div,img,tr,td{ border:0;}
|
||||
table,tr,td{border:0; cellspacing:0; cellpadding:0;}
|
||||
ul,li{ list-style-type:none}
|
||||
.cl{ clear:both; overflow:hidden; }
|
||||
a{ text-decoration:none; }
|
||||
a:hover{ }
|
||||
|
||||
<h3 class="title">加入公开课程或私有课程</h3>
|
||||
|
||||
<%= form_tag({:controller => 'courses',
|
||||
:action => 'join'},
|
||||
:remote => true,
|
||||
:method => :post,
|
||||
:id => 'new-watcher-form') do %>
|
||||
<div>
|
||||
<span>课程ID:</span>
|
||||
<%= text_field_tag 'object_id', nil, :style=>'width:80%'%>
|
||||
<span style="padding-left: 55px;color: red;">(课程ID是课程的网址中出现的序号)</span>
|
||||
#popbox{width:488px;height:308px;}
|
||||
.alert .C{width:476px;height:296px;position:absolute;left:5px;top:5px; }
|
||||
.C_top{ margin-top:20px; width:368px; height:100px; background:#e9e9e9; padding:0px 60px; }
|
||||
.C_top h2{ color:#1c1d1d; font-size:24px; font-style:normal; font-weight:normal;}
|
||||
.C_top p{ color:#a9aaaa; line-height:22px;}
|
||||
.C_form{ margin:20px 0 0 60px;}
|
||||
.C_form ul li{ font-size:14px; color:#3f3a39; line-height:30px; }
|
||||
.C_form ul li input{ margin-left:30px; border:0px; border:1px solid #e1e1e1; color:#898989; padding-left:5px; -moz-border-radius:5px; -webkit-border-radius:5px; border-radius:5px; }
|
||||
.C_form ul li.mB5{ color:#898989; font-size:12px; padding-left:90px;}
|
||||
.width190{ width:190px; height:26px; border-color:#e1e1e1;}
|
||||
.C_form a{ font-size:12px; color:#15bccf; float:left; display:block; height:40px; width:200px; margin-top:25px;}
|
||||
.C_form a:hover{ text-decoration:underline;}
|
||||
.C_form a.btn{ display:block; width:100px; height:36px; padding-top:4px; text-align: center; background:#15bccf; color:#fff; font-size:14px; margin:20px 20px 0 95px;}
|
||||
.C_form a.btn:hover{ background:#ff821d;}
|
||||
</style>
|
||||
<script type="text/javascript">
|
||||
function submit_form(obj)
|
||||
{
|
||||
hideModal(obj);
|
||||
$("#new-watcher-form").submit();
|
||||
}
|
||||
</script>
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<div id="popbox">
|
||||
<div class="C" >
|
||||
<div class="C_top">
|
||||
<h2>快速进入课程通道</h2>
|
||||
<p>只要持有课程ID和密码,就可快速加入所在课程。课程页面搜索不到的私有课程只能从此通道进入哦!</p>
|
||||
</div>
|
||||
<div>
|
||||
<span>密码 :</span>
|
||||
<%= text_field_tag 'course_password', nil, :style=>'width:80%'%>
|
||||
<div class="C_form">
|
||||
<%= form_tag({:controller => 'courses',
|
||||
:action => 'join'},
|
||||
:remote => true,
|
||||
:method => :post,
|
||||
:id => 'new-watcher-form') do %>
|
||||
<ul>
|
||||
<li>
|
||||
<span class="tips">课 程 ID:</span>
|
||||
<input class=" width190" name="object_id" id="object_id" type="text" value="" >
|
||||
</li>
|
||||
<li class="mB5">课程ID是所在课程网址中显示的序号</li>
|
||||
<li>
|
||||
<span class="tips">密 码:</span>
|
||||
<input class=" width190" type="password" name="course_password" id="course_password" value="" >
|
||||
</li>
|
||||
<li>
|
||||
<a href="#" class="btn" onclick="submit_form(this);"><%= l(:label_new_join) %></a>
|
||||
<a href="#" onclick="hideModal(this);"><%= l(:button_cancel)%></a>
|
||||
</li>
|
||||
</ul>
|
||||
<% end%>
|
||||
</div>
|
||||
</div><!---- C end---->
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
|
||||
<p class="buttons" style="padding-top: 10px; padding-bottom: 1px; margin-bottom: 1px">
|
||||
<%= submit_tag l(:label_new_join), :name => nil, :class => "bid_btn", :onclick => "hideModal(this);" %>
|
||||
<%= submit_tag l(:button_cancel), :name => nil, :class => "bid_btn", :onclick => "hideModal(this);", :type => 'button' %>
|
||||
</p>
|
||||
<% end %>
|
||||
|
|
|
@ -11,8 +11,8 @@
|
|||
<% elsif @state == 3 %>
|
||||
alert("您已经加入了课程");
|
||||
<% elsif @state == 4 %>
|
||||
alert("您已经的课程不存在");
|
||||
<% elsif @state == 4 %>
|
||||
alert("您加入的课程不存在");
|
||||
<% elsif @state == 5 %>
|
||||
alert("您还未登录");
|
||||
<% else %>
|
||||
alert("未知错误,请稍后再试");
|
||||
|
|
|
@ -39,8 +39,6 @@
|
|||
<div id="courses-index">
|
||||
<%if @courses%>
|
||||
<%= render_course_hierarchy(@courses)%>
|
||||
<%#= render :partial => 'course', :locals => {:course => @courses.first}%>
|
||||
<%#= "<a herf = 'aaa'>hello</a>".html_safe %>
|
||||
<%end%>
|
||||
</div>
|
||||
|
||||
|
@ -56,10 +54,6 @@
|
|||
</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>
|
||||
|
|
|
@ -1,3 +1,4 @@
|
|||
$('#ajax-modal').html('<%= escape_javascript(render :partial => 'join_private_course') %>');
|
||||
showModal('ajax-modal', '400px');
|
||||
$('#ajax-modal').addClass('new-watcher');
|
||||
showModal('ajax-modal', '510px');
|
||||
$('#ajax-modal').addClass('new-watcher');
|
||||
$('#ajax-modal').css('height','330px');
|
|
@ -51,7 +51,7 @@
|
|||
:class => 'icon icon-edit' %>
|
||||
<%= delete_link membership_path(member),
|
||||
:remote => true,
|
||||
:data => (!User.current.admin? && member.include?(User.current) ? {:confirm => l(:text_own_membership_delete_confirmation)} : {}) if member.deletable? %>
|
||||
:data => (!User.current.admin? && member.include?(User.current) ? {:confirm => l(:text_own_membership_delete_confirmation)} : {confirm: l(:label_delete_confirm)}) if member.deletable? %>
|
||||
</td>
|
||||
<% end %>
|
||||
<!--end-->
|
||||
|
@ -82,7 +82,11 @@
|
|||
<p style="padding-top: 5px"><%= l(:label_role_plural) %>:
|
||||
<% roles.each do |role| %>
|
||||
|
||||
<label><%= radio_button_tag 'membership[role_ids][]', role.id %> <%= h role %></label>
|
||||
<% if role.id == 10 %> <!-- 默认学生角色 -->
|
||||
<label><%= radio_button_tag 'membership[role_ids][]', role.id, true %> <%= h role %></label>
|
||||
<% else %>
|
||||
<label><%= radio_button_tag 'membership[role_ids][]', role.id %> <%= h role %></label>
|
||||
<% end %>
|
||||
<% end %></p>
|
||||
|
||||
<p><%= submit_tag l(:button_add), :id => 'member-add-submit' %></p>
|
||||
|
|
|
@ -9,17 +9,20 @@
|
|||
<div>
|
||||
<table class="underline-evreycontent" style="font-size: 14px;">
|
||||
<tr>
|
||||
<td valign="top" width="50"><%= image_tag(url_to_avatar(e.event_author), :class => "avatar") %></td>
|
||||
<td valign="top" width="50">
|
||||
<%= image_tag(url_to_avatar(e.event_author), :class => "avatar") %>
|
||||
</td>
|
||||
<td>
|
||||
<table width="580px" border="0" style="width: 100%;table-layout: fixed">
|
||||
<tr>
|
||||
<td colspan="2" valign="top" style="overflow: hidden;text-overflow: ellipsis;white-space: nowrap;">
|
||||
<strong> <%= h(e.event_title) if @course.nil? || (e.course != nil && @course.id != e.course.id) %></strong>
|
||||
<strong>
|
||||
<%= h(e.event_title) if @course.nil? || (e.course != nil && @course.id != e.course.id) %>
|
||||
</strong>
|
||||
<span class="font_lighter">
|
||||
<% if @canShowRealName %>
|
||||
<%= link_to_user(e.event_author) if e.respond_to?(:event_author) %>
|
||||
(<%= link_to_user(e.event_author, @canShowRealName) if e.respond_to?(:event_author) %>
|
||||
)
|
||||
(<%= link_to_user(e.event_author, @canShowRealName) if e.respond_to?(:event_author) %>)
|
||||
<% else %>
|
||||
<%= link_to_user(e.event_author) if e.respond_to?(:event_author) %>
|
||||
<% end %>
|
||||
|
@ -32,15 +35,26 @@
|
|||
<td colspan="2" width="580px">
|
||||
<p class="info-break">
|
||||
<%= h(truncate(strip_tags(e.event_description).gsub(/ /, ' '), length: 30, omission: '...')) %>
|
||||
</p></td>
|
||||
</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td align="left"><span class="font_lighter"> <%= l :label_activity_time %>
|
||||
: <%= format_activity_day(day) %> <%= format_time(e.event_datetime, false) %></span>
|
||||
<td align="left">
|
||||
<span class="font_lighter">
|
||||
<%= l :label_activity_time %>
|
||||
:
|
||||
<%= format_activity_day(day) %>
|
||||
<%= format_time(e.event_datetime, false) %>
|
||||
</span>
|
||||
</td>
|
||||
<% if e.event_type == "issue" %>
|
||||
<td align="right">
|
||||
<span> <%= link_to l(:label_find_all_comments), issue_path(e.id) %> </span><span class="font_lighter"><%= l(:label_comments_count, :count => e.journals.count) %></span>
|
||||
<span>
|
||||
<%= link_to l(:label_find_all_comments), issue_path(e.id) %>
|
||||
</span>
|
||||
<span class="font_lighter">
|
||||
<%= l(:label_comments_count, :count => e.journals.count) %>
|
||||
</span>
|
||||
</td>
|
||||
<% end %>
|
||||
</tr>
|
||||
|
@ -51,30 +65,33 @@
|
|||
</div>
|
||||
<% end %>
|
||||
</div>
|
||||
|
||||
<% end -%>
|
||||
<% if (@events_pages.page == @events_pages.last_page) %>
|
||||
<div class="font_description">
|
||||
<table width="660">
|
||||
<tr>
|
||||
<td><%= image_tag(url_to_avatar(@user), :class => "avatar") %></td>
|
||||
<td>
|
||||
<%= image_tag(url_to_avatar(@user), :class => "avatar") %>
|
||||
</td>
|
||||
<td colspan="2">
|
||||
<table width="580">
|
||||
<tr>
|
||||
<td>
|
||||
<% if @canShowRealName %>
|
||||
(<%= link_to_user(@user, @canShowRealName) %>
|
||||
)
|
||||
(<%= link_to_user(@user, @canShowRealName) %>)
|
||||
<% else %>
|
||||
<%= link_to_user(@user)%>
|
||||
<% end %>
|
||||
|
||||
<%= l(:label_user_create_project) %> <%= link_to @course.name %>
|
||||
<strong> !</strong></td>
|
||||
<%= l(:label_user_create_project) %>
|
||||
<%= link_to @course.name %>
|
||||
<strong> !</strong>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="font_lighter" style="float: right"><%= l :label_create_time %>
|
||||
: <%= format_time(@course.created_at) %>
|
||||
<td class="font_lighter" style="float: right">
|
||||
<%= l :label_create_time %>:
|
||||
<%= format_time(@course.created_at) %>
|
||||
</table>
|
||||
</td>
|
||||
</tr>
|
||||
|
@ -88,24 +105,27 @@
|
|||
<div class="font_description">
|
||||
<table width="660">
|
||||
<tr>
|
||||
<td><%= image_tag(url_to_avatar(@user), :class => "avatar") %></td>
|
||||
<td>
|
||||
<%= image_tag(url_to_avatar(@user), :class => "avatar") %>
|
||||
</td>
|
||||
<td colspan="2">
|
||||
<table width="580">
|
||||
<tr>
|
||||
<td>
|
||||
<% if @canShowRealName %>
|
||||
(<%= link_to_user(@user, @canShowRealName) %>
|
||||
)
|
||||
(<%= link_to_user(@user, @canShowRealName) %>)
|
||||
<% else %>
|
||||
<%= link_to_user(@user)%>
|
||||
<% end %>
|
||||
|
||||
<%= l(:label_user_create_project) %> <%= link_to @course.name %>
|
||||
<strong> !</strong></td>
|
||||
<%= l(:label_user_create_project) %>
|
||||
<%= link_to @course.name %>
|
||||
<strong> !</strong>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="font_lighter" style="float: right"><%= l :label_create_time %>
|
||||
: <%= format_time(@course.created_at) %>
|
||||
<td class="font_lighter" style="float: right">
|
||||
<%= l :label_create_time %>:
|
||||
<%= format_time(@course.created_at) %>
|
||||
</table>
|
||||
</td>
|
||||
</tr>
|
||||
|
|
|
@ -2,11 +2,11 @@
|
|||
<% attachmenttypes = @course.attachmenttypes %>
|
||||
<% sufixtypes = @course.contenttypes %>
|
||||
|
||||
<span class="borad-title"><%= t(:label_user_course) %>资源共享区</span>
|
||||
<span class="borad-title">
|
||||
<%= l(:label_coursefile_sharingarea) %>
|
||||
</span>
|
||||
|
||||
<div class="content-title-top">
|
||||
|
||||
<%#= link_to(l(:label_attachment_new), 'javascript:void(0);', :onclick=>"$('#file_buttons').slideToggle();", :class => 'icon icon-add') if User.current.allowed_to?(:manage_files, @course) %>
|
||||
<div class="clearfix"></div>
|
||||
<div id="file_buttons" class="nhidden">
|
||||
<%= link_to(l(:label_upload_files), 'javascript:void(0);', :class => 'icon m5p5 button_submit', :onclick => "$('#relation_file_div').slideUp();$('#upload_file_div').slideToggle('slow');") if User.current.allowed_to?(:manage_files, @course) %>
|
||||
|
@ -55,7 +55,7 @@
|
|||
<% if sufixtypes.any? %>
|
||||
|
||||
<label for="attach_sufix_browse_label"><%= l(:attachment_sufix_browse) %></label>
|
||||
<%= select_tag "attach_sufix_browse", content_tag(:option, l(:attachment_all), :value => '0') +options_for_select(sufixtypes),
|
||||
<%= select_tag "attach_sufix_browse", content_tag(:option, l(:attachment_all), :value => '0') + options_for_select(sufixtypes),
|
||||
:onchange => "course_attachment_contenttypes_searchex(this.value)" %>
|
||||
<% end %>
|
||||
</div>
|
||||
|
|
|
@ -1,14 +1,16 @@
|
|||
<h3><%=l(:label_attachment_new)%></h3>
|
||||
<h3>
|
||||
<%=l(:label_attachment_new)%>
|
||||
</h3>
|
||||
<% attachmenttypes = course.attachmenttypes %>
|
||||
<%= error_messages_for 'attachment' %>
|
||||
<div id="network_issue" style="color: red; display: none;">上传出现错误,请您检查您的网络环境,并刷新页面重新上传。</div>
|
||||
<%= form_tag(course_files_path(course), :multipart => true,:remote => true,:method => :post,:name=>"upload_form", :class => "tabular") do %>
|
||||
<div class="box">
|
||||
<p>
|
||||
<% if attachmenttypes.any? %>
|
||||
<%= l(:attachment_type) %></label>
|
||||
<%= select_tag "attachment_type",
|
||||
options_from_collection_for_select(attachmenttypes, "id",
|
||||
"typeName", 2), {style: 'width:100px'} %>
|
||||
options_from_collection_for_select(attachmenttypes, "id","typeName", 2), {style: 'width:100px'} %>
|
||||
<% end %>
|
||||
</p>
|
||||
|
||||
|
|
|
@ -9,57 +9,55 @@
|
|||
<col class="vzebra-even"/>
|
||||
<col class="vzebra-odd"/>
|
||||
<col class="vzebra-even"/>
|
||||
<!-- <col class="vzebra-odd"/> -->
|
||||
</colgroup>
|
||||
<thead>
|
||||
<tr>
|
||||
<%= sort_header_tag('filename', :caption => l(:field_filename), :scope => "col", :id => "vzebra-adventure" ,:class => "tableth") %>
|
||||
<%#= sort_header_tag('created_on', :caption => l(:label_date), :default_order => 'desc', :scope => "col", :id => "vzebra-comedy") %>
|
||||
<%= sort_header_tag('size', :caption => l(:field_filesize), :default_order => 'desc', :scope => "col", :id => "vzebra-children",:class => "tableth") %>
|
||||
<%= sort_header_tag('attach_type', :caption => l(:attachment_browse), :default_order => 'desc', :scope => "col", :id => "vzebra-attachmenttype",:class => "tableth") %>
|
||||
<%= sort_header_tag('content_type', :caption => l(:attachment_sufix_browse), :default_order => 'desc', :scope => "col", :id => "vzebra-contenttype",:class => "tableth") %>
|
||||
<%= content_tag('th', l(:attachment_sufix_browse), id: 'vzebra-contenttype', class: 'tableth', style: 'color: black')%>
|
||||
<%= sort_header_tag('field_file_dense', :caption => l(:field_file_dense), :default_order => 'desc', :scope => "col", :id => "vzebra-field_file_dense",:class => "tableth") %>
|
||||
<%= sort_header_tag('downloads', :caption => l(:field_downloads), :default_order => 'desc', :scope => "col", :id => "vzebra-action",:class => "tableth") %>
|
||||
<%= sort_header_tag('operation', :caption => "", :scope => "col", :id => "vzebra-children",:class => "tableth") %>
|
||||
<!-- <%#= sort_header_tag('description', :caption => l(:field_description)) %> -->
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<%# @containers.each do |container| %>
|
||||
<%# next if container.attachments.empty? -%>
|
||||
<%# if container.is_a?(Version) -%>
|
||||
<!--<tr>
|
||||
<th colspan="5" align="left" style="line-height: 30px; font-size: 14px; ">
|
||||
<%#= link_to(h(container), {:controller => 'versions', :action => 'show', :id => container}, :class => "icon icon-package", :style => "color: #666666;") %>
|
||||
</th>
|
||||
</tr>-->
|
||||
<%# end -%>
|
||||
<% if @curse_attachments != nil %>
|
||||
<% @curse_attachments.each do |file| %>
|
||||
<%if file.is_public == 0 && !User.current.member_of_course?(@course)%>
|
||||
<%next%>
|
||||
<%end%>
|
||||
<tr class="file <%= cycle("odd", "odd") %>">
|
||||
<td style="white-space: nowrap;overflow: hidden;text-overflow: ellipsis;" class="filename" style="font-size: 13px; "><%= link_to_attachment file, :download => true, :title => file.filename+"\n"+file.description.to_s, :style => "width: 230px; overflow: hidden; white-space: nowrap;text-overflow: ellipsis;" %></td>
|
||||
<!-- <td class="created_on"><%#= format_time(file.created_on) %></td> -->
|
||||
<td style="white-space: nowrap;overflow: hidden;text-overflow: ellipsis;" class="filesize"><%= number_to_human_size(file.filesize) %></td>
|
||||
<td style="white-space: nowrap;overflow: hidden;text-overflow: ellipsis;" class="filename" style="font-size: 13px; ">
|
||||
<%= link_to_attachment file, :download => true, :title => file.filename+"\n"+file.description.to_s, :style => "width: 230px; overflow: hidden; white-space: nowrap;text-overflow: ellipsis;" %>
|
||||
</td>
|
||||
<td style="white-space: nowrap;overflow: hidden;text-overflow: ellipsis;" class="filesize">
|
||||
<%= number_to_human_size(file.filesize) %>
|
||||
</td>
|
||||
<td style="white-space: nowrap;overflow: hidden;text-overflow: ellipsis;" class="attach_type">
|
||||
<span id="attach_type_id_label<%= file.id %>" style="white-space:nowrap;"><%= file.attachmentstype.typeName unless file.attachmentstype.nil? %></span>
|
||||
<span id="attach_type_id_edit<%= file.id %>" style="white-space:nowrap;">
|
||||
<%= render :partial => 'attachments/course_type_edit', :locals => {:attachmenttypes => attachmenttypes, :attachment => file, :contentype => selContentType} %>
|
||||
</span>
|
||||
<span id="attach_type_id_label<%= file.id %>" style="white-space:nowrap;">
|
||||
<%= file.attachmentstype.typeName unless file.attachmentstype.nil? %>
|
||||
</span>
|
||||
<span id="attach_type_id_edit<%= file.id %>" style="white-space:nowrap;">
|
||||
<%= render :partial => 'attachments/course_type_edit', :locals => {:attachmenttypes => attachmenttypes, :attachment => file, :contentype => selContentType} %>
|
||||
</span>
|
||||
</td>
|
||||
<td style="white-space: nowrap;overflow: hidden;text-overflow: ellipsis;" class="content_type">
|
||||
<%= file.show_suffix_type %>
|
||||
</td>
|
||||
<td style="white-space: nowrap;overflow: hidden;text-overflow: ellipsis;" class="content_type"><%= file.show_suffix_type %></td>
|
||||
<td style="white-space: nowrap;overflow: hidden;text-overflow: ellipsis;" class="field_file_dense">
|
||||
<span id="field_file_dense_id_label<%= file.id %>" style="white-space:nowrap;"><%= file.file_dense_str %></span>
|
||||
<span id="field_file_dense_id_label<%= file.id %>" style="white-space:nowrap;">
|
||||
<%= file.file_dense_str %>
|
||||
</span>
|
||||
|
||||
<span id="field_file_dense_id_edit<%= file.id %>" style="white-space:nowrap;">
|
||||
<%= render :partial => 'course_file_dense_edit', :locals => {:file_dense_list => file.file_dense_list,
|
||||
:attachment => file} %>
|
||||
</span>
|
||||
<span id="field_file_dense_id_edit<%= file.id %>" style="white-space:nowrap;">
|
||||
<%= render :partial => 'course_file_dense_edit', :locals => {:file_dense_list => file.file_dense_list,
|
||||
:attachment => file} %>
|
||||
</span>
|
||||
</td>
|
||||
<td style="white-space: nowrap;overflow: hidden;text-overflow: ellipsis;" class="downloads">
|
||||
<%= file.downloads %>
|
||||
</td>
|
||||
<td style="white-space: nowrap;overflow: hidden;text-overflow: ellipsis;" class="downloads"><%= file.downloads %></td>
|
||||
<!-- <td class="digest" width="300px"><%= file.description %></td> -->
|
||||
<td style="white-space: nowrap;overflow: hidden;text-overflow: ellipsis;" align="center">
|
||||
<%= link_to(image_tag('delete.png'), attachment_path(file),
|
||||
:data => {:confirm => l(:text_are_you_sure)}, :method => :delete) if delete_allowed %>
|
||||
|
@ -77,13 +75,6 @@
|
|||
</tr>
|
||||
<% end -%>
|
||||
<% end %>
|
||||
<%# reset_cycle %>
|
||||
<%# end -%>
|
||||
<!-- %= h downloadAll(@containers) % -->
|
||||
<!-- %= link_to "download all file", (downloadAll(@containers)) % -->
|
||||
|
||||
|
||||
|
||||
</tbody>
|
||||
</table>
|
||||
<!--分页-->
|
||||
|
|
|
@ -3,25 +3,22 @@
|
|||
<% attachmenttypes = @course.attachmenttypes %>
|
||||
<% delete_allowed = User.current.allowed_to?(:manage_files, @course) %>
|
||||
<% edit_allowed = User.current.allowed_to?(:manage_files, @course) %>
|
||||
<table class="list files" id="ver-zebra">
|
||||
<table class="list files" id="ver-zebra" style="table-layout: fixed;">
|
||||
<colgroup>
|
||||
<col class="vzebra-odd"/>
|
||||
<col class="vzebra-even"/>
|
||||
<col class="vzebra-odd"/>
|
||||
<col class="vzebra-even"/>
|
||||
<!-- <col class="vzebra-odd"/> -->
|
||||
</colgroup>
|
||||
<thead>
|
||||
<tr>
|
||||
<%= sort_header_tag('filename', :caption => l(:field_filename), :scope => "col", :id => "vzebra-adventure") %>
|
||||
<%#= sort_header_tag('created_on', :caption => l(:label_date), :default_order => 'desc', :scope => "col", :id => "vzebra-comedy") %>
|
||||
<%= sort_header_tag('size', :caption => l(:field_filesize), :default_order => 'desc', :scope => "col", :id => "vzebra-children") %>
|
||||
<%= sort_header_tag('attach_type', :caption => l(:attachment_browse), :default_order => 'desc', :scope => "col", :id => "vzebra-attachmenttype") %>
|
||||
<%= sort_header_tag('content_type', :caption => l(:attachment_sufix_browse), :default_order => 'desc', :scope => "col", :id => "vzebra-contenttype") %>
|
||||
<%= sort_header_tag('field_file_dense', :caption => l(:field_file_dense), :default_order => 'desc', :scope => "col", :id => "vzebra-field_file_dense") %>
|
||||
<%= sort_header_tag('downloads', :caption => l(:field_downloads), :default_order => 'desc', :scope => "col", :id => "vzebra-action") %>
|
||||
<%= sort_header_tag('operation', :caption => "", :scope => "col", :id => "vzebra-children") %>
|
||||
<!-- <%= sort_header_tag('description', :caption => l(:field_description)) %> -->
|
||||
<%= sort_header_tag('filename', :caption => l(:field_filename), :scope => "col", :id => "vzebra-adventure" ,:class => "tableth") %>
|
||||
<%= sort_header_tag('size', :caption => l(:field_filesize), :default_order => 'desc', :scope => "col", :id => "vzebra-children",:class => "tableth") %>
|
||||
<%= sort_header_tag('attach_type', :caption => l(:attachment_browse), :default_order => 'desc', :scope => "col", :id => "vzebra-attachmenttype",:class => "tableth") %>
|
||||
<%= content_tag('th', l(:attachment_sufix_browse), id: 'vzebra-contenttype', class: 'tableth', style: 'color: black')%>
|
||||
<%= sort_header_tag('field_file_dense', :caption => l(:field_file_dense), :default_order => 'desc', :scope => "col", :id => "vzebra-field_file_dense",:class => "tableth") %>
|
||||
<%= sort_header_tag('downloads', :caption => l(:field_downloads), :default_order => 'desc', :scope => "col", :id => "vzebra-action",:class => "tableth") %>
|
||||
<%= sort_header_tag('operation', :caption => "", :scope => "col", :id => "vzebra-children",:class => "tableth") %>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
|
@ -33,28 +30,36 @@
|
|||
<% end %>
|
||||
<% if isTypeOk(file, selAttachType, selContentType) %>
|
||||
<tr class="file <%= cycle("odd", "odd") %>">
|
||||
<td class="filename" style="font-size: 13px; "><%= link_to_attachment file, :download => true, :title => file.filename+"\n"+file.description.to_s, :style => "width: 230px; overflow: hidden; white-space: nowrap;text-overflow: ellipsis;" %></td>
|
||||
<!-- <td class="created_on"><%#= format_time(file.created_on) %></td> -->
|
||||
<td class="filename" style="font-size: 13px; ">
|
||||
<%= link_to_attachment file, :download => true, :title => file.filename+"\n"+file.description.to_s, :style => "width: 230px; overflow: hidden; white-space: nowrap;text-overflow: ellipsis;" %>
|
||||
</td>
|
||||
<td class="filesize"><%= number_to_human_size(file.filesize) %></td>
|
||||
<td class="attach_type">
|
||||
<span id="attach_type_id_label<%= file.id %>" style="white-space:nowrap;"><%= file.attachmentstype.nil? ? l(:label_unknow_type):file.attachmentstype.typeName %></span>
|
||||
<span id="attach_type_id_label<%= file.id %>" style="white-space:nowrap;">
|
||||
<%= file.attachmentstype.nil? ? l(:label_unknow_type):file.attachmentstype.typeName %>
|
||||
</span>
|
||||
|
||||
<span id="attach_type_id_edit<%= file.id %>" style="white-space:nowrap;">
|
||||
<%= render :partial => 'attachments/course_type_edit', :locals => {:attachmenttypes => attachmenttypes,
|
||||
:attachment => file, :contentype => selContentType} %>
|
||||
</span>
|
||||
<span id="attach_type_id_edit<%= file.id %>" style="white-space:nowrap;">
|
||||
<%= render :partial => 'attachments/course_type_edit', :locals => {:attachmenttypes => attachmenttypes,
|
||||
:attachment => file, :contentype => selContentType} %>
|
||||
</span>
|
||||
</td>
|
||||
<td class="content_type">
|
||||
<%= file.show_suffix_type %>
|
||||
</td>
|
||||
<td class="content_type"><%= file.show_suffix_type %></td>
|
||||
<td class="field_file_dense">
|
||||
<span id="field_file_dense_id_label<%= file.id %>" style="white-space:nowrap;"><%= file.file_dense_str %></span>
|
||||
<span id="field_file_dense_id_label<%= file.id %>" style="white-space:nowrap;">
|
||||
<%= file.file_dense_str %>
|
||||
</span>
|
||||
|
||||
<span id="field_file_dense_id_edit<%= file.id %>" style="white-space:nowrap;">
|
||||
<%= render :partial => 'course_file_dense_edit', :locals => {:file_dense_list => file.file_dense_list,
|
||||
:attachment => file} %>
|
||||
</span>
|
||||
<span id="field_file_dense_id_edit<%= file.id %>" style="white-space:nowrap;">
|
||||
<%= render :partial => 'course_file_dense_edit', :locals => {:file_dense_list => file.file_dense_list,
|
||||
:attachment => file} %>
|
||||
</span>
|
||||
</td>
|
||||
<td class="downloads">
|
||||
<%= file.downloads %>
|
||||
</td>
|
||||
<td class="downloads"><%= file.downloads %></td>
|
||||
<!-- <td class="digest" width="300px"><%= file.description %></td> -->
|
||||
<td align="center">
|
||||
<%= link_to(image_tag('delete.png'), attachment_path(file),
|
||||
:data => {:confirm => l(:text_are_you_sure)}, :method => :delete) if delete_allowed %>
|
||||
|
@ -75,9 +80,6 @@
|
|||
<% end -%>
|
||||
<% reset_cycle %>
|
||||
<% end -%>
|
||||
<!-- %= h downloadAll(@containers) % -->
|
||||
<!-- %= link_to "download all file", (downloadAll(@containers)) % -->
|
||||
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
|
|
|
@ -15,52 +15,51 @@
|
|||
<thead>
|
||||
<tr>
|
||||
<%= sort_header_tag('filename', :caption => l(:field_filename), :scope => "col", :id => "vzebra-adventure",:class => "tableth") %>
|
||||
<%#= sort_header_tag('created_on', :caption => l(:label_date), :default_order => 'desc', :scope => "col", :id => "vzebra-comedy") %>
|
||||
<%= sort_header_tag('size', :caption => l(:field_filesize), :default_order => 'desc', :scope => "col", :id => "vzebra-children",:class => "tableth") %>
|
||||
<%= sort_header_tag('attach_type', :caption => l(:attachment_browse), :default_order => 'desc', :scope => "col", :id => "vzebra-attachmenttype",:class => "tableth") %>
|
||||
<%= sort_header_tag('content_type', :caption => l(:attachment_sufix_browse), :default_order => 'desc', :scope => "col", :id => "vzebra-contenttype",:class => "tableth") %>
|
||||
<%= sort_header_tag('field_file_dense', :caption => l(:field_file_dense), :default_order => 'desc', :scope => "col", :id => "vzebra-field_file_dense",:class => "tableth") %>
|
||||
<%= sort_header_tag('downloads', :caption => l(:field_downloads), :default_order => 'desc', :scope => "col", :id => "vzebra-action",:class => "tableth") %>
|
||||
<%= sort_header_tag('operation', :caption => "", :scope => "col", :id => "vzebra-children",:class => "tableth") %>
|
||||
<!-- <%#= sort_header_tag('description', :caption => l(:field_description)) %> -->
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<%# @containers.each do |container| %>
|
||||
<%# next if container.attachments.empty? -%>
|
||||
<%# if container.is_a?(Version) -%>
|
||||
<!--tr>
|
||||
<th colspan="5" align="left" style="line-height: 30px; font-size: 14px; ">
|
||||
<%#= link_to(h(container), {:controller => 'versions', :action => 'show', :id => container}, :class => "icon icon-package", :style => "color: #666666;") %>
|
||||
</th>
|
||||
</tr-->
|
||||
<%# end -%>
|
||||
<% if @curse_attachments != nil %>
|
||||
<% @curse_attachments.each do |file| %>
|
||||
<%if file.is_public == 0 && !User.current.member_of?(@project)%>
|
||||
<%next%>
|
||||
<%end%>
|
||||
<tr class="file <%= cycle("odd", "odd") %>">
|
||||
<td style="white-space: nowrap;overflow: hidden;text-overflow: ellipsis;" class="filename" style="font-size: 13px; "><%= link_to_attachment file, :download => true, :title => file.filename+"\n"+file.description.to_s, :style => "width: 230px; overflow: hidden; white-space: nowrap;text-overflow: ellipsis;" %></td>
|
||||
<!-- <td class="created_on"><%#= format_time(file.created_on) %></td> -->
|
||||
<td style="white-space: nowrap;overflow: hidden;text-overflow: ellipsis;" class="filesize"><%= number_to_human_size(file.filesize) %></td>
|
||||
<td style="white-space: nowrap;overflow: hidden;text-overflow: ellipsis;" class="filename" style="font-size: 13px; ">
|
||||
<%= link_to_attachment file, :download => true, :title => file.filename+"\n"+file.description.to_s, :style => "width: 230px; overflow: hidden; white-space: nowrap;text-overflow: ellipsis;" %>
|
||||
</td>
|
||||
<td style="white-space: nowrap;overflow: hidden;text-overflow: ellipsis;" class="filesize">
|
||||
<%= number_to_human_size(file.filesize) %>
|
||||
</td>
|
||||
<td style="white-space: nowrap;overflow: hidden;text-overflow: ellipsis;" class="attach_type">
|
||||
<span id="attach_type_id_label<%= file.id %>" style="white-space:nowrap;"><%= file.attachmentstype.typeName %></span>
|
||||
<span id="attach_type_id_label<%= file.id %>" style="white-space:nowrap;">
|
||||
<%= file.attachmentstype.typeName %>
|
||||
</span>
|
||||
<span id="attach_type_id_edit<%= file.id %>" style="white-space:nowrap;">
|
||||
<%= render :partial => 'attachments/type_edit', :locals => {:attachmenttypes => attachmenttypes, :attachment => file, :contentype => selContentType} %>
|
||||
</span>
|
||||
</td>
|
||||
<td style="white-space: nowrap;overflow: hidden;text-overflow: ellipsis;" class="content_type"><%= file.show_suffix_type %></td>
|
||||
<td style="white-space: nowrap;overflow: hidden;text-overflow: ellipsis;" class="field_file_dense">
|
||||
<span id="field_file_dense_id_label<%= file.id %>" style="white-space:nowrap;"><%= file.file_dense_str %></span>
|
||||
|
||||
<span id="field_file_dense_id_edit<%= file.id %>" style="white-space:nowrap;">
|
||||
<%= render :partial => 'project_file_dense_edit', :locals => {:file_dense_list => file.file_dense_list,
|
||||
:attachment => file} %>
|
||||
</span>
|
||||
<td style="white-space: nowrap;overflow: hidden;text-overflow: ellipsis;" class="content_type">
|
||||
<%= file.show_suffix_type %>
|
||||
</td>
|
||||
<td style="white-space: nowrap;overflow: hidden;text-overflow: ellipsis;" class="field_file_dense">
|
||||
<span id="field_file_dense_id_label<%= file.id %>" style="white-space:nowrap;">
|
||||
<%= file.file_dense_str %>
|
||||
</span>
|
||||
|
||||
<span id="field_file_dense_id_edit<%= file.id %>" style="white-space:nowrap;">
|
||||
<%= render :partial => 'project_file_dense_edit', :locals => {:file_dense_list => file.file_dense_list,
|
||||
:attachment => file} %>
|
||||
</span>
|
||||
</td>
|
||||
<td style="white-space: nowrap;overflow: hidden;text-overflow: ellipsis;" class="downloads">
|
||||
<%= file.downloads %>
|
||||
</td>
|
||||
<td style="white-space: nowrap;overflow: hidden;text-overflow: ellipsis;" class="downloads"><%= file.downloads %></td>
|
||||
<!-- <td class="digest" width="300px"><%= file.description %></td> -->
|
||||
<td style="white-space: nowrap;overflow: hidden;text-overflow: ellipsis;" align="center">
|
||||
<%= link_to(image_tag('delete.png'), attachment_path(file),
|
||||
:data => {:confirm => l(:text_are_you_sure)}, :method => :delete) if delete_allowed %>
|
||||
|
@ -73,15 +72,13 @@
|
|||
<%= render :partial => 'tags/tag', :locals => {:obj => file, :object_flag => "6"} %>
|
||||
<div class="tags_gradint"></div>
|
||||
</div>
|
||||
<div class="read-more hidden"><a href="javascript:void(0);" onclick="readmore(this);"> 更多 </a></div>
|
||||
<div class="read-more hidden">
|
||||
<a href="javascript:void(0);" onclick="readmore(this);"> 更多 </a>
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
<% end -%>
|
||||
<%# reset_cycle %>
|
||||
<% end -%>
|
||||
<!-- %= h downloadAll(@containers) % -->
|
||||
<!-- %= link_to "download all file", (downloadAll(@containers)) % -->
|
||||
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
<% attachmenttypes = @project.attachmenttypes %>
|
||||
<% delete_allowed = User.current.allowed_to?(:manage_files, @project) %>
|
||||
<% edit_allowed = User.current.allowed_to?(:manage_files, @project) %>
|
||||
<table class="list files" id="ver-zebra">
|
||||
<table class="list files" id="ver-zebra" style="table-layout: fixed;">
|
||||
<colgroup>
|
||||
<col class="vzebra-odd"/>
|
||||
<col class="vzebra-even"/>
|
||||
|
@ -13,15 +13,13 @@
|
|||
</colgroup>
|
||||
<thead>
|
||||
<tr>
|
||||
<%= sort_header_tag('filename', :caption => l(:field_filename), :scope => "col", :id => "vzebra-adventure") %>
|
||||
<%#= sort_header_tag('created_on', :caption => l(:label_date), :default_order => 'desc', :scope => "col", :id => "vzebra-comedy") %>
|
||||
<%= sort_header_tag('size', :caption => l(:field_filesize), :default_order => 'desc', :scope => "col", :id => "vzebra-children") %>
|
||||
<%= sort_header_tag('attach_type', :caption => l(:attachment_browse), :default_order => 'desc', :scope => "col", :id => "vzebra-attachmenttype") %>
|
||||
<%= sort_header_tag('content_type', :caption => l(:attachment_sufix_browse), :default_order => 'desc', :scope => "col", :id => "vzebra-contenttype") %>
|
||||
<%= sort_header_tag('field_file_dense', :caption => l(:field_file_dense), :default_order => 'desc', :scope => "col", :id => "vzebra-field_file_dense") %>
|
||||
<%= sort_header_tag('downloads', :caption => l(:field_downloads), :default_order => 'desc', :scope => "col", :id => "vzebra-action") %>
|
||||
<%= sort_header_tag('operation', :caption => "", :scope => "col", :id => "vzebra-children") %>
|
||||
<!-- <%= sort_header_tag('description', :caption => l(:field_description)) %> -->
|
||||
<%= sort_header_tag('filename', :caption => l(:field_filename), :scope => "col", :id => "vzebra-adventure" ,:class => "tableth") %>
|
||||
<%= sort_header_tag('size', :caption => l(:field_filesize), :default_order => 'desc', :scope => "col", :id => "vzebra-children",:class => "tableth") %>
|
||||
<%= sort_header_tag('attach_type', :caption => l(:attachment_browse), :default_order => 'desc', :scope => "col", :id => "vzebra-attachmenttype",:class => "tableth") %>
|
||||
<%= content_tag('th', l(:attachment_sufix_browse), id: 'vzebra-contenttype', class: 'tableth', style: 'color: black')%>
|
||||
<%= sort_header_tag('field_file_dense', :caption => l(:field_file_dense), :default_order => 'desc', :scope => "col", :id => "vzebra-field_file_dense",:class => "tableth") %>
|
||||
<%= sort_header_tag('downloads', :caption => l(:field_downloads), :default_order => 'desc', :scope => "col", :id => "vzebra-action",:class => "tableth") %>
|
||||
<%= sort_header_tag('operation', :caption => "", :scope => "col", :id => "vzebra-children",:class => "tableth") %>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
|
@ -33,28 +31,38 @@
|
|||
<% end %>
|
||||
<% if isTypeOk(file, selAttachType, selContentType) %>
|
||||
<tr class="file <%= cycle("odd", "odd") %>">
|
||||
<td class="filename" style="font-size: 13px; "><%= link_to_attachment file, :download => true, :title => file.filename+"\n"+file.description.to_s, :style => "width: 230px; overflow: hidden; white-space: nowrap;text-overflow: ellipsis;" %></td>
|
||||
<!-- <td class="created_on"><%#= format_time(file.created_on) %></td> -->
|
||||
<td class="filesize"><%= number_to_human_size(file.filesize) %></td>
|
||||
<td class="filename" style="font-size: 13px; ">
|
||||
<%= link_to_attachment file, :download => true, :title => file.filename+"\n"+file.description.to_s, :style => "width: 230px; overflow: hidden; white-space: nowrap;text-overflow: ellipsis;" %>
|
||||
</td>
|
||||
<td class="filesize">
|
||||
<%= number_to_human_size(file.filesize) %>
|
||||
</td>
|
||||
<td class="attach_type">
|
||||
<span id="attach_type_id_label<%= file.id %>" style="white-space:nowrap;"><%= file.attachmentstype.nil? ? l(:label_unknow_type):file.attachmentstype.typeName %></span>
|
||||
<span id="attach_type_id_label<%= file.id %>" style="white-space:nowrap;">
|
||||
<%= file.attachmentstype.nil? ? l(:label_unknow_type):file.attachmentstype.typeName %>
|
||||
</span>
|
||||
|
||||
<span id="attach_type_id_edit<%= file.id %>" style="white-space:nowrap;">
|
||||
<%= render :partial => 'attachments/type_edit', :locals => {:attachmenttypes => attachmenttypes,
|
||||
:attachment => file, :contentype => selContentType} %>
|
||||
</span>
|
||||
<span id="attach_type_id_edit<%= file.id %>" style="white-space:nowrap;">
|
||||
<%= render :partial => 'attachments/type_edit', :locals => {:attachmenttypes => attachmenttypes,
|
||||
:attachment => file, :contentype => selContentType} %>
|
||||
</span>
|
||||
</td>
|
||||
<td class="content_type">
|
||||
<%= file.show_suffix_type %>
|
||||
</td>
|
||||
<td class="content_type"><%= file.show_suffix_type %></td>
|
||||
<td class="field_file_dense">
|
||||
<span id="field_file_dense_id_label<%= file.id %>" style="white-space:nowrap;"><%= file.file_dense_str %></span>
|
||||
<span id="field_file_dense_id_label<%= file.id %>" style="white-space:nowrap;">
|
||||
<%= file.file_dense_str %>
|
||||
</span>
|
||||
|
||||
<span id="field_file_dense_id_edit<%= file.id %>" style="white-space:nowrap;">
|
||||
<%= render :partial => 'project_file_dense_edit', :locals => {:file_dense_list => file.file_dense_list,
|
||||
:attachment => file} %>
|
||||
</span>
|
||||
<span id="field_file_dense_id_edit<%= file.id %>" style="white-space:nowrap;">
|
||||
<%= render :partial => 'project_file_dense_edit', :locals => {:file_dense_list => file.file_dense_list,
|
||||
:attachment => file} %>
|
||||
</span>
|
||||
</td>
|
||||
<td class="downloads">
|
||||
<%= file.downloads %>
|
||||
</td>
|
||||
<td class="downloads"><%= file.downloads %></td>
|
||||
<!-- <td class="digest" width="300px"><%= file.description %></td> -->
|
||||
<td align="center">
|
||||
<%= link_to(image_tag('delete.png'), attachment_path(file),
|
||||
:data => {:confirm => l(:text_are_you_sure)}, :method => :delete) if delete_allowed %>
|
||||
|
@ -67,7 +75,8 @@
|
|||
<%= render :partial => 'tags/tag', :locals => {:obj => file, :object_flag => "6"} %>
|
||||
<div class="tags_gradint"></div>
|
||||
</div>
|
||||
<div class="read-more hidden"><a href="javascript:void(0);" onclick="readmore(this);"> 更多 </a>
|
||||
<div class="read-more hidden">
|
||||
<a href="javascript:void(0);" onclick="readmore(this);"> 更多 </a>
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
|
@ -75,9 +84,6 @@
|
|||
<% end -%>
|
||||
<% reset_cycle %>
|
||||
<% end -%>
|
||||
<!-- %= h downloadAll(@containers) % -->
|
||||
<!-- %= link_to "download all file", (downloadAll(@containers)) % -->
|
||||
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
|
|
|
@ -1,13 +1,13 @@
|
|||
<% if @attachtype==0 && @contenttype=='0' %>
|
||||
<% if @project%>
|
||||
$("#all_browse_div").html('<%= j(render partial: "show_all_attachment")%>');
|
||||
<% elsif @course%>
|
||||
$("#all_browse_div").html('<%= j(render partial: "course_show_all_attachment")%>');
|
||||
<%end%>
|
||||
<% if @project%>
|
||||
$("#all_browse_div").html('<%= j(render partial: "show_all_attachment")%>');
|
||||
<% elsif @course%>
|
||||
$("#all_browse_div").html('<%= j(render partial: "course_show_all_attachment")%>');
|
||||
<%end%>
|
||||
<%else%>
|
||||
<% if @project%>
|
||||
$("#all_browse_div").html('<%= j(render partial: "sort_by_attachtypel")%>')
|
||||
<% elsif @course%>
|
||||
$("#all_browse_div").html('<%= j(render partial: "course_sort_by_attachtypel")%>')
|
||||
<%end%>;
|
||||
<% if @project%>
|
||||
$("#all_browse_div").html('<%= j(render partial: "sort_by_attachtypel")%>')
|
||||
<% elsif @course%>
|
||||
$("#all_browse_div").html('<%= j(render partial: "course_sort_by_attachtypel")%>')
|
||||
<%end%>;
|
||||
<%end%>
|
||||
|
|
|
@ -120,16 +120,15 @@
|
|||
|
||||
function course_attachment_contenttypes_searchex(value) {
|
||||
<% if @course%>
|
||||
$.ajax({
|
||||
$.ajax({
|
||||
url: '<%=getattachtype_course_files_path(course_id: @course)%>',
|
||||
type: "POST",
|
||||
data: {
|
||||
type: $('#attachment_browse').val(),
|
||||
contentType: encodeURIComponent(value)
|
||||
}
|
||||
|
||||
url: '<%=getattachtype_course_files_path(course_id: @course)%>',
|
||||
type: "POST",
|
||||
data: {
|
||||
type: $('#attachment_browse').val(),
|
||||
contentType: encodeURIComponent(value)
|
||||
}
|
||||
|
||||
}).complete(eval_ajax);
|
||||
}).complete(eval_ajax);
|
||||
<%end%>
|
||||
}
|
||||
function course_attachtype_edit(value) {
|
||||
|
|
|
@ -18,9 +18,12 @@
|
|||
<%= f.text_field :name, :required => true, :style => 'width: 100%;', :class => 'create-share' %>
|
||||
</div>
|
||||
<div>
|
||||
<script src="/javascripts/ckeditor/ckeditor.js?1404953555" type="text/javascript"></script>
|
||||
<%= f.text_area :description, :required => true, :id => 'editor01' %>
|
||||
<script type="text/javascript">var ckeditor=CKEDITOR.replace('editor01',{height:300});</script>
|
||||
<script src="http://<%= Setting.host_name%>/javascripts/ckeditor/ckeditor.js?1404953555" type="text/javascript"></script>
|
||||
<p style="max-width:680px">
|
||||
<%= f.text_area :description, :required => true, :id => 'editor01' %>
|
||||
</p>
|
||||
<script type="text/javascript">var ckeditor=CKEDITOR.replace('editor01');</script>
|
||||
|
||||
<p style="color: #ff0000">(<%= l(:label_forums_max_length) %>)</p>
|
||||
</div>
|
||||
<div class="actions" style=" padding-top: 10px; float:right">
|
||||
|
|
|
@ -7,14 +7,12 @@
|
|||
|
||||
<!--gcm-->
|
||||
<p>
|
||||
<%= @organize.description.html_safe unless @organize.nil?%>
|
||||
<%= @organizer.description.html_safe unless @organizer.nil?%>
|
||||
</p>
|
||||
<div id="logo_link">
|
||||
<% unless @companies.nil?%>
|
||||
<% @companies.each do |company| %>
|
||||
<% @companies && @companies.each do |company| %>
|
||||
<span class="footer_logo_link"><%= link_to image_tag(url_to_avatar(company),:size=>"100x30",:alt=>company.name),company.url, :target => "_blank" %></span>
|
||||
<% end %>
|
||||
<% end %>
|
||||
</div>
|
||||
<!--gcm-->
|
||||
|
||||
|
|
|
@ -36,7 +36,6 @@
|
|||
<%= yield %>
|
||||
<%= call_hook :view_layouts_base_content %>
|
||||
<div style="clear:both;"></div>
|
||||
<%= render_flash_messages %>
|
||||
</div>
|
||||
<%= render :partial => 'layouts/base_footer'%>
|
||||
</div>
|
||||
|
|
|
@ -112,7 +112,7 @@
|
|||
<tr>
|
||||
<td><%= l(:lable_contest_user) %><%= link_to(@user.name, user_path(@user))%></td>
|
||||
</tr>
|
||||
<!-- end -->
|
||||
|
||||
<tr>
|
||||
<td><%= l(:label_bids_reward_method) %><%= @bid.budget%></td>
|
||||
</tr>
|
||||
|
|
|
@ -6,7 +6,9 @@
|
|||
<html lang="en">
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<title><%= h html_title %></title>
|
||||
<title>
|
||||
<%= h html_title %>
|
||||
</title>
|
||||
<meta name="description" content="<%= Redmine::Info.app_name %>"/>
|
||||
<meta name="keywords" content="issue,bug,tracker"/>
|
||||
<%= csrf_meta_tag %>
|
||||
|
@ -32,7 +34,11 @@
|
|||
<table>
|
||||
<tr>
|
||||
<td class="info_font" style="width: 240px; color: #15bccf">高校课程实践社区</td>
|
||||
<td style="color: #15bccf"><strong><%= l(:label_user_location) %> : </strong></td>
|
||||
<td style="color: #15bccf">
|
||||
<strong>
|
||||
<%= l(:label_user_location) %> :
|
||||
</strong>
|
||||
</td>
|
||||
<td rowspan="2" width="250px">
|
||||
<div class="top-content-search">
|
||||
<%= form_tag(:controller => 'courses', :action => 'search', :method => :get) do %>
|
||||
|
@ -43,10 +49,16 @@
|
|||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td style="padding-left: 8px"><%= link_to request.host()+"/course", :controller => 'courses', :action => 'index' %></td>
|
||||
<td><p class="top-content-list"><%= link_to "主页", home_path %>
|
||||
> <%= link_to l(:label_course_all), :controller => 'courses', :action => 'index' %>
|
||||
> <%= link_to @course.name, nil %></p></td>
|
||||
<td style="padding-left: 8px">
|
||||
<%= link_to request.host()+"/course", :controller => 'courses', :action => 'index' %>
|
||||
</td>
|
||||
<td>
|
||||
<p class="top-content-list">
|
||||
<%= link_to "主页", home_path %>
|
||||
> <%= link_to l(:label_course_all), :controller => 'courses', :action => 'index' %>
|
||||
> <%= link_to @course.name, nil %>
|
||||
</p>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</div>
|
||||
|
@ -67,8 +79,9 @@
|
|||
<td>
|
||||
<table>
|
||||
<tr>
|
||||
<!-- modified by zjc 课程名称添加超链接 -->
|
||||
<td class="info-course"><%= link_to @course.name,course_path(@course) %></td>
|
||||
<td class="info-course">
|
||||
<%= link_to @course.name,course_path(@course) %>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td align="center">
|
||||
|
@ -80,9 +93,6 @@
|
|||
<% else %>
|
||||
<%= join_in_course(@course, User.current) %>
|
||||
<% end %>
|
||||
<%# unless User.current.member_of_course?(@course) %>
|
||||
<!-- <%#= image_tag "/images/fav.png" %> -->
|
||||
<%# end %>
|
||||
<% end %>
|
||||
</div>
|
||||
</td>
|
||||
|
@ -105,30 +115,33 @@
|
|||
<% if User.current.member_of_course?(@course) %>
|
||||
<%= link_to "#{teacherCount(@course)}", course_member_path(@course, :role => 1), :course => '1' %>
|
||||
<% else %>
|
||||
<span><%= teacherCount(@course)%></span> <!--<%= link_to "#{teacherCount(@course)}", "javascript:void(0)", :course => '1' %>-->
|
||||
<span>
|
||||
<%= teacherCount(@course)%>
|
||||
</span>
|
||||
<% end%>
|
||||
</td>
|
||||
<td class="font_index">
|
||||
<% if User.current.member_of_course?(@course) %>
|
||||
<%= link_to "#{studentCount(@course)}", course_member_path(@course, :role => 2), :course => '1' %>
|
||||
<% else %>
|
||||
<span><%= studentCount(@course)%></span>
|
||||
<span>
|
||||
<%= studentCount(@course)%>
|
||||
</span>
|
||||
<% end %>
|
||||
</td>
|
||||
<td class="font_index"><%= link_to files_count, course_files_path(@course) %></td>
|
||||
<td class="font_index">
|
||||
<%= link_to files_count, course_files_path(@course) %>
|
||||
</td>
|
||||
<tr class="font_aram">
|
||||
<td align="center" width="80px" id="teacherCount">
|
||||
<!-- %= l(:label_x_base_courses_member, :count => @course.members.count) % -->
|
||||
<%= l(:label_x_base_courses_teacher, :count => teacherCount(@course)) %>
|
||||
</td>
|
||||
<td align="center" width="80px" id="studentCount">
|
||||
<%= l(:label_x_base_courses_student, :count => studentCount(@course)) %>
|
||||
<!-- %= l(:label_x_course_data, :count => files_count) % -->
|
||||
</td>
|
||||
<td align="center" width="80px">
|
||||
<%= l(:label_x_course_data, :count => files_count) %>
|
||||
</td>
|
||||
|
||||
</tr>
|
||||
</table>
|
||||
<div class="user_underline"></div>
|
||||
|
@ -140,46 +153,74 @@
|
|||
|
||||
<!-- addedby bai 教师姓名加超链接、加入开课时间、结课时间与课时 -->
|
||||
<tr>
|
||||
<td valign="top" style="padding-left: 8px; width:60px"><%= l(:label_main_teacher) %> :</td>
|
||||
<td class="font_lighter_sidebar"><%= link_to(@course.teacher.lastname+@course.teacher.firstname, user_path(@course.teacher)) %></td>
|
||||
<td valign="top" style="padding-left: 8px; width:60px">
|
||||
<%= l(:label_main_teacher) %> :
|
||||
</td>
|
||||
<td class="font_lighter_sidebar">
|
||||
<%= link_to(@course.teacher.lastname+@course.teacher.firstname, user_path(@course.teacher)) %>
|
||||
</td>
|
||||
</tr>
|
||||
<tr class="hidden">
|
||||
<td valign="top" style="padding-left: 8px;">
|
||||
<%= l(:label_setup_time) %> :
|
||||
</td>
|
||||
<td class="font_lighter_sidebar">
|
||||
<%= @course.setup_time %>
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
<tr class="hidden">
|
||||
<td valign="top" style="padding-left: 8px;"><%= l(:label_setup_time) %> :</td>
|
||||
<td class="font_lighter_sidebar"><%= @course.setup_time %></td>
|
||||
</tr>
|
||||
|
||||
<tr class="hidden">
|
||||
<td valign="top" style="padding-left: 8px;"><%= l(:label_endup_time) %> :</td>
|
||||
<td class="font_lighter_sidebar"><%= @course.endup_time %></td>
|
||||
<td valign="top" style="padding-left: 8px;">
|
||||
<%= l(:label_endup_time) %> :
|
||||
</td>
|
||||
<td class="font_lighter_sidebar">
|
||||
<%= @course.endup_time %>
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td valign="top" style="padding-left: 8px;"><%= l(:label_class_period) %> :</td>
|
||||
<td class="font_lighter_sidebar"><%= @course.class_period %> <%= l(:label_class_hour) %></td>
|
||||
<td valign="top" style="padding-left: 8px;">
|
||||
<%= l(:label_class_period) %> :
|
||||
</td>
|
||||
<td class="font_lighter_sidebar">
|
||||
<%= @course.class_period %>
|
||||
<%= l(:label_class_hour) %>
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td valign="top" style="padding-left: 8px;"><%= l(:label_main_term) %> :</td>
|
||||
<td class="font_lighter_sidebar"><%= @course.time %> <%= @course.term %></td>
|
||||
<td valign="top" style="padding-left: 8px;">
|
||||
<%= l(:label_main_term) %> :
|
||||
</td>
|
||||
<td class="font_lighter_sidebar">
|
||||
<%= @course.time %>
|
||||
<%= @course.term %>
|
||||
</td>
|
||||
</tr>
|
||||
<!-- end -->
|
||||
|
||||
<% unless @course.teacher.user_extensions.nil? || @course.teacher.user_extensions.school.nil? %>
|
||||
<tr>
|
||||
<td valign="top" style="padding-left: 8px;"><%= l(:label_teacher_work_unit) %> :</td>
|
||||
<!-- modified by zjc 教师单位添加超链接 -->
|
||||
<td class="font_lighter_sidebar"><a href="http://course.trustie.net/?school_id=<%= @course.teacher.user_extensions.school.id%>"><%= @course.teacher.user_extensions.school %></a></td>
|
||||
<td valign="top" style="padding-left: 8px;">
|
||||
<%= l(:label_teacher_work_unit) %> :
|
||||
</td>
|
||||
<td class="font_lighter_sidebar">
|
||||
<a href="http://<%= Setting.host_course%>/?school_id=<%= @course.teacher.user_extensions.school.id%>">
|
||||
<%= @course.teacher.user_extensions.school %>
|
||||
</a>
|
||||
</td>
|
||||
</tr>
|
||||
<% else %>
|
||||
<tr>
|
||||
<td valign="top" style="padding-left: 8px;"><%= l(:label_teacher_work_unit) %> :</td>
|
||||
<td class="font_lighter_sidebar"><%= l(:field_course_un) %></td>
|
||||
<td valign="top" style="padding-left: 8px;">
|
||||
<%= l(:label_teacher_work_unit) %> :
|
||||
</td>
|
||||
<td class="font_lighter_sidebar">
|
||||
<%= l(:field_course_un) %>
|
||||
</td>
|
||||
</tr>
|
||||
<% end %>
|
||||
|
||||
</table>
|
||||
|
||||
</div>
|
||||
<div class="user_underline"></div>
|
||||
<!--description-->
|
||||
|
@ -187,11 +228,9 @@
|
|||
<div class="font_title_left">
|
||||
<%= l(:label_new_course_description) %>
|
||||
</div>
|
||||
|
||||
<div style="padding-bottom: 8px">
|
||||
<% if @course.description && !@course.description.blank? %>
|
||||
<div class="font_lighter_sidebar" style="word-break:break-all; word-wrap:break-word;">
|
||||
|
||||
<%= textilizable @course.description %>
|
||||
</div>
|
||||
<% else %>
|
||||
|
@ -200,7 +239,10 @@
|
|||
</div>
|
||||
<% end %>
|
||||
<div class="created_on_course">
|
||||
<strong style="color: #068d9c"><%= l(:label_create_time) %>:</strong><%= format_time(@course.created_at) %>
|
||||
<strong style="color: #068d9c">
|
||||
<%= l(:label_create_time) %>:
|
||||
</strong>
|
||||
<%= format_time(@course.created_at) %>
|
||||
</div>
|
||||
</div>
|
||||
<div class="user_underline"></div>
|
||||
|
@ -240,10 +282,6 @@
|
|||
<li>
|
||||
<%= link_to l(:label_course_feedback), course_feedback_path(@course), :class => link_class(:feedback) %>
|
||||
</li>
|
||||
<!-- <li><%= link_to(l(:label_course_repository), {:controller => 'repositories', :action => 'show', :id => @course, :repository_id => nil, :path => nil, :rev => nil, :course => 1}) %></li> -->
|
||||
<% if User.current.logged? && (User.current.admin? || (!Member.where('user_id = ? and course_id = ?', User.current.id, @course.id).first.nil? && (Member.where('user_id = ? and course_id = ?', User.current.id, @course.id).first.roles&Role.where('id = ? or id = ?', 7, 9)).size >0)) %>
|
||||
|
||||
<% end %>
|
||||
</ul>
|
||||
</div>
|
||||
<%= render_flash_messages %>
|
||||
|
@ -257,7 +295,9 @@
|
|||
<%= render :partial => 'layouts/base_footer' %>
|
||||
</div>
|
||||
<div id="ajax-indicator" style="display:none;">
|
||||
<span><%= l(:label_loading) %></span>
|
||||
<span>
|
||||
<%= l(:label_loading) %>
|
||||
</span>
|
||||
</div>
|
||||
<div id="ajax-modal" style="display:none;"></div>
|
||||
</div>
|
||||
|
|
|
@ -8,7 +8,9 @@
|
|||
<meta charset="utf-8" />
|
||||
<meta name="description" content="<%= Redmine::Info.app_name %>" />
|
||||
<meta name="keywords" content="issue,bug,tracker" />
|
||||
<title><%=h html_title %></title>
|
||||
<title>
|
||||
<%=h html_title %>
|
||||
</title>
|
||||
|
||||
<%= csrf_meta_tag %>
|
||||
<%= favicon %>
|
||||
|
@ -33,17 +35,26 @@
|
|||
<table>
|
||||
<tr>
|
||||
<td class="info_font" style="width: 240px; color: #15bccf">高校课程实践社区</td>
|
||||
<td style="width: auto; color: #15bccf"><strong><%= l(:label_user_location) %> : </strong></td>
|
||||
|
||||
<td style="width: auto; color: #15bccf">
|
||||
<strong><%= l(:label_user_location) %> : </strong>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td style="padding-left: 8px">
|
||||
<a><%= link_to request.host()+"/courses", :controller => 'courses', :action => 'index' %></a></td>
|
||||
<td><p class="top-content-list-homework"><%= link_to "主页", home_path %>
|
||||
> <%= link_to l(:label_course_practice), :controller => 'courses', :action => 'index' %> >
|
||||
<span><%= link_to(course.name.to_s, homework_course_path(course)) if course %></span>
|
||||
>
|
||||
<%= link_to(@bid.name, respond_path(@bid)) %></p></td>
|
||||
<a><%= link_to request.host()+"/courses", :controller => 'courses', :action => 'index' %></a>
|
||||
</td>
|
||||
<td>
|
||||
<p class="top-content-list-homework"><%= link_to "主页", home_path %>
|
||||
>
|
||||
<%= link_to l(:label_course_practice), :controller => 'courses', :action => 'index' %>
|
||||
>
|
||||
<span>
|
||||
<%= link_to(course.name.to_s, homework_course_path(course)) if course %>
|
||||
</span>
|
||||
>
|
||||
<%= link_to(@bid.name, respond_path(@bid)) %>
|
||||
</p>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</div>
|
||||
|
@ -93,53 +104,84 @@
|
|||
<table>
|
||||
<tr>
|
||||
<td valign="top" colspan="2" style="font-size: 16px;padding-left: 8px;">
|
||||
<strong><%= l(:label_new_course_description) %> :</strong></td>
|
||||
<strong>
|
||||
<%= l(:label_new_course_description) %> :
|
||||
</strong>
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td class="font_lighter_sidebar" colspan="2" style="padding-left: 8px;"><%= textilizable course.description %></td>
|
||||
<td class="font_lighter_sidebar" colspan="2" style="padding-left: 8px;">
|
||||
<%= textilizable course.description %>
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td valign="top" style="padding-left: 8px;"><%= l(:label_create_time) %> :</td>
|
||||
<td class="font_lighter_sidebar"><%= format_time course.created_at %></td>
|
||||
<td valign="top" style="padding-left: 8px;">
|
||||
<%= l(:label_create_time) %> :
|
||||
</td>
|
||||
<td class="font_lighter_sidebar">
|
||||
<%= format_time course.created_at %>
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td valign="top" style="padding-left: 8px; width:60px">主讲老师 :</td>
|
||||
<td class="font_lighter_sidebar"><%= link_to(course.teacher.lastname+course.teacher.firstname, user_path(course.teacher)) %></td>
|
||||
<td valign="top" style="padding-left: 8px; width:60px">
|
||||
<%= l(:lable_course_teacher) %> :
|
||||
</td>
|
||||
<td class="font_lighter_sidebar">
|
||||
<%= link_to(course.teacher.lastname+course.teacher.firstname, user_path(course.teacher)) %>
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td valign="top" style="padding-left: 8px;"><%= l(:label_class_period) %> :</td>
|
||||
<td class="font_lighter_sidebar"><%= course.class_period.to_s %> <%= l(:label_class_hour) %></td>
|
||||
<td valign="top" style="padding-left: 8px;">
|
||||
<%= l(:label_class_period) %> :
|
||||
</td>
|
||||
<td class="font_lighter_sidebar">
|
||||
<%= course.class_period.to_s %>
|
||||
<%= l(:label_class_hour) %>
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td valign="top" style="padding-left: 8px;"><%= l(:label_main_term) %> :</td>
|
||||
<td class="font_lighter_sidebar"><%= course.time.to_s %> <%= course.term %></td>
|
||||
<td valign="top" style="padding-left: 8px;">
|
||||
<%= l(:label_main_term) %> :
|
||||
</td>
|
||||
<td class="font_lighter_sidebar">
|
||||
<%= course.time.to_s %>
|
||||
<%= course.term %>
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td valign="top" style="padding-left: 8px;"><%= l(:label_teacher_work_unit) %> :</td>
|
||||
<!-- modified by zjc 有@user.user_extensions.occupation改为 @user.user_extensions.school 并添加超链接 -->
|
||||
<% unless @user.user_extensions.nil? || @user.user_extensions.school.nil? %>
|
||||
<td class="font_lighter_sidebar"><%= link_to @user.user_extensions.school,"http://course.trustie.net/?school_id=#{@user.user_extensions.school.id}" %></td>
|
||||
<% end %>
|
||||
</tr>
|
||||
</table>
|
||||
</div>
|
||||
<div class="user_underline"></div>
|
||||
<tr>
|
||||
<td valign="top" style="padding-left: 8px;">
|
||||
<%= l(:label_teacher_work_unit) %> :
|
||||
</td>
|
||||
<!-- modified by zjc 有@user.user_extensions.occupation改为 @user.user_extensions.school 并添加超链接 -->
|
||||
<% unless @user.user_extensions.nil? || @user.user_extensions.school.nil? %>
|
||||
<td class="font_lighter_sidebar">
|
||||
<%= link_to @user.user_extensions.school,"http://#{Setting.host_course}/?school_id=#{@user.user_extensions.school.id}" %>
|
||||
</td>
|
||||
<% end %>
|
||||
</tr>
|
||||
</table>
|
||||
</div>
|
||||
<div class="user_underline"></div>
|
||||
|
||||
<!-- info -->
|
||||
<div class="inf_user_image">
|
||||
<table>
|
||||
|
||||
<tr>
|
||||
<td><%= l(:label_limit_time) %>: <%= @bid.deadline %></td>
|
||||
<td>
|
||||
<%= l(:label_limit_time) %>:
|
||||
<%= @bid.deadline %>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>作业类型: <%= @bid.homework_type==Bid::HomeworkFile ? "提交文件" : "提交项目" %></td>
|
||||
<!--td>作业类型:
|
||||
<%#= @bid.homework_type==Bid::HomeworkFile ? "提交文件" : "提交项目" %>
|
||||
</td-->
|
||||
</tr>
|
||||
<% unless @bid.parent_id.nil? %>
|
||||
<tr>
|
||||
|
@ -160,7 +202,9 @@
|
|||
<div class="user_underline"></div>
|
||||
<table style="font-family:'微软雅黑'; padding-left: 8px">
|
||||
<tr>
|
||||
<td><!-- added by william -for tag --> <%= render :partial => 'tags/tag', :locals => {:obj => @bid, :object_flag => "4"} %> </td>
|
||||
<td><!-- added by william -for tag -->
|
||||
<%= render :partial => 'tags/tag', :locals => {:obj => @bid, :object_flag => "4"} %>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
|
@ -238,7 +282,9 @@
|
|||
</div>
|
||||
|
||||
<div id="ajax-indicator" style="display:none;">
|
||||
<span><%= l(:label_loading) %></span>
|
||||
<span>
|
||||
<%= l(:label_loading) %>
|
||||
</span>
|
||||
</div>
|
||||
<div id="ajax-modal" style="display:none;"></div>
|
||||
|
||||
|
|
|
@ -136,28 +136,6 @@
|
|||
<div class="user_underline"></div>
|
||||
</div>
|
||||
|
||||
<div class="inf_user_image">
|
||||
<table>
|
||||
<tr>
|
||||
<td>
|
||||
<%= l(:lable_contest_user) %>:
|
||||
<%= link_to(@user.name, user_path(@user))%>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<%= l(:label_bids_reward_method) %>
|
||||
<%= @contest.budget%>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<%= l(:label_limit_time) %> :
|
||||
<%= @contest.deadline%>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</div>
|
||||
<div class="user_underline"></div>
|
||||
|
||||
<div class="inf_user_context">
|
||||
|
|
|
@ -274,14 +274,14 @@
|
|||
<% if @user.user_extensions.identity == 2 %>
|
||||
<%= render_menu :user_enterprise_menu %>
|
||||
<% else %>
|
||||
<%= render_menu :user_menu %>
|
||||
<%= render_menu :user_menu,@user %>
|
||||
<% end %>
|
||||
</div>
|
||||
|
||||
<%= yield %>
|
||||
<%= call_hook :view_layouts_base_content %>
|
||||
<div style="clear:both;"></div>
|
||||
<%= render_flash_messages %>
|
||||
<%#= render_flash_messages %>
|
||||
|
||||
</div>
|
||||
|
||||
|
|
|
@ -1,6 +1,11 @@
|
|||
<% if @project%>
|
||||
$('#principals_for_new_member').html('<%= escape_javascript(render_principals_for_new_members(@project)) %>');
|
||||
<% elsif @course%>
|
||||
var checked = $("#principals input:checked").size();
|
||||
if(checked > 0)
|
||||
{
|
||||
alert('翻页或搜索后将丢失当前选择的用户数据!');
|
||||
}
|
||||
$('#principals_for_new_member').html('<%= escape_javascript(render_principals_for_new_course_members(@course)) %>');
|
||||
<%end%>
|
||||
var collection=$("#principals_for_new_member").children("#principals").children("label");
|
||||
|
|
|
@ -1,13 +1,3 @@
|
|||
<%= error_messages_for 'bid' %>
|
||||
<!--[form:project]-->
|
||||
<p><%= l(:label_homeworks_form_new_description) %></p>
|
||||
<!-- % unless @memo.parent_id %>
|
||||
<%# if @memo.safe_attribute? 'sticky' %>
|
||||
<%#= f.check_box :sticky %> <lable><%= l(:label_board_sticky) %></lable>
|
||||
<%# end %>
|
||||
<%# if @memo.safe_attribute? 'locked' %>
|
||||
<%#= f.check_box :locked %> <%#= label_tag 'memo_locked', l(:label_board_locked) %>
|
||||
<%# end %>
|
||||
<%# end %> -->
|
||||
<p><%= f.text_field :content, :required => true, :size => 60, :style => "width:150px;" %></p>
|
||||
<p><%= hidden_field_tag 'subject', ||=@memo.subject %>
|
|
@ -61,7 +61,6 @@
|
|||
</p>
|
||||
<div class="clearfix"></div>
|
||||
</div>
|
||||
<!-- modified by zjc 修正名字无链接问题 -->
|
||||
<div class="memo-timestamp"> <%= authoring @memo.created_at, @memo.author %></div>
|
||||
|
||||
</div>
|
||||
|
@ -128,7 +127,6 @@
|
|||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<!-- modified by zjc 修正名字无链接问题 -->
|
||||
<td class="font_lighter" style="float:right"><%= authoring reply.created_at, reply.author %></td>
|
||||
</tr>
|
||||
</table>
|
||||
|
|
|
@ -178,7 +178,7 @@
|
|||
<%= form_for @reply, :as => :reply, :url => {:action => 'reply', :id => @topic}, :html => {:multipart => true, :id => 'message-form'} do |f| %>
|
||||
<%= render :partial => 'form', :locals => {:f => f, :replying => true} %>
|
||||
<%#= submit_tag l(:button_submit) %>
|
||||
<input type="button" class="enterprise" value="<%=l(:button_submit) %>" onclick="submit_message_replay();" >
|
||||
<input type="button" class="enterprise" value="<%=l(:button_submit) %>" onmousemove="regexContent()" onclick="submit_message_replay();" >
|
||||
<%#= preview_link({:controller => 'messages', :action => 'preview', :board_id => @board}, 'message-form') %>
|
||||
<% end %>
|
||||
<div id="preview" class="wiki"></div>
|
||||
|
@ -188,12 +188,13 @@
|
|||
<% html_title @topic.subject %>
|
||||
|
||||
<script type="text/javascript">
|
||||
var flag = false
|
||||
jQuery(document).ready(function($) {
|
||||
transpotUrl('#content');
|
||||
});
|
||||
function submit_message_replay()
|
||||
{
|
||||
if(regexContent())
|
||||
if(flag)
|
||||
{
|
||||
$("#message-form").submit();
|
||||
}
|
||||
|
@ -205,13 +206,13 @@
|
|||
{
|
||||
$("#message_content_span").text("<%= l(:label_reply_empty) %>");
|
||||
$("#message_content_span").css('color','#ff0000');
|
||||
return false;
|
||||
flag = false;
|
||||
}
|
||||
else
|
||||
{
|
||||
$("#message_content_span").text("<%= l(:label_field_correct) %>");
|
||||
$("#message_content_span").css('color','#008000');
|
||||
return true;
|
||||
flag = true;
|
||||
}
|
||||
}
|
||||
</script>
|
|
@ -4,25 +4,15 @@
|
|||
|
||||
<div class="box ph10_5">
|
||||
<!--[form:message]-->
|
||||
<% unless replying %>
|
||||
<p>
|
||||
<label for="message_subject">
|
||||
<%= l(:field_subject) %>
|
||||
<span class="required"> * </span>
|
||||
</label>
|
||||
<br/>
|
||||
<%= f.text_field :subject, :size => 60, :style => "width: 99%;", :id => "message_subject", :maxlength => 254 %><!--by young-->
|
||||
</p>
|
||||
<% else %>
|
||||
<p>
|
||||
<label for="message_subject">
|
||||
<%= l(:field_subject) %>
|
||||
<span class="required"> * </span>
|
||||
</label>
|
||||
<br/>
|
||||
<%= f.text_field :subject, :size => 60, :style => "width: 99%;", :id => "message_subject", :readonly => true %>
|
||||
</p>
|
||||
<% end %>
|
||||
<% extra_option = replying ? { readonly: true} : { maxlength: 254 } %>
|
||||
<p>
|
||||
<label for="message_subject">
|
||||
<%= l(:field_subject) %>
|
||||
<span class="required"> * </span>
|
||||
</label>
|
||||
<br/>
|
||||
<%= f.text_field :subject, { size: 60, style: "width: 99%;", id: "message_subject" }.merge(extra_option) %>
|
||||
</p>
|
||||
<p>
|
||||
<% unless replying %>
|
||||
<% if @message.safe_attribute? 'sticky' %>
|
||||
|
|
|
@ -16,10 +16,10 @@
|
|||
function get_options(value) {
|
||||
$.ajax({
|
||||
type: "POST",
|
||||
url: '<%= Setting.host_name == "micros.nudt.edu.cn" ? '/ros/school/get_options/' : '/school/get_options/'%>' + encodeURIComponent(value),
|
||||
url: 'http://<%= Setting.host_name%>/school/get_options/' + encodeURIComponent(value),
|
||||
data: 'text',
|
||||
success: function (data) {
|
||||
$("#province").val(value)
|
||||
$("#province").val(value);
|
||||
$("#schoollist").html(data);
|
||||
}
|
||||
});
|
||||
|
@ -110,7 +110,7 @@
|
|||
<%= l(:field_occupation) %> <span class="required">*</span>
|
||||
<input id="province" name="province" type="text" value="<%= User.current.user_extensions.school.province %>" readonly/>
|
||||
<input id="occupation" name="occupation" type="hidden" value="<%= User.current.user_extensions.school.id %>"/>
|
||||
<input id="occupation_name" type="text" value="<%= User.current.user_extensions.school.name %>" readonly/>
|
||||
<input id="occupation_name" type="text" value="<%= User.current.user_extensions.school.name %>" readonly="true" style="background-color: #E2E2E2;"/>
|
||||
<% end %>
|
||||
</p>
|
||||
|
||||
|
|
|
@ -141,7 +141,7 @@
|
|||
<span class="font_lighter"> <%= format_time(comment.created_on) %></span>
|
||||
</td>
|
||||
<td width="200" align="right" class="a">
|
||||
<%= link_to_if_authorized image_tag('delete.png'), {:controller => 'comments', :action => 'destroy', :id => @news, :comment_id => comment},
|
||||
<%= link_to_if_authorized image_tag('delete.png'), delete_news_comments_path(id: @news, comment: comment),
|
||||
:data => {:confirm => l(:text_are_you_sure)},
|
||||
:method => :delete,
|
||||
:title => l(:button_delete) %>
|
||||
|
|
|
@ -4,10 +4,10 @@
|
|||
<table class="list" style="table-layout: fixed;">
|
||||
<thead>
|
||||
<tr>
|
||||
<th><%= l(:field_identifier) %></th>
|
||||
<th><%= l(:field_repository_is_default) %></th>
|
||||
<th><%= l(:label_scm) %></th>
|
||||
<th><%= l(:label_repository_path) %></th>
|
||||
<th style="width: 20%"><%= l(:field_identifier) %></th>
|
||||
<th style="width: 10%"><%= l(:field_repository_is_default) %></th>
|
||||
<th style="width: 15%"><%= l(:label_scm) %></th>
|
||||
<th style="width: 20%"><%= l(:label_repository_path) %></th>
|
||||
<th></th>
|
||||
</tr>
|
||||
</thead>
|
||||
|
@ -37,7 +37,7 @@
|
|||
<% end %>
|
||||
<% elsif repository.scm_name=="Git"%>
|
||||
<%if User.current.allowed_to?(:manage_repository, @project) %>
|
||||
<!-- <%= link_to(l(:button_edit), edit_repository_path(repository),
|
||||
<!-- <%#= link_to(l(:button_edit), edit_repository_path(repository),
|
||||
:class => 'icon icon-edit') %> -->
|
||||
<%= link_to(l(:label_user_plural), committers_repository_path(repository),
|
||||
:class => 'icon icon-user') %>
|
||||
|
|
|
@ -1,35 +1,65 @@
|
|||
<% if @project.shared_versions.any? %>
|
||||
<table class="list versions">
|
||||
<thead><tr>
|
||||
<th><%= l(:label_version) %></th>
|
||||
<th><%= l(:field_effective_date) %></th>
|
||||
<th><%= l(:field_description) %></th>
|
||||
<th><%= l(:field_status) %></th>
|
||||
<th><%= l(:field_sharing) %></th>
|
||||
<th><%= l(:label_wiki_page) %></th>
|
||||
<table class="list versions" style="table-layout: fixed;">
|
||||
<thead>
|
||||
<tr>
|
||||
<th>
|
||||
<%= l(:label_version) %>
|
||||
</th>
|
||||
<th>
|
||||
<%= l(:field_effective_date) %>
|
||||
</th>
|
||||
<th>
|
||||
<%= l(:field_description) %>
|
||||
</th>
|
||||
<th>
|
||||
<%= l(:field_status) %>
|
||||
</th>
|
||||
<th>
|
||||
<%= l(:field_sharing) %>
|
||||
</th>
|
||||
<th>
|
||||
<%= l(:label_wiki_page) %>
|
||||
</th>
|
||||
<th style="width:15%"></th>
|
||||
</tr></thead>
|
||||
<tbody>
|
||||
<% for version in @project.shared_versions.sort %>
|
||||
<tr class="version <%= cycle 'odd', 'even' %> <%=h version.status %> <%= 'shared' if version.project != @project %>">
|
||||
<td class="name"><%= link_to_version version %></td>
|
||||
<td class="date"><%= format_date(version.effective_date) %></td>
|
||||
<td class="description"><%=h version.description %></td>
|
||||
<td class="status"><%= l("version_status_#{version.status}") %></td>
|
||||
<td class="sharing"><%=h format_version_sharing(version.sharing) %></td>
|
||||
<td><%= link_to_if_authorized(h(version.wiki_page_title), {:controller => 'wiki', :action => 'show', :project_id => version.project, :id => Wiki.titleize(version.wiki_page_title)}) || h(version.wiki_page_title) unless version.wiki_page_title.blank? || version.project.wiki.nil? %></td>
|
||||
<td class="buttons">
|
||||
<% if version.project == @project && User.current.allowed_to?(:manage_versions, @project) %>
|
||||
<%= link_to l(:button_edit), edit_version_path(version), :class => 'icon icon-edit' %>
|
||||
<%= delete_link version_path(version) %>
|
||||
<% end %>
|
||||
</td>
|
||||
</tr>
|
||||
<% end; reset_cycle %>
|
||||
</tbody>
|
||||
<% for version in @project.shared_versions.sort %>
|
||||
<tr class="version <%= cycle 'odd', 'even' %> <%=h version.status %> <%= 'shared' if version.project != @project %>">
|
||||
<td class="name">
|
||||
<%= link_to_version version %>
|
||||
</td>
|
||||
<td class="date">
|
||||
<%= format_date(version.effective_date) %>
|
||||
</td>
|
||||
<td class="description">
|
||||
<%=h version.description %>
|
||||
</td>
|
||||
<td class="status">
|
||||
<%= l("version_status_#{version.status}") %>
|
||||
</td>
|
||||
<td class="sharing">
|
||||
<%=h format_version_sharing(version.sharing) %>
|
||||
</td>
|
||||
<td style="overflow: hidden;text-overflow: ellipsis;white-space: nowrap;" title="<%= h(version.wiki_page_title)%>">
|
||||
<%= link_to_if_authorized(h(version.wiki_page_title), {:controller => 'wiki',
|
||||
:action => 'show',
|
||||
:project_id => version.project,
|
||||
:id => Wiki.titleize(version.wiki_page_title)}) || h(version.wiki_page_title) unless version.wiki_page_title.blank? || version.project.wiki.nil? %>
|
||||
</td>
|
||||
<td class="buttons">
|
||||
<% if version.project == @project && User.current.allowed_to?(:manage_versions, @project) %>
|
||||
<%= link_to l(:button_edit), edit_version_path(version), :class => 'icon icon-edit' %>
|
||||
<%= delete_link version_path(version) %>
|
||||
<% end %>
|
||||
</td>
|
||||
</tr>
|
||||
<% end; reset_cycle %>
|
||||
</tbody>
|
||||
</table>
|
||||
<% else %>
|
||||
<p class="nodata"><%= l(:label_no_data) %></p>
|
||||
<p class="nodata">
|
||||
<%= l(:label_no_data) %>
|
||||
</p>
|
||||
<% end %>
|
||||
|
||||
<div class="contextual">
|
||||
|
|
|
@ -11,20 +11,31 @@
|
|||
</p>
|
||||
|
||||
<p><%= f.check_box :is_default, :label => :field_repository_is_default %></p>
|
||||
<p style="display: none"><%= f.text_field :identifier, :required => true, :disabled => @repository.identifier_frozen?,
|
||||
value:"#{User.current.id.to_s + '_' +Time.now.to_s.gsub(' ','_').gsub(':','').gsub('+','')}"%>
|
||||
<p style="display: none">
|
||||
<%= f.text_field :identifier, :required => true, :disabled => @repository.identifier_frozen?,
|
||||
value:"#{User.current.id.to_s + '_' +Time.now.to_s.gsub(' ','_').gsub(':','').gsub('+','')}"%>
|
||||
<% unless @repository.identifier_frozen? %>
|
||||
<em class="info" ><%= l(:text_length_between, :min => 1, :max => Repository::IDENTIFIER_MAX_LENGTH) %> <%= l(:text_repository_identifier_info).html_safe %></em>
|
||||
<em class="info" >
|
||||
<%= l(:text_length_between, :min => 1, :max => Repository::IDENTIFIER_MAX_LENGTH) %>
|
||||
<%= l(:text_repository_identifier_info).html_safe %></em>
|
||||
<% end %></p>
|
||||
|
||||
<!--Modified by tanxianbo-->
|
||||
<p><%= f.text_field :url, :size => 60, :required => true, :disabled => !@repository.safe_attribute?('url'), :id => "url_text_field" %>
|
||||
<em class='info'><%= "#{l(:label_exist_repository_path)}" %></em>
|
||||
<p>
|
||||
<%= f.text_field :url, :size => 60, :required => true, :disabled => !@repository.safe_attribute?('url'), :id => "url_text_field" %>
|
||||
<em class='info'>
|
||||
<%= "#{l(:label_exist_repository_path)}" %>
|
||||
</em>
|
||||
</p>
|
||||
<p>
|
||||
<%= f.text_field :login, :size => 30 %>
|
||||
</p>
|
||||
<p>
|
||||
<%= f.password_field :password, :size => 30, :name => 'ignore',
|
||||
:value => ((@repository.new_record? || @repository.password.blank?) ? '' : ('x'*15)),
|
||||
:onfocus => "this.value=''; this.name='repository[password]';",
|
||||
:onchange => "this.name='repository[password]';" %>
|
||||
</p>
|
||||
<p><%= f.text_field :login, :size => 30 %></p>
|
||||
<p><%= f.password_field :password, :size => 30, :name => 'ignore', :value => ((@repository.new_record? || @repository.password.blank?) ? '' : ('x'*15)),
|
||||
:onfocus => "this.value=''; this.name='repository[password]';",
|
||||
:onchange => "this.name='repository[password]';" %></p>
|
||||
</div>
|
||||
<!--Ended by tanxianbo-->
|
||||
<p>
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
<%= error_messages_for 'role' %>
|
||||
|
||||
<% unless @role.anonymous? %>
|
||||
<div class="box tabular">
|
||||
<div class="box role">
|
||||
<% unless @role.builtin? %>
|
||||
<p><%= f.text_field :name, :required => true %></p>
|
||||
<p><%= f.check_box :assignable %></p>
|
||||
|
|
|
@ -1,28 +1,35 @@
|
|||
|
||||
<% @softapplications.each do |softapplication| %>
|
||||
<div>
|
||||
<div style="float: left; width:928px">
|
||||
<span style="font-size: 15px; margin-right: 10px;"><strong><%= link_to softapplication.name, softapplication, :target => "_blank" %></strong></span>
|
||||
<span><%= rating_for softapplication, :static => true, dimension: :quality, class: 'rateable div_inline' %></span>
|
||||
|
||||
</div>
|
||||
<div class="avatar-4" style="float: left; margin-top: 7px "><%= image_tag('/images/app1.png')%></div>
|
||||
<div style="float: left; width: 600px; padding-top: 6px; margin-left: 8px"><%= softapplication.description.truncate(95, omission: '...') %></div>
|
||||
<div style="float: left; width: 200px; margin-left: 70px; margin-top: -3px; line-height: 0.5em ">
|
||||
<div style="float: left; width: 600px; margin-left: 8px">
|
||||
<br/>
|
||||
<%contest = softapplication.contests.first%>
|
||||
<%=l(:label_attendingcontestwork_belongs_contest)%>:<%= contest ? link_to(contest.name.truncate(14, omission: '...'), show_attendingcontest_contest_path(contest), title: contest.name.to_s ) : '尚未加入竞赛'%>
|
||||
</br></br>
|
||||
<%= l(:label_profile) %>:<%= softapplication.description.truncate(95, omission: '...') %>
|
||||
|
||||
</div>
|
||||
|
||||
<div style="float: left; width: 200px; margin-left: 70px; margin-top: -3px; line-height: 0.5em ">
|
||||
<% strTitle = softapplication.android_min_version_available %>
|
||||
<p><%=l(:label_attendingcontestwork_adaptive_system)%>:<lable title="<%= strTitle %>"><%= strTitle ? strTitle.truncate(10,omisiion:'...') : "" %></lable></p>
|
||||
|
||||
<p><%=l(:label_attendingcontestwork_belongs_contest)%>:<%= contest ? link_to(contest.name.truncate(14, omission: '...'), show_attendingcontest_contest_path(contest), title: contest.name.to_s ) : '尚未加入竞赛'%></p>
|
||||
|
||||
<!--modified by longjun 因为新建竞赛作品时没有填写运行平台和类别,所有如果为空不能使用truncate函数-->
|
||||
<p><%=l(:label_attendingcontestwork_belongs_type)%>:<%= softapplication.app_type_name ? softapplication.app_type_name.truncate(14, omission: '...') : "" %></p>
|
||||
<% strTitle = softapplication.android_min_version_available %>
|
||||
<p><%=l(:label_attendingcontestwork_adaptive_system)%>:<lable title="<%= strTitle %>"><%= strTitle ? strTitle.truncate(10,omisiion:'...') : "" %></lable></p>
|
||||
</div>
|
||||
<div style="padding-left: 53px">
|
||||
</div>
|
||||
<div style="padding-left: 53px; float: left; width: 928px;">
|
||||
|
||||
<span><%=l(:label_attendingcontestwork_developers)%>:<%= softapplication.application_developers %></span>
|
||||
<span style="padding-left: 50px"><%=l(:label_attendingcontestwork_release_time)%>:<%=format_time softapplication.created_at %></span>
|
||||
<span style="float: right;margin-right: 93px;"><%=l(:label_attendingcontestwork_release_time)%>:<%=format_time softapplication.created_at %></span>
|
||||
</div>
|
||||
<div style="border-left: 1px solid #d9d8d8; border-bottom: 1px solid #d9d8d8; margin-left: 50px; padding-bottom: 10px; margin-bottom: 20px; width: 66%"></div>
|
||||
<div class="underline-contests_one" style="margin-top: -7px"></div>
|
||||
<div style="border-left: 1px solid #d9d8d8; border-bottom: 1px solid #d9d8d8; margin-left: 50px; padding-bottom: 10px; margin-bottom: 20px; width: 66%; float: left"></div>
|
||||
<div class="underline-contests_one" style="margin-top: -7px;float: left"></div>
|
||||
<% end %>
|
||||
|
||||
<div class="pagination"><%= pagination_links_full @softapplication_pages, @softapplication_count, :per_page_links => false %></div>
|
|
@ -12,10 +12,16 @@
|
|||
#end%>
|
||||
<!-- 3 代表的是issue 当是issue是 处理方式与前2个对象不同 -->
|
||||
<% if object_flag == '3' %>
|
||||
<span><%= image_tag("/images/sidebar/tags.png") %></span>
|
||||
<span class="font_title_tag"><%= l(:label_tag) %>:</span>
|
||||
<span>
|
||||
<%= image_tag("/images/sidebar/tags.png") %>
|
||||
</span>
|
||||
<span class="font_title_tag">
|
||||
<%= l(:label_tag) %>:
|
||||
</span>
|
||||
<% if User.current.logged? %>
|
||||
<span> <%= toggle_link (image_tag "/images/sidebar/add.png"), 'put-tag-form-issue', {:focus => 'name-issue'} %></span>
|
||||
<span>
|
||||
<%= toggle_link (image_tag "/images/sidebar/add.png"), 'put-tag-form-issue', {:focus => 'name-issue'} %>
|
||||
</span>
|
||||
<% end %>
|
||||
|
||||
<div id="tags_show_issue">
|
||||
|
@ -36,7 +42,9 @@
|
|||
<% elsif object_flag == '6' %>
|
||||
<span><%#= image_tag("/images/sidebar/tags.png") %></span>
|
||||
<span>
|
||||
<%= link_to (image_tag "/images/sidebar/add.png"), 'javascript:void(0);', :class => "tags_icona", :onclick=>"$('#put-tag-form-#{obj.class}-#{obj.id}').toggle(); readmore(this);" if User.current.logged? %>
|
||||
<%= link_to (image_tag "/images/sidebar/add.png"), 'javascript:void(0);',
|
||||
:class => "tags_icona",
|
||||
:onclick=>"$('#put-tag-form-#{obj.class}-#{obj.id}').toggle(); readmore(this);" if User.current.logged? %>
|
||||
<%#= toggle_link (image_tag "/images/sidebar/add.png"), "put-tag-form-#{obj.class}-#{obj.id}", {:focus => "put-tag-form-#{obj.class}-#{obj.id} #name"} if User.current.logged? %>
|
||||
</span>
|
||||
|
||||
|
@ -47,21 +55,24 @@
|
|||
<%= render :partial => "courses/course_resources_html", :locals => {:obj => obj ,:object_flag => object_flag } %>
|
||||
</div>
|
||||
<% else %>
|
||||
|
||||
<span><%= image_tag("/images/sidebar/tags.png") %></span>
|
||||
<span class="font_title_tag"><%= l(:label_tag) %>:</span>
|
||||
|
||||
<span>
|
||||
<%= image_tag("/images/sidebar/tags.png") %>
|
||||
</span>
|
||||
<span class="font_title_tag">
|
||||
<%= l(:label_tag) %>:
|
||||
</span>
|
||||
<% if User.current.logged? %>
|
||||
<span><%= toggle_link (image_tag "/images/sidebar/add.png"), 'put-tag-form', {:focus => 'tags_name'} %></span>
|
||||
<span>
|
||||
<%= toggle_link (image_tag "/images/sidebar/add.png"), 'put-tag-form', {:focus => 'tags_name'} %>
|
||||
</span>
|
||||
<% end %>
|
||||
|
||||
<div id="tags_show">
|
||||
<%= render :partial => "tags/tag_name",:locals => {:obj => obj,:non_list_all => false ,:object_flag => object_flag} %>
|
||||
</div>
|
||||
<div id="put-tag-form" style="display: none">
|
||||
<%= form_for "tag_for_save",:remote=>true,:url=>tag_path,
|
||||
:update => "tags_show",
|
||||
:complete => '$("#put-tag-form").hide();' do |f| %>
|
||||
:update => "tags_show",
|
||||
:complete => '$("#put-tag-form").hide();' do |f| %>
|
||||
<%= f.text_field :name ,:id => "tags_name",:size=>"28",:require=>true,:maxlength => Setting.tags_max_length,:minlength=>Setting.tags_min_length %>
|
||||
<%= f.text_field :object_id,:value=> obj.id,:style=>"display:none"%>
|
||||
<%= f.text_field :object_flag,:value=> object_flag,:style=>"display:none"%>
|
||||
|
|
|
@ -1,11 +1,19 @@
|
|||
<% if User.current.id == @user.id %>
|
||||
<div class="menu-div">
|
||||
<div class="menu">
|
||||
<span style="color: #000; font-weight: bold;"><%= "#{@user.name}的动态" %></span>
|
||||
<span style="color: #000; font-weight: bold;">
|
||||
<%= "#{@user.name}的动态" %>
|
||||
</span>
|
||||
<ul><%#链接绑定在页面最下方的jQuery%>
|
||||
<li mode='all' class="<%= "on" if @state.eql?(0) %>"><%= l :label_user_all_activity %></li>
|
||||
<li mode='myself' class="<%= "on" if @state.eql?(1) %>"><%= l :label_user_activity_myself %></li>
|
||||
<li mode='respond' class="<%= "on" if @state.eql?(2) %>"><%= l :label_user_all_respond %></li>
|
||||
<li mode='all' class="<%= "on" if @state.eql?(0) %>">
|
||||
<%= l :label_user_all_activity %>
|
||||
</li>
|
||||
<li mode='myself' class="<%= "on" if @state.eql?(1) %>">
|
||||
<%= l :label_user_activity_myself %>
|
||||
</li>
|
||||
<li mode='respond' class="<%= "on" if @state.eql?(2) %>">
|
||||
<%= l :label_user_all_respond %>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
<script type="text/javascript">
|
||||
|
@ -28,6 +36,7 @@
|
|||
<% end %>
|
||||
<% end %>
|
||||
|
||||
<%= render_flash_messages %>
|
||||
<% unless @state == 2 %>
|
||||
<% unless @activity.empty? %>
|
||||
<div id="activity">
|
||||
|
@ -39,353 +48,485 @@
|
|||
<% if e.act_type == 'JournalsForMessage' || e.act_type == 'Bid' || e.act_type == 'Journal'|| e.act_type == 'Changeset' || e.act_type == 'Message' || e.act_type == 'Principal' || e.act_type == 'News' || e.act_type == 'Issue' || e.act_type == 'Contest'%>
|
||||
<table width="660" border="0" align="left" style="border-bottom: 1px dashed rgb(204, 204, 204); margin-bottom: 10px;font-size:14px;">
|
||||
<tr>
|
||||
<td colspan="2" valign="top" width="50"><%= image_tag(url_to_avatar(e.user), :class => "avatar") %></td>
|
||||
<td colspan="2" valign="top" width="50">
|
||||
<%= image_tag(url_to_avatar(e.user), :class => "avatar") %>
|
||||
</td>
|
||||
<td>
|
||||
<table width="580" border="0" class="info-break">
|
||||
<% case e.act_type %>
|
||||
<% when 'JournalsForMessage' %>
|
||||
<tr>
|
||||
<td colspan="2" valign="top">
|
||||
<% if User.current.login == e.user.try(:login) %>
|
||||
<strong>
|
||||
<%= link_to("#{l(:label_i)}", user_path(e.user_id)) %>
|
||||
</strong>
|
||||
|
||||
<% else %>
|
||||
<strong><%= link_to("#{e.user.name}", user_path(e.user_id)) %></strong>
|
||||
<% end %>
|
||||
<span class="font_lighter">
|
||||
<%= l(:label_have_feedback) %>
|
||||
<%= link_to("#{e.act.user.name}", user_path(e.act.user.id)) %><%= l(:label_of_feedback) + l(:label_layouts_feedback) %>
|
||||
</span>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td colspan="2" width="580">
|
||||
<p class="font_description"> <%= textAreailizable act.notes %> </p>
|
||||
<div style="display: inline-block; float: right; margin-top: 0px">
|
||||
<span>
|
||||
<%= link_to(l(:label_goto), user_newfeedback_user_path(e.user_id)) %>
|
||||
</span>
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<div style="display: inline-block; float: left; margin-top: 0px" width="200" align="right" class="a">
|
||||
<span class="font_lighter"> <%= (l(:label_update_time).to_s << ':' << format_time(e.act.created_on)).to_s %></span>
|
||||
</div>
|
||||
<div style="display: inline-block; float: right; margin-top: 0px"></div>
|
||||
</td>
|
||||
</tr>
|
||||
<% when 'Bid' %>
|
||||
<tr>
|
||||
<% if act.reward_type == 3 && @show_course == 1%>
|
||||
<% if e.user == User.current %>
|
||||
<% when 'JournalsForMessage' %>
|
||||
<tr>
|
||||
<td colspan="2" valign="top">
|
||||
<strong>
|
||||
<%= link_to("#{l(:label_i)}", user_path(e.user_id)) %>
|
||||
</strong>
|
||||
<% if User.current.login == e.user.try(:login) %>
|
||||
<strong>
|
||||
<%= link_to("#{l(:label_i)}", user_path(e.user_id)) %>
|
||||
</strong>
|
||||
|
||||
<% else %>
|
||||
<strong>
|
||||
<%= link_to("#{e.user.name}", user_path(e.user_id)) %>
|
||||
</strong>
|
||||
<% end %>
|
||||
<span class="font_lighter">
|
||||
<%= l(:label_i_new_activity) %>
|
||||
<%= l(:label_have_feedback) %>
|
||||
<%= link_to("#{e.act.user.name}", user_path(e.act.user.id)) %>
|
||||
<%= l(:label_of_feedback) + l(:label_layouts_feedback) %>
|
||||
</span>
|
||||
<%= link_to format_activity_title("#{l(:label_active_homework)}##{act.id}:#{act.name}"), respond_path(e.act_id) %>
|
||||
</td>
|
||||
<% else %>
|
||||
<td colspan="2" valign="top">
|
||||
<strong>
|
||||
<%= link_to(h(e.user), user_path(e.user_id)) %>
|
||||
</strong>
|
||||
<span class="font_lighter">
|
||||
<%= l(:label_new_activity) %>
|
||||
</span>
|
||||
<%= link_to format_activity_title("#{l(:label_active_homework)}##{act.id}:#{act.name}"), respond_path(e.act_id) %>
|
||||
</tr>
|
||||
<tr>
|
||||
<td colspan="2" width="580">
|
||||
<p class="font_description">
|
||||
<%= textAreailizable act.notes %>
|
||||
</p>
|
||||
<div style="display: inline-block; float: right; margin-top: 0px">
|
||||
<span>
|
||||
<%= link_to(l(:label_goto), user_newfeedback_user_path(e.user_id)) %>
|
||||
</span>
|
||||
</div>
|
||||
</td>
|
||||
<% end %>
|
||||
<% else %>
|
||||
<% if e.user == User.current %>
|
||||
<td colspan="2" valign="top">
|
||||
<strong> <%= link_to("#{l(:label_i)}", user_path(e.user_id)) %></strong>
|
||||
<span class="font_lighter"><%= l(:label_i_new_activity) %></span>
|
||||
<%= link_to format_activity_title("#{l(:label_active_call)}##{act.id}:#{act.name}"), respond_path(e.act_id) %>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<div style="display: inline-block; float: left; margin-top: 0px" width="200" align="right" class="a">
|
||||
<span class="font_lighter">
|
||||
<%= (l(:label_update_time).to_s << ':' << format_time(e.act.created_on)).to_s %>
|
||||
</span>
|
||||
</div>
|
||||
<div style="display: inline-block; float: right; margin-top: 0px"></div>
|
||||
</td>
|
||||
<% else %>
|
||||
<td colspan="2" valign="top">
|
||||
<strong><%= link_to(h(e.user), user_path(e.user_id)) %></strong>
|
||||
<span class="font_lighter"><%= l(:label_new_activity) %></span>
|
||||
<%= link_to format_activity_title("#{l(:label_active_call)}##{act.id}:#{act.name}"), respond_path(e.act_id) %>
|
||||
</tr>
|
||||
<% when 'Bid' %>
|
||||
<tr>
|
||||
<% if act.reward_type == 3 && @show_course == 1%>
|
||||
<% if e.user == User.current %>
|
||||
<td colspan="2" valign="top">
|
||||
<strong>
|
||||
<%= link_to("#{l(:label_i)}", user_path(e.user_id)) %>
|
||||
</strong>
|
||||
<span class="font_lighter">
|
||||
<%= l(:label_i_new_activity) %>
|
||||
</span>
|
||||
<%= link_to format_activity_title("#{l(:label_active_homework)}##{act.id}:#{act.name}"), respond_path(e.act_id) %>
|
||||
</td>
|
||||
<% else %>
|
||||
<td colspan="2" valign="top">
|
||||
<strong>
|
||||
<%= link_to(h(e.user), user_path(e.user_id)) %>
|
||||
</strong>
|
||||
<span class="font_lighter">
|
||||
<%= l(:label_new_activity) %>
|
||||
</span>
|
||||
<%= link_to format_activity_title("#{l(:label_active_homework)}##{act.id}:#{act.name}"), respond_path(e.act_id) %>
|
||||
</td>
|
||||
<% end %>
|
||||
<% else %>
|
||||
<% if e.user == User.current %>
|
||||
<td colspan="2" valign="top">
|
||||
<strong>
|
||||
<%= link_to("#{l(:label_i)}", user_path(e.user_id)) %>
|
||||
</strong>
|
||||
<span class="font_lighter">
|
||||
<%= l(:label_i_new_activity) %>
|
||||
</span>
|
||||
<%= link_to format_activity_title("#{l(:label_active_call)}##{act.id}:#{act.name}"), respond_path(e.act_id) %>
|
||||
</td>
|
||||
<% else %>
|
||||
<td colspan="2" valign="top">
|
||||
<strong>
|
||||
<%= link_to(h(e.user), user_path(e.user_id)) %>
|
||||
</strong>
|
||||
<span class="font_lighter">
|
||||
<%= l(:label_new_activity) %>
|
||||
</span>
|
||||
<%= link_to format_activity_title("#{l(:label_active_call)}##{act.id}:#{act.name}"), respond_path(e.act_id) %>
|
||||
</td>
|
||||
<% end %>
|
||||
<% end %>
|
||||
</tr>
|
||||
<tr>
|
||||
<td colspan="2" width="580">
|
||||
<p class="font_description">
|
||||
<%=textAreailizable act, :description %>
|
||||
</p></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<div style="display: inline-block; float: left; margin-top: 0px" width="200" align="right" class="a">
|
||||
<span class="font_lighter">
|
||||
<%= (l(:label_update_time).to_s << ':' << format_time(e.act.created_on)).to_s %>
|
||||
</span>
|
||||
</div>
|
||||
<div style="display: inline-block; float: right; margin-top: 0px">
|
||||
<span>
|
||||
<%= link_to l(:label_find_all_comments), respond_path(e.act_id) %>
|
||||
</span>
|
||||
<a class="font_lighter">
|
||||
<%= l(:label_comments_count, :count => e.act.commit) %>
|
||||
</a>
|
||||
</div>
|
||||
</td>
|
||||
<% end %>
|
||||
<% end %>
|
||||
</tr>
|
||||
<tr>
|
||||
<td colspan="2" width="580">
|
||||
<p class="font_description"> <%=textAreailizable act, :description %> </p></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<div style="display: inline-block; float: left; margin-top: 0px" width="200" align="right" class="a">
|
||||
<span class="font_lighter"> <%= (l(:label_update_time).to_s << ':' << format_time(e.act.created_on)).to_s %></span>
|
||||
</div>
|
||||
<div style="display: inline-block; float: right; margin-top: 0px">
|
||||
<span><%= link_to l(:label_find_all_comments), respond_path(e.act_id) %></span>
|
||||
<a class="font_lighter"><%= l(:label_comments_count, :count => e.act.commit) %></a>
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
<% when 'Journal' %>
|
||||
<tr>
|
||||
<% if e.user == User.current %>
|
||||
<td colspan="2" valign="top">
|
||||
<strong><%= link_to("#{l(:label_i)}", user_path(e.user_id)) %></strong>
|
||||
<span class="font_lighter"><%= l(:label_i_new_activity) %></span>
|
||||
<%= link_to(l(:label_activity_project)+act.issue.project.name, project_path(act.issue.project.id)) %>
|
||||
<%= link_to format_activity_title("#{act.issue.tracker} ##{act.issue.id}: #{act.issue.subject}"),
|
||||
{:controller => 'issues', :action => 'show', :id => act.issue.id, :anchor => "change-#{act.id}"} %>
|
||||
</td>
|
||||
<% else %>
|
||||
<td colspan="2" valign="top">
|
||||
<strong><%= link_to(h(e.user), user_path(e.user_id)) %></strong>
|
||||
<span class="font_lighter"><%= l(:label_new_activity) %></span>
|
||||
<%= link_to(l(:label_activity_project)+act.issue.project.name, project_path(act.issue.project.identifier)) %>
|
||||
<%= link_to format_activity_title("#{act.issue.tracker} ##{act.issue.id}: #{act.issue.subject}"),
|
||||
{:controller => 'issues', :action => 'show', :id => act.issue.id, :anchor => "change-#{act.id}"} %>
|
||||
</td>
|
||||
<% end %>
|
||||
</tr>
|
||||
<tr>
|
||||
<% if act.notes.nil? %>
|
||||
<% desStr = '' %>
|
||||
<% else %>
|
||||
<% desStr= textAreailizable(act, :notes) %>
|
||||
<% end %>
|
||||
<td colspan="2" width="580"><p class="font_description"> <%= desStr %> </p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<div style="display: inline-block; float: left; margin-top: 0px" width="200" align="right" class="a">
|
||||
<span class="font_lighter"> <%= (l(:label_update_time).to_s << ':' << format_time(e.act.created_on)).to_s %></span>
|
||||
</div>
|
||||
<div style="display: inline-block; float: right; margin-top: 0px"></div>
|
||||
</td>
|
||||
</tr>
|
||||
<% when 'Changeset' %>
|
||||
<tr>
|
||||
<% if e.user == User.current %>
|
||||
<td colspan="2" valign="top">
|
||||
<strong><%= link_to("#{l(:label_i)}", user_path(e.user_id)) %></strong>
|
||||
<span class="font_lighter"><%= l(:label_i_new_activity) %></span>
|
||||
<%= link_to format_activity_title(act.title),
|
||||
{:controller => 'repositories',
|
||||
:action => 'revision',
|
||||
:id => act.repository.project,
|
||||
:repository_id => act.repository.identifier_param,
|
||||
:rev => act.identifier} %>
|
||||
</td>
|
||||
<% else %>
|
||||
<td colspan="2" valign="top">
|
||||
<strong><%= link_to(h(e.user), user_path(e.user_id)) %></strong>
|
||||
<span class="font_lighter"><%= l(:label_new_activity) %></span>
|
||||
<%= link_to format_activity_title(act.title),
|
||||
{:controller => 'repositories',
|
||||
:action => 'revision',
|
||||
:id => act.repository.project,
|
||||
:repository_id => act.repository.identifier_param,
|
||||
:rev => act.identifier} %>
|
||||
</td>
|
||||
<% end %>
|
||||
</tr>
|
||||
<tr>
|
||||
<td colspan="2" width="580">
|
||||
<p class="font_description"> <%= textAreailizable act,:long_comments %> </p></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<div style="display: inline-block; float: left; margin-top: 0px" width="200" align="right" class="a">
|
||||
<span class="font_lighter"> <%= format_time(e.act.committed_on) %></span>
|
||||
</div>
|
||||
<div style="display: inline-block; float: right; margin-top: 0px">
|
||||
<span><%= link_to l(:label_find_all_comments),
|
||||
{:controller => 'repositories',
|
||||
:action => 'revision',
|
||||
:id => act.repository.project,
|
||||
:repository_id => act.repository.identifier_param,
|
||||
:rev => act.identifier} %>
|
||||
</span>
|
||||
<a class="font_lighter"><%= l(:label_comments_count, :count => e.act.count) %></a>
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
<% when 'Message' %>
|
||||
<tr>
|
||||
<% if e.user == User.current %>
|
||||
<td colspan="2" valign="top">
|
||||
<strong><%= link_to("#{l(:label_i)}", user_path(e.user_id)) %></strong>
|
||||
<span class="font_lighter"><%= l(:label_i_new_activity) %></span>
|
||||
<%= link_to format_activity_title("#{act.board.name}: #{act.subject}"),
|
||||
{:controller => 'messages',
|
||||
:action => 'show',
|
||||
:board_id => act.board_id}.merge(act.parent_id.nil? ? {:id => act.id} : {:id => act.parent_id, :r => act.id, :anchor => "message-#{act.id}"}) %>
|
||||
</td>
|
||||
<% else %>
|
||||
<td colspan="2" valign="top">
|
||||
<strong><%= link_to(h(e.user), user_path(e.user_id)) %></strong>
|
||||
<span class="font_lighter"><%= l(:label_new_activity) %></span>
|
||||
<%= link_to format_activity_title("#{act.board.name}: #{act.subject}"),
|
||||
{:controller => 'messages',
|
||||
:action => 'show',
|
||||
:board_id => act.board_id}.merge(act.parent_id.nil? ? {:id => act.id} : {:id => act.parent_id, :r => act.id, :anchor => "message-#{act.id}"}) %>
|
||||
</td>
|
||||
<% end %>
|
||||
</tr>
|
||||
<tr>
|
||||
<td colspan="2" width="580">
|
||||
<p class="font_description"> <%= textAreailizable(act,:content) %> </p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<div style="display: inline-block; float: left; margin-top: 0px" width="200" align="right" class="a">
|
||||
<span class="font_lighter"> <%= (l(:label_update_time).to_s << ':' << format_time(e.act.created_on)).to_s %></span>
|
||||
</div>
|
||||
<div style="display: inline-block; float: right; margin-top: 0px"></div>
|
||||
</td>
|
||||
</tr>
|
||||
<% when 'Principal' %>
|
||||
<tr>
|
||||
<% if e.user == User.current %>
|
||||
<td colspan="2" valign="top">
|
||||
<strong><%= link_to("#{l(:label_i)}", user_path(e.user_id)) %></strong>
|
||||
<span class="font_lighter"><%= l(:label_new_user) %></span>
|
||||
</td>
|
||||
<% else %>
|
||||
<td colspan="2" valign="top">
|
||||
<strong><%= link_to(h(e.user), user_path(e.user_id)) %></strong>
|
||||
<span class="font_lighter"><%= l(:label_new_user) %></span>
|
||||
</td>
|
||||
<% end %>
|
||||
</tr>
|
||||
<tr>
|
||||
<td colspan="2" width="580"><p class="font_description"></p></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<div style="display: inline-block; float: left; margin-top: 0px" width="200" align="right" class="a">
|
||||
<span class="font_lighter"> <%= (l(:label_update_time).to_s << ':' << format_time(e.act.created_on)).to_s %></span>
|
||||
</div>
|
||||
<div style="display: inline-block; float: right; margin-top: 0px"></div>
|
||||
</td>
|
||||
</tr>
|
||||
<% when 'News' %>
|
||||
<tr>
|
||||
<% if e.user == User.current %>
|
||||
<td colspan="2" valign="top">
|
||||
<strong><%= link_to("#{l(:label_i)}", user_path(e.user_id)) %></strong>
|
||||
<span class="font_lighter"><%= l(:label_i_new_activity) %></span>
|
||||
<%= link_to format_activity_title("#{l(:label_news)}: #{act.title}"), {:controller => 'news', :action => 'show', :id => act.id} %>
|
||||
</td>
|
||||
<% else %>
|
||||
<td colspan="2" valign="top">
|
||||
<strong><%= link_to(h(e.user), user_path(e.user_id)) %></strong>
|
||||
<span class="font_lighter"><%= l(:label_new_activity) %></span>
|
||||
<%= link_to format_activity_title("#{l(:label_news)}: #{act.title}"), {:controller => 'news', :action => 'show', :id => act.id} %>
|
||||
</td>
|
||||
<% end %>
|
||||
</tr>
|
||||
<tr>
|
||||
<td colspan="2" width="580">
|
||||
<p class="font_description"> <%= textAreailizable act,:description %> </p></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<div style="display: inline-block; float: left; margin-top: 0px" width="200" align="right" class="a">
|
||||
<span class="font_lighter"> <%= (l(:label_update_time).to_s << ':' << format_time(e.act.created_on)).to_s %></span>
|
||||
</div>
|
||||
<div style="display: inline-block; float: right; margin-top: 0px">
|
||||
<span>
|
||||
<%= link_to l(:label_find_all_comments), {:controller => 'news', :action => 'show', :id => act.id} %>
|
||||
</span>
|
||||
<a class="font_lighter">
|
||||
<%= l(:label_comments_count, :count => e.act.comments_count) %>
|
||||
</a>
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
<% when 'Issue' %>
|
||||
<tr>
|
||||
<% if e.user == User.current %>
|
||||
<td colspan="2" valign="top">
|
||||
<strong>
|
||||
<%= link_to("#{l(:label_i)}", user_path(e.user_id)) %>
|
||||
</strong>
|
||||
<span class="font_lighter">
|
||||
<%= l(:label_i_new_activity) %>
|
||||
</span>
|
||||
<%= link_to format_activity_title("#{act.source_from} (#{act.status}): #{act.tracker.name} #{act.subject}"),
|
||||
{:controller => 'issues',
|
||||
:action => 'show',
|
||||
:id => act.id} %>
|
||||
</td>
|
||||
<% else %>
|
||||
<td colspan="2" valign="top">
|
||||
<strong>
|
||||
<%= link_to(h(e.user), user_path(e.user_id)) %>
|
||||
</strong>
|
||||
<span class="font_lighter">
|
||||
<%= l(:label_new_activity) %>
|
||||
</span>
|
||||
<%= link_to format_activity_title("#{act.source_from} (#{act.status}): #{act.tracker.name} #{act.subject}"),
|
||||
{:controller => 'issues',
|
||||
:action => 'show',
|
||||
:id => act.id} %>
|
||||
</td>
|
||||
<% end %>
|
||||
</tr>
|
||||
<tr>
|
||||
<td colspan="2" width="580" style="WORD-BREAK: break-all; WORD-WRAP: break-word">
|
||||
<%= textAreailizable act, :description %>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<div style="display: inline-block; float: left; margin-top: 0px" width="200" align="right" class="a">
|
||||
<span class="font_lighter"> <%= (l(:label_update_time).to_s << ':' << format_time(e.act.created_on)).to_s %></span>
|
||||
</div>
|
||||
<div style="display: inline-block; float: right; margin-top: 0px">
|
||||
<span><%= link_to l(:label_find_all_comments), {:controller => 'issues', :action => 'show', :id => act.id} %></span>
|
||||
<a class="font_lighter"><%= l(:label_comments_count, :count => e.act.journals.count) %></a>
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
<% when 'Contest' %>
|
||||
<tr>
|
||||
<% if e.user == User.current && @show_contest == 1%>
|
||||
<td colspan="2" valign="top">
|
||||
<strong><%= link_to("#{l(:label_i)}", user_path(e.user_id)) %></strong>
|
||||
<span class="font_lighter"><%= l(:label_i_new_activity) %></span>
|
||||
<%= link_to format_activity_title("#{l(:label_contest)}: #{act.name}"), {:controller => 'contests', :action => 'show_contest', :id => act.id} %>
|
||||
</td>
|
||||
<% else %>
|
||||
<td colspan="2" valign="top">
|
||||
<strong><%= link_to(h(e.user), user_path(e.user_id)) %></strong>
|
||||
<span class="font_lighter"><%= l(:label_new_activity) %></span>
|
||||
<%= link_to format_activity_title("#{l(:label_contest)}: #{act.name}"), {:controller => 'contests', :action => 'show_contest', :id => act.id} %>
|
||||
</td>
|
||||
<% end %>
|
||||
</tr>
|
||||
<tr>
|
||||
<td colspan="2" width="580"><p class="font_description"> <%= textAreailizable act, :description %> </p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<div style="display: inline-block; float: left; margin-top: 0px" width="200" align="right" class="a">
|
||||
<span class="font_lighter"> <%= (l(:label_update_time).to_s << ':' << format_time(e.act.created_on)).to_s %></span>
|
||||
</div>
|
||||
</tr>
|
||||
<% else %>
|
||||
<% end %><!-- < % #case end %> -->
|
||||
</tr>
|
||||
<% when 'Journal' %>
|
||||
<tr>
|
||||
<% if e.user == User.current %>
|
||||
<td colspan="2" valign="top">
|
||||
<strong>
|
||||
<%= link_to("#{l(:label_i)}", user_path(e.user_id)) %>
|
||||
</strong>
|
||||
|
||||
<span class="font_lighter">
|
||||
<%= l(:label_i_new_activity) %>
|
||||
</span>
|
||||
|
||||
<%= link_to(l(:label_activity_project)+act.issue.project.name, project_path(act.issue.project.id)) %>
|
||||
<%= link_to format_activity_title("#{act.issue.tracker} ##{act.issue.id}: #{act.issue.subject}"),
|
||||
{:controller => 'issues', :action => 'show', :id => act.issue.id, :anchor => "change-#{act.id}"} %>
|
||||
</td>
|
||||
<% else %>
|
||||
<td colspan="2" valign="top">
|
||||
<strong>
|
||||
<%= link_to(h(e.user), user_path(e.user_id)) %>
|
||||
</strong>
|
||||
|
||||
<span class="font_lighter">
|
||||
<%= l(:label_new_activity) %>
|
||||
</span>
|
||||
|
||||
<%= link_to(l(:label_activity_project)+act.issue.project.name, project_path(act.issue.project.id)) %>
|
||||
<%= link_to format_activity_title("#{act.issue.tracker} ##{act.issue.id}: #{act.issue.subject}"),
|
||||
{:controller => 'issues', :action => 'show', :id => act.issue.id, :anchor => "change-#{act.id}"} %>
|
||||
</td>
|
||||
<% end %>
|
||||
</tr>
|
||||
<tr>
|
||||
<% if act.notes.nil? %>
|
||||
<% desStr = '' %>
|
||||
<% else %>
|
||||
<% desStr= textAreailizable(act, :notes) %>
|
||||
<% end %>
|
||||
<td colspan="2" width="580">
|
||||
<p class="font_description">
|
||||
<%= desStr %>
|
||||
</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<div style="display: inline-block; float: left; margin-top: 0px" width="200" align="right" class="a">
|
||||
<span class="font_lighter">
|
||||
<%= (l(:label_update_time).to_s << ':' << format_time(e.act.created_on)).to_s %>
|
||||
</span>
|
||||
</div>
|
||||
<div style="display: inline-block; float: right; margin-top: 0px"></div>
|
||||
</td>
|
||||
</tr>
|
||||
<% when 'Changeset' %>
|
||||
<tr>
|
||||
<% if e.user == User.current %>
|
||||
<td colspan="2" valign="top">
|
||||
<strong>
|
||||
<%= link_to("#{l(:label_i)}", user_path(e.user_id)) %>
|
||||
</strong>
|
||||
|
||||
<span class="font_lighter">
|
||||
<%= l(:label_i_new_activity) %>
|
||||
</span>
|
||||
|
||||
<%= link_to format_activity_title(act.title),
|
||||
{:controller => 'repositories',
|
||||
:action => 'revision',
|
||||
:id => act.repository.project,
|
||||
:repository_id => act.repository.identifier_param,
|
||||
:rev => act.identifier} %>
|
||||
</td>
|
||||
<% else %>
|
||||
<td colspan="2" valign="top">
|
||||
<strong>
|
||||
<%= link_to(h(e.user), user_path(e.user_id)) %>
|
||||
</strong>
|
||||
|
||||
<span class="font_lighter">
|
||||
<%= l(:label_new_activity) %>
|
||||
</span>
|
||||
|
||||
<%= link_to format_activity_title(act.title),
|
||||
{:controller => 'repositories',
|
||||
:action => 'revision',
|
||||
:id => act.repository.project,
|
||||
:repository_id => act.repository.identifier_param,
|
||||
:rev => act.identifier} %>
|
||||
</td>
|
||||
<% end %>
|
||||
</tr>
|
||||
<tr>
|
||||
<td colspan="2" width="580">
|
||||
<p class="font_description">
|
||||
<%= textAreailizable act,:long_comments %>
|
||||
</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<div style="display: inline-block; float: left; margin-top: 0px" width="200" align="right" class="a">
|
||||
<span class="font_lighter">
|
||||
<%= format_time(e.act.committed_on) %>
|
||||
</span>
|
||||
</div>
|
||||
<div style="display: inline-block; float: right; margin-top: 0px">
|
||||
<span><%= link_to l(:label_find_all_comments),
|
||||
{:controller => 'repositories',
|
||||
:action => 'revision',
|
||||
:id => act.repository.project,
|
||||
:repository_id => act.repository.identifier_param,
|
||||
:rev => act.identifier} %>
|
||||
</span>
|
||||
<a class="font_lighter">
|
||||
<%= l(:label_comments_count, :count => e.act.count) %>
|
||||
</a>
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
<% when 'Message' %>
|
||||
<tr>
|
||||
<% if e.user == User.current %>
|
||||
<td colspan="2" valign="top">
|
||||
<strong>
|
||||
<%= link_to("#{l(:label_i)}", user_path(e.user_id)) %>
|
||||
</strong>
|
||||
|
||||
<span class="font_lighter">
|
||||
<%= l(:label_i_new_activity) %>
|
||||
</span>
|
||||
|
||||
<%= link_to format_activity_title("#{act.board.name}: #{act.subject}"),
|
||||
{:controller => 'messages',
|
||||
:action => 'show',
|
||||
:board_id => act.board_id}.merge(act.parent_id.nil? ? {:id => act.id} : {:id => act.parent_id, :r => act.id, :anchor => "message-#{act.id}"}) %>
|
||||
</td>
|
||||
<% else %>
|
||||
<td colspan="2" valign="top">
|
||||
<strong>
|
||||
<%= link_to(h(e.user), user_path(e.user_id)) %>
|
||||
</strong>
|
||||
|
||||
<span class="font_lighter">
|
||||
<%= l(:label_new_activity) %>
|
||||
</span>
|
||||
|
||||
<%= link_to format_activity_title("#{act.board.name}: #{act.subject}"),
|
||||
{:controller => 'messages',
|
||||
:action => 'show',
|
||||
:board_id => act.board_id}.merge(act.parent_id.nil? ? {:id => act.id} : {:id => act.parent_id, :r => act.id, :anchor => "message-#{act.id}"}) %>
|
||||
</td>
|
||||
<% end %>
|
||||
</tr>
|
||||
<tr>
|
||||
<td colspan="2" width="580">
|
||||
<p class="font_description">
|
||||
<%= textAreailizable(act,:content) %>
|
||||
</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<div style="display: inline-block; float: left; margin-top: 0px" width="200" align="right" class="a">
|
||||
<span class="font_lighter">
|
||||
<%= (l(:label_update_time).to_s << ':' << format_time(e.act.created_on)).to_s %>
|
||||
</span>
|
||||
</div>
|
||||
<div style="display: inline-block; float: right; margin-top: 0px"></div>
|
||||
</td>
|
||||
</tr>
|
||||
<% when 'Principal' %>
|
||||
<tr>
|
||||
<% if e.user == User.current %>
|
||||
<td colspan="2" valign="top">
|
||||
<strong>
|
||||
<%= link_to("#{l(:label_i)}", user_path(e.user_id)) %>
|
||||
</strong>
|
||||
|
||||
<span class="font_lighter">
|
||||
<%= l(:label_new_user) %>
|
||||
</span>
|
||||
</td>
|
||||
<% else %>
|
||||
<td colspan="2" valign="top">
|
||||
<strong>
|
||||
<%= link_to(h(e.user), user_path(e.user_id)) %>
|
||||
</strong>
|
||||
|
||||
<span class="font_lighter">
|
||||
<%= l(:label_new_user) %>
|
||||
</span>
|
||||
</td>
|
||||
<% end %>
|
||||
</tr>
|
||||
<tr>
|
||||
<td colspan="2" width="580">
|
||||
<p class="font_description"></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<div style="display: inline-block; float: left; margin-top: 0px" width="200" align="right" class="a">
|
||||
<span class="font_lighter">
|
||||
<%= (l(:label_update_time).to_s << ':' << format_time(e.act.created_on)).to_s %>
|
||||
</span>
|
||||
</div>
|
||||
<div style="display: inline-block; float: right; margin-top: 0px"></div>
|
||||
</td>
|
||||
</tr>
|
||||
<% when 'News' %>
|
||||
<tr>
|
||||
<% if e.user == User.current %>
|
||||
<td colspan="2" valign="top">
|
||||
<strong>
|
||||
<%= link_to("#{l(:label_i)}", user_path(e.user_id)) %>
|
||||
</strong>
|
||||
|
||||
<span class="font_lighter">
|
||||
<%= l(:label_i_new_activity) %>
|
||||
</span>
|
||||
|
||||
<%= link_to format_activity_title("#{l(:label_news)}: #{act.title}"), {:controller => 'news', :action => 'show', :id => act.id} %>
|
||||
</td>
|
||||
<% else %>
|
||||
<td colspan="2" valign="top">
|
||||
<strong>
|
||||
<%= link_to(h(e.user), user_path(e.user_id)) %>
|
||||
</strong>
|
||||
|
||||
<span class="font_lighter">
|
||||
<%= l(:label_new_activity) %>
|
||||
</span>
|
||||
|
||||
<%= link_to format_activity_title("#{l(:label_news)}: #{act.title}"), {:controller => 'news', :action => 'show', :id => act.id} %>
|
||||
</td>
|
||||
<% end %>
|
||||
</tr>
|
||||
<tr>
|
||||
<td colspan="2" width="580">
|
||||
<p class="font_description">
|
||||
<%= textAreailizable act,:description %>
|
||||
</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<div style="display: inline-block; float: left; margin-top: 0px" width="200" align="right" class="a">
|
||||
<span class="font_lighter">
|
||||
<%= (l(:label_update_time).to_s << ':' << format_time(e.act.created_on)).to_s %>
|
||||
</span>
|
||||
</div>
|
||||
<div style="display: inline-block; float: right; margin-top: 0px">
|
||||
<span>
|
||||
<%= link_to l(:label_find_all_comments), {:controller => 'news', :action => 'show', :id => act.id} %>
|
||||
</span>
|
||||
<a class="font_lighter">
|
||||
<%= l(:label_comments_count, :count => e.act.comments_count) %>
|
||||
</a>
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
<% when 'Issue' %>
|
||||
<tr>
|
||||
<% if e.user == User.current %>
|
||||
<td colspan="2" valign="top">
|
||||
<strong>
|
||||
<%= link_to("#{l(:label_i)}", user_path(e.user_id)) %>
|
||||
</strong>
|
||||
|
||||
<span class="font_lighter">
|
||||
<%= l(:label_i_new_activity) %>
|
||||
</span>
|
||||
<%= link_to format_activity_title("#{act.source_from} (#{act.status}): #{act.tracker.name} #{act.subject}"),
|
||||
{:controller => 'issues',
|
||||
:action => 'show',
|
||||
:id => act.id} %>
|
||||
</td>
|
||||
<% else %>
|
||||
<td colspan="2" valign="top">
|
||||
<strong>
|
||||
<%= link_to(h(e.user), user_path(e.user_id)) %>
|
||||
</strong>
|
||||
<span class="font_lighter">
|
||||
<%= l(:label_new_activity) %>
|
||||
</span>
|
||||
<%= link_to format_activity_title("#{act.source_from} (#{act.status}): #{act.tracker.name} #{act.subject}"),
|
||||
{:controller => 'issues',
|
||||
:action => 'show',
|
||||
:id => act.id} %>
|
||||
</td>
|
||||
<% end %>
|
||||
</tr>
|
||||
<tr>
|
||||
<td colspan="2" width="580" style="WORD-BREAK: break-all; WORD-WRAP: break-word">
|
||||
<%= textAreailizable act, :description %>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<div style="display: inline-block; float: left; margin-top: 0px" width="200" align="right" class="a">
|
||||
<span class="font_lighter">
|
||||
<%= (l(:label_update_time).to_s << ':' << format_time(e.act.created_on)).to_s %>
|
||||
</span>
|
||||
</div>
|
||||
<div style="display: inline-block; float: right; margin-top: 0px">
|
||||
<span>
|
||||
<%= link_to l(:label_find_all_comments), {:controller => 'issues', :action => 'show', :id => act.id} %>
|
||||
</span>
|
||||
<a class="font_lighter">
|
||||
<%= l(:label_comments_count, :count => e.act.journals.count) %>
|
||||
</a>
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
<% when 'Contest' %>
|
||||
<tr>
|
||||
<% if e.user == User.current && @show_contest == 1%>
|
||||
<td colspan="2" valign="top">
|
||||
<strong>
|
||||
<%= link_to("#{l(:label_i)}", user_path(e.user_id)) %>
|
||||
</strong>
|
||||
|
||||
<span class="font_lighter">
|
||||
<%= l(:label_i_new_activity) %>
|
||||
</span>
|
||||
|
||||
<%= link_to format_activity_title("#{l(:label_contest)}: #{act.name}"), {:controller => 'contests', :action => 'show_contest', :id => act.id} %>
|
||||
</td>
|
||||
<% else %>
|
||||
<td colspan="2" valign="top">
|
||||
<strong>
|
||||
<%= link_to(h(e.user), user_path(e.user_id)) %>
|
||||
</strong>
|
||||
|
||||
<span class="font_lighter">
|
||||
<%= l(:label_new_activity) %>
|
||||
</span>
|
||||
|
||||
<%= link_to format_activity_title("#{l(:label_contest)}: #{act.name}"), {:controller => 'contests', :action => 'show_contest', :id => act.id} %>
|
||||
</td>
|
||||
<% end %>
|
||||
</tr>
|
||||
<tr>
|
||||
<td colspan="2" width="580">
|
||||
<p class="font_description">
|
||||
<%= textAreailizable act, :description %>
|
||||
</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<div style="display: inline-block; float: left; margin-top: 0px" width="200" align="right" class="a">
|
||||
<span class="font_lighter">
|
||||
<%= (l(:label_update_time).to_s << ':' << format_time(e.act.created_on)).to_s %>
|
||||
</span>
|
||||
</div>
|
||||
</tr>
|
||||
<% else %>
|
||||
<% end %><!-- < % #case end %> -->
|
||||
</table>
|
||||
</td>
|
||||
</tr>
|
||||
|
@ -442,12 +583,19 @@
|
|||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td colspan="2" width="580"><p class="font_description"> <%= textAreailizable e.notes %> </p></td>
|
||||
<td colspan="2" width="580">
|
||||
<p class="font_description">
|
||||
<%= textAreailizable e.notes %>
|
||||
</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td align="left"><a class="font_lighter"></a></td>
|
||||
<td width="200" align="right" class="a">
|
||||
<span class="font_lighter"><%= format_time e.created_on %></span></td>
|
||||
<span class="font_lighter">
|
||||
<%= format_time e.created_on %>
|
||||
</span>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</td>
|
||||
|
@ -457,11 +605,15 @@
|
|||
</div>
|
||||
|
||||
<div class="pagination" style="float:left;">
|
||||
<ul> <%= pagination_links_full @info_pages %> </ul>
|
||||
<ul>
|
||||
<%= pagination_links_full @info_pages %>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<% else %>
|
||||
<p class="font_description"><%= l(:label_no_user_respond_you) %></p>
|
||||
<p class="font_description">
|
||||
<%= l(:label_no_user_respond_you) %>
|
||||
</p>
|
||||
<% end %>
|
||||
|
||||
|
||||
|
|
|
@ -1,20 +1,18 @@
|
|||
<% if @obj_flag == '3'%>
|
||||
|
||||
$('#tags_show_issue').html('<%= escape_javascript(render :partial => 'tags/tag_name',
|
||||
:locals => {:obj => @obj,:non_list_all => false,:object_flag => @obj_flag}) %>');
|
||||
$('#tags_show_issue').html('<%= escape_javascript(render :partial => 'tags/tag_name',
|
||||
:locals => {:obj => @obj,:non_list_all => false,:object_flag => @obj_flag}) %>');
|
||||
//$('#put-tag-form-issue').hide();
|
||||
$('#name-issue').val("");
|
||||
$('#name-issue').val("");
|
||||
<% elsif @obj_flag == '6'%>
|
||||
$("#tags_show-<%=@obj.class%>-<%=@obj.id%>").empty();
|
||||
$("#tags_show-<%=@obj.class%>-<%=@obj.id%>").html('<%= escape_javascript(render :partial => 'tags/tag_name',
|
||||
:locals => {:obj => @obj,:non_list_all => false,:object_flag => @obj_flag}) %>');
|
||||
//$("#put-tag-form-<%=@obj.class%>-<%=@obj.id%>").hide();
|
||||
//$("#put-tag-form-<%#=@obj.class%>-<%#=@obj.id%>").hide();
|
||||
$("#put-tag-form-<%=@obj.class%>-<%=@obj.id%> #name").val("");
|
||||
<% else %>
|
||||
|
||||
$('#tags_show').html('<%= escape_javascript(render :partial => 'tags/tag_name',
|
||||
:locals => {:obj => @obj,:non_list_all => false,:object_flag => @obj_flag}) %>');
|
||||
$('#put-tag-form #name').val("");
|
||||
$('#tags_show').html('<%= escape_javascript(render :partial => 'tags/tag_name',
|
||||
:locals => {:obj => @obj,:non_list_all => false,:object_flag => @obj_flag}) %>');
|
||||
$('#tags_name').val("");
|
||||
//$('#put-tag-form').hide();
|
||||
<% end %>
|
||||
|
||||
|
|
|
@ -1,48 +1,72 @@
|
|||
<!--modified by young-->
|
||||
<div class="contextual">
|
||||
<div class="contextual" style="overflow: hidden;text-overflow: ellipsis;white-space: nowrap;">
|
||||
<%= link_to(l(:button_edit), edit_version_path(@version), :class => 'icon icon-edit') if User.current.allowed_to?(:manage_versions, @version.project) %>
|
||||
<%= link_to_if_authorized(l(:button_edit_associated_wikipage, :page_title => @version.wiki_page_title), {:controller => 'wiki', :action => 'edit', :project_id => @version.project, :id => Wiki.titleize(@version.wiki_page_title)}, :class => 'icon icon-edit') unless @version.wiki_page_title.blank? || @version.project.wiki.nil? %>
|
||||
<%= delete_link version_path(@version, :back_url => url_for(:controller => 'versions', :action => 'index', :project_id => @version.project)) if User.current.allowed_to?(:manage_versions, @version.project) %>
|
||||
<%= link_to_if_authorized(l(:button_edit_associated_wikipage,
|
||||
:page_title => @version.wiki_page_title.truncate(30, omission: '...')),
|
||||
{:controller => 'wiki',
|
||||
:action => 'edit',
|
||||
:project_id => @version.project,
|
||||
:id => Wiki.titleize(@version.wiki_page_title)},
|
||||
:class => 'icon icon-edit') unless @version.wiki_page_title.blank? || @version.project.wiki.nil? %>
|
||||
<%= delete_link version_path(@version, :back_url => url_for(:controller => 'versions',
|
||||
:action => 'index',
|
||||
:project_id => @version.project)) if User.current.allowed_to?(:manage_versions, @version.project) %>
|
||||
<%= call_hook(:view_versions_show_contextual, { :version => @version, :project => @project }) %>
|
||||
</div>
|
||||
|
||||
<h3><%= h(@version.name) %></h3>
|
||||
<h3 style="word-break: break-all;word-wrap: break-word;">
|
||||
<%= h(@version.name) %>
|
||||
</h3>
|
||||
|
||||
<div id="roadmap">
|
||||
<%= render :partial => 'versions/overview', :locals => {:version => @version} %>
|
||||
<%= render(:partial => "wiki/content", :locals => {:content => @version.wiki_page.content}) if @version.wiki_page %>
|
||||
<%= render :partial => 'versions/overview', :locals => {:version => @version} %>
|
||||
<%= render(:partial => "wiki/content", :locals => {:content => @version.wiki_page.content}) if @version.wiki_page %>
|
||||
|
||||
<div class="splitcontent">
|
||||
<% if @version.estimated_hours > 0 || User.current.allowed_to?(:view_time_entries, @project) %>
|
||||
<fieldset class="time-tracking"><legend><%= l(:label_time_tracking) %></legend>
|
||||
<table>
|
||||
<tr>
|
||||
<th><%= l(:field_estimated_hours) %></th>
|
||||
<td class="total-hours"><%= html_hours(l_hours(@version.estimated_hours)) %></td>
|
||||
</tr>
|
||||
<% if User.current.allowed_to?(:view_time_entries, @project) %>
|
||||
<tr>
|
||||
<th><%= l(:label_spent_time) %></th>
|
||||
<td class="total-hours"><%= html_hours(l_hours(@version.spent_hours)) %></td>
|
||||
</tr>
|
||||
<% end %>
|
||||
</table>
|
||||
</fieldset>
|
||||
<% end %>
|
||||
<div class="splitcontent">
|
||||
<% if @version.estimated_hours > 0 || User.current.allowed_to?(:view_time_entries, @project) %>
|
||||
<fieldset class="time-tracking"><legend><%= l(:label_time_tracking) %></legend>
|
||||
<table>
|
||||
<tr>
|
||||
<th>
|
||||
<%= l(:field_estimated_hours) %>
|
||||
</th>
|
||||
<td class="total-hours">
|
||||
<%= html_hours(l_hours(@version.estimated_hours)) %>
|
||||
</td>
|
||||
</tr>
|
||||
<% if User.current.allowed_to?(:view_time_entries, @project) %>
|
||||
<tr>
|
||||
<th>
|
||||
<%= l(:label_spent_time) %>
|
||||
</th>
|
||||
<td class="total-hours">
|
||||
<%= html_hours(l_hours(@version.spent_hours)) %>
|
||||
</td>
|
||||
</tr>
|
||||
<% end %>
|
||||
</table>
|
||||
</fieldset>
|
||||
<% end %>
|
||||
|
||||
<div id="status_by" style="margin-top:10px;"><!--by young-->
|
||||
<%= render_issue_status_by(@version, params[:status_by]) if @version.fixed_issues.count > 0 %>
|
||||
</div>
|
||||
<div id="status_by" style="margin-top:10px;"><!--by young-->
|
||||
<%= render_issue_status_by(@version, params[:status_by]) if @version.fixed_issues.count > 0 %>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<% if @issues.present? %>
|
||||
<%= form_tag({}) do -%>
|
||||
<table class="list related-issues">
|
||||
<caption><%= l(:label_related_issues) %></caption>
|
||||
<caption>
|
||||
<%= l(:label_related_issues) %>
|
||||
</caption>
|
||||
<%- @issues.each do |issue| -%>
|
||||
<tr class="hascontextmenu">
|
||||
<td class="checkbox"><%= check_box_tag 'ids[]', issue.id, false, :id => nil %></td>
|
||||
<td><%= link_to_issue(issue, :project => (@project != issue.project)) %></td>
|
||||
<td class="checkbox">
|
||||
<%= check_box_tag 'ids[]', issue.id, false, :id => nil %>
|
||||
</td>
|
||||
<td>
|
||||
<%= link_to_issue(issue, :project => (@project != issue.project)) %>
|
||||
</td>
|
||||
</tr>
|
||||
<% end %>
|
||||
</table>
|
||||
|
|
|
@ -1,57 +1,62 @@
|
|||
<%= wiki_page_breadcrumb(@page) %>
|
||||
|
||||
<script src="/javascripts/ckeditor/ckeditor.js?1404953555" type="text/javascript"></script>
|
||||
<h3><%= h @page.pretty_title %></h3>
|
||||
<script src="http://<%= Setting.host_name%>/javascripts/ckeditor/ckeditor.js?1404953555" type="text/javascript"></script>
|
||||
<h3 style="word-break: break-all;word-wrap: break-word;">
|
||||
<%= h @page.pretty_title %>
|
||||
</h3>
|
||||
|
||||
<%= form_for @content, :as => :content,
|
||||
:url => {:action => 'update', :id => @page.title},
|
||||
:html => {:method => :put, :multipart => true, :id => 'wiki_form'} do |f| %>
|
||||
<%= f.hidden_field :version %>
|
||||
<% if @section %>
|
||||
<%= hidden_field_tag 'section', @section %>
|
||||
<%= hidden_field_tag 'section_hash', @section_hash %>
|
||||
<% end %>
|
||||
<%= error_messages_for 'content' %>
|
||||
<%= f.hidden_field :version %>
|
||||
<% if @section %>
|
||||
<%= hidden_field_tag 'section', @section %>
|
||||
<%= hidden_field_tag 'section_hash', @section_hash %>
|
||||
<% end %>
|
||||
<%= error_messages_for 'content' %>
|
||||
|
||||
<div class="actions" style="max-width:680px">
|
||||
<p style="max-width:680px;"><%=text_area_tag 'content[text]', @text, :required => true, :id => 'editor02', :cols => 100, :rows => 25 %></p>
|
||||
<p style="max-width:680px;">
|
||||
<%=text_area_tag 'content[text]', @text, :required => true, :id => 'editor02', :cols => 100, :rows => 25 %>
|
||||
</p>
|
||||
<script type="text/javascript">
|
||||
var ckeditor=CKEDITOR.replace('editor02',{height: '300'});
|
||||
</script>
|
||||
</div>
|
||||
|
||||
<div class="box tabular">
|
||||
<%#= text_area_tag 'content[text]', @text, :cols => 100, :rows => 25,
|
||||
:class => 'wiki-edit', :accesskey => accesskey(:edit) %>
|
||||
<div class="box tabular">
|
||||
<% if @page.safe_attribute_names.include?('parent_id') && @wiki.pages.any? %>
|
||||
<%= fields_for @page do |fp| %>
|
||||
<p>
|
||||
<label>
|
||||
<%= l(:field_parent_title) %>
|
||||
</label>
|
||||
<%= fp.select :parent_id,content_tag('option', '', :value => '') + wiki_page_options_for_select(@wiki.pages.all(:include => :parent) - @page.self_and_descendants, @page.parent) %>
|
||||
</p>
|
||||
<% end %>
|
||||
<% end %>
|
||||
|
||||
<!--p style="max-width:680px"><input id="editor02" required="true" /><%#= f.text_area :comments, :required => true, :id => 'editor02' %></p>
|
||||
<script type="text/javascript">var ckeditor=CKEDITOR.replace('editor02');</script-->
|
||||
<p style="width: 100%;">
|
||||
<label>
|
||||
<%= l(:field_comments) %>
|
||||
</label>
|
||||
<%= f.text_field :comments, :style => "width:75%;" %>
|
||||
</p>
|
||||
<p>
|
||||
<label>
|
||||
<%=l(:label_attachment_plural)%>
|
||||
</label>
|
||||
<%= render :partial => 'attachments/form' %>
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<% if @page.safe_attribute_names.include?('parent_id') && @wiki.pages.any? %>
|
||||
<%= fields_for @page do |fp| %>
|
||||
<p>
|
||||
<label><%= l(:field_parent_title) %></label>
|
||||
<%= fp.select :parent_id,
|
||||
content_tag('option', '', :value => '') +
|
||||
wiki_page_options_for_select(@wiki.pages.all(:include => :parent) -
|
||||
@page.self_and_descendants, @page.parent) %>
|
||||
<%= submit_tag l(:button_save) %>
|
||||
</p>
|
||||
<% end %>
|
||||
<%= wikitoolbar_for 'content_text' %>
|
||||
<% end %>
|
||||
|
||||
<p style="width: 100%;"><label><%= l(:field_comments) %></label><%= f.text_field :comments, :style => "width:75%;" %></p>
|
||||
<p><label><%=l(:label_attachment_plural)%></label><%= render :partial => 'attachments/form' %></p>
|
||||
</div>
|
||||
|
||||
<p><%= submit_tag l(:button_save) %>
|
||||
<%#= preview_link({:controller => 'wiki', :action => 'preview', :project_id => @project, :id => @page.title }, 'wiki_form') %></p>
|
||||
<%= wikitoolbar_for 'content_text' %>
|
||||
<% end %>
|
||||
|
||||
<div id="preview" class="wiki"></div>
|
||||
|
||||
<% content_for :header_tags do %>
|
||||
<%= robot_exclusion_tag %>
|
||||
<% end %>
|
||||
|
||||
<% html_title @page.pretty_title %>
|
||||
|
|
|
@ -8,35 +8,51 @@
|
|||
:project_id => @page.project, :id => @page.title},
|
||||
:method => :get) do %>
|
||||
<table class="list wiki-page-versions">
|
||||
<thead><tr>
|
||||
<th>#</th>
|
||||
<th></th>
|
||||
<th></th>
|
||||
<th><%= l(:field_updated_on) %></th>
|
||||
<th><%= l(:field_author) %></th>
|
||||
<th><%= l(:field_comments) %></th>
|
||||
<th></th>
|
||||
</tr></thead>
|
||||
<tbody>
|
||||
<% show_diff = @versions.size > 1 %>
|
||||
<% line_num = 1 %>
|
||||
<% @versions.each do |ver| %>
|
||||
<tr class="wiki-page-version <%= cycle("odd", "even") %>">
|
||||
<td class="id"><%= link_to h(ver.version), :action => 'show', :id => @page.title, :project_id => @page.project, :version => ver.version %></td>
|
||||
<td class="checkbox"><%= radio_button_tag('version', ver.version, (line_num==1), :id => "cb-#{line_num}", :onclick => "$('#cbto-#{line_num+1}').attr('checked', true);") if show_diff && (line_num < @versions.size) %></td>
|
||||
<td class="checkbox"><%= radio_button_tag('version_from', ver.version, (line_num==2), :id => "cbto-#{line_num}") if show_diff && (line_num > 1) %></td>
|
||||
<td class="updated_on"><%= format_time(ver.updated_on) %></td>
|
||||
<td class="author"><%= link_to_user ver.author %></td>
|
||||
<td class="comments"><%=h ver.comments %></td>
|
||||
<td class="buttons">
|
||||
<%= link_to l(:button_annotate), :action => 'annotate', :id => @page.title, :version => ver.version %>
|
||||
<%= delete_link wiki_page_path(@page, :version => ver.version) if User.current.allowed_to?(:delete_wiki_pages, @page.project) && @version_count > 1 %>
|
||||
</td>
|
||||
</tr>
|
||||
<% line_num += 1 %>
|
||||
<% end %>
|
||||
</tbody>
|
||||
<thead>
|
||||
<tr>
|
||||
<th>#</th>
|
||||
<th></th>
|
||||
<th></th>
|
||||
<th><%= l(:field_updated_on) %></th>
|
||||
<th><%= l(:field_author) %></th>
|
||||
<th><%= l(:field_comments) %></th>
|
||||
<th></th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<% show_diff = @versions.size > 1 %>
|
||||
<% line_num = 1 %>
|
||||
<% @versions.each do |ver| %>
|
||||
<tr class="wiki-page-version <%= cycle("odd", "even") %>">
|
||||
<td class="id">
|
||||
<%= link_to h(ver.version), :action => 'show', :id => @page.title, :project_id => @page.project, :version => ver.version %>
|
||||
</td>
|
||||
<td class="checkbox">
|
||||
<%= radio_button_tag('version', ver.version, (line_num==1), :id => "cb-#{line_num}", :onclick => "$('#cbto-#{line_num+1}').attr('checked', true);") if show_diff && (line_num < @versions.size) %>
|
||||
</td>
|
||||
<td class="checkbox">
|
||||
<%= radio_button_tag('version_from', ver.version, (line_num==2), :id => "cbto-#{line_num}") if show_diff && (line_num > 1) %>
|
||||
</td>
|
||||
<td class="updated_on">
|
||||
<%= format_time(ver.updated_on) %>
|
||||
</td>
|
||||
<td class="author">
|
||||
<%= link_to_user ver.author %>
|
||||
</td>
|
||||
<td class="comments" style="word-break: break-all;word-wrap: break-word;" title="<%= h ver.comments%>">
|
||||
<%=h ver.comments.truncate(25,ommision:'...') %>
|
||||
</td>
|
||||
<td class="buttons">
|
||||
<%= link_to l(:button_annotate), :action => 'annotate', :id => @page.title, :version => ver.version %>
|
||||
<%= delete_link wiki_page_path(@page, :version => ver.version) if User.current.allowed_to?(:delete_wiki_pages, @page.project) && @version_count > 1 %>
|
||||
</td>
|
||||
</tr>
|
||||
<% line_num += 1 %>
|
||||
<% end %>
|
||||
</tbody>
|
||||
</table>
|
||||
<%= submit_tag l(:label_view_diff), :class => 'small' if show_diff %>
|
||||
<span class="pagination"><%= pagination_links_full @version_pages, @version_count %></span>
|
||||
<span class="pagination">
|
||||
<%= pagination_links_full @version_pages, @version_count %>
|
||||
</span>
|
||||
<% end %>
|
||||
|
|
|
@ -1,61 +1,62 @@
|
|||
<div class="contextual">
|
||||
<% if @editable %>
|
||||
<% if @content.current_version? %>
|
||||
<%= link_to_if_authorized(l(:button_edit), {:action => 'edit', :id => @page.title}, :class => 'icon icon-edit', :accesskey => accesskey(:edit)) %>
|
||||
<%= watcher_link(@page, User.current) %>
|
||||
<%= link_to_if_authorized(l(:button_lock), {:action => 'protect', :id => @page.title, :protected => 1}, :method => :post, :class => 'icon icon-lock') if !@page.protected? %>
|
||||
<%= link_to_if_authorized(l(:button_unlock), {:action => 'protect', :id => @page.title, :protected => 0}, :method => :post, :class => 'icon icon-unlock') if @page.protected? %>
|
||||
<%= link_to_if_authorized(l(:button_rename), {:action => 'rename', :id => @page.title}, :class => 'icon icon-move') %>
|
||||
<%= link_to_if_authorized(l(:button_delete), {:action => 'destroy', :id => @page.title}, :method => :delete, :data => {:confirm => l(:text_are_you_sure)}, :class => 'icon icon-del') %>
|
||||
<% else %>
|
||||
<%= link_to_if_authorized(l(:button_rollback), {:action => 'edit', :id => @page.title, :version => @content.version }, :class => 'icon icon-cancel') %>
|
||||
<% end %>
|
||||
<% end %>
|
||||
<%= link_to_if_authorized(l(:label_history), {:action => 'history', :id => @page.title}, :class => 'icon icon-history') %>
|
||||
<% if @editable %>
|
||||
<% if @content.current_version? %>
|
||||
<%= link_to_if_authorized(l(:button_edit), {:action => 'edit', :id => @page.title}, :class => 'icon icon-edit', :accesskey => accesskey(:edit)) %>
|
||||
<%= watcher_link(@page, User.current) %>
|
||||
<%= link_to_if_authorized(l(:button_lock), {:action => 'protect', :id => @page.title, :protected => 1}, :method => :post, :class => 'icon icon-lock') if !@page.protected? %>
|
||||
<%= link_to_if_authorized(l(:button_unlock), {:action => 'protect', :id => @page.title, :protected => 0}, :method => :post, :class => 'icon icon-unlock') if @page.protected? %>
|
||||
<%= link_to_if_authorized(l(:button_rename), {:action => 'rename', :id => @page.title}, :class => 'icon icon-move') %>
|
||||
<%= link_to_if_authorized(l(:button_delete), {:action => 'destroy', :id => @page.title}, :method => :delete, :data => {:confirm => l(:text_are_you_sure)}, :class => 'icon icon-del') %>
|
||||
<% else %>
|
||||
<%= link_to_if_authorized(l(:button_rollback), {:action => 'edit', :id => @page.title, :version => @content.version }, :class => 'icon icon-cancel') %>
|
||||
<% end %>
|
||||
<% end %>
|
||||
<%= link_to_if_authorized(l(:label_history), {:action => 'history', :id => @page.title}, :class => 'icon icon-history') %>
|
||||
</div>
|
||||
|
||||
<%= wiki_page_breadcrumb(@page) %>
|
||||
|
||||
<% unless @content.current_version? %>
|
||||
<p>
|
||||
<%= link_to(("\xc2\xab " + l(:label_previous)),
|
||||
:action => 'show', :id => @page.title, :project_id => @page.project,
|
||||
:version => @content.previous.version) + " - " if @content.previous %>
|
||||
<%= "#{l(:label_version)} #{@content.version}/#{@page.content.version}" %>
|
||||
<%= '('.html_safe + link_to(l(:label_diff), :controller => 'wiki', :action => 'diff',
|
||||
:id => @page.title, :project_id => @page.project,
|
||||
:version => @content.version) + ')'.html_safe if @content.previous %> -
|
||||
<%= link_to((l(:label_next) + " \xc2\xbb"), :action => 'show',
|
||||
:id => @page.title, :project_id => @page.project,
|
||||
:version => @content.next.version) + " - " if @content.next %>
|
||||
<%= link_to(l(:label_current_version), :action => 'show', :id => @page.title, :project_id => @page.project, :version => nil) %>
|
||||
<br />
|
||||
<em><%= @content.author ? link_to_user(@content.author) : l(:label_user_anonymous)
|
||||
%>, <%= format_time(@content.updated_on) %> </em><br />
|
||||
<%=h @content.comments %>
|
||||
<%= link_to(("\xc2\xab " + l(:label_previous)),
|
||||
:action => 'show', :id => @page.title, :project_id => @page.project,
|
||||
:version => @content.previous.version) + " - " if @content.previous %>
|
||||
<%= "#{l(:label_version)} #{@content.version}/#{@page.content.version}" %>
|
||||
<%= '('.html_safe + link_to(l(:label_diff), :controller => 'wiki', :action => 'diff',
|
||||
:id => @page.title, :project_id => @page.project,
|
||||
:version => @content.version) + ')'.html_safe if @content.previous %> -
|
||||
<%= link_to((l(:label_next) + " \xc2\xbb"), :action => 'show',
|
||||
:id => @page.title, :project_id => @page.project,
|
||||
:version => @content.next.version) + " - " if @content.next %>
|
||||
<%= link_to(l(:label_current_version), :action => 'show', :id => @page.title, :project_id => @page.project, :version => nil) %>
|
||||
<br />
|
||||
<em>
|
||||
<%= @content.author ? link_to_user(@content.author) : l(:label_user_anonymous)%>,
|
||||
<%= format_time(@content.updated_on) %>
|
||||
</em>
|
||||
<br />
|
||||
<%=h @content.comments %>
|
||||
</p>
|
||||
<hr />
|
||||
<% end %>
|
||||
|
||||
<%= render(:partial => "wiki/content", :locals => {:content => @content}) %>
|
||||
|
||||
<%= link_to_attachments @page %>
|
||||
|
||||
<% if @editable && authorize_for('wiki', 'add_attachment') %>
|
||||
<div id="wiki_add_attachment">
|
||||
<p><%= link_to l(:label_attachment_new), {}, :onclick => "$('#add_attachment_form').show(); return false;",
|
||||
:id => 'attach_files_link' %></p>
|
||||
<%= form_tag({:controller => 'wiki', :action => 'add_attachment',
|
||||
:project_id => @project, :id => @page.title},
|
||||
:multipart => true, :id => "add_attachment_form",
|
||||
:style => "display:none;") do %>
|
||||
<div class="box">
|
||||
<p><%= render :partial => 'attachments/form' %></p>
|
||||
</div>
|
||||
<%= submit_tag l(:button_add) %>
|
||||
<%= link_to l(:button_cancel), {}, :onclick => "$('#add_attachment_form').hide(); return false;" %>
|
||||
<% end %>
|
||||
</div>
|
||||
<div id="wiki_add_attachment">
|
||||
<p>
|
||||
<%= link_to l(:label_attachment_new), {}, :onclick => "$('#add_attachment_form').show(); return false;",
|
||||
:id => 'attach_files_link' %></p>
|
||||
<%= form_tag({:controller => 'wiki', :action => 'add_attachment',
|
||||
:project_id => @project, :id => @page.title},
|
||||
:multipart => true, :id => "add_attachment_form",
|
||||
:style => "display:none;") do %>
|
||||
<div class="box">
|
||||
<p>
|
||||
<%= render :partial => 'attachments/form' %>
|
||||
</p>
|
||||
</div>
|
||||
<%= submit_tag l(:button_add) %>
|
||||
<%= link_to l(:button_cancel), {}, :onclick => "$('#add_attachment_form').hide(); return false;" %>
|
||||
<% end %>
|
||||
</div>
|
||||
<% end %>
|
||||
|
||||
<% other_formats_links do |f| %>
|
||||
|
@ -63,9 +64,7 @@
|
|||
<%= f.link_to 'HTML', :url => {:id => @page.title, :version => params[:version]} %>
|
||||
<%= f.link_to 'TXT', :url => {:id => @page.title, :version => params[:version]} %>
|
||||
<% end if User.current.allowed_to?(:export_wiki_pages, @project) %>
|
||||
|
||||
<% content_for :sidebar do %>
|
||||
<%= render :partial => 'sidebar' %>
|
||||
<% end %>
|
||||
|
||||
<% html_title @page.pretty_title %>
|
||||
|
|
|
@ -499,7 +499,7 @@ en:
|
|||
permission_view_students: View students
|
||||
permission_export_homeworks: Export homeworks
|
||||
permission_notificationcomment_contestnotifications: Add the notice of contest comments
|
||||
|
||||
permission_upload_attachments: Uploading resource
|
||||
|
||||
project_module_issue_tracking: Issue tracking
|
||||
project_module_time_tracking: Time tracking
|
||||
|
|
|
@ -497,6 +497,7 @@ zh:
|
|||
permission_projects_attachments_download: 项目附件下载
|
||||
permission_course_attachments_download: 课程附件下载
|
||||
permission_contest_attachments_download: 竞赛附件下载
|
||||
permission_upload_attachments: 资源上传
|
||||
|
||||
project_module_issue_tracking: 问题跟踪
|
||||
project_module_time_tracking: 时间跟踪
|
||||
|
@ -2161,3 +2162,10 @@ zh:
|
|||
lable_school_list: 学校列表
|
||||
lable_teacher_evaluation_no: 老师还未进行评价
|
||||
lable_teacher_evaluation: 作业综评
|
||||
lable_course_teacher: 主讲老师
|
||||
lable_course_end: 课程学期已结束
|
||||
lable_file_sharingarea: 资源共享区
|
||||
label_no_contest_news_description: 竞赛描述不能为空
|
||||
label_contest_news_condition: 竞赛描述超过5000个汉字
|
||||
label_no_contest_news_title: 竞赛标题不能为空
|
||||
label_contest_news_title_condition: 竞赛标题超过255个汉字
|
||||
|
|
|
@ -241,6 +241,7 @@ RedmineApp::Application.routes.draw do
|
|||
match "tag_saveEx" , :via => [:get, :post]
|
||||
end
|
||||
member do
|
||||
match 'user_projects_index', :to => 'users#user_projects_index', :via => :get
|
||||
match 'user_projects', :to => 'users#user_projects', :via => :get
|
||||
match 'user_activities', :to => 'users#user_activities', :via => :get, :as => "user_activities"
|
||||
match 'user_newfeedback', :to => 'users#user_newfeedback', :via => :get, :as => "user_newfeedback"
|
||||
|
@ -459,7 +460,8 @@ RedmineApp::Application.routes.draw do
|
|||
|
||||
resources :news, :only => [:index, :show, :edit, :update, :destroy]
|
||||
match '/news/:id/comments', :to => 'comments#create', :via => :post
|
||||
match '/news/:id/comments/:comment_id', :to => 'comments#destroy', :via => :delete
|
||||
#match '/news/:id/comments/:comment_id', :to => 'comments#destroy', :via => :delete
|
||||
delete '/news/:id/comments/:comment_id', :to => 'comments#destroy', as: :delete_news_comments
|
||||
|
||||
resources :versions, :only => [:show, :edit, :update, :destroy] do
|
||||
post 'status_by', :on => :member
|
||||
|
@ -592,10 +594,10 @@ RedmineApp::Application.routes.draw do
|
|||
match 'admin', :to => 'admin#index', :via => :get
|
||||
match 'admin/projects', :via => :get
|
||||
match 'admin/users', :via => :get
|
||||
match 'admin/first_page_made', :via => [:get,:post]
|
||||
match 'admin/course_page_made', :via => [:get,:post]
|
||||
match 'admin/contest_page_made', :via => [:get,:post]
|
||||
match 'admin/web_footer_made', :via => [:get,:post]
|
||||
match 'admin/first_page_made', as: :first_page_made
|
||||
match 'admin/course_page_made', as: :course_page_made
|
||||
match 'admin/contest_page_made', as: :contest_page_made
|
||||
match 'admin/web_footer_made', as: :web_footer_made
|
||||
match 'admin/search', :via => [:get, :post]
|
||||
match 'admin/plugins', :via => :get
|
||||
match 'admin/info', :via => :get
|
||||
|
|
|
@ -242,7 +242,7 @@ tags_min_length:
|
|||
default: 1
|
||||
tags_max_length:
|
||||
format: int
|
||||
default: 30
|
||||
default: 14
|
||||
tags_show_search_results:
|
||||
format: int
|
||||
default: 5
|
||||
|
|
|
@ -142,7 +142,7 @@ module Redmine
|
|||
elsif a && attachment['is_public_checkbox']
|
||||
a.is_public = true
|
||||
end
|
||||
set_attachment_public(a)
|
||||
set_attachment_public(a) if a
|
||||
next unless a
|
||||
a.description = attachment['description'].to_s.strip
|
||||
a.attachtype = @curattachment_type;
|
||||
|
|
|
@ -99,6 +99,7 @@ Redmine::AccessControl.map do |map|
|
|||
map.permission :add_subprojects, {:projects => [:new, :create]}, :require => :member ,:belong_to_project => true
|
||||
#错的权限,先注释掉
|
||||
#map.permission :view_journals_for_messages, {:gantts => [:show, :update]}, :read => true
|
||||
map.permission :upload_attachments,{:attachments => :upload},:require => :loggedin
|
||||
|
||||
map.permission :quote_project, {},:require => :member,:belong_to_contest => true
|
||||
map.permission :is_manager,{},:require => :member ,:belong_to_project => true
|
||||
|
@ -159,13 +160,13 @@ Redmine::AccessControl.map do |map|
|
|||
:queries => :index,
|
||||
:reports => [:issue_report, :issue_report_details]},
|
||||
:read => true
|
||||
map.permission :add_issues, {:issues => [:new, :create, :update_form], :attachments => :upload}
|
||||
map.permission :edit_issues, {:issues => [:edit, :update, :bulk_edit, :bulk_update, :update_form], :journals => [:new], :attachments => :upload}
|
||||
map.permission :add_issues, {:issues => [:new, :create, :update_form]}
|
||||
map.permission :edit_issues, {:issues => [:edit, :update, :bulk_edit, :bulk_update, :update_form], :journals => [:new]}
|
||||
map.permission :manage_issue_relations, {:issue_relations => [:index, :show, :create, :destroy]}
|
||||
map.permission :manage_subtasks, {}
|
||||
map.permission :set_issues_private, {}
|
||||
map.permission :set_own_issues_private, {}, :require => :loggedin
|
||||
map.permission :add_issue_notes, {:issues => [:edit, :update, :update_form], :journals => [:new], :attachments => :upload}
|
||||
map.permission :add_issue_notes, {:issues => [:edit, :update, :update_form], :journals => [:new]}
|
||||
map.permission :edit_issue_notes, {:journals => :edit}, :require => :loggedin
|
||||
map.permission :edit_own_issue_notes, {:journals => :edit}, :require => :loggedin
|
||||
map.permission :view_private_notes, {}, :read => true, :require => :member
|
||||
|
@ -415,9 +416,25 @@ Redmine::MenuManager.map :course_menu do |menu|
|
|||
end
|
||||
Redmine::MenuManager.map :user_menu do |menu|
|
||||
menu.push :activity, {:controller => 'users', :action => 'show', :host => Setting.user_domain }
|
||||
menu.push :user_course, {:controller => 'users', :action => 'user_courses'},:if => Proc.new {|c| FirstPage.find_by_page_type('project').show_course != 2}
|
||||
menu.push :user_course, {:controller => 'users', :action => 'user_courses'},
|
||||
:if => Proc.new {|u| if User.current == u || User.current.admin?
|
||||
membership = u.coursememberships.all
|
||||
else
|
||||
membership = u.coursememberships.all(:conditions => Course.visible_condition(User.current))
|
||||
end
|
||||
FirstPage.find_by_page_type('project').show_course != 2 && membership && membership.count > 0
|
||||
}
|
||||
#menu.push :user_homework, {:controller => 'users', :action => 'user_homeworks'} by huang
|
||||
menu.push :user_project, {:controller => 'users', :action => 'user_projects', :host => Setting.project_domain}
|
||||
menu.push :user_project, {:controller => 'users', :action => 'user_projects_index', :host => Setting.project_domain},
|
||||
:if => Proc.new {|u| if User.current.admin?
|
||||
memberships = u.memberships.all(conditions: "projects.project_type = #{Project::ProjectType_project}").first
|
||||
else
|
||||
cond = Project.visible_condition(User.current) + " AND projects.project_type <> 1"
|
||||
memberships = u.memberships.all(:conditions => cond).first
|
||||
end
|
||||
watch_projects = Project.joins(:watchers).where("project_type <>? and watchable_type = ? and `watchers`.user_id = ?", '1','Project', u.id).first
|
||||
memberships || watch_projects
|
||||
}
|
||||
# menu.push :requirement_focus, {:controller => 'users', :action => 'watch_bids'} by huang
|
||||
menu.push :user_newfeedback, {:controller => 'users', :action => 'user_newfeedback', :host => Setting.user_domain}
|
||||
|
||||
|
|
|
@ -216,7 +216,7 @@ module Redmine
|
|||
# * Checking the url target (project only)
|
||||
# * Checking the conditions of the item
|
||||
def allowed_node?(node, user, project)
|
||||
if project && user && !user.allowed_to?(node.url, project)
|
||||
if project && project.is_a?(Project) && user && !user.allowed_to?(node.url, project)
|
||||
return false
|
||||
end
|
||||
if node.condition && !node.condition.call(project)
|
||||
|
|
|
@ -69,6 +69,10 @@ function ajaxUpload(file, attachmentId, fileSpan, inputEl) {
|
|||
})
|
||||
.fail(function(result) {
|
||||
progressSpan.text(result.statusText);
|
||||
if($("#network_issue"))
|
||||
{
|
||||
$("#network_issue").show();
|
||||
}
|
||||
}).always(function() {
|
||||
ajaxUpload.uploading--;
|
||||
fileSpan.removeClass('ajax-loading');
|
||||
|
|
|
@ -1,160 +1,160 @@
|
|||
.overlay_mac_os_x_dialog {
|
||||
background-color: #FF7224;
|
||||
filter:alpha(opacity=60);
|
||||
-moz-opacity: 0.6;
|
||||
opacity: 0.6;
|
||||
}
|
||||
|
||||
.mac_os_x_dialog_nw {
|
||||
background: transparent url(mac_os_x_dialog/L.png) repeat-y top left;
|
||||
width:16px;
|
||||
height:16px;
|
||||
}
|
||||
|
||||
.mac_os_x_dialog_n {
|
||||
background: transparent url(mac_os_x_dialog/bg.gif) repeat 0 0;
|
||||
height:18px;
|
||||
}
|
||||
|
||||
.mac_os_x_dialog_ne {
|
||||
background: transparent url(mac_os_x_dialog/R.png) repeat-y top left;
|
||||
width:16px;
|
||||
height:16px;
|
||||
}
|
||||
|
||||
.mac_os_x_dialog_w {
|
||||
background: transparent url(mac_os_x_dialog/L.png) repeat-y top left;
|
||||
width:16px;
|
||||
}
|
||||
|
||||
.mac_os_x_dialog_e {
|
||||
background: transparent url(mac_os_x_dialog/R.png) repeat-y top right;
|
||||
width:16px;
|
||||
}
|
||||
|
||||
.mac_os_x_dialog_sw {
|
||||
background: transparent url(mac_os_x_dialog/BL.png) no-repeat 0 0;
|
||||
width:31px;
|
||||
height:40px;
|
||||
}
|
||||
|
||||
.mac_os_x_dialog_s {
|
||||
background: transparent url(mac_os_x_dialog/B.png) repeat-x 0 0;
|
||||
height:40px;
|
||||
}
|
||||
|
||||
.mac_os_x_dialog_se, .mac_os_x_dialog_sizer {
|
||||
background: transparent url(mac_os_x_dialog/BR.png) no-repeat 0 0;
|
||||
width:31px;
|
||||
height:40px;
|
||||
}
|
||||
|
||||
.mac_os_x_dialog_sizer {
|
||||
cursor:se-resize;
|
||||
}
|
||||
|
||||
.mac_os_x_dialog_close {
|
||||
width: 19px;
|
||||
height: 19px;
|
||||
background: transparent url(mac_os_x_dialog/close.gif) no-repeat 0 0;
|
||||
position:absolute;
|
||||
top:12px;
|
||||
left:25px;
|
||||
cursor:pointer;
|
||||
z-index:1000;
|
||||
}
|
||||
|
||||
.mac_os_x_dialog_minimize {
|
||||
width: 19px;
|
||||
height: 19px;
|
||||
background: transparent url(mac_os_x_dialog/minimize.gif) no-repeat 0 0;
|
||||
position:absolute;
|
||||
top:12px;
|
||||
left:45px;
|
||||
cursor:pointer;
|
||||
z-index:1000;
|
||||
}
|
||||
|
||||
.mac_os_x_dialog_maximize {
|
||||
width: 19px;
|
||||
height: 19px;
|
||||
background: transparent url(mac_os_x_dialog/maximize.gif) no-repeat 0 0;
|
||||
position:absolute;
|
||||
top:12px;
|
||||
left:65px;
|
||||
cursor:pointer;
|
||||
z-index:1000;
|
||||
}
|
||||
|
||||
.mac_os_x_dialog_title {
|
||||
float:left;
|
||||
height:14px;
|
||||
font-family: Tahoma, Arial, sans-serif;
|
||||
font-size:12px;
|
||||
text-align:center;
|
||||
margin-top:6px;
|
||||
width:100%;
|
||||
color:#000;
|
||||
}
|
||||
|
||||
.mac_os_x_dialog_content {
|
||||
overflow:auto;
|
||||
color: #222;
|
||||
font-family: Tahoma, Arial, sans-serif;
|
||||
font-size: 10px;
|
||||
background: transparent url(mac_os_x_dialog/bg.gif) repeat 0 0;
|
||||
}
|
||||
|
||||
.mac_os_x_dialog_buttons {
|
||||
text-align: center;
|
||||
}
|
||||
/* FOR IE */
|
||||
* html .mac_os_x_dialog_nw {
|
||||
background-color: transparent;
|
||||
background-image: none;
|
||||
filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src="../themes/mac_os_x_dialog/L.png", sizingMethod="scale");
|
||||
}
|
||||
|
||||
|
||||
* html .mac_os_x_dialog_ne {
|
||||
background-color: transparent;
|
||||
background-image: none;
|
||||
filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src="../themes/mac_os_x_dialog/R.png", sizingMethod="scale");
|
||||
}
|
||||
|
||||
* html .mac_os_x_dialog_w {
|
||||
background-color: transparent;
|
||||
background-image: none;
|
||||
filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src="../themes/mac_os_x_dialog/L.png", sizingMethod="scale");
|
||||
}
|
||||
|
||||
* html .mac_os_x_dialog_e {
|
||||
background-color: transparent;
|
||||
background-image: none;
|
||||
filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src="../themes/mac_os_x_dialog/R.png", sizingMethod="scale");
|
||||
}
|
||||
|
||||
* html .mac_os_x_dialog_sw {
|
||||
background-color: transparent;
|
||||
background-image: none;
|
||||
filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src="../themes/mac_os_x_dialog/BL.png", sizingMethod="crop");
|
||||
}
|
||||
|
||||
* html .mac_os_x_dialog_s {
|
||||
background-color: transparent;
|
||||
background-image: none;
|
||||
filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src="../themes/mac_os_x_dialog/B.png", sizingMethod="scale");
|
||||
}
|
||||
|
||||
* html .mac_os_x_dialog_se {
|
||||
background-color: transparent;
|
||||
background-image: none;
|
||||
filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src="../themes/mac_os_x_dialog/BR.png", sizingMethod="crop");
|
||||
}
|
||||
|
||||
* html .mac_os_x_dialog_sizer {
|
||||
background-color: transparent;
|
||||
background-image: none;
|
||||
filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src="../themes/mac_os_x_dialog/BR.png", sizingMethod="crop");
|
||||
}
|
||||
|
||||
.overlay_mac_os_x_dialog {
|
||||
background-color: #FF7224;
|
||||
filter:alpha(opacity=60);
|
||||
-moz-opacity: 0.6;
|
||||
opacity: 0.6;
|
||||
}
|
||||
|
||||
.mac_os_x_dialog_nw {
|
||||
background: transparent url(mac_os_x_dialog/L.png) repeat-y top left;
|
||||
width:16px;
|
||||
height:16px;
|
||||
}
|
||||
|
||||
.mac_os_x_dialog_n {
|
||||
background: transparent url(mac_os_x_dialog/bg.gif) repeat 0 0;
|
||||
height:18px;
|
||||
}
|
||||
|
||||
.mac_os_x_dialog_ne {
|
||||
background: transparent url(mac_os_x_dialog/R.png) repeat-y top left;
|
||||
width:16px;
|
||||
height:16px;
|
||||
}
|
||||
|
||||
.mac_os_x_dialog_w {
|
||||
background: transparent url(mac_os_x_dialog/L.png) repeat-y top left;
|
||||
width:16px;
|
||||
}
|
||||
|
||||
.mac_os_x_dialog_e {
|
||||
background: transparent url(mac_os_x_dialog/R.png) repeat-y top right;
|
||||
width:16px;
|
||||
}
|
||||
|
||||
.mac_os_x_dialog_sw {
|
||||
background: transparent url(mac_os_x_dialog/BL.png) no-repeat 0 0;
|
||||
width:31px;
|
||||
height:40px;
|
||||
}
|
||||
|
||||
.mac_os_x_dialog_s {
|
||||
background: transparent url(mac_os_x_dialog/B.png) repeat-x 0 0;
|
||||
height:40px;
|
||||
}
|
||||
|
||||
.mac_os_x_dialog_se, .mac_os_x_dialog_sizer {
|
||||
background: transparent url(mac_os_x_dialog/BR.png) no-repeat 0 0;
|
||||
width:31px;
|
||||
height:40px;
|
||||
}
|
||||
|
||||
.mac_os_x_dialog_sizer {
|
||||
cursor:se-resize;
|
||||
}
|
||||
|
||||
.mac_os_x_dialog_close {
|
||||
width: 19px;
|
||||
height: 19px;
|
||||
background: transparent url(mac_os_x_dialog/close.gif) no-repeat 0 0;
|
||||
position:absolute;
|
||||
top:12px;
|
||||
left:25px;
|
||||
cursor:pointer;
|
||||
z-index:1000;
|
||||
}
|
||||
|
||||
.mac_os_x_dialog_minimize {
|
||||
width: 19px;
|
||||
height: 19px;
|
||||
background: transparent url(mac_os_x_dialog/minimize.gif) no-repeat 0 0;
|
||||
position:absolute;
|
||||
top:12px;
|
||||
left:45px;
|
||||
cursor:pointer;
|
||||
z-index:1000;
|
||||
}
|
||||
|
||||
.mac_os_x_dialog_maximize {
|
||||
width: 19px;
|
||||
height: 19px;
|
||||
background: transparent url(mac_os_x_dialog/maximize.gif) no-repeat 0 0;
|
||||
position:absolute;
|
||||
top:12px;
|
||||
left:65px;
|
||||
cursor:pointer;
|
||||
z-index:1000;
|
||||
}
|
||||
|
||||
.mac_os_x_dialog_title {
|
||||
float:left;
|
||||
height:14px;
|
||||
font-family: Tahoma, Arial, sans-serif;
|
||||
font-size:12px;
|
||||
text-align:center;
|
||||
margin-top:6px;
|
||||
width:100%;
|
||||
color:#000;
|
||||
}
|
||||
|
||||
.mac_os_x_dialog_content {
|
||||
overflow:auto;
|
||||
color: #222;
|
||||
font-family: Tahoma, Arial, sans-serif;
|
||||
font-size: 10px;
|
||||
background: transparent url(mac_os_x_dialog/bg.gif) repeat 0 0;
|
||||
}
|
||||
|
||||
.mac_os_x_dialog_buttons {
|
||||
text-align: center;
|
||||
}
|
||||
/* FOR IE */
|
||||
* html .mac_os_x_dialog_nw {
|
||||
background-color: transparent;
|
||||
background-image: none;
|
||||
filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src="../themes/mac_os_x_dialog/L.png", sizingMethod="scale");
|
||||
}
|
||||
|
||||
|
||||
* html .mac_os_x_dialog_ne {
|
||||
background-color: transparent;
|
||||
background-image: none;
|
||||
filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src="../themes/mac_os_x_dialog/R.png", sizingMethod="scale");
|
||||
}
|
||||
|
||||
* html .mac_os_x_dialog_w {
|
||||
background-color: transparent;
|
||||
background-image: none;
|
||||
filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src="../themes/mac_os_x_dialog/L.png", sizingMethod="scale");
|
||||
}
|
||||
|
||||
* html .mac_os_x_dialog_e {
|
||||
background-color: transparent;
|
||||
background-image: none;
|
||||
filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src="../themes/mac_os_x_dialog/R.png", sizingMethod="scale");
|
||||
}
|
||||
|
||||
* html .mac_os_x_dialog_sw {
|
||||
background-color: transparent;
|
||||
background-image: none;
|
||||
filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src="../themes/mac_os_x_dialog/BL.png", sizingMethod="crop");
|
||||
}
|
||||
|
||||
* html .mac_os_x_dialog_s {
|
||||
background-color: transparent;
|
||||
background-image: none;
|
||||
filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src="../themes/mac_os_x_dialog/B.png", sizingMethod="scale");
|
||||
}
|
||||
|
||||
* html .mac_os_x_dialog_se {
|
||||
background-color: transparent;
|
||||
background-image: none;
|
||||
filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src="../themes/mac_os_x_dialog/BR.png", sizingMethod="crop");
|
||||
}
|
||||
|
||||
* html .mac_os_x_dialog_sizer {
|
||||
background-color: transparent;
|
||||
background-image: none;
|
||||
filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src="../themes/mac_os_x_dialog/BR.png", sizingMethod="crop");
|
||||
}
|
||||
|
||||
|
|
|
@ -1,164 +1,164 @@
|
|||
.overlay_nuncio img { border: none; }
|
||||
|
||||
.overlay_nuncio {
|
||||
background-color: #666666;
|
||||
}
|
||||
|
||||
.nuncio_nw {
|
||||
width: 12px;
|
||||
height: 28px;
|
||||
background: url(nuncio/top_left.png) no-repeat;
|
||||
}
|
||||
|
||||
.nuncio_n {
|
||||
background: url(nuncio/top_mid.png) repeat-x;
|
||||
height: 28px;
|
||||
}
|
||||
|
||||
.nuncio_ne {
|
||||
width: 21px;
|
||||
height: 28px;
|
||||
background: url(nuncio/top_right.png) no-repeat;
|
||||
}
|
||||
|
||||
.nuncio_e {
|
||||
width: 21px;
|
||||
background: url(nuncio/center_right.png) repeat-y top right;
|
||||
}
|
||||
|
||||
.nuncio_w {
|
||||
width: 12px;
|
||||
background: url(nuncio/center_left.png) repeat-y top left;
|
||||
}
|
||||
|
||||
.nuncio_sw {
|
||||
width: 12px;
|
||||
height: 18px;
|
||||
background: url(nuncio/bottom_left.png) no-repeat;
|
||||
}
|
||||
|
||||
.nuncio_s {
|
||||
background: url(nuncio/bottom_mid.png) repeat-x 0 0;
|
||||
height: 18px;
|
||||
}
|
||||
|
||||
.nuncio_se, .nuncio_sizer {
|
||||
width: 21px;
|
||||
height: 18px;
|
||||
background: url(nuncio/bottom_right.png) no-repeat;
|
||||
}
|
||||
|
||||
.nuncio_close {
|
||||
width: 14px;
|
||||
height: 14px;
|
||||
background: url(nuncio/close.png) no-repeat;
|
||||
position:absolute;
|
||||
top:10px;
|
||||
right:22px;
|
||||
cursor:pointer;
|
||||
z-index:2000;
|
||||
}
|
||||
|
||||
.nuncio_minimize {
|
||||
width: 14px;
|
||||
height: 15px;
|
||||
background: url(nuncio/minimize.png) no-repeat;
|
||||
position:absolute;
|
||||
top:10px;
|
||||
right:40px;
|
||||
cursor:pointer;
|
||||
z-index:2000;
|
||||
}
|
||||
|
||||
.nuncio_title {
|
||||
float:left;
|
||||
font-size:11px;
|
||||
font-weight: bold;
|
||||
font-style: italic;
|
||||
color: #fff;
|
||||
width: 100%
|
||||
}
|
||||
|
||||
.nuncio_content {
|
||||
background: url(nuncio/overlay.png) repeat;
|
||||
overflow:auto;
|
||||
color: #ddd;
|
||||
font-family: Tahoma, Arial, "sans-serif";
|
||||
font-size: 10px;
|
||||
}
|
||||
|
||||
.nuncio_sizer {
|
||||
cursor:se-resize;
|
||||
}
|
||||
|
||||
|
||||
.top_draggable, .bottom_draggable {
|
||||
cursor:move
|
||||
}
|
||||
/* FOR IE */
|
||||
* html .nuncio_nw {
|
||||
background-color: transparent;
|
||||
background-image: none;
|
||||
filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src="../themes/nuncio/top_left.png", sizingMethod="crop");
|
||||
}
|
||||
|
||||
* html .nuncio_n {
|
||||
background-color: transparent;
|
||||
background-image: none;
|
||||
filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src="../themes/nuncio/top_mid.png", sizingMethod="scale");
|
||||
}
|
||||
|
||||
* html .nuncio_ne {
|
||||
background-color: transparent;
|
||||
background-image: none;
|
||||
filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src="../themes/nuncio/top_right.png", sizingMethod="crop");
|
||||
}
|
||||
|
||||
* html .nuncio_w {
|
||||
background-color: transparent;
|
||||
background-image: none;
|
||||
filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src="../themes/nuncio/center_left.png", sizingMethod="scale");
|
||||
}
|
||||
|
||||
* html .nuncio_e {
|
||||
background-color: transparent;
|
||||
background-image: none;
|
||||
filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src="../themes/nuncio/center_right.png", sizingMethod="scale");
|
||||
}
|
||||
|
||||
* html .nuncio_sw {
|
||||
background-color: transparent;
|
||||
background-image: none;
|
||||
filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src="../themes/nuncio/bottom_left.png", sizingMethod="crop");
|
||||
}
|
||||
|
||||
* html .nuncio_s {
|
||||
background-color: transparent;
|
||||
background-image: none;
|
||||
filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src="../themes/nuncio/bottom_mid.png", sizingMethod="scale");
|
||||
}
|
||||
|
||||
* html .nuncio_se {
|
||||
background-color: transparent;
|
||||
background-image: none;
|
||||
filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src="../themes/nuncio/bottom_right.png", sizingMethod="crop");
|
||||
}
|
||||
|
||||
* html .nuncio_sizer {
|
||||
background-color: transparent;
|
||||
background-image: none;
|
||||
filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src="../themes/nuncio/bottom_right.png", sizingMethod="crop");
|
||||
}
|
||||
|
||||
* html .nuncio_close {
|
||||
background-color: transparent;
|
||||
background-image: none;
|
||||
filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src="../themes/nuncio/close.png", sizingMethod="crop");
|
||||
}
|
||||
|
||||
* html .nuncio_minimize {
|
||||
background-color: transparent;
|
||||
background-image: none;
|
||||
filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src="../themes/nuncio/minimize.png", sizingMethod="crop");
|
||||
}
|
||||
|
||||
.overlay_nuncio img { border: none; }
|
||||
|
||||
.overlay_nuncio {
|
||||
background-color: #666666;
|
||||
}
|
||||
|
||||
.nuncio_nw {
|
||||
width: 12px;
|
||||
height: 28px;
|
||||
background: url(nuncio/top_left.png) no-repeat;
|
||||
}
|
||||
|
||||
.nuncio_n {
|
||||
background: url(nuncio/top_mid.png) repeat-x;
|
||||
height: 28px;
|
||||
}
|
||||
|
||||
.nuncio_ne {
|
||||
width: 21px;
|
||||
height: 28px;
|
||||
background: url(nuncio/top_right.png) no-repeat;
|
||||
}
|
||||
|
||||
.nuncio_e {
|
||||
width: 21px;
|
||||
background: url(nuncio/center_right.png) repeat-y top right;
|
||||
}
|
||||
|
||||
.nuncio_w {
|
||||
width: 12px;
|
||||
background: url(nuncio/center_left.png) repeat-y top left;
|
||||
}
|
||||
|
||||
.nuncio_sw {
|
||||
width: 12px;
|
||||
height: 18px;
|
||||
background: url(nuncio/bottom_left.png) no-repeat;
|
||||
}
|
||||
|
||||
.nuncio_s {
|
||||
background: url(nuncio/bottom_mid.png) repeat-x 0 0;
|
||||
height: 18px;
|
||||
}
|
||||
|
||||
.nuncio_se, .nuncio_sizer {
|
||||
width: 21px;
|
||||
height: 18px;
|
||||
background: url(nuncio/bottom_right.png) no-repeat;
|
||||
}
|
||||
|
||||
.nuncio_close {
|
||||
width: 14px;
|
||||
height: 14px;
|
||||
background: url(nuncio/close.png) no-repeat;
|
||||
position:absolute;
|
||||
top:10px;
|
||||
right:22px;
|
||||
cursor:pointer;
|
||||
z-index:2000;
|
||||
}
|
||||
|
||||
.nuncio_minimize {
|
||||
width: 14px;
|
||||
height: 15px;
|
||||
background: url(nuncio/minimize.png) no-repeat;
|
||||
position:absolute;
|
||||
top:10px;
|
||||
right:40px;
|
||||
cursor:pointer;
|
||||
z-index:2000;
|
||||
}
|
||||
|
||||
.nuncio_title {
|
||||
float:left;
|
||||
font-size:11px;
|
||||
font-weight: bold;
|
||||
font-style: italic;
|
||||
color: #fff;
|
||||
width: 100%
|
||||
}
|
||||
|
||||
.nuncio_content {
|
||||
background: url(nuncio/overlay.png) repeat;
|
||||
overflow:auto;
|
||||
color: #ddd;
|
||||
font-family: Tahoma, Arial, "sans-serif";
|
||||
font-size: 10px;
|
||||
}
|
||||
|
||||
.nuncio_sizer {
|
||||
cursor:se-resize;
|
||||
}
|
||||
|
||||
|
||||
.top_draggable, .bottom_draggable {
|
||||
cursor:move
|
||||
}
|
||||
/* FOR IE */
|
||||
* html .nuncio_nw {
|
||||
background-color: transparent;
|
||||
background-image: none;
|
||||
filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src="../themes/nuncio/top_left.png", sizingMethod="crop");
|
||||
}
|
||||
|
||||
* html .nuncio_n {
|
||||
background-color: transparent;
|
||||
background-image: none;
|
||||
filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src="../themes/nuncio/top_mid.png", sizingMethod="scale");
|
||||
}
|
||||
|
||||
* html .nuncio_ne {
|
||||
background-color: transparent;
|
||||
background-image: none;
|
||||
filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src="../themes/nuncio/top_right.png", sizingMethod="crop");
|
||||
}
|
||||
|
||||
* html .nuncio_w {
|
||||
background-color: transparent;
|
||||
background-image: none;
|
||||
filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src="../themes/nuncio/center_left.png", sizingMethod="scale");
|
||||
}
|
||||
|
||||
* html .nuncio_e {
|
||||
background-color: transparent;
|
||||
background-image: none;
|
||||
filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src="../themes/nuncio/center_right.png", sizingMethod="scale");
|
||||
}
|
||||
|
||||
* html .nuncio_sw {
|
||||
background-color: transparent;
|
||||
background-image: none;
|
||||
filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src="../themes/nuncio/bottom_left.png", sizingMethod="crop");
|
||||
}
|
||||
|
||||
* html .nuncio_s {
|
||||
background-color: transparent;
|
||||
background-image: none;
|
||||
filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src="../themes/nuncio/bottom_mid.png", sizingMethod="scale");
|
||||
}
|
||||
|
||||
* html .nuncio_se {
|
||||
background-color: transparent;
|
||||
background-image: none;
|
||||
filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src="../themes/nuncio/bottom_right.png", sizingMethod="crop");
|
||||
}
|
||||
|
||||
* html .nuncio_sizer {
|
||||
background-color: transparent;
|
||||
background-image: none;
|
||||
filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src="../themes/nuncio/bottom_right.png", sizingMethod="crop");
|
||||
}
|
||||
|
||||
* html .nuncio_close {
|
||||
background-color: transparent;
|
||||
background-image: none;
|
||||
filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src="../themes/nuncio/close.png", sizingMethod="crop");
|
||||
}
|
||||
|
||||
* html .nuncio_minimize {
|
||||
background-color: transparent;
|
||||
background-image: none;
|
||||
filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src="../themes/nuncio/minimize.png", sizingMethod="crop");
|
||||
}
|
||||
|
||||
|
|
|
@ -1,108 +1,108 @@
|
|||
.overlay_spread {
|
||||
background-color: #85BBEF;
|
||||
filter:alpha(opacity=60);
|
||||
-moz-opacity: 0.6;
|
||||
opacity: 0.6;
|
||||
}
|
||||
|
||||
.spread_nw {
|
||||
background: transparent url(spread/left-top.gif) no-repeat 0 0;
|
||||
width:10px;
|
||||
height:25px;
|
||||
}
|
||||
|
||||
.spread_n {
|
||||
background: transparent url(spread/top-middle.gif) repeat-x 0 0;
|
||||
height:25px;
|
||||
}
|
||||
|
||||
.spread_ne {
|
||||
background: transparent url(spread/right-top.gif) no-repeat 0 0;
|
||||
width:10px;
|
||||
height:25px;
|
||||
}
|
||||
|
||||
.spread_w {
|
||||
background: transparent url(spread/frame-left.gif) repeat-y top left;
|
||||
width:7px;
|
||||
}
|
||||
|
||||
.spread_e {
|
||||
background: transparent url(spread/frame-right.gif) repeat-y top right;
|
||||
width:7px;
|
||||
}
|
||||
|
||||
.spread_sw {
|
||||
background: transparent url(spread/bottom-left-c.gif) no-repeat 0 0;
|
||||
width:7px;
|
||||
height:7px;
|
||||
}
|
||||
|
||||
.spread_s {
|
||||
background: transparent url(spread/bottom-middle.gif) repeat-x 0 0;
|
||||
height:7px;
|
||||
}
|
||||
|
||||
.spread_se, .spread_sizer {
|
||||
background: transparent url(spread/bottom-right-c.gif) no-repeat 0 0;
|
||||
width:7px;
|
||||
height:7px;
|
||||
}
|
||||
|
||||
.spread_sizer {
|
||||
cursor:se-resize;
|
||||
}
|
||||
|
||||
.spread_close {
|
||||
width: 23px;
|
||||
height: 23px;
|
||||
background: transparent url(spread/button-close-focus.gif) no-repeat 0 0;
|
||||
position:absolute;
|
||||
top:0px;
|
||||
right:11px;
|
||||
cursor:pointer;
|
||||
z-index:1000;
|
||||
}
|
||||
|
||||
.spread_minimize {
|
||||
width: 23px;
|
||||
height: 23px;
|
||||
background: transparent url(spread/button-min-focus.gif) no-repeat 0 0;
|
||||
position:absolute;
|
||||
top:0px;
|
||||
right:55px;
|
||||
cursor:pointer;
|
||||
z-index:1000;
|
||||
}
|
||||
|
||||
.spread_maximize {
|
||||
width: 23px;
|
||||
height: 23px;
|
||||
background: transparent url(spread/button-max-focus.gif) no-repeat 0 0;
|
||||
position:absolute;
|
||||
top:0px;
|
||||
right:33px;
|
||||
cursor:pointer;
|
||||
z-index:1000;
|
||||
}
|
||||
|
||||
.spread_title {
|
||||
float:left;
|
||||
height:14px;
|
||||
font-family: Tahoma, Arial, sans-serif;
|
||||
font-size:14px;
|
||||
font-weight:bold;
|
||||
text-align:left;
|
||||
margin-top:2px;
|
||||
width:100%;
|
||||
color:#E47211;
|
||||
}
|
||||
|
||||
.spread_content {
|
||||
overflow:auto;
|
||||
color: #222;
|
||||
font-family: Tahoma, Arial, sans-serif;
|
||||
font-size: 10px;
|
||||
background:#A9EA00;
|
||||
}
|
||||
|
||||
.overlay_spread {
|
||||
background-color: #85BBEF;
|
||||
filter:alpha(opacity=60);
|
||||
-moz-opacity: 0.6;
|
||||
opacity: 0.6;
|
||||
}
|
||||
|
||||
.spread_nw {
|
||||
background: transparent url(spread/left-top.gif) no-repeat 0 0;
|
||||
width:10px;
|
||||
height:25px;
|
||||
}
|
||||
|
||||
.spread_n {
|
||||
background: transparent url(spread/top-middle.gif) repeat-x 0 0;
|
||||
height:25px;
|
||||
}
|
||||
|
||||
.spread_ne {
|
||||
background: transparent url(spread/right-top.gif) no-repeat 0 0;
|
||||
width:10px;
|
||||
height:25px;
|
||||
}
|
||||
|
||||
.spread_w {
|
||||
background: transparent url(spread/frame-left.gif) repeat-y top left;
|
||||
width:7px;
|
||||
}
|
||||
|
||||
.spread_e {
|
||||
background: transparent url(spread/frame-right.gif) repeat-y top right;
|
||||
width:7px;
|
||||
}
|
||||
|
||||
.spread_sw {
|
||||
background: transparent url(spread/bottom-left-c.gif) no-repeat 0 0;
|
||||
width:7px;
|
||||
height:7px;
|
||||
}
|
||||
|
||||
.spread_s {
|
||||
background: transparent url(spread/bottom-middle.gif) repeat-x 0 0;
|
||||
height:7px;
|
||||
}
|
||||
|
||||
.spread_se, .spread_sizer {
|
||||
background: transparent url(spread/bottom-right-c.gif) no-repeat 0 0;
|
||||
width:7px;
|
||||
height:7px;
|
||||
}
|
||||
|
||||
.spread_sizer {
|
||||
cursor:se-resize;
|
||||
}
|
||||
|
||||
.spread_close {
|
||||
width: 23px;
|
||||
height: 23px;
|
||||
background: transparent url(spread/button-close-focus.gif) no-repeat 0 0;
|
||||
position:absolute;
|
||||
top:0px;
|
||||
right:11px;
|
||||
cursor:pointer;
|
||||
z-index:1000;
|
||||
}
|
||||
|
||||
.spread_minimize {
|
||||
width: 23px;
|
||||
height: 23px;
|
||||
background: transparent url(spread/button-min-focus.gif) no-repeat 0 0;
|
||||
position:absolute;
|
||||
top:0px;
|
||||
right:55px;
|
||||
cursor:pointer;
|
||||
z-index:1000;
|
||||
}
|
||||
|
||||
.spread_maximize {
|
||||
width: 23px;
|
||||
height: 23px;
|
||||
background: transparent url(spread/button-max-focus.gif) no-repeat 0 0;
|
||||
position:absolute;
|
||||
top:0px;
|
||||
right:33px;
|
||||
cursor:pointer;
|
||||
z-index:1000;
|
||||
}
|
||||
|
||||
.spread_title {
|
||||
float:left;
|
||||
height:14px;
|
||||
font-family: Tahoma, Arial, sans-serif;
|
||||
font-size:14px;
|
||||
font-weight:bold;
|
||||
text-align:left;
|
||||
margin-top:2px;
|
||||
width:100%;
|
||||
color:#E47211;
|
||||
}
|
||||
|
||||
.spread_content {
|
||||
overflow:auto;
|
||||
color: #222;
|
||||
font-family: Tahoma, Arial, sans-serif;
|
||||
font-size: 10px;
|
||||
background:#A9EA00;
|
||||
}
|
||||
|
||||
|
|
|
@ -1820,6 +1820,17 @@ html>body .tabular p {overflow:hidden;}
|
|||
font-size: 12px;
|
||||
}
|
||||
|
||||
.role label{
|
||||
font-weight: bold;
|
||||
float: left;
|
||||
text-align: right;
|
||||
/* width of left column */
|
||||
margin-left: -60px;
|
||||
/* width of labels. Should be smaller than left column to create some right margin */
|
||||
width: 175px;
|
||||
font-size: 12px;
|
||||
}
|
||||
|
||||
.tabular label.floating{
|
||||
font-weight: normal;
|
||||
margin-left: 0px;
|
||||
|
|
|
@ -467,6 +467,12 @@ a.attachments_list_color {
|
|||
font-size: 10pt;
|
||||
}
|
||||
|
||||
.new-watcher{
|
||||
-webkit-border-radius: 5px;
|
||||
border-radius: 5px;
|
||||
box-shadow: 0px 0px 8px #194a81;
|
||||
}
|
||||
|
||||
/************************** 贴吧动态 结束 ****************************/
|
||||
/************************** 学校课程 开始 ****************************/
|
||||
.course{
|
||||
|
|
Loading…
Reference in New Issue