<%= text_field_tag("attachments[p#{i}][filename]", attachment.filename, :class => 'filename readonly', :readonly=>'readonly')%>
<%= text_field_tag("attachments[p#{i}][description]", attachment.description, :maxlength => 254, :placeholder => l(:label_optional_description), :class => 'description', :style=>"display: inline-block;") %>
diff --git a/app/views/attachments/_links.html.erb b/app/views/attachments/_links.html.erb
index 989ed776d..8913febd0 100644
--- a/app/views/attachments/_links.html.erb
+++ b/app/views/attachments/_links.html.erb
@@ -34,7 +34,8 @@
<%= link_to image_tag('delete.png'), {:controller => 'attachments', :action => 'delete_homework', :id => attachment.id},
:data => {:confirm => l(:text_are_you_sure)},
:method => :delete,
- :class => 'delete',
+ :class => 'delete delete-homework-icon',
+ :remote => true,
:title => l(:button_delete) %>
<% else %>
<%= link_to image_tag('delete.png'), attachment_path(attachment),
diff --git a/app/views/bids/_bid_homework_show.html.erb b/app/views/bids/_bid_homework_show.html.erb
index 1009f405f..6b3f91587 100644
--- a/app/views/bids/_bid_homework_show.html.erb
+++ b/app/views/bids/_bid_homework_show.html.erb
@@ -172,9 +172,9 @@
- <%= l(:label_create_time) %>
+ <%= l(:label_end_time) %>
:
- <%=format_time bid.created_on %>
+ <%= bid.deadline %>
<% if betweentime(bid.deadline) < 0 %>
diff --git a/app/views/documents/index.html.erb b/app/views/documents/index.html.erb
index e0c39eb33..73a3a6f2a 100644
--- a/app/views/documents/index.html.erb
+++ b/app/views/documents/index.html.erb
@@ -28,7 +28,7 @@
<% if @grouped.empty? %>
-
+
<%= l(:label_no_data) %>
<% end %>
diff --git a/app/views/documents/show.html.erb b/app/views/documents/show.html.erb
index 5632c9d63..531f68a08 100644
--- a/app/views/documents/show.html.erb
+++ b/app/views/documents/show.html.erb
@@ -1,38 +1,45 @@
-
<%=h @document.title %>
+ <%= l(:project_module_documents) %>
-
+
+
+ <% 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 %>
+
+
+ <%= h @document.title %>
+
+
+ <%#=h @document.category.name %>
+
+ <%= format_date @document.created_on %>
+
+
+ <%= textilizable @document, :description, :attachments => @document.attachments %>
+
-
-<% 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 %>
-
-
-
-
<%#=h @document.category.name %>
-<%= format_date @document.created_on %>
-
-<%= textilizable @document, :description, :attachments => @document.attachments %>
-
-
-
-
<%= l(:label_attachment_plural) %>
-<%= link_to_attachments @document %>
-
-<% if authorize_for('documents', 'add_attachment') %>
-
<%= link_to l(:label_attachment_new), {}, :onclick => "$('#add_attachment_form').show(); return false;",
- :id => 'attach_files_link' %>
- <%= form_tag({ :controller => 'documents', :action => 'add_attachment', :id => @document }, :multipart => true, :id => "add_attachment_form", :style => "display:none;") do %>
-
-
<%= render :partial => 'attachments/form' %>
-
- <%= submit_tag l(:button_add) %>
- <% end %>
-<% end %>
-
-<% html_title @document.title -%>
+
+
<%= l(:label_attachment_plural) %>
+ <%= link_to_attachments @document %>
+
+ <% if authorize_for('documents', 'add_attachment') %>
+
+ <%= link_to l(:label_attachment_new), {}, :onclick => "$('#add_attachment_form').show(); return false;",
+ :id => 'attach_files_link' %>
+
+ <%= form_tag({ :controller => 'documents', :action => 'add_attachment', :id => @document }, :multipart => true, :id => "add_attachment_form", :style => "display:none;") do %>
+
+
+ <%= render :partial => 'attachments/form' %>
+
+
+ <%= submit_tag l(:button_add) %>
+ <% end %>
+ <% end %>
+
+ <% html_title @document.title -%>
diff --git a/app/views/files/_project_file.html.erb b/app/views/files/_project_file.html.erb
index e204030f1..aa597f3f2 100644
--- a/app/views/files/_project_file.html.erb
+++ b/app/views/files/_project_file.html.erb
@@ -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_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) %>
-
+
">
<%= render :partial => 'new', locals: {project: @project} %>
diff --git a/app/views/files/new.html.erb b/app/views/files/new.html.erb
index be9bcd722..fad22b192 100644
--- a/app/views/files/new.html.erb
+++ b/app/views/files/new.html.erb
@@ -1,5 +1,5 @@
-
<%=l(:label_attachment_new)%>
+ <%= l(:label_course_file) %>
<%= error_messages_for 'attachment' %>
@@ -8,11 +8,10 @@
<% if @versions.any? %>
<%=l(:field_version)%>
-<%= select_tag "version_id", content_tag('option', '') +
- options_from_collection_for_select(@versions, "id", "name") %>
+ <%= select_tag "version_id", content_tag('option', '') + options_from_collection_for_select(@versions, "id", "name") %>
<% end %>
-
<%=l(:label_attachment_plural)%> <%= render :partial => 'attachments/form' %>
+
<%= l(:label_attachment_plural) %> <%= render :partial => 'attachments/form' %>
<%= submit_tag l(:button_add) %>
<% end %>
diff --git a/app/views/issues/_newissue_index.html.erb b/app/views/issues/_newissue_index.html.erb
index b89ba41a2..4b282aa8f 100644
--- a/app/views/issues/_newissue_index.html.erb
+++ b/app/views/issues/_newissue_index.html.erb
@@ -2,7 +2,7 @@
问题跟踪
- <% if @project.enabled_modules.where("name = 'issue_tracking'").count > 0 %>
+ <% unless @project.enabled_modules.where("name = 'issue_tracking'").empty? %>
<% 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,
diff --git a/app/views/kaminari/_gap.html.erb b/app/views/kaminari/_gap.html.erb
index a45dfdaa0..01b6cc640 100644
--- a/app/views/kaminari/_gap.html.erb
+++ b/app/views/kaminari/_gap.html.erb
@@ -5,4 +5,6 @@
per_page: number of items to fetch per page
remote: data-remote
-%>
-
+
+<%= raw(t 'views.pagination.truncate') %>
+
\ No newline at end of file
diff --git a/app/views/layouts/_base_feedback.html.erb b/app/views/layouts/_base_feedback.html.erb
index 2444af68c..bf6862244 100644
--- a/app/views/layouts/_base_feedback.html.erb
+++ b/app/views/layouts/_base_feedback.html.erb
@@ -7,10 +7,10 @@
#scrollsidebar a{ text-decoration:none;}
html{ overflow-x:hidden;}
- .scrollsidebar{ position:absolute;top:1px; right:1px; background:none; }
+ .scrollsidebar{ position:fixed;bottom:1px; right:1px; background:none; }
.side_content{width:154px; height:auto; overflow:hidden; float:left; }
.side_content .side_list {width:154px;overflow:hidden;}
- .show_btn{ width:0; height:112px; overflow:hidden; float:left; cursor:pointer;}
+ .show_btn{ width:0; height:112px; overflow:hidden; float:left;margin-top: 200px; cursor:pointer;}
.show_btn span { display:none;}
.close_btn{width:24px;height:24px;cursor:pointer;}
.side_title,.side_bottom,.close_btn,.show_btn {background:url(/images/sidebar_bg.png) no-repeat; }
@@ -62,7 +62,7 @@
$.fn.fix = function(options){
var defaults = {
float : 'right',
- minStatue : false,
+ minStatue : true,
skin : 'blue',
durationTime : 1000
}
@@ -89,7 +89,7 @@
closeBtn.bind("click",function(){
sideContent.animate({width: '0px'},"fast");
show_btn.stop(true, true).delay(300).animate({ width: '25px'},"fast");
- cookiesave('minStatue','true','','','');
+ cookiesave('minStatue','false','','','');
});
//show???
show_btn.bind("click",function() {
@@ -107,7 +107,7 @@
$(function(){
$("#button1").click(function(){
- myTips("您的意见已经反馈到公共贴吧的新手讨论吧,我们会第一时间解决您的问题,谢谢支持!","success");
+ myTips("<%= l(:label_feedback_success) %>","success");
});
})
@@ -153,7 +153,7 @@ function cookieget(n)
-意见反馈
+<%= l(:label_feedback) %>
@@ -161,15 +161,15 @@ function cookieget(n)
<% end %>
- <% unless @user.user_extensions.location.empty?%>
+ <% unless @user.user_extensions.nil?&&@user.user_extensions.location.empty?%>
diff --git a/app/views/members/autocomplete.js.erb b/app/views/members/autocomplete.js.erb
index 16809de48..f7f9de151 100644
--- a/app/views/members/autocomplete.js.erb
+++ b/app/views/members/autocomplete.js.erb
@@ -1,12 +1,16 @@
<% 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%>
- var checked = $("#principals input:checked").size();
- if(checked > 0)
- {
- alert('翻页或搜索后将丢失当前选择的用户数据!');
- }
- $('#principals_for_new_member').html('<%= escape_javascript(render_principals_for_new_course_members(@course)) %>');
+ var checked = $("#principals input:checked").size();
+ if(checked > 0)
+ {
+ alert('翻页或搜索后将丢失当前选择的用户数据!');
+ }
+ $('#principals_for_new_member').html('<%= escape_javascript(render_principals_for_new_course_members(@course)) %>');
<%end%>
var collection=$("#principals_for_new_member").children("#principals").children("label");
collection.css("text-overflow","ellipsis");
diff --git a/app/views/projects/_tools_expand.html.erb b/app/views/projects/_tools_expand.html.erb
index fed10b3f2..b6e5f8c0d 100644
--- a/app/views/projects/_tools_expand.html.erb
+++ b/app/views/projects/_tools_expand.html.erb
@@ -4,27 +4,45 @@
<% end %>
- <%= 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 %>
+ <% unless @project.enabled_modules.where("name = 'wiki'").empty? %>
<%= link_to l(:project_module_wiki), project_wiki_path(@project) %>
+ <% end %>
+ <% unless @project.enabled_modules.where("name = 'code_review'").empty? %>
<%= link_to l(:project_module_code_review), {controller: 'code_review', action: 'index', id: @project.id} %>
+ <% end %>
+ <% unless @project.enabled_modules.where("name = 'calendar'").empty? %>
<%= link_to l(:project_module_calendar),project_calendar_path(@project) %>
+ <% end %>
+ <% unless @project.enabled_modules.where("name = 'gantt'").empty? %>
<%= link_to l(:project_module_gantt) ,project_gantt_path(@project) %>
+ <% end %>
+ <% unless @project.enabled_modules.where("name = 'documents'").empty? %>
<%= link_to l(:project_module_documents), project_documents_path(@project) %>
+ <% end %>
+
+
+
+ <%= link_to l(:label_roadmap) ,project_roadmap_path(@project) %>
<%= link_to l(:label_project_tool_response) ,project_feedback_path(@project)%>
+ <% unless @project.enabled_modules.where("name = 'dts'").empty? %>
<%= link_to l(:label_module_share) ,share_show_path(@project) %>
+ <% end %>
diff --git a/app/views/projects/invite_members.html.erb b/app/views/projects/invite_members.html.erb
index d31a5bbe8..55fa2487b 100644
--- a/app/views/projects/invite_members.html.erb
+++ b/app/views/projects/invite_members.html.erb
@@ -1,7 +1,8 @@
+
-
邀请加入
+ <%= l(:label_invite_join) %>
-<%= error_messages_for 'member' %>
+<%#= render_flash_messages %>
<%
roles = Role.givable.all
if @project.project_type == Project::ProjectType_course
@@ -14,36 +15,46 @@
-
+
-
邀请Trustie注册用户
+
<%= l(:label_invite_trustie_user) %>
<% 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| %>
+
+
+
+ <%= javascript_tag "observeSearchfield('principal_search', null, '#{ escape_javascript autocomplete_project_memberships_path(@project, :format => 'js',:flag => true) }')" %>
+
-
- <%= label_tag "principal_search", l(:label_principal_search) %>
- <%= text_field_tag 'principal_search', nil %>
- <%= javascript_tag "observeSearchfield('principal_search', null, '#{ escape_javascript autocomplete_project_memberships_path(@project, :format => 'js') }')" %>
+
+ <%= render_project_members(@project) %>
+
+
-
- <%= render_principals_for_new_members(@project) %>
-
-
- <%= l(:label_role_plural) %>:
- <% roles.each do |role| %>
-
- <%= check_box_tag 'membership[role_ids][]', role.id %>
- <%= h role %>
-
+
+
+ <%= l(:label_role_plural) %>:
+
+ <% roles.each do |role| %>
+
+ <%= check_box_tag 'membership[role_ids][]', role.id %>
+ <%= h role %>
+
+ <% end %>
+
+
+
+ <%= l(:label_invite_members)%>
+
+
+
+
+
<% end %>
-
-
- <%= 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;' %>
-
- <% end %>
<% end %>
-
diff --git a/app/views/projects/invite_members_by_mail.html.erb b/app/views/projects/invite_members_by_mail.html.erb
index 70628094b..63f69e120 100644
--- a/app/views/projects/invite_members_by_mail.html.erb
+++ b/app/views/projects/invite_members_by_mail.html.erb
@@ -1,5 +1,43 @@
+
-
邀请加入
+ <%= l(:label_invite_join)%>
@@ -7,18 +45,22 @@
-
发送邮件邀请新用户
+
<%= l(:label_invite_new_user)%>
- 输入好友邮箱地址,Trustie帮您免费发送!
+ <%= l(:label_invite_email_tips)%>
<%= render :partial => 'regested', locals: { :isregisted => false} %>
- <%= form_tag('send_mail_to_member', :controller => 'projects',:action => 'send_mail_to_member', method: 'get',:remote=>true) do %>
- <%= text_field_tag 'mail', '邮箱', :class => "fb_item fl" %>
-
-
- <%= submit_tag '免费发送', :style => "display:block; width:80px; text-align:center; color:#fff; height:26px; padding-top:3px; margin-bottom:10px;" %>
+ <%= form_tag('send_mail_to_member', :controller => 'projects',:action => 'send_mail_to_member', method: 'get') do %>
+
+ <%= text_field_tag 'mail', '', :class => "fb_item fl", :placeholder => l(:label_input_email), :onkeyup => "verifyAddress();" %>
+
+
+
+ <%= l(:label_send_email)%>
+
+ <%#= submit_tag '免费发送', :style => "display:block; width:80px; text-align:center; color:#fff; height:26px; padding-top:3px; margin-bottom:10px;" %>
<% end %>
\ No newline at end of file
diff --git a/app/views/projects/show.html.erb b/app/views/projects/show.html.erb
index 0081fde84..f38595302 100644
--- a/app/views/projects/show.html.erb
+++ b/app/views/projects/show.html.erb
@@ -43,7 +43,7 @@
<%= l :label_create_time %>:
- <%= format_time(e.created_at) %>
+ <%= format_time(e.project.created_on) %>
@@ -210,4 +210,4 @@
-<%= paginate @events_pages, :window => 3%>
\ No newline at end of file
+<%= paginate @events_pages, :left => 3, :right => 3%>
\ No newline at end of file
diff --git a/app/views/tags/_project_tag.html.erb b/app/views/tags/_project_tag.html.erb
index 1f91c984e..8694d69ca 100644
--- a/app/views/tags/_project_tag.html.erb
+++ b/app/views/tags/_project_tag.html.erb
@@ -2,19 +2,31 @@
<%= render :partial => "tags/tag_name",:locals => {:obj => obj,:non_list_all => false ,:object_flag => object_flag} %>
<% if User.current.logged? %>
- <%= toggle_link ("+ 添加标签"), 'put-tag-form', {:focus => 'tags_name'} %>
+ <%= toggle_link (l(:label_add_tag)), 'put-tag-form', {:focus => 'tags_name'} %>
<% end %>
diff --git a/app/views/tags/_tag_name.html.erb b/app/views/tags/_tag_name.html.erb
index d1b3060f9..225a09aec 100644
--- a/app/views/tags/_tag_name.html.erb
+++ b/app/views/tags/_tag_name.html.erb
@@ -101,11 +101,6 @@
<% end %>
- <% end %>
- <% else %>
-
<%= link_to l(:label_version_new), new_project_version_path(@project), :class => 'icon icon-add' if User.current.allowed_to?(:manage_versions, @project) %>
diff --git a/app/views/versions/show.html.erb b/app/views/versions/show.html.erb
index bce5bc771..eb463300b 100644
--- a/app/views/versions/show.html.erb
+++ b/app/views/versions/show.html.erb
@@ -1,4 +1,7 @@
+
<%= 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,
diff --git a/app/views/wiki/diff.html.erb b/app/views/wiki/diff.html.erb
index adeaa7cab..6af69db68 100644
--- a/app/views/wiki/diff.html.erb
+++ b/app/views/wiki/diff.html.erb
@@ -29,5 +29,5 @@
- <%= simple_format_without_paragraph @diff.to_html %>
+ <%= wiki_simple_format_without_paragraph @diff.to_html %>
diff --git a/config/initializers/kaminari_config.rb b/config/initializers/kaminari_config.rb
index 5505662f3..1f07c0af5 100644
--- a/config/initializers/kaminari_config.rb
+++ b/config/initializers/kaminari_config.rb
@@ -23,7 +23,7 @@
Kaminari.configure do |config|
# config.default_per_page = 25
# config.max_per_page = nil
- config.window = 2
+ config.window = 0
# config.outer_window = 3
# config.left = 2
# config.right = 2
diff --git a/config/locales/account/en.yml b/config/locales/account/en.yml
index ece7958b4..965272cd6 100644
--- a/config/locales/account/en.yml
+++ b/config/locales/account/en.yml
@@ -31,13 +31,13 @@ en:
#
lable_user_name: Username
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?"
button_login: Login
# account_controller中判断用户名或密码输入有误的提示信息
notice_account_invalid_creditentials: "Invalid user or password."
# 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_email_valid: E-mail activation
- notice_email_register_time: "Please click on the link in the email to continue to complete the registration within 24 hours"
+ label_regiter_account: Sign up for Trustie
+ label_email_valid: Email verification
+ 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."
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."
\ No newline at end of file
diff --git a/config/locales/account/zh.yml b/config/locales/account/zh.yml
index 243c95a29..97e6ae444 100644
--- a/config/locales/account/zh.yml
+++ b/config/locales/account/zh.yml
@@ -39,7 +39,7 @@ zh:
# account_controller中判断用户名或密码输入有误的提示信息
notice_account_invalid_creditentials: "无效的用户名或密码"
# account_controller中判断未激活的提示信息
- notice_account_invalid_creditentials_new: "您还未到邮箱激活"
+ notice_account_invalid_creditentials_new: "您还未到邮箱激活。如果您丢失帐户,电子邮件验证帮助我们的支持团队验证帐户的所有权,并允许您接收所有您要求的通知。"
#
@@ -84,7 +84,7 @@ zh:
#
label_regiter_account: 注册帐号
label_email_valid: 邮箱激活
- notice_email_register_time: 请在24小时内点击邮件中的链接继续完成注册
+ notice_email_register_time: 请在24小时内点击邮件中的链接完成注册
notice_email_arrival: 邮件已发送到邮箱
label_check_email: 立即查收邮件
label_mail_resend: 重新发送激活邮件
diff --git a/config/locales/commons/en.yml b/config/locales/commons/en.yml
index 0cabbfa4c..5998ee875 100644
--- a/config/locales/commons/en.yml
+++ b/config/locales/commons/en.yml
@@ -188,7 +188,13 @@ en:
label_anonymous: Anonymous #作业和留言 模块
text_are_you_sure: Are you sure? #js 提示
-
+
+
+ # 项目、课程、用户公用
+ label_settings: Settings
+ label_information_plural: Information
+ label_member_plural: Members
+
#
# Trustie按钮类
#
@@ -200,7 +206,7 @@ en:
button_cancel: Cancel
label_submit: Submit
button_project_tags_add: Add
- label_more: More
+ label_more: "More>>"
button_download: Download
button_delete: Delete
@@ -226,7 +232,7 @@ en:
label_tag: Tag
label_tags_no: no tags now!
label_more_tags: More
- label_add_tag: '+ Add tags'
+ label_add_tag: "+ Add tags"
label_tags_count: "The total number of tags:"
@@ -313,6 +319,18 @@ en:
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
diff --git a/config/locales/commons/zh.yml b/config/locales/commons/zh.yml
index 0e7dc856f..a0eb6e74a 100644
--- a/config/locales/commons/zh.yml
+++ b/config/locales/commons/zh.yml
@@ -1,6 +1,3 @@
-
-# Chinese (China) translations for Ruby on Rails
-# by tsechingho (http://github.com/tsechingho)
zh:
# Text direction: Left-to-Right (ltr) or Right-to-Left (rtl)
direction: ltr
@@ -111,7 +108,7 @@ zh:
gb: "GB"
tb: "TB"
- # Used in array.to_sentence.
+# Used in array.to_sentence.
support:
array:
sentence_connector: "和"
@@ -166,7 +163,7 @@ zh:
general_first_day_of_week: '7'
actionview_instancetag_blank_option: 请选择
-
+
#
# Trustie公共标签
@@ -194,6 +191,11 @@ zh:
text_are_you_sure: 您确定要删除吗? #js 提示
+ # 项目、课程、用户公用
+ label_settings: 配置
+ label_information_plural: 信息
+ label_member_plural: 成员
+
#
# Trustie按钮类
#
@@ -205,7 +207,7 @@ zh:
button_cancel: 取消
label_submit: 提交
button_project_tags_add: 增加
- label_more: 更多>>
+ label_more: "更多>>"
button_download: 下载
button_more: 更多
button_delete: 删除
@@ -321,8 +323,22 @@ zh:
label_updated_time: " 更新于 %{value} 之前"
label_question_sponsor: 楼主
label_final_reply: 最后回复
+
+
+ #
+ # 项目托管平台
+ #
+ # 意见反馈
+ #
+ label_feedback: 意见反馈
+ label_feedback_tips: "有什么想说的,尽管来咆哮吧~~"
+ label_technical_support: "技术支持:"
+ label_feedback_success: "您的意见已经反馈到公共贴吧的新手讨论吧,我们会第一时间解决您的问题,谢谢支持!"
+ label_feedback_value: "该贴来自用户反馈!"
+
+
#
#
#
diff --git a/config/locales/courses/en.yml b/config/locales/courses/en.yml
index 68d4607d9..f21029944 100644
--- a/config/locales/courses/en.yml
+++ b/config/locales/courses/en.yml
@@ -15,10 +15,10 @@ en:
label_course_term: 开课学期
label_join_course: 加入
- label_exit_course: 退出
-
label_exit_course: exit course
-
+ # 资源库 (课程、项目按类型分)
+ label_course_file: File
+ label_upload_files: Upload
#
# 课程托管平台主页
diff --git a/config/locales/courses/zh.yml b/config/locales/courses/zh.yml
index 9ce09704b..3e9e1e9f6 100644
--- a/config/locales/courses/zh.yml
+++ b/config/locales/courses/zh.yml
@@ -20,7 +20,9 @@ zh:
label_join_course: 加入
label_exit_course: 退出
-
+ # 资源库 (课程、项目按类型分)
+ label_course_file: 资源库
+ label_upload_files: 上传资源
#
# 课程托管平台主页
diff --git a/config/locales/en.yml b/config/locales/en.yml
index 55a372f7f..cf37867b5 100644
--- a/config/locales/en.yml
+++ b/config/locales/en.yml
@@ -331,15 +331,8 @@ en:
project_module_issue_tracking: Issue tracking
project_module_time_tracking: Time tracking
- project_module_news: News
- project_module_documents: Documents
project_module_files: Files
- project_module_wiki: Wiki
- project_module_repository: Repository
- project_module_boards: Forums
- project_module_calendar: Calendar
- project_module_gantt: Gantt
-
+ project_module_boards: Forums
# edit by meng
lable_hot_course: Hot Courses
label_course_join_student: Join a course
@@ -383,14 +376,9 @@ en:
label_commit_limit: Expired but can submit your work
# steam the student
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_new: New user
label_user_anonymous: Anonymous
@@ -443,7 +431,6 @@ en:
label_role_non_member: Non member
label_member: Members
label_member_new: New member
- label_member_plural: Members
label_tracker: Tracker
label_tracker_plural: Trackers
label_tracker_new: New tracker
@@ -452,21 +439,17 @@ en:
label_issue_status_plural: Issue statuses
label_issue_status_new: New status
label_issue_category: Issue category
- label_issue_category_plural: Issue categories
label_issue_category_new: New category
label_custom_field: Custom field
label_custom_field_plural: Custom fields
label_custom_field_new: New custom field
label_enumerations: Enumerations
label_enumeration_new: New value
- label_information: Information
- label_information_plural: Information
label_please_login: Please log in
label_home: Home
label_my_page: My page
- label_my_message: Msgs
- label_my_projects: My projects
+
label_my_page_block: My page block
label_administration: Administration
@@ -519,7 +502,6 @@ en:
label_overview: Activities
label_version: Version
label_version_new: New version
- label_version_plural: Versions
label_close_versions: Close completed versions
label_confirmation: Confirmation
label_export_to: 'Also available in:'
@@ -619,7 +601,7 @@ en:
label_repository_no: Have no repository?
label_repository_new_repos: New repository
#end
- label_repository_plural: Repositories
+
label_browse: Browse
label_branch: Branch
label_revision: Revision
@@ -644,7 +626,6 @@ en:
label_roadmap_due_in: "Due in %{value}"
label_roadmap_overdue: "%{value} late"
label_roadmap_no_issues: No issues for this version
- label_search: Search
label_result_plural: Results
label_all_words: All words
label_wiki: Wiki
@@ -724,7 +705,6 @@ en:
label_feeds_access_key: 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_module_plural: Modules
label_added_time_by: "Added by %{author} %{age} ago"
label_updated_time_by: "Updated by %{author} %{age} ago"
label_jump_to_a_project: Jump to a project...
@@ -980,7 +960,6 @@ en:
enumeration_issue_priorities: Issue priorities
enumeration_doc_categories: Document categories
- enumeration_activities: Activities
enumeration_system_activity: System Activity
description_filter: Filter
description_search: Searchfield
@@ -1027,15 +1006,13 @@ en:
#huang
label_file_new: Download
- label_my_course: "My Course"
label_user_commits: "Code commits"
- label_user_watchered: "Followed by" # huang添加的
label_user_mail: "E-mail:"
- label_project_overview: "Overview"
+ label_overview: "Overview"
label_project_tool: "Tool"
label_project_issues: "Issues"
label_project_newother: "See other comments"
@@ -1222,7 +1199,6 @@ en:
label_welcome_my_respond: Please leave your comments and suggestions here!
label_no_current_fans: The user has no fans now
label_no_current_watchers: The user hasn't watched others
- label_project_tool_response: Response
label_course_feedback: Feedback
@@ -1402,7 +1378,7 @@ en:
label_main_term: Term
label_teacher_work_unit: Position
label_course_overview: Status
- label_course_file: File
+
label_course_news: News
#wang
@@ -1474,24 +1450,9 @@ en:
label_issue_feedback_activities: Question&Feedback
label_more_information: More...
label_release_time: Release-time
- label_question_sponsor: Sponsor
- label_final_reply: Final-reply
label_weixin: WeiXin
-
-
-
- # 项目托管平台
-
-
-
-
-
-
-
-
-
label_work_quantity: work
label_contest_work: Competition work
@@ -1507,7 +1468,6 @@ en:
label_attendingcontestwork_deposit_project: Deposit project
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_cuttingphoto: Photo-upload
label_system_platform: Platform
@@ -1606,22 +1566,13 @@ en:
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_notification: Notification
label_must_answer: Will answer
label_poll_title: The questionnaire survey _ questionnaire page
label_question_number: 'question %{question_number}:'
label_complete_question: The answer has been completed
-#end
+ #end
# ajax异步验证
modal_valid_passing: can be used.
@@ -1639,7 +1590,6 @@ en:
label_my_school: My school
label_all_schol: All school
label_select_province: Please select the provinces
- label_search_conditions_not_null: The search conditions cannot be blank
label_attachment: attachment
label_max_length: A maximum of 250 characters
@@ -1653,8 +1603,6 @@ en:
label_course_empty_select: You have not selected course!
label_enterprise_page_made: enterprise_page
- label_add_tag: Add Tag
-
#api
label_recently_updated_notification: Recently updated notification
label_recently_updated_homework: Recently updated the homework
diff --git a/config/locales/my/en.yml b/config/locales/my/en.yml
index fa21d210e..6e17c3e62 100644
--- a/config/locales/my/en.yml
+++ b/config/locales/my/en.yml
@@ -12,6 +12,10 @@ en:
label_company_name: Company Name
label_location: Location
label_identity: Identity
+ # top_menu 个人相关
+ label_my_course: My Course
+ label_my_message: Msgs
+ label_my_projects: My projects
#
@@ -22,8 +26,6 @@ en:
label_my_account: My account
label_my_photo: My photo
-
- label_information_plural: Information
label_account_identity_teacher: Teacher
label_account_identity_student: Student
diff --git a/config/locales/my/zh.yml b/config/locales/my/zh.yml
index 1e0b975d6..5a4a7c255 100644
--- a/config/locales/my/zh.yml
+++ b/config/locales/my/zh.yml
@@ -6,12 +6,15 @@ zh:
# Trustie个人账户模块
#
# 公共类
- #
-
+ #
field_occupation: 工作单位
label_company_name: 组织名
label_location: 位置
- label_identity: 身份
+ label_identity: 身份
+ # top_menu 个人相关
+ label_my_course: 我的课程
+ label_my_projects: 我的项目
+ label_my_message: 留言
#
# Trustie个人账户模块
@@ -21,8 +24,6 @@ zh:
label_my_account: 我的帐号
label_my_photo: 我的头像
-
- label_information_plural: 信息
label_account_identity_choose: --请选择身份--
label_account_identity_teacher: 教师
diff --git a/config/locales/navigatiors/en.yml b/config/locales/navigatiors/en.yml
index faf3ca715..52ee1a4a7 100644
--- a/config/locales/navigatiors/en.yml
+++ b/config/locales/navigatiors/en.yml
@@ -50,6 +50,7 @@ en:
#
# 搜索
#
+ label_search: Search
welcome:
search:
information: "Please input the keywords!" # 搜索提示信息
@@ -62,6 +63,7 @@ en:
showname: name
email: email
+ label_search_conditions_not_null: The search conditions cannot be blank
label_resources_search_all: "Search all files in the website, while will not search the contents of private items." # 资源搜索提示信息
#
diff --git a/config/locales/navigatiors/zh.yml b/config/locales/navigatiors/zh.yml
index 781dc51b8..bfda10a85 100644
--- a/config/locales/navigatiors/zh.yml
+++ b/config/locales/navigatiors/zh.yml
@@ -53,6 +53,7 @@ zh:
#
# 搜索
#
+ label_search: 搜索
welcome:
search:
information: 请输入要搜索的关键字 # 搜索提示信息
@@ -65,6 +66,7 @@ zh:
showname: 姓名
email: 邮箱
+ label_search_conditions_not_null: 搜索条件不能为空
label_resources_search_all: "全站文件搜索,不会搜索私有项目中的内容。" # 资源搜索提示信息
diff --git a/config/locales/projects/en.yml b/config/locales/projects/en.yml
index 4ff08a1a9..56177bea3 100644
--- a/config/locales/projects/en.yml
+++ b/config/locales/projects/en.yml
@@ -24,6 +24,79 @@ en:
label_project_score: Score
+ #
+ # 项目托管平台主页
+ #
+ # 左边栏
+ #
+ label_id: "ID:"
+
+ label_apply_project: Apply to Join
+ label_exit_project: Exit
+ label_apply_project_waiting: "Application has been processed, please wait for administrator review."
+ label_unapply_project: Cancel the application
+
+ label_member: Members
+ project_module_attachments: Resources
+
+ label_invite: Invitation
+ label_invite_new_user: "Send e-mail to invite new user"
+ label_invite_trustie_user: "Invite the Trustie registered user"
+
+ label_issue_tracking: Issue Tracking
+ label_release_issue: New Issue
+
+ project_module_boards: Forums
+ project_module_boards_post: New Post
+ # 与课程公用资源库
+ project_module_repository: Repository
+ project_module_create_repository: New Repository
+
+
+ project_module_news: News
+ project_module_wiki: Wiki
+ project_module_code_review: Code Review
+ project_module_calendar: Calendar
+ project_module_gantt: Gantt
+ project_module_documents: Documents
+ label_project_tool_response: Response
+ label_module_share: DTS Test Tool
+
+ label_project_overview: "Profile:"
+ label_expend_information: More Information
+
+
+ #
+ # 项目托管平台
+ #
+ # 项目配置
+ #
+ label_module_plural: Modules
+ label_version_plural: Versions
+ label_issue_category_plural: Issue categories
+ label_repository_plural: Repositories
+ enumeration_activities: Activities
+
+ #
+ # 项目托管平台
+ #
+ # 邀请
+ #
+ label_invite_new_user: "Send email to invite users"
+ label_invite_join: Invite
+ label_invite_email_tips: Enter the email address, Trustie will automatically register a user for the email address!
+ notice_registed_success: Email address is blank or has been registered!
+ label_email_format_error: Email format is incorrect!
+ label_send_email: Send
+ label_input_email: Please input email address
+
+ label_invite_trustie_user: "Invite Trustie registered users"
+ label_invite_trustie_user_tips: "Please enter the Trustie user name"
+ label_invite_project: "invites you to join the project"
+ label_invite_success: Successful invitation
+ label_invite_members: Invite
+
+
#
# 项目托管平台
#
@@ -33,8 +106,8 @@ en:
field_name: Name
field_description: Description
field_identifier: Identifier
- field_enterprise_name: Eterprise
-
+ field_enterprise_name: Enterprise
+ label_organization_choose: "- Please select an organization -"
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.
Once saved, the identifier cannot be changed."
@@ -50,11 +123,36 @@ en:
#
project:
join:
- title: 快速进入项目通道
- description: "只要持有项目的ID,就可快速申请加入所在项目。项目页面搜索不到的私有项目只能从此通道进入哦!"
+ title: Quickly Join to Project
+ description: "Just hold the project ID, while you can quickly apply to join the project.Private projects can only join by this channel!"
id:
label: "Project ID:"
- tips: "Project ID is the number within the project's url"
+ tips: "Project ID is the number within project URL"
+
+ #
+ # 项目托管平台
+ #
+ # 项目得分
+ #
+ label_projects_score: Project Total Score
+
+ label_issue_score: Issue Score
+ label_issue_number: issues
+ label_issue_journal_number: messages of issue
+
+ label_news_score: News Score
+ label_new_number: news
+
+ label_file_score: Document Scores
+ label_file_number: documents
+
+ label_code_submit_score: Code Commit Score
+ label_code_submit_number: commit code frequency
+
+ label_topic_score: Forum Score
+ label_topic_number: posts
+
+
diff --git a/config/locales/projects/zh.yml b/config/locales/projects/zh.yml
index d2e4e1530..c70392171 100644
--- a/config/locales/projects/zh.yml
+++ b/config/locales/projects/zh.yml
@@ -15,11 +15,6 @@ zh:
label_join_project: 加入项目
-
-
-
-
-
#
# 项目托管平台主页
#
@@ -31,7 +26,79 @@ zh:
label_project_score_tips: 项目得分,综合考虑了项目的各项活动,反映了该项目的活跃程度
label_project_score: 项目评分
+
+ #
+ # 项目托管平台主页
+ #
+ # 左边栏
+ #
+ label_id: "ID:"
+
+ label_apply_project: 申请加入
+ label_exit_project: 退出项目
+ label_apply_project_waiting: 已处理申请,请等待管理员审核
+ label_unapply_project: 取消申请
+ label_member: 成员
+ project_module_attachments: 资源
+
+ label_invite: 邀请
+
+ label_issue_tracking: 问题跟踪
+ label_release_issue: 发布问题
+
+ project_module_boards: 讨论区
+ project_module_boards_post: 发帖
+ # 与课程公用资源库
+ project_module_repository: 版本库
+ project_module_create_repository: 创建版本库
+
+ project_module_news: 新闻
+ project_module_wiki: Wiki
+ project_module_code_review: 代码审查
+ project_module_calendar: 日历
+ project_module_gantt: 甘特图
+ project_module_documents: 文档
+ label_project_tool_response: 用户反馈
+ label_module_share: DTS测试工具
+
+ label_project_overview: "项目简介:"
+ label_expend_information: 展开更多信息
+
+
+ #
+ # 项目托管平台
+ #
+ # 项目配置
+ #
+ label_module_plural: 模块
+ label_version_plural: 版本
+ label_issue_category_plural: 问题类别
+ label_repository_plural: 版本库
+ enumeration_activities: 活动(时间跟踪)
+
+
+ text_select_project_modules: '请选择此项目可以使用的模块:'
+
+
+ #
+ # 项目托管平台
+ #
+ # 邀请
+ #
+ label_invite_new_user: "发送邮件邀请新用户"
+ label_invite_join: 邀请加入
+ label_invite_email_tips: 输入好友邮箱地址,Trustie会自动为该邮箱注册用户!
+ notice_registed_success: 您输入的邮箱为空或者该邮箱已被注册!
+ label_email_format_error: 您所填写的电子邮件格式不正确
+ label_send_email: 免费发送
+ label_input_email: 请输入邮箱地址
+
+ label_invite_trustie_user: "邀请Trustie注册用户"
+ label_invite_trustie_user_tips: "请输入用户名称来搜索好友"
+ label_invite_project: 邀请您加入项目
+ label_invite_success: 邀请成功
+ label_invite_members: 邀请用户
#
# 项目托管平台
#
@@ -42,10 +109,9 @@ zh:
field_description: 描述
field_identifier: 标识
field_enterprise_name: 组织名称
-
+ label_organization_choose: --请选择组织--
text_length_between: "长度必须在 %{min} 到 %{max} 个字符之间。"
text_project_identifier_info: "小写字母(a-z)、数字、破折号(-)和下划线(_)可以使用。
一旦保存,标识无法修改。"
-
field_is_public: 公开
field_hidden_repo: 隐藏代码库
button_create: 提交
@@ -83,7 +149,7 @@ zh:
label_file_number: 文档的数量
label_code_submit_score: 代码提交得分
- label_code_submit_number: 代码提交数量
+ label_code_submit_number: 代码提交频率
label_topic_score: 讨论区得分
label_topic_number: 讨论区帖子数量
diff --git a/config/locales/users/zh.yml b/config/locales/users/zh.yml
index d77704aa4..1362380a0 100644
--- a/config/locales/users/zh.yml
+++ b/config/locales/users/zh.yml
@@ -16,7 +16,18 @@ zh:
#
label_user_home: 创客空间
-
+
+ #
+ # Trustie用户主页
+ #
+ # 菜单栏 (公共)
+ #
+ label_activity: 动态
+ label_user_course: 课程
+ label_user_project: 项目
+ label_user_newfeedback: 留言
+
+
#
# Trustie用户主页
#
@@ -85,17 +96,6 @@ zh:
label_no_current_watchers: 该用户暂未关注其他用户
- #
- # Trustie用户主页
- #
- # 菜单栏
- #
- label_activity: 动态
- label_user_course: 课程
- label_user_project: 项目
- label_user_newfeedback: 留言
-
-
#
# Trustie用户主页
#
diff --git a/config/locales/zh.yml b/config/locales/zh.yml
index bed4f138d..45d6a9d20 100644
--- a/config/locales/zh.yml
+++ b/config/locales/zh.yml
@@ -3,177 +3,10 @@
# by tsechingho (http://github.com/tsechingho)
zh:
-
-
-
# Text direction: Left-to-Right (ltr) or Right-to-Left (rtl)
direction: ltr
jquery:
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: "该班名已存在"
-
-
- actionview_instancetag_blank_option: 请选择
-
- 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'
-
- label_approve: 批准
- label_refusal: 拒绝
notice_account_updated: 帐号更新成功
notice_account_wrong_password: 密码错误
@@ -181,7 +14,7 @@ zh:
notice_successful_create: 创建成功
notice_successful_update: 更新成功
notice_successful_delete: 删除成功
- notice_registed_success: 该邮箱已被注册,请直接邀请注册用户
+ notice_registed_success: 您输入的邮箱为空或者该邮箱已被注册!
notice_failed_delete: 删除失败
notice_successful_connection: 连接成功
notice_successful_join: 加入成功
@@ -520,19 +353,14 @@ zh:
project_module_issue_tracking: 问题跟踪
project_moule_boards_show: 项目论坛
project_module_time_tracking: 时间跟踪
- project_module_news: 新闻
- project_module_documents: 文档
- project_module_files: 作品下载
- project_module_attachments: 资源
- project_module_wiki: Wiki
- project_module_repository: 版本库
- project_module_boards: 讨论区
- project_module_calendar: 日历
- project_module_gantt: 甘特图
+
+
+
+
+
project_module_course: 课程
- project_module_dts: DTS测试工具
- label_module_share: DTS测试工具
- project_module_code_review: 代码审查
+
+
label_user: 用户
label_user_plural: 用户列表
@@ -594,7 +422,7 @@ zh:
label_role_plural: 角色
label_role_new: 新建角色
label_role_and_permissions: 角色和权限
- label_member: 成员
+
label_search_member: 搜索
label_search_member_count: 共搜索到
label_member_people: 人
@@ -604,7 +432,6 @@ zh:
label_groupname_repeat: 该班名已存在
label_limit_groupname_null: 班名不能为空
label_member_new: 添加成员
- label_member_plural: 成员
label_tracker: 跟踪标签
label_tracker_plural: 跟踪标签
label_tracker_new: 新建跟踪标签
@@ -613,15 +440,14 @@ zh:
label_issue_status_plural: 问题状态
label_issue_status_new: 新建问题状态
label_issue_category: 问题类别
- label_issue_category_plural: 问题类别
+
label_issue_category_new: 新建问题类别
label_custom_field: 自定义属性
label_custom_field_plural: 自定义属性
label_custom_field_new: 新建自定义属性
label_enumerations: 枚举值
label_enumeration_new: 新建枚举值
- label_information: 信息
- label_information_plural: 信息
+
label_please_login: 请登录
label_login_with_open_id_option: 或使用OpenID登录
label_home: 主页
@@ -710,8 +536,6 @@ zh:
#end
label_my_page: 我的工作台
label_my_account: 我的帐号
- label_my_message: 留言
- label_my_projects: 我的项目
label_my_page_block: 我的工作台模块
label_administration: 管理
label_login: 登录
@@ -720,7 +544,6 @@ zh:
label_assigned_to_me_issues: 指派给我的问题
label_last_login: 最后登录
label_registered_on: 注册于
- label_activity: 动态 # modified by bai
label_overall_activity: 活动概览
label_new: 新建
@@ -765,7 +588,7 @@ zh:
label_news_latest: 最近的新闻
label_news_view_all: 查看所有新闻
label_news_added: 新闻已添加
- label_settings: 配置
+
label_overview: 近期动态
label_course_overview: "课程动态"
label_project_overview_new: "项目动态"
@@ -779,7 +602,7 @@ zh:
label_course_board: 讨论区
label_version: 版本
label_version_new: 新建版本
- label_version_plural: 版本
+
label_close_versions: 关闭已完成的版本
label_confirmation: 确认
label_export_to: 导出
@@ -861,7 +684,6 @@ zh:
label_day_plural: 天
label_repository: 版本库
label_course_repository: 代码库
- label_repository_plural: 版本库
label_browse: 浏览
label_branch: 分支
label_tag: 标签
@@ -892,7 +714,6 @@ zh:
label_search_by_login: 登录名
label_search_by_name: 名字
label_search_by_email: 邮箱
- label_search: 搜索
label_result_plural: 结果
label_all_words: 所有单词
label_wiki: Wiki
@@ -906,7 +727,6 @@ zh:
label_preview: 预览
label_feed_plural: Feeds
label_changes_details: 所有变更的详情
- label_issue_tracking: 问题跟踪
label_spent_time: 耗时
label_overall_spent_time: 总体耗时
label_f_hour: "%{value} 小时"
@@ -969,7 +789,6 @@ zh:
label_feeds_access_key: RSS存取键
label_missing_feeds_access_key: 缺少RSS存取键
label_feeds_access_key_created_on: "RSS存取键是在 %{value} 之前建立的"
- label_module_plural: 模块
label_added_time_by: "由 %{author} 在 %{age} 之前添加"
label_added_time: "在 %{age} 之前添加"
label_updated_time_by: "由 %{author} 更新于 %{age} 之前"
@@ -989,23 +808,14 @@ zh:
label_poll_title: 问卷调查_问卷页面
#huang
label_file_new: 下载
- label_user_edit: "修改资料"
- label_user_info: "个人简介" #huang 添加
- label_user_watcher: "关注" # huang添加的
- label_user_fans: "粉丝"
- # modify by men
- label_x_user_fans:
- zero: 粉丝
- one: 粉丝
- other: 粉丝
- #end
+
label_x_join_in_contest:
zero: 参与者
one: 参与者
other: 参与者
#end
label_user_commits: "代码提交"
- label_user_watchered: "关注" # huang添加的
+
label_user_newfeedback: "留言" ## huang添加的
label_feedback_success: "留言成功"
label_feedback_fail: "留言失败"
@@ -1014,7 +824,7 @@ zh:
label_user_joinin: "加入时间"
- label_project_overview: "概述"
+ label_overview: "概述"
label_project_tool: "项目工具集"
label_project_issues: "问题"
label_project_newother: "查看其他评论"
@@ -1176,7 +986,6 @@ zh:
text_status_changed_by_changeset: "已应用到变更列表 %{value}."
text_time_logged_by_changeset: "已应用到修订版本 %{value}."
text_issues_destroy_confirmation: '您确定要删除选中的问题吗?'
- text_select_project_modules: '请选择此项目可以使用的模块:'
text_default_administrator_account_changed: 默认的管理员帐号已改变
text_file_repository_writable: 附件路径可写
text_plugin_assets_writable: 插件的附件路径可写
@@ -1226,7 +1035,7 @@ zh:
enumeration_issue_priorities: 问题优先级
enumeration_doc_categories: 文档类别
- enumeration_activities: 活动(时间跟踪)
+
enumeration_system_activity: 系统活动
field_warn_on_leaving_unsaved: 当离开未保存内容的页面时,提示我
@@ -1473,10 +1282,6 @@ zh:
label_tags_bid_description: 需求描述
label_tags_issue_description: 问题描述
label_tags_all_objects: 所有
- label_apply_project: 申请加入
- label_exit_project: 退出项目
- label_apply_project_waiting: 已处理申请,请等待管理员审核
- label_unapply_project: 取消申请
#fq
@@ -1650,7 +1455,6 @@ zh:
label_issue_appraise_over: 只能评价一次哦!
label_welcome_my_respond: 请在此留下你的意见和建议!
- label_project_tool_response: 用户反馈
label_course_feedback: 留言
label_tags_search_result: 搜索结果
label_tags_call: 需求
@@ -1768,7 +1572,6 @@ zh:
label_i_new_activity: 有了新活动在
label_choose_course: 选择课程
button_submit_homework: 提交作业
- label_my_course: 我的课程
button_submit_bid: 参与竞标
label_requirement_from: 需求来源
label_course_view: 作业界面
@@ -1832,7 +1635,7 @@ zh:
label_course_open_student_info: (打钩为“学生列表公开”,不打钩为不公开,若不公开,则课程外部人员看不到学生列表)
label_course_view_student: 查看其他课程
label_course_student: 学生
- label_course_file: 资源库 #资料共享
+
label_course_new_homework: 新建作业
label_course_homework_list: 作业列表
label_course_homework_new: 发布作业
@@ -1911,8 +1714,7 @@ zh:
label_bids_task_list: 作业列表
label_join_course: 加入
- label_invite_project: 邀请您加入项目
- label_invite_members: 邀请用户
+
label_exit_course: 退出
label_exit_group: 退出当前分班
label_new_join: 加入
@@ -1965,8 +1767,6 @@ zh:
label_course_brief_introduction: 课程简介
field_teacher_name: 教 师
- field_dts_test: DTS测试工具
-
label_newbie_faq: '新手指引 & 问答'
label_hot_project: '热门项目'
label_borad_project: 项目讨论区
@@ -2087,7 +1887,7 @@ zh:
zero: 个动态
one: 个动态
other: 个动态
- label_upload_files: 上传资源
+
label_relation_files: 关联已有资源
label_contest_settings: 配置竞赛
label_contest_delete: 删除竞赛
@@ -2153,94 +1953,16 @@ zh:
label_release_time: 发布时间
label_weixin: 微信扫码
-
-
-
- # 项目托管平台 >新建项目
- label_project_new_description: '(项目为您和您的团队提供一个面向分布式协作的专有空间,可以设置为公开或私有。)'
- field_name: 名称
- field_description: 描述
- field_identifier: 标识
- text_length_between: "长度必须在 %{min} 到 %{max} 个字符之间。"
- text_project_identifier_info: "小写字母(a-z)、数字、破折号(-)和下划线(_)可以使用。
一旦保存,标识无法修改。"
- field_is_public: 公开
- field_hidden_repo: 隐藏代码库
- button_create: 提交
-
- # 项目托管平台 >加入项目
-
-
-
-
-
-
- # 课程托管平台
- # 课程托管平台主页 >主旨
- label_course_trustie: Trustie在线课程实践平台
- label_course_trustie_theme: ", 面向中国高校教师与大学生,提供社交化的课程管理、资源共享、合作实验、协同研究。"
- # 课程托管平台主页 >
-
-
-
-
-
- # 竞赛托管平台
- # 竞赛托管平台主页 >主旨
- label_contest_trustie: Trustie在线竞赛实战平台
- label_contest_trustie_theme: ", 面向中国大学生与编程爱好者,提供社交化的竞赛管理、应用管理、代码托管、合作交流。"
- # 竞赛托管平台主页 >
-
-
-
-
-
- # 邮件系统
- # 邮件 >激活邮件
- # edit by meng
- # 邮件中文格式
- mail_issue_greetings: "亲爱的Trustie用户,您好!"
- mail_issue_footer: "退订该邮件!"
- mail_issue_title_userin: "在"
- mail_issue_title_active: "中有了一个与您相关的最新活动,请您关注!"
- mail_issue_subject: "标题:"
- mail_issue_content: "内容:"
- mail_issue_sent_from: "来源:"
- mail_issue_from_project: "项目问题跟踪"
- mail_issue_attachments: "附件:"
- mail_issue_reply: "我要回复"
- mail_footer: "退订Trustie社区任务提醒?"
- # 课程资源上传
- # edit by meng
- # 课程资源上传>
- label_file_upload: 资源文件
- label_file_upload_error_messages: "上传出现错误,请您检查您的网络环境,并刷新页面重新上传。"
- button_confirm: 确认
-
-
-
-
label_work_quantity: 个作品
-# label_organizers: 主办单位
-# label_organizers_information: 国防科学技术大学并行与分布处理国家重点实验室
-# label_organizers_information_institute: 计算机科学与技术系
-# label_copyright: 版权
-# label_contact_us: 联系我们
-# label_record: 湘ICP备09019772
-
-
-
label_check_comment: 查看通知评论
label_notification: 通知公告
label_course_ad_description: 课程模块正在优化中,使用过程中如有问题请您与我们联系,感谢大家的支持!
label_course_adcolick: 请点击:
label_coursejoin_tip: 提示:加入课程才有权限查看或提交作业,“加入”按钮见课程图标右侧!
- #end
-
- #end
# ajax异步验证
modal_valid_passing: 可以使用
@@ -2260,7 +1982,6 @@ zh:
label_all_schol: 全部学校
label_school_all: 中国高校
label_select_province: 请选择省份
- label_search_conditions_not_null: 搜索条件不能为空
lable_hot_course: 活跃课程
lable_student_list_visable: 学生列表是否公开
@@ -2326,36 +2047,8 @@ zh:
label_answer_total: 总计:
label_join_project: 加入项目
- label_technical_support: 技术支持:
- label_feedback: 意见反馈
- label_forums_feedback_success: "您的意见已经反馈到公共贴吧的新手讨论吧,我们会第一时间解决您的问题,谢谢支持!"
-
-
-
- # 项目企业模块
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
#
#
# 项目企业模块
@@ -2368,7 +2061,6 @@ zh:
label_enterprise_nil: 该模块为最新上线模块,目前还没有创建企业项目!
label_enterprises: 组织
- label_add_tag: 添加标签
label_tags_opensource: 开源项目
label_attachment_category: 所属分类
label_attachment_download_num: 下载
@@ -2383,4 +2075,9 @@ zh:
label_recently_updated_message: 最近更新了留言
label_recently_updated_courseware: 最近更新了课件
label_no_courses: 您没有参与任何课程,请搜索课程、加入课程,或者创建课程吧!
+ label_end_time: 截止时间
+ label_send_email: 确定发送
+ label_input_email: 请输入邮箱地址
+ project_module_files: 资源库
+
diff --git a/db/migrate/20150227085333_add_data_to_project_issues_indexs_in_issue.rb b/db/migrate/20150227085333_add_data_to_project_issues_indexs_in_issue.rb
index a5e227808..d69450625 100644
--- a/db/migrate/20150227085333_add_data_to_project_issues_indexs_in_issue.rb
+++ b/db/migrate/20150227085333_add_data_to_project_issues_indexs_in_issue.rb
@@ -1,9 +1,11 @@
class AddDataToProjectIssuesIndexsInIssue < ActiveRecord::Migration
def change
- for i in 1 ... 1000 do i
- Issue.page(i).per(10).each do |e|
- index = e.project.issues.index(e).to_i + 1
- execute("update issues set project_issues_index = #{index} where id = #{e.id}")
+ transaction do
+ for i in 1 ... 1000 do i
+ Issue.page(i).per(10).each do |e|
+ index = e.project.issues.index(e).to_i + 1
+ execute("update issues set project_issues_index = #{index} where id = #{e.id}")
+ end
end
end
end
diff --git a/db/migrate/20150311013036_add_project_create_info_to_forge_activities.rb b/db/migrate/20150311013036_add_project_create_info_to_forge_activities.rb
new file mode 100644
index 000000000..9476db117
--- /dev/null
+++ b/db/migrate/20150311013036_add_project_create_info_to_forge_activities.rb
@@ -0,0 +1,21 @@
+# Time 2015-03-11 14:25:45
+# Author lizanle
+# Description 给每个项目添加一条初始创建信息,如果有menber,最早加进来的就算创始人,并给projects表的更新创建人
+class AddProjectCreateInfoToForgeActivities < ActiveRecord::Migration
+ def change
+ Project.all.each do |e|
+ user = e.members.order("members.created_on asc").first
+ next if user.nil?
+ execute("insert into forge_activities(forge_act_id,
+ forge_act_type,
+ project_id,
+ user_id,
+ created_at,
+ updated_at)
+ values(#{e.id},'ProjectCreateInfo',#{e.id},#{user.user_id},
+ '#{user.created_on.to_s.gsub("+0800","").to_datetime.strftime("%Y-%m-%d %H:%M:%S")}',
+ '#{user.created_on.to_s.gsub("+0800","").to_datetime.strftime("%Y-%m-%d %H:%M:%S")}')")
+ execute("update projects set user_id=#{user.user_id} where id =#{e.id}")
+ end
+ end
+end
diff --git a/db/schema.rb b/db/schema.rb
index bad1cf2ae..4cce0b5c8 100644
--- a/db/schema.rb
+++ b/db/schema.rb
@@ -11,7 +11,7 @@
#
# It's strongly recommended to check this file into your version control system.
-ActiveRecord::Schema.define(:version => 20150305081132) do
+ActiveRecord::Schema.define(:version => 20150311013036) do
create_table "activities", :force => true do |t|
t.integer "act_id", :null => false
diff --git a/plugins/redmine_code_review/config/locales/zh.yml b/plugins/redmine_code_review/config/locales/zh.yml
index 00141582a..b08b14eb2 100644
--- a/plugins/redmine_code_review/config/locales/zh.yml
+++ b/plugins/redmine_code_review/config/locales/zh.yml
@@ -55,10 +55,11 @@ zh:
label_auto_assign_settings: 自动分派
label_candidates_of_reviewer: 候选评审员
label_auto_assignment_filters: 过滤器
- auto_assign_filter_expression: '路径(Regular expression:ex. "/src/.*\.java$")'
+ auto_assign_filter_expression: '路径(正则表达式:ex. "/src/.*\.java$")'
auto_assign_filter_assign: 指派
auto_assign_filter_drop: 移除
- label_parent_suggestion: Maybe "%{issue_id}" ?
+ label_parent_suggestion: "可能是 '%{issue_id}' ?"
- label_assign_review: "分配给"
\ No newline at end of file
+ label_assign_review: "分配给"
+ field_tracker_in_review_dialog: "允许创建代码审查时选择跟踪者?"
\ No newline at end of file
diff --git a/public/images/jiantou.jpg b/public/images/jiantou.jpg
new file mode 100644
index 000000000..cd2840988
Binary files /dev/null and b/public/images/jiantou.jpg differ
diff --git a/public/images/jiantou1.jpg b/public/images/jiantou1.jpg
new file mode 100644
index 000000000..208f44244
Binary files /dev/null and b/public/images/jiantou1.jpg differ
diff --git a/public/javascripts/application.js b/public/javascripts/application.js
index 4345f8c31..9e9bc9859 100644
--- a/public/javascripts/application.js
+++ b/public/javascripts/application.js
@@ -480,7 +480,7 @@ function observeAutocompleteField(fieldId, url, options) {
$('#'+fieldId).autocomplete($.extend({
source: url,
select: function(e,ui){self.location="/issues/"+ui.item.value;},
- minLength: 2,
+ minLength: 1,
search: function(){$('#'+fieldId).addClass('ajax-loading');},
response: function(){$('#'+fieldId).removeClass('ajax-loading');
}
@@ -850,3 +850,13 @@ function HS_setDate(inputObj){
function redo() {
window.location.reload()
}
+
+
+//// 作业附件删除
+$(function(){
+ $('.attachments a.delete-homework-icon').bind('ajax:complete', //this will work
+ function(event, data, status, xhr) { //note parametes
+ $(this).parent('p').remove();
+ console.log("delete complete.");
+ });
+});
diff --git a/public/stylesheets/application.css b/public/stylesheets/application.css
index c80012f6a..5786c5758 100644
--- a/public/stylesheets/application.css
+++ b/public/stylesheets/application.css
@@ -8,6 +8,13 @@ h3, .wiki h2 {font-size: 15px; padding-left: 5px}
h4, .wiki h3 {font-size: 13px;}
h4 {border-bottom: 1px dotted #bbb;}
+/****翻页***/
+ul.wlist{ margin-left: -40px; border-bottom:none; }
+ul.wlist li{float: left;}
+ul.wlist li a{ border:1px solid #15bccf; padding:4px; margin-left:3px;}
+ul.wlist li a:hover{ background:#15bccf; color:#fff; text-decoration:none;}
+.wlist_select { background-color:#64bdd9; color:#fff; padding: 4px 3px 3px 3px; margin-left:3px;margin-top: -5px; border:1px solid #64bdd9;}
+
/*20150203项目界面优化样式 By: huangjignquan*/
.project_new{font-size: 15px; padding: 5px;}
.project_new .description{font-size: 12px; color: #ff7450; margin-bottom: 2px;}
@@ -48,7 +55,7 @@ a:hover.info_foot_num{ color:#2390b2;}
/*左侧导航*/
.subNavBox{width:222px; background:#fff;margin:10px 10px 0 0;}
.subNav{border-bottom:solid 1px #e5e3da;cursor:pointer;font-weight:bold;font-size:14px;color:#3ca5c6;line-height:28px;padding-left:10px;background-color:#fff;}
-.subNav_jiantou{background:url(../images/jiantou1.jpg) no-repeat;background-position:95% 50%; background-color:#fff;}
+.subNav_jiantou{background:url(/images/jiantou1.jpg) no-repeat;background-position:95% 50%; background-color:#fff;}
.subNav_jiantou:hover{color:#0781b4; }
.currentDd{color:#0781b4; }
.currentDt{background-color:#fff; }
@@ -63,6 +70,8 @@ a:hover.subnav_green{ background:#14ad5a;}
/*简介*/
.project_intro{ width:220px; padding:10px; background:#fff; padding-top:5px; color:#6d6d6d;}
+.course_description{max-height: 105px;overflow:hidden;}
+.course_description_none{max-height: none;}
.lg-foot{ border:1px solid #e8eef2; color: #929598; text-align:center; width:220px; height:23px; cursor:pointer;}
.lg-foot:hover{ color:#787b7e;}
/*右侧内容--动态*/
@@ -91,21 +100,22 @@ a:hover.more{ color:#64bdd9;}
.box_close{ display:block; float:right; width:16px; height:16px; background:url(../images/img_floatbox.png) 0 0 no-repeat;}
.box_close:hover{background:url(../images/img_floatbox.png) -22px 0 no-repeat;}
/*邮件邀请*/
-.box_main{ width:345px; margin:0 auto;padding-left:40px;}
-.box_h3{ color:#15bccf; text-align:center; font-size:16px;}
+.box_main{ width:345px; margin:0 auto;padding-left:28px;}
+.box_h3{ color:#15bccf; text-align:center; font-size:16px;margin-right:40px;}
.box_p{ color:#404040; margin-bottom:5px;}
.fb_item{ color:#919191; border:1px solid #919191; height:28px; margin-bottom:10px; padding-left:5px; width:290px;}
.icon_addm{ background:url(../images/img_floatbox.png) 0 -33px no-repeat; width:16px; height:16px; display:block; margin:5px 0 0 5px;}
.icon_addm:hover{background:url(../images/img_floatbox.png) 0 -61px no-repeat; }
.icon_removem{ background:url(../images/img_floatbox.png) -22px -33px no-repeat;width:16px; height:16px; display:block; margin:5px 0 0 5px}
.icon_removem:hover{background:url(../images/img_floatbox.png) -22px -61px no-repeat;}
-.btn_free{ background:#ff5722; display:block; width:80px; text-align:center; color:#fff; height:26px; padding-top:3px; margin-bottom:10px;}
+.btn_free{ background:#ff5722; display:block; width:80px; text-align:center; color:#fff !important; height:26px; padding-top:8px; margin-bottom:10px;}
.btn_free:hover{ background:#d63502;}
/*成员邀请*/
-.invi_search{ width:295px; margin:0 auto;}
+.invi_search{ width:345px; margin:0 auto;}
.invi_search_input{ border:1px solid #15bccf; width:180px; height:24px; color:#9b9b9b; padding-left:5px; margin-bottom:10px;}
.invi_search_btn{ background:#15bccf; color:#fff; text-align: center; width:40px; height:22px;border:1px solid #15bccf; padding-top:2px; cursor:pointer;}
.invi_search_btn:hover{ background:#0da1b2; border:1px solid #0da1b2;}
+.rolebox{ margin-left: -40px;}
/*问题跟踪*/
.problem_top{ margin:10px 0 ;}
.problem_search_input{ border:1px solid #64bdd9; width:180px; height:24px; color:#9b9b9b; padding-left:5px; margin-bottom:10px;}