Merge branch 'szzh' into guange_dev
This commit is contained in:
commit
78039a726e
|
@ -40,6 +40,17 @@ module Mobile
|
||||||
{status: 0}
|
{status: 0}
|
||||||
end
|
end
|
||||||
|
|
||||||
|
desc "忘记密码"
|
||||||
|
params do
|
||||||
|
requires :mail,type: String
|
||||||
|
end
|
||||||
|
post 'lost_password' do
|
||||||
|
us = UsersService.new
|
||||||
|
message = us.lost_password params
|
||||||
|
present :message, message
|
||||||
|
present :status, 0
|
||||||
|
end
|
||||||
|
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
|
@ -3,16 +3,23 @@
|
||||||
module Mobile
|
module Mobile
|
||||||
module Apis
|
module Apis
|
||||||
class Upgrade < Grape::API
|
class Upgrade < Grape::API
|
||||||
|
include ApplicationHelper
|
||||||
resource :upgrade do
|
resource :upgrade do
|
||||||
desc "get update info"
|
desc "get update info"
|
||||||
params do
|
params do
|
||||||
requires :platform, type: String, desc: '平台名,android, ios'
|
requires :platform, type: String, desc: '平台名,android, ios'
|
||||||
end
|
end
|
||||||
get do
|
get do
|
||||||
|
@current_version = ::PhoneAppVersion.reorder('created_at desc').first
|
||||||
|
attachment = @current_version.attachments.first
|
||||||
|
if attachment.nil?
|
||||||
|
raise '未发现客户端!'
|
||||||
|
end
|
||||||
|
url = Setting.host_name + "/attachments/download/" + attachment.id.to_s + "/" + attachment.filename
|
||||||
{
|
{
|
||||||
version: '2',
|
version: @current_version.version,
|
||||||
url: 'http://u06.shellinfo.cn/trustie/Trustie_Beta1.0.0_201412310917.apk',
|
url: url,
|
||||||
desc: '更新了什么功能'
|
desc: @current_version.description
|
||||||
}
|
}
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
|
@ -1,9 +1,15 @@
|
||||||
module Mobile
|
module Mobile
|
||||||
module Entities
|
module Entities
|
||||||
class CourseDynamic < Grape::Entity
|
class CourseDynamic < Grape::Entity
|
||||||
|
include Redmine::I18n
|
||||||
def self.course_dynamic_expose(field)
|
def self.course_dynamic_expose(field)
|
||||||
expose field do |c,opt|
|
expose field do |c,opt|
|
||||||
c[field] if (c.is_a?(Hash) && c.key?(field))
|
if field == :update_time
|
||||||
|
(format_time(c[field]) if (c.is_a?(Hash) && c.key?(field)))
|
||||||
|
else
|
||||||
|
c[field] if (c.is_a?(Hash) && c.key?(field))
|
||||||
|
end
|
||||||
|
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
course_dynamic_expose :type
|
course_dynamic_expose :type
|
||||||
|
@ -11,6 +17,8 @@ module Mobile
|
||||||
course_dynamic_expose :course_name
|
course_dynamic_expose :course_name
|
||||||
course_dynamic_expose :course_id
|
course_dynamic_expose :course_id
|
||||||
course_dynamic_expose :course_img_url
|
course_dynamic_expose :course_img_url
|
||||||
|
course_dynamic_expose :message
|
||||||
|
course_dynamic_expose :update_time
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
|
@ -337,6 +337,40 @@ class AdminController < ApplicationController
|
||||||
end
|
end
|
||||||
|
|
||||||
def create_version
|
def create_version
|
||||||
|
@versions = PhoneAppVersion.reorder('created_at desc')
|
||||||
|
@new_version = PhoneAppVersion.new
|
||||||
|
@new_version.version = params[:version]
|
||||||
|
@new_version.description = params[:description]
|
||||||
|
if params[:attachments][:dummy][:file].nil? || params[:attachments][:dummy][:file] == ""
|
||||||
|
respond_to do |format|
|
||||||
|
flash.now[:error] = "#{l :label_version_create_fail}: #{l(:label_client_need)}"
|
||||||
|
#flash.now[:error] = "#{l :label_first_page_create_fail}: #{@course_page.errors.full_messages[0]}"
|
||||||
|
format.html {
|
||||||
|
render :action => 'mobile_version'
|
||||||
|
}
|
||||||
|
format.api { render_validation_errors(@new_version) }
|
||||||
|
end
|
||||||
|
else
|
||||||
|
@new_version.save_attachments(params[:attachments] || (params[:version] && params[:version][:uploads]))
|
||||||
|
if @new_version.save
|
||||||
|
respond_to do |format|
|
||||||
|
format.html {
|
||||||
|
flash[:notice] = l(:notice_successful_create)
|
||||||
|
redirect_to mobile_version_url
|
||||||
|
}
|
||||||
|
format.api { render_api_ok }
|
||||||
|
end
|
||||||
|
else
|
||||||
|
respond_to do |format|
|
||||||
|
flash.now[:error] = "#{l :label_version_create_fail}: #{@new_version.errors.full_messages[0]}"
|
||||||
|
#flash.now[:error] = "#{l :label_first_page_create_fail}: #{@course_page.errors.full_messages[0]}"
|
||||||
|
format.html {
|
||||||
|
render :action => 'mobile_version'
|
||||||
|
}
|
||||||
|
format.api { render_validation_errors(@new_version) }
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|
|
@ -177,6 +177,25 @@ class ApplicationController < ActionController::Base
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
def logged_user_by_apptoken
|
||||||
|
#从手机端传来apptoken则将当前登陆用户变为对应的用户
|
||||||
|
if params[:apptoken]
|
||||||
|
token = ApiKey.where(access_token: params[:apptoken]).first
|
||||||
|
if token.expired?
|
||||||
|
return
|
||||||
|
end
|
||||||
|
if token && !token.expired?
|
||||||
|
@current_user = User.find(token.user_id)
|
||||||
|
end
|
||||||
|
unless @current_user.nil?
|
||||||
|
self.logged_user = @current_user
|
||||||
|
if @current_user
|
||||||
|
@current_user.update_column(:last_login_on, Time.now)
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
# Logs out current user
|
# Logs out current user
|
||||||
def logout_user
|
def logout_user
|
||||||
if User.current.logged?
|
if User.current.logged?
|
||||||
|
|
|
@ -231,6 +231,8 @@ class AttachmentsController < ApplicationController
|
||||||
format.html { redirect_to_referer_or softapplications_path(@attachment.container) }
|
format.html { redirect_to_referer_or softapplications_path(@attachment.container) }
|
||||||
elsif !@attachment.container.nil? && @attachment.container.is_a?(Bid)
|
elsif !@attachment.container.nil? && @attachment.container.is_a?(Bid)
|
||||||
format.html { redirect_to_referer_or respond_path(@attachment.container) }
|
format.html { redirect_to_referer_or respond_path(@attachment.container) }
|
||||||
|
elsif !@attachment.container.nil? && @attachment.container.is_a?(PhoneAppVersion)
|
||||||
|
format.html { redirect_to_referer_or mobile_version_path }
|
||||||
else
|
else
|
||||||
if @project.nil?
|
if @project.nil?
|
||||||
format.html { redirect_to_referer_or forum_memo_path(@attachment.container.forum, @attachment.container) }
|
format.html { redirect_to_referer_or forum_memo_path(@attachment.container.forum, @attachment.container) }
|
||||||
|
@ -415,7 +417,7 @@ private
|
||||||
@attachment.container.board.course)
|
@attachment.container.board.course)
|
||||||
@course = @attachment.container.board.course
|
@course = @attachment.container.board.course
|
||||||
else
|
else
|
||||||
unless @attachment.container_type == 'Bid' || @attachment.container_type == 'HomeworkAttach' || @attachment.container_type == 'Memo' || @attachment.container_type == 'Softapplication'
|
unless @attachment.container_type == 'Bid' || @attachment.container_type == 'HomeworkAttach' || @attachment.container_type == 'Memo' || @attachment.container_type == 'Softapplication' || @attachment.container_type == 'PhoneAppVersion'
|
||||||
@project = @attachment.project
|
@project = @attachment.project
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
|
@ -30,6 +30,7 @@ class BoardsController < ApplicationController
|
||||||
|
|
||||||
def index
|
def index
|
||||||
#modify by nwb
|
#modify by nwb
|
||||||
|
@flag = params[:flag] || false
|
||||||
if @project
|
if @project
|
||||||
@boards = @project.boards.includes(:last_message => :author).all
|
@boards = @project.boards.includes(:last_message => :author).all
|
||||||
@boards = [] << @boards[0] if @boards.any?
|
@boards = [] << @boards[0] if @boards.any?
|
||||||
|
|
|
@ -17,6 +17,7 @@ class CoursesController < ApplicationController
|
||||||
menu_item l(:label_sort_by_influence), :only => :index
|
menu_item l(:label_sort_by_influence), :only => :index
|
||||||
|
|
||||||
before_filter :can_show_course, :except => []
|
before_filter :can_show_course, :except => []
|
||||||
|
before_filter :logged_user_by_apptoken,:only => [:show,:new_homework,:feedback]
|
||||||
before_filter :find_course, :except => [ :index, :search,:list, :new,:join,:unjoin, :create, :copy, :statistics, :new_join, :course, :enterprise_course, :course_enterprise,:view_homework_attaches,:join_private_courses]
|
before_filter :find_course, :except => [ :index, :search,:list, :new,:join,:unjoin, :create, :copy, :statistics, :new_join, :course, :enterprise_course, :course_enterprise,:view_homework_attaches,:join_private_courses]
|
||||||
before_filter :authorize_course, :only => [:show, :settings, :edit, :update, :modules, :close, :reopen, :view_homework_attaches, :course]
|
before_filter :authorize_course, :only => [:show, :settings, :edit, :update, :modules, :close, :reopen, :view_homework_attaches, :course]
|
||||||
before_filter :authorize_course_global, :only => [:view_homework_attaches, :new,:create]
|
before_filter :authorize_course_global, :only => [:view_homework_attaches, :new,:create]
|
||||||
|
|
|
@ -21,6 +21,7 @@ class FilesController < ApplicationController
|
||||||
|
|
||||||
menu_item :files
|
menu_item :files
|
||||||
before_filter :auth_login1, :only => [:index]
|
before_filter :auth_login1, :only => [:index]
|
||||||
|
before_filter :logged_user_by_apptoken,:only => [:index]
|
||||||
before_filter :find_project_by_project_id#, :except => [:getattachtype]
|
before_filter :find_project_by_project_id#, :except => [:getattachtype]
|
||||||
before_filter :authorize, :except => [:getattachtype,:quote_resource_show,:search]
|
before_filter :authorize, :except => [:getattachtype,:quote_resource_show,:search]
|
||||||
|
|
||||||
|
@ -98,6 +99,7 @@ class FilesController < ApplicationController
|
||||||
end
|
end
|
||||||
|
|
||||||
def index
|
def index
|
||||||
|
@flag = params[:flag] || false
|
||||||
#sort_init 'filename', 'asc'
|
#sort_init 'filename', 'asc'
|
||||||
sort_init 'created_on', 'desc'
|
sort_init 'created_on', 'desc'
|
||||||
sort_update 'created_on' => "#{Attachment.table_name}.created_on",
|
sort_update 'created_on' => "#{Attachment.table_name}.created_on",
|
||||||
|
|
|
@ -6,7 +6,7 @@ class HomeworkAttachController < ApplicationController
|
||||||
###############################
|
###############################
|
||||||
before_filter :can_show_course,except: []
|
before_filter :can_show_course,except: []
|
||||||
#判断当前角色权限时需先找到当前操作的project
|
#判断当前角色权限时需先找到当前操作的project
|
||||||
before_filter :find_course_by_bid_id, :only => [:new]
|
before_filter :logged_user_by_apptoken,:find_course_by_bid_id, :only => [:new]
|
||||||
before_filter :find_bid_and_course,:only => [:get_not_batch_homework,:get_batch_homeworks,:get_homeworks,:get_homework_jours, :get_student_batch_homework, :get_my_homework]
|
before_filter :find_bid_and_course,:only => [:get_not_batch_homework,:get_batch_homeworks,:get_homeworks,:get_homework_jours, :get_student_batch_homework, :get_my_homework]
|
||||||
before_filter :find_course_by_hoemwork_id, :only => [:edit,:update,:destroy,:show,:add_homework_users,:destory_homework_users, :praise_homework]
|
before_filter :find_course_by_hoemwork_id, :only => [:edit,:update,:destroy,:show,:add_homework_users,:destory_homework_users, :praise_homework]
|
||||||
#判断当前角色是否有操作权限
|
#判断当前角色是否有操作权限
|
||||||
|
|
|
@ -107,17 +107,24 @@ class MembersController < ApplicationController
|
||||||
AppliedProject.deleteappiled(member.user_id, @project.id)
|
AppliedProject.deleteappiled(member.user_id, @project.id)
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
respond_to do |format|
|
if params[:flag]
|
||||||
format.html { redirect_to_settings_in_projects }
|
flash[:notice] = l(:label_invite_success)
|
||||||
format.js { @members = members; @applied_members = applied_members; }
|
respond_to do |format|
|
||||||
format.api {
|
format.html { redirect_to invite_members_project_url(@project) }
|
||||||
@member = members.first
|
end
|
||||||
if @member.valid?
|
else
|
||||||
render :action => 'show', :status => :created, :location => membership_url(@member)
|
respond_to do |format|
|
||||||
else
|
format.html { redirect_to_settings_in_projects }
|
||||||
render_validation_errors(@member)
|
format.js { @members = members; @applied_members = applied_members; }
|
||||||
end
|
format.api {
|
||||||
}
|
@member = members.first
|
||||||
|
if @member.valid?
|
||||||
|
render :action => 'show', :status => :created, :location => membership_url(@member)
|
||||||
|
else
|
||||||
|
render_validation_errors(@member)
|
||||||
|
end
|
||||||
|
}
|
||||||
|
end
|
||||||
end
|
end
|
||||||
elsif @course
|
elsif @course
|
||||||
course_info = []
|
course_info = []
|
||||||
|
@ -310,6 +317,7 @@ class MembersController < ApplicationController
|
||||||
end
|
end
|
||||||
|
|
||||||
def autocomplete
|
def autocomplete
|
||||||
|
@flag = params[:flag] || false
|
||||||
respond_to do |format|
|
respond_to do |format|
|
||||||
format.js
|
format.js
|
||||||
end
|
end
|
||||||
|
|
|
@ -180,6 +180,7 @@ class ProjectsController < ApplicationController
|
||||||
@project = Project.new
|
@project = Project.new
|
||||||
@project.safe_attributes = params[:project]
|
@project.safe_attributes = params[:project]
|
||||||
@project.organization_id = params[:organization_id]
|
@project.organization_id = params[:organization_id]
|
||||||
|
@project.user_id = User.current.id
|
||||||
if validate_parent_id && @project.save
|
if validate_parent_id && @project.save
|
||||||
@project.set_allowed_parent!(params[:project]['parent_id']) if params[:project].has_key?('parent_id')
|
@project.set_allowed_parent!(params[:project]['parent_id']) if params[:project].has_key?('parent_id')
|
||||||
# Add current user as a project member if he is not admin
|
# Add current user as a project member if he is not admin
|
||||||
|
@ -333,8 +334,7 @@ class ProjectsController < ApplicationController
|
||||||
end
|
end
|
||||||
|
|
||||||
def send_mail_to_member
|
def send_mail_to_member
|
||||||
|
if !params[:mail].blank? && User.find_by_mail(params[:mail].to_s).nil?
|
||||||
if !params[:mail].nil? && User.find_by_mail(params[:mail].to_s).nil?
|
|
||||||
email = params[:mail]
|
email = params[:mail]
|
||||||
Mailer.send_invite_in_project(email, @project, User.current).deliver
|
Mailer.send_invite_in_project(email, @project, User.current).deliver
|
||||||
@is_zhuce =false
|
@is_zhuce =false
|
||||||
|
@ -347,16 +347,27 @@ class ProjectsController < ApplicationController
|
||||||
end
|
end
|
||||||
#发送邮件邀请新用户
|
#发送邮件邀请新用户
|
||||||
def invite_members_by_mail
|
def invite_members_by_mail
|
||||||
@is_zhuce =false
|
if User.current.member_of?(@project) || User.current.admin?
|
||||||
respond_to do |format|
|
@is_zhuce = false
|
||||||
format.html
|
respond_to do |format|
|
||||||
format.js
|
format.html
|
||||||
|
format.js
|
||||||
|
end
|
||||||
|
else
|
||||||
|
render_403
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
# 邀请Trustie注册用户
|
# 邀请Trustie注册用户
|
||||||
def invite_members
|
def invite_members
|
||||||
@member ||= @project.members.new
|
if User.current.member_of?(@project) || User.current.admin?
|
||||||
|
@member ||= @project.members.new
|
||||||
|
respond_to do |format|
|
||||||
|
format.html
|
||||||
|
end
|
||||||
|
else
|
||||||
|
render_403
|
||||||
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
def edit
|
def edit
|
||||||
|
|
|
@ -19,6 +19,7 @@ class UsersController < ApplicationController
|
||||||
layout :setting_layout
|
layout :setting_layout
|
||||||
#Added by young
|
#Added by young
|
||||||
before_filter :auth_login1, :only => [:show, :user_activities, :user_newfeedback]
|
before_filter :auth_login1, :only => [:show, :user_activities, :user_newfeedback]
|
||||||
|
before_filter :logged_user_by_apptoken, :only => [:show,:user_newfeedback]
|
||||||
menu_item :activity
|
menu_item :activity
|
||||||
menu_item :user_information, :only => :info
|
menu_item :user_information, :only => :info
|
||||||
menu_item :user_course, :only => :user_courses
|
menu_item :user_course, :only => :user_courses
|
||||||
|
@ -445,12 +446,13 @@ class UsersController < ApplicationController
|
||||||
activity = Activity.where(where_condition).where('user_id = ?', @user.id).order('id desc')
|
activity = Activity.where(where_condition).where('user_id = ?', @user.id).order('id desc')
|
||||||
end
|
end
|
||||||
activity = activity.reject { |e|
|
activity = activity.reject { |e|
|
||||||
!User.current.admin? &&
|
e.act.nil? ||
|
||||||
|
(!User.current.admin? && !e.act.nil?
|
||||||
(((e.act_type == "Issue") && !e.act.project.visible?(User.current)) ||
|
(((e.act_type == "Issue") && !e.act.project.visible?(User.current)) ||
|
||||||
(e.act_type == "Bid" && !e.act.courses.first.nil? && e.act.courses.first.is_public == 0 && !User.current.member_of_course?(e.act.courses.first)) ||
|
(e.act_type == "Bid" && !e.act.courses.first.nil? && e.act.courses.first.is_public == 0 && !User.current.member_of_course?(e.act.courses.first)) ||
|
||||||
(e.act_type == "Journal" && e.act.respond_to?("Project") && !e.act.project.visible?(User.current)) ||
|
(e.act_type == "Journal" && e.act.respond_to?("Project") && !e.act.project.visible?(User.current)) ||
|
||||||
(e.act_type == "News" && ((!e.act.project.nil? && !e.act.project.visible?(User.current)) || (!e.act.course.nil? && e.act.course.is_public == 0 && !User.current.member_of_course?(e.act.course)))) ||
|
(e.act_type == "News" && ((!e.act.project.nil? && !e.act.project.visible?(User.current)) || (!e.act.course.nil? && e.act.course.is_public == 0 && !User.current.member_of_course?(e.act.course)))) ||
|
||||||
(e.act_type == "Message" && !e.act.board.nil? && ((!e.act.board.project.nil? && !e.act.board.project.visible?(User.current)) || (!e.act.board.course.nil? && e.act.board.course.is_public == 0 && !User.current.member_of_course?(e.act.board.course)))))
|
(e.act_type == "Message" && !e.act.board.nil? && ((!e.act.board.project.nil? && !e.act.board.project.visible?(User.current)) || (!e.act.board.course.nil? && e.act.board.course.is_public == 0 && !User.current.member_of_course?(e.act.board.course))))))
|
||||||
}
|
}
|
||||||
@activity_count = activity.count
|
@activity_count = activity.count
|
||||||
@activity_pages = Paginator.new @activity_count, pre_count, params['page']
|
@activity_pages = Paginator.new @activity_count, pre_count, params['page']
|
||||||
|
|
|
@ -28,7 +28,8 @@ class WelcomeController < ApplicationController
|
||||||
# 企业版定制: params[:project]为传过来的参数
|
# 企业版定制: params[:project]为传过来的参数
|
||||||
unless params[:organization].nil?
|
unless params[:organization].nil?
|
||||||
@organization = Organization.find params[:organization]
|
@organization = Organization.find params[:organization]
|
||||||
@organization_projects = Project.visible.joins(:project_status).joins("LEFT JOIN project_scores ON projects.id = project_scores.project_id").where("projects.organization_id = ?", @organization.id).order("score DESC").limit(10).all
|
# @organization_projects = Project.joins(:project_status).joins("LEFT JOIN project_scores ON projects.id = project_scores.project_id").where("projects.organization_id = ?", @organization.id).order("score DESC").limit(10).all
|
||||||
|
@organization_projects = @organization.projects.visible.joins("LEFT JOIN project_scores ON projects.id = project_scores.project_id").order("project_scores.score DESC").limit(10).all
|
||||||
@part_projects = @organization_projects.count < 9 ? find_miracle_project( 9 - @organization_projects.count, 3,"score desc") : []
|
@part_projects = @organization_projects.count < 9 ? find_miracle_project( 9 - @organization_projects.count, 3,"score desc") : []
|
||||||
# @cur_projects = Project.find(params[:organization])
|
# @cur_projects = Project.find(params[:organization])
|
||||||
# @organization = @cur_projects.enterprise_name
|
# @organization = @cur_projects.enterprise_name
|
||||||
|
|
|
@ -490,6 +490,15 @@ module ApplicationHelper
|
||||||
s.html_safe
|
s.html_safe
|
||||||
end
|
end
|
||||||
|
|
||||||
|
#项目成员列表复选框生成
|
||||||
|
def project_member_check_box_tags_ex name, principals
|
||||||
|
s = ''
|
||||||
|
principals.each do |principal|
|
||||||
|
s << "<li>#{ check_box_tag name, principal.id, false, :id => nil } #{h link_to principal.userInfo, user_path( principal.id)}</li>\n"
|
||||||
|
end
|
||||||
|
s.html_safe
|
||||||
|
end
|
||||||
|
|
||||||
#扩展的checkbox生成
|
#扩展的checkbox生成
|
||||||
def principals_check_box_tags_ex(name, principals)
|
def principals_check_box_tags_ex(name, principals)
|
||||||
s = ''
|
s = ''
|
||||||
|
@ -1198,6 +1207,17 @@ module ApplicationHelper
|
||||||
html_safe
|
html_safe
|
||||||
end
|
end
|
||||||
|
|
||||||
|
def wiki_simple_format_without_paragraph(text)
|
||||||
|
text.to_s.
|
||||||
|
gsub(/\r\n?/, "\n"). # \r\n and \r -> \n
|
||||||
|
gsub(/\n\n+/, "<br /><br />"). # 2+ newline -> 2 br
|
||||||
|
gsub(/([^\n]\n)(?=[^\n])/, '\1<br />'). # 1 newline -> br
|
||||||
|
gsub("&nbsp", " "). #gsub(/<\/?.*?>/,"").
|
||||||
|
gsub(/<\/?.*?>/, "").
|
||||||
|
gsub(""", "'").
|
||||||
|
html_safe
|
||||||
|
end
|
||||||
|
|
||||||
def lang_options_for_select(blank=true)
|
def lang_options_for_select(blank=true)
|
||||||
{ 'Chinese简体中文 '=> 'zh', :English => :en}
|
{ 'Chinese简体中文 '=> 'zh', :English => :en}
|
||||||
end
|
end
|
||||||
|
|
|
@ -351,10 +351,28 @@ module CoursesHelper
|
||||||
str
|
str
|
||||||
end
|
end
|
||||||
|
|
||||||
# added by nwb
|
# added by meng
|
||||||
|
# 课程time+term简写(2014.春/2014.秋)国际化输出
|
||||||
def get_course_term course
|
def get_course_term course
|
||||||
str = ( course.try(:time).to_s << '.' << course.try(:term).to_s )
|
strterm = course.try(:term).to_s
|
||||||
str[0..-4]
|
if !(User.current.language == 'zh')
|
||||||
|
strterm == '春季学期' ? strterm = 'spring term' : strterm = 'autumn term'
|
||||||
|
str = ( course.try(:time).to_s << '.' << strterm )
|
||||||
|
str[0..-6]
|
||||||
|
else
|
||||||
|
str = ( course.try(:time).to_s << '.' << strterm )
|
||||||
|
str[0..-4]
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
# added by meng
|
||||||
|
# 课程term(春季学期/秋季学期)国际化输出
|
||||||
|
def get_course_term_locales course
|
||||||
|
str = course.try(:term).to_s
|
||||||
|
if !(User.current.language == 'zh')
|
||||||
|
str == '春季学期' ? str = ' ' + 'spring term' : str = ' ' + 'autumn term'
|
||||||
|
end
|
||||||
|
return str
|
||||||
end
|
end
|
||||||
|
|
||||||
def members_to_user_ids members
|
def members_to_user_ids members
|
||||||
|
|
|
@ -48,7 +48,7 @@ module FilesHelper
|
||||||
def courses_check_box_tags(name,courses,current_course,attachment)
|
def courses_check_box_tags(name,courses,current_course,attachment)
|
||||||
s = ''
|
s = ''
|
||||||
courses.each do |course|
|
courses.each do |course|
|
||||||
if !(attachment.container_type && attachment.container_id == course.id) && is_course_teacher(User.current,course) && course_in_current_or_next_term(course)
|
if !course_contains_attachment?(course,attachment) && is_course_teacher(User.current,course) && course_in_current_or_next_term(course)
|
||||||
s << "<label>#{ check_box_tag name, course.id, false, :id => nil } #{h course.name}</label> [#{get_course_term course}]<br/>"
|
s << "<label>#{ check_box_tag name, course.id, false, :id => nil } #{h course.name}</label> [#{get_course_term course}]<br/>"
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
|
@ -23,15 +23,22 @@ module MembersHelper
|
||||||
principal_count = scope.count
|
principal_count = scope.count
|
||||||
principal_pages = Redmine::Pagination::Paginator.new principal_count, 10, params['page'] #by young
|
principal_pages = Redmine::Pagination::Paginator.new principal_count, 10, params['page'] #by young
|
||||||
principals = scope.offset(principal_pages.offset).limit(principal_pages.per_page).all
|
principals = scope.offset(principal_pages.offset).limit(principal_pages.per_page).all
|
||||||
|
|
||||||
s = content_tag('div', principals_check_box_tags_ex('membership[user_ids][]', principals), :id => 'principals')
|
s = content_tag('div', principals_check_box_tags_ex('membership[user_ids][]', principals), :id => 'principals')
|
||||||
|
|
||||||
links = pagination_links_full(principal_pages, principal_count, :per_page_links => false) {|text, parameters, options|
|
links = pagination_links_full(principal_pages, principal_count, :per_page_links => false) {|text, parameters, options|
|
||||||
link_to text, autocomplete_project_memberships_path(project, parameters.merge(:q => params[:q], :format => 'js')), :remote => true
|
link_to text, autocomplete_project_memberships_path(project, parameters.merge(:q => params[:q], :format => 'js')), :remote => true
|
||||||
}
|
}
|
||||||
|
|
||||||
s + content_tag('div', content_tag('ul', links), :class => 'pagination_new')
|
s + content_tag('div', content_tag('ul', links), :class => 'pagination_new')
|
||||||
|
end
|
||||||
|
|
||||||
|
#获取项目可邀请的成员列表
|
||||||
|
def render_project_members project
|
||||||
|
scope = Principal.active.sorted.not_member_of(project).like(params[:q])
|
||||||
|
principals = paginateHelper scope,10
|
||||||
|
s = content_tag('ul', project_member_check_box_tags_ex('membership[user_ids][]', principals), :class => 'mb5', :style => "margin-left: -40px;")
|
||||||
|
links = pagination_links_full(@obj_pages, @obj_count, :per_page_links => false, :remote => false, :flag => true){|text, parameters, options|
|
||||||
|
link_to text, autocomplete_project_memberships_path(project, parameters.merge(:q => params[:q],:flag => true, :format => 'js')), :remote => true
|
||||||
|
}
|
||||||
|
s + content_tag('ul', links,:class => 'wlist')
|
||||||
end
|
end
|
||||||
|
|
||||||
# add by nwb
|
# add by nwb
|
||||||
|
@ -71,4 +78,18 @@ module MembersHelper
|
||||||
s + content_tag('div', content_tag('ul', links), :class => 'applied_new')
|
s + content_tag('div', content_tag('ul', links), :class => 'applied_new')
|
||||||
end
|
end
|
||||||
|
|
||||||
|
private
|
||||||
|
def paginateHelper obj, pre_size=20
|
||||||
|
@obj_count = obj.count
|
||||||
|
@obj_pages = Redmine::Pagination::Paginator.new @obj_count, pre_size, params['page']
|
||||||
|
if obj.kind_of? ActiveRecord::Base or obj.kind_of? ActiveRecord::Relation
|
||||||
|
obj.limit(@obj_pages.per_page).offset(@obj_pages.offset)
|
||||||
|
elsif obj.kind_of? Array
|
||||||
|
obj[@obj_pages.offset, @obj_pages.per_page]
|
||||||
|
else
|
||||||
|
logger.error "[ApplicationController] Error : application_controller#paginateHelper ===> unknow category: #{obj.class}"
|
||||||
|
raise RuntimeError, 'unknow type, Please input you type into this helper.'
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
end
|
end
|
||||||
|
|
|
@ -283,6 +283,6 @@ module WatchersHelper
|
||||||
|
|
||||||
def exit_project_link(project)
|
def exit_project_link(project)
|
||||||
link_to(l(:label_exit_project),exit_cur_project_path(project.id),
|
link_to(l(:label_exit_project),exit_cur_project_path(project.id),
|
||||||
:remote => true, :confirm => l(:lable_sure_exit_project), :style => "color: #fff; display:block; padding: 0px 5px;margin-right:10px;height:22px;background:none repeat scroll 0% 0% #64BDD9;TES" )
|
:remote => true, :confirm => l(:lable_sure_exit_project), :style => "color: #fff; display:block; padding: 0px 5px; margin-right: 10px; height: 22px; line-height: 22px; background: none repeat scroll 0% 0% #64BDD9; TES" )
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
|
@ -341,7 +341,7 @@ module WelcomeHelper
|
||||||
end
|
end
|
||||||
str
|
str
|
||||||
rescue Exception => e
|
rescue Exception => e
|
||||||
str << content_tag("span", l(:field_user_active_unknow))
|
str << content_tag("span", l('user.active.unknow'))
|
||||||
end
|
end
|
||||||
|
|
||||||
def show_event_reply event
|
def show_event_reply event
|
||||||
|
|
|
@ -1,3 +1,6 @@
|
||||||
class PhoneAppVersion < ActiveRecord::Base
|
class PhoneAppVersion < ActiveRecord::Base
|
||||||
attr_accessible :description, :version
|
attr_accessible :description, :version
|
||||||
|
validates_presence_of :description, :version
|
||||||
|
validates_uniqueness_of :version
|
||||||
|
acts_as_attachable
|
||||||
end
|
end
|
||||||
|
|
|
@ -131,7 +131,7 @@ class Project < ActiveRecord::Base
|
||||||
#ActiveModel::Dirty 这里有一个changed方法。对任何对象都可以用
|
#ActiveModel::Dirty 这里有一个changed方法。对任何对象都可以用
|
||||||
after_save :update_inherited_members, :if => Proc.new {|project| project.inherit_members_changed?}
|
after_save :update_inherited_members, :if => Proc.new {|project| project.inherit_members_changed?}
|
||||||
# 创建project之后默认创建一个board,之后的board去掉了board的概念
|
# 创建project之后默认创建一个board,之后的board去掉了board的概念
|
||||||
after_create :create_board_sync
|
after_create :create_board_sync,:acts_as_forge_activities
|
||||||
before_destroy :delete_all_members
|
before_destroy :delete_all_members
|
||||||
def remove_references_before_destroy
|
def remove_references_before_destroy
|
||||||
return if self.id.nil?
|
return if self.id.nil?
|
||||||
|
@ -1154,6 +1154,13 @@ class Project < ActiveRecord::Base
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
# Time 2015-03-10 15:33:16
|
||||||
|
# Author lizanle
|
||||||
|
# Description 新建项目要在ForgeActivities中加一条数据。
|
||||||
|
def acts_as_forge_activities
|
||||||
|
fa = ForgeActivity.new(:user_id => User.current.id,:project_id => self.id,
|
||||||
|
:forge_act_id => self.id,:forge_act_type => "ProjectCreateInfo")
|
||||||
|
fa.save!
|
||||||
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|
|
@ -33,16 +33,32 @@ class UserExtensions < ActiveRecord::Base
|
||||||
return self.brief_introduction
|
return self.brief_introduction
|
||||||
end
|
end
|
||||||
|
|
||||||
# added by bai
|
# added by meng
|
||||||
def show_identity
|
def show_identity
|
||||||
if self.identity == 0
|
if self.identity == 0
|
||||||
user_identity = '教师'
|
if User.current.language == 'zh'
|
||||||
|
user_identity = '教师'
|
||||||
|
else
|
||||||
|
user_identity = 'Teacher'
|
||||||
|
end
|
||||||
elsif self.identity == 1
|
elsif self.identity == 1
|
||||||
user_identity = '学生'
|
if User.current.language == 'zh'
|
||||||
|
user_identity = '学生'
|
||||||
|
else
|
||||||
|
user_identity = 'Student'
|
||||||
|
end
|
||||||
elsif self.identity == 2
|
elsif self.identity == 2
|
||||||
user_identity = '企业'
|
if User.current.language == 'zh'
|
||||||
|
user_identity = '企业'
|
||||||
|
else
|
||||||
|
user_identity = 'Enterprise'
|
||||||
|
end
|
||||||
elsif self.identity == 3
|
elsif self.identity == 3
|
||||||
user_identity = '开发者'
|
if User.current.language == 'zh'
|
||||||
|
user_identity = '开发者'
|
||||||
|
else
|
||||||
|
user_identity = 'Developer'
|
||||||
|
end
|
||||||
else
|
else
|
||||||
user_identity = ''
|
user_identity = ''
|
||||||
end
|
end
|
||||||
|
|
|
@ -344,27 +344,67 @@ class CoursesService
|
||||||
else
|
else
|
||||||
membership = @user.coursememberships.all(:conditions => Course.visible_condition(current_user))
|
membership = @user.coursememberships.all(:conditions => Course.visible_condition(current_user))
|
||||||
end
|
end
|
||||||
|
if membership.nil? || membership.count == 0
|
||||||
|
raise l(:label_no_courses,:locale => current_user.language.nil? ? 'zh':current_user.language)
|
||||||
|
end
|
||||||
membership.sort! {|older, newer| newer.created_on <=> older.created_on }
|
membership.sort! {|older, newer| newer.created_on <=> older.created_on }
|
||||||
result = []
|
result = []
|
||||||
membership.each do |mp|
|
membership.each do |mp|
|
||||||
course = mp.course
|
course = mp.course
|
||||||
unless current_user.nil? || !(current_user.admin? || course.is_public == 1 || (course.is_public == 0 && current_user.member_of_course?(course)))
|
latest_course_dynamics = []
|
||||||
count,is_teacher = get_course_anonymous_evaluation current_user,course
|
latest_news = course.news.order("created_on desc").first
|
||||||
if is_teacher
|
unless latest_news.nil?
|
||||||
student_commit_number = count
|
latest_course_dynamics << {:type => 1,:time => latest_news.created_on,:message => l(:label_recently_updated_notification,:locale => current_user.language.nil? ? 'zh':current_user.language)}
|
||||||
else
|
end
|
||||||
need_anonymous_comments_count = count
|
latest_message = course.journals_for_messages.order("created_on desc").first
|
||||||
|
unless latest_message.nil?
|
||||||
|
latest_course_dynamics << {:type => 2,:time => latest_message.created_on,:message => l(:label_recently_updated_message,:locale => current_user.language.nil? ? 'zh':current_user.language)}
|
||||||
|
end
|
||||||
|
latest_attachment = course.attachments.order("created_on desc").first
|
||||||
|
unless latest_attachment.nil?
|
||||||
|
latest_course_dynamics << {:type => 3,:time => latest_attachment.created_on,:message => l(:label_recently_updated_courseware,:locale => current_user.language.nil? ? 'zh':current_user.language)}
|
||||||
|
end
|
||||||
|
latest_bid = course.homeworks.order('updated_on DESC').first
|
||||||
|
unless latest_bid.nil?
|
||||||
|
latest_course_dynamics << {:type => 4,:time => latest_bid.updated_on,:message => l(:label_recently_updated_homework,:locale => current_user.language.nil? ? 'zh':current_user.language)}
|
||||||
|
end
|
||||||
|
#每个作业中的最新留言
|
||||||
|
messages = []
|
||||||
|
course.homeworks.each do |bid|
|
||||||
|
jour = bid.journals_for_messages.order("created_on desc").first
|
||||||
|
unless jour.nil?
|
||||||
|
messages << jour
|
||||||
end
|
end
|
||||||
news_count = course.news.count
|
end
|
||||||
message_count = course.journals_for_messages.count
|
unless messages.count == 0
|
||||||
|
messages.sort!{|order,newer| newer.created_on <=> order.created_on}
|
||||||
result << {:course_name => course.name,:course_id => course.id,:course_img_url => url_to_avatar(course),:type => 1,:count => message_count}
|
end
|
||||||
result << {:course_name => course.name,:course_id => course.id,:course_img_url => url_to_avatar(course),:type => 2,:count => need_anonymous_comments_count}
|
latest_bid_message = messages.first
|
||||||
result << {:course_name => course.name,:course_id => course.id,:course_img_url => url_to_avatar(course),:type => 3,:count => student_commit_number}
|
unless latest_bid_message.nil?
|
||||||
result << {:course_name => course.name,:course_id => course.id,:course_img_url => url_to_avatar(course),:type => 4,:count => news_count}
|
latest_course_dynamics << {:type => 4,:time => latest_bid_message.created_on,:message => '最近更新了作业'}#l(:label_recently_updated_message,:locale => current_user.language.nil? ? 'zh':current_user.language)}
|
||||||
#{:course_name => course.name,:need_anonymous_comments_count=>need_anonymous_comments_count,:student_commit_number=>student_commit_number,:news_count=> news_count,:message_count=>message_count}
|
end
|
||||||
|
#每个作业中学生最后提交的作业
|
||||||
|
homeworks = []
|
||||||
|
course.homeworks.each do |bid|
|
||||||
|
homework_attach = bid.homeworks.order('updated_at DESC').first
|
||||||
|
unless homework_attach.nil?
|
||||||
|
homeworks << homework_attach
|
||||||
|
end
|
||||||
|
end
|
||||||
|
unless homeworks.count == 0
|
||||||
|
homeworks.sort!{|order,newer| newer.updated_at <=> order.updated_at}
|
||||||
|
end
|
||||||
|
latest_homework_attach = homeworks.first
|
||||||
|
unless latest_homework_attach.nil?
|
||||||
|
latest_course_dynamics << {:type => 4,:time => latest_homework_attach.updated_at,:message => '最近更新了作业'}#l(:label_recently_updated_homework,:locale => current_user.language.nil? ? 'zh':current_user.language)}
|
||||||
|
end
|
||||||
|
latest_course_dynamics.sort!{|order,newer| newer[:time] <=> order[:time]}
|
||||||
|
latest_course_dynamic = latest_course_dynamics.first
|
||||||
|
unless latest_course_dynamic.nil?
|
||||||
|
result << {:course_name => course.name,:course_id => course.id,:course_img_url => url_to_avatar(course),:type => latest_course_dynamic[:type],:update_time => latest_course_dynamic[:time],:message => latest_course_dynamic[:message],:count => nil}
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
result.sort!{|order,newer| newer[:update_time] <=> order[:update_time]}
|
||||||
result
|
result
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|
|
@ -80,6 +80,28 @@ class UsersService
|
||||||
{:id => @user.id, :img_url => img_url, :nickname => @user.login, :gender => gender, :work_unit => work_unit, :mail => @user.mail, :location => location, :brief_introduction => @user.user_extensions.brief_introduction}
|
{:id => @user.id, :img_url => img_url, :nickname => @user.login, :gender => gender, :work_unit => work_unit, :mail => @user.mail, :location => location, :brief_introduction => @user.user_extensions.brief_introduction}
|
||||||
end
|
end
|
||||||
|
|
||||||
|
#忘记密码
|
||||||
|
def lost_password params
|
||||||
|
user = ::User.find_by_mail(params[:mail].to_s)
|
||||||
|
# user not found or not active
|
||||||
|
unless user && user.active?
|
||||||
|
raise l(:notice_account_unknown_email,:locale => 'zh')
|
||||||
|
end
|
||||||
|
# user cannot change its password
|
||||||
|
unless user.change_password_allowed?
|
||||||
|
raise l(:notice_can_t_change_password,:locale => user.language)
|
||||||
|
return
|
||||||
|
end
|
||||||
|
# create a new token for password recovery
|
||||||
|
token = Token.new(:user => user, :action => "recovery")
|
||||||
|
if token.save
|
||||||
|
Thread.new do
|
||||||
|
Mailer.lost_password(token).deliver
|
||||||
|
end
|
||||||
|
return l(:notice_account_lost_email_sent,:locale => user.language)
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
#编辑用户
|
#编辑用户
|
||||||
#gender 1:female 0:male 其他:male
|
#gender 1:female 0:male 其他:male
|
||||||
def edit_user params
|
def edit_user params
|
||||||
|
|
|
@ -1,9 +1,20 @@
|
||||||
<h3><%= l(:label_mobile_version) %></h3>
|
<h3><%= l(:label_mobile_version) %></h3>
|
||||||
<a href="javascript:void(0)" onclick="$('#new_version').slideToggle(400); ">发布新版本</a>
|
<a href="javascript:void(0)" onclick="$('#new_version').slideToggle(400); ">发布新版本</a>
|
||||||
<div>
|
<div>
|
||||||
<form id="new_version" style="display: none">
|
<%= form_tag({:controller => 'admin', :action => 'create_version'},{:id => 'new_version',:style=>'display:none'}) do %>
|
||||||
发布新版本
|
<p style="margin-left:60px;padding-right: 20px;">
|
||||||
</form>
|
<label for='version'><%= l(:label_version_number) %>:</label>
|
||||||
|
<%= text_field_tag 'version', params[:version],:value => @new_version.version, :size => 30,:style => "font-size:small;width:490px;margin-left:10px;" %>
|
||||||
|
</p>
|
||||||
|
<p style="margin-left:60px;padding-right: 20px;">
|
||||||
|
<label for='description'><%= l(:label_version_description)%>:</label>
|
||||||
|
<%= text_field_tag 'description', params[:description],:value => @new_version.description,:size => 30,:style => "font-size:small;width:490px;margin-left:10px;" %>
|
||||||
|
</p>
|
||||||
|
<p style="margin-left:60px;padding-right: 20px;">
|
||||||
|
<%= render :partial => 'attachments/form', :locals => {:container => @new_version} %>
|
||||||
|
</p>
|
||||||
|
<%= submit_tag l(:button_save), :class => "small", :name => nil %>
|
||||||
|
<% end %>
|
||||||
</div>
|
</div>
|
||||||
<br/>
|
<br/>
|
||||||
<div>当前版本:</div>
|
<div>当前版本:</div>
|
||||||
|
@ -25,7 +36,10 @@
|
||||||
<% end %>
|
<% end %>
|
||||||
</tbody>
|
</tbody>
|
||||||
</table>
|
</table>
|
||||||
|
<% if !@versions.first.nil? && @versions.first.attachments.any?%>
|
||||||
|
<% options = {:author => true, :deletable => true } %>
|
||||||
|
<%= render :partial => 'attachments/links', :locals => {:attachments => @versions.first.attachments, :options => options, :is_float => true} %>
|
||||||
|
<% end %>
|
||||||
<br/>
|
<br/>
|
||||||
|
|
||||||
<div>历史版本:</div>
|
<div>历史版本:</div>
|
||||||
|
|
|
@ -172,9 +172,9 @@
|
||||||
<tr>
|
<tr>
|
||||||
<td style="text-align: left" colspan="2">
|
<td style="text-align: left" colspan="2">
|
||||||
<span class="font_lighter">
|
<span class="font_lighter">
|
||||||
<%= l(:label_create_time) %>
|
<%= l(:label_end_time) %>
|
||||||
:
|
:
|
||||||
<%=format_time bid.created_on %>
|
<%= bid.deadline %>
|
||||||
</span>
|
</span>
|
||||||
<span style="float: right">
|
<span style="float: right">
|
||||||
<% if betweentime(bid.deadline) < 0 %>
|
<% if betweentime(bid.deadline) < 0 %>
|
||||||
|
|
|
@ -7,7 +7,7 @@
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
</script>
|
</script>
|
||||||
<div id="add-message" class="add_frame" style="display:none;">
|
<div id="add-message" class="add_frame" style="display:<%= !@flag.nil?&&@flag=='true' ? '' : 'none' %>;">
|
||||||
<% if User.current.logged? %>
|
<% if User.current.logged? %>
|
||||||
<div class="project_r_h">
|
<div class="project_r_h">
|
||||||
<h2 class="project_h2"><%= l(:label_message_new) %></h2>
|
<h2 class="project_h2"><%= l(:label_message_new) %></h2>
|
||||||
|
|
|
@ -12,7 +12,7 @@
|
||||||
<tr>
|
<tr>
|
||||||
<td class="info_font" style="width: 240px;" rowspan="2">
|
<td class="info_font" style="width: 240px;" rowspan="2">
|
||||||
<a href="http://<%= Setting.host_course%>" style="color: #15bccf;">
|
<a href="http://<%= Setting.host_course%>" style="color: #15bccf;">
|
||||||
高校课程实践社区
|
<%= l(:label_courses_community)%>
|
||||||
</a>
|
</a>
|
||||||
</td>
|
</td>
|
||||||
<td class="location-list">
|
<td class="location-list">
|
||||||
|
|
|
@ -7,7 +7,7 @@
|
||||||
<tr>
|
<tr>
|
||||||
<td class="info_font" style="width: 240px;" rowspan="2">
|
<td class="info_font" style="width: 240px;" rowspan="2">
|
||||||
<a href="http://<%= Setting.host_course%>" style="color: #15bccf;">
|
<a href="http://<%= Setting.host_course%>" style="color: #15bccf;">
|
||||||
高校课程实践社区
|
<%= l(:label_courses_community)%>
|
||||||
</a>
|
</a>
|
||||||
</td>
|
</td>
|
||||||
<td class="location-list">
|
<td class="location-list">
|
||||||
|
|
|
@ -28,7 +28,7 @@
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<% if @grouped.empty? %>
|
<% if @grouped.empty? %>
|
||||||
<p class="nodata">
|
<p class="nodata" style="margin-top: 30px;">
|
||||||
<%= l(:label_no_data) %>
|
<%= l(:label_no_data) %>
|
||||||
</p>
|
</p>
|
||||||
<% end %>
|
<% end %>
|
||||||
|
|
|
@ -1,38 +1,45 @@
|
||||||
<div class="project_r_h">
|
<div class="project_r_h">
|
||||||
<h2 class="project_h2"><%=h @document.title %></h2>
|
<h2 class="project_h2"><%= l(:project_module_documents) %></h2>
|
||||||
</div>
|
</div>
|
||||||
<div class="frame-wiki">
|
<div class="frame-wiki">
|
||||||
|
<div class="contextual">
|
||||||
|
<% if User.current.allowed_to?(:edit_documents, @project) %>
|
||||||
|
<%= link_to l(:button_edit), edit_document_path(@document), :class => 'icon icon-edit', :accesskey => accesskey(:edit) %>
|
||||||
|
<% end %>
|
||||||
|
<% if User.current.allowed_to?(:delete_documents, @project) %>
|
||||||
|
<%= delete_link document_path(@document) %>
|
||||||
|
<% end %>
|
||||||
|
</div>
|
||||||
|
<p style="padding-top: 5px">
|
||||||
|
<%= h @document.title %>
|
||||||
|
</p>
|
||||||
|
<p>
|
||||||
|
<em><%#=h @document.category.name %>
|
||||||
|
<br />
|
||||||
|
<%= format_date @document.created_on %></em>
|
||||||
|
</p>
|
||||||
|
<div class="wiki">
|
||||||
|
<%= textilizable @document, :description, :attachments => @document.attachments %>
|
||||||
|
</div>
|
||||||
|
|
||||||
<div class="contextual">
|
<div style="border-top:solid 1px #C6E9F1;"></div>
|
||||||
<% if User.current.allowed_to?(:edit_documents, @project) %>
|
<h3><%= l(:label_attachment_plural) %></h3>
|
||||||
<%= link_to l(:button_edit), edit_document_path(@document), :class => 'icon icon-edit', :accesskey => accesskey(:edit) %>
|
<%= link_to_attachments @document %>
|
||||||
<% end %>
|
|
||||||
<% if User.current.allowed_to?(:delete_documents, @project) %>
|
<% if authorize_for('documents', 'add_attachment') %>
|
||||||
<%= delete_link document_path(@document) %>
|
<p>
|
||||||
<% end %>
|
<%= link_to l(:label_attachment_new), {}, :onclick => "$('#add_attachment_form').show(); return false;",
|
||||||
</div>
|
:id => 'attach_files_link' %>
|
||||||
|
</p>
|
||||||
|
<%= form_tag({ :controller => 'documents', :action => 'add_attachment', :id => @document }, :multipart => true, :id => "add_attachment_form", :style => "display:none;") do %>
|
||||||
<p><em><%#=h @document.category.name %><br />
|
<div class="box">
|
||||||
<%= format_date @document.created_on %></em></p>
|
<p>
|
||||||
<div class="wiki">
|
<%= render :partial => 'attachments/form' %>
|
||||||
<%= textilizable @document, :description, :attachments => @document.attachments %>
|
</p>
|
||||||
</div>
|
</div>
|
||||||
|
<%= submit_tag l(:button_add) %>
|
||||||
<div style="border-top:solid 1px #C6E9F1;"></div>
|
<% end %>
|
||||||
<h3><%= l(:label_attachment_plural) %></h3>
|
<% end %>
|
||||||
<%= link_to_attachments @document %>
|
|
||||||
|
<% html_title @document.title -%>
|
||||||
<% if authorize_for('documents', 'add_attachment') %>
|
|
||||||
<p><%= link_to l(:label_attachment_new), {}, :onclick => "$('#add_attachment_form').show(); return false;",
|
|
||||||
:id => 'attach_files_link' %></p>
|
|
||||||
<%= form_tag({ :controller => 'documents', :action => 'add_attachment', :id => @document }, :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) %>
|
|
||||||
<% end %>
|
|
||||||
<% end %>
|
|
||||||
|
|
||||||
<% html_title @document.title -%>
|
|
||||||
</div>
|
</div>
|
||||||
|
|
|
@ -37,7 +37,7 @@
|
||||||
:description_placeholder => l(:label_optional_description)
|
:description_placeholder => l(:label_optional_description)
|
||||||
} %>
|
} %>
|
||||||
<!--<input type="submit" name="" value="上传文件" class="f_l ml10" style="width:80px; height:26px;">-->
|
<!--<input type="submit" name="" value="上传文件" class="f_l ml10" style="width:80px; height:26px;">-->
|
||||||
<label class="f_l ml10 c_grey">
|
<label class="f_l ml10 c_grey" style=" margin-top: 3px;">
|
||||||
<span id="upload_file_count">
|
<span id="upload_file_count">
|
||||||
<%= l(:label_no_file_uploaded)%>
|
<%= l(:label_no_file_uploaded)%>
|
||||||
</span>
|
</span>
|
||||||
|
|
|
@ -11,7 +11,7 @@
|
||||||
<%= 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, @project) %>
|
<%= 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, @project) %>
|
||||||
<%= link_to(l(:label_relation_files), 'javascript:void(0);', :onclick => "$('#upload_file_div').slideUp();$('#relation_file_div').slideToggle();", :class => 'icon m5p5 button_submit') if User.current.allowed_to?(:manage_files, @project) %>
|
<%= link_to(l(:label_relation_files), 'javascript:void(0);', :onclick => "$('#upload_file_div').slideUp();$('#relation_file_div').slideToggle();", :class => 'icon m5p5 button_submit') if User.current.allowed_to?(:manage_files, @project) %>
|
||||||
<p></p>
|
<p></p>
|
||||||
<div id="upload_file_div" class="relation_file_div hidden">
|
<div id="upload_file_div" class="relation_file_div <%= !@flag.nil?&&@flag=="true" ? '' : 'hidden'%>">
|
||||||
<%= render :partial => 'new', locals: {project: @project} %>
|
<%= render :partial => 'new', locals: {project: @project} %>
|
||||||
</div>
|
</div>
|
||||||
<div id="relation_file_div" class="relation_file_div hidden">
|
<div id="relation_file_div" class="relation_file_div hidden">
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
<div class="project_r_h">
|
<div class="project_r_h">
|
||||||
<h2 class="project_h2"><%=l(:label_attachment_new)%></h2>
|
<h2 class="project_h2"><%= l(:label_course_file) %></h2>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<%= error_messages_for 'attachment' %>
|
<%= error_messages_for 'attachment' %>
|
||||||
|
@ -8,11 +8,10 @@
|
||||||
|
|
||||||
<% if @versions.any? %>
|
<% if @versions.any? %>
|
||||||
<p><label for="version_id"><%=l(:field_version)%></label>
|
<p><label for="version_id"><%=l(:field_version)%></label>
|
||||||
<%= select_tag "version_id", content_tag('option', '') +
|
<%= select_tag "version_id", content_tag('option', '') + options_from_collection_for_select(@versions, "id", "name") %></p>
|
||||||
options_from_collection_for_select(@versions, "id", "name") %></p>
|
|
||||||
<% end %>
|
<% end %>
|
||||||
|
|
||||||
<p><label><%=l(:label_attachment_plural)%></label><%= render :partial => 'attachments/form' %></p>
|
<p><label><%= l(:label_attachment_plural) %></label><%= render :partial => 'attachments/form' %></p>
|
||||||
</div>
|
</div>
|
||||||
<%= submit_tag l(:button_add) %>
|
<%= submit_tag l(:button_add) %>
|
||||||
<% end %>
|
<% end %>
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
$(function(){
|
$(function(){
|
||||||
$("#button1").click(function(){
|
$("#button1").click(function(){
|
||||||
myTips("您的意见已经反馈到公共贴吧的新手讨论吧,我们会第一时间解决您的问题,谢谢支持!","success");
|
myTips(<%= l(:label_forums_feedback_success)%>,"success");
|
||||||
});
|
});
|
||||||
|
|
||||||
})
|
})
|
|
@ -1,13 +1,13 @@
|
||||||
<%= form_tag({:controller => 'homework_attach', :action => 'add_jour_reply'}, :remote => true) do %>
|
<%= form_tag({:controller => 'homework_attach', :action => 'add_jour_reply'}, :remote => true) do %>
|
||||||
<%= text_area_tag 'user_notes', "", :class => 'noline',
|
<%= text_area_tag 'user_notes', "", :class => 'noline',
|
||||||
:style => "resize: none;", :rows => 4,
|
:style => "resize: none;", :rows => 4,
|
||||||
:placeholder => l(:label_projects_feedback_respond_content),
|
:placeholder => l(:label_feedback_respond_content),
|
||||||
:maxlength => 250 %>
|
:maxlength => 250 %>
|
||||||
<span style="float: left; margin-top: 1px; margin-right: 4px;"></span>
|
<span style="float: left; margin-top: 1px; margin-right: 4px;"></span>
|
||||||
<%= hidden_field_tag 'reference_id', params[:reference_id], :value => journal.id %>
|
<%= hidden_field_tag 'reference_id', params[:reference_id], :value => journal.id %>
|
||||||
<%= hidden_field_tag 'reference_user_id', params[:reference_user_id], :value => m_reply_id.user.id %>
|
<%= hidden_field_tag 'reference_user_id', params[:reference_user_id], :value => m_reply_id.user.id %>
|
||||||
<%= hidden_field_tag 'reference_message_id', params[:reference_message_id], :value => m_reply_id.id %>
|
<%= hidden_field_tag 'reference_message_id', params[:reference_message_id], :value => m_reply_id.id %>
|
||||||
<%= submit_tag l(:button_projects_feedback_respond),
|
<%= submit_tag l(:button_feedback_respond),
|
||||||
:name => nil , :class => "enterprise", :style => "float: right; margin-top: 1px; margin-right: 4px;"%>
|
:name => nil , :class => "enterprise", :style => "float: right; margin-top: 1px; margin-right: 4px;"%>
|
||||||
|
|
||||||
<% end %>
|
<% end %>
|
|
@ -25,7 +25,7 @@
|
||||||
:homework_id =>homework.id },
|
:homework_id =>homework.id },
|
||||||
:remote => true, :confirm => l(:text_are_you_sure), :title => l(:button_delete)) %>
|
:remote => true, :confirm => l(:text_are_you_sure), :title => l(:button_delete)) %>
|
||||||
<% end %>
|
<% end %>
|
||||||
<%= link_to l(:label_projects_feedback_respond),'',
|
<%= link_to l(:button_reply),'',
|
||||||
{:focus => 'project_respond', :onclick => "toggleAndSettingWordsVal($('##{ids}'), $('##{ids} textarea'), ''); $('##{ids} textarea') ;return false;"}
|
{:focus => 'project_respond', :onclick => "toggleAndSettingWordsVal($('##{ids}'), $('##{ids} textarea'), ''); $('##{ids} textarea') ;return false;"}
|
||||||
%>
|
%>
|
||||||
</span>
|
</span>
|
||||||
|
|
|
@ -11,7 +11,7 @@
|
||||||
<div class="recall_con">
|
<div class="recall_con">
|
||||||
<% id = 'project_respond_form_'+ reply.id.to_s %>
|
<% id = 'project_respond_form_'+ reply.id.to_s %>
|
||||||
<%= link_to reply.user.name, user_path(reply.user) %>
|
<%= link_to reply.user.name, user_path(reply.user) %>
|
||||||
回复
|
<%= l(:label_reply_to)%>
|
||||||
<% parent_jour = JournalsForMessage.find reply.m_reply_id %>
|
<% parent_jour = JournalsForMessage.find reply.m_reply_id %>
|
||||||
<% if show_name && parent_jour %>
|
<% if show_name && parent_jour %>
|
||||||
<%= link_to parent_jour.user.name, user_path(parent_jour.user) %>
|
<%= link_to parent_jour.user.name, user_path(parent_jour.user) %>
|
||||||
|
@ -34,7 +34,7 @@
|
||||||
:remote => true, :confirm => l(:text_are_you_sure), :method => 'delete', :class => "delete", :title => l(:button_delete)) %>
|
:remote => true, :confirm => l(:text_are_you_sure), :method => 'delete', :class => "delete", :title => l(:button_delete)) %>
|
||||||
<% end %>
|
<% end %>
|
||||||
<% if reply_allow %>
|
<% if reply_allow %>
|
||||||
<%= link_to l(:label_projects_feedback_respond),'',
|
<%= link_to l(:button_reply),'',
|
||||||
{:focus => 'project_respond', :onclick => "toggleAndSettingWordsVal($('##{id}'), $('##{id} textarea'), ''); return false;"} %>
|
{:focus => 'project_respond', :onclick => "toggleAndSettingWordsVal($('##{id}'), $('##{id} textarea'), ''); return false;"} %>
|
||||||
<% end %> <!-- #{l(:label_reply_plural)} #{m_reply_id.user.name}: -->
|
<% end %> <!-- #{l(:label_reply_plural)} #{m_reply_id.user.name}: -->
|
||||||
</span>
|
</span>
|
||||||
|
|
|
@ -42,7 +42,7 @@
|
||||||
<% ids = 'project_respond_form_'+ jour.id.to_s%>
|
<% ids = 'project_respond_form_'+ jour.id.to_s%>
|
||||||
<div class="ping_disfoot">
|
<div class="ping_disfoot">
|
||||||
<span>
|
<span>
|
||||||
<%= link_to l(:label_projects_feedback_respond),'',
|
<%= link_to l(:label_newfeedback_respond),'',
|
||||||
{:focus => 'project_respond', :onclick => "toggleAndSettingWordsVal($('##{ids}'), $('##{ids} textarea'), ''); $('##{ids} textarea') ;return false;"}
|
{:focus => 'project_respond', :onclick => "toggleAndSettingWordsVal($('##{ids}'), $('##{ids} textarea'), ''); $('##{ids} textarea') ;return false;"}
|
||||||
%>
|
%>
|
||||||
</span>
|
</span>
|
||||||
|
|
|
@ -65,7 +65,7 @@
|
||||||
</span>
|
</span>
|
||||||
<% ids = 'project_respond_form_'+ journal.id.to_s%>
|
<% ids = 'project_respond_form_'+ journal.id.to_s%>
|
||||||
<span>
|
<span>
|
||||||
<%= link_to l(:label_projects_feedback_respond),'',
|
<%= link_to l(:button_reply),'',
|
||||||
{:focus => 'project_respond', :onclick => "toggleAndSettingWordsVal($('##{ids}'), $('##{ids} textarea'), '#{l(:label_reply_plural)} #{journal.user.name}: '); $('##{ids} textarea') ;return false;"}
|
{:focus => 'project_respond', :onclick => "toggleAndSettingWordsVal($('##{ids}'), $('##{ids} textarea'), '#{l(:label_reply_plural)} #{journal.user.name}: '); $('##{ids} textarea') ;return false;"}
|
||||||
%>
|
%>
|
||||||
<% if journal.user==User.current|| User.current.admin? %>
|
<% if journal.user==User.current|| User.current.admin? %>
|
||||||
|
|
|
@ -2,7 +2,7 @@
|
||||||
<h2 class="project_h2">问题跟踪</h2>
|
<h2 class="project_h2">问题跟踪</h2>
|
||||||
</div>
|
</div>
|
||||||
<div class="problem_top">
|
<div class="problem_top">
|
||||||
<% if @project.enabled_modules.where("name = 'issue_tracking'").count > 0 %>
|
<% unless @project.enabled_modules.where("name = 'issue_tracking'").empty? %>
|
||||||
<span>
|
<span>
|
||||||
<% if User.current.member_of?(@project) %>
|
<% if User.current.member_of?(@project) %>
|
||||||
<%= link_to l(:label_issue_new), {:controller => 'issues', :action => 'new', :copy_from => nil}, :param => :project_id, :caption => :label_issue_new,
|
<%= link_to l(:label_issue_new), {:controller => 'issues', :action => 'new', :copy_from => nil}, :param => :project_id, :caption => :label_issue_new,
|
||||||
|
|
|
@ -5,4 +5,6 @@
|
||||||
per_page: number of items to fetch per page
|
per_page: number of items to fetch per page
|
||||||
remote: data-remote
|
remote: data-remote
|
||||||
-%>
|
-%>
|
||||||
|
<span class="spacer">
|
||||||
|
<%= raw(t 'views.pagination.truncate') %>
|
||||||
|
</span>
|
|
@ -62,7 +62,7 @@
|
||||||
$.fn.fix = function(options){
|
$.fn.fix = function(options){
|
||||||
var defaults = {
|
var defaults = {
|
||||||
float : 'right',
|
float : 'right',
|
||||||
minStatue : false,
|
minStatue : true,
|
||||||
skin : 'blue',
|
skin : 'blue',
|
||||||
durationTime : 1000
|
durationTime : 1000
|
||||||
}
|
}
|
||||||
|
@ -107,7 +107,7 @@
|
||||||
|
|
||||||
$(function(){
|
$(function(){
|
||||||
$("#button1").click(function(){
|
$("#button1").click(function(){
|
||||||
myTips("您的意见已经反馈到公共贴吧的新手讨论吧,我们会第一时间解决您的问题,谢谢支持!","success");
|
myTips("<%= l(:label_feedback_success) %>","success");
|
||||||
});
|
});
|
||||||
|
|
||||||
})
|
})
|
||||||
|
@ -153,7 +153,7 @@ function cookieget(n)
|
||||||
|
|
||||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||||
<head>
|
<head>
|
||||||
<title>意见反馈</title>
|
<title><%= l(:label_feedback) %></title>
|
||||||
|
|
||||||
</head>
|
</head>
|
||||||
<body style="height:auto" >
|
<body style="height:auto" >
|
||||||
|
@ -161,15 +161,15 @@ function cookieget(n)
|
||||||
<div class="scrollsidebar" id="scrollsidebar" style="float: right">
|
<div class="scrollsidebar" id="scrollsidebar" style="float: right">
|
||||||
<div class="side_content">
|
<div class="side_content">
|
||||||
<div class="side_list">
|
<div class="side_list">
|
||||||
<div class="side_title"><a title="意见反馈" class="close_btn"><span><%= l(:label_feedback) %></span></a></div>
|
<div class="side_title"><a title="<%= l(:label_feedback) %>" class="close_btn"><span><%= l(:label_feedback) %></span></a></div>
|
||||||
<div class="side_center">
|
<div class="side_center">
|
||||||
<div class="custom_service">
|
<div class="custom_service">
|
||||||
<% get_memo %>
|
<% get_memo %>
|
||||||
<%= form_for(@new_memo, :url => create_feedback_forum_path(@public_forum)) do |f| %>
|
<%= form_for(@new_memo, :url => create_feedback_forum_path(@public_forum)) do |f| %>
|
||||||
<%= f.text_area :subject, :class => "opnionText",:placeholder => "有什么想说的,尽管来咆哮吧~~"%>
|
<%= f.text_area :subject, :class => "opnionText", :placeholder => l(:label_feedback_tips) %>
|
||||||
<%= f.hidden_field :content, :required => true ,:value=>'该贴来自用户反馈!'%>
|
<%= f.hidden_field :content, :required => true , :value => l(:label_feedback_value) %>
|
||||||
<%#= f.submit :value => l(:label_memo_create), :class => "opnionButton", :id => "button1" %>
|
<%#= f.submit :value => l(:label_memo_create), :class => "opnionButton", :id => "button1" %>
|
||||||
<a href="javascript:void(0);" class="opnionButton" style=" color:#fff;" id="" onclick="f_submit();">提 交</a>
|
<a href="javascript:void(0);" class="opnionButton" style=" color:#fff;" id="" onclick="f_submit();"><%= l(:label_submit)%></a>
|
||||||
<% end %>
|
<% end %>
|
||||||
</div>
|
</div>
|
||||||
<div class="msgserver">
|
<div class="msgserver">
|
||||||
|
@ -180,7 +180,7 @@ function cookieget(n)
|
||||||
<div class="side_bottom"></div>
|
<div class="side_bottom"></div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="show_btn"><span>提交</span></div>
|
<div class="show_btn"><span><%= l(:label_submit)%></span></div>
|
||||||
</div>
|
</div>
|
||||||
<!-- ?ú?? ?á?? -->
|
<!-- ?ú?? ?á?? -->
|
||||||
<script type="text/javascript">
|
<script type="text/javascript">
|
||||||
|
|
|
@ -7,7 +7,7 @@
|
||||||
<tr>
|
<tr>
|
||||||
<td class="info_font" style="width: 240px;" rowspan="2">
|
<td class="info_font" style="width: 240px;" rowspan="2">
|
||||||
<a href="http://<%= Setting.host_course%>" style="color: #15bccf;">
|
<a href="http://<%= Setting.host_course%>" style="color: #15bccf;">
|
||||||
高校课程实践社区
|
<%= l(:label_courses_community)%>
|
||||||
</a>
|
</a>
|
||||||
</td>
|
</td>
|
||||||
<td style="width: auto; color: #15bccf">
|
<td style="width: auto; color: #15bccf">
|
||||||
|
|
|
@ -154,7 +154,7 @@
|
||||||
<!--description-->
|
<!--description-->
|
||||||
<div class="inf_user_context">
|
<div class="inf_user_context">
|
||||||
<div class="font_title_left">
|
<div class="font_title_left">
|
||||||
<%= l(:label_project_overview) %>
|
<%= l(:label_overview) %>
|
||||||
</div>
|
</div>
|
||||||
<div style="padding-bottom: 8px">
|
<div style="padding-bottom: 8px">
|
||||||
<% if @bid.description.size>0 %>
|
<% if @bid.description.size>0 %>
|
||||||
|
|
|
@ -37,7 +37,7 @@
|
||||||
<tr>
|
<tr>
|
||||||
<td class="info_font" style="width: 240px;" rowspan="2">
|
<td class="info_font" style="width: 240px;" rowspan="2">
|
||||||
<a href="http://<%= Setting.host_course%>" style="color: #15bccf;">
|
<a href="http://<%= Setting.host_course%>" style="color: #15bccf;">
|
||||||
高校课程实践社区
|
<%= l(:label_courses_community)%>
|
||||||
</a>
|
</a>
|
||||||
</td>
|
</td>
|
||||||
<td style="color: #15bccf">
|
<td style="color: #15bccf">
|
||||||
|
@ -86,7 +86,7 @@
|
||||||
|
|
||||||
<td>
|
<td>
|
||||||
<p class="top-content-list">
|
<p class="top-content-list">
|
||||||
<%= link_to "主页", home_path %>
|
<%= link_to l(:field_homepage), home_path %>
|
||||||
>
|
>
|
||||||
<a href="http://<%= Setting.host_course%>" class="link_other_item">
|
<a href="http://<%= Setting.host_course%>" class="link_other_item">
|
||||||
<%=l(:label_courses_management_platform)%>
|
<%=l(:label_courses_management_platform)%>
|
||||||
|
@ -230,7 +230,7 @@
|
||||||
</td>
|
</td>
|
||||||
<td class="font_lighter_sidebar">
|
<td class="font_lighter_sidebar">
|
||||||
<%= @course.time %>
|
<%= @course.time %>
|
||||||
<%= @course.term %>
|
<%= get_course_term_locales @course %>
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
<!-- end -->
|
<!-- end -->
|
||||||
|
|
|
@ -29,7 +29,7 @@
|
||||||
<div class="top-content">
|
<div class="top-content">
|
||||||
<table>
|
<table>
|
||||||
<tr>
|
<tr>
|
||||||
<td class="info_font" style="width: 240px; color: #15bccf">软件项目托管社区</td>
|
<td class="info_font" style="width: 240px; color: #15bccf"><%= l(:label_projects_community)%></td>
|
||||||
<td style="width: 430px; color: #15bccf"><strong><%= l(:label_user_location) %> : </strong></td>
|
<td style="width: 430px; color: #15bccf"><strong><%= l(:label_user_location) %> : </strong></td>
|
||||||
<td rowspan="2" width="250px">
|
<td rowspan="2" width="250px">
|
||||||
<div class="top-content-search">
|
<div class="top-content-search">
|
||||||
|
|
|
@ -50,7 +50,7 @@
|
||||||
<tr>
|
<tr>
|
||||||
<td class="info_font" style="width: 240px;" rowspan="2">
|
<td class="info_font" style="width: 240px;" rowspan="2">
|
||||||
<a href="http://<%= Setting.host_course%>" style="color: #15bccf;">
|
<a href="http://<%= Setting.host_course%>" style="color: #15bccf;">
|
||||||
高校课程实践社区
|
<%= l(:label_courses_community)%>
|
||||||
</a>
|
</a>
|
||||||
</td>
|
</td>
|
||||||
<td style="width: auto; color: #15bccf">
|
<td style="width: auto; color: #15bccf">
|
||||||
|
|
|
@ -33,7 +33,7 @@
|
||||||
<div class="top-content">
|
<div class="top-content">
|
||||||
<table>
|
<table>
|
||||||
<tr>
|
<tr>
|
||||||
<td class="info_font" style="width: 240px; color: #15bccf">软件项目托管社区</td>
|
<td class="info_font" style="width: 240px; color: #15bccf"><%= l(:label_projects_community)%></td>
|
||||||
<td style="width: 430px; color: #15bccf"><strong><%= l(:label_user_location) %> : </strong></td>
|
<td style="width: 430px; color: #15bccf"><strong><%= l(:label_user_location) %> : </strong></td>
|
||||||
<td rowspan="2" width="250px">
|
<td rowspan="2" width="250px">
|
||||||
<div class="top-content-search">
|
<div class="top-content-search">
|
||||||
|
|
|
@ -174,7 +174,7 @@
|
||||||
|
|
||||||
<div class="inf_user_context" style="line-height: normal;margin-top: 10px;">
|
<div class="inf_user_context" style="line-height: normal;margin-top: 10px;">
|
||||||
<div class="font_title_left">
|
<div class="font_title_left">
|
||||||
<%= l(:label_project_overview) %>
|
<%= l(:label_overview) %>
|
||||||
</div>
|
</div>
|
||||||
<div style="padding-bottom: 8px">
|
<div style="padding-bottom: 8px">
|
||||||
<% if @contest.description.size>0 %>
|
<% if @contest.description.size>0 %>
|
||||||
|
|
|
@ -86,7 +86,7 @@
|
||||||
|
|
||||||
<div class="inf_user_context">
|
<div class="inf_user_context">
|
||||||
<div class="font_title_left">
|
<div class="font_title_left">
|
||||||
<%= l(:label_project_overview) %>
|
<%= l(:label_overview) %>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div style="padding-bottom: 8px">
|
<div style="padding-bottom: 8px">
|
||||||
|
|
|
@ -29,7 +29,7 @@
|
||||||
<div class="top-content">
|
<div class="top-content">
|
||||||
<table>
|
<table>
|
||||||
<tr>
|
<tr>
|
||||||
<td class="info_font" style="width: 240px;" rowspan="2"><a href="http://<%= Setting.host_name%>" style="color: #15bccf;"> 软件项目托管社区 </a></td>
|
<td class="info_font" style="width: 240px;" rowspan="2"><a href="http://<%= Setting.host_name%>" style="color: #15bccf;"> <%= l(:label_projects_community)%> </a></td>
|
||||||
<td style="width: 430px; color: #15bccf"><strong><%= l(:label_user_location) %> : </strong></td>
|
<td style="width: 430px; color: #15bccf"><strong><%= l(:label_user_location) %> : </strong></td>
|
||||||
<td rowspan="2" width="250px">
|
<td rowspan="2" width="250px">
|
||||||
<div class="top-content-search">
|
<div class="top-content-search">
|
||||||
|
@ -39,8 +39,7 @@
|
||||||
var name = $.trim($("#name").val());
|
var name = $.trim($("#name").val());
|
||||||
if(name.length == 0)
|
if(name.length == 0)
|
||||||
{
|
{
|
||||||
$("#project_name_span").text("<%= l(:label_search_conditions_not_null) %>
|
$("#project_name_span").text("<%= l(:label_search_conditions_not_null) %>");
|
||||||
");
|
|
||||||
$("#project_name_span").css('color','#ff0000');
|
$("#project_name_span").css('color','#ff0000');
|
||||||
$("#project_name_span").focus();
|
$("#project_name_span").focus();
|
||||||
return false;
|
return false;
|
||||||
|
@ -51,12 +50,22 @@
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// 项目描述超过展开
|
||||||
|
$(function(){
|
||||||
|
$(".subNav").click(function(){
|
||||||
|
$(this).toggleClass("currentDd").siblings(".subNav").removeClass("currentDd")
|
||||||
|
$(this).toggleClass("currentDt").siblings(".subNav").removeClass("currentDt")
|
||||||
|
|
||||||
|
// 修改数字控制速度, slideUp(500)控制卷起速度
|
||||||
|
$(this).next(".navContent").slideToggle(500).siblings(".navContent").slideUp(500);
|
||||||
|
})
|
||||||
|
})
|
||||||
|
|
||||||
function submitSerch()
|
function show_more_msg()
|
||||||
{
|
{$("#course_description").toggleClass("course_description_none");}
|
||||||
if(regexName()){$("#project_search_form").submit();}
|
|
||||||
}
|
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<%= form_tag(projects_search_path, :method => :get, :id => "project_search_form") do %>
|
<%= form_tag(projects_search_path, :method => :get, :id => "project_search_form") do %>
|
||||||
<%= text_field_tag 'name', params[:name], :size => 20, :onkeyup => "regexName();", :style => "float:left" %>
|
<%= text_field_tag 'name', params[:name], :size => 20, :onkeyup => "regexName();", :style => "float:left" %>
|
||||||
<%= hidden_field_tag 'project_type', params[:project_type] %>
|
<%= hidden_field_tag 'project_type', params[:project_type] %>
|
||||||
|
@ -78,17 +87,6 @@
|
||||||
</div>
|
</div>
|
||||||
<!-- 左边侧栏内容 -->
|
<!-- 左边侧栏内容 -->
|
||||||
<div id="sidebar">
|
<div id="sidebar">
|
||||||
<script type="text/javascript">
|
|
||||||
$(function() {
|
|
||||||
$(".subNav").click(function() {
|
|
||||||
$(this).toggleClass("currentDd").siblings(".subNav").removeClass("currentDd")
|
|
||||||
$(this).toggleClass("currentDt").siblings(".subNav").removeClass("currentDt")
|
|
||||||
|
|
||||||
// 修改数字控制速度, slideUp(500)控制卷起速度
|
|
||||||
$(this).next(".navContent").slideToggle(500).siblings(".navContent").slideUp(500);
|
|
||||||
})
|
|
||||||
})
|
|
||||||
</script>
|
|
||||||
<div class="project_left">
|
<div class="project_left">
|
||||||
<div class="project_info">
|
<div class="project_info">
|
||||||
<div class="pr_info_logo fl mr10 mb5">
|
<div class="pr_info_logo fl mr10 mb5">
|
||||||
|
@ -103,67 +101,82 @@
|
||||||
</div>
|
</div>
|
||||||
<!-- 项目得分 -->
|
<!-- 项目得分 -->
|
||||||
<div class="cl"></div>
|
<div class="cl"></div>
|
||||||
<div class="pr_info_name><%= link_to @project.name, project_path(@project) %>
|
<div class="pr_info_name">
|
||||||
|
<%= link_to @project.name, project_path(@project) %>
|
||||||
<% if !@project.is_public? %>
|
<% if !@project.is_public? %>
|
||||||
<span class="img_private ">私有</span>
|
<span class="img_private"><%= l(:label_private)%></span>
|
||||||
<% end %>
|
<% end %>
|
||||||
</div>
|
</div>
|
||||||
<div class="cl"></div>
|
<div class="cl"></div>
|
||||||
<div class="pr_info_score">
|
<div class="pr_info_score">
|
||||||
<% if @project.project_type == 0 %>
|
<% if @project.project_type == 0 %>
|
||||||
<%= l(:label_project_grade)%> :
|
<%= l(:label_project_score)%> :
|
||||||
<%= link_to(format("%.2f" ,project_scores(@project) ).to_i, {:controller => 'projects',
|
<%= link_to(format("%.2f" ,project_scores(@project) ).to_i, {:controller => 'projects',
|
||||||
:action => 'show_projects_score',
|
:action => 'show_projects_score',
|
||||||
:remote => true,
|
:remote => true,
|
||||||
:id => @project.id },
|
:id => @project.id },
|
||||||
:style => "color: #EC6300;")%>
|
:style => "color: #EC6300;") %>
|
||||||
<% end %>
|
<% end %>
|
||||||
</div>
|
</div>
|
||||||
<div class="pr_info_foot">
|
<div class="pr_info_foot">
|
||||||
<%= l(:label_member) %>(<a class="info_foot_num" href="#" target="_blank"><%= link_to "#{@project.members.count}", project_member_path(@project) %></a>)
|
<%= l(:label_member) %>(<span class="info_foot_num" >
|
||||||
<span>| </span><%= l(:label_user_watchered) %>(<a class="info_foot_num" href="#" target="_blank"><%= link_to @project.watcher_users.count, :controller=>"projects", :action=>"watcherlist", :id => @project %></a>)
|
<%= link_to "#{@project.members.count}", project_member_path(@project), :style => "color:#3CA5C6;font-weight:bold" %></span>)
|
||||||
<span>| </span><%= l(:project_module_attachments) %>(<a class="info_foot_num" href="#" target="_blank"><%= link_to "#{@project.attachments.count}", project_files_path(@project) %></a>)</div>
|
<span>| </span>
|
||||||
|
<%= l(:label_user_watcher) %>(<span class="info_foot_num">
|
||||||
|
<%= link_to "#{@project.watcher_users.count}", {:controller=>"projects", :action=>"watcherlist", :id => @project.id}, :style => "color:#3CA5C6;font-weight:bold" %></span>)
|
||||||
|
<span>| </span>
|
||||||
|
<%= l(:project_module_attachments) %>(<span class="info_foot_num" >
|
||||||
|
<%= link_to "#{@project.attachments.count}", project_files_path(@project), :style => "color:#3CA5C6;font-weight:bold" %></a>)</div>
|
||||||
<div class="cl"></div>
|
<div class="cl"></div>
|
||||||
</div><!--项目信息 end-->
|
</div><!--项目信息 end-->
|
||||||
|
|
||||||
<div class="subNavBox">
|
<div class="subNavBox">
|
||||||
<% if User.current.member_of?(@project) %>
|
<% if User.current.member_of?(@project) %>
|
||||||
<div class="subNav currentDd currentDt subNav_jiantou">邀请</div>
|
<div class="subNav currentDd currentDt subNav_jiantou"><%= l(:label_invite)%></div>
|
||||||
<ul class="navContent " style="display:block; padding-left: 0px; margin-top:0px;">
|
<ul class="navContent " style="display:block; padding-left: 0px; margin-top:0px;">
|
||||||
<li><%= link_to "发送邮件邀请新用户", :controller=>"projects", :action=>"invite_members_by_mail", :id => @project %></li>
|
<li><%= link_to l(:label_invite_new_user), :controller=>"projects", :action=>"invite_members_by_mail", :id => @project %></li>
|
||||||
<li><%= link_to "邀请Trustie注册用户", :controller=>"projects", :action=>"invite_members", :id => @project %></li>
|
<li><%= link_to l(:label_invite_trustie_user), :controller=>"projects", :action=>"invite_members", :id => @project %></li>
|
||||||
</ul>
|
</ul>
|
||||||
<% end %>
|
<% end %>
|
||||||
<div class="subNav">
|
<div class="subNav">
|
||||||
<%= link_to l(:label_activity), {:controller => 'projects', :action => 'show', :id => @project.id}, :style => "color:#3CA5C6" %>
|
<%= link_to l(:label_activity), {:controller => 'projects', :action => 'show', :id => @project.id}, :style => "color:#3CA5C6" %>
|
||||||
|
<span class="subnav_num">(<%= ForgeActivity.where("project_id = ?", @project.id).count %>)</span>
|
||||||
</div>
|
</div>
|
||||||
|
<% unless @project.enabled_modules.where("name = 'issue_tracking'").empty? %>
|
||||||
<div class="subNav">
|
<div class="subNav">
|
||||||
<%= link_to l(:label_issue_tracking), project_issues_path(@project), :style => "color:#3CA5C6" %><span class="subnav_num">(<%= @project.issues.count %>)</span>
|
<%= link_to l(:label_issue_tracking), project_issues_path(@project), :style => "color:#3CA5C6" %><span class="subnav_num">(<%= @project.issues.count %>)</span>
|
||||||
<span>
|
<span>
|
||||||
<% if User.current.logged? && User.current.member_of?(@project) %>
|
<% if User.current.member_of?(@project) %>
|
||||||
<%= link_to "+发布问题", new_project_issue_path(@project) , :style => "font-size:12px;color:#fff; padding:1px 3px 3px 3px;height:18px;margin-top:3px;background:#28be6c;float:right;line-height:20px;" %></span>
|
<%= link_to "+"+l(:label_release_issue), new_project_issue_path(@project) , :style => "font-size:12px;color:#fff; padding:1px 3px 3px 3px;height:18px;margin-top:3px;background:#28be6c;float:right;line-height:20px;" %></span>
|
||||||
<% end %>
|
|
||||||
</div>
|
|
||||||
<div class="subNav">
|
|
||||||
<%= link_to "讨论区", project_boards_path(@project), :style => "color:#3CA5C6" %>
|
|
||||||
<span class="subnav_num">(<%= @project.boards.first.topics.count %>)</span>
|
|
||||||
<% if User.current.logged? && User.current.member_of?(@project) %>
|
|
||||||
<%= link_to "+发贴", new_board_message_path(@project.boards.first, true), :layout => 'base_projects',:style => "font-size:12px;color:#fff; padding:1px 3px 3px 3px;height:18px;margin-top:4px;background:#28be6c;float:right;line-height:20px;" %>
|
|
||||||
<% end %>
|
|
||||||
</div>
|
|
||||||
<div class="subNav">
|
|
||||||
<%= link_to l(:label_course_file), project_files_path(@project), :style => "color:#3CA5C6" %><span class="subnav_num">(<%= @project.attachments.count %>)</span>
|
|
||||||
<% if User.current.logged? && User.current.member_of?(@project) %>
|
|
||||||
<%= link_to "+上传资源", new_project_file_path(@project),:style => "font-size:12px;color:#fff; padding:1px 3px 3px 3px;height:18px;margin-top:3px;background:#28be6c;float:right;line-height:20px;" %>
|
|
||||||
<% end %>
|
|
||||||
</div>
|
|
||||||
<div class="subNav">
|
|
||||||
<%= link_to l(:field_user_active_changeset), {:controller => 'repositories', :action => 'show', :id => @project.id}, :style => "color:#3CA5C6" %>
|
|
||||||
<span class="subnav_num">(<%= @project.repositories.count %>)</span>
|
|
||||||
<% if User.current.logged? && User.current.member_of?(@project) %>
|
|
||||||
<%= link_to "+创建版本库", new_project_repository_path(@project),:style => "font-size:12px;color:#fff; padding:1px 3px 3px 3px;height:18px;margin-top:3px;background:#28be6c;float:right;line-height:20px;" %>
|
|
||||||
<% end %>
|
<% end %>
|
||||||
</div>
|
</div>
|
||||||
|
<% end %>
|
||||||
|
<% unless @project.enabled_modules.where("name = 'boards'").empty? %>
|
||||||
|
<div class="subNav">
|
||||||
|
<%= link_to l(:project_module_boards), project_boards_path(@project), :style => "color:#3CA5C6" %>
|
||||||
|
<span class="subnav_num">(<%= @project.boards.first.topics.count %>)</span>
|
||||||
|
<% if User.current.member_of?(@project) %>
|
||||||
|
<%= link_to "+"+l(:project_module_boards_post), project_boards_path(@project, :flag => true), :layout => 'base_projects',:style => "font-size:12px;color:#fff; padding:1px 3px 3px 3px;height:18px;margin-top:4px;background:#28be6c;float:right;line-height:20px;" %>
|
||||||
|
<% end %>
|
||||||
|
</div>
|
||||||
|
<% end%>
|
||||||
|
<% unless @project.enabled_modules.where("name = 'files'").empty? %>
|
||||||
|
<div class="subNav">
|
||||||
|
<%= link_to l(:label_course_file), project_files_path(@project), :style => "color:#3CA5C6" %><span class="subnav_num">(<%= @project.attachments.count %>)</span>
|
||||||
|
<% if User.current.member_of?(@project) %>
|
||||||
|
<%= link_to "+"+l(:label_upload_files), project_files_path(@project,:flag => true),:style => "font-size:12px;color:#fff; padding:1px 3px 3px 3px;height:18px;margin-top:3px;background:#28be6c;float:right;line-height:20px;" %>
|
||||||
|
<% end %>
|
||||||
|
</div>
|
||||||
|
<% end%>
|
||||||
|
<% unless @project.enabled_modules.where("name = 'repository'").empty? %>
|
||||||
|
<div class="subNav">
|
||||||
|
<%= link_to l(:project_module_repository), {:controller => 'repositories', :action => 'show', :id => @project.id}, :style => "color:#3CA5C6" %>
|
||||||
|
<span class="subnav_num">(<%= @project.repositories.count %>)</span>
|
||||||
|
<%# if User.current.member_of?(@project) %>
|
||||||
|
<%#= link_to "+"+l(:project_module_create_repository), new_project_repository_path(@project),:style => "font-size:12px;color:#fff; padding:1px 3px 3px 3px;height:18px;margin-top:3px;background:#28be6c;float:right;line-height:20px;" %>
|
||||||
|
<%# end %>
|
||||||
|
</div>
|
||||||
|
<% end %>
|
||||||
|
|
||||||
<div class="subNav subNav_jiantou"><%= l(:label_more) %></div>
|
<div class="subNav subNav_jiantou"><%= l(:label_more) %></div>
|
||||||
<ul class="navContent" style="padding-left: 0px">
|
<ul class="navContent" style="padding-left: 0px">
|
||||||
|
@ -171,14 +184,16 @@
|
||||||
</ul>
|
</ul>
|
||||||
</div><!--项目侧导航 end-->
|
</div><!--项目侧导航 end-->
|
||||||
<div class="cl"></div>
|
<div class="cl"></div>
|
||||||
|
<!-- 项目描述 -->
|
||||||
<div class="project_intro">
|
<div class="project_intro">
|
||||||
<h4 class="project_h4">项目简介:</h4><%= @project.description %>
|
<div id="course_description" class="course_description">
|
||||||
<div class="lg-foot">
|
<h4 ><%= l(:label_project_overview) %></h4><%= @project.description %>
|
||||||
展开更多信息 <span class="g-arr-down"><img src="/images/new_project/jiantou.jpg" width="12" height="6" /></span>
|
|
||||||
</div>
|
</div>
|
||||||
</div><!--项目简介 end-->
|
<div class="lg-foot" onclick="show_more_msg();"><%= l(:label_expend_information) %><span class="g-arr-down"><img src="/images/jiantou.jpg" width="12" height="6" /></span></div>
|
||||||
|
</div>
|
||||||
|
<!-- tag模块 -->
|
||||||
<div class="project_Label">
|
<div class="project_Label">
|
||||||
<h4 class="project_h4">标签:</h4>
|
<h4 class="project_h4"><%= l(:label_tag)%>:</h4>
|
||||||
<div class="tag_h" >
|
<div class="tag_h" >
|
||||||
<div class="user_tags">
|
<div class="user_tags">
|
||||||
<div id="tags">
|
<div id="tags">
|
||||||
|
|
|
@ -217,7 +217,7 @@
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
<% end %>
|
<% end %>
|
||||||
<% unless @user.user_extensions.location.empty?%>
|
<% unless @user.user_extensions.nil?&&@user.user_extensions.location.empty?%>
|
||||||
<tr>
|
<tr>
|
||||||
|
|
||||||
<td style=" float: right" width="70px">
|
<td style=" float: right" width="70px">
|
||||||
|
|
|
@ -1,12 +1,16 @@
|
||||||
<% if @project%>
|
<% if @project%>
|
||||||
$('#principals_for_new_member').html('<%= escape_javascript(render_principals_for_new_members(@project)) %>');
|
<% if @flag == "true"%>
|
||||||
|
$('#principals_for_new_member').html('<%= escape_javascript(render_project_members(@project)) %>');
|
||||||
|
<% else%>
|
||||||
|
$('#principals_for_new_member').html('<%= escape_javascript(render_principals_for_new_members(@project)) %>');
|
||||||
|
<% end%>
|
||||||
<% elsif @course%>
|
<% elsif @course%>
|
||||||
var checked = $("#principals input:checked").size();
|
var checked = $("#principals input:checked").size();
|
||||||
if(checked > 0)
|
if(checked > 0)
|
||||||
{
|
{
|
||||||
alert('翻页或搜索后将丢失当前选择的用户数据!');
|
alert('翻页或搜索后将丢失当前选择的用户数据!');
|
||||||
}
|
}
|
||||||
$('#principals_for_new_member').html('<%= escape_javascript(render_principals_for_new_course_members(@course)) %>');
|
$('#principals_for_new_member').html('<%= escape_javascript(render_principals_for_new_course_members(@course)) %>');
|
||||||
<%end%>
|
<%end%>
|
||||||
var collection=$("#principals_for_new_member").children("#principals").children("label");
|
var collection=$("#principals_for_new_member").children("#principals").children("label");
|
||||||
collection.css("text-overflow","ellipsis");
|
collection.css("text-overflow","ellipsis");
|
||||||
|
|
|
@ -8,7 +8,7 @@
|
||||||
<div class="top-content">
|
<div class="top-content">
|
||||||
<table>
|
<table>
|
||||||
<tr>
|
<tr>
|
||||||
<td class="info_font" style="width: 240px; color: #15bccf">软件项目托管社区</td>
|
<td class="info_font" style="width: 240px; color: #15bccf"><%= l(:label_projects_community)%></td>
|
||||||
<td style="width: 430px; color: #15bccf"><strong><%= l(:label_user_location) %> : </strong></td>
|
<td style="width: 430px; color: #15bccf"><strong><%= l(:label_user_location) %> : </strong></td>
|
||||||
<td rowspan="2" width="250px">
|
<td rowspan="2" width="250px">
|
||||||
<div class="top-content-search">
|
<div class="top-content-search">
|
||||||
|
@ -17,7 +17,7 @@
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<td style="padding-left: 8px"><%= link_to request.host()+"/forums", forums_path %></td>
|
<td style="padding-left: 8px"><%= link_to request.host()+"/forums", forums_path %></td>
|
||||||
<td><p class="top-content-list"><%=link_to l(:label_home),home_path %> > <%=link_to '公共贴吧', :controller => 'forums', :action => 'index' %> > <%=link_to @forum.name %></p></td>
|
<td><p class="top-content-list"><%=link_to l(:label_home),home_path %> > <%=link_to l(:label_forum), :controller => 'forums', :action => 'index' %> > <%=link_to @forum.name %></p></td>
|
||||||
</tr>
|
</tr>
|
||||||
</table>
|
</table>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
@ -64,7 +64,7 @@
|
||||||
$("#my_account_form").submit();
|
$("#my_account_form").submit();
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
parent.alert("姓氏和名字不能为空");
|
parent.alert("<%= l(:label_firstname_lastname_empty)%>");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
function get_options(value) {
|
function get_options(value) {
|
||||||
|
@ -320,7 +320,7 @@
|
||||||
|
|
||||||
<p style="width:400px;padding-left: 55px;"><label style="margin-right: 5px;" for="userProvince"><%= l(:label_location) %></label>
|
<p style="width:400px;padding-left: 55px;"><label style="margin-right: 5px;" for="userProvince"><%= l(:label_location) %></label>
|
||||||
<select onchange="showcity(this.value, document.getElementById('userCity'));" name="province" id="userProvince" class="location">
|
<select onchange="showcity(this.value, document.getElementById('userCity'));" name="province" id="userProvince" class="location">
|
||||||
<option value="">--请选择省份--</option>
|
<option value=""><%= l('location.select.click')%></option>
|
||||||
<option value="北京">北京</option>
|
<option value="北京">北京</option>
|
||||||
<option value="上海">上海</option>
|
<option value="上海">上海</option>
|
||||||
<option value="广东">广东</option>
|
<option value="广东">广东</option>
|
||||||
|
|
|
@ -19,7 +19,7 @@
|
||||||
<div>
|
<div>
|
||||||
|
|
||||||
<%= render :partial => 'news/news', :collection => @news %>
|
<%= render :partial => 'news/news', :collection => @news %>
|
||||||
<div class=more><%= link_to"更多",:contoller=>'project',:action=>'index'%></div>
|
<div class=more><%= link_to l(:button_more),:contoller=>'project',:action=>'index'%></div>
|
||||||
</div>
|
</div>
|
||||||
<% end %>
|
<% end %>
|
||||||
<%= call_hook(:view_projects_show_right, :project => @project) %>
|
<%= call_hook(:view_projects_show_right, :project => @project) %>
|
||||||
|
@ -47,7 +47,7 @@
|
||||||
</li> <% end -%>
|
</li> <% end -%>
|
||||||
</ul>
|
</ul>
|
||||||
<% end -%>
|
<% end -%>
|
||||||
<div class=more><%= link_to"更多",:contoller=>'project',:action=>'index'%></div>
|
<div class=more><%= link_to l(:button_more),:contoller=>'project',:action=>'index'%></div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -2,12 +2,12 @@
|
||||||
<%= text_area_tag 'project_respond', "",
|
<%= text_area_tag 'project_respond', "",
|
||||||
:class => 'noline', :required => true,
|
:class => 'noline', :required => true,
|
||||||
:style => "resize: none;", :rows => 3,
|
:style => "resize: none;", :rows => 3,
|
||||||
:placeholder => l(:label_projects_feedback_respond_content),
|
:placeholder => l(:label_feedback_respond_content),
|
||||||
:maxlength => 250 %>
|
:maxlength => 250 %>
|
||||||
|
|
||||||
<%= hidden_field_tag 'reference_id', params[:reference_id], :value => journal.id %>
|
<%= hidden_field_tag 'reference_id', params[:reference_id], :value => journal.id %>
|
||||||
<%= hidden_field_tag 'reference_user_id', params[:reference_user_id], :value => m_reply_id.user.id %>
|
<%= hidden_field_tag 'reference_user_id', params[:reference_user_id], :value => m_reply_id.user.id %>
|
||||||
<%= hidden_field_tag 'reference_message_id', params[:reference_message_id], :value => m_reply_id.id %>
|
<%= hidden_field_tag 'reference_message_id', params[:reference_message_id], :value => m_reply_id.id %>
|
||||||
<%= submit_tag l(:button_projects_feedback_respond), :name => nil , :class => "enterprise"%>
|
<%= submit_tag l(:button_feedback_respond), :name => nil , :class => "enterprise"%>
|
||||||
|
|
||||||
<%end%>
|
<%end%>
|
||||||
|
|
|
@ -4,27 +4,45 @@
|
||||||
<% end %>
|
<% end %>
|
||||||
</li>
|
</li>
|
||||||
<li>
|
<li>
|
||||||
<%= link_to l(:field_user_active_news), project_news_index_path(@project) %>
|
<% unless @project.enabled_modules.where("name = 'news'").empty? %>
|
||||||
|
<%= link_to l(:project_module_news), project_news_index_path(@project) %>
|
||||||
|
<% end %>
|
||||||
</li>
|
</li>
|
||||||
<li>
|
<li>
|
||||||
|
<% unless @project.enabled_modules.where("name = 'wiki'").empty? %>
|
||||||
<%= link_to l(:project_module_wiki), project_wiki_path(@project) %>
|
<%= link_to l(:project_module_wiki), project_wiki_path(@project) %>
|
||||||
|
<% end %>
|
||||||
</li>
|
</li>
|
||||||
<li>
|
<li>
|
||||||
|
<% unless @project.enabled_modules.where("name = 'code_review'").empty? %>
|
||||||
<%= link_to l(:project_module_code_review), {controller: 'code_review', action: 'index', id: @project.id} %>
|
<%= link_to l(:project_module_code_review), {controller: 'code_review', action: 'index', id: @project.id} %>
|
||||||
|
<% end %>
|
||||||
</li>
|
</li>
|
||||||
<li>
|
<li>
|
||||||
|
<% unless @project.enabled_modules.where("name = 'calendar'").empty? %>
|
||||||
<%= link_to l(:project_module_calendar),project_calendar_path(@project) %>
|
<%= link_to l(:project_module_calendar),project_calendar_path(@project) %>
|
||||||
|
<% end %>
|
||||||
</li>
|
</li>
|
||||||
<li>
|
<li>
|
||||||
|
<% unless @project.enabled_modules.where("name = 'gantt'").empty? %>
|
||||||
<%= link_to l(:project_module_gantt) ,project_gantt_path(@project) %>
|
<%= link_to l(:project_module_gantt) ,project_gantt_path(@project) %>
|
||||||
|
<% end %>
|
||||||
</li>
|
</li>
|
||||||
<li>
|
<li>
|
||||||
|
<% unless @project.enabled_modules.where("name = 'documents'").empty? %>
|
||||||
<%= link_to l(:project_module_documents), project_documents_path(@project) %>
|
<%= link_to l(:project_module_documents), project_documents_path(@project) %>
|
||||||
|
<% end %>
|
||||||
|
</li>
|
||||||
|
|
||||||
|
<li>
|
||||||
|
<%= link_to l(:label_roadmap) ,project_roadmap_path(@project) %>
|
||||||
</li>
|
</li>
|
||||||
<li>
|
<li>
|
||||||
<%= link_to l(:label_project_tool_response) ,project_feedback_path(@project)%>
|
<%= link_to l(:label_project_tool_response) ,project_feedback_path(@project)%>
|
||||||
</li>
|
</li>
|
||||||
<li>
|
<li>
|
||||||
|
<% unless @project.enabled_modules.where("name = 'dts'").empty? %>
|
||||||
<%= link_to l(:label_module_share) ,share_show_path(@project) %>
|
<%= link_to l(:label_module_share) ,share_show_path(@project) %>
|
||||||
|
<% end %>
|
||||||
</li>
|
</li>
|
||||||
|
|
||||||
|
|
|
@ -1,7 +1,8 @@
|
||||||
|
|
||||||
<div class="project_r_h">
|
<div class="project_r_h">
|
||||||
<h2 class="project_h2">邀请加入</h2>
|
<h2 class="project_h2">邀请加入</h2>
|
||||||
</div>
|
</div>
|
||||||
<%= error_messages_for 'member' %>
|
<%#= render_flash_messages %>
|
||||||
<%
|
<%
|
||||||
roles = Role.givable.all
|
roles = Role.givable.all
|
||||||
if @project.project_type == Project::ProjectType_course
|
if @project.project_type == Project::ProjectType_course
|
||||||
|
@ -14,36 +15,46 @@
|
||||||
|
|
||||||
<div style="margin-left: 30px" >
|
<div style="margin-left: 30px" >
|
||||||
<div class="floatbox" style="margin:100px;">
|
<div class="floatbox" style="margin:100px;">
|
||||||
<div ><a href="#" class="box_close"></a></div>
|
<div >
|
||||||
|
<a href="#" class="box_close"></a>
|
||||||
|
</div>
|
||||||
<div class="cl"></div>
|
<div class="cl"></div>
|
||||||
<div class="box_main">
|
<div class="box_main">
|
||||||
<h3 class="box_h3">邀请Trustie注册用户</h3>
|
<h3 class="box_h3">邀请Trustie注册用户</h3>
|
||||||
<% if roles.any? %>
|
<% if roles.any? %>
|
||||||
<%= form_for(@member, {:as => :membership, :url => project_memberships_path(@project), :remote => true, :method => :post}) do |f| %>
|
<%= form_for(@member, {:as => :membership, :url => project_memberships_path(@project), :method => :post}) do |f| %>
|
||||||
|
<div class="invi_search">
|
||||||
|
<input hidden="hidden" value="true" name="flag">
|
||||||
|
<input id="principal_search" class="invi_search_input fl" type="text" placeholder="输入用户名称搜索好友">
|
||||||
|
<%= javascript_tag "observeSearchfield('principal_search', null, '#{ escape_javascript autocomplete_project_memberships_path(@project, :format => 'js',:flag => true) }')" %>
|
||||||
|
<div class="cl"></div>
|
||||||
|
|
||||||
<div class="invi_search">
|
<div id="principals_for_new_member">
|
||||||
<%= label_tag "principal_search", l(:label_principal_search) %>
|
<%= render_project_members(@project) %>
|
||||||
<%= text_field_tag 'principal_search', nil %>
|
</div>
|
||||||
<%= javascript_tag "observeSearchfield('principal_search', null, '#{ escape_javascript autocomplete_project_memberships_path(@project, :format => 'js') }')" %>
|
<div class="cl"></div>
|
||||||
|
|
||||||
<div id="principals_for_new_member">
|
<ul class="rolebox">
|
||||||
<%= render_principals_for_new_members(@project) %>
|
<li class="fl mr5">
|
||||||
</div>
|
<%= l(:label_role_plural) %>:
|
||||||
<p style="padding-top: 5px">
|
</li>
|
||||||
<%= l(:label_role_plural) %>:
|
<% roles.each do |role| %>
|
||||||
<% roles.each do |role| %>
|
<li class="fl mr5">
|
||||||
<label>
|
<%= check_box_tag 'membership[role_ids][]', role.id %>
|
||||||
<%= check_box_tag 'membership[role_ids][]', role.id %>
|
<%= h role %>
|
||||||
<%= h role %>
|
</li>
|
||||||
</label>
|
<% end %>
|
||||||
|
</ul>
|
||||||
|
<div class="cl mb10"></div>
|
||||||
|
<a href="#" class="btn_free" onclick="$('#new_membership').submit();">
|
||||||
|
<%= l(:label_invite_members)%>
|
||||||
|
</a>
|
||||||
|
</div>
|
||||||
|
<!--<p>-->
|
||||||
|
<!--<%#= submit_tag l(:label_invite_members), :id => 'member-add-submit', :style => 'display:block; width:80px; text-align:center; color:#fff; height:26px; padding-top:3px; margin-bottom:10px;' %>-->
|
||||||
|
<!--</p>-->
|
||||||
<% end %>
|
<% end %>
|
||||||
</p>
|
|
||||||
<p>
|
|
||||||
<%= submit_tag l(:label_invite_members), :id => 'member-add-submit', :style => 'display:block; width:80px; text-align:center; color:#fff; height:26px; padding-top:3px; margin-bottom:10px;' %>
|
|
||||||
</p>
|
|
||||||
<% end %>
|
|
||||||
<% end %>
|
<% end %>
|
||||||
</div>
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
@ -1,3 +1,12 @@
|
||||||
|
<script>
|
||||||
|
function ismail(mail) {
|
||||||
|
var filter = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;
|
||||||
|
if (filter.test(mail)) return true;
|
||||||
|
else {
|
||||||
|
alert('您的电子邮件格式不正确');
|
||||||
|
return false;}
|
||||||
|
}
|
||||||
|
</script>
|
||||||
<div class="project_r_h">
|
<div class="project_r_h">
|
||||||
<h2 class="project_h2">邀请加入</h2>
|
<h2 class="project_h2">邀请加入</h2>
|
||||||
</div>
|
</div>
|
||||||
|
@ -9,7 +18,7 @@
|
||||||
<div class="box_main">
|
<div class="box_main">
|
||||||
<h3 class="box_h3">发送邮件邀请新用户</h3>
|
<h3 class="box_h3">发送邮件邀请新用户</h3>
|
||||||
<p class="box_p">
|
<p class="box_p">
|
||||||
输入好友邮箱地址,Trustie帮您免费发送!
|
输入好友邮箱地址,Trustie会自动为该邮箱注册用户!
|
||||||
</p>
|
</p>
|
||||||
<div id="is_registed">
|
<div id="is_registed">
|
||||||
<%= render :partial => 'regested', locals: { :isregisted => false} %>
|
<%= render :partial => 'regested', locals: { :isregisted => false} %>
|
||||||
|
|
|
@ -2,18 +2,22 @@
|
||||||
@nav_dispaly_forum_label = 1 %>
|
@nav_dispaly_forum_label = 1 %>
|
||||||
|
|
||||||
<%= labelled_form_for @project do |f| %>
|
<%= labelled_form_for @project do |f| %>
|
||||||
<div class="project_new"><%=l(:label_project_new)%><span class="description"> <%=raw l(:label_project_new_description)%></span>
|
<div class="project_new">
|
||||||
|
<%=l(:label_project_new)%>
|
||||||
|
<span class="description">
|
||||||
|
</span>
|
||||||
<div class="box tabular" >
|
<div class="box tabular" >
|
||||||
<p style="font-weight: bold; color: rgb(237,137,36)">
|
<p style="font-weight: bold; color: rgb(237,137,36)">
|
||||||
<%=raw l(:label_project_new_description)%>
|
<%=raw l(:label_project_new_description)%>
|
||||||
</p>
|
</p>
|
||||||
<%= render :partial => 'form', :locals => { :f => f } %>
|
<%= render :partial => 'form', :locals => { :f => f } %>
|
||||||
<span style="padding-left: 60px">
|
<span style="padding-left: 60px">
|
||||||
<%= submit_tag l(:button_create), :class => "enterprise"%>
|
<%= submit_tag l(:button_create), :class => "enterprise"%>
|
||||||
</span>
|
</span>
|
||||||
</div>
|
</div>
|
||||||
<%#= submit_tag l(:button_create_and_continue), :name => 'continue' %>
|
<%#= submit_tag l(:button_create_and_continue), :name => 'continue' %>
|
||||||
<%= javascript_tag "$('#project_name').focus();" %>
|
<%= javascript_tag "$('#project_name').focus();" %>
|
||||||
|
</div>
|
||||||
<% end %>
|
<% end %>
|
||||||
|
|
||||||
<% html_title(l(:label_project_new)) -%>
|
<% html_title(l(:label_project_new)) -%>
|
|
@ -21,7 +21,37 @@
|
||||||
<div class="scroll">
|
<div class="scroll">
|
||||||
<% unless @events_pages.empty? %>
|
<% unless @events_pages.empty? %>
|
||||||
<% @events_pages.each do |e| -%>
|
<% @events_pages.each do |e| -%>
|
||||||
<% act = e.forge_act;
|
<% if e.forge_act_type == "ProjectCreateInfo"%>
|
||||||
|
<div class="font_description">
|
||||||
|
<table width="660">
|
||||||
|
<tr>
|
||||||
|
<td>
|
||||||
|
<%= image_tag(url_to_avatar(e.user), :class => "avatar") %>
|
||||||
|
</td>
|
||||||
|
<td colspan="2">
|
||||||
|
<table width="580">
|
||||||
|
<tr>
|
||||||
|
<td>
|
||||||
|
|
||||||
|
<%= link_to_user(e.user)%>
|
||||||
|
|
||||||
|
<%= l(:label_project_new) %>
|
||||||
|
<%= link_to e.project.name %>
|
||||||
|
<strong> !</strong>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td class="font_lighter" >
|
||||||
|
<%= l :label_create_time %>:
|
||||||
|
<%= format_time(e.created_at) %>
|
||||||
|
</table>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</table>
|
||||||
|
</div>
|
||||||
|
<% end %>
|
||||||
|
<% next if e.forge_act_type.safe_constantize.nil?
|
||||||
|
act = e.forge_act;
|
||||||
next if act.nil? %>
|
next if act.nil? %>
|
||||||
<% if e.forge_act_type == "Issue" %>
|
<% if e.forge_act_type == "Issue" %>
|
||||||
<div class="activity-item underline-evreycontent" style="font-size: 14px;line-height:1.5em;width: 100%;word-wrap: break-word;word-break: break-all;margin-top: 10px;">
|
<div class="activity-item underline-evreycontent" style="font-size: 14px;line-height:1.5em;width: 100%;word-wrap: break-word;word-break: break-all;margin-top: 10px;">
|
||||||
|
@ -180,4 +210,4 @@
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<%= paginate @events_pages, :window => 3%>
|
<%= paginate @events_pages, :left => 3, :right => 3%>
|
|
@ -1,8 +1,8 @@
|
||||||
<div style="width: 57%;margin: 10px auto;">
|
<div style="width: 57%;margin: 10px auto;">
|
||||||
<%= form_tag( search_stores_path, method: 'post') do %>
|
<%= form_tag( search_stores_path, method: 'post') do %>
|
||||||
<%= text_field_tag 'name', params[:name], placeholder:'请输入要搜索的关键字', name: "name", :class => 'blueinputbar', :style => 'width:450px;'%>
|
<%= text_field_tag 'name', params[:name], placeholder: l('welcome.search.information'), name: "name", :class => 'blueinputbar', :style => 'width:450px;'%>
|
||||||
|
|
||||||
<%= submit_tag l(:label_search), :class => "enterprise"%>
|
<%= submit_tag l(:label_search), :class => "enterprise"%>
|
||||||
<% end %>
|
<% end %>
|
||||||
<div class='font_lighter' style="display: inline-block; margin-top:3px;">全站文件搜索。不会搜索私有项目中的内容。</div>
|
<div class='font_lighter' style="display: inline-block; margin-top:3px;"><%= l(:label_resources_search_all)%></div>
|
||||||
</div>
|
</div>
|
|
@ -2,19 +2,31 @@
|
||||||
<%= render :partial => "tags/tag_name",:locals => {:obj => obj,:non_list_all => false ,:object_flag => object_flag} %>
|
<%= render :partial => "tags/tag_name",:locals => {:obj => obj,:non_list_all => false ,:object_flag => object_flag} %>
|
||||||
</div>
|
</div>
|
||||||
<% if User.current.logged? %>
|
<% if User.current.logged? %>
|
||||||
<span> <%= toggle_link ("+ 添加标签"), 'put-tag-form', {:focus => 'tags_name'} %> </span>
|
<span> <%= toggle_link (l(:label_add_tag)), 'put-tag-form', {:focus => 'tags_name'} %> </span>
|
||||||
<% end %>
|
<% end %>
|
||||||
<div id="put-tag-form" style="display: none;text-align: center">
|
<div id="put-tag-form" style="display: none;text-align: center">
|
||||||
<%= form_for "tag_for_save",:remote=>true,:url=>tag_path,
|
<%= form_for "tag_for_save",:remote=>true,:url=>tag_path,
|
||||||
:update => "tags_show",
|
:update => "tags_show",
|
||||||
:complete => '$("#put-tag-form").slideUp();' do |f| %>
|
:complete => '$("#put-tag-form").slideUp();' do |f| %>
|
||||||
<%= f.text_field :name ,:id => "tags_name",:size=>"20",
|
<table>
|
||||||
|
<tr>
|
||||||
|
<td>
|
||||||
|
<%= f.text_field :name ,:id => "tags_name",:size=>"20",
|
||||||
:require=>true,
|
:require=>true,
|
||||||
:maxlength => Setting.tags_max_length,
|
:maxlength => Setting.tags_max_length,
|
||||||
:minlength=>Setting.tags_min_length %>
|
:minlength=>Setting.tags_min_length %>
|
||||||
<%= f.text_field :object_id,:value=> obj.id,:style=>"display:none"%>
|
</td>
|
||||||
<%= f.text_field :object_flag,:value=> object_flag,:style=>"display:none"%>
|
|
||||||
<a href="#" onclick='$("#tags_name").parent().submit();' type="button" class="submit f_l" style="margin-top: 10px;"></a>
|
<%= f.text_field :object_id,:value=> obj.id,:style=>"display:none"%>
|
||||||
|
|
||||||
|
|
||||||
|
<%= f.text_field :object_flag,:value=> object_flag,:style=>"display:none"%>
|
||||||
|
|
||||||
|
<td style="margin-left: 5px">
|
||||||
|
<a href="#" onclick='$("#tags_name").parent().submit();' type="button" class="submit f_l"></a>
|
||||||
|
</td>
|
||||||
|
<tr>
|
||||||
|
</table>
|
||||||
<% end %>
|
<% end %>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
|
|
@ -9,18 +9,35 @@
|
||||||
<tr>
|
<tr>
|
||||||
<td class="r1" style="word-break: break-all;word-wrap: break-word;">
|
<td class="r1" style="word-break: break-all;word-wrap: break-word;">
|
||||||
<div class="cb">
|
<div class="cb">
|
||||||
<strong><%= l(:label_attachment) %>: <%= file.filename %></strong>
|
<strong>
|
||||||
|
<%= l(:label_attachment) %>:
|
||||||
|
|
||||||
|
<%= file.filename %>
|
||||||
|
</strong>
|
||||||
<span style="margin-left: 4px;">
|
<span style="margin-left: 4px;">
|
||||||
<%= link_to_attachment file, {:download => true, :text => image_tag("/images/button/dl.png", width: "70px", alt: l(:button_download), :class => 'download_icon')}%>
|
<%= link_to_attachment file, {:download => true, :text => image_tag("/images/button/dl.png", width: "70px", alt: l(:button_download), :class => 'download_icon')}%>
|
||||||
</span>
|
</span>
|
||||||
</div>
|
</div>
|
||||||
<strong><%= l(:field_description) %></strong>: <%= file.description %>
|
<strong>
|
||||||
<div class="c9 gray-color"> <%= l('attachment.category')%><%=result_come_from file%> </div>
|
<%= l(:field_description) %>
|
||||||
|
</strong>:
|
||||||
|
|
||||||
|
<%= file.description %>
|
||||||
|
<div class="c9 gray-color">
|
||||||
|
<%= l('label_attachment_category')%>
|
||||||
|
<%=result_come_from file%>
|
||||||
|
</div>
|
||||||
<span class="gray blue-color">
|
<span class="gray blue-color">
|
||||||
<%= l('attachment.download_num')%><%= file.downloads%>|
|
<%= l('label_attachment_download_num')%>
|
||||||
<%= l('attachment.size')%><%= number_to_human_size(file.filesize) %>|
|
<%= file.downloads%>|
|
||||||
<%= l('attachment.sharer')%><a class="gray" ><%= link_to file.author, user_path(file.author), target: "_blank" unless file.author.blank? %></a>|
|
<%= l('label_attachment_size')%>
|
||||||
<%= l('attachment.upload_time')%><%= format_time(file.created_on) %>
|
<%= number_to_human_size(file.filesize) %>|
|
||||||
|
<%= l('label_attachment_sharer')%>
|
||||||
|
<a class="gray" >
|
||||||
|
<%= link_to file.author, user_path(file.author), target: "_blank" unless file.author.blank? %>
|
||||||
|
</a>|
|
||||||
|
<%= l('label_attachment_upload_time')%>
|
||||||
|
<%= format_time(file.created_on) %>
|
||||||
</span>
|
</span>
|
||||||
<div style="display: none"></div>
|
<div style="display: none"></div>
|
||||||
</td>
|
</td>
|
||||||
|
|
|
@ -1,9 +1,9 @@
|
||||||
|
|
||||||
<div> 踩别人的帖子数量 * (-2) = <%= option_num.tread %> * (-2) = <%= option_num.tread * (-2) %></div>
|
<div> <%= l('userscore.skill.tramples')%> * (-2) = <%= option_num.tread %> * (-2) = <%= option_num.tread * (-2) %></div>
|
||||||
<div> 帖子被一级会员顶的次数 * 4 = <%= option_num.praise_by_one %> * 4 = <%= option_num.praise_by_one * 4 %></div>
|
<div> <%= l('userscore.skill.like.level1')%> * 4 = <%= option_num.praise_by_one %> * 4 = <%= option_num.praise_by_one * 4 %></div>
|
||||||
<div> 帖子被二级会员顶的次数 * 6 = <%= option_num.praise_by_two %> * 6 = <%= option_num.praise_by_two * 6 %></div>
|
<div> <%= l('userscore.skill.like.level2')%> * 6 = <%= option_num.praise_by_two %> * 6 = <%= option_num.praise_by_two * 6 %></div>
|
||||||
<div> 帖子被三级会员顶的次数 * 8 = <%= option_num.praise_by_three %> * 8 = <%= option_num.praise_by_three * 8 %></div>
|
<div> <%= l('userscore.skill.like.level3')%> * 8 = <%= option_num.praise_by_three %> * 8 = <%= option_num.praise_by_three * 8 %></div>
|
||||||
<div> 帖子被一级会员踩的次数 * (-2) = <%= option_num.tread_by_one %> * (-2) = <%= option_num.tread_by_one * (-2) %></div>
|
<div> <%= l('userscore.skill.dislike.level1')%> * (-2) = <%= option_num.tread_by_one %> * (-2) = <%= option_num.tread_by_one * (-2) %></div>
|
||||||
<div> 帖子被二级会员踩的次数 * (-4) = <%= option_num.tread_by_two %> * (-4) = <%= option_num.tread_by_two * (-4) %></div>
|
<div> <%= l('userscore.skill.dislike.level2')%> * (-4) = <%= option_num.tread_by_two %> * (-4) = <%= option_num.tread_by_two * (-4) %></div>
|
||||||
<div> 帖子被三级会员踩的次数 * (-6) = <%= option_num.tread_by_three %> * (-6) = <%= option_num.tread_by_three * (-6) %></div>
|
<div> <%= l('userscore.skill.dislike.level3')%> * (-6) = <%= option_num.tread_by_three %> * (-6) = <%= option_num.tread_by_three * (-6) %></div>
|
||||||
<div> 技术得分 = <%= option_num.tread * (-2) %> + <%= option_num.praise_by_one * 4 %> + <%= option_num.praise_by_two * 6 %> + <%= option_num.praise_by_three * 8 %> + (<%= option_num.tread_by_one * (-2) %>) + ( <%= option_num.tread_by_two * (-4) %>) + (<%= option_num.tread_by_three * (-6) %>) = <%= skill(option_num) %> </div>
|
<div> <%= l(:label_user_score_of_skill)%> = <%= option_num.tread * (-2) %> + <%= option_num.praise_by_one * 4 %> + <%= option_num.praise_by_two * 6 %> + <%= option_num.praise_by_three * 8 %> + (<%= option_num.tread_by_one * (-2) %>) + ( <%= option_num.tread_by_two * (-4) %>) + (<%= option_num.tread_by_three * (-6) %>) = <%= skill(option_num) %> </div>
|
|
@ -57,7 +57,7 @@
|
||||||
</span>
|
</span>
|
||||||
<span style="float: right; padding-left: 8px">
|
<span style="float: right; padding-left: 8px">
|
||||||
<%= l(:label_course_term) %>
|
<%= l(:label_course_term) %>
|
||||||
: <%= @course.time %><%= @course.term %>
|
: <%= @course.time %><%= get_course_term_locales @course %>
|
||||||
</span>
|
</span>
|
||||||
<% end %>
|
<% end %>
|
||||||
</td>
|
</td>
|
||||||
|
|
|
@ -2,8 +2,8 @@
|
||||||
<div class="menu">
|
<div class="menu">
|
||||||
<%= link_to "#{l(:label_course_new)}", new_course_path, class: 'icon icon-add' if @user == User.current %>
|
<%= link_to "#{l(:label_course_new)}", new_course_path, class: 'icon icon-add' if @user == User.current %>
|
||||||
<ul>
|
<ul>
|
||||||
<li mode='doing' class="on">进行中</li>
|
<li mode='doing' class="on"><%= l('user.courses.doing')%></li>
|
||||||
<li mode='end'>已完结</li>
|
<li mode='end'><%= l('user.courses.done')%></li>
|
||||||
</ul>
|
</ul>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
|
|
@ -2,8 +2,8 @@
|
||||||
<div class="menu">
|
<div class="menu">
|
||||||
<%= link_to "#{l(:label_course_new)}", new_course_path, class: 'icon icon-add' if user == User.current %>
|
<%= link_to "#{l(:label_course_new)}", new_course_path, class: 'icon icon-add' if user == User.current %>
|
||||||
<ul>
|
<ul>
|
||||||
<li mode='doing' class="on">进行中</li>
|
<li mode='doing' class="on"><%= l('user.courses.doing')%></li>
|
||||||
<li mode='end'>已完结</li>
|
<li mode='end'><%= l('user.courses.done')%></li>
|
||||||
</ul>
|
</ul>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
|
|
||||||
<div> 提交代码次数 * 4 = <%= option_num.changeset %> * 4 = <%= option_num.changeset * 4 %></div>
|
<div> <%= l('userscore.active.commit.codes')%> * 4 = <%= option_num.changeset %> * 4 = <%= option_num.changeset * 4 %></div>
|
||||||
<div> 提交文档次数 * 4 = <%= option_num.document %> * 4 = <%= option_num.document * 4 %></div>
|
<div> <%= l('userscore.active.commit.documents')%> * 4 = <%= option_num.document %> * 4 = <%= option_num.document * 4 %></div>
|
||||||
<div> 提交附件次数 * 4 = <%= option_num.attachment %> * 4 = <%= option_num.attachment * 4 %></div>
|
<div> <%= l('userscore.active.commit.attachments')%> * 4 = <%= option_num.attachment %> * 4 = <%= option_num.attachment * 4 %></div>
|
||||||
<div> 更新缺陷完成度次数 * 2 = <%= option_num.issue_done_ratio %> * 2 = <%= option_num.issue_done_ratio * 2 %></div>
|
<div> <%= l('userscore.active.update_issues')%> * 2 = <%= option_num.issue_done_ratio %> * 2 = <%= option_num.issue_done_ratio * 2 %></div>
|
||||||
<div> 发布缺陷数量 * 4 = <%= option_num.post_issue %> * 4 = <%= option_num.post_issue * 4 %></div>
|
<div> <%= l('userscore.active.release_issues')%> * 4 = <%= option_num.post_issue %> * 4 = <%= option_num.post_issue * 4 %></div>
|
||||||
<div> 项目贡献得分 = <%= option_num.changeset * 4 %> + <%= option_num.document * 4 %> + <%= option_num.attachment * 4 %> + <%= option_num.issue_done_ratio * 2 %> + <%= option_num.post_issue * 4 %> = <%= active(option_num) %> </div>
|
<div> <%= l(:label_user_score_of_active)%> = <%= option_num.changeset * 4 %> + <%= option_num.document * 4 %> + <%= option_num.attachment * 4 %> + <%= option_num.issue_done_ratio * 2 %> + <%= option_num.post_issue * 4 %> = <%= active(option_num) %> </div>
|
|
@ -16,8 +16,8 @@
|
||||||
<div class="menu">
|
<div class="menu">
|
||||||
<%= link_to "#{l(:label_course_new)}", new_course_path, class: 'icon icon-add' if @user == User.current %>
|
<%= link_to "#{l(:label_course_new)}", new_course_path, class: 'icon icon-add' if @user == User.current %>
|
||||||
<ul>
|
<ul>
|
||||||
<li mode='doing' class="on"><%= l('user.courses.doing')%></li>
|
<li mode='doing' class="on"><%= l(:label_course_doing)%></li>
|
||||||
<li mode='end'><%= l('user.courses.done')%></li>
|
<li mode='end'><%= l(:label_course_done)%></li>
|
||||||
</ul>
|
</ul>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
|
|
@ -1,3 +1,3 @@
|
||||||
|
|
||||||
<div> 被关注人数 * 2 = <%= option_num.follow %> * 2 = <%= option_num.follow * 2 %></div>
|
<div> <%= l('userscore.influence.followers')%> * 2 = <%= option_num.follow %> * 2 = <%= option_num.follow * 2 %></div>
|
||||||
<div> 影响力得分 = <%= option_num.follow * 2 %></div>
|
<div> <%= l(:label_user_score_of_influence)%> = <%= option_num.follow * 2 %></div>
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
|
|
||||||
<div> 发帖数量 * 2 = <%= option_num.memo %> * 2 = <%= option_num.memo * 2 %></div>
|
<div> <%= l('userscore.collaboration.memos')%> * 2 = <%= option_num.memo %> * 2 = <%= option_num.memo * 2 %></div>
|
||||||
<div> 对缺陷留言数量 * 1 = <%= option_num.messages_for_issues %> * 1 = <%= option_num.messages_for_issues * 1 %></div>
|
<div> <%= l('userscore.collaboration.message_for_issues')%> * 1 = <%= option_num.messages_for_issues %> * 1 = <%= option_num.messages_for_issues * 1 %></div>
|
||||||
<div> 更改缺陷状态次数 * 1 = <%= option_num.issues_status %> * 1= <%= option_num.issues_status * 1 %></div>
|
<div> <%= l('userscore.collaboration.issue_status')%> * 1 = <%= option_num.issues_status %> * 1= <%= option_num.issues_status * 1 %></div>
|
||||||
<div> 对留言的回复数量 * 1 = <%= option_num.replay_for_message %> * 1 = <%= option_num.replay_for_message * 1 %></div>
|
<div> <%= l('userscore.collaboration.reply_for_messages')%> * 1 = <%= option_num.replay_for_message %> * 1 = <%= option_num.replay_for_message * 1 %></div>
|
||||||
<div> 对帖子的回复数量 * 1 = <%= option_num.replay_for_memo %> * 1 = <%= option_num.replay_for_memo * 1 %></div>
|
<div> <%= l('userscore.collaboration.reply_for_memos')%> * 1 = <%= option_num.replay_for_memo %> * 1 = <%= option_num.replay_for_memo * 1 %></div>
|
||||||
<div> 协同得分 = <%= option_num.memo * 2 %> + <%= option_num.messages_for_issues * 1 %> + <%= option_num.issues_status * 1 %> + <%= option_num.replay_for_message * 1 %> + <%= option_num.replay_for_memo * 1 %> = <%= collaboration(option_num) %> </div>
|
<div> <%= l(:label_user_score_of_collaboration)%> = <%= option_num.memo * 2 %> + <%= option_num.messages_for_issues * 1 %> + <%= option_num.issues_status * 1 %> + <%= option_num.replay_for_message * 1 %> + <%= option_num.replay_for_memo * 1 %> = <%= collaboration(option_num) %> </div>
|
||||||
|
|
|
@ -2,7 +2,7 @@
|
||||||
<div class="menu-div">
|
<div class="menu-div">
|
||||||
<div class="menu">
|
<div class="menu">
|
||||||
<span style="color: #000; font-weight: bold;">
|
<span style="color: #000; font-weight: bold;">
|
||||||
<%= l(:label_user_activity, :value => @user.name) %>
|
<%= l(:label_user_activities, :name => @user.name) %>
|
||||||
</span>
|
</span>
|
||||||
<ul><%#链接绑定在页面最下方的jQuery%>
|
<ul><%#链接绑定在页面最下方的jQuery%>
|
||||||
<li mode='all' class="<%= "on" if @state.eql?(0) %>">
|
<li mode='all' class="<%= "on" if @state.eql?(0) %>">
|
||||||
|
@ -63,16 +63,37 @@
|
||||||
<%= link_to("#{l(:label_i)}", user_path(e.user_id)) %>
|
<%= link_to("#{l(:label_i)}", user_path(e.user_id)) %>
|
||||||
</strong>
|
</strong>
|
||||||
|
|
||||||
|
<% if User.current.language == "zh" %>
|
||||||
|
<span class="font_lighter">
|
||||||
|
<%= l(:label_i_have_feedback) %>
|
||||||
|
<%= link_to("#{e.act.user.name}", user_path(e.act.user.id)) %>
|
||||||
|
<%= l(:label_of_feedback) + l(:label_layouts_feedback) %>
|
||||||
|
</span>
|
||||||
|
<% else %>
|
||||||
|
<span class="font_lighter">
|
||||||
|
<%= l(:label_i_have_feedback) %>
|
||||||
|
<%= l(:label_layouts_feedback) + l(:label_of_feedback) %>
|
||||||
|
<%= link_to("#{e.act.user.name}", user_path(e.act.user.id)) %>
|
||||||
|
</span>
|
||||||
|
<% end %>
|
||||||
<% else %>
|
<% else %>
|
||||||
<strong>
|
<strong>
|
||||||
<%= link_to("#{e.user.name}", user_path(e.user_id)) %>
|
<%= link_to("#{e.user.name}", user_path(e.user_id)) %>
|
||||||
</strong>
|
</strong>
|
||||||
<% end %>
|
<% if User.current.language == "zh" %>
|
||||||
<span class="font_lighter">
|
<span class="font_lighter">
|
||||||
<%= l(:label_have_feedback) %>
|
<%= l(:label_have_feedback) %>
|
||||||
<%= link_to("#{e.act.user.name}", user_path(e.act.user.id)) %>
|
<%= link_to("#{e.act.user.name}", user_path(e.act.user.id)) %>
|
||||||
<%= l(:label_of_feedback) + l(:label_layouts_feedback) %>
|
<%= l(:label_of_feedback) + l(:label_layouts_feedback) %>
|
||||||
</span>
|
</span>
|
||||||
|
<% else %>
|
||||||
|
<span class="font_lighter">
|
||||||
|
<%= l(:label_have_feedback) %>
|
||||||
|
<%= l(:label_layouts_feedback) + l(:label_of_feedback) %>
|
||||||
|
<%= link_to("#{e.act.user.name}", user_path(e.act.user.id)) %>
|
||||||
|
</span>
|
||||||
|
<% end %>
|
||||||
|
<% end %>
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
|
@ -91,7 +112,7 @@
|
||||||
<td>
|
<td>
|
||||||
<div style="display: inline-block; float: left; margin-top: 0px" width="200" align="right" class="a">
|
<div style="display: inline-block; float: left; margin-top: 0px" width="200" align="right" class="a">
|
||||||
<span class="font_lighter">
|
<span class="font_lighter">
|
||||||
<%= (l(:label_update_time).to_s << ':' << format_time(e.act.created_on)).to_s %>
|
<%= (l(:label_update_time).to_s << ': ' << format_time(e.act.created_on)).to_s %>
|
||||||
</span>
|
</span>
|
||||||
</div>
|
</div>
|
||||||
<div style="display: inline-block; float: right; margin-top: 0px"></div>
|
<div style="display: inline-block; float: right; margin-top: 0px"></div>
|
||||||
|
@ -155,7 +176,7 @@
|
||||||
<td>
|
<td>
|
||||||
<div style="display: inline-block; float: left; margin-top: 0px" width="200" align="right" class="a">
|
<div style="display: inline-block; float: left; margin-top: 0px" width="200" align="right" class="a">
|
||||||
<span class="font_lighter">
|
<span class="font_lighter">
|
||||||
<%= (l(:label_update_time).to_s << ':' << format_time(e.act.created_on)).to_s %>
|
<%= (l(:label_update_time).to_s << ': ' << format_time(e.act.created_on)).to_s %>
|
||||||
</span>
|
</span>
|
||||||
</div>
|
</div>
|
||||||
<!--<div style="display: inline-block; float: right; margin-top: 0px">-->
|
<!--<div style="display: inline-block; float: right; margin-top: 0px">-->
|
||||||
|
@ -216,7 +237,7 @@
|
||||||
<td>
|
<td>
|
||||||
<div style="display: inline-block; float: left; margin-top: 0px" width="200" align="right" class="a">
|
<div style="display: inline-block; float: left; margin-top: 0px" width="200" align="right" class="a">
|
||||||
<span class="font_lighter">
|
<span class="font_lighter">
|
||||||
<%= (l(:label_update_time).to_s << ':' << format_time(e.act.created_on)).to_s %>
|
<%= (l(:label_update_time).to_s << ': ' << format_time(e.act.created_on)).to_s %>
|
||||||
</span>
|
</span>
|
||||||
</div>
|
</div>
|
||||||
<div style="display: inline-block; float: right; margin-top: 0px"></div>
|
<div style="display: inline-block; float: right; margin-top: 0px"></div>
|
||||||
|
@ -333,7 +354,7 @@
|
||||||
<td>
|
<td>
|
||||||
<div style="display: inline-block; float: left; margin-top: 0px" width="200" align="right" class="a">
|
<div style="display: inline-block; float: left; margin-top: 0px" width="200" align="right" class="a">
|
||||||
<span class="font_lighter">
|
<span class="font_lighter">
|
||||||
<%= (l(:label_update_time).to_s << ':' << format_time(e.act.created_on)).to_s %>
|
<%= (l(:label_update_time).to_s << ': ' << format_time(e.act.created_on)).to_s %>
|
||||||
</span>
|
</span>
|
||||||
</div>
|
</div>
|
||||||
<div style="display: inline-block; float: right; margin-top: 0px"></div>
|
<div style="display: inline-block; float: right; margin-top: 0px"></div>
|
||||||
|
@ -372,7 +393,7 @@
|
||||||
<td>
|
<td>
|
||||||
<div style="display: inline-block; float: left; margin-top: 0px" width="200" align="right" class="a">
|
<div style="display: inline-block; float: left; margin-top: 0px" width="200" align="right" class="a">
|
||||||
<span class="font_lighter">
|
<span class="font_lighter">
|
||||||
<%= (l(:label_update_time).to_s << ':' << format_time(e.act.created_on)).to_s %>
|
<%= (l(:label_update_time).to_s << ': ' << format_time(e.act.created_on)).to_s %>
|
||||||
</span>
|
</span>
|
||||||
</div>
|
</div>
|
||||||
<div style="display: inline-block; float: right; margin-top: 0px"></div>
|
<div style="display: inline-block; float: right; margin-top: 0px"></div>
|
||||||
|
@ -417,7 +438,7 @@
|
||||||
<td>
|
<td>
|
||||||
<div style="display: inline-block; float: left; margin-top: 0px" width="200" align="right" class="a">
|
<div style="display: inline-block; float: left; margin-top: 0px" width="200" align="right" class="a">
|
||||||
<span class="font_lighter">
|
<span class="font_lighter">
|
||||||
<%= (l(:label_update_time).to_s << ':' << format_time(e.act.created_on)).to_s %>
|
<%= (l(:label_update_time).to_s << ': ' << format_time(e.act.created_on)).to_s %>
|
||||||
</span>
|
</span>
|
||||||
</div>
|
</div>
|
||||||
<div style="display: inline-block; float: right; margin-top: 0px">
|
<div style="display: inline-block; float: right; margin-top: 0px">
|
||||||
|
@ -457,7 +478,7 @@
|
||||||
<td>
|
<td>
|
||||||
<div style="display: inline-block; float: left; margin-top: 0px" width="200" align="right" class="a">
|
<div style="display: inline-block; float: left; margin-top: 0px" width="200" align="right" class="a">
|
||||||
<span class="font_lighter">
|
<span class="font_lighter">
|
||||||
<%= (l(:label_update_time).to_s << ':' << format_time(e.act.created_on)).to_s %>
|
<%= (l(:label_update_time).to_s << ': ' << format_time(e.act.created_on)).to_s %>
|
||||||
</span>
|
</span>
|
||||||
</div>
|
</div>
|
||||||
<div style="display: inline-block; float: right; margin-top: 0px">
|
<div style="display: inline-block; float: right; margin-top: 0px">
|
||||||
|
@ -493,7 +514,7 @@
|
||||||
<td>
|
<td>
|
||||||
<div style="display: inline-block; float: left; margin-top: 0px" width="200" align="right" class="a">
|
<div style="display: inline-block; float: left; margin-top: 0px" width="200" align="right" class="a">
|
||||||
<span class="font_lighter">
|
<span class="font_lighter">
|
||||||
<%= (l(:label_update_time).to_s << ':' << format_time(e.act.created_on)).to_s %>
|
<%= (l(:label_update_time).to_s << ': ' << format_time(e.act.created_on)).to_s %>
|
||||||
</span>
|
</span>
|
||||||
</div>
|
</div>
|
||||||
<div style="display: inline-block; float: right; margin-top: 0px">
|
<div style="display: inline-block; float: right; margin-top: 0px">
|
||||||
|
@ -548,7 +569,7 @@
|
||||||
<td>
|
<td>
|
||||||
<div style="display: inline-block; float: left; margin-top: 0px" width="200" align="right" class="a">
|
<div style="display: inline-block; float: left; margin-top: 0px" width="200" align="right" class="a">
|
||||||
<span class="font_lighter">
|
<span class="font_lighter">
|
||||||
<%= (l(:label_update_time).to_s << ':' << format_time(e.act.created_on)).to_s %>
|
<%= (l(:label_update_time).to_s << ': ' << format_time(e.act.created_on)).to_s %>
|
||||||
</span>
|
</span>
|
||||||
</div>
|
</div>
|
||||||
</tr>
|
</tr>
|
||||||
|
@ -569,7 +590,7 @@
|
||||||
</div>
|
</div>
|
||||||
<% else %> <!-- < %# unless @activity.empty? %> -->
|
<% else %> <!-- < %# unless @activity.empty? %> -->
|
||||||
<% if @user == User.current %>
|
<% if @user == User.current %>
|
||||||
<%= l(:label_user_activities) %>
|
<%= l(:label_user_activities_no) %>
|
||||||
<% else %>
|
<% else %>
|
||||||
<p class="font_description">
|
<p class="font_description">
|
||||||
<%= l(:label_user_activities_other) %>
|
<%= l(:label_user_activities_other) %>
|
||||||
|
@ -596,7 +617,7 @@
|
||||||
<% elsif e.jour_type == 'User' %>
|
<% elsif e.jour_type == 'User' %>
|
||||||
<%= l(:label_in_users) %><%= link_to(e.jour.firstname, feedback_path(e.jour)) %> <%= l(:label_quote_my_words) %>
|
<%= l(:label_in_users) %><%= link_to(e.jour.firstname, feedback_path(e.jour)) %> <%= l(:label_quote_my_words) %>
|
||||||
<% elsif e.jour_type == 'Project' %>
|
<% elsif e.jour_type == 'Project' %>
|
||||||
<%= '在'<<l(:field_project) %><%= link_to(e.jour.name, feedback_path(e.jour)) %> <%= l(:label_reply_plural) %>
|
<%= l(:label_in_projects) %><%= link_to(e.jour.name, feedback_path(e.jour)) %> <%= l(:label_reply_plural) %>
|
||||||
<% end %>
|
<% end %>
|
||||||
<% else %>
|
<% else %>
|
||||||
<%= l(:label_about_requirement) %><%= link_to(e.jour.name, respond_path(e.jour_id)) %> <%= l(:label_have_respond) %>
|
<%= l(:label_about_requirement) %><%= link_to(e.jour.name, respond_path(e.jour_id)) %> <%= l(:label_have_respond) %>
|
||||||
|
|
|
@ -25,7 +25,7 @@
|
||||||
<table width="580" border="0">
|
<table width="580" border="0">
|
||||||
<tr>
|
<tr>
|
||||||
<td colspan="2" valign="top"><strong> <%= link_to_user(membership.user) if membership.respond_to?(:user) %></strong>
|
<td colspan="2" valign="top"><strong> <%= link_to_user(membership.user) if membership.respond_to?(:user) %></strong>
|
||||||
<span class="font_lighter"> <%= l(:label_peoject_take_in) %></span> <%= link_to_project(membership.project) %></td>
|
<span class="font_lighter"> <%= l(:label_project_take_in) %></span> <%= link_to_project(membership.project) %></td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<td colspan="2" width="580" style="word-break:break-all;word-wrap: break-word;">
|
<td colspan="2" width="580" style="word-break:break-all;word-wrap: break-word;">
|
||||||
|
|
|
@ -1,4 +1,7 @@
|
||||||
<!--modified by young-->
|
<!--modified by young-->
|
||||||
|
<div class="project_r_h">
|
||||||
|
<h2 class="project_h2"><%= l(:label_roadmap) %></h2>
|
||||||
|
</div>
|
||||||
<div class="content-title-top">
|
<div class="content-title-top">
|
||||||
<%= link_to l(:label_version_new), new_project_version_path(@project), :class => 'icon icon-add' if User.current.allowed_to?(:manage_versions, @project) %>
|
<%= link_to l(:label_version_new), new_project_version_path(@project), :class => 'icon icon-add' if User.current.allowed_to?(:manage_versions, @project) %>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
@ -1,4 +1,7 @@
|
||||||
<!--modified by young-->
|
<!--modified by young-->
|
||||||
|
<div class="project_r_h">
|
||||||
|
<h2 class="project_h2"><%= l(:label_roadmap) %></h2>
|
||||||
|
</div>
|
||||||
<div class="contextual" style="overflow: hidden;text-overflow: ellipsis;white-space: nowrap;">
|
<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(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,
|
<%= link_to_if_authorized(l(:button_edit_associated_wikipage,
|
||||||
|
|
|
@ -1,8 +1,8 @@
|
||||||
<div >
|
<div >
|
||||||
<%= form_tag( search_stores_path, method: 'post') do %>
|
<%= form_tag( search_stores_path, method: 'post') do %>
|
||||||
<%= text_field_tag 'name', params[:name], placeholder:'请输入要搜索的关键字', name: "name", :class => 'blueinputbar', :style => 'width:300px;'%>
|
<%= text_field_tag 'name', params[:name], placeholder: l('welcome.search.information'), name: "name", :class => 'blueinputbar', :style => 'width:300px;'%>
|
||||||
|
|
||||||
<%= submit_tag l(:label_search), :class => "enterprise"%>
|
<%= submit_tag l(:label_search), :class => "enterprise"%>
|
||||||
<% end %>
|
<% end %>
|
||||||
<div class='font_lighter' style="margin: 0; padding: 0; margin-top: 4px;">全站文件搜索。不会搜索私有项目中的内容。</div>
|
<div class='font_lighter' style="margin: 0; padding: 0; margin-top: 4px;"><%= l(:label_resources_search_all)%></div>
|
||||||
</div>
|
</div>
|
|
@ -133,7 +133,24 @@
|
||||||
</div>
|
</div>
|
||||||
<div class="welcome_left" id="welcome_left">
|
<div class="welcome_left" id="welcome_left">
|
||||||
<% unless @contest_page.nil? %>
|
<% unless @contest_page.nil? %>
|
||||||
<span class="font_welcome_trustie"><%= @contest_page.title %></span> <span class="font_welcome_tdescription">, <%= @contest_page.description %></span>
|
<span class="font_welcome_trustie">
|
||||||
|
<!--
|
||||||
|
edit by meng
|
||||||
|
@@contest_page.title存储在first_page表中的title字段
|
||||||
|
原本代码
|
||||||
|
<%= @contest_page.title %>
|
||||||
|
!-->
|
||||||
|
<%= l(:label_welcome_trustie_contest) %>
|
||||||
|
</span>
|
||||||
|
<span class="font_welcome_tdescription">,
|
||||||
|
<!--
|
||||||
|
edit by meng
|
||||||
|
@course_page.description存储在first_page表中的description字段
|
||||||
|
原本代码
|
||||||
|
<%= @contest_page.description %>
|
||||||
|
!-->
|
||||||
|
<%= l(:label_welcome_trustie_contest_description) %>
|
||||||
|
</span>
|
||||||
<% end %>
|
<% end %>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
|
|
@ -56,12 +56,24 @@
|
||||||
</span>
|
</span>
|
||||||
<% unless @course_page.nil? %>
|
<% unless @course_page.nil? %>
|
||||||
<span class="font_welcome_trustie">
|
<span class="font_welcome_trustie">
|
||||||
<%= @course_page.title %>
|
<!--
|
||||||
|
edit by meng
|
||||||
|
@course_page.title存储在first_page表中的title字段
|
||||||
|
原本代码
|
||||||
|
<%= @course_page.title %>
|
||||||
|
!-->
|
||||||
|
<%= l(:label_welcome_trustie_course) %>
|
||||||
</span>
|
</span>
|
||||||
|
|
||||||
<% if @school_id.nil? and (User.current.user_extensions.nil? || User.current.user_extensions.school.nil?) %>
|
<% if @school_id.nil? and (User.current.user_extensions.nil? || User.current.user_extensions.school.nil?) %>
|
||||||
<span class="font_welcome_tdescription">,
|
<span class="font_welcome_tdescription">,
|
||||||
<%= @course_page.description %>
|
<!--
|
||||||
|
edit by meng
|
||||||
|
@course_page.description存储在first_page表中的description字段
|
||||||
|
原本代码
|
||||||
|
<%= @course_page.description %>
|
||||||
|
!-->
|
||||||
|
<%= l(:label_welcome_trustie_course_description) %>
|
||||||
</span>
|
</span>
|
||||||
<% else %>
|
<% else %>
|
||||||
<% if @school_id == "0" %>
|
<% if @school_id == "0" %>
|
||||||
|
|
|
@ -29,5 +29,5 @@
|
||||||
</p>
|
</p>
|
||||||
|
|
||||||
<div class="text-diff" style="word-break: break-all;word-wrap: break-word;">
|
<div class="text-diff" style="word-break: break-all;word-wrap: break-word;">
|
||||||
<%= simple_format_without_paragraph @diff.to_html %>
|
<%= wiki_simple_format_without_paragraph @diff.to_html %>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
@ -11,7 +11,7 @@
|
||||||
<% id = 'project_respond_form_'+journal.id.to_s%>
|
<% id = 'project_respond_form_'+journal.id.to_s%>
|
||||||
<span>
|
<span>
|
||||||
<% if reply_allow %>
|
<% if reply_allow %>
|
||||||
<%= link_to l(:label_projects_feedback_respond),'#',
|
<%= link_to l(:button_reply),'#',
|
||||||
{:focus => 'project_respond',
|
{:focus => 'project_respond',
|
||||||
:onclick => "toggleAndSettingWordsVal($('##{id}'),
|
:onclick => "toggleAndSettingWordsVal($('##{id}'),
|
||||||
$('##{id} textarea'),
|
$('##{id} textarea'),
|
||||||
|
|
|
@ -14,7 +14,7 @@
|
||||||
<div class="recall_con">
|
<div class="recall_con">
|
||||||
<% id = 'project_respond_form_'+ reply.id.to_s %>
|
<% id = 'project_respond_form_'+ reply.id.to_s %>
|
||||||
<%= link_to reply.user.name, user_path(reply.user) %>
|
<%= link_to reply.user.name, user_path(reply.user) %>
|
||||||
回复
|
<%= l(:label_reply_to)%>
|
||||||
<% if show_name %>
|
<% if show_name %>
|
||||||
<%= link_to parent_jour.user.name, user_path(parent_jour.user) %>
|
<%= link_to parent_jour.user.name, user_path(parent_jour.user) %>
|
||||||
<% else %>
|
<% else %>
|
||||||
|
@ -36,7 +36,7 @@
|
||||||
:remote => true, :confirm => l(:text_are_you_sure), :method => 'delete', :class => "delete", :title => l(:button_delete)) %>
|
:remote => true, :confirm => l(:text_are_you_sure), :method => 'delete', :class => "delete", :title => l(:button_delete)) %>
|
||||||
<% end %>
|
<% end %>
|
||||||
<% if reply_allow %>
|
<% if reply_allow %>
|
||||||
<%= link_to l(:label_projects_feedback_respond),'',
|
<%= link_to l(:button_reply),'',
|
||||||
{:focus => 'project_respond', :onclick => "toggleAndSettingWordsVal($('##{id}'), $('##{id} textarea'), ''); return false;"} %>
|
{:focus => 'project_respond', :onclick => "toggleAndSettingWordsVal($('##{id}'), $('##{id} textarea'), ''); return false;"} %>
|
||||||
<% end %> <!-- #{l(:label_reply_plural)} #{m_reply_id.user.name}: -->
|
<% end %> <!-- #{l(:label_reply_plural)} #{m_reply_id.user.name}: -->
|
||||||
</span>
|
</span>
|
||||||
|
|
|
@ -51,7 +51,7 @@ function checkMaxLength() {
|
||||||
<% ids = 'project_respond_form_'+ journal.id.to_s%>
|
<% ids = 'project_respond_form_'+ journal.id.to_s%>
|
||||||
<span>
|
<span>
|
||||||
<% if reply_allow %>
|
<% if reply_allow %>
|
||||||
<%= link_to l(:label_projects_feedback_respond),'',
|
<%= link_to l(:button_reply),'',
|
||||||
{:focus => 'project_respond', :onclick => "toggleAndSettingWordsVal($('##{ids}'), $('##{ids} textarea'), '#{l(:label_reply_plural)} #{journal.user.name}: '); $('##{ids} textarea') ;return false;"}
|
{:focus => 'project_respond', :onclick => "toggleAndSettingWordsVal($('##{ids}'), $('##{ids} textarea'), '#{l(:label_reply_plural)} #{journal.user.name}: '); $('##{ids} textarea') ;return false;"}
|
||||||
%>
|
%>
|
||||||
<% end %>
|
<% end %>
|
||||||
|
|
|
@ -47,15 +47,15 @@
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<% if User.current.logged? %>
|
<% if User.current.logged? %>
|
||||||
<% if @user.safe_attribute? 'user_message' %>
|
<%# if @user.safe_attribute? 'user_message' %>
|
||||||
<%= f.text_area 'user_message', :rows => 3, :cols => 65,
|
<%= f.text_area 'user_message', :rows => 3, :cols => 65,
|
||||||
:placeholder => "#{l(:label_leave_a_message)}",
|
:placeholder => "#{l(:label_leave_a_message)}",
|
||||||
:style => "resize: none; width: 98%",
|
:style => "resize: none; width: 98%",
|
||||||
:class => 'noline'%>
|
:class => 'noline'%>
|
||||||
<% end %>
|
<%# end %>
|
||||||
<%= f.text_field :reference_user_id, :style=>"display:none"%>
|
<%= f.text_field :reference_user_id, :style=>"display:none"%>
|
||||||
<%= submit_tag l(:button_leave_meassge), :name => nil , :class => "enterprise" , :style => "display: block; float: right; margin-right: 1%; margin-top: 1px;"%>
|
<%= submit_tag l(:button_leave_meassge), :name => nil , :class => "enterprise" , :style => "display: block; float: right; margin-right: 1%; margin-top: 1px;"%>
|
||||||
<% else %>
|
<%else %>
|
||||||
<div style="font-size: 14px;margin:10px;">
|
<div style="font-size: 14px;margin:10px;">
|
||||||
<%= l(:label_user_login_tips) %>
|
<%= l(:label_user_login_tips) %>
|
||||||
<%= link_to l(:label_user_login_new), signin_path %>
|
<%= link_to l(:label_user_login_new), signin_path %>
|
||||||
|
|
|
@ -1,14 +1,14 @@
|
||||||
<%= form_tag(words_create_reply_path, :remote => true) do %>
|
<%= form_tag(words_create_reply_path, :remote => true) do %>
|
||||||
<%= text_area_tag 'user_notes', "", :class => 'noline',
|
<%= text_area_tag 'user_notes', "", :class => 'noline',
|
||||||
:style => "resize: none;", :rows => 4,
|
:style => "resize: none;", :rows => 4,
|
||||||
:placeholder => l(:label_projects_feedback_respond_content),
|
:placeholder => l(:label_feedback_respond_content),
|
||||||
:maxlength => 250 %>
|
:maxlength => 250 %>
|
||||||
|
|
||||||
<%= hidden_field_tag 'reference_id', params[:reference_id], :value => journal.id %>
|
<%= hidden_field_tag 'reference_id', params[:reference_id], :value => journal.id %>
|
||||||
<%= hidden_field_tag 'reference_user_id', params[:reference_user_id], :value => m_reply_id.user.id %>
|
<%= hidden_field_tag 'reference_user_id', params[:reference_user_id], :value => m_reply_id.user.id %>
|
||||||
<%= hidden_field_tag 'reference_message_id', params[:reference_message_id], :value => m_reply_id.id %>
|
<%= hidden_field_tag 'reference_message_id', params[:reference_message_id], :value => m_reply_id.id %>
|
||||||
<%= hidden_field_tag 'show_name',params[:show_name],:value => show_name.nil? ? true : show_name %>
|
<%= hidden_field_tag 'show_name',params[:show_name],:value => show_name.nil? ? true : show_name %>
|
||||||
<%= submit_tag l(:button_projects_feedback_respond), :name => nil ,
|
<%= submit_tag l(:button_feedback_respond), :name => nil ,
|
||||||
:class => "enterprise",
|
:class => "enterprise",
|
||||||
:style => "float: right; margin-top: 1px; margin-right: 4px;"%>
|
:style => "float: right; margin-top: 1px; margin-right: 4px;"%>
|
||||||
|
|
||||||
|
|
|
@ -23,7 +23,7 @@
|
||||||
Kaminari.configure do |config|
|
Kaminari.configure do |config|
|
||||||
# config.default_per_page = 25
|
# config.default_per_page = 25
|
||||||
# config.max_per_page = nil
|
# config.max_per_page = nil
|
||||||
config.window = 2
|
config.window = 0
|
||||||
# config.outer_window = 3
|
# config.outer_window = 3
|
||||||
# config.left = 2
|
# config.left = 2
|
||||||
# config.right = 2
|
# config.right = 2
|
||||||
|
|
|
@ -31,13 +31,13 @@ en:
|
||||||
#
|
#
|
||||||
lable_user_name: Username
|
lable_user_name: Username
|
||||||
label_login_prompt: Email/Trustie account
|
label_login_prompt: Email/Trustie account
|
||||||
label_stay_logged_in: "Keep me signed in"
|
label_stay_logged_in: "Remember me"
|
||||||
label_password_lost: "Forget password?"
|
label_password_lost: "Forget password?"
|
||||||
button_login: Login
|
button_login: Login
|
||||||
# account_controller中判断用户名或密码输入有误的提示信息
|
# account_controller中判断用户名或密码输入有误的提示信息
|
||||||
notice_account_invalid_creditentials: "Invalid user or password."
|
notice_account_invalid_creditentials: "Invalid user or password."
|
||||||
# account_controller中判断未激活的提示信息
|
# account_controller中判断未激活的提示信息
|
||||||
notice_account_invalid_creditentials_new: "Please check your email to activate your account."
|
notice_account_invalid_creditentials_new: "Please check your email to activate your account. Email verification helps our support team verify ownership if you lose account access and allows you to receive all the notifications you ask for. "
|
||||||
|
|
||||||
|
|
||||||
#
|
#
|
||||||
|
@ -81,10 +81,10 @@ en:
|
||||||
#
|
#
|
||||||
# 激活
|
# 激活
|
||||||
#
|
#
|
||||||
label_regiter_account: Registering for an account
|
label_regiter_account: Sign up for Trustie
|
||||||
label_email_valid: E-mail activation
|
label_email_valid: Email verification
|
||||||
notice_email_register_time: "Please click on the link in the email to continue to complete the registration within 24 hours"
|
notice_email_register_time: "Please click the link in verification email to complete the registration within 24 hours."
|
||||||
notice_email_arrival: "An activation email has been sent to the email address you register."
|
notice_email_arrival: "An activation email has been sent to the email address you register."
|
||||||
label_check_email: "Now check your email"
|
label_check_email: "Now check your email"
|
||||||
label_mail_resend: "Resend the activation email"
|
label_mail_resend: "Resend verification email"
|
||||||
notice_account_activated: "Your Trustie account has been activated. You can now sign in."
|
notice_account_activated: "Your Trustie account has been activated. You can now sign in."
|
|
@ -39,7 +39,7 @@ zh:
|
||||||
# account_controller中判断用户名或密码输入有误的提示信息
|
# account_controller中判断用户名或密码输入有误的提示信息
|
||||||
notice_account_invalid_creditentials: "无效的用户名或密码"
|
notice_account_invalid_creditentials: "无效的用户名或密码"
|
||||||
# account_controller中判断未激活的提示信息
|
# account_controller中判断未激活的提示信息
|
||||||
notice_account_invalid_creditentials_new: "您还未到邮箱激活"
|
notice_account_invalid_creditentials_new: "您还未到邮箱激活。如果您丢失帐户,电子邮件验证帮助我们的支持团队验证帐户的所有权,并允许您接收所有您要求的通知。"
|
||||||
|
|
||||||
|
|
||||||
#
|
#
|
||||||
|
@ -84,7 +84,7 @@ zh:
|
||||||
#
|
#
|
||||||
label_regiter_account: 注册帐号
|
label_regiter_account: 注册帐号
|
||||||
label_email_valid: 邮箱激活
|
label_email_valid: 邮箱激活
|
||||||
notice_email_register_time: 请在24小时内点击邮件中的链接继续完成注册
|
notice_email_register_time: 请在24小时内点击邮件中的链接完成注册
|
||||||
notice_email_arrival: 邮件已发送到邮箱
|
notice_email_arrival: 邮件已发送到邮箱
|
||||||
label_check_email: 立即查收邮件
|
label_check_email: 立即查收邮件
|
||||||
label_mail_resend: 重新发送激活邮件
|
label_mail_resend: 重新发送激活邮件
|
||||||
|
|
|
@ -155,12 +155,20 @@ en:
|
||||||
|
|
||||||
actionview_instancetag_blank_option: Please select
|
actionview_instancetag_blank_option: Please select
|
||||||
|
|
||||||
|
#
|
||||||
|
# Trustie公共标签
|
||||||
|
#
|
||||||
|
#
|
||||||
|
#
|
||||||
label_user: User
|
label_user: User
|
||||||
label_project: Project
|
label_project: Project
|
||||||
label_issue: Issue
|
label_issue: Issue
|
||||||
label_requirement: Calls
|
label_requirement: Calls
|
||||||
label_forum: Forum
|
label_forum: Forum
|
||||||
|
label_contest: Contest
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
label_issue_plural: Issues Tracking
|
label_issue_plural: Issues Tracking
|
||||||
label_project_plural: Projects
|
label_project_plural: Projects
|
||||||
|
@ -172,7 +180,21 @@ en:
|
||||||
|
|
||||||
label_loading: Loading...
|
label_loading: Loading...
|
||||||
|
|
||||||
|
label_create_time: Created time
|
||||||
|
label_update_time: Update time
|
||||||
|
|
||||||
|
label_reply: Reply
|
||||||
|
|
||||||
|
label_anonymous: Anonymous #作业和留言 模块
|
||||||
|
|
||||||
|
text_are_you_sure: Are you sure? #js 提示
|
||||||
|
|
||||||
|
|
||||||
|
# 项目、课程、用户公用
|
||||||
|
label_settings: Settings
|
||||||
|
label_information_plural: Information
|
||||||
|
label_member_plural: Members
|
||||||
|
|
||||||
#
|
#
|
||||||
# Trustie按钮类
|
# Trustie按钮类
|
||||||
#
|
#
|
||||||
|
@ -184,9 +206,13 @@ en:
|
||||||
button_cancel: Cancel
|
button_cancel: Cancel
|
||||||
label_submit: Submit
|
label_submit: Submit
|
||||||
button_project_tags_add: Add
|
button_project_tags_add: Add
|
||||||
label_more: More
|
label_more: "More>>"
|
||||||
button_download: Download
|
button_download: Download
|
||||||
|
button_delete: Delete
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
#
|
#
|
||||||
# Trustie上传头像模块
|
# Trustie上传头像模块
|
||||||
#
|
#
|
||||||
|
@ -194,7 +220,6 @@ en:
|
||||||
#
|
#
|
||||||
button_upload_photo: Upload photo
|
button_upload_photo: Upload photo
|
||||||
button_delete_file: delete
|
button_delete_file: delete
|
||||||
text_are_you_sure: Are you sure?
|
|
||||||
error_attachment_too_big: "This file cannot be uploaded because it exceeds the maximum allowed file size (%{max_size})"
|
error_attachment_too_big: "This file cannot be uploaded because it exceeds the maximum allowed file size (%{max_size})"
|
||||||
error_pic_type: "Only supports the following image formats:"
|
error_pic_type: "Only supports the following image formats:"
|
||||||
|
|
||||||
|
@ -207,7 +232,7 @@ en:
|
||||||
label_tag: Tag
|
label_tag: Tag
|
||||||
label_tags_no: no tags now!
|
label_tags_no: no tags now!
|
||||||
label_more_tags: More
|
label_more_tags: More
|
||||||
label_add_tag: '+ Add tags'
|
label_add_tag: "+ Add tags"
|
||||||
|
|
||||||
label_tags_count: "The total number of tags:"
|
label_tags_count: "The total number of tags:"
|
||||||
|
|
||||||
|
@ -251,14 +276,98 @@ en:
|
||||||
sharer: "Sharer:"
|
sharer: "Sharer:"
|
||||||
upload_time: "Upload time:"
|
upload_time: "Upload time:"
|
||||||
|
|
||||||
|
|
||||||
|
#
|
||||||
|
# 项目托管平台主页
|
||||||
|
#
|
||||||
|
# 用户动态栏
|
||||||
|
#
|
||||||
|
lable_user_active: Recent Activities
|
||||||
|
user:
|
||||||
|
active:
|
||||||
|
published: released
|
||||||
|
uploaded: uploaded
|
||||||
|
updated: updated
|
||||||
|
unknow: unknown content
|
||||||
|
|
||||||
|
|
||||||
|
field_user_active_news: ' news'
|
||||||
|
field_user_active_issue: ' issue'
|
||||||
|
field_user_active_attachment: ' attachment'
|
||||||
|
field_user_active_message: ' message'
|
||||||
|
field_user_active_reply: ' reply'
|
||||||
|
field_user_active_bid: ' work'
|
||||||
|
field_user_active_memo: ' memo'
|
||||||
|
field_user_active_document: ' document'
|
||||||
|
field_user_active_changeset: ' repository'
|
||||||
|
field_user_active_issue_note: ' issue-note'
|
||||||
|
|
||||||
|
field_updated_on: Updated on
|
||||||
|
field_time_ago: ago
|
||||||
|
field_active_reply: "Reply("
|
||||||
|
# 用户动态中event.title和event.description
|
||||||
|
# 通过act_as_event方法的option配置
|
||||||
|
# "#{o.tracker.name} ##{o.id} (#{o.status}): #{o.subject}"
|
||||||
|
# "缺陷 #1869 (已解决):subject"
|
||||||
|
# tracker.name和status在数据库中以中文字段形式存储
|
||||||
|
|
||||||
|
# 项目托管平台主页 > 贴吧动态栏
|
||||||
|
lable_bar_active: Question&Feedback
|
||||||
|
label_my_question: My-question
|
||||||
|
label_my_feedback: My-feedback
|
||||||
|
label_updated_time: "Updated %{value} ago"
|
||||||
|
label_question_sponsor: Sponsor
|
||||||
|
label_final_reply: Last-reply
|
||||||
|
|
||||||
|
|
||||||
|
#
|
||||||
|
# 项目托管平台
|
||||||
|
#
|
||||||
|
# 意见反馈
|
||||||
|
#
|
||||||
|
label_feedback: Feedback
|
||||||
|
label_feedback_tips: "Anything you want to say, roar it here ~~"
|
||||||
|
label_technical_support: "Support: "
|
||||||
|
label_feedback_success: "Your comments have been posted back to the bar of discussion by newbie(in the Public Post Bar), we will be the first time to solve your problem, thanks for your support!"
|
||||||
|
label_feedback_value: "The posts comes from user feedback!"
|
||||||
|
|
||||||
|
|
||||||
|
#
|
||||||
|
# Trustie
|
||||||
|
#
|
||||||
|
# 新闻
|
||||||
|
#
|
||||||
|
label_news: 新闻
|
||||||
|
|
||||||
|
|
||||||
#
|
#
|
||||||
# Trustie
|
# Trustie
|
||||||
#
|
#
|
||||||
#
|
# 日志
|
||||||
#
|
#
|
||||||
|
label_log_detail: "日志详情"
|
||||||
|
label_log_delete_log: "删除日志"
|
||||||
|
label_log_access_analysis: "访问统计"
|
||||||
|
label_log_time_analysis: "耗时分析"
|
||||||
|
label_log_refresh: "刷新"
|
||||||
|
label_log_key: "关键字:"
|
||||||
|
label_log_time: "时间:"
|
||||||
|
label_log_delete_confirm: "确认清除该天日志内容?"
|
||||||
|
label_log_access_count: "访问次数"
|
||||||
|
label_log_url: "URL路径"
|
||||||
|
label_log_ip: "访问IP"
|
||||||
|
label_log_access_time: "访问时间"
|
||||||
|
label_log_access_controller_action: "模块路径"
|
||||||
|
label_log_response_time: "响应时间"
|
||||||
|
label_log_views_time: "页面渲染时间"
|
||||||
|
label_log_views_time_percent: "页面渲染时间百分比"
|
||||||
|
label_log_active_record_time: "AR响应时间"
|
||||||
|
label_log_active_record_time_percent: "AR响应时间百分比"
|
||||||
|
views:
|
||||||
|
pagination:
|
||||||
|
first: "« 首页"
|
||||||
|
last: "末页 »"
|
||||||
|
previous: "« 上一页"
|
||||||
|
next: "下一页 »"
|
||||||
|
truncate: "..."
|
||||||
|
|
|
@ -6,178 +6,39 @@ zh:
|
||||||
direction: ltr
|
direction: ltr
|
||||||
jquery:
|
jquery:
|
||||||
locale: "zh-CN"
|
locale: "zh-CN"
|
||||||
date:
|
|
||||||
formats:
|
|
||||||
# Use the strftime parameters for formats.
|
|
||||||
# When no format has been given, it uses default.
|
|
||||||
# You can provide other formats here if you like!
|
|
||||||
default: "%Y-%m-%d"
|
|
||||||
short: "%b%d日"
|
|
||||||
long: "%Y年%b%d日"
|
|
||||||
zh_date:
|
|
||||||
formats:
|
|
||||||
default: "%Y年%m月%d日"
|
|
||||||
|
|
||||||
day_names: [星期天, 星期一, 星期二, 星期三, 星期四, 星期五, 星期六]
|
|
||||||
abbr_day_names: [日, 一, 二, 三, 四, 五, 六]
|
|
||||||
|
|
||||||
# Don't forget the nil at the beginning; there's no such thing as a 0th month
|
|
||||||
month_names: [~, 一月, 二月, 三月, 四月, 五月, 六月, 七月, 八月, 九月, 十月, 十一月, 十二月]
|
|
||||||
abbr_month_names: [~, 1月, 2月, 3月, 4月, 5月, 6月, 7月, 8月, 9月, 10月, 11月, 12月]
|
|
||||||
# Used in date_select and datime_select.
|
|
||||||
order:
|
|
||||||
- :year
|
|
||||||
- :month
|
|
||||||
- :day
|
|
||||||
|
|
||||||
|
|
||||||
errors:
|
|
||||||
messages:
|
|
||||||
email_verifier:
|
|
||||||
email_not_real: 必须指定一个真实的邮箱地址
|
|
||||||
out_of_mail_server: 指向了一个已停用的邮箱服务器
|
|
||||||
no_mail_server: 域名地址没有邮件功能
|
|
||||||
failure: 邮箱地址不能被验证
|
|
||||||
exception: 邮箱不能发送成功
|
|
||||||
|
|
||||||
|
|
||||||
time:
|
|
||||||
formats:
|
|
||||||
default: "%Y年%b%d日 %A %H:%M:%S"
|
|
||||||
time: "%H:%M"
|
|
||||||
short: "%b%d日 %H:%M"
|
|
||||||
long: "%Y年%b%d日 %H:%M"
|
|
||||||
am: "上午"
|
|
||||||
pm: "下午"
|
|
||||||
|
|
||||||
datetime:
|
|
||||||
distance_in_words:
|
|
||||||
half_a_minute: "半分钟"
|
|
||||||
less_than_x_seconds:
|
|
||||||
one: "1秒内"
|
|
||||||
other: "少于 %{count} 秒"
|
|
||||||
x_seconds:
|
|
||||||
one: "1秒"
|
|
||||||
other: "%{count} 秒"
|
|
||||||
less_than_x_minutes:
|
|
||||||
one: "1分钟内"
|
|
||||||
other: "少于 %{count} 分钟"
|
|
||||||
x_minutes:
|
|
||||||
one: "1分钟"
|
|
||||||
other: "%{count} 分钟"
|
|
||||||
about_x_hours:
|
|
||||||
one: "大约1小时"
|
|
||||||
other: "大约 %{count} 小时"
|
|
||||||
x_hours:
|
|
||||||
one: "1 小时"
|
|
||||||
other: "%{count} 小时"
|
|
||||||
x_days:
|
|
||||||
one: "1天"
|
|
||||||
other: "%{count} 天"
|
|
||||||
about_x_months:
|
|
||||||
one: "大约1个月"
|
|
||||||
other: "大约 %{count} 个月"
|
|
||||||
x_months:
|
|
||||||
one: "1个月"
|
|
||||||
other: "%{count} 个月"
|
|
||||||
about_x_years:
|
|
||||||
one: "大约1年"
|
|
||||||
other: "大约 %{count} 年"
|
|
||||||
over_x_years:
|
|
||||||
one: "超过1年"
|
|
||||||
other: "超过 %{count} 年"
|
|
||||||
almost_x_years:
|
|
||||||
one: "将近 1 年"
|
|
||||||
other: "将近 %{count} 年"
|
|
||||||
|
|
||||||
number:
|
|
||||||
# Default format for numbers
|
|
||||||
format:
|
|
||||||
separator: "."
|
|
||||||
delimiter: ""
|
|
||||||
precision: 3
|
|
||||||
human:
|
|
||||||
format:
|
|
||||||
delimiter: ""
|
|
||||||
precision: 3
|
|
||||||
storage_units:
|
|
||||||
format: "%n %u"
|
|
||||||
units:
|
|
||||||
byte:
|
|
||||||
one: "Byte"
|
|
||||||
other: "Bytes"
|
|
||||||
kb: "KB"
|
|
||||||
mb: "MB"
|
|
||||||
gb: "GB"
|
|
||||||
tb: "TB"
|
|
||||||
|
|
||||||
# Used in array.to_sentence.
|
|
||||||
support:
|
|
||||||
array:
|
|
||||||
sentence_connector: "和"
|
|
||||||
skip_last_comma: false
|
|
||||||
|
|
||||||
activerecord:
|
|
||||||
errors:
|
|
||||||
template:
|
|
||||||
header:
|
|
||||||
one: "由于发生了一个错误 %{model} 无法保存"
|
|
||||||
other: "%{count} 个错误使得 %{model} 无法保存"
|
|
||||||
messages:
|
|
||||||
inclusion: "不包含于列表中"
|
|
||||||
exclusion: "是保留关键字"
|
|
||||||
invalid: "是无效的"
|
|
||||||
confirmation: "与确认值不匹配"
|
|
||||||
accepted: "必须是可被接受的"
|
|
||||||
empty: "不能留空"
|
|
||||||
blank: "不能为空字符"
|
|
||||||
too_long: "过长(最长为 %{count} 个字符)"
|
|
||||||
too_short: "过短(最短为 %{count} 个字符)"
|
|
||||||
wrong_length: "长度非法(必须为 %{count} 个字符)"
|
|
||||||
taken: "已经被使用"
|
|
||||||
not_a_number: "不是数字"
|
|
||||||
not_a_date: "不是合法日期"
|
|
||||||
greater_than: "必须大于 %{count}"
|
|
||||||
greater_than_or_equal_to: "必须大于或等于 %{count}"
|
|
||||||
equal_to: "必须等于 %{count}"
|
|
||||||
less_than: "必须小于 %{count}"
|
|
||||||
less_than_or_equal_to: "必须小于或等于 %{count}"
|
|
||||||
odd: "必须为单数"
|
|
||||||
even: "必须为双数"
|
|
||||||
greater_than_start_date: "必须在起始日期之后"
|
|
||||||
not_same_project: "不属于同一个项目"
|
|
||||||
circular_dependency: "此关联将导致循环依赖"
|
|
||||||
cant_link_an_issue_with_a_descendant: "问题不能关联到它的子任务"
|
|
||||||
groupname_repeat: "该班名已存在"
|
|
||||||
|
|
||||||
attachment_all: "全部"
|
|
||||||
attachment_sufix_browse: "文件类型"
|
|
||||||
attachment_browse: "内容类型"
|
|
||||||
attachment_type: '分类'
|
|
||||||
general_text_No: '否'
|
|
||||||
general_text_Yes: '是'
|
|
||||||
general_text_no: '否'
|
|
||||||
general_text_yes: '是'
|
|
||||||
general_lang_name: 'Simplified Chinese (简体中文)'
|
|
||||||
general_csv_separator: ','
|
|
||||||
general_csv_decimal_separator: '.'
|
|
||||||
general_csv_encoding: gb18030
|
|
||||||
general_pdf_encoding: gb18030
|
|
||||||
general_first_day_of_week: '7'
|
|
||||||
|
|
||||||
actionview_instancetag_blank_option: 请选择
|
|
||||||
|
|
||||||
|
#
|
||||||
|
# Trustie公共标签
|
||||||
|
#
|
||||||
|
#
|
||||||
|
#
|
||||||
label_user: 用户
|
label_user: 用户
|
||||||
label_project: 项目
|
label_project: 项目
|
||||||
label_issue: 问题
|
label_issue: 问题
|
||||||
label_requirement: 需求
|
label_requirement: 需求
|
||||||
label_forum: 公共贴吧
|
label_forum: 公共贴吧
|
||||||
|
label_contest: 竞赛
|
||||||
|
|
||||||
|
|
||||||
field_description: 描述
|
field_description: 描述
|
||||||
|
|
||||||
label_loading: 载入中...
|
label_loading: 载入中...
|
||||||
|
|
||||||
|
label_create_time: 创建时间
|
||||||
|
label_update_time: 更新时间
|
||||||
|
label_reply: 回复
|
||||||
|
|
||||||
|
label_anonymous: 匿名 #作业和留言 模块
|
||||||
|
|
||||||
|
|
||||||
|
text_are_you_sure: 您确定要删除吗? #js 提示
|
||||||
|
|
||||||
|
# 项目、课程、用户公用
|
||||||
|
label_settings: 配置
|
||||||
|
label_information_plural: 信息
|
||||||
|
label_member_plural: 成员
|
||||||
|
|
||||||
#
|
#
|
||||||
# Trustie按钮类
|
# Trustie按钮类
|
||||||
#
|
#
|
||||||
|
@ -189,9 +50,12 @@ zh:
|
||||||
button_cancel: 取消
|
button_cancel: 取消
|
||||||
label_submit: 提交
|
label_submit: 提交
|
||||||
button_project_tags_add: 增加
|
button_project_tags_add: 增加
|
||||||
label_more: 更多>>
|
label_more: "更多>>"
|
||||||
button_download: 下载
|
button_download: 下载
|
||||||
|
button_more: 更多
|
||||||
|
button_delete: 删除
|
||||||
|
|
||||||
|
|
||||||
#
|
#
|
||||||
# Trustie上传头像模块
|
# Trustie上传头像模块
|
||||||
#
|
#
|
||||||
|
@ -199,7 +63,6 @@ zh:
|
||||||
#
|
#
|
||||||
button_upload_photo: 上传图片
|
button_upload_photo: 上传图片
|
||||||
button_delete_file: 删除
|
button_delete_file: 删除
|
||||||
text_are_you_sure: 您确定要删除吗?
|
|
||||||
error_attachment_too_big: 该文件无法上传。超过文件大小限制 (%{max_size})
|
error_attachment_too_big: 该文件无法上传。超过文件大小限制 (%{max_size})
|
||||||
error_pic_type: "仅支持如下图片格式:"
|
error_pic_type: "仅支持如下图片格式:"
|
||||||
|
|
||||||
|
@ -263,5 +126,105 @@ zh:
|
||||||
sharer: "共享者:"
|
sharer: "共享者:"
|
||||||
upload_time: "上传时间:"
|
upload_time: "上传时间:"
|
||||||
|
|
||||||
|
#
|
||||||
|
# 项目托管平台主页
|
||||||
|
#
|
||||||
|
# 用户动态栏
|
||||||
|
#
|
||||||
|
lable_user_active: 用户动态
|
||||||
|
user:
|
||||||
|
active:
|
||||||
|
published: 发表了
|
||||||
|
uploaded: 上传了
|
||||||
|
updated: 更新了
|
||||||
|
unknow: 未知内容
|
||||||
|
|
||||||
|
field_user_active_news: 新闻
|
||||||
|
field_user_active_issue: 问题
|
||||||
|
field_user_active_attachment: 附件
|
||||||
|
field_user_active_message: 主题
|
||||||
|
field_user_active_reply: 回复
|
||||||
|
field_user_active_bid: 作业
|
||||||
|
field_user_active_memo: 主题
|
||||||
|
field_user_active_document: 文件
|
||||||
|
field_user_active_changeset: 版本库
|
||||||
|
field_user_active_issue_note: 问题说明
|
||||||
|
|
||||||
|
field_updated_on: 更新于
|
||||||
|
field_time_ago: 前
|
||||||
|
field_active_reply: "回复("
|
||||||
|
|
||||||
|
#
|
||||||
|
# 项目托管平台主页
|
||||||
|
#
|
||||||
|
# 贴吧动态栏
|
||||||
|
#
|
||||||
|
lable_bar_active: 问题和反馈动态
|
||||||
|
label_my_question: 我要提问
|
||||||
|
label_my_feedback: 我要反馈
|
||||||
|
|
||||||
|
label_updated_time: " 更新于 %{value} 之前"
|
||||||
|
label_question_sponsor: 楼主
|
||||||
|
label_final_reply: 最后回复
|
||||||
|
|
||||||
|
|
||||||
|
#
|
||||||
|
# 项目托管平台
|
||||||
|
#
|
||||||
|
# 意见反馈
|
||||||
|
#
|
||||||
|
label_feedback: 意见反馈
|
||||||
|
label_feedback_tips: "有什么想说的,尽管来咆哮吧~~"
|
||||||
|
label_technical_support: "技术支持:"
|
||||||
|
label_feedback_success: "您的意见已经反馈到公共贴吧的新手讨论吧,我们会第一时间解决您的问题,谢谢支持!"
|
||||||
|
label_feedback_value: "该贴来自用户反馈!"
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
#
|
||||||
|
#
|
||||||
|
#
|
||||||
|
# 评论
|
||||||
|
#
|
||||||
|
label_find_all_comments: 查看所有评论
|
||||||
|
label_comments_count: (%{count}条评论)
|
||||||
|
|
||||||
|
#
|
||||||
|
#
|
||||||
|
#
|
||||||
|
# 新闻
|
||||||
|
#
|
||||||
|
label_news: 新闻
|
||||||
|
|
||||||
|
|
||||||
|
#
|
||||||
|
#
|
||||||
|
#
|
||||||
|
# 日志
|
||||||
|
#
|
||||||
|
label_log_detail: "日志详情"
|
||||||
|
label_log_delete_log: "删除日志"
|
||||||
|
label_log_access_analysis: "访问统计"
|
||||||
|
label_log_time_analysis: "耗时分析"
|
||||||
|
label_log_refresh: "刷新"
|
||||||
|
label_log_key: "关键字:"
|
||||||
|
label_log_time: "时间:"
|
||||||
|
label_log_delete_confirm: "确认清除该天日志内容?"
|
||||||
|
label_log_access_count: "访问次数"
|
||||||
|
label_log_url: "URL路径"
|
||||||
|
label_log_ip: "访问IP"
|
||||||
|
label_log_access_time: "访问时间"
|
||||||
|
label_log_access_controller_action: "模块路径"
|
||||||
|
label_log_response_time: "响应时间"
|
||||||
|
label_log_views_time: "页面渲染时间"
|
||||||
|
label_log_views_time_percent: "页面渲染时间百分比"
|
||||||
|
label_log_active_record_time: "AR响应时间"
|
||||||
|
label_log_active_record_time_percent: "AR响应时间百分比"
|
||||||
|
views:
|
||||||
|
pagination:
|
||||||
|
first: "« 首页"
|
||||||
|
last: "末页 »"
|
||||||
|
previous: "« 上一页"
|
||||||
|
next: "下一页 »"
|
||||||
|
truncate: "..."
|
|
@ -1,3 +1,18 @@
|
||||||
en:
|
en:
|
||||||
# Text direction: Left-to-Right (ltr) or Right-to-Left (rtl)
|
# Text direction: Left-to-Right (ltr) or Right-to-Left (rtl)
|
||||||
direction: ltr
|
direction: ltr
|
||||||
|
|
||||||
|
|
||||||
|
# 托管平台主页 > 底部承办单位
|
||||||
|
label_hosted_by: Organizer
|
||||||
|
label_hosted_by: National Key Laboratory for Parallel and Distributed Processing, NUDT
|
||||||
|
label_sponsor: Department of Computer Science and Technology, NUDT
|
||||||
|
label_co_organizer_NUDT: College of Computer, NUDT
|
||||||
|
label_co_organizer_EECS: Institute of Software, EECS
|
||||||
|
label_co_organizer_BHU: Beihang University School of Computer Science & Engineering
|
||||||
|
label_co_organizer_CAS: Institute of Software, CAS
|
||||||
|
label_co_organizer_InforS: InforSuite
|
||||||
|
label_rights_reserved: ©2007~2014
|
||||||
|
label_contact_us: Contact
|
||||||
|
# 英文版不需要显示国内许可证 ,需要页面做判断
|
||||||
|
# label_license: 湘ICP备09019772
|
|
@ -1,4 +1,62 @@
|
||||||
en:
|
en:
|
||||||
# Text direction: Left-to-Right (ltr) or Right-to-Left (rtl)
|
# Text direction: Left-to-Right (ltr) or Right-to-Left (rtl)
|
||||||
direction: ltr
|
direction: ltr
|
||||||
|
#
|
||||||
|
# 课程托管平台
|
||||||
|
#
|
||||||
|
# 课程公共标签
|
||||||
|
#
|
||||||
|
label_course_join_student: 加入课程
|
||||||
|
label_course_new: 新建课程
|
||||||
|
|
||||||
|
label_homework: 课程作业
|
||||||
|
label_course_news: 课程通知
|
||||||
|
label_main_teacher: 主讲教师
|
||||||
|
label_course_term: 开课学期
|
||||||
|
|
||||||
|
label_join_course: 加入
|
||||||
|
label_exit_course: exit course
|
||||||
|
# 资源库 (课程、项目按类型分)
|
||||||
|
label_course_file: File
|
||||||
|
label_upload_files: Upload
|
||||||
|
|
||||||
|
#
|
||||||
|
# 课程托管平台主页
|
||||||
|
#
|
||||||
|
# 热门课程栏
|
||||||
|
#
|
||||||
|
label_school_no_course: The school did not offer any courses, you can view other school curriculum
|
||||||
|
label_school_less_course: The school offers courses in less, you can view other school curriculum
|
||||||
|
|
||||||
|
|
||||||
|
#
|
||||||
|
# 课程托管平台
|
||||||
|
#
|
||||||
|
# 新建课程
|
||||||
|
#
|
||||||
|
lable_input_class: Type in class period here
|
||||||
|
|
||||||
|
|
||||||
|
# 教师权限课程关闭和重启
|
||||||
|
label_course_closed: Close
|
||||||
|
label_course_reload: Reopen
|
||||||
|
label_course_closed_tips: "Are you sure you want to reopen the course?"
|
||||||
|
# end
|
||||||
|
|
||||||
|
|
||||||
|
# 课程排序
|
||||||
|
label_sort_by_time: sorted by time
|
||||||
|
label_sort_by_active: sorted by active
|
||||||
|
label_sort_by_influence: sorted by influence
|
||||||
|
label_sort_by_activity: Sort by activities
|
||||||
|
# end
|
||||||
|
|
||||||
|
|
||||||
|
#
|
||||||
|
# 课程托管平台
|
||||||
|
#
|
||||||
|
# 课程资源上传
|
||||||
|
#
|
||||||
|
label_file_upload: Resource files
|
||||||
|
label_file_upload_error_messages: "Upload error, please check your network environment, and refresh the page to upload."
|
||||||
|
button_confirm: Confirm
|
|
@ -5,6 +5,64 @@ zh:
|
||||||
# Text direction: Left-to-Right (ltr) or Right-to-Left (rtl)
|
# Text direction: Left-to-Right (ltr) or Right-to-Left (rtl)
|
||||||
direction: ltr
|
direction: ltr
|
||||||
|
|
||||||
|
#
|
||||||
|
# 课程托管平台
|
||||||
|
#
|
||||||
|
# 课程公共标签
|
||||||
|
#
|
||||||
|
label_course_join_student: 加入课程
|
||||||
|
label_course_new: 新建课程
|
||||||
|
|
||||||
|
label_homework: 课程作业
|
||||||
|
label_course_news: 课程通知
|
||||||
|
label_main_teacher: 主讲教师
|
||||||
|
label_course_term: 开课学期
|
||||||
|
|
||||||
|
label_join_course: 加入
|
||||||
|
label_exit_course: 退出
|
||||||
|
# 资源库 (课程、项目按类型分)
|
||||||
|
label_course_file: 资源库
|
||||||
|
label_upload_files: 上传资源
|
||||||
|
|
||||||
|
#
|
||||||
|
# 课程托管平台主页
|
||||||
|
#
|
||||||
|
# 热门课程栏
|
||||||
|
#
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
label_school_no_course: 该学校本学期未开设任何课程,您可以查看其他学校课程
|
||||||
|
label_school_less_course: 该学校本学期开设课程较少,您也可以查看其他学校课程
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
#
|
||||||
|
# 课程托管平台
|
||||||
|
#
|
||||||
|
# 新建课程
|
||||||
|
#
|
||||||
|
lable_input_class: 在此输入课时
|
||||||
|
|
||||||
|
|
||||||
|
# 教师权限课程关闭和重启
|
||||||
|
label_course_closed: 关闭
|
||||||
|
label_course_reload: 重开
|
||||||
|
label_course_closed_tips: "确定要%{desc}课程?"
|
||||||
|
# end
|
||||||
|
|
||||||
|
|
||||||
|
# 课程排序
|
||||||
|
label_sort_by_time: 按时间排序
|
||||||
|
label_sort_by_active: 按活跃度排序
|
||||||
|
label_sort_by_influence: 按影响力排序
|
||||||
|
label_sort_by_activity: 按动态数排序
|
||||||
|
# end
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
#
|
#
|
||||||
|
|
|
@ -27,7 +27,7 @@ en:
|
||||||
notice_account_deleted: "Your account has been permanently deleted."
|
notice_account_deleted: "Your account has been permanently deleted."
|
||||||
notice_user_successful_create: "User %{id} created."
|
notice_user_successful_create: "User %{id} created."
|
||||||
|
|
||||||
error_attachment_empty: "error in add file"
|
error_attachment_empty: "error in add file"
|
||||||
error_class_period_only_num: "class period can only digital"
|
error_class_period_only_num: "class period can only digital"
|
||||||
error_can_t_load_default_data: "Default configuration could not be loaded: %{value}"
|
error_can_t_load_default_data: "Default configuration could not be loaded: %{value}"
|
||||||
error_scm_not_found: "The entry or revision was not found in the repository."
|
error_scm_not_found: "The entry or revision was not found in the repository."
|
||||||
|
@ -102,7 +102,6 @@ en:
|
||||||
field_user: User
|
field_user: User
|
||||||
field_principal: Principal
|
field_principal: Principal
|
||||||
field_role: Role
|
field_role: Role
|
||||||
field_homepage: Homepage
|
|
||||||
field_parent: Subproject of
|
field_parent: Subproject of
|
||||||
field_is_in_roadmap: Issues displayed in roadmap
|
field_is_in_roadmap: Issues displayed in roadmap
|
||||||
field_admin: Administrator
|
field_admin: Administrator
|
||||||
|
@ -332,15 +331,8 @@ en:
|
||||||
|
|
||||||
project_module_issue_tracking: Issue tracking
|
project_module_issue_tracking: Issue tracking
|
||||||
project_module_time_tracking: Time tracking
|
project_module_time_tracking: Time tracking
|
||||||
project_module_news: News
|
|
||||||
project_module_documents: Documents
|
|
||||||
project_module_files: Files
|
project_module_files: Files
|
||||||
project_module_wiki: Wiki
|
project_module_boards: Forums
|
||||||
project_module_repository: Repository
|
|
||||||
project_module_boards: Forums
|
|
||||||
project_module_calendar: Calendar
|
|
||||||
project_module_gantt: Gantt
|
|
||||||
|
|
||||||
# edit by meng
|
# edit by meng
|
||||||
lable_hot_course: Hot Courses
|
lable_hot_course: Hot Courses
|
||||||
label_course_join_student: Join a course
|
label_course_join_student: Join a course
|
||||||
|
@ -354,7 +346,7 @@ en:
|
||||||
label_user_for_project_grade: Score
|
label_user_for_project_grade: Score
|
||||||
label_relation_files: Select an existing resource
|
label_relation_files: Select an existing resource
|
||||||
# Personal signature tips
|
# Personal signature tips
|
||||||
label_my_brief_introduction: How are feeling today? Leave your footprints ~
|
|
||||||
|
|
||||||
# create course and course info
|
# create course and course info
|
||||||
|
|
||||||
|
@ -378,27 +370,21 @@ en:
|
||||||
label_student_score: Student's score
|
label_student_score: Student's score
|
||||||
label_without_score: No evaluated
|
label_without_score: No evaluated
|
||||||
label_homework_description: Description
|
label_homework_description: Description
|
||||||
label_responses: Messages
|
|
||||||
lable_has_commit_homework: You have submitted your work
|
lable_has_commit_homework: You have submitted your work
|
||||||
label_user_create_project_homework: created the task
|
label_user_create_project_homework: created the task
|
||||||
label_commit_limit: Expired but can submit your work
|
label_commit_limit: Expired but can submit your work
|
||||||
# steam the student
|
# steam the student
|
||||||
label_current_group: Current group
|
label_current_group: Current group
|
||||||
# DTS Test tool
|
|
||||||
project_module_dts: DTS Test tool
|
|
||||||
label_module_share: DTS Test tool
|
|
||||||
field_dts_test: DTS Test tool
|
|
||||||
# Feedback module
|
|
||||||
label_technical_support: Support :
|
|
||||||
label_feedback: Feedback
|
|
||||||
#end
|
|
||||||
label_user_plural: Users
|
label_user_plural: Users
|
||||||
label_user_new: New user
|
label_user_new: New user
|
||||||
label_user_anonymous: Anonymous
|
label_user_anonymous: Anonymous
|
||||||
label_activity_project: 'Project: ' #added by bai
|
label_user_activity: "%{value}'s activities"
|
||||||
|
|
||||||
label_project_plural: Projects
|
label_project_plural: Projects
|
||||||
label_project_deposit: Projects
|
|
||||||
label_first_page_made: Homepage customization
|
label_first_page_made: Homepage customization
|
||||||
label_project_first_page: Project hosting platform page
|
label_project_first_page: Project hosting platform page
|
||||||
label_course_first_page: Practice teaching platform of home page
|
label_course_first_page: Practice teaching platform of home page
|
||||||
|
@ -445,7 +431,6 @@ en:
|
||||||
label_role_non_member: Non member
|
label_role_non_member: Non member
|
||||||
label_member: Members
|
label_member: Members
|
||||||
label_member_new: New member
|
label_member_new: New member
|
||||||
label_member_plural: Members
|
|
||||||
label_tracker: Tracker
|
label_tracker: Tracker
|
||||||
label_tracker_plural: Trackers
|
label_tracker_plural: Trackers
|
||||||
label_tracker_new: New tracker
|
label_tracker_new: New tracker
|
||||||
|
@ -454,34 +439,29 @@ en:
|
||||||
label_issue_status_plural: Issue statuses
|
label_issue_status_plural: Issue statuses
|
||||||
label_issue_status_new: New status
|
label_issue_status_new: New status
|
||||||
label_issue_category: Issue category
|
label_issue_category: Issue category
|
||||||
label_issue_category_plural: Issue categories
|
|
||||||
label_issue_category_new: New category
|
label_issue_category_new: New category
|
||||||
label_custom_field: Custom field
|
label_custom_field: Custom field
|
||||||
label_custom_field_plural: Custom fields
|
label_custom_field_plural: Custom fields
|
||||||
label_custom_field_new: New custom field
|
label_custom_field_new: New custom field
|
||||||
label_enumerations: Enumerations
|
label_enumerations: Enumerations
|
||||||
label_enumeration_new: New value
|
label_enumeration_new: New value
|
||||||
label_information: Information
|
|
||||||
label_information_plural: Information
|
|
||||||
label_please_login: Please log in
|
label_please_login: Please log in
|
||||||
label_home: Home
|
label_home: Home
|
||||||
label_my_page: My page
|
label_my_page: My page
|
||||||
|
|
||||||
label_my_message: Msgs
|
|
||||||
label_my_projects: My projects
|
|
||||||
label_my_page_block: My page block
|
label_my_page_block: My page block
|
||||||
label_administration: Administration
|
label_administration: Administration
|
||||||
label_login: Login
|
|
||||||
# end
|
# end
|
||||||
label_help: Help
|
label_help: Help
|
||||||
|
|
||||||
label_last_login: Last connection
|
label_last_login: Last connection
|
||||||
label_registered_on: Registered on
|
label_registered_on: Registered on
|
||||||
label_activity: Activities
|
|
||||||
label_overall_activity: Overall activity
|
label_overall_activity: Overall activity
|
||||||
label_user_activity: "%{value}'s activity"
|
|
||||||
label_new: New
|
label_new: New
|
||||||
label_new_user: registered a new account
|
|
||||||
label_logged_as: Logged in as
|
label_logged_as: Logged in as
|
||||||
label_environment: Environment
|
label_environment: Environment
|
||||||
label_authentication: Authentication
|
label_authentication: Authentication
|
||||||
|
@ -522,7 +502,6 @@ en:
|
||||||
label_overview: Activities
|
label_overview: Activities
|
||||||
label_version: Version
|
label_version: Version
|
||||||
label_version_new: New version
|
label_version_new: New version
|
||||||
label_version_plural: Versions
|
|
||||||
label_close_versions: Close completed versions
|
label_close_versions: Close completed versions
|
||||||
label_confirmation: Confirmation
|
label_confirmation: Confirmation
|
||||||
label_export_to: 'Also available in:'
|
label_export_to: 'Also available in:'
|
||||||
|
@ -622,7 +601,7 @@ en:
|
||||||
label_repository_no: Have no repository?
|
label_repository_no: Have no repository?
|
||||||
label_repository_new_repos: New repository
|
label_repository_new_repos: New repository
|
||||||
#end
|
#end
|
||||||
label_repository_plural: Repositories
|
|
||||||
label_browse: Browse
|
label_browse: Browse
|
||||||
label_branch: Branch
|
label_branch: Branch
|
||||||
label_revision: Revision
|
label_revision: Revision
|
||||||
|
@ -647,7 +626,6 @@ en:
|
||||||
label_roadmap_due_in: "Due in %{value}"
|
label_roadmap_due_in: "Due in %{value}"
|
||||||
label_roadmap_overdue: "%{value} late"
|
label_roadmap_overdue: "%{value} late"
|
||||||
label_roadmap_no_issues: No issues for this version
|
label_roadmap_no_issues: No issues for this version
|
||||||
label_search: Search
|
|
||||||
label_result_plural: Results
|
label_result_plural: Results
|
||||||
label_all_words: All words
|
label_all_words: All words
|
||||||
label_wiki: Wiki
|
label_wiki: Wiki
|
||||||
|
@ -714,7 +692,7 @@ en:
|
||||||
label_message_last: Last message
|
label_message_last: Last message
|
||||||
label_message_new: New message
|
label_message_new: New message
|
||||||
label_message_posted: Message added
|
label_message_posted: Message added
|
||||||
label_reply_plural: Replies
|
|
||||||
label_send_information: Send account information to the user
|
label_send_information: Send account information to the user
|
||||||
label_year: Year
|
label_year: Year
|
||||||
label_month: Month
|
label_month: Month
|
||||||
|
@ -727,7 +705,6 @@ en:
|
||||||
label_feeds_access_key: RSS access key
|
label_feeds_access_key: RSS access key
|
||||||
label_missing_feeds_access_key: Missing a RSS access key
|
label_missing_feeds_access_key: Missing a RSS access key
|
||||||
label_feeds_access_key_created_on: "RSS access key created %{value} ago"
|
label_feeds_access_key_created_on: "RSS access key created %{value} ago"
|
||||||
label_module_plural: Modules
|
|
||||||
label_added_time_by: "Added by %{author} %{age} ago"
|
label_added_time_by: "Added by %{author} %{age} ago"
|
||||||
label_updated_time_by: "Updated by %{author} %{age} ago"
|
label_updated_time_by: "Updated by %{author} %{age} ago"
|
||||||
label_jump_to_a_project: Jump to a project...
|
label_jump_to_a_project: Jump to a project...
|
||||||
|
@ -826,7 +803,7 @@ en:
|
||||||
button_uncheck_all: Uncheck all
|
button_uncheck_all: Uncheck all
|
||||||
button_collapse_all: Collapse all
|
button_collapse_all: Collapse all
|
||||||
button_expand_all: Expand all
|
button_expand_all: Expand all
|
||||||
button_delete: Delete
|
|
||||||
button_create_and_continue: Create and continue
|
button_create_and_continue: Create and continue
|
||||||
button_test: Test
|
button_test: Test
|
||||||
button_edit: Edit
|
button_edit: Edit
|
||||||
|
@ -983,7 +960,6 @@ en:
|
||||||
|
|
||||||
enumeration_issue_priorities: Issue priorities
|
enumeration_issue_priorities: Issue priorities
|
||||||
enumeration_doc_categories: Document categories
|
enumeration_doc_categories: Document categories
|
||||||
enumeration_activities: Activities
|
|
||||||
enumeration_system_activity: System Activity
|
enumeration_system_activity: System Activity
|
||||||
description_filter: Filter
|
description_filter: Filter
|
||||||
description_search: Searchfield
|
description_search: Searchfield
|
||||||
|
@ -1030,27 +1006,13 @@ en:
|
||||||
|
|
||||||
#huang
|
#huang
|
||||||
label_file_new: Download
|
label_file_new: Download
|
||||||
label_user_edit: "Edit information"
|
|
||||||
label_my_course: "My Course"
|
|
||||||
label_user_info: "User information" #huang 添加
|
|
||||||
label_user_watcher: "Followers" # huang添加的 # modified by bai
|
|
||||||
label_user_fans: "Followed by" # modified by bai
|
|
||||||
|
|
||||||
# modify by men
|
|
||||||
label_x_user_fans:
|
|
||||||
zero: fan
|
|
||||||
one: fan
|
|
||||||
other: fans
|
|
||||||
#end
|
|
||||||
label_user_commits: "Code commits"
|
label_user_commits: "Code commits"
|
||||||
label_user_watchered: "Followed by" # huang添加的
|
|
||||||
label_user_newfeedback: "Messages" ## huang添加的 # modified by bai
|
|
||||||
label_user_login: "Last login:"
|
|
||||||
label_user_mail: "E-mail:"
|
label_user_mail: "E-mail:"
|
||||||
label_user_joinin: "Join date:"
|
|
||||||
label_user_activities: "You have no activities,come and join us!"
|
label_overview: "Overview"
|
||||||
label_user_activities_other: The user has no activities now!
|
|
||||||
label_project_overview: "Overview"
|
|
||||||
label_project_tool: "Tool"
|
label_project_tool: "Tool"
|
||||||
label_project_issues: "Issues"
|
label_project_issues: "Issues"
|
||||||
label_project_newother: "See other comments"
|
label_project_newother: "See other comments"
|
||||||
|
@ -1069,21 +1031,21 @@ en:
|
||||||
label_unapply_project: Unsubscribe
|
label_unapply_project: Unsubscribe
|
||||||
|
|
||||||
#fq
|
#fq
|
||||||
button_leave_meassge: Submit
|
|
||||||
button_clear_meassge: Reset
|
button_clear_meassge: Reset
|
||||||
label_leave_message_to: leave %{name} a message
|
label_leave_message_to: leave %{name} a message
|
||||||
label_leave_message: Message content
|
label_leave_message: Message content
|
||||||
label_message: message board
|
label_message: message board
|
||||||
field_add: Add before %{time}
|
field_add: Add before %{time}
|
||||||
button_more: More
|
button_more: More
|
||||||
label_user_response: Feedback # modified by bai
|
|
||||||
label_bidding_project: projects
|
label_bidding_project: projects
|
||||||
button_bidding: I will participate in it
|
button_bidding: I will participate in it
|
||||||
label_new_call: New call
|
label_new_call: New call
|
||||||
label_user_information: My informations
|
label_user_information: My informations
|
||||||
|
|
||||||
#Customer added!Added by nie
|
#Customer added!Added by nie
|
||||||
label_create_time: Created time
|
|
||||||
label_current_contributors: current contributors
|
label_current_contributors: current contributors
|
||||||
#modify by men
|
#modify by men
|
||||||
label_x_current_contributors:
|
label_x_current_contributors:
|
||||||
|
@ -1112,10 +1074,7 @@ en:
|
||||||
label_member_since: joined
|
label_member_since: joined
|
||||||
label_contribute_to: Participates %{project_count} projects:
|
label_contribute_to: Participates %{project_count} projects:
|
||||||
#modify by men
|
#modify by men
|
||||||
label_x_contribute_to:
|
|
||||||
zero: Participates %{count} project:
|
|
||||||
one: Participates %{count} project:
|
|
||||||
other: Participates %{count} projects:
|
|
||||||
#end
|
#end
|
||||||
label_total_commit: Totally %{total_commit} commits # modified by bai
|
label_total_commit: Totally %{total_commit} commits # modified by bai
|
||||||
#modify by men
|
#modify by men
|
||||||
|
@ -1170,11 +1129,11 @@ en:
|
||||||
|
|
||||||
label_leave_me_message: left a message to me
|
label_leave_me_message: left a message to me
|
||||||
label_leave_others_message: leave message to him/her
|
label_leave_others_message: leave message to him/her
|
||||||
label_leave_a_message: Leave him/her a message:
|
|
||||||
label_leave_your_message: Leave a message to you
|
label_leave_your_message: Leave a message to you
|
||||||
label_new_activities: ' has a new activity in' # modified by bai
|
label_new_activities: ' has a new activity in' # modified by bai
|
||||||
label_new_activity: ' has a new activity in'
|
|
||||||
label_i_new_activity: ' have a new activity in'
|
|
||||||
label_create_project: had participated in
|
label_create_project: had participated in
|
||||||
label_praise: praise
|
label_praise: praise
|
||||||
label_cancel_praise: cancel praise
|
label_cancel_praise: cancel praise
|
||||||
|
@ -1199,19 +1158,19 @@ en:
|
||||||
#end
|
#end
|
||||||
label_me: me
|
label_me: me
|
||||||
label_my: my
|
label_my: my
|
||||||
label_i: I
|
|
||||||
label_join_bidding: joined the bidding
|
label_join_bidding: joined the bidding
|
||||||
label_bidding_user: Bidding user:
|
label_bidding_user: Bidding user:
|
||||||
label_bidding_reason: Bidding reason:
|
label_bidding_reason: Bidding reason:
|
||||||
label_username: username:
|
label_username: username:
|
||||||
label_password: password:
|
label_password: password:
|
||||||
label_about_requirement: about requirement:
|
|
||||||
label_about_issue: about issue:
|
|
||||||
label_quote_my_words: ' quoted my words'
|
|
||||||
label_have_respond: had a respond
|
|
||||||
label_welcome: Welcome
|
label_welcome: Welcome
|
||||||
|
|
||||||
label_goto: Go to>>
|
|
||||||
label_join: join Trustie!
|
label_join: join Trustie!
|
||||||
label_repository_new: link to existing SVN repository
|
label_repository_new: link to existing SVN repository
|
||||||
label_repository_path: path of repository
|
label_repository_path: path of repository
|
||||||
|
@ -1223,7 +1182,7 @@ en:
|
||||||
label_exist_repository_path: Define exist repository's path of URL and format must be file:///, http://, https://, svn://
|
label_exist_repository_path: Define exist repository's path of URL and format must be file:///, http://, https://, svn://
|
||||||
label_project_no_activity: The project has no activities now!
|
label_project_no_activity: The project has no activities now!
|
||||||
label_follow_no_requirement: You don't have followed any requirements!
|
label_follow_no_requirement: You don't have followed any requirements!
|
||||||
label_no_user_respond_you: There is no respond for you!
|
|
||||||
|
|
||||||
label_all_revisions: All revisions:
|
label_all_revisions: All revisions:
|
||||||
label_repository_name: Repository name
|
label_repository_name: Repository name
|
||||||
|
@ -1240,9 +1199,7 @@ en:
|
||||||
label_welcome_my_respond: Please leave your comments and suggestions here!
|
label_welcome_my_respond: Please leave your comments and suggestions here!
|
||||||
label_no_current_fans: The user has no fans now
|
label_no_current_fans: The user has no fans now
|
||||||
label_no_current_watchers: The user hasn't watched others
|
label_no_current_watchers: The user hasn't watched others
|
||||||
label_project_tool_response: Response
|
|
||||||
label_course_feedback: Feedback
|
label_course_feedback: Feedback
|
||||||
label_active_call: call
|
|
||||||
|
|
||||||
|
|
||||||
label_boy: Man
|
label_boy: Man
|
||||||
|
@ -1280,16 +1237,13 @@ en:
|
||||||
label_bids_new_money: input the award money,such as 500,2.5 etc.
|
label_bids_new_money: input the award money,such as 500,2.5 etc.
|
||||||
label_bids_new_credit: input the work corresponding course credits,such as 3,2.5 etc.
|
label_bids_new_credit: input the work corresponding course credits,such as 3,2.5 etc.
|
||||||
label_bids_new_content: input the award content,such as certificate,things etc.
|
label_bids_new_content: input the award content,such as certificate,things etc.
|
||||||
label_user_login_tips: You havn't logged in,for leaving message please login first
|
|
||||||
label_user_login_new: login
|
label_user_login_new: login
|
||||||
label_project_sort: the way of sorting
|
label_project_sort: the way of sorting
|
||||||
#modified by bai
|
#modified by bai
|
||||||
label_sort_by_time: sorted by time
|
|
||||||
label_sort_by_active: sorted by active
|
|
||||||
label_sort_by_influence: sorted by influence
|
|
||||||
#end
|
#end
|
||||||
label_bids_published: published
|
|
||||||
label_bids_published_ago: ago
|
|
||||||
# label_welcome_trustie: Trustie
|
# label_welcome_trustie: Trustie
|
||||||
# label_welcome_trustie_project: Online projects hosting platform
|
# label_welcome_trustie_project: Online projects hosting platform
|
||||||
# label_welcome_trustie_course: Online Courses practice platform
|
# label_welcome_trustie_course: Online Courses practice platform
|
||||||
|
@ -1298,15 +1252,12 @@ en:
|
||||||
# label_welcome_trustie_course_description: Teachers and Students for Chinese universities to provide social-oriented curriculum management, resource sharing, cooperation achieved, collaborative research.
|
# label_welcome_trustie_course_description: Teachers and Students for Chinese universities to provide social-oriented curriculum management, resource sharing, cooperation achieved, collaborative research.
|
||||||
# label_welcome_trustie_contest_description: Software for Chinese college students and practitioners to provide social-oriented contest management, code hosting, resource sharing, cooperation and exchange.
|
# label_welcome_trustie_contest_description: Software for Chinese college students and practitioners to provide social-oriented contest management, code hosting, resource sharing, cooperation and exchange.
|
||||||
# label_welcome_trustie_description: a socialized collaboration platform for project management, collaborative research, software development and software crowdsourcing for creative university students and entrepreneurs.
|
# label_welcome_trustie_description: a socialized collaboration platform for project management, collaborative research, software development and software crowdsourcing for creative university students and entrepreneurs.
|
||||||
label_bid_respond_quote: Respond
|
|
||||||
label_bid_if_agreement: If you like me, please press me #bai
|
label_bid_if_agreement: If you like me, please press me #bai
|
||||||
label_bid_respond_delete: Delete
|
|
||||||
label_newfeedback_message: messages
|
|
||||||
label_newfeedback_quote: Respond
|
|
||||||
label_newfeedback_delete: Delete
|
|
||||||
label_layouts_feedback: Messages
|
|
||||||
label_have_feedback: Have
|
|
||||||
label_of_feedback: Of
|
|
||||||
label_welcome_participate: participates
|
label_welcome_participate: participates
|
||||||
#modify by men
|
#modify by men
|
||||||
label_x_welcome_participate:
|
label_x_welcome_participate:
|
||||||
|
@ -1316,25 +1267,20 @@ en:
|
||||||
#end
|
#end
|
||||||
label_welcome_participate_project: projects
|
label_welcome_participate_project: projects
|
||||||
label_projects_feedback: responded to the project
|
label_projects_feedback: responded to the project
|
||||||
label_projects_feedback_respond: Respond
|
|
||||||
label_projects_feedback_respond_success: Respond success
|
label_projects_feedback_respond_success: Respond success
|
||||||
button_projects_feedback_respond: Respond
|
|
||||||
label_projects_feedback_respond_content: Please input your words
|
|
||||||
label_in_issues: in the issue:
|
|
||||||
label_in_bids: in the call:
|
|
||||||
label_in_users: in the user:
|
|
||||||
label_user_create_project: has created
|
label_user_create_project: has created
|
||||||
|
|
||||||
#added by bai
|
#added by bai
|
||||||
label_identity: Identity
|
|
||||||
label_teacher: Teacher
|
label_teacher: Teacher
|
||||||
label_student: Student
|
label_student: Student
|
||||||
label_school_all: Schools
|
|
||||||
label_school_not_fount: Not found by your input query condition.
|
label_school_not_fount: Not found by your input query condition.
|
||||||
label_other: Other
|
label_other: Other
|
||||||
|
|
||||||
|
|
||||||
label_location: Location
|
|
||||||
#end
|
#end
|
||||||
label_course: Course
|
label_course: Course
|
||||||
label_course_new: New course
|
label_course_new: New course
|
||||||
|
@ -1360,18 +1306,15 @@ en:
|
||||||
one: teachers
|
one: teachers
|
||||||
other: teachers
|
other: teachers
|
||||||
#add by men
|
#add by men
|
||||||
label_brief_introduction: Personality words
|
|
||||||
label_technical_title: Title
|
|
||||||
label_technicl_title_professor: Professor
|
|
||||||
label_technicl_title_associate_professor: Associate professor
|
|
||||||
label_technicl_title_lecturer: Lecturer
|
|
||||||
label_technicl_title_teaching_assistant: Teaching assistant
|
|
||||||
label_enter_college: College Entrance
|
label_enter_college: College Entrance
|
||||||
lable_enter_enterprise: Enterprise Entrance
|
lable_enter_enterprise: Enterprise Entrance
|
||||||
label_homework_info: Status
|
label_homework_info: Status
|
||||||
label_question_student: Feedback
|
label_question_student: Feedback
|
||||||
label_student_response: Feedback
|
label_student_response: Feedback
|
||||||
label_my_question: Please raise your questions here!
|
# label_my_question: Please raise your questions here!
|
||||||
label_teacher_homework: "Teacher's name"
|
label_teacher_homework: "Teacher's name"
|
||||||
label_course_homework: Corresponding courses
|
label_course_homework: Corresponding courses
|
||||||
|
|
||||||
|
@ -1395,7 +1338,7 @@ en:
|
||||||
text_command: The password is required when applying a course, and it will be released by the teacher of.
|
text_command: The password is required when applying a course, and it will be released by the teacher of.
|
||||||
label_enterprise_into: Enterprise Entrance
|
label_enterprise_into: Enterprise Entrance
|
||||||
label_college_into: College Entrance
|
label_college_into: College Entrance
|
||||||
label_user_course: Courses
|
|
||||||
label_new_course: Courses
|
label_new_course: Courses
|
||||||
field_tea_name: Teacher
|
field_tea_name: Teacher
|
||||||
label_course_college: College
|
label_course_college: College
|
||||||
|
@ -1435,8 +1378,8 @@ en:
|
||||||
label_main_term: Term
|
label_main_term: Term
|
||||||
label_teacher_work_unit: Position
|
label_teacher_work_unit: Position
|
||||||
label_course_overview: Status
|
label_course_overview: Status
|
||||||
label_course_file: File
|
|
||||||
label_stores_index: Resource search
|
|
||||||
label_course_news: News
|
label_course_news: News
|
||||||
#wang
|
#wang
|
||||||
label_contest_userresponse: Userresponse
|
label_contest_userresponse: Userresponse
|
||||||
|
@ -1450,10 +1393,10 @@ en:
|
||||||
|
|
||||||
label_bids_task_list: Tasks list
|
label_bids_task_list: Tasks list
|
||||||
label_join_course: join course
|
label_join_course: join course
|
||||||
label_exit_course: exit course
|
|
||||||
label_new_join: Join
|
label_new_join: Join
|
||||||
label_new_join_order: Please input the course order.
|
label_new_join_order: Please input the course order.
|
||||||
label_homeworks_form_new_description: Release a task,the submit form of the task may be accessory or project,setting in the task form.
|
label_homeworks_form_new_description: Release a task, the submit form of the task may be accessory or project, setting in the task form.
|
||||||
label_course_settings: Setting
|
label_course_settings: Setting
|
||||||
field_homework_type: Submit form
|
field_homework_type: Submit form
|
||||||
label_task_submit_form_accessory: Submitted as accessory
|
label_task_submit_form_accessory: Submitted as accessory
|
||||||
|
@ -1468,14 +1411,11 @@ en:
|
||||||
label_assign_homework: assigned homewok
|
label_assign_homework: assigned homewok
|
||||||
label_noawards: No awards
|
label_noawards: No awards
|
||||||
|
|
||||||
label_requirement_enterprise: Requirements
|
|
||||||
label_requirement_enterprise_list: Requirements List
|
label_requirement_enterprise_list: Requirements List
|
||||||
label_contest_innovate: Competition community
|
|
||||||
label_software_user: Users
|
|
||||||
label_course_practice: Courses
|
|
||||||
label_course_all: Teacher
|
label_course_all: Teacher
|
||||||
label_teacher_all: Student
|
label_teacher_all: Student
|
||||||
label_user_home: User Space
|
|
||||||
|
|
||||||
field_hidden_repo: code protected
|
field_hidden_repo: code protected
|
||||||
label_newbie_faq: newbie FAQ
|
label_newbie_faq: newbie FAQ
|
||||||
|
@ -1501,8 +1441,8 @@ en:
|
||||||
label_activity_time: publish date
|
label_activity_time: publish date
|
||||||
|
|
||||||
label_your_course: your course
|
label_your_course: your course
|
||||||
label_have_message : have a new message
|
label_have_message: have a new message
|
||||||
:lable_not_receive_mail: Click here don't receive email form site!
|
lable_not_receive_mail: Click here don't receive email form site!
|
||||||
#added by linchun as competition#
|
#added by linchun as competition#
|
||||||
|
|
||||||
label_current_hot_contest: Latest Hot Competition
|
label_current_hot_contest: Latest Hot Competition
|
||||||
|
@ -1510,211 +1450,9 @@ en:
|
||||||
label_issue_feedback_activities: Question&Feedback
|
label_issue_feedback_activities: Question&Feedback
|
||||||
label_more_information: More...
|
label_more_information: More...
|
||||||
label_release_time: Release-time
|
label_release_time: Release-time
|
||||||
label_question_sponsor: Sponsor
|
|
||||||
label_final_reply: Final-reply
|
|
||||||
label_reply: Reply
|
|
||||||
label_weixin: WeiXin
|
label_weixin: WeiXin
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
#
|
|
||||||
# Trustie个人主页
|
|
||||||
#
|
|
||||||
# Trustie个人主页>
|
|
||||||
# 动态栏
|
|
||||||
label_user_activity: "%{name} Activities"
|
|
||||||
label_user_all_activity: All activities
|
|
||||||
label_user_activity_myself: About me
|
|
||||||
label_user_all_respond: All replies
|
|
||||||
# 项目栏
|
|
||||||
label_project_unadd: "No project, go to creat it!"
|
|
||||||
label_project_un: "You haven't joined any project yet!"
|
|
||||||
|
|
||||||
|
|
||||||
label_has_watched_project: The projects of attention
|
|
||||||
label_project_take: The projects of participation
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
# 托管平台主页
|
|
||||||
# edit by meng
|
|
||||||
# 托管平台主页> 顶部菜单
|
|
||||||
field_homepage: Homepage
|
|
||||||
label_project_deposit: Projects
|
|
||||||
label_course_practice: Courses
|
|
||||||
label_forum_all: Forums
|
|
||||||
# label_school_all: Schools
|
|
||||||
label_contest_innovate: Competition community
|
|
||||||
label_software_user: Users
|
|
||||||
label_requirement_enterprise: Requirements
|
|
||||||
label_stores_index: Resource search
|
|
||||||
|
|
||||||
# 托管平台主页 > 搜索提示信息
|
|
||||||
welcome:
|
|
||||||
search:
|
|
||||||
information: "Please input the keywords!" # 搜索提示信息
|
|
||||||
select: # 下拉列表
|
|
||||||
project: project
|
|
||||||
course: course
|
|
||||||
user: user
|
|
||||||
userinfo:
|
|
||||||
nickname: nickname
|
|
||||||
showname: name
|
|
||||||
email: email
|
|
||||||
|
|
||||||
# 托管平台主页 > 下方托管平台链接
|
|
||||||
label_projects_management_platform: Projects-platform
|
|
||||||
label_courses_management_platform: Courses-platform
|
|
||||||
label_contests_management_platform: Competitions-platform
|
|
||||||
|
|
||||||
# 托管平台主页 > 底部承办单位
|
|
||||||
label_hosted_by: Organizer
|
|
||||||
label_hosted_by: National Key Laboratory for Parallel and Distributed Processing, NUDT
|
|
||||||
label_sponsor: Department of Computer Science and Technology, NUDT
|
|
||||||
label_co_organizer_NUDT: College of Computer, NUDT
|
|
||||||
label_co_organizer_EECS: Institute of Software, EECS
|
|
||||||
label_co_organizer_BHU: Beihang University School of Computer Science & Engineering
|
|
||||||
label_co_organizer_CAS: Institute of Software, CAS
|
|
||||||
label_co_organizer_InforS: InforSuite
|
|
||||||
label_rights_reserved: ©2007~2014
|
|
||||||
label_contact_us: Contact
|
|
||||||
# 英文版不需要显示国内许可证 ,需要页面做判断
|
|
||||||
# label_license: 湘ICP备09019772
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
# 项目托管平台
|
|
||||||
# 项目托管平台主页 > 主旨
|
|
||||||
label_welcome_trustie_project: Trustie online projects hosting platform
|
|
||||||
label_welcome_trustie_project_description: "Software for Chinese college students and practitioners to provide social-oriented project management, code hosting, resource sharing, cooperation and exchange."
|
|
||||||
|
|
||||||
# 项目托管平台主页 > 热门项目栏
|
|
||||||
lable_hot_projects: Hot Projects
|
|
||||||
label_project_new: New project
|
|
||||||
label_join_project: Join a project
|
|
||||||
label_private: private
|
|
||||||
label_project_member_amount: "%{count} members"
|
|
||||||
label_project_score_tips: "Considering all activities of the project, project's score reflects the activity level of project"
|
|
||||||
label_project_score: Score
|
|
||||||
|
|
||||||
# 项目托管平台主页 > 用户动态栏
|
|
||||||
lable_user_active: Recent Activities
|
|
||||||
user:
|
|
||||||
active:
|
|
||||||
published: released
|
|
||||||
uploaded: uploaded
|
|
||||||
updated: updated
|
|
||||||
unknow: Unknown content
|
|
||||||
|
|
||||||
|
|
||||||
field_user_active_news: ' news'
|
|
||||||
field_user_active_issue: ' issue'
|
|
||||||
field_user_active_attachment: ' attachment'
|
|
||||||
field_user_active_message: ' message'
|
|
||||||
field_user_active_reply: ' reply'
|
|
||||||
field_user_active_bid: ' work'
|
|
||||||
field_user_active_memo: ' memo'
|
|
||||||
field_user_active_document: ' document'
|
|
||||||
field_user_active_changeset: ' repository'
|
|
||||||
field_user_active_issue_note: ' issue-note'
|
|
||||||
|
|
||||||
field_updated_on: Updated on
|
|
||||||
field_time_ago: ago
|
|
||||||
field_active_reply: "Reply("
|
|
||||||
# 用户动态中event.title和event.description
|
|
||||||
# 通过act_as_event方法的option配置
|
|
||||||
# "#{o.tracker.name} ##{o.id} (#{o.status}): #{o.subject}"
|
|
||||||
# "缺陷 #1869 (已解决):subject"
|
|
||||||
# tracker.name和status在数据库中以中文字段形式存储
|
|
||||||
|
|
||||||
# 项目托管平台主页 > 贴吧动态栏
|
|
||||||
lable_bar_active: Recent Posts
|
|
||||||
label_my_question: My-question
|
|
||||||
label_my_feedback: My-feedback
|
|
||||||
label_updated_time: "Updated %{value} ago"
|
|
||||||
label_question_sponsor: Sponsor
|
|
||||||
label_final_reply: Last-reply
|
|
||||||
|
|
||||||
|
|
||||||
# 项目托管平台 > 新建项目
|
|
||||||
label_project_new_description: "A project can be used to do anything that requires distributed collaboration."
|
|
||||||
field_name: Name
|
|
||||||
field_description: Description
|
|
||||||
field_identifier: Identifier
|
|
||||||
text_length_between: "Length between %{min} and %{max} characters."
|
|
||||||
text_project_identifier_info: "Only lower case letters (a-z), numbers, dashes and underscores are allowed, must start with a lower case letter.<br />Once saved, the identifier cannot be changed."
|
|
||||||
field_is_public: Public
|
|
||||||
field_hidden_repo: code protected
|
|
||||||
button_create: Create
|
|
||||||
|
|
||||||
|
|
||||||
# 项目托管平台 > 加入项目
|
|
||||||
|
|
||||||
project:
|
|
||||||
join:
|
|
||||||
title: 快速进入项目通道
|
|
||||||
description: "只要持有项目的ID,就可快速申请加入所在项目。项目页面搜索不到的私有项目只能从此通道进入哦!"
|
|
||||||
id:
|
|
||||||
label: "Project ID:"
|
|
||||||
tips: "Project ID is the number within the project's url"
|
|
||||||
|
|
||||||
# 公共
|
|
||||||
label_apply_project: Apply Project
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
# 课程托管平台主页
|
|
||||||
# 课程托管平台主页 > 主旨
|
|
||||||
label_welcome_trustie_course: Trustie online courses practice platform
|
|
||||||
label_welcome_trustie_course_description: Teachers and Students for Chinese universities to provide social-oriented curriculum management, resource sharing, cooperation achieved, collaborative research.
|
|
||||||
# 课程托管平台主页 >
|
|
||||||
|
|
||||||
|
|
||||||
# 竞赛托管平台主页
|
|
||||||
# 竞赛托管平台主页 > 主旨
|
|
||||||
label_welcome_trustie_contest: Trustie online contests practice platform
|
|
||||||
label_welcome_trustie_contest_description: Software for Chinese college students and practitioners to provide social-oriented contest management, code hosting, resource sharing, cooperation and exchange.
|
|
||||||
# 竞赛托管平台主页 >
|
|
||||||
|
|
||||||
|
|
||||||
# edit by meng
|
|
||||||
# emailer translation
|
|
||||||
mail_issue_greetings: "Dear user , Greetings from Trustie"
|
|
||||||
mail_issue_footer: "Unsubscribe this message?"
|
|
||||||
mail_issue_title_userin: "in"
|
|
||||||
mail_issue_title_active: "has a new activity which relevants to you , please pay more attention to this!"
|
|
||||||
mail_issue_subject: "Title:"
|
|
||||||
mail_issue_content: "Content:"
|
|
||||||
mail_issue_sent_from: "From:"
|
|
||||||
mail_issue_from_project: "project issue"
|
|
||||||
mail_issue_attachments: "Attachments:"
|
|
||||||
mail_issue_reply: "Want reply"
|
|
||||||
#end
|
|
||||||
# modified by meng
|
|
||||||
# file_upload translation
|
|
||||||
label_file_upload: Resource files
|
|
||||||
label_file_upload_error_messages: "Upload error, please check your network environment, and refresh the page to upload."
|
|
||||||
button_confirm: Confirm
|
|
||||||
# shut down and restart course
|
|
||||||
label_course_closed: Close
|
|
||||||
label_course_reopen: Reopen
|
|
||||||
label_course_closed_tips: "Are you sure you want to reopen the course?"
|
|
||||||
# end
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
label_work_quantity: work
|
label_work_quantity: work
|
||||||
label_contest_work: Competition work
|
label_contest_work: Competition work
|
||||||
|
@ -1730,7 +1468,6 @@ en:
|
||||||
label_attendingcontestwork_deposit_project: Deposit project
|
label_attendingcontestwork_deposit_project: Deposit project
|
||||||
label_attendingcontestwork_sorting_intimation: You can re-scoring, but just record the last scoring result!
|
label_attendingcontestwork_sorting_intimation: You can re-scoring, but just record the last scoring result!
|
||||||
|
|
||||||
label_upload_files: Files-upload
|
|
||||||
label_upload_softwarepackage: Softwarepackage-upload
|
label_upload_softwarepackage: Softwarepackage-upload
|
||||||
label_upload_cuttingphoto: Photo-upload
|
label_upload_cuttingphoto: Photo-upload
|
||||||
label_system_platform: Platform
|
label_system_platform: Platform
|
||||||
|
@ -1806,7 +1543,7 @@ en:
|
||||||
|
|
||||||
label_contest_notification: Notice
|
label_contest_notification: Notice
|
||||||
lable_contest_user: Release person
|
lable_contest_user: Release person
|
||||||
label_contest_innovate_community: Competition community
|
|
||||||
|
|
||||||
label_user_login_score_and_comment: You are not logged in, please log in and then score and comment the work!
|
label_user_login_score_and_comment: You are not logged in, please log in and then score and comment the work!
|
||||||
label_user_login_notificationcomment: You are not logged in, please log in and then comment the notification!
|
label_user_login_notificationcomment: You are not logged in, please log in and then comment the notification!
|
||||||
|
@ -1815,7 +1552,7 @@ en:
|
||||||
|
|
||||||
label_borad_project: Project-borad
|
label_borad_project: Project-borad
|
||||||
|
|
||||||
label_update_time: Update time
|
|
||||||
label_project_notice: release the notice
|
label_project_notice: release the notice
|
||||||
label_no_file_uploaded: No file uploaded
|
label_no_file_uploaded: No file uploaded
|
||||||
label_forum_new: New forum
|
label_forum_new: New forum
|
||||||
|
@ -1823,47 +1560,36 @@ en:
|
||||||
bale_edit_notice: Edit
|
bale_edit_notice: Edit
|
||||||
|
|
||||||
label_user_grade: Individual score
|
label_user_grade: Individual score
|
||||||
label_active_homework: homework
|
|
||||||
label_course_term: Semester
|
label_course_term: Semester
|
||||||
label_comment_time: Comment time
|
label_comment_time: Comment time
|
||||||
label_bidding_user_studentcode: Student ID
|
|
||||||
label_bidding_user_studentname: name
|
label_bidding_user_studentname: name
|
||||||
|
|
||||||
# label_organizers: Organizer
|
|
||||||
# label_organizers_information: National Key Laboratory of Parallel and Distributed Processing, NUDT
|
|
||||||
# label_organizers_information_institute: Department of Computer Sciencer and Technology
|
|
||||||
# label_copyright: Copyright
|
|
||||||
# label_contact_us: Contact us
|
|
||||||
# label_record: 湘ICP备09019772
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
label_check_comment: Check comment
|
label_check_comment: Check comment
|
||||||
label_notification: Notification
|
label_notification: Notification
|
||||||
label_must_answer: Will answer
|
label_must_answer: Will answer
|
||||||
label_poll_title: The questionnaire survey _ questionnaire page
|
label_poll_title: The questionnaire survey _ questionnaire page
|
||||||
label_question_number: 'question %{question_number}:'
|
label_question_number: 'question %{question_number}:'
|
||||||
label_complete_question: The answer has been completed
|
label_complete_question: The answer has been completed
|
||||||
#end
|
#end
|
||||||
|
|
||||||
# ajax异步验证
|
# ajax异步验证
|
||||||
modal_valid_passing: can be used.
|
modal_valid_passing: can be used.
|
||||||
|
|
||||||
|
|
||||||
label_school_no_course: The school did not offer any courses, you can view other school curriculum
|
|
||||||
label_school_less_course: The school offers courses in less, you can view other school curriculum
|
|
||||||
label_file_not_found: Sorry, the file can't be downloaded now!
|
label_file_not_found: Sorry, the file can't be downloaded now!
|
||||||
label_goto_homepage: Return to the home page
|
label_goto_homepage: Return to the home page
|
||||||
label_trustie_team: The Trustie development team
|
label_trustie_team: The Trustie development team
|
||||||
label_memos_max_length: The content of the post up to 65535 characters in length
|
label_memos_max_length: The content of the post up to 65535 characters in length
|
||||||
label_forums_max_length: Post Bar describing the maximum length of 65535 characters
|
label_forums_max_length: Post Bar describing the maximum length of 65535 characters
|
||||||
label_unknow_type: Unknow type
|
label_unknow_type: Unknow type
|
||||||
label_score_less_than_zero: Score less than 0, revised to 0
|
|
||||||
review_assignments: Review assignments
|
review_assignments: Review assignments
|
||||||
label_my_school: My school
|
label_my_school: My school
|
||||||
label_all_schol: All school
|
label_all_schol: All school
|
||||||
label_select_province: Please select the provinces
|
label_select_province: Please select the provinces
|
||||||
label_search_conditions_not_null: The search conditions cannot be blank
|
|
||||||
|
|
||||||
label_attachment: attachment
|
label_attachment: attachment
|
||||||
label_max_length: A maximum of 250 characters
|
label_max_length: A maximum of 250 characters
|
||||||
|
@ -1876,3 +1602,10 @@ en:
|
||||||
label_submit_comments: Submit_comments
|
label_submit_comments: Submit_comments
|
||||||
label_course_empty_select: You have not selected course!
|
label_course_empty_select: You have not selected course!
|
||||||
label_enterprise_page_made: enterprise_page
|
label_enterprise_page_made: enterprise_page
|
||||||
|
|
||||||
|
#api
|
||||||
|
label_recently_updated_notification: Recently updated notification
|
||||||
|
label_recently_updated_homework: Recently updated the homework
|
||||||
|
label_recently_updated_message: Recently updated the message
|
||||||
|
label_recently_updated_courseware: Recently updated the courseware
|
||||||
|
label_no_courses: You do not participate in any course, please search the curriculum, course, or create a course!
|
||||||
|
|
|
@ -0,0 +1,3 @@
|
||||||
|
en:
|
||||||
|
# Text direction: Left-to-Right (ltr) or Right-to-Left (rtl)
|
||||||
|
direction: ltr
|
|
@ -0,0 +1,6 @@
|
||||||
|
|
||||||
|
# Chinese (China) translations for Ruby on Rails
|
||||||
|
#
|
||||||
|
zh:
|
||||||
|
# Text direction: Left-to-Right (ltr) or Right-to-Left (rtl)
|
||||||
|
direction: ltr
|
|
@ -2,3 +2,18 @@ en:
|
||||||
# Text direction: Left-to-Right (ltr) or Right-to-Left (rtl)
|
# Text direction: Left-to-Right (ltr) or Right-to-Left (rtl)
|
||||||
direction: ltr
|
direction: ltr
|
||||||
|
|
||||||
|
#
|
||||||
|
# 邮件模块
|
||||||
|
#
|
||||||
|
# 项目问题跟踪邮件
|
||||||
|
#
|
||||||
|
mail_issue_greetings: "Dear user , Greetings from Trustie"
|
||||||
|
mail_issue_footer: "Unsubscribe this message?"
|
||||||
|
mail_issue_title_userin: "in"
|
||||||
|
mail_issue_title_active: "has a new activity which relevants to you , please pay more attention to this!"
|
||||||
|
mail_issue_subject: "Title:"
|
||||||
|
mail_issue_content: "Content:"
|
||||||
|
mail_issue_sent_from: "From:"
|
||||||
|
mail_issue_from_project: "project issue"
|
||||||
|
mail_issue_attachments: "Attachments:"
|
||||||
|
mail_issue_reply: "Want reply"
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue