Merge branch 'szzh' into email_verify

Conflicts:
	Gemfile.lock
This commit is contained in:
alan 2015-01-31 16:43:46 +08:00
commit 9681e08600
35 changed files with 609 additions and 712 deletions

View File

@ -1,353 +0,0 @@
GIT
remote: https://github.com/guange2015/grape-swagger-ui.git
revision: 4c33439f236c174ae0e774b3435ef2547995c21d
specs:
grape-swagger-ui (0.0.4)
railties (>= 3.1)
PATH
remote: lib/better_errors
specs:
better_errors (1.1.0)
coderay (>= 1.0.0)
erubis (>= 2.6.6)
PATH
remote: lib/email_verifier
specs:
email_verifier (0.0.7)
dnsruby (>= 1.5)
rails (>= 3.0.0)
PATH
remote: lib/rack-mini-profiler
specs:
rack-mini-profiler (0.9.1)
rack (>= 1.1.3)
PATH
remote: lib/seems_rateable
specs:
seems_rateable (1.0.13)
jquery-rails
rails
GEM
remote: http://rubygems.org/
remote: https://rubygems.org/
specs:
actionmailer (3.2.13)
actionpack (= 3.2.13)
mail (~> 2.5.3)
actionpack (3.2.13)
activemodel (= 3.2.13)
activesupport (= 3.2.13)
builder (~> 3.0.0)
erubis (~> 2.7.0)
journey (~> 1.0.4)
rack (~> 1.4.5)
rack-cache (~> 1.2)
rack-test (~> 0.6.1)
sprockets (~> 2.2.1)
activemodel (3.2.13)
activesupport (= 3.2.13)
builder (~> 3.0.0)
activerecord (3.2.13)
activemodel (= 3.2.13)
activesupport (= 3.2.13)
arel (~> 3.0.2)
tzinfo (~> 0.3.29)
activeresource (3.2.13)
activemodel (= 3.2.13)
activesupport (= 3.2.13)
activesupport (3.2.13)
i18n (= 0.6.1)
multi_json (~> 1.0)
acts-as-taggable-on (2.4.1)
rails (>= 3, < 5)
arel (3.0.3)
axiom-types (0.1.1)
descendants_tracker (~> 0.0.4)
ice_nine (~> 0.11.0)
thread_safe (~> 0.3, >= 0.3.1)
builder (3.0.0)
capybara (2.4.1)
mime-types (>= 1.16)
nokogiri (>= 1.3.3)
rack (>= 1.0.0)
rack-test (>= 0.5.4)
xpath (~> 2.0)
celluloid (0.16.0)
timers (~> 4.0.0)
childprocess (0.5.3)
ffi (~> 1.0, >= 1.0.11)
climate_control (0.0.3)
activesupport (>= 3.0)
cocaine (0.5.4)
climate_control (>= 0.0.3, < 1.0)
coderay (1.0.9)
coercible (1.0.0)
descendants_tracker (~> 0.0.1)
coffee-rails (3.2.2)
coffee-script (>= 2.2.0)
railties (~> 3.2.0)
coffee-script (2.3.0)
coffee-script-source
execjs
coffee-script-source (1.7.1)
descendants_tracker (0.0.4)
thread_safe (~> 0.3, >= 0.3.1)
diff-lcs (1.2.5)
dnsruby (1.57.0)
equalizer (0.0.9)
erubis (2.7.0)
execjs (2.2.1)
factory_girl (4.4.0)
activesupport (>= 3.0.0)
faker (1.4.3)
i18n (~> 0.5)
fastercsv (1.5.5)
ffi (1.9.3)
ffi (1.9.3-x86-mingw32)
formatador (0.2.5)
grape (0.9.0)
activesupport
builder
hashie (>= 2.1.0)
multi_json (>= 1.3.2)
multi_xml (>= 0.5.2)
rack (>= 1.3.0)
rack-accept
rack-mount
virtus (>= 1.0.0)
grape-entity (0.4.4)
activesupport
multi_json (>= 1.3.2)
grape-swagger (0.8.0)
grape
grape-entity
guard (2.11.1)
formatador (>= 0.2.4)
listen (~> 2.7)
lumberjack (~> 1.0)
nenv (~> 0.1)
notiffany (~> 0.0)
pry (>= 0.9.12)
shellany (~> 0.0)
thor (>= 0.18.1)
guard-rspec (2.5.0)
guard (>= 1.1)
rspec (~> 2.11)
hashie (3.3.1)
hike (1.2.3)
hitimes (1.2.2)
hitimes (1.2.2-x86-mingw32)
htmlentities (4.3.2)
i18n (0.6.1)
ice_nine (0.11.0)
journey (1.0.4)
jquery-rails (2.0.3)
railties (>= 3.1.0, < 5.0)
thor (~> 0.14)
json (1.8.1)
kaminari (0.16.1)
actionpack (>= 3.0.0)
activesupport (>= 3.0.0)
libv8 (3.16.14.3)
listen (2.8.5)
celluloid (>= 0.15.2)
rb-fsevent (>= 0.9.3)
rb-inotify (>= 0.9)
lumberjack (1.0.9)
mail (2.5.4)
mime-types (~> 1.16)
treetop (~> 1.4.8)
metaclass (0.0.4)
method_source (0.8.2)
mime-types (1.25.1)
mini_portile (0.6.0)
mocha (1.1.0)
metaclass (~> 0.0.1)
multi_json (1.10.1)
multi_xml (0.5.5)
nenv (0.2.0)
net-ldap (0.3.1)
nokogiri (1.6.3)
mini_portile (= 0.6.0)
nokogiri (1.6.3-x86-mingw32)
mini_portile (= 0.6.0)
notiffany (0.0.3)
nenv (~> 0.1)
shellany (~> 0.0)
paperclip (3.5.4)
activemodel (>= 3.0.0)
activesupport (>= 3.0.0)
cocaine (~> 0.5.3)
mime-types
polyglot (0.3.5)
pry (0.9.12.6)
coderay (~> 1.0)
method_source (~> 0.8)
slop (~> 3.4)
pry (0.9.12.6-x86-mingw32)
coderay (~> 1.0)
method_source (~> 0.8)
slop (~> 3.4)
win32console (~> 1.3)
rack (1.4.5)
rack-accept (0.4.5)
rack (>= 0.4)
rack-cache (1.2)
rack (>= 0.4)
rack-mount (0.8.3)
rack (>= 1.0.0)
rack-openid (1.4.2)
rack (>= 1.1.0)
ruby-openid (>= 2.1.8)
rack-raw-upload (1.1.1)
multi_json
rack-ssl (1.3.4)
rack
rack-test (0.6.2)
rack (>= 1.0)
rails (3.2.13)
actionmailer (= 3.2.13)
actionpack (= 3.2.13)
activerecord (= 3.2.13)
activeresource (= 3.2.13)
activesupport (= 3.2.13)
bundler (~> 1.0)
railties (= 3.2.13)
railties (3.2.13)
actionpack (= 3.2.13)
activesupport (= 3.2.13)
rack-ssl (~> 1.3.2)
rake (>= 0.8.7)
rdoc (~> 3.4)
thor (>= 0.14.6, < 2.0)
rake (10.3.2)
rb-fsevent (0.9.4)
rb-inotify (0.9.5)
ffi (>= 0.5.0)
rdoc (3.12.2)
json (~> 1.4)
ref (1.0.5)
rich (1.4.6)
jquery-rails
kaminari
mime-types
paperclip
rack-raw-upload
rails (>= 3.2.0)
sass-rails
rspec (2.13.0)
rspec-core (~> 2.13.0)
rspec-expectations (~> 2.13.0)
rspec-mocks (~> 2.13.0)
rspec-core (2.13.1)
rspec-expectations (2.13.0)
diff-lcs (>= 1.1.3, < 2.0)
rspec-mocks (2.13.1)
rspec-rails (2.13.1)
actionpack (>= 3.0)
activesupport (>= 3.0)
railties (>= 3.0)
rspec-core (~> 2.13.0)
rspec-expectations (~> 2.13.0)
rspec-mocks (~> 2.13.0)
ruby-ole (1.2.11.7)
ruby-openid (2.1.8)
rubyzip (1.1.6)
sass (3.3.10)
sass-rails (3.2.6)
railties (~> 3.2.0)
sass (>= 3.1.10)
tilt (~> 1.3)
selenium-webdriver (2.42.0)
childprocess (>= 0.5.0)
multi_json (~> 1.0)
rubyzip (~> 1.0)
websocket (~> 1.0.4)
shellany (0.0.1)
shoulda (3.5.0)
shoulda-context (~> 1.0, >= 1.0.1)
shoulda-matchers (>= 1.4.1, < 3.0)
shoulda-context (1.2.1)
shoulda-matchers (2.6.1)
activesupport (>= 3.0.0)
slop (3.6.0)
spreadsheet (1.0.0)
ruby-ole (>= 1.0)
sprockets (2.2.2)
hike (~> 1.2)
multi_json (~> 1.0)
rack (~> 1.0)
tilt (~> 1.1, != 1.3.0)
therubyracer (0.12.1)
libv8 (~> 3.16.14.0)
ref
thor (0.19.1)
thread_safe (0.3.4)
tilt (1.4.1)
timers (4.0.1)
hitimes
treetop (1.4.15)
polyglot
polyglot (>= 0.3.1)
tzinfo (0.3.40)
uglifier (2.5.1)
execjs (>= 0.3.0)
json (>= 1.8.0)
virtus (1.0.3)
axiom-types (~> 0.1)
coercible (~> 1.0)
descendants_tracker (~> 0.0, >= 0.0.3)
equalizer (~> 0.0, >= 0.0.9)
websocket (1.0.7)
win32console (1.3.2-x86-mingw32)
xpath (2.0.0)
nokogiri (~> 1.3)
PLATFORMS
ruby
x86-mingw32
DEPENDENCIES
activerecord-jdbc-adapter (= 1.2.5)
acts-as-taggable-on (= 2.4.1)
better_errors!
builder (= 3.0.0)
capybara (~> 2.4.1)
coderay (~> 1.0.6)
coffee-rails (~> 3.2.1)
email_verifier!
factory_girl (~> 4.4.0)
faker
fastercsv (~> 1.5.0)
grape (~> 0.9.0)
grape-entity
grape-swagger
grape-swagger-ui!
guard-rspec (= 2.5.0)
htmlentities
i18n (~> 0.6.0)
jquery-rails (~> 2.0.2)
kaminari
mocha (~> 1.1.0)
net-ldap (~> 0.3.1)
nokogiri (~> 1.6.3)
paperclip (~> 3.5.4)
rack-mini-profiler!
rack-openid
rails (= 3.2.13)
rich (= 1.4.6)
rspec-rails (= 2.13.1)
ruby-ole
ruby-openid (~> 2.1.4)
sass-rails (~> 3.2.3)
seems_rateable!
selenium-webdriver (~> 2.42.0)
shoulda (~> 3.5.0)
spreadsheet
therubyracer
uglifier (>= 1.0.3)

View File

@ -1,6 +0,0 @@
class EnterprisesController < ApplicationController
layout 'project_base'
def index
@enterprises = Project.find_by_sql("select enterprise_name from projects")
end
end

View File

@ -0,0 +1,6 @@
class OrganizationsController < ApplicationController
layout 'project_base'
def index
@projects = Project.find_by_sql("SELECT * FROM projects WHERE id IN (select MAX(id) from projects GROUP BY enterprise_name)")
end
end

View File

@ -25,15 +25,15 @@ class WelcomeController < ApplicationController
before_filter :entry_select, :only => [:index]
def index
unless params[:enterprise].nil?
@enterprise = params[:enterprise]
@enterprise_projects = Project.find_by_sql(["select * from projects where enterprise_name =? ", @enterprise])
@e_count = @enterprise_projects.count
if @e_count < 10
part_count = 10 -@e_count
unless params[:project].nil?
@cur_projects = Project.find(params[:project])
@organization = @cur_projects.enterprise_name
@organization_projects = Project.find_by_sql(["select * from projects where enterprise_name =? ", @organization])
@e_count = @organization_projects.count
if @e_count < 9
part_count = 9 - @e_count
# @part_projects = find_all_hot_project part_count, order
@part_projects = find_miracle_project(part_count, 3,"score desc")
limit = 10 - @e_count
end
end
if @first_page.nil? || @first_page.sort_type.nil?

View File

@ -7,6 +7,7 @@ class ZipdownController < ApplicationController
SAVE_FOLDER = "#{Rails.root}/files"
OUTPUT_FOLDER = "#{Rails.root}/tmp/archiveZip"
def assort
if params[:obj_class] == "Bid"
bid = Bid.find params[:obj_id]

View File

@ -35,7 +35,7 @@ class Course < ActiveRecord::Base
acts_as_nested_set :order => 'name', :dependent => :destroy
acts_as_attachable :view_permission => :view_course_files,
:delete_permission => :manage_files
validates_presence_of :password, :term,:name
validates_format_of :class_period, :with =>/^[1-9]\d*$/
validates_format_of :name,:with =>/^[^ ]+[a-zA-Z0-9_\u4e00-\u9fa5\s\S]+$/

View File

@ -1,7 +1,7 @@
<head>
<meta charset="utf-8">
<title>注册帐号</title>
<title><%= l(:label_regiter_account)%></title>
<style type="text/css">
#jihuo {
background-image: url("/images/jingtanhao.JPG");
@ -14,15 +14,15 @@
<div style="border: 1px solid #c0c0c0 ; width:850px; margin-top: 10px" >
<h3 style=" padding-bottom: 8px; margin-top:5px; border-bottom: 1px solid #c0c0c0;color:black; ">
<span id = "jihuo" style=" margin-left: 4%;"></span>邮箱激活</h3>
<span id = "jihuo" style=" margin-left: 4%;"></span><%= l(:label_email_valid)%></h3>
<div style="margin-left:auto; margin-right:auto">
<center>
<div >
<h4 style="font-size: 18px;margin-top: 10px; padding-bottom: 10px;">请在24小时内点击邮件中的链接继续完成注册</h4>
<h4 style="font-size: 18px;margin-top: 10px; padding-bottom: 10px;"><%= l(:notice_email_register_time)%></h4>
<div class="to-email" style="padding-bottom: 8px; font-size: 14px">
<div class="to-email" style="padding-bottom: 8px; font-size: 14px">
<span >邮件已发送到邮箱</span>
<span ><%= l(:notice_email_arrival)%></span>
<a href="#" class="f-blue"><%= @user.mail %></a>
</div>
<p>
@ -32,7 +32,7 @@
border: none;
padding: 10px 16px;
line-height: 1.33;" target="_blank">立即查收邮件</a>
line-height: 1.33;" target="_blank"><%= l(:label_check_email)%></a>
&nbsp; &nbsp; <%= link_to l(:label_mail_resend), { :controller => 'account', :action => 'resendmail',:user => @user}, :remote => true, :method => 'get' %>
</p>

View File

@ -3,7 +3,7 @@
@nav_dispaly_main_project_label = 1
@nav_dispaly_main_contest_label = 1 %>
<% @nav_dispaly_forum_label = 1%>
<h3><%=l(:label_password_lost)%></h3>
<h3><%=l(:label_password_forget)%></h3>
<%= form_tag(lost_password_path) do %>
<div class="box tabular">

View File

@ -136,34 +136,35 @@
<% else %>
<span style="color: red"><%= l(:label_noawards_current) %></span>
<% end %>
<% else %>
<% case get_prize(c_project) %>
<% when '-1' %>
<%= image_tag("/images/bid/special_reward.png") %>
<% when '0' %>
<%= image_tag("/images/bid/first_reward.png") %>
<% when '1' %>
<%= image_tag("/images/bid/second_reward.png") %>
<% when '2' %>
<%= image_tag("/images/bid/third_reward.png") %>
<% when '3' %>
<%= image_tag("/images/bid/forth_reward.png") %>
<% when '4' %>
<%= image_tag("/images/bid/fifth_reward.png") %>
<% when '5' %>
<%= image_tag("/images/bid/qualified.png") %>
<% end %>
<% end %>
<% else %>
<% case get_prize(c_project) %>
<% when '-1' %>
<%= image_tag("/images/bid/special_reward.png") %>
<% when '0' %>
<%= image_tag("/images/bid/first_reward.png") %>
<% when '1' %>
<%= image_tag("/images/bid/second_reward.png") %>
<% when '2' %>
<%= image_tag("/images/bid/third_reward.png") %>
<% when '3' %>
<%= image_tag("/images/bid/forth_reward.png") %>
<% when '4' %>
<%= image_tag("/images/bid/fifth_reward.png") %>
<% when '5' %>
<%= image_tag("/images/bid/qualified.png") %>
<% end %>
<% end %>
</span>
</strong>
</td>
<!-- 评价显隐控制按钮-->
<% if ((User.current.id == @contest.author_id) && (@contest.deadline > Date.today))||User.current.admin %>
<% if ((User.current.id == @contest.author_id) && (@contest.deadline >= Date.today))||User.current.admin %>
<td valign="top" align="right" width="10%">
<span> <%= toggle_link l(:label_reward), c_project.id.to_s %></span>
<!-- 评价应标项目的表单 -->
<span style="display: none; vertical-align: top " id='<%= c_project.id %>'>
<span style="display: none; vertical-align: top " id='<%= c_project.id %>'>
<%= form_for "set_reward_project", :remote => true, :url => set_reward_project_contest_path do |f| %>
<%= f.text_field :c_id, :style => "display:none", :value => c_project.id, :size => "0" %>
<%= f.select :reward, "<option value = '-1'>#{l(:label_special_reward)}</option>
@ -176,8 +177,9 @@
<%= f.submit :value => l(:button_submit), :class => "submit" %>
<% end %>
</span>
</td>
<% end %>
</td>
<% end %>
</div>
</div>
</div>
@ -282,7 +284,7 @@
</td>
<!-- 评价显隐控制按钮-->
<% if ((User.current.id == @contest.author_id) && (@contest.deadline > Date.today))||User.current.admin %>
<% if ((User.current.id == @contest.author_id) && (@contest.deadline >= Date.today))||User.current.admin %>
<div style="text-align: right;width: 100%;">
<span style="padding-right: 5px; padding-top: 1px"> <%= toggle_link '评奖', c_softapplication.id.to_s %></span>
<!-- 评价应标项目的表单 -->

View File

@ -1,25 +0,0 @@
<div class="enterprise_all">
<p>
<%= link_to l(:label_all_enterprises) %>
<p>
<p>
<% if @enterprises.count == 0 %>
<h3><%= l(:label_enterprise_nil) %></h3>
<% else %>
<% @enterprises.each do |enterprise| %>
<% unless enterprise.enterprise_name.blank? %>
<ul>
<li>
<%= link_to enterprise.enterprise_name, home_path(:enterprise => enterprise.enterprise_name) %>
</li>
</ul>
<% end %>
<% end %>
<% end %>
</p>
</div>
<div style="clear: both"></div>
<div class="school-index">
<ul id="schoollist" style="line-height: 25px"></ul>
</div>
<% html_title(l(:label_enterprise_all)) -%>

View File

@ -37,7 +37,7 @@
</head>
<body>
<div class="container">
<div class="container" id="content">
<div class="Newwork">
<div id="tb_" class="tb_">
<ul>
@ -75,7 +75,6 @@
<%= f.text_area :description, :rows => 8, :name => "homework_description", :class => "w620",
:maxlength => 3000, :placeholder => "最多3000个汉字" %>
</p>
<div class="cl"></div>
<p>
<label style="float: left;">
&nbsp;&nbsp;&nbsp;添加附件&nbsp;&nbsp;&nbsp;&nbsp;

View File

@ -37,7 +37,7 @@
function submit_homework_form(){if(regexName()&&regexDescription()){$('#new_homework_attach').submit();}}
</script>
<div class="container">
<div class="container" id="content">
<div class="Newwork">
<div id="tb_" class="tb_">
<ul>
@ -82,9 +82,6 @@
<br />
<span id="homework_attach_description_span" style="padding-left: 100px;"></span>
</p>
<br/> <span id="homework_attach_description_span" style="padding-left: 100px;"></span>
</p>
<div class="cl"></div>
<p>
<label style="float: left;">
&nbsp;&nbsp;&nbsp;添加附件&nbsp;&nbsp;&nbsp;&nbsp;

View File

@ -0,0 +1,11 @@
<%# Link to the "First" page
- available local variables
url: url to the first page
current_page: a page object for the currently displayed page
total_pages: total number of pages
per_page: number of items to fetch per page
remote: data-remote
-%>
<%= link_to_unless current_page.first?, l('views.pagination.first').html_safe, url, :remote => remote %>

View File

@ -0,0 +1,8 @@
<%# Non-link tag that stands for skipped pages...
- available local variables
current_page: a page object for the currently displayed page
total_pages: total number of pages
per_page: number of items to fetch per page
remote: data-remote
-%>

View File

@ -0,0 +1,11 @@
<%# Link to the "Last" page
- available local variables
url: url to the last page
current_page: a page object for the currently displayed page
total_pages: total number of pages
per_page: number of items to fetch per page
remote: data-remote
-%>
<%= link_to_unless current_page.last?, t('views.pagination.last').html_safe, url, :remote => remote %>

View File

@ -0,0 +1,11 @@
<%# Link to the "Next" page
- available local variables
url: url to the next page
current_page: a page object for the currently displayed page
total_pages: total number of pages
per_page: number of items to fetch per page
remote: data-remote
-%>
<%= link_to_unless current_page.last?, t('views.pagination.next').html_safe, url, :rel => 'next', :remote => remote %>

View File

@ -0,0 +1,13 @@
<%# Link showing page number
- available local variables
page: a page object for "this" page
url: url to this page
current_page: a page object for the currently displayed page
total_pages: total number of pages
per_page: number of items to fetch per page
remote: data-remote
<%= link_to_unless page.current?, page, url, {:remote => remote, :rel => page.next? ? 'next' : page.prev? ? 'prev' : nil}
-%>
<%= link_to_unless page.current?, page, url, {:remote => remote, :rel => page.next? ? 'next' : page.prev? ? 'prev' : nil} %>

View File

@ -0,0 +1,23 @@
<%# The container tag
- available local variables
current_page: a page object for the currently displayed page
total_pages: total number of pages
per_page: number of items to fetch per page
remote: data-remote
paginator: the paginator that renders the pagination tags inside
-%>
<%= paginator.render do -%>
<div class="pagination">
<%= first_page_tag unless current_page.first? %>
<%= prev_page_tag unless current_page.first? %>
<% each_page do |page| -%>
<% if page.left_outer? || page.right_outer? || page.inside_window? -%>
<%= page_tag page %>
<% elsif !page.was_truncated? -%>
<%= gap_tag %>
<% end -%>
<% end -%>
<%= next_page_tag unless current_page.last? %>
<%= last_page_tag unless current_page.last? %>
</div>
<% end -%>

View File

@ -0,0 +1,11 @@
<%# Link to the "Previous" page
- available local variables
url: url to the previous page
current_page: a page object for the currently displayed page
total_pages: total number of pages
per_page: number of items to fetch per page
remote: data-remote
-%>
<%= link_to_unless current_page.first?, t('views.pagination.previous').html_safe, url, :rel => 'prev', :remote => remote %>

View File

@ -80,6 +80,7 @@
<%=link_to l(:field_homepage), home_path %> >
<a href="http://<%= Setting.host_contest %>" class="link_other_item">
<%=l(:label_contests_management_platform)%>
</a> >
<span title="<%= @contest.name%>">
<%= link_to h(truncate(@contest.name, length: 20, omission: '...')), contest_contestnotifications_path(@contest) %>

View File

@ -0,0 +1,23 @@
<title><%= l(:label_all_enterprises) %></title>
<div class="content_syqy">
<div class="list"><%= l(:label_all_enterprises) %></div>
<div class="syqy_box">
<% if @projects.count == 0 %>
<h3><%= l(:label_enterprise_nil) %></h3>
<% else %>
<% @projects.each do |project| %>
<% unless project.enterprise_name.blank? %>
<ul>
<li ><img src="/images/organization_logo.jpg" width="30" height="30" alt="#{project.enterprise_name}" />
<a style="padding-top: 2px"><%= link_to project.enterprise_name, home_path(:project => project) %></a></li>
</ul>
<% end %>
<% end %>
<% end %>
</div>
</div>
<div style="clear: both"></div>
<div class="school-index">
<ul id="schoollist" style="line-height: 25px"></ul>
</div>
<% html_title(l(:label_enterprise_all)) -%>

View File

