Merge remote-tracking branch 'origin/szzh' into guange_dev

This commit is contained in:
guange 2015-04-11 10:16:02 +08:00
commit 8454e56ff4
49 changed files with 203 additions and 127 deletions

View File

@ -1,5 +1,5 @@
class CoursesController < ApplicationController
layout 'base_courses'
# layout 'base_courses'
include CoursesHelper
include ActivitiesHelper
helper :activities
@ -73,6 +73,7 @@ class CoursesController < ApplicationController
if @course.errors.full_messages.count <= 0
respond_to do |format|
format.html {
# render :layout => 'base_courses'
flash[:notice] = l(:notice_successful_update)
redirect_to settings_course_url(@course)
}
@ -82,7 +83,7 @@ class CoursesController < ApplicationController
respond_to do |format|
format.html {
settings
render :action => 'settings'
redirect_to settings_course_url(@course)
}
format.api { render_validation_errors(@course) }
end
@ -407,6 +408,10 @@ class CoursesController < ApplicationController
@roles = Role.givable.all[3..5]
@members = @course.member_principals.includes(:roles, :principal).all.sort
respond_to do |format|
format.html { render :layout => 'base_courses' }
format.api { render_validation_errors(@course) }
end
else
render_403
end
@ -424,6 +429,7 @@ class CoursesController < ApplicationController
else
respond_to do |format|
format.html {
render :layout => 'base_courses'
flash[:notice] = l(:notice_successful_create)
if params[:continue]
redirect_to new_course_url(attrs, :course => '0')
@ -738,7 +744,7 @@ class CoursesController < ApplicationController
@user = User.find_by_id(CourseInfos.find_by_course_id(@course.id).user_id)
end
sorted_events = sort_activity_events_course(events);
sorted_events = sort_activity_events_course(events)
events = paginateHelper sorted_events,10
@events_by_day = events.group_by {|event| User.current.time_to_date(event.event_datetime)}
# documents

View File

@ -20,7 +20,7 @@ module CoursesHelper
# 返回教师数量即roles表中定义的Manager
def teacherCount project
project.members.count - studentCount(project).to_i
project ? project.members.count - studentCount(project).to_i : 0
# or
# searchTeacherAndAssistant(project).count
end
@ -152,7 +152,7 @@ module CoursesHelper
# 学生人数计算
# add by nwb
def studentCount course
course.student.count.to_s#course.student.count
course ? course.student.count.to_s : 0#course.student.count
end
#课程成员数计算
@ -782,6 +782,7 @@ module CoursesHelper
end
def visable_attachemnts_incourse course
return[] unless course
result = []
course.attachments.each do |attachment|
if attachment.is_public? || User.current.member_of_course?(course) || User.current.admin?

View File

@ -278,4 +278,29 @@ module UsersHelper
end
}
end
#获取用户留言相关的连接
def user_jour_feed_back_url active
if active.act_type == "JournalsForMessage"
jour = JournalsForMessage.find active.act_id
if jour
case jour.jour_type
when "Principal"
link_to(l(:label_goto), user_newfeedback_user_path(jour.jour_id))
when "Project"
link_to(l(:label_goto), project_feedback_path(jour.jour_id))
when "Bid"
link_to(l(:label_goto), course_for_bid_path(jour.jour_id))
when "Course"
link_to(l(:label_goto), course_feedback_path(jour.jour_id))
when "Contest"
link_to(l(:label_goto), show_contest_contest_path(jour.jour_id))
when "Softapplication"
link_to(l(:label_goto), softapplication_path(jour.jour_id))
when "HomeworkAttach"
link_to(l(:label_goto), course_for_bid_path(jour.jour_id))
end
end
end
end
end

View File

@ -199,13 +199,15 @@ class UsersService
#搜索用户
def search_user params
@status = params[:status] || 1
status = params[:status] || 1
has = {
"show_changesets" => true
}
scope = User.logged.status(@status)
@search_by = params[:search_by] ? params[:search_by] : "0"
scope = scope.like(params[:name],@search_by) if params[:name].present?
scope = User.logged.status(status)
watcher = User.watched_by(params[:user_id])
watcher.push(params[:user_id])
search_by = params[:search_by] ? params[:search_by] : "0"
scope = scope.where("id not in (?)",watcher).like(params[:name],search_by) if params[:name].present?
scope
end

View File

@ -1,11 +1,11 @@
<% if @status == 0%>
alert("您申请的项目不存在");
alert("<%= l('project.join.tips.notexist') %>");
<% elsif @status == 1%>
alert("请勿重复申请加入该项目");
alert("<%= l('project.join.tips.repeat') %>");
<% elsif @status == 2%>
alert("申请成功");
alert("<%= l('project.join.tips.success') %>");
<% elsif @status == 3%>
alert("您已加入该项目");
alert("<%= l('project.join.tips.has') %>");
<%else%>
alert("申请失败");
alert("<%= l('project.join.tips.fail') %>");
<%end%>

View File

