You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
436 lines
19 KiB
436 lines
19 KiB
6 years ago
|
<%
|
||
|
@nav_dispaly_contest_label = 1
|
||
|
@nav_dispaly_store_all_label = 1
|
||
|
%>
|
||
|
<%= stylesheet_link_tag 'welcome' %>
|
||
|
<style type="text/css">
|
||
|
#up_zzjs{height:100px;overflow:hidden;}
|
||
|
|
||
|
</style>
|
||
|
<script type="text/javascript" language="javascript">
|
||
|
function clearInfo(id, content) {
|
||
|
var text = $('#' + id);
|
||
|
if (text.val() == content) {
|
||
|
$('#' + id).val('');
|
||
|
}
|
||
|
}
|
||
|
|
||
|
$(function(){
|
||
|
$("#main").find("a").attr("target", "_blank");
|
||
|
setCss();
|
||
|
});
|
||
|
|
||
|
//设置div居中
|
||
|
function setCss()
|
||
|
{
|
||
|
var mainBar = $('#main-content-bar')[0];
|
||
|
var topHeight = mainBar.offsetHeight;
|
||
|
var welcomeLeft = $('#welcome_left')[0];
|
||
|
var leftHeight = welcomeLeft.offsetHeight;
|
||
|
var searchbar = $('#J_Slide')[0];
|
||
|
var searchHeight = searchbar.offsetHeight;
|
||
|
welcomeLeft.style.marginTop = (topHeight - leftHeight)/2 + "px";
|
||
|
searchbar.style.marginTop = (topHeight - searchHeight)/2 + "px";
|
||
|
//alert((topHeight - leftHeight)/2 );
|
||
|
}
|
||
|
|
||
|
function showInfo(id, content) {
|
||
|
var text = $('#' + id);
|
||
|
if (text.val() == '') {
|
||
|
$('#' + id).val(content);
|
||
|
}
|
||
|
}
|
||
|
// 给主页用户弹新页面
|
||
|
$(document).ready(function($) {
|
||
|
$("#loggedas").find("a").attr("target", "_blank");
|
||
|
//$("#content .tabs_new~ .pagination").find("a").removeAttr("target");
|
||
|
});
|
||
|
</script>
|
||
|
|
||
|
|
||
|
<script type="text/javascript">
|
||
|
(function (){
|
||
|
window.onload = function(){
|
||
|
function fixedBar(id, options){
|
||
|
var ele = document.getElementById(id);
|
||
|
if(!ele) return;
|
||
|
if(/msie (\d+\.\d+)/i.test(navigator.userAgent)){
|
||
|
var pageHeight=window.innerHeight;
|
||
|
var d=document;
|
||
|
if(typeof pageHeight!="number"){
|
||
|
if(document.compatMode=="CSS1Compat"){
|
||
|
pageHeight=document.documentElement.clientHeight;
|
||
|
}else{
|
||
|
pageHeight=document.body.clientHeight;
|
||
|
}
|
||
|
}
|
||
|
var ieScrollTop=window.pageYOffset || d.documentElement.scrollTop || d.body.scrollTop;
|
||
|
if(options.addclass) ele.className = options.addclass;
|
||
|
ele.style.position= 'absolute';
|
||
|
|
||
|
if(options.show){
|
||
|
ele.style.top = 0 + "px";
|
||
|
ele.style.display= 'block';
|
||
|
}
|
||
|
|
||
|
window.attachEvent('onscroll' , function (){
|
||
|
|
||
|
var ieScrollTop=window.pageYOffset || d.documentElement.scrollTop || d.body.scrollTop;
|
||
|
|
||
|
ele.style.top = 0 + "px";
|
||
|
if(options.autoHidden){
|
||
|
if(ieScrollTop==0){
|
||
|
ele.style.display="none";
|
||
|
}else{
|
||
|
ele.style.display="block";
|
||
|
}
|
||
|
}
|
||
|
});
|
||
|
}else{
|
||
|
var ele = document.getElementById(id);
|
||
|
if(typeof pageHeight!="number"){
|
||
|
if(document.compatMode=="CSS1Compat"){
|
||
|
pageHeight=document.documentElement.clientHeight;
|
||
|
}else{
|
||
|
pageHeight=document.body.clientHeight;
|
||
|
}
|
||
|
}
|
||
|
if(options.show) ele.style.display= 'block';
|
||
|
ele.style.top = 0 +'px';
|
||
|
window.addEventListener('scroll',function (){
|
||
|
if(options.autoHidden){
|
||
|
if(baidu.page.getScrollTop()==0){
|
||
|
ele.style.display="none";
|
||
|
}else{
|
||
|
ele.style.display="block";
|
||
|
}
|
||
|
}
|
||
|
},false);
|
||
|
}
|
||
|
}
|
||
|
|
||
|
fixedBar('backTopBtn' , {autoHidden: true, top : 186});
|
||
|
fixedBar('identifier-pannel' , {autoHidden: false , top : 956 , show : true});
|
||
|
//修改微信扫码样式布局后添加微信扫码跟随滚动处理
|
||
|
$(window).scroll(function(){
|
||
|
var vtop=$(document).scrollTop();
|
||
|
$("#identifier-pannel").css('top',vtop+"px");
|
||
|
})
|
||
|
}
|
||
|
})();
|
||
|
</script>
|
||
|
<div>
|
||
|
<div class='top_bar'>
|
||
|
<%#= render partial: 'wei_xin' %>
|
||
|
<div class="main-content-bar" id="main-content-bar">
|
||
|
<!--文字-->
|
||
|
<div style="float: left;padding-left:15px;">
|
||
|
<% if get_avatar?(@contest_page) %>
|
||
|
<%= image_tag(url_to_avatar(@contest_page), width:@contest_page.image_width,height: @contest_page.image_height) %>
|
||
|
<% else %>
|
||
|
<%= image_tag '/images/transparent.png', width:@contest_page.image_width,height: @contest_page.image_height %>
|
||
|
<% end %>
|
||
|
</div>
|
||
|
<div class="welcome_left" id="welcome_left">
|
||
|
<% unless @contest_page.nil? %>
|
||
|
<span class="font_welcome_trustie">
|
||
|
<!--
|
||
|
edit by meng
|
||
|
@@contest_page.title存储在first_page表中的title字段
|
||
|
原本代码
|
||
|
<%= @contest_page.title %>
|
||
|
!-->
|
||
|
<%= l(:label_welcome_trustie_contest) %>
|
||
|
</span>
|
||
|
<span class="font_welcome_tdescription">,
|
||
|
<!--
|
||
|
edit by meng
|
||
|
@course_page.description存储在first_page表中的description字段
|
||
|
原本代码
|
||
|
<%= @contest_page.description %>
|
||
|
!-->
|
||
|
<%= l(:label_welcome_trustie_contest_description) %>
|
||
|
</span>
|
||
|
<% end %>
|
||
|
</div>
|
||
|
|
||
|
<!--搜索框-->
|
||
|
<div id="J_Slide" class="d-p-index-box d-p-index-hotproject" style="float: right;">
|
||
|
<%= form_tag({controller: :welcome, action: :search }, method: :get) do %>
|
||
|
<%= text_field_tag 'name', params[:name], :placeholder => l('welcome.search.information'), name: "name", :class => 'blueinputbar', :style => 'width:240px; padding-right:50px;'%>
|
||
|
|
||
|
<%= hidden_field_tag 'project_type', params[:project_type] %>
|
||
|
<%= submit_tag l(:label_search), :class => "enterprise", :name => "contests_search" %>
|
||
|
<% end %>
|
||
|
<!-- <div class='font_lighter' style="display: inline-block; margin-top:3px;">竞赛相关内容搜索,如竞赛题目,参赛题目,参赛人名等。</div> -->
|
||
|
</div>
|
||
|
<div style="clear: both;"></div>
|
||
|
</div>
|
||
|
</div>
|
||
|
|
||
|
<div style="clear:both"></div>
|
||
|
|
||
|
<div id="J_Slide" class="d-p-index-box d-p-index-left" >
|
||
|
<h3 style="margin-left: 5px; color: #e8770d;">
|
||
|
<strong>
|
||
|
<%=l(:label_current_hot_contest)%>
|
||
|
</strong>
|
||
|
</h3>
|
||
|
<span style="margin-top: -20px;float: right; display: block;">
|
||
|
<% if User.current.logged? %>
|
||
|
<%# unless User.current.user_extensions.identity == 1 %>
|
||
|
<%= link_to(l(:label_newtype_contest), new_contest_contests_path, :class => 'icon icon-add') %>
|
||
|
<%# end %>
|
||
|
<% end %>
|
||
|
</span>
|
||
|
<div class="d-p-projectlist-box">
|
||
|
<div class="d-p-projectlist">
|
||
|
<% find_all_hot_contest.map do |contest| break if(contest == find_all_hot_contest[5]) %>
|
||
|
<li style="overflow:auto;word-break:break-all;height:100%;word-wrap: break-word;" class='<%= cycle("odd", "even") %>'>
|
||
|
<div class="avatar-4" style="float: left; margin-top: 7px">
|
||
|
<%= image_tag('/images/contest1.png')%>
|
||
|
</div>
|
||
|
<div style="float: left; margin-left: 12px; margin-top: 10px; margin-bottom: -4px; width: 380px;">
|
||
|
<%= link_to(contest.name.truncate(50, omission: '...'), contest_contestnotifications_path(contest.id), :class => "d-g-blue d-p-project-name", :title => "#{contest.name}", :target => "_blank") %>
|
||
|
<% if contest.id == 2 or contest.id == 3 or contest.id == 6 %>
|
||
|
<span class="font_lighter">(
|
||
|
<span style="font-size: 13px">
|
||
|
<%= link_to("#{contest.projects.where('is_public=1').count}"+l(:label_work_quantity), show_attendingcontest_contest_path(contest), :target => "_blank") %>
|
||
|
</span>)
|
||
|
</span>
|
||
|
<% else %>
|
||
|
<span class="font_lighter">(
|
||
|
<span style="font-size: 13px">
|
||
|
<%= link_to("#{contest.contesting_softapplications.count}"+l(:label_work_quantity), show_attendingcontest_contest_path(contest), :target => "_blank") %>
|
||
|
</span>)
|
||
|
</span>
|
||
|
<% end %>
|
||
|
</div>
|
||
|
|
||
|
<div style="float: left;margin:5px; margin-left: 12px; margin-bottom: 2px; width: 380px;" class="text_nowrap">
|
||
|
<span class='font_lighter' title ='<%=contest.description%>'>
|
||
|
<%=contest.description.truncate(100, omission: '...')%>
|
||
|
</span>
|
||
|
</div>
|
||
|
<br />
|
||
|
|
||
|
<div style="padding-left: 57px; clear: left;">
|
||
|
<span class="font_lighter"><%=l(:label_release_time)%>: <%=format_time contest.created_on %></span>
|
||
|
</div>
|
||
|
</li>
|
||
|
<% end; reset_cycle %>
|
||
|
</div>
|
||
|
</div>
|
||
|
</div>
|
||
|
|
||
|
|
||
|
<div id="J_Slide" class="d-p-index-box d-p-index-Dynamic">
|
||
|
<h3 style="margin-left: 5px; color: #e8770d;">
|
||
|
<strong>
|
||
|
<%=l(:label_notification)%>
|
||
|
</strong>
|
||
|
</h3>
|
||
|
|
||
|
<ul class="contest-notification-list">
|
||
|
<% @contest_notifications.each do |notification| %>
|
||
|
<li>
|
||
|
<div class="inner-right" style="float: left; margin-top: 7px ">
|
||
|
<%= link_to image_tag(url_to_avatar(notification.author), :class => "avatar"), user_path(notification.author) %>
|
||
|
</div>
|
||
|
<div class="font_lighter" style="padding-top: 7px;padding-left: 55px;" title="<%= notification.title%>">
|
||
|
<span>
|
||
|
<strong>
|
||
|
<%= link_to_user(notification.author) %>
|
||
|
</strong>
|
||
|
<%= l(:label_project_notice) %>
|
||
|
<%= link_to notification.title.truncate(35, omission: '...'), contest_contestnotifications_path(notification.contest_id) %>
|
||
|
</span>
|
||
|
</div>
|
||
|
<div class="font_lighter" style="padding-left: 55px;" title="<%= notification.description%>">
|
||
|
<%= notification.description.truncate(30, omission: '...') %></div>
|
||
|
<div class="font_lighter" style="padding-left: 55px;">
|
||
|
<%=l(:label_release_time)%>:
|
||
|
<%=format_time notification.created_at %>
|
||
|
</div>
|
||
|
</li>
|
||
|
<% end %>
|
||
|
</ul>
|
||
|
</div>
|
||
|
<% if @contest_notifications.count < 5%>
|
||
|
<div id="J_Slide" class="d-p-index-box d-p-index-Dynamic">
|
||
|
<h3 style="margin-left: 5px; color: #e8770d;">
|
||
|
<strong><%=l(:label_issue_feedback_activities)%></strong>
|
||
|
<%= link_to l(:label_my_question), newbie_send_path, {:class => 'orangeButton idea_btn', :style => "color: #EEEEEE" }%>
|
||
|
<%= link_to l(:label_my_feedback), suggestion_send_path, {:class => 'orangeButton idea_btn', :style => "color: #EEEEEE" }%>
|
||
|
</h3>
|
||
|
<span style="margin-top: -20px;float: right; display: block;"><%= link_to l(:label_more_information), forums_path %></span>
|
||
|
<div class="d-p-projectlist-box">
|
||
|
<ul class="d-p-projectlist">
|
||
|
<% find_new_forum_topics(9 - @contest_notifications.count).each do |topic|%>
|
||
|
<li class="message-brief-intro" style="height: auto; line-height:2em; padding-bottom: 1px; border-bottom: 1px dashed ">
|
||
|
<div style="display: inline-block; width: 100%;">
|
||
|
<span class="memo_activity text_nowrap" style="color:gray; display: inline-block; margin-bottom:6px; background: url('/images/list-icon.png') no-repeat scroll ;background-position: left center;">
|
||
|
<%= link_to '['+topic.forum.name + ']',forum_path(topic.forum),:class => 'memo_Bar_title' %>
|
||
|
<%= link_to topic.subject.truncate(30, omission: '...'), topic.event_url, :class => "gray" , :style => "font-size: 10pt !important;" %>
|
||
|
</span>
|
||
|
<div class='memo_activity memo_attr'>
|
||
|
<span class='memo_timestamp'>
|
||
|
<%= "#{l(:label_updated_time, value: time_tag_welcome(topic_last_time topic))}".html_safe %>
|
||
|
</span>
|
||
|
<span class="memo_author">
|
||
|
<%=l(:label_question_sponsor)%> <%= link_to topic.author.login.truncate(10, omission: '...'),user_path(topic.author),title: topic.author.login %>
|
||
|
</span>
|
||
|
<span class="memo_last_person">
|
||
|
<% unless (topic.last_reply.nil? || topic.last_reply.author.nil?) %>
|
||
|
<%=l(:label_final_reply)%>
|
||
|
<%=link_to topic.last_reply.author.login.truncate(10, omission: '...'),user_path(topic.last_reply.author),title: topic.last_reply.author.login%>
|
||
|
<% end %>
|
||
|
</span>
|
||
|
<span class="memo_reply">
|
||
|
<%=l(:label_reply)%>
|
||
|
(<%= link_to topic.try(:replies_count), topic.event_url %>)
|
||
|
</span>
|
||
|
</div>
|
||
|
</div>
|
||
|
</li>
|
||
|
<% end %>
|
||
|
</ul>
|
||
|
</div>
|
||
|
</div>
|
||
|
|
||
|
|
||
|
<div id="J_Slide" class="d-p-index-box d-p-index-left">
|
||
|
<h3 style="margin-left: 5px; color: #e8770d;"><strong><%=l(:label_current_attendingcontest_work)%></strong></h3>
|
||
|
<div class="d-p-projectlist-box">
|
||
|
<% if Softapplication.count > 0%>
|
||
|
<div class="d-p-projectlist">
|
||
|
<% find_all_hot_softapplication.map do |softapplication| break if(softapplication == find_all_hot_softapplication[5]) %>
|
||
|
|
||
|
<li style="position:relative;height:6em;" class='<%= cycle("odd", "even") %>'>
|
||
|
<div class="avatar-4" style="float: left; margin-top: 7px">
|
||
|
<%= image_tag('/images/app1.png')%>
|
||
|
</div>
|
||
|
<div style="float: left; margin-left: 10px; margin-top: 7px;margin-bottom: -2px; width: 380px;">
|
||
|
<%= link_to(softapplication.name, softapplication_path(softapplication.id), :class => "d-g-blue d-p-project-name", :title => "#{softapplication.name}", :target => "_blank") %>
|
||
|
</div>
|
||
|
|
||
|
<div class='text_nowrap' style="float: left;margin:5px; margin-left: 10px; margin-bottom:1px; width: 380px;">
|
||
|
<span class='font_lighter' title =<%=softapplication.description.to_s%>>
|
||
|
<%=softapplication.description.to_s.truncate(50, omission: '...')%>
|
||
|
</span>
|
||
|
</div><br />
|
||
|
|
||
|
<div style="padding-left: 55px; clear: left;">
|
||
|
<span class="font_lighter">
|
||
|
<%=l(:label_release_time)%>:
|
||
|
<%=format_time softapplication.created_at %>
|
||
|
</span>
|
||
|
</div>
|
||
|
|
||
|
</li>
|
||
|
<% end; reset_cycle %>
|
||
|
|
||
|
</div>
|
||
|
<% else %>
|
||
|
<p class="font_lighter">
|
||
|
<%= l(:label_no_ftapplication) %>
|
||
|
</p>
|
||
|
<% end %>
|
||
|
</div>
|
||
|
</div>
|
||
|
<% else %>
|
||
|
<div id="J_Slide" class="d-p-index-box d-p-index-left">
|
||
|
<h3 style="margin-left: 5px; color: #e8770d;"><strong><%=l(:label_current_attendingcontest_work)%></strong></h3>
|
||
|
<div class="d-p-projectlist-box">
|
||
|
<% if Softapplication.count > 0%>
|
||
|
<div class="d-p-projectlist">
|
||
|
<% find_all_hot_softapplication.map do |softapplication| break if(softapplication == find_all_hot_softapplication[5]) %>
|
||
|
|
||
|
<li style="position:relative;height:6em;" class='<%= cycle("odd", "even") %>'>
|
||
|
<div class="avatar-4" style="float: left; margin-top: 7px">
|
||
|
<%= image_tag('/images/app1.png')%>
|
||
|
</div>
|
||
|
<div style="float: left; margin-left: 10px; margin-top: 7px;margin-bottom: -2px; width: 380px;">
|
||
|
<%= link_to(softapplication.name, softapplication_path(softapplication.id), :class => "d-g-blue d-p-project-name", :title => "#{softapplication.name}", :target => "_blank") %>
|
||
|
</div>
|
||
|
|
||
|
<div class='text_nowrap' style="float: left;margin:5px; margin-left: 10px; margin-bottom:1px; width: 380px;">
|
||
|
<span class='font_lighter' title =<%=softapplication.description.to_s%>>
|
||
|
<%=softapplication.description.to_s.truncate(50, omission: '...')%>
|
||
|
</span>
|
||
|
</div><br />
|
||
|
|
||
|
<div style="padding-left: 55px; clear: left;">
|
||
|
<span class="font_lighter">
|
||
|
<%=l(:label_release_time)%>:
|
||
|
<%=format_time softapplication.created_at %>
|
||
|
</span>
|
||
|
</div>
|
||
|
|
||
|
</li>
|
||
|
<% end; reset_cycle %>
|
||
|
|
||
|
</div>
|
||
|
<% else %>
|
||
|
<p class="font_lighter">
|
||
|
<%= l(:label_no_ftapplication) %>
|
||
|
</p>
|
||
|
<% end %>
|
||
|
</div>
|
||
|
</div>
|
||
|
|
||
|
|
||
|
|
||
|
<div id="J_Slide" class="d-p-index-box d-p-index-Dynamic">
|
||
|
<h3 style="margin-left: 5px; color: #e8770d;">
|
||
|
<strong><%=l(:label_issue_feedback_activities)%></strong>
|
||
|
<%= link_to l(:label_my_question), newbie_send_path, {:class => 'orangeButton idea_btn', :style => "color: #EEEEEE" }%>
|
||
|
<%= link_to l(:label_my_feedback), suggestion_send_path, {:class => 'orangeButton idea_btn', :style => "color: #EEEEEE" }%>
|
||
|
</h3>
|
||
|
<span style="margin-top: -20px;float: right; display: block;"><%= link_to l(:label_more_information), forums_path %></span>
|
||
|
<div class="d-p-projectlist-box">
|
||
|
<ul class="d-p-projectlist">
|
||
|
<% find_new_forum_topics(9 - @contest_notifications.count).each do |topic|%>
|
||
|
<li class="message-brief-intro" style="height: auto; line-height:2em; padding-bottom: 1px; border-bottom: 1px dashed ">
|
||
|
<div style="display: inline-block; width: 100%;">
|
||
|
<span class="memo_activity text_nowrap" style="color:gray; display: inline-block; margin-bottom:6px; background: url('/images/list-icon.png') no-repeat scroll ;background-position: left center;">
|
||
|
<%= link_to '['+topic.forum.name + ']',forum_path(topic.forum),:class => 'memo_Bar_title' %>
|
||
|
<%= link_to topic.subject.truncate(30, omission: '...'), topic.event_url, :class => "gray" , :style => "font-size: 10pt !important;" %>
|
||
|
</span>
|
||
|
<div class='memo_activity memo_attr'>
|
||
|
<span class='memo_timestamp'>
|
||
|
<%= "#{l(:label_updated_time, value: time_tag_welcome(topic_last_time topic))}".html_safe %>
|
||
|
</span>
|
||
|
<span class="memo_author">
|
||
|
<%=l(:label_question_sponsor)%> <%= link_to topic.author.login.truncate(10, omission: '...'),user_path(topic.author),title: topic.author.login %>
|
||
|
</span>
|
||
|
<span class="memo_last_person">
|
||
|
<% unless (topic.last_reply.nil? || topic.last_reply.author.nil?) %>
|
||
|
<%=l(:label_final_reply)%>
|
||
|
<%=link_to topic.last_reply.author.login.truncate(10, omission: '...'),user_path(topic.last_reply.author),title: topic.last_reply.author.login%>
|
||
|
<% end %>
|
||
|
</span>
|
||
|
<span class="memo_reply">
|
||
|
<%=l(:label_reply)%>
|
||
|
(<%= link_to topic.try(:replies_count), topic.event_url %>)
|
||
|
</span>
|
||
|
</div>
|
||
|
</div>
|
||
|
</li>
|
||
|
<% end %>
|
||
|
</ul>
|
||
|
</div>
|
||
|
</div>
|
||
|
<% end%>
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
<div class="clearfix"></div>
|
||
|
</div>
|
||
|
<%= render partial: 'link_to_another' %>
|
||
|
|
||
|
|
||
|
|