@ -1,133 +1,133 @@
<% @nav_dispaly_project_label = 1
@nav_dispaly_forum_label = 1 %>
<% content_for :header_tags do %>
<%= auto_discovery_link_tag(:atom, {:action => 'index', :format => 'atom', :key => User.current.rss_key}) %>
<% end %>
<div class="top-content">
<%= form_tag(projects_search_path, :method => :get, :id => "project_search_form") do %>
<% if params[:project_type] == "1" %>
<table width="940px">
<tr>
<td class="info_font" style="width: 220px; color: #15bccf"><%= l(:label_course_practice) %></td>
<td class="location-list"><strong><%= l(:label_user_location) %> :</strong></td>
<td rowspan="2" valign="bottom">
<% if User.current.logged?%>
<% if User.current.user_extensions.identity == 0 %>
<%= link_to(l(:label_course_new), {:controller => 'projects', :action => 'new', :course => 1, :project_type => @project_type}, :class => 'icon icon-add') if User.current.allowed_to?(:add_project, nil, :global => true) %></td>
<% end %>
<% end %>
</td>
<td rowspan="2" >
<div class="project-search" style="float: right">
<%= text_field_tag 'name', params[:name], :size => 30 %>
<%= hidden_field_tag 'project_type', params[:project_type] %>
<%= submit_tag l(:label_search), :class => "enterprise", :name => nil %>
</div>
</td>
</tr>
<tr>
<td style="padding-left: 8px"><a><%= link_to request.host() + "/projects", :controller => 'projects', :action => 'course', :project_type => 1 %> </a></td>
<td ><%=link_to l(:field_homepage), home_path %> > <%=link_to l(:label_course_practice), :controller => 'projects', :action => 'course', :project_type => 1 %></td>
</tr>
</table>
<% else %>
<table width="940px">
<tr>
<td class="info_font" style="width: 220px; color: #15bccf">
<%= l(:label_project_deposit) %>
</td>
<td class="location-list">
<strong><%= l(:label_user_location) %> :</strong>
</td>
<td rowspan="2" valign="bottom">
<% if User.current.logged? %>
<%= link_to(l(:label_project_new), {:controller => 'projects', :action => 'new', :course => 0, :project_type => @project_type}, :class => 'icon icon-add') if User.current.allowed_to?(:add_project, nil, :global => true) %>
<% end %>
</td>
<td rowspan="2" >
<script type="text/javascript">
function regexName()
{
var name = $.trim($("#name").val());
if(name.length == 0)
{
$("#project_name_span").text("<%= l(:label_search_conditions_not_null) %>");
$("#project_name_span").css('color','#ff0000');
$("#project_name_span").focus();
return false;
}
else
{
$("#project_name_span").text("");
return true;
}
}
function submitSerch()
{
if(regexName()){$("#project_search_form").submit();}
}
</script>
<div class="project-search" style="float: right">
<%= text_field_tag 'name', params[:name], :size => 20, :onkeyup => "regexName();", :style => "float:left" %>
<%= hidden_field_tag 'project_type', params[:project_type] %>
<%#= submit_tag l(:label_search), :class => "enterprise", :name => nil %>
<a href="#" onclick="submitSerch();" class="ButtonColor m3p10" style="float:left;padding-top: 3px; margin: 0px;padding-bottom:0px;" >
<%= l(:label_search)%>
</a>
<br />
<span id="project_name_span" style="float: left"></span>
</div>
</td>
</tr>
<tr>
<td style="padding-left: 8px">
<a>
<%= link_to request.host()+"/projects", :controller => 'projects', :action => 'index', :project_type => 0 %>
</a>
</td>
<td >
<%=link_to l(:field_homepage), home_path %> >
<%=link_to l(:label_project_deposit), :controller => 'projects', :action => 'index', :project_type => 0 %>
</td>
</tr>
</table>
<% end %>
<% end %>
</div>
<% if @projects.size == 0 %>
<%= render :partial => 'layouts/no_content'%>
<% else %>
<div id="projects-index">
<%= render_project_hierarchy(@projects)%>
</div>
<% end %>
<div class="pagination">
<ul>
<%= paginate @project_pages %>
</ul>
</div>
<% if User.current.logged? %>
<p style="text-align:right;">
<span class="my-project"><%= l(:label_my_projects) %></span>
</p>
<% end %>
<% other_formats_links do |f| %>
<%= f.link_to 'Atom', :url => {:key => User.current.rss_key} %>
<% end %>
<% content_for :sidebar do %>
<%= form_tag({}, :method => :get) do %>
<h3><%= l(:label_project_plural) %></h3>
<label for="closed"><%= check_box_tag 'closed', 1, params[:closed] %> <%= l(:label_show_closed_projects) %></label>
<p>
<%= submit_tag l(:button_apply), :class => 'button-small', :name => nil %>
</p>
<% end %>
<% end %>
<% html_title(l(:label_project_plural)) -%>
<% @nav_dispaly_project_label = 1
@nav_dispaly_forum_label = 1 %>
<% content_for :header_tags do %>
<%= auto_discovery_link_tag(:atom, {:action => 'index', :format => 'atom', :key => User.current.rss_key}) %>
<% end %>
<div class="top-content">
<%= form_tag(projects_search_path, :method => :get, :id => "project_search_form") do %>
<% if params[:project_type] == "1" %>
<table width="940px">
<tr>
<td class="info_font" style="width: 220px; color: #15bccf"><%= l(:label_course_practice) %></td>
<td class="location-list"><strong><%= l(:label_user_location) %> :</strong></td>
<td rowspan="2" valign="bottom">
<% if User.current.logged?%>
<% if User.current.user_extensions.identity == 0 %>
<%= link_to(l(:label_course_new), {:controller => 'projects', :action => 'new', :course => 1, :project_type => @project_type}, :class => 'icon icon-add') if User.current.allowed_to?(:add_project, nil, :global => true) %></td>
<% end %>
<% end %>
</td>
<td rowspan="2" >
<div class="project-search" style="float: right">
<%= text_field_tag 'name', params[:name], :size => 30 %>
<%= hidden_field_tag 'project_type', params[:project_type] %>
<%= submit_tag l(:label_search), :class => "enterprise", :name => nil %>
</div>
</td>
</tr>
<tr>
<td style="padding-left: 8px"><a><%= link_to request.host() + "/projects", :controller => 'projects', :action => 'course', :project_type => 1 %> </a></td>
<td ><%=link_to l(:field_homepage), home_path %> > <%=link_to l(:label_course_practice), :controller => 'projects', :action => 'course', :project_type => 1 %></td>
</tr>
</table>
<% else %>
<table width="940px">
<tr>
<td class="info_font" style="width: 220px; color: #15bccf">
<%= l(:label_project_deposit) %>
</td>
<td class="location-list">
<strong><%= l(:label_user_location) %> :</strong>
</td>
<td rowspan="2" valign="bottom">
<% if User.current.logged? %>
<%= link_to(l(:label_project_new), {:controller => 'projects', :action => 'new', :course => 0, :project_type => @project_type}, :class => 'icon icon-add') if User.current.allowed_to?(:add_project, nil, :global => true) %>
<% end %>
</td>
<td rowspan="2" >
<script type="text/javascript">
function regexName()
{
var name = $.trim($("#name").val());
if(name.length == 0)
{
$("#project_name_span").text("<%= l(:label_search_conditions_not_null) %>");
$("#project_name_span").css('color','#ff0000');
$("#project_name_span").focus();
return false;
}
else
{
$("#project_name_span").text("");
return true;
}
}
function submitSerch()
{
if(regexName()){$("#project_search_form").submit();}
}
</script>
<div class="project-search" style="float: right">
<%= text_field_tag 'name', params[:name], :size => 20, :onkeyup => "regexName();", :style => "float:left" %>
<%= hidden_field_tag 'project_type', params[:project_type] %>
<%#= submit_tag l(:label_search), :class => "enterprise", :name => nil %>
<a href="#" onclick="submitSerch();" class="ButtonColor m3p10" style="float:left;padding-top: 3px; margin: 0px;padding-bottom:0px;" >
<%= l(:label_search)%>
</a>
<br />
<span id="project_name_span" style="float: left"></span>
</div>
</td>
</tr>
<tr>
<td style="padding-left: 8px">
<a>
<%= link_to request.host()+"/projects", :controller => 'projects', :action => 'index', :project_type => 0 %>
</a>
</td>
<td >
<%=link_to l(:field_homepage), home_path %> >
<%=link_to l(:label_project_deposit), :controller => 'projects', :action => 'index', :project_type => 0 %>
</td>
</tr>
</table>
<% end %>
<% end %>
</div>
<% if @projects.size == 0 %>
<%= render :partial => 'layouts/no_content'%>
<% else %>
<div id="projects-index">
<%= render_project_hierarchy(@projects)%>
</div>
<% end %>
<%= paginate @project_pages %>
<% if User.current.logged? %>
<p style="text-align:right;">
<span class="my-project"><%= l(:label_my_projects) %></span>
</p>
<% end %>
<% other_formats_links do |f| %>
<%= f.link_to 'Atom', :url => {:key => User.current.rss_key} %>
<% end %>
<% content_for :sidebar do %>
<%= form_tag({}, :method => :get) do %>
<h3><%= l(:label_project_plural) %></h3>
<label for="closed"><%= check_box_tag 'closed', 1, params[:closed] %> <%= l(:label_show_closed_projects) %></label>
<p>
<%= submit_tag l(:button_apply), :class => 'button-small', :name => nil %>
</p>
<% end %>
<% end %>
<% html_title(l(:label_project_plural)) -%>