@ -38,7 +38,7 @@
<span class="add_attachment">
<%#= button_tag "浏览", :type=>"button", :onclick=>"CompatibleSend();" %>
<!--%= link_to image_tag(),"javascript:void(0)", :onclick => "_file.click()"%-->
<%= button_tag "浏览", :type=>"button", :onclick=>"_file.click()",:class =>"sub_btn",:style => ie8? ? 'display:none' : '' %>
<%= button_tag "#{l(:button_browse)}", :type=>"button", :onclick=>"_file.click()",:class =>"sub_btn",:style => ie8? ? 'display:none' : '' %>
<%= file_field_tag 'attachments[dummy][file]',
:id => '_file',
:class => 'file_selector',

View File

@ -5,7 +5,7 @@
<div class="ping_dispic">
<%= link_to image_tag(url_to_avatar(journal.user),:width => '46',:height => '46'), user_path(journal.user) %>
</div>
<div class="ping_discon" style="width: 610px;">
<div class="ping_discon upload_img" style="width: 610px;">
<div class="ping_distop">
<!-- <a style=" font-weight:bold; color:#15bccf; margin-right:30px; background:none;" target="_blank" href="#">gugu01</a> -->
<span>

View File

@ -31,7 +31,7 @@
$(function(){if($("#bid_description_<%= bid.id%>_content").height()>38){$("#bid_show_more_des_button<%= bid.id%>").show();}});
</script>
<div id="bid_description_<%= bid.id%>" class="news_description mt5">
<div id="bid_description_<%= bid.id%>_content">
<div id="bid_description_<%= bid.id%>_content" class="upload_img">
<%= bid.description.html_safe %>
</div>
</div>

View File

@ -9,12 +9,13 @@
<a class="problem_pic fl">
<%= image_tag(url_to_avatar(e.event_author), :width => "42", :height => "42") %>
</a>
<div class="problem_txt fl mt5">
<div class="problem_txt fl mt5 upload_img">
<%= link_to_user_header(e.event_author,false,:class => 'problem_name c_orange fl') if e.respond_to?(:event_author) %>
<%= link_to_user_header("(#{e.event_author})", @canShowRealName,:class => 'problem_name c_orange fl') if @canShowRealName && e.respond_to?(:event_author) %>
<span class="fl"> &nbsp;</span>
<span class="fl"> <%= l(:label_new_activity) %></span>
<%= link_to "#{eventToLanguageCourse(e.event_type, @course)} "<< format_activity_title(e.event_title), (e.event_type.eql?("attachment")&&e.container.kind_of?(Course)) ? course_files_path(e.container) : e.event_url,:class => "problem_tit c_dblue fl fb"%>
<%= link_to "#{eventToLanguageCourse(e.event_type, @course)} "<< format_activity_title(e.event_title), (e.event_type.eql?("attachment")&&e.container.kind_of?(Course)) ? course_files_path(e.container) :
(e.event_type.eql?("bid") ? homework_course_path(@course) : e.event_url),:class => "problem_tit c_dblue fl fb"%>
<br />
<p class="mt5 break_word"><%= e.event_description.html_safe %>
<br />

View File

@ -9,7 +9,7 @@
$('#ajax-modal').html('<%= escape_javascript(render :partial => 'upload_show',:locals => {:course => @course}) %>');
showModal('ajax-modal', '513px');
$('#ajax-modal').siblings().remove();
$('#ajax-modal').before("<span style='float: right;cursor:pointer;padding-left: 513px;'><a href='javascript:void(0)' onclick='closeModal()'><img src='/images/bid/close.png' width='26px' height='26px' /></a></span>")
$('#ajax-modal').before("<span style='float: right;cursor:pointer;padding-left: 513px;'><a href='javascript:void(0)' onclick='closeModal()'><img src='/images/bid/close.png' width='26px' height='26px' /></a></span>");
$('#ajax-modal').parent().css("top","").css("left","");
$('#ajax-modal').parent().addClass("popbox_polls");
}

View File

@ -46,8 +46,8 @@
</div>
<div class="cl"></div>
<div class="tag_h">
<%= render :partial => 'tags/tag_new', :locals => {:obj => file, :object_flag => "10"} %>
<%= render :partial => 'tags/tag_add', :locals => {:obj => file, :object_flag => "10"} %>
<%= render :partial => 'tags/tag_new', :locals => {:obj => file, :object_flag => "6"} %>
<%= render :partial => 'tags/tag_add', :locals => {:obj => file, :object_flag => "6"} %>
</div>
<div class="cl"></div>
</div><!---re_con_box end-->

View File

@ -16,7 +16,7 @@
</td>
</tr>
<tr>
<td style="word-break: break-all;word-wrap: break-word;">
<td style="word-break: break-all;word-wrap: break-word;" class="upload_img">
<p>
<%= textAreailizable forum.description%>
</p>

View File

@ -28,7 +28,7 @@
}
else
{
$("#homework_attach_name_span").text("填写正确");
$("#homework_attach_name_span").text("<%= l(:label_field_correct)%>");
$("#homework_attach_name_span").css('color','#008000');
return true;
}

View File

@ -173,7 +173,6 @@ function cookieget(n)
<% end %>
</div>
<div class="msgserver">
<a href="http://user.trustie.net/users/12/user_newfeedback" style="color: #15BCCF;"><%= l(:label_technical_support) %>黄井泉</a>
<a href="http://user.trustie.net/users/34/user_newfeedback" style="color: #15BCCF;"><%= l(:label_technical_support) %>白&nbsp;&nbsp;&nbsp;羽</a>
</div>
</div>