View File

@ -8,7 +8,7 @@
<span class="private_project"> <%= l(:label_private) %> </span>
<% end %>
<%= link_to( project.name, project_path(project.id), :class => "d-g-blue d-p-project-name",:title => "#{project.name}" )%>
(<%= link_to "#{projectCount(project)}人", project_member_path(project) ,:course =>'0' %>)
(<%= link_to l(:label_project_member_amount, :count=>projectCount(project)), project_member_path(project) ,:course =>'0' %>)
</div>
<div style=" float: left;margin:5px; margin-left: 10px; width: 380px;min-height: 42px;">
<span class='font_lighter' title ='<%= project.short_description%>'> <%=project.description.truncate(90, omission: '...')%> </span>
@ -16,7 +16,7 @@
<div >
<%= content_tag "span", l(:label_project_score)+ ":" + red_project_scores(project).to_i.to_s,
:style => "cursor: pointer; display: inline-block; float: right; color: #ec6300;",
:title => "项目得分,综合考虑了项目的各项活动,反映了该项目的活跃程度",
:title => l(:label_project_score_tips),
:class => "tooltip",
:id => "tooltip-#{project.id}" %>
</div>

View File

@ -61,6 +61,7 @@ form #search_by
.search_widget{
display:inline-block;
border-radius: 5px;
float: right;
}
.search_widget:hover{
box-shadow: 0px 0px 3px #56B4EF;
@ -87,14 +88,13 @@ form #search_by
</script>
<%= form_tag({controller: :welcome, action: :search }, method: :get) do %>
<div class="project-search" style="float: right">
<%= submit_tag l(:label_search), :class => "enterprise", :name => nil,:style =>"float: right; margin-left:3px;margin-top:2px" %>
<div class='search_widget' >
<%= text_field_tag :q, nil, :placeholder => l(:label_search_information), style:"float:left;" %>
<input type="text" name="search_by_input" style="display: none" id="search_by_input" value="0">
<%= select_tag(:search_type, options_for_select(select_option), :onchange => "searchTypeChange();", :style => "float:right" ) %>
<%= select_tag(:search_by,options_for_select([[l(:label_select_user_nickname),"0"],[l(:label_select_user_showname),"1"],[l(:label_select_user_email),"2"]]), :onchange => "searchByChange();",:style => "float:right" ) %>
</div>
<%#= hidden_field_tag 'project_type', project_type %>
<%= submit_tag l(:label_search), :class => "enterprise", :name => nil,:style =>"float: right; margin-left:3px;margin-top:2px" %>
</div>
</div>
<% end %>

View File

@ -31,7 +31,7 @@
<div class="main-content-bar" id="main-content-bar">
<div style="float: left;padding-left:15px ">
<!-- <#%= image_tag(get_project_avatar(@first_page), size: "75x75") %> -->
<% if @enterprise.nil? %>
<% if @organization.nil? %>
<% if get_avatar?(@first_page) %>
<%= image_tag(url_to_avatar(@first_page), width:@first_page.image_width,height: @first_page.image_height) %>
<% else %>
@ -42,13 +42,13 @@
<% end %>
</div>
<div class="welcome_left" id="welcome_left">
<% if @enterprise.nil? %>
<% if @organization.nil? %>
<% unless @first_page.nil? %>
<%= @first_page.description.html_safe %>
<% end %>
<% else %>
<span class="font_welcome_school" style="color: #E8770D"> <%= link_to @enterprise, options={:action => 'index', :enterprise => @enterprise}, html_options={ :method => 'get', :style => "color: #E8770D"} %> </span>
<span class="font_welcome_school" style="color: #E8770D"> <%= link_to @organization, options={:action => 'index', :enterprise => @organization}, html_options={ :method => 'get', :style => "color: #E8770D"} %> </span>
<br/>
<span class="font_welcome_trustie"> <%= @first_page.title %> </span>
<% end %>
@ -77,7 +77,7 @@
<div class="d-p-projectlist-box">
<ul class="d-p-projectlist">
<!-- 如果企业版参数正确,这进入企业版页面 -->
<% if @enterprise.nil? %>
<% if @organization.nil? %>
<% @projects.map do |project| %>
<%= render :partial => 'hot_projects_list', :locals => {:project => project} %>
<% end; reset_cycle %>
@ -87,9 +87,9 @@
<p id="errorExplanation"><%= l(:label_enterprise_tips) %></p>
<% @projects.map do |project| %>
<%= render :partial => 'hot_projects_list', :locals => {:project => project} %>
<% end; reset_cycle %>
<% end %>
<% elsif @e_count < 10 %>
<% @enterprise_projects.map do |project| %>
<% @organization_projects.map do |project| %>
<%= render :partial => 'hot_projects_list', :locals => {:project => project} %>
<% end %>
<p id="errorExplanation"><%= l(:label_part_enterprise_tips) %></p>
@ -100,8 +100,8 @@
<% @part_projects.map do |project| %>
<%= render :partial => 'hot_projects_list', :locals => {:project => project} %>
<% end %>
<% end; reset_cycle %>
<% end; reset_cycle %>
<% end %>
<% end %>
</ul>
</div>
</div>
@ -132,7 +132,7 @@
<span style="color: rgb(172, 174, 177)">
<%= l(:field_updated_on) %>
<%= format_time event.event_datetime %>
<%= l(:field_time_ago) %>
<%#= l(:field_time_ago) %>
</span>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
<span style="float: right; color: rgb(172, 174, 177);">
@ -161,7 +161,7 @@
<% topics = find_new_forum_topics(6) %>
<% topics.includes(:forum, :last_reply, :author).each do |topic|%>
<% cache topic do %>
<li class="message-brief-intro">
<li class="message-brief-intro" style="line-height:1.4em;">
<div class='memo_title text_nowrap'>
<%= link_to '['+topic.forum.name + ']',forum_path(topic.forum),:class => 'memo_Bar_title' %>
<%= link_to topic.subject.truncate(30, omission: '...'), topic.event_url,title: topic.subject %>

View File

@ -0,0 +1,32 @@
# Time 2015-01-30 17:04:12
# Author lizanle
# Description kaminari配置文件
# <%= paginate @users, :window => 2 %>
# 则展示页会像 5 6 7 8 9 当7是当前页的时候
# <%= paginate @users, :outer_window => 3 %>
# 分页展示会像 1 2 3 4 ...(snip)... 17 18 19 20 当总共有20个页面的时候
# <%= paginate @users, :left => 1, :right => 3 %>
# 分页展示会像 1 ...(snip)... 18 19 20 当总共有20个页面的时候
# <%= paginate @users, :param_name => :pagina %>
# 这样子会将每个链接传进去一个参数 :pagina
# <%= paginate @users, :params => {:controller => 'foo', :action => 'bar'} %>
# 这样子将会修改每个链接的控制器和动作. :controller and :action
# <%= paginate @users, :remote => true %>
# 这将会使每个链接使用ajax方式极其简单非常完美的工作。data-remote="true"
#更多知识详见 https://github.com/honwlee/kaminari
Kaminari.configure do |config|
# config.default_per_page = 25
# config.max_per_page = nil
# config.window = 4
# config.outer_window = 3
# config.left = 0
# config.right = 0
# config.page_method_name = :page
# config.param_name = :page
end

View File

@ -0,0 +1,22 @@
# Time 2015-01-30 17:02:41
# Author lizanle
# Description 打开redmine\ruby\lib\ruby\gems\1.9.1\gems\actionpack-3.2.13\lib\action_view\helpers\UrlHelper重写link_to_unless方法
# 如果是当前页则给当前页添加样式class=>'current-page'
module ActionView
# = Action View URL Helpers
module Helpers #:nodoc:
# Provides a set of methods for making links and getting URLs that
# depend on the routing subsystem (see ActionDispatch::Routing).
# This allows you to use the same format for links in views
# and controllers.
module UrlHelper
def link_to_unless(condition, name, options = {}, html_options = {}, &block)
if condition
link_to(name, options, html_options.merge(:class => 'current-page'))
else
link_to(name, options, html_options)
end
end
end
end
end

View File

@ -236,29 +236,7 @@ en:
mail_subject_wiki_content_updated: "'%{id}' wiki page has been updated"
mail_body_wiki_content_updated: "The '%{id}' wiki page has been updated by %{author}."
# 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
field_name: Name
field_description: Description
field_summary: Summary
@ -299,7 +277,6 @@ en:
field_principal: Principal
field_role: Role
field_homepage: Homepage
field_is_public: Public
field_parent: Subproject of
field_is_in_roadmap: Issues displayed in roadmap
field_login: Account/Email
@ -308,7 +285,6 @@ en:
field_last_login_on: Last connection
field_language: Language
field_effective_date: Date
field_password: Password
field_new_password: New password
field_password_confirmation: Confirmation
field_version: Version
@ -334,7 +310,6 @@ en:
field_hours: Hours
field_activity: Activity
field_spent_on: Date
field_identifier: Identifier
field_is_filter: Used as a filter
field_issue_to: Related issue
field_delay: Delay
@ -350,7 +325,6 @@ en:
field_parent_title: Parent page
field_editable: Editable
field_watcher: Watcher
field_identity_url: OpenID URL
field_content: Content
field_group_by: Group results by
field_sharing: Sharinglable_hot_course
@ -555,7 +529,6 @@ en:
label_work_description_lengthlimit: less than 500 characters
label_create_new_projects: Create a project
label_work_scores_people: The total number of users given scores
label_project_new_description: A project can be used to do anything that requires distributed collaboration
label_project_grade: Score
label_user_for_project_grade: Score
label_relation_files: Select an existing resource
@ -673,9 +646,7 @@ en:
label_information: Information
label_information_plural: Information
label_please_login: Please log in
label_register: Sign up
label_login_with_open_id_option: or login with OpenID
label_password_lost: Lost password
label_home: Home
label_my_page: My page
label_my_account: My account
@ -914,7 +885,6 @@ en:
label_end_to_end: end to end
label_start_to_start: start to start
label_start_to_end: start to end
label_stay_logged_in: Stay logged in
label_disabled: disabled
label_show_completed_versions: Show completed versions
label_me: me
@ -1048,7 +1018,6 @@ en:
label_gantt_progress_line: Progress line
label_files_filter: Files Filter
button_login: Login
button_submit: Submit
button_save: Save
button_check_all: Check all
@ -1056,7 +1025,6 @@ en:
button_collapse_all: Collapse all
button_expand_all: Expand all
button_delete: Delete
button_create: Create
button_create_and_continue: Create and continue
button_test: Test
button_edit: Edit
@ -1130,7 +1098,6 @@ en:
text_tip_issue_begin_day: issue beginning this day
text_tip_issue_end_day: issue ending this day
text_tip_issue_begin_end_day: issue beginning and ending this day
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.'
text_caracters_maximum: "%{count} characters maximum."
text_caracters_minimum: "Must be at least %{count} characters long."
text_length_between: "Length between %{min} and %{max} characters."
@ -1782,6 +1749,24 @@ en:
label_weixin: WeiXin
# Trustie账户
# edit by meng
# Trustie账户> 登陆
lable_user_name: Username
field_password: Password
field_identity_url: OpenID URL
label_stay_logged_in: Keep me signed in
label_password_lost: Forget password
button_login: Login
# Trustie账户> 注册
label_register: Sign up
# 托管平台主页
# edit by meng
# 托管平台主页> 顶部菜单
@ -1794,8 +1779,7 @@ en:
label_software_user: Users
label_requirement_enterprise: Requirements
label_stores_index: Resource search
# 托管平台主页 > 搜索提示信息
label_search_information: Please input the keywords!
# 托管平台主页 > 下拉列表
@ -1805,14 +1789,12 @@ en:
label_select_user_nickname: nickname
label_select_user_showname: name
label_select_user_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
@ -1835,8 +1817,7 @@ en:
# 项目托管平台主页 >主旨
label_project_trustie:
label_project_trustie_theme:
# 项目托管平台主页 >热门项目栏
lable_hot_projects: Hot Projects
label_project_new: New project
@ -1845,8 +1826,7 @@ en:
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: User Movements
field_user_active_published: released
@ -1865,7 +1845,7 @@ en:
field_user_active_changeset: ' repository'
field_user_active_issue_note: ' issue-note'
field_updated_on: Updated
field_updated_on: Updated on
field_time_ago: ago
field_active_reply: "Reply("
# 用户动态中event.title和event.description
@ -1873,14 +1853,31 @@ en:
# "#{o.tracker.name} ##{o.id} (#{o.status}): #{o.subject}"
# "缺陷 #1869 (已解决):subject"
# tracker.name和status在数据库中以中文字段形式存储
# 项目托管平台主页 >用户动态栏
# 项目托管平台主页 >贴吧动态栏
lable_bar_active: Bar Posts
label_my_question: My-question
label_my_feedback: My-feedback
label_more: More
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
# 项目托管平台 >加入项目
@ -1902,7 +1899,29 @@ en:
# 竞赛托管平台主页 >
# 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

View File

@ -176,16 +176,8 @@ zh:
label_refusal: 拒绝
notice_account_updated: 帐号更新成功
notice_account_invalid_creditentials: 无效的用户名或密码
notice_account_invalid_creditentials_new: 您还未到邮箱激活
notice_account_password_updated: 密码更新成功
notice_account_wrong_password: 密码错误
name_can_be_empty: 可以不填写真实姓名[保密所需]
notice_account_register_done: 帐号创建成功,请使用注册确认邮件中的链接来激活您的帐号, 如果您的邮件没有在收件箱中可能在垃圾箱中,请您注意查收。
notice_account_unknown_email: 未知用户
notice_can_t_change_password: 该帐号使用了外部认证,因此无法更改密码。
notice_account_lost_email_sent: 系统已将引导您设置新密码的邮件发送给您。
notice_account_activated: 您的帐号已被激活。
notice_successful_create: 创建成功
notice_successful_update: 更新成功
notice_successful_delete: 删除成功
@ -206,7 +198,6 @@ zh:
notice_failed_to_save_issues: "%{count} 个问题保存失败(共选择 %{total} 个问题):%{ids}."
notice_failed_to_save_members: "成员保存失败: %{errors}."
notice_no_issue_selected: "未选择任何问题!请选择您要编辑的问题。"
notice_account_pending: "您的帐号已被成功创建,正在等待管理员的审核。"
notice_default_data_loaded: 成功载入默认设置。
notice_unable_delete_version: 无法删除版本
notice_unable_delete_time_entry: 无法删除工时
@ -250,32 +241,13 @@ zh:
mail_body_wiki_content_added: "'%{id}' wiki页面已由 %{author} 添加。"
mail_subject_wiki_content_updated: "'%{id}' wiki页面已更新。"
mail_body_wiki_content_updated: "'%{id}' wiki页面已由 %{author} 更新。"
# 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: "我要回复"
# end
# modified by meng
# 课程资源上传
label_file_upload: 资源文件
label_file_upload_error_messages: "上传出现错误,请您检查您的网络环境,并刷新页面重新上传。"
button_confirm: 确认
# 教师权限课程关闭和重启
label_course_closed: 关闭
label_course_reload: 重开
label_course_closed_tips: "确定要%{desc}课程?"
# end
field_name: 名称
field_enterprise_name: 企业名
field_enterprise_name: 组织名称
#added by huang
field_tea_name: 教师
field_couurse_time: 学时
@ -284,7 +256,6 @@ zh:
field_term: 课程学期
field_course_un: 暂未填写
#end
field_description: 描述
field_summary: 摘要
field_is_required: 必填
field_firstname: 名字
@ -294,7 +265,6 @@ zh:
lastname_empty: 姓氏不能为空
enterprise_empty: 企业名不能为空
field_lastname_eg: '(例:张三丰,请填写[张])'
field_mail: 邮件地址
field_filename: 文件
field_file_dense: 是否公开
field_filesize: 大小
@ -336,15 +306,11 @@ zh:
field_open_student: 学生列表公开
field_parent: 上级项目
field_is_in_roadmap: 在路线图中显示
field_login: 登录名
field_mail_notification: 邮件通知
field_admin: 管理员
field_last_login_on: 最后登录
field_language: 语言
field_effective_date: 日期
field_password: 密码
field_new_password: 新密码
field_password_confirmation: 密码确认
field_version: 版本
field_type: 类型
field_host: 主机
@ -368,7 +334,6 @@ zh:
field_hours: 小时
field_activity: 活动
field_spent_on: 日期
field_identifier: 标识
field_is_filter: 作为过滤条件
field_issue_to: 相关问题
field_delay: 延期
@ -384,7 +349,6 @@ zh:
field_parent_title: 上级页面
field_editable: 可编辑
field_watcher: 跟踪者
field_identity_url: OpenID URL
field_content: 内容
field_group_by: 根据此条件分组
field_sharing: 共享
@ -438,9 +402,6 @@ zh:
setting_repository_log_display_limit: 在文件变更记录页面上显示的最大修订版本数量
setting_openid: 允许使用OpenID登录和注册
setting_password_min_length: 最短密码长度
setting_password_min_length_limit: "密码长度至少大于 %{count} 个字符。"
setting_password_error: 密码长度不够或密码不一致
setting_password_success: 密码设置成功
setting_new_project_user_role_id: 非管理员用户新建项目时将被赋予的(在该项目中的)角色
setting_default_projects_modules: 新建项目默认启用的模块
setting_issue_done_ratio: 计算问题完成度:
@ -570,7 +531,6 @@ zh:
label_project: 项目
label_activity_project: '项目: ' #added by bai
label_project_new_description: '项目可以是软件开发项目,也可以是协作研究项目。'
label_project_plural: 项目列表
label_first_page_made: 首页定制
label_project_first_page: 项目托管平台首页
@ -642,9 +602,7 @@ zh:
label_information: 信息
label_information_plural: 信息
label_please_login: 请登录
label_register: 注册
label_login_with_open_id_option: 或使用OpenID登录
label_password_lost: 忘记密码
label_home: 主页
label_web_title: 浏览器标题
label_site_title: 网站标题
@ -733,9 +691,6 @@ zh:
label_my_page_block: 我的工作台模块
label_administration: 管理
label_login: 登录
label_login_prompt: 邮箱/登录名
lable_user_name: 登录名
label_logout: 退出
label_help: 帮助
label_reported_issues: 已报告的问题
label_assigned_to_me_issues: 指派给我的问题
@ -958,7 +913,6 @@ zh:
label_end_to_end: 结束-结束
label_start_to_start: 开始-开始
label_start_to_end: 开始-结束
label_stay_logged_in: 保持登录状态
label_disabled: 禁用
label_show_completed_versions: 显示已完成的版本
label_me:
@ -1101,13 +1055,9 @@ zh:
label_principal_search: "搜索用户或组:"
label_user_search: "搜索用户:"
button_login: 登录
button_submit: 提交
button_save: 保存
button_check_all: 全选
button_uncheck_all: 清除
button_delete: 删除
button_create: 提交 #bai
button_create_and_continue: 创建并继续
button_test: 测试
button_edit: 编辑
@ -1176,8 +1126,6 @@ zh:
text_tip_issue_end_day: 今天结束的任务
text_tip_issue_begin_end_day: 今天开始并结束的任务
text_caracters_maximum: "最多 %{count} 个字符。"
text_caracters_minimum: "至少需要 %{count} 个字符。"
text_length_between: "长度必须在 %{min} 到 %{max} 个字符之间。"
text_command: 学生或其他成员申请加入课程时候需要使用该口令,该口令可以由老师在课堂上公布。
text_contest_reward: 选择奖励后输入描述。
text_tracker_no_workflow: 此跟踪标签未定义工作流程
@ -1650,10 +1598,6 @@ zh:
label_tags_user_mail: 用户邮箱:
label_tags_user_name: 用户名:
label_tags_numbers: Tag统计
label_mail_resend: 重新发送激活邮件
label_max_number: 登录名是在网站中显示的您的公开标识,只能为英文和数字。
label_mail_attention: qq邮箱可能收不到此邮件其他邮箱如果没有收到可能在垃圾邮件中
label_mail_attention1: 其中gmail与教育网邮箱的激活邮件有时比较慢请耐心等待。
label_your_course: 您的课程《
label_have_message : 》有新的留言
label_all_revisions: 所有版本:
@ -2003,7 +1947,6 @@ zh:
label_course_brief_introduction: 课程简介
field_teacher_name: 教 师
field_hidden_repo: 隐藏代码库
field_dts_test: DTS测试工具
label_newbie_faq: '新手指引 & 问答'
@ -2186,32 +2129,112 @@ zh:
label_current_attendingcontest_work: 最新参赛作品
label_issue_feedback_activities: 问题和反馈动态
label_more_information: 更多>>
label_my_question: 我要提问
label_my_feedback: 我要反馈
label_release_time: 发布时间
label_question_sponsor: 楼主
label_final_reply: 最后回复
label_reply: 回复
label_weixin: 微信扫码
# Trustie账户模块
# edit by meng
# Trustie账户模块> 登陆
lable_user_name: 登录名
label_login_prompt: 邮箱/登录名
field_password: 密码
field_identity_url: OpenID URL
label_stay_logged_in: 保持登录状态
label_password_lost: 忘记密码?
button_login: 登录
# account_controller中判断用户名或密码输入有误的提示信息
notice_account_invalid_creditentials: 无效的用户名或密码
# account_controller中判断未激活的提示信息
notice_account_invalid_creditentials_new: 您还未到邮箱激活
# Trustie账户模块> 注册
# 页面中密码和确认密码不一致信息正则判断邮件地址合法等信息由application_helper中error_messages_for方法来判断提示信息
# rails本身机制ActiveRecord提供
# 在model层的 validates_方法进行辅助验校
# 其输出的提示信息在国际化yml中的activerecord中配置
label_register: 注册
label_login_with_open_id_option: 或使用OpenID登录
field_login: 登录名
label_max_number: 登录名是在网站中显示的您的公开标识,只能为英文和数字。
field_password: 密码
text_caracters_minimum: "至少需要 %{count} 个字符。"
field_password_confirmation: 密码确认
field_mail: 邮件地址
label_mail_attention: qq邮箱可能收不到此邮件其他邮箱如果没有收到可能在垃圾邮件中
label_mail_attention1: 其中gmail与教育网邮箱的激活邮件有时比较慢请耐心等待。
button_submit: 提交
# register中js判断密码设置是否合法提示信息
setting_password_min_length_limit: "密码长度至少大于 %{count} 个字符。"
setting_password_error: 密码长度不够或密码不一致
setting_password_success: 密码设置成功
# account_controller中register方法判断注册成功的提示信息
notice_account_register_done: 帐号创建成功,请使用注册确认邮件中的链接来激活您的帐号, 如果您的邮件没有在收件箱中可能在垃圾箱中,请您注意查收。
# Trustie账户模块 >忘记密码
label_password_forget: 忘记密码
# field_mail: 邮件地址
# Trustie账户模块> 注册)变量
# button_submit: 提交
# Trustie账户模块> 注册 )变量
notice_account_unknown_email: 未知用户
# account_controller中lost_password方法判断的邮件发送提示信息
notice_account_lost_email_sent: 系统已将引导您设置新密码的邮件发送给您。
# Trustie账户模块 >重置密码
# label_password_forget: 忘记密码
# Trustie账户模块> 忘记密码)变量
field_new_password: 新密码
# text_caracters_minimum: "至少需要 %{count} 个字符。"
# Trustie账户模块> 注册)变量
# field_password_confirmation: 密码确认
# Trustie账户模块> 注册)变量
notice_account_password_updated: 密码更新成功
notice_can_t_change_password: 该帐号使用了外部认证,因此无法更改密码。
button_save: 保存
# Trustie账户模块 >登出
label_logout: 退出
# Trustie账户模块 >激活
label_regiter_account: 注册帐号
label_email_valid: 邮箱激活
notice_email_register_time: 请在24小时内点击邮件中的链接继续完成注册
notice_email_arrival: 邮件已发送到邮箱
label_check_email: 立即查收邮件
label_mail_resend: 重新发送激活邮件
notice_account_activated: 您的帐号已被激活。
# 托管平台主页公共组件
# 托管平台主页
# edit by meng
# 托管平台主页> 顶部菜单
# 托管平台主页> 顶部菜单>
field_homepage: 主页
label_project_deposit: 项目托管
label_course_practice: 课程实践
label_forum_all: 公共贴吧
label_school_all: 中国高校
:label_enterprise_all: 名企
label_enterprise_all: 组织
label_contest_innovate: 创新竞赛
label_software_user: 软件创客
label_requirement_enterprise: 软件众包
label_stores_index: 资源搜索
# 托管平台主页> 顶部菜单>
# 托管平台主页 > 搜索提示信息
label_search_information: 请输入要搜索的关键字
# 托管平台主页 > 下拉列表
@ -2221,14 +2244,12 @@ zh:
label_select_user_nickname: 昵称
label_select_user_showname: 姓名
label_select_user_email: 邮箱
# 托管平台主页 > 下方托管平台链接
label_projects_management_platform: 项目托管平台
label_courses_management_platform: 课程实践平台
label_contests_management_platform: 竞赛托管平台
# 托管平台主页 > 底部承办单位等信息
label_hosted_organization: 主办单位
label_hosted_by: 国防科学技术大学并行与分布处理国家重点实验室
@ -2246,13 +2267,12 @@ zh:
# 项目托管平台主页
# 项目托管平台主页 >主旨
label_project_trustie: Trustie在线项目托管平台
label_project_trustie_theme: ", 面向中国大学生与软件从业者,提供社交化的项目管理、代码托管、资源共享、合作交流。"
# 项目托管平台主页 >热门项目栏
lable_hot_projects: 热门项目
label_project_new: 新建项目
@ -2261,8 +2281,7 @@ zh:
label_project_member_amount: "%{count}人"
label_project_score_tips: 项目得分,综合考虑了项目的各项活动,反映了该项目的活跃程度
label_project_score: 项目评分
# 项目托管平台主页 >用户动态栏
lable_user_active: 用户动态
field_user_active_published: 发表了
@ -2286,24 +2305,47 @@ zh:
# 通过act_as_event方法的option配置
# "#{o.tracker.name} ##{o.id} (#{o.status}): #{o.subject}"
# "缺陷 #1869 (已解决):subject"
# tracker.name和status在数据库中以中文字段形式存储
# 而tracker.name和status在数据库中以中文字段形式存储
# 项目托管平台主页 >用户动态栏
lable_bar_active: 贴吧动态
label_my_question: 我要提问
label_my_feedback: 我要反馈
label_more: 更多>>
label_updated_time: " 更新于 %{value} 之前"
label_question_sponsor: 楼主
label_final_reply: 最后回复
# 项目托管平台 >新建项目
label_project_new_description: '项目可以是软件开发项目,也可以是协作研究项目。'
field_name: 名称
field_description: 描述
field_identifier: 标识
text_length_between: "长度必须在 %{min} 到 %{max} 个字符之间。"
text_project_identifier_info: "小写字母a-z、数字、破折号-和下划线_可以使用。<br />一旦保存,标识无法修改。"
field_is_public: 公开
field_hidden_repo: 隐藏代码库
button_create: 提交
# 课程托管平台主页
# 项目托管平台 >加入项目
# 课程托管平台
# 课程托管平台主页 >主旨
label_course_trustie: Trustie在线课程实践平台
label_course_trustie_theme: ", 面向中国高校教师与大学生,提供社交化的课程管理、资源共享、合作实验、协同研究。"
# 课程托管平台主页 >
# 竞赛托管平台主页
# 竞赛托管平台
# 竞赛托管平台主页 >主旨
label_contest_trustie: Trustie在线竞赛实战平台
label_contest_trustie_theme: ", 面向中国大学生与编程爱好者,提供社交化的竞赛管理、应用管理、代码托管、合作交流。"
@ -2313,6 +2355,30 @@ zh:
# 邮件系统
# 邮件 >激活邮件
# 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: "我要回复"
# 课程资源上传
# edit by meng
# 课程资源上传>
label_file_upload: 资源文件
label_file_upload_error_messages: "上传出现错误,请您检查您的网络环境,并刷新页面重新上传。"
button_confirm: 确认
@ -2449,11 +2515,12 @@ zh:
truncate: "..."
# 项目企业模块
label_all_enterprises: 所有企业
label_my_enterprise: 我的企业
label_enterprise_tips: 暂时还没有该企业对应的项目,系统的其它项目您可能会感兴趣!
label_part_enterprise_tips: 系统的其它项目您可能也会感兴趣!
label_enterprise_nil: 模块为最新上线模块,目前还未有项目关联到企业!
label_enterprises: 名企
label_part_enterprise_tips: 您可能对系统的其它项目会感兴趣!
label_enterprise_nil: 模块为最新上线模块,目前还未有项目关联到企业!
label_enterprises: 组织

View File

@ -26,7 +26,7 @@
# Example: :via => :get ====> :via => :get
RedmineApp::Application.routes.draw do
get "enterprises/index"
get "organizations/index"
#match '/contests/:id/contestnotifications', :controller => 'contestnotifications', :action => 'index'
@ -390,7 +390,7 @@ RedmineApp::Application.routes.draw do
match '/statistics', :to => 'projects#statistics', :as => 'statistics', :via => :get
# match '/investor', :controller => 'projects', :action => 'investor', :as => 'investor', :via => :get
match '/homework', :to => 'projects#homework', :as => 'homework', :via => :get
match 'enterprise', :to => 'enterprises#index', :as => 'index', :via => :get
match 'organizations', :to => 'organizations#index', :as => 'index', :via => :get
# match '/activity', :controller => 'activities', :action => 'index', :as => 'activity', :via => :get
# match '/repository', :controller => 'repositories', :action => 'show', :repository_id => nil, :path => nil, :rev => nil, :as => 'repository', :via => :get

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.5 KiB

View File

@ -8,6 +8,15 @@ h3, .wiki h2 {font-size: 15px; padding-left: 5px}
h4, .wiki h3 {font-size: 13px;}
h4 {border-bottom: 1px dotted #bbb;}
/*huang*/
/*企业版样式*/
.content_syqy{ width:940px; height:400px; border:1px;}
.content_syqy .list{ font-size:14px; font-weight:normal; margin-left:10px; font-weight:bold; padding-top:10px}
.syqy_box{ margin-left:-30px; margin-top:5px;}
.syqy_box ul li{ float:left; margin-right:10px; border:1px solid #e3e3e3; width:215px; height:30px; padding:5px; padding-right:0px; margin-bottom:10px; overflow:hidden; text-overflow:ellipsis;font-size:14px; color:#464646;white-space: nowrap; }
.syqy_box ul li img{ float:left; margin-right:3px; }
.syqy_box ul li a { font-size:14px; color:#464646; height:30px; padding-top:500px;}
.syqy_box ul li a:hover{color:#15bccf;}
a.syqy_wenzi{ padding-bottom:10px; border:1px solid red;}
/*current position*/
.enterprise_all{
padding-left: 20px;
@ -2926,7 +2935,7 @@ input[class~='m3p10'], .m3p10 {
.search_results {
color: red;
}
/*lizanle 分页样式*/
/*lizanle 分页样式
.pagination ul li a, .pagination ul li span{
background-color: #FFFFFF;
border-color: #DDDDDD;
@ -2950,4 +2959,5 @@ input[class~='m3p10'], .m3p10 {
margin-right: 3px;
list-style: none outside none;
}
}
*/

View File

@ -1,6 +1,7 @@
/* CSS Document */
#content{ font-size:12px !important; font-family:"微软雅黑","宋体" !important; line-height:1.9; background:#fff; font-style:normal;}
#popbox{ font-size:12px !important; font-family:"微软雅黑","宋体" !important; line-height:1.9; background:#fff; font-style:normal;}
#popbox02{ font-size:12px !important; font-family:"微软雅黑","宋体" !important; line-height:1.9; background:#fff; font-style:normal;}
div,html,img,ul,li,p,body,h1,h2,h3,h4,p,a,table,tr,td,fieldset,input,span,textarea{ margin:0; padding:0;}
div,img,tr,td,textarea{ border:0;}
table,tr,td{border:0; cellspacing:0; cellpadding:0;}

View File

@ -2259,3 +2259,16 @@ ul.messages-for-user-reply li {
.footer_text_link{
margin: 0px 5px;
}
/**kaminari 分頁當前頁樣式**/
div.pagination a.current-page {
/*color: rgb(153, 153, 153); add by huang*/
/*color:#e2f4ff;*/
cursor: default;
}
div.pagination a.current-page {
/*background-color: rgb(245, 245, 245); add by huang*/
background-color:#e2f4ff;
}
/**kaminari 分頁樣式**/