View File

@ -21,10 +21,6 @@
<% end %>
</div>
<div class="msgserver">
<a href="http://user.trustie.net/users/12/user_newfeedback" target="_blank">
<%= l(:label_technical_support) %>
黄井泉
</a>
<a href="http://user.trustie.net/users/34/user_newfeedback" target="_blank">
<%= l(:label_technical_support) %>
白&nbsp;&nbsp;&nbsp;羽

View File

@ -43,7 +43,7 @@
<%=l(:label_courses_management_platform)%>
</a>
>
<%= link_to @course.name, nil %>
<%= link_to @course.name, course_path(@course) %>
</p>
</div>
<div class="search fl">

View File

@ -53,7 +53,7 @@
<div class="sidebar-forums">
<div class="forums-line">
<div class="forums-title"><%= @forum.name %></div>
<div class="forums-description"><%= @forum.description.html_safe %></div>
<div class="forums-description upload_img"><%= @forum.description.html_safe %></div>
</div>
<!--informations-->
<div class="formus-first-title" >创建人信息</div>

View File

@ -36,6 +36,7 @@
}
.span_wping a:hover{ background-color:#03a1b3;}
.span_wping_background{background: #CCC !important;}
.font_lighter_sidebar img{max-width: 100%}
</style>
</head>
<body class="<%= h body_css_classes %>">

View File

@ -84,7 +84,7 @@
<div class="sidebar-forums">
<div class="forums-line">
<div class="forums-title"><%= @forum.name %></div>
<div class="forums-description"><%= @forum.description.html_safe %></div>
<div class="forums-description upload_img"><%= @forum.description.html_safe %></div>
</div>
<!--informations-->
<div class="formus-first-title" >创建人信息</div>

View File

@ -30,7 +30,7 @@
:class => 'talk_edit fr'
) if @message.course_destroyable_by?(User.current) %>
<div class="cl"></div>
<div class="talk_info mb10"><%= @topic.content.html_safe %></div>
<div class="talk_info mb10 upload_img"><%= @topic.content.html_safe %></div>
<div class="talk_info mb10"><%= link_to_attachments_course @topic, :author => false %></div>
<!-- <a href="#" class=" link_file ml60">附件爱覅俄方if.zip(27.5kB)</a>-->
<div class="cl"></div>
@ -54,7 +54,7 @@
<div class="ping_C mb10" id="<%= "message-#{message.id}" %>">
<div class="ping_dispic"><%= link_to image_tag(url_to_avatar(message.author), :width => '46',:height => '46'), user_path(message.author) %></div>
<div class="ping_discon">
<div class="ping_distop">
<div class="ping_distop upload_img">
<%= link_to_user_header message.author,false,:class => 'c_blue fb fl mb10 ' %>
<span class="c_grey fr"><%= format_time(message.created_on) %></span>
<div class="cl"></div>

View File

@ -44,7 +44,7 @@
<%= f.kindeditor :content, :editor_id => 'message_content_editor',
:owner_id => @message.nil? ? 0: @message.id,
:owner_type => OwnerTypeHelper::MESSAGE,
:width => '91%',
:width => '90%',
:height => 300,
:class => 'talk_text fl',
:input_html => { :id => 'message_content',

View File

@ -58,7 +58,7 @@
<div class="lz">
<div class="project_r_h">
<h2 class="project_h2"><%= h @board.name %></h2>
<h2 class="project_h2"> <%= l(:label_board_plural) %></h2>
</div>
<!-- 在这里添加赞和踩-->
<span id="praise_tread" style="float: right">

View File

@ -26,7 +26,7 @@
</p>
<% else %>
<% @newss.each do |news| %>
<div class="problem_main">
<div class="problem_main upload_img">
<%= link_to image_tag(url_to_avatar(news.author),:width => 42,:height => 42), user_path(news.author), :class => "problem_pic fl" %>
<div class="problem_txt fl mt5">
<%= link_to_user_header(news.author,false,{:class=> 'problem_name c_orange fl'}) if news.respond_to?(:author) %>
@ -43,7 +43,7 @@
<%= l(:button_more)%>...
<span class="g-arr-down"></span>
</div>
<span class="fl"><%= l(:label_end_time)%><%= format_time(news.created_on)%></span>
<span class="fl"><%= l(:label_create_time)%><%= format_time(news.created_on)%></span>
</div>
<div class="cl"></div>
</div><!--problem_main end-->

View File

@ -31,7 +31,7 @@
:onclick => '$("#edit-news").show(); return false;') if User.current.allowed_to?(:manage_news, @course) %>
<%= delete_link(news_path(@news),:class => 'talk_edit fr') if User.current.allowed_to?(:manage_news, @course) %>
<div class="cl"></div>
<div class="mb5">
<div class="mb5 upload_img">
<%= @news.description.html_safe %>
<br />
<%= l(:label_create_time) %> <%= format_time(@news.created_on) %>
@ -68,7 +68,7 @@
<div class="ping_C mb10">
<div class="ping_dispic"><%= link_to image_tag(url_to_avatar(comment.author),:width => 42,:height => 42), user_path(comment.author)%></div>
<div class="ping_discon">
<div class="ping_distop">
<div class="ping_distop upload_img">
<%= link_to_user_header(comment.author,false,:class => 'c_blue fb fl mb10 ') if comment.respond_to?(:author) %>
<span class="c_grey fr">
<%= format_time(comment.created_on) %>

View File

@ -7,7 +7,7 @@
<%= f.text_field :title, :required => true, :size => 60, :style => "width:488px;", :onkeyup => "regexTitle();" %>
</p>
<P>
<span id="title_notice_span">(60个字符以内)</span>
<span id="title_notice_span"><%= l(:label_news_title_tips)%></span>
</P>
<!-- <p style="margin-left:-10px;"><%#= f.text_area :summary, :cols => 60, :rows => 2, :style => "width:490px;margin-left:10px;" %></p> -->
<p>

View File

@ -7,20 +7,20 @@
var name = $("#news_title").val();
if(name.length ==0)
{
$("#title_notice_span").text("标题不能为空");
$("#title_notice_span").text("<%= l(:label_title_blank)%>");
$("#title_notice_span").css('color','#ff0000');
$("#title_notice_span").focus();
return false;
}
else if(name.length <= 60)
{
$("#title_notice_span").text("填写正确");
$("#title_notice_span").text("<%= l(:label_field_correct)%>");
$("#title_notice_span").css('color','#008000');
return true;
}
else
{
$("#title_notice_span").text("标题超过60个字符");
$("#title_notice_span").text("<%= l(:label_title_long)%>");
$("#title_notice_span").css('color','#ff0000');
$("#title_notice_span").focus();
return false;
@ -32,14 +32,14 @@
var name = $("#news_description").val();
if(name.length ==0)
{
$("#description_notice_span").text("描述不能为空");
$("#description_notice_span").text("<%= l(:label_descripition_blank)%>");
$("#description_notice_span").css('color','#ff0000');
$("#description_notice_span").focus();
return false;
}
else
{
$("#description_notice_span").text("填写正确");
$("#description_notice_span").text("<%= l(:label_field_correct)%>");
$("#description_notice_span").css('color','#008000');
return true;
}

View File

@ -7,20 +7,20 @@
var name = $("#news_title").val();
if(name.length ==0)
{
$("#title_notice_span").text("标题不能为空");
$("#title_notice_span").text("<%= l(:label_title_blank)%>");
$("#title_notice_span").css('color','#ff0000');
$("#title_notice_span").focus();
return false;
}
else if(name.length <= 60)
{
$("#title_notice_span").text("填写正确");
$("#title_notice_span").text("<%= l(:label_field_correct)%>");
$("#title_notice_span").css('color','#008000');
return true;
}
else
{
$("#title_notice_span").text("标题超过60个字符");
$("#title_notice_span").text("<%= l(:label_title_long)%>");
$("#title_notice_span").css('color','#ff0000');
$("#title_notice_span").focus();
return false;
@ -32,14 +32,14 @@
var name = $("#news_description").val();
if(name.length ==0)
{
$("#description_notice_span").text("描述不能为空");
$("#description_notice_span").text("<%= l(:label_descripition_blank)%>");
$("#description_notice_span").css('color','#ff0000');
$("#description_notice_span").focus();
return false;
}
else
{
$("#description_notice_span").text("填写正确");
$("#description_notice_span").text("<%= l(:label_field_correct)%>");
$("#description_notice_span").css('color','#008000');
return true;
}

View File

@ -48,7 +48,7 @@
<div class="C" >
<div class="C_top">
<h2><%= l('project.join.title')%></h2>
<p><%= l('project.join.description')%></p>
<p style="width: 385px"><%= l('project.join.description')%></p>
</div>
<div class="C_form">
<%= form_tag({:controller => 'applied_project',
@ -64,7 +64,7 @@
<input class=" width190" name="project_id" id="project_id" type="text" value="" >
<input type="text" style="display: none"/>
</li>
<li class="mB5"><%= l('project.join.id.tips')%></li>
<li class="mB5" style="width: 260px"><%= l('project.join.id.tips')%></li>
<li>
<a href="#" class="btn" style="margin-left: 50px;" onclick="submit_form(this);">
<%= l(:label_apply_project) %>

View File

@ -1,5 +1,5 @@
<div class="project_r_h">
<h2 class="project_h2">用户反馈</h2>
<h2 class="project_h2"><%= l(:label_project_tool_response)%></h2>
</div>
<% reply_allow = JournalsForMessage.create_by_user? User.current %>
<%= stylesheet_link_tag 'css', :media => 'all' %>

View File

@ -35,7 +35,7 @@
<%= link_to_user(e.user)%>
<%= l(:label_project_new) %>
<%= l(:label_active_create_project) %>
<%= link_to e.project.name %>
<strong> !</strong>
</td>

View File

@ -18,7 +18,7 @@
<% end %>
</div>
<p style=" word-wrap: break-word; word-break: break-all">
(<%= l(:label_all_revisions) %><%= @repositories.sort.collect {|repo|
(<%= l(:label_all_revisions) %><%= @repositories.sort.collect {|repo|
link_to h(repo.name),
{:controller => 'repositories', :action => 'show',
:id => @project, :repository_id => repo.identifier_param, :rev => nil, :path => nil},

View File

@ -2,13 +2,13 @@
:class => "yellowBtn f_l",
:onclick=>"$('#add_tag_#{obj.id}').slideToggle();" if User.current.logged? %> <!-- $('#put-tag-form-#{obj.class}-#{obj.id}').toggle(); readmore(this); -->
<%= form_for "tag_for_save",:remote=>true,:url => save_tag_path,
:update => "tags_show",
:complete => '$("#put-tag-form").hide();' do |f| %>
<span id="add_tag_<%= obj.id %>" style="display:none; vertical-align: middle;" class="ml10 f_l">
<%= f.text_field :name ,:id => "tags_name_#{obj.id}",:size=>"28",:require=>true,:maxlength => Setting.tags_max_length,:minlength=>Setting.tags_min_length,:class => "isTxt w90 f_l" %>
<%= f.text_field :object_id,:value=> obj.id,:style=>"display:none"%>
<%= f.text_field :object_flag,:value=> object_flag,:style=>"display:none"%>
<%= f.submit "",:class => "submit f_l" %>
</span>
<% end %>
<%= form_for "tag_for_save",:remote=>true,:url => save_tag_path,
:update => "tags_show",
:complete => '$("#put-tag-form").hide();' do |f| %>
<span id="add_tag_<%= obj.id %>" style="display:none; vertical-align: middle;" class="ml10 f_l">
<%= f.text_field :name ,:id => "tags_name_#{obj.id}",:size=>"28",:require=>true,:maxlength => Setting.tags_max_length,:minlength=>Setting.tags_min_length,:class => "isTxt w90 f_l" %>
<%= f.text_field :object_id,:value=> obj.id,:style=>"display:none"%>
<%= f.text_field :object_flag,:value=> object_flag,:style=>"display:none"%>
<%= f.submit "",:class => "submit f_l" %>
</span>
<% end %>

View File

@ -6,20 +6,16 @@ $('#tags_show_issue').html('<%= escape_javascript(render :partial => 'tags/tag_n
$('#name-issue').val("");
<% elsif @obj_flag == '6'%>
$("#tags_show-<%=@obj.class%>-<%=@obj.id%>").empty();
$("#tags_show-<%=@obj.class%>-<%=@obj.id%>").html('<%= escape_javascript(render :partial => 'tags/tag_name',
$("#tags_show-<%=@obj.class%>-<%=@obj.id%>").html('<%= escape_javascript(render :partial => 'tags/course_attachment_tag_name',
:locals => {:obj => @obj,:non_list_all => false,:object_flag => @obj_flag}) %>');
//$("#put-tag-form-<%#=@obj.class%>-<%#=@obj.id%>").hide();
$("#put-tag-form-<%=@obj.class%>-<%=@obj.id%> #name").val("");
$("#tags_name_<%=@obj.id%>").val("");
$("#add_tag_<%=@obj.id%>").hide();
<% elsif @obj_flag == '9'%>
$('#tags_show').html('<%= escape_javascript(render :partial => 'tags/new_tag_name',
:locals => {:obj => @obj,:non_list_all => false,:object_flag => @obj_flag}) %>');
$('#tags_name').val("");
<% elsif @obj_flag == '10'%>
$("#tags_show-<%=@obj.class%>-<%=@obj.id%>").empty();
$("#tags_show-<%=@obj.class%>-<%=@obj.id%>").html('<%= escape_javascript(render :partial => 'tags/course_attachment_tag_name',
:locals => {:obj => @obj,:non_list_all => false,:object_flag => @obj_flag}) %>');
//$("#put-tag-form-<%#=@obj.class%>-<%#=@obj.id%>").hide();
$("#tags_name_<%=@obj.id%>").val("");
<% else%>
$('#tags_show').html('<%= escape_javascript(render :partial => 'tags/tag_name',
:locals => {:obj => @obj,:non_list_all => false,:object_flag => @obj_flag}) %>');

View File

@ -97,13 +97,14 @@
</td>
</tr>
<tr>
<td colspan="2" width="580">
<td colspan="2" width="580" class="upload_img">
<p class="font_description">
<%= textAreailizable act.notes %>
</p>
<div style="display: inline-block; float: right; margin-top: 0px">
<span>
<%= link_to(l(:label_goto), user_newfeedback_user_path(e.user_id)) %>
<% puts 11111111111111%>
<%= user_jour_feed_back_url e %>
</span>
</div>
</td>
@ -167,7 +168,7 @@
<% end %>
</tr>
<tr>
<td colspan="2" width="580">
<td colspan="2" width="580" class="upload_img">
<p class="font_description">
<%=textAreailizable act, :description %>
</p></td>
@ -227,7 +228,7 @@
<% else %>
<% desStr= textAreailizable(act, :notes) %>
<% end %>
<td colspan="2" width="580">
<td colspan="2" width="580" class="upload_img">
<p class="font_description">
<%= desStr %>
</p>
@ -282,7 +283,7 @@
<% end %>
</tr>
<tr>
<td colspan="2" width="580">
<td colspan="2" width="580" class="upload_img">
<p class="font_description">
<%= textAreailizable act,:long_comments %>
</p>
@ -344,7 +345,7 @@
<% end %>
</tr>
<tr>
<td colspan="2" width="580">
<td colspan="2" width="580" class="upload_img">
<p class="font_description">
<%= textAreailizable(act,:content) %>
</p>
@ -385,7 +386,7 @@
<% end %>
</tr>
<tr>
<td colspan="2" width="580">
<td colspan="2" width="580" class="upload_img">
<p class="font_description"></p>
</td>
</tr>
@ -428,7 +429,7 @@
<% end %>
</tr>
<tr>
<td colspan="2" width="580">
<td colspan="2" width="580" class="upload_img">
<p class="font_description">
<%= textAreailizable act,:description %>
</p>
@ -559,7 +560,7 @@
<% end %>
</tr>
<tr>
<td colspan="2" width="580">
<td colspan="2" width="580" class="upload_img">
<p class="font_description">
<%= textAreailizable act, :description %>
</p>
@ -633,7 +634,7 @@
</td>
</tr>
<tr>
<td colspan="2" width="580">
<td colspan="2" width="580" class="upload_img">
<p class="font_description">
<%= textAreailizable e.notes %>
</p>

View File

@ -90,7 +90,7 @@ form #search_by
<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('welcome.search.information'), style:"float:left;" %>
<%= text_field_tag :q, nil, :placeholder => l('welcome.search.information'), style:"float:left; width:185px;" %>
<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('welcome.search.select.userinfo.nickname'),"0"],[l('welcome.search.select.userinfo.showname'),"1"],[l('welcome.search.select.userinfo.email'),"2"]]), :onchange => "searchByChange();",:style => "float:right" ) %>

View File

@ -180,6 +180,13 @@ en:
label_update_time: Update at
label_reply: Reply
label_field_correct: correct input
label_title_blank: Title cannot be blank!
label_title_long: The title should be less than 60 characters
label_descripition_blank: Description cannot be blank!
label_subject_empty: Subject cannot be blank!
label_anonymous: Anonymous #作业和留言 模块
@ -217,7 +224,8 @@ en:
label_preview: Preview
button_update: Update
button_copy: Copy
button_check_all: Check all
button_uncheck_all: Uncheck all
#
# Trustie上传头像模块
@ -361,8 +369,8 @@ en:
# 新闻
#
label_news: News
label_news_description: Track the latest activities of projects, and obtain the latest information
label_news_description: "Track the latest activities of projects, and obtain the latest information"
label_news_title_tips: "(less than 60 characters)"
#
# Trustie
#

View File

@ -190,6 +190,11 @@ zh:
text_are_you_sure_out: 你确定要退出该课程吗?
text_are_you_sure_out_group: 你确定要退出该分班吗?
label_field_correct: 填写正确
label_title_blank: 标题不能为空
label_title_long: 标题超过60个字符
label_descripition_blank: 描述不能为空
label_subject_empty: 主题不能为空
label_no_data: 没有任何数据可供显示
# 项目、课程、用户公用
@ -222,7 +227,10 @@ zh:
label_preview: 预览
button_update: 更新
button_copy: 复制
button_check_all: 全选
button_uncheck_all: 清除
#
# Trustie上传头像模块
#
@ -367,7 +375,9 @@ zh:
#
label_news: 新闻
label_news_description: 实时了解项目的最新动态,掌握最新项目咨询!
label_news_title_tips: (60个字符以内)
#
#
#

View File

@ -146,7 +146,7 @@ en:
field_watcher: Watcher
field_content: Content
field_group_by: Group results by
field_sharing: Sharinglable_hot_course
field_parent_issue: Parent task
field_member_of_group: "Assignee's group"
field_assigned_to_role: "Assignee's role"
@ -334,7 +334,7 @@ en:
label_contest_modify_settings: Configuration
bale_news_notice: Add a notification
label_field_correct: correct input
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
@ -749,8 +749,7 @@ en:
label_gantt_progress_line: Progress line
button_check_all: Check all
button_uncheck_all: Uncheck all
button_collapse_all: Collapse all
button_expand_all: Expand all

View File

@ -146,7 +146,6 @@ en:
label_issue_new: New issue
# 自定义查询
label_query_plural: Custom queries
label_query_new: New query
label_my_queries: My custom queries
@ -216,11 +215,14 @@ en:
label_post_by: "Started by "
label_post_by_time: "on "
label_short_reply: "RE:"
#
# 项目托管平台
#
# 资源库
# 动态
#
label_active_create_project: "created project"
#
@ -228,7 +230,7 @@ en:
#
# 版本库
#
lael_all_revisions: All revisions
label_all_revisions: "All revisions"
label_latest_revision: Latest revision
label_latest_revision_plural: Latest revisions
label_view_revisions: View revisions
@ -244,12 +246,18 @@ en:
label_issue_category_plural: Issue type
label_repository_plural: Repository
enumeration_activities: Activity type
# 项目工具
text_select_project_modules: "Select tools to enable for this project"
project_module_issue_tracking: Issue tracking
project_module_time_tracking: Time tracking
#project_module_course: 课程
project_module_boards: Forums
# 项目成员
label_approve: Approve
label_refusal: Refusal
#
# 项目托管平台
@ -302,6 +310,13 @@ en:
id:
label: "Project ID:"
tips: "Project ID is the unique number for each project"
tips:
notexist: The project does not exist
repeat: Please do not apply to join the project again
success: Application successfully
has: You has joined in the project
fail: Application failure
#
# 项目托管平台
@ -334,5 +349,5 @@ en:
#
# 项目配置
#
label_approve: Approve
label_refusal: Refusal
field_sharing: Sharinglable
label_title_code_review: Review

View File

@ -271,16 +271,16 @@ zh:
#
# 项目托管平台
#
# 资源库
# 动态
#
label_active_create_project: "创建了项目"
#
# 项目托管平台
#
# 版本库
#
label_all_revisions: "所有版本"
label_all_revisions: "所有版本"
label_latest_revision: 最近的修订版本
label_latest_revision_plural: 最近的修订版本
label_view_revisions: 查看修订
@ -289,19 +289,24 @@ zh:
# 项目托管平台
#
# 项目配置
#
#
label_module_plural: 模块
label_version_plural: 版本
label_issue_category_plural: 问题类别
label_repository_plural: 版本库
enumeration_activities: 活动(时间跟踪)
# 项目工具
text_select_project_modules: '请选择此项目可以使用的模块:'
project_module_issue_tracking: 问题跟踪
project_moule_boards_show: 项目论坛
project_module_time_tracking: 时间跟踪
project_module_course: 课程
#project_module_course: 课程
# 成员配置
label_approve: 批准
label_refusal: 拒绝
#
@ -354,8 +359,15 @@ zh:
id:
label: "项目ID"
tips: "项目ID是所在项目网址中显示的序号"
tips:
notexist: 您申请的项目不存在
repeat: 请勿重复申请加入该项目
success: 申请成功
has: 您已加入该项目
fail: 申请失败
#
# 项目托管平台
#
@ -385,5 +397,5 @@ zh:
#
# 项目配置
#
label_approve: 批准
label_refusal: 拒绝
field_sharing: 共享
label_title_code_review: 代码评审

View File

@ -24,7 +24,7 @@ en:
#
# 左边栏
#
label_user_edit: Edit
label_user_edit: Edit information
label_user_grade: Score
label_user_score: Total

View File

@ -170,7 +170,7 @@ zh:
field_content: 内容
field_group_by: 根据此条件分组
field_sharing: 共享
field_parent_issue: 父任务
field_member_of_group: 用户组的成员
@ -839,8 +839,7 @@ zh:
label_user_search: "搜索用户:"
label_mobile_version: "移动端版本管理"
button_check_all: 全选
button_uncheck_all: 清除
button_create_and_continue: 创建并继续
button_test: 测试
@ -1762,7 +1761,7 @@ zh:
label_user_login_softapplication_board: 您还没有登录,请登录后参与应用评价。
label_contest_description_no: 暂无描述。
label_no_contest_softapplication: 暂无参赛应用
label_field_correct: 填写正确
label_button_ok: 确定
label_tags_contest: 竞赛标签
label_tags_contest: 竞赛名称
@ -1890,7 +1889,7 @@ zh:
label_contest_news_condition: 竞赛描述超过5000个汉字
label_no_contest_news_title: 竞赛标题不能为空
label_contest_news_title_condition: 竞赛标题超过255个汉字
label_subject_empty: 主题不能为空
label_course_organizers: 开设单位
label_teacher_score: 教师评分
label_student_score: 学生评分

View File

@ -1,5 +1,5 @@
<div class="project_r_h">
<h2 class="project_h2">代码审查</h2>
<h2 class="project_h2"><%= l(:label_title_code_review)%></h2>
</div>
<%
# Code Review plugin for Redmine

View File

@ -15,7 +15,7 @@ function postUpMsg(attachmentId)
function reload(fileSpan) {
fileSpan.remove();
$('#upload_file_count').html("未上传文件");
$('#upload_file_count').html("<%= l(:label_no_file_uploaded)%>");
$old_file = $("#_file");
$new_file = $old_file.clone(true);
$old_file.replaceWith($new_file);
@ -37,7 +37,7 @@ function addFile(inputEl, file, eagerUpload) {
$('<span >'+$(inputEl).data('fieldIsPublic')+':</span>').attr({ 'class': 'ispublic-label' }) ,
$('<input>', { 'type': 'checkbox', 'class': 'is_public_checkbox','value':1, 'name': 'attachments[' + attachmentId + '][is_public_checkbox]', checked:'checked' } ).toggle(!eagerUpload),
$('<a>&nbsp</a>').attr({ 'href': "#", 'class': 'remove-upload' }).click(function(){
if(confirm('您确定要删除吗?')){
if(confirm($(inputEl).data('areYouSure'))){
removeFile();
if(!eagerUpload){
(function(e){
@ -107,7 +107,7 @@ function ajaxUpload(file, attachmentId, fileSpan, inputEl) {
//gcm files count and add delete_all link
var count=$('#attachments_fields>span').length;
$('#upload_file_count').html("<span id=\"count\">"+count+"</span>"+"个文件已上传");
$('#upload_file_count').html("<span id=\"count\">"+count+"</span>"+$(inputEl).data('fileCount'));
if(count>=1){
var add_attachs=$('.add_attachment');
var delete_all=$('.remove_all');
@ -141,7 +141,7 @@ function removeFile() {
//gcm delete all file
function removeAll(){
if(confirm("您确定要删除所有文件吗")){
if(confirm($(inputEl).data('deleteAllFiles'))){
$(".remove-upload").removeAttr("data-confirm");
$(".remove-upload").click();
}
@ -196,7 +196,7 @@ function addInputFiles(inputEl) {
attachmentId = addFile(inputEl, { name: aFilename[ aFilename.length - 1 ] }, false);
if (attachmentId) {
$(inputEl).attr({ name: 'attachments[' + attachmentId + '][file]'}).hide();
$('#upload_file_count').html("已上传"+"<span id=\"count\">"+1+"</span>"+"个文件");
$('#upload_file_count').html("<span id=\"count\">"+count+"</span>"+$(inputEl).data('fileCount'));
}
}

View File

@ -8,6 +8,9 @@ h3, .wiki h2 {font-size: 15px; padding-left: 5px}
h4, .wiki h3 {font-size: 13px;}
h4 {border-bottom: 1px dotted #bbb;}
/*上传图片处理*/
.upload_img img{max-width: 100%;}
/****翻页***/
ul.wlist{ float:right; border-bottom:none; height:30px; margin-top:20px; }
ul.wlist li{float: left;}

View File

@ -435,6 +435,9 @@ a.link_file_board{ background:url(../images/pic_file.png) 0 3px no-repeat !impor
#cboxNext{position:absolute; bottom:0px; left:63px; color:#444;}
#cboxClose{position:absolute; bottom:0; right:0; display:block; color:#444;}
/*上传图片处理*/
.upload_img img{max-width: 100%;}
/*
The following fixes a problem where IE7 and IE8 replace a PNG's alpha transparency with a black fill
when an alpha filter (opacity change) is set on the element or ancestor element. This style is not applied to or needed in IE9.

View File

@ -750,9 +750,9 @@ div.actions input[type="text"] {
.memo-content img, .comments img {
overflow: hidden;
/*width: 100%;*/
max-width: 500px;
max-width: 100%;
height: auto !important;
width: expression(this.width > 500 ? "500px" : this.width+"px");
/*width: expression(this.width > 500 ? "500px" : this.width+"px");*/
}
table.content-text-list tbody tr td.sticky, div.memo-section .sticky {

View File

@ -156,8 +156,8 @@ div#menu ul ul a:hover { color:#ff9900;}
div#menu ul ul li.last { margin-left:15px; }
div#menu ul ul li {width: 100%;}
/* menu::level3 */
div#menu ul ul ul {padding: 0;margin: -38px 0 0 92px !important; width:140px; }
div#menu ul ul ul li a{ width:125px; overflow:hidden; white-space: nowrap; text-overflow:ellipsis;color:#15bccf;}
div#menu ul ul ul {padding: 0;margin: -38px 0 0 92px !important; width:200px; }
div#menu ul ul ul li a{ width:185px; overflow:hidden; white-space: nowrap; text-overflow:ellipsis;color:#15bccf;}
/*主类容*/
@ -199,7 +199,7 @@ html{ overflow-x:hidden;}
.close_btn span { display:none;}
.side_center .custom_service p { text-align:center; padding:6px 0; margin:0; vertical-align:middle;}
.msgserver { margin-top:5px;}
.msgserver a { background:url(../images/sidebar_bg.png) no-repeat -119px -112px; padding-left:22px; height:21px; display:block; }
.msgserver a { background:url(../images/sidebar_bg.png) no-repeat -119px -112px; padding-left:22px; height:21px; display:block; color:#15bccf;}
.opnionText{box-shadow:none; width:122px; height:180px; border-color: #DFDFDF; background:#fff; color:#999; padding:3px; font-size:12px;overflow:auto; background-attachment:fixed;border-style:solid;}
a.opnionButton{ display:block; background:#15bccf; width:130px; height:23px; margin-top:5px; text-align:center; padding-top:3px;}
a:hover.opnionButton{background: #0fa9bb; }
@ -210,8 +210,7 @@ a:hover.opnionButton{background: #0fa9bb; }
a.close_btn {background-position:-44px 0;}
a:hover.close_btn {background-position:-66px 0;}
.show_btn {background-position:-119px 0;}
.msgserver a {color:#15bccf; }
.msgserver a:hover { text-decoration:underline; }
.msgserver a:hover { color: #0fa9bb; }
.break_word{word-break: break-all;word-wrap: break-word;}
/***** Ajax indicator ******/
#ajax-indicator {

View File

@ -451,7 +451,7 @@ a.attachments_list_color {
}
/*帖子的各种属性*/
.memo_activity .memo_attr{
margin-left: 20px;
margin-left: 2px;
}
/*帖子的时间*/
.memo_activity .memo_timestamp{