|
|
@ -1,171 +1,171 @@
|
|
|
|
<% index = 0 %>
|
|
|
|
<% index = 0 %>
|
|
|
|
<p class="second_code_1" style="background: url(<%= named_attachment_path(@images[index], @images[index].try(:filename)) %>) no-repeat top center;"></p>
|
|
|
|
<p class="second_code_1" style="background: url(<%= named_attachment_path(@images[index], @images[index].try(:filename)) %>) no-repeat top center;"></p>
|
|
|
|
<% index += 1%>
|
|
|
|
<% index += 1%>
|
|
|
|
<p class="second_code_2" style="background: url(<%= named_attachment_path(@images[index], @images[index].try(:filename)) %>) no-repeat top center;"></p>
|
|
|
|
<p class="second_code_2" style="background: url(<%= named_attachment_path(@images[index], @images[index].try(:filename)) %>) no-repeat top center;"></p>
|
|
|
|
<% index += 1 %>
|
|
|
|
<% index += 1 %>
|
|
|
|
|
|
|
|
|
|
|
|
<%
|
|
|
|
<%
|
|
|
|
challenge_description_extra = [
|
|
|
|
challenge_description_extra = [
|
|
|
|
"模拟赛选择了第一届标注大赛正式赛第一阶段的三个项目供大家体验熟悉平台、学习其他人的标注,模拟赛标注不计分。",
|
|
|
|
"模拟赛选择了第一届标注大赛正式赛第一阶段的三个项目供大家体验熟悉平台、学习其他人的标注,模拟赛标注不计分。",
|
|
|
|
"第一阶段比赛得分占正赛总比分的30%。",
|
|
|
|
"第一阶段比赛得分占正赛总比分的30%。",
|
|
|
|
"第二阶段比赛得分占正赛总比分的70%。"
|
|
|
|
"第二阶段比赛得分占正赛总比分的70%。"
|
|
|
|
]
|
|
|
|
]
|
|
|
|
data = [
|
|
|
|
data = [
|
|
|
|
[
|
|
|
|
[
|
|
|
|
{
|
|
|
|
{
|
|
|
|
name: 'Java项目',
|
|
|
|
name: 'Java项目',
|
|
|
|
description: "Weka是基于Java的机器学习与数据挖掘平台,汇集了最前沿的机器学习算法,包括处理标准数据挖掘问题的几乎所有方法:回归、分类、聚类、关联规则以及属性选择等,是Java机器学习入门的首选平台。<br/><br/>本项目的Clusters目录中包含了K-Means、层次聚类等多种聚类算法以及相应的聚类效果评估方法的java实现",
|
|
|
|
description: "Weka是基于Java的机器学习与数据挖掘平台,汇集了最前沿的机器学习算法,包括处理标准数据挖掘问题的几乎所有方法:回归、分类、聚类、关联规则以及属性选择等,是Java机器学习入门的首选平台。<br/><br/>本项目的Clusters目录中包含了K-Means、层次聚类等多种聚类算法以及相应的聚类效果评估方法的java实现",
|
|
|
|
task: '标注../weka/clusterers/目录下的所有代码文件。',
|
|
|
|
task: '标注../weka/clusterers/目录下的所有代码文件。',
|
|
|
|
link_name: 'CSDN,经典聚类算法',
|
|
|
|
link_name: 'CSDN,经典聚类算法',
|
|
|
|
link_url: 'https://blog.csdn.net/qq_30262201/article/details/78799926'
|
|
|
|
link_url: 'https://blog.csdn.net/qq_30262201/article/details/78799926'
|
|
|
|
},
|
|
|
|
},
|
|
|
|
{
|
|
|
|
{
|
|
|
|
name: 'C++项目',
|
|
|
|
name: 'C++项目',
|
|
|
|
description: "该项目是GitHub上最受欢迎的C++语言实现经典算法与数据结构的项目之一,内容涵盖排序、链表、树结构、图搜索、贪心算法等。学习这些算法的代码实现,可以深刻理解和掌握算法的核心思想,感受算法之美,代码之美,是人工智能时代的基础入门一课。<br/><br/>本项目的sort_search_problems目录涵盖了冒泡排序、快速排序等各类经典排序算法的C++实现。",
|
|
|
|
description: "该项目是GitHub上最受欢迎的C++语言实现经典算法与数据结构的项目之一,内容涵盖排序、链表、树结构、图搜索、贪心算法等。学习这些算法的代码实现,可以深刻理解和掌握算法的核心思想,感受算法之美,代码之美,是人工智能时代的基础入门一课。<br/><br/>本项目的sort_search_problems目录涵盖了冒泡排序、快速排序等各类经典排序算法的C++实现。",
|
|
|
|
task: '标注../sort_search_problems目录下的所有代码文件及对应引用的../include目录中自定义的头文件。',
|
|
|
|
task: '标注../sort_search_problems目录下的所有代码文件及对应引用的../include目录中自定义的头文件。',
|
|
|
|
link_name: 'CSDN,十大经典排序算法',
|
|
|
|
link_name: 'CSDN,十大经典排序算法',
|
|
|
|
link_url: 'https://blog.csdn.net/wfq784967698/article/details/79551476'
|
|
|
|
link_url: 'https://blog.csdn.net/wfq784967698/article/details/79551476'
|
|
|
|
},
|
|
|
|
},
|
|
|
|
{
|
|
|
|
{
|
|
|
|
name: 'Python项目',
|
|
|
|
name: 'Python项目',
|
|
|
|
description: "该项目是GitHub上最受欢迎的Python语言实现经典算法的项目之一,包含了前沿的神经网络和经典数据结构及算法的Python实现。项目具有兼顾经典和前沿的特点。学习经典算法的源码实现,感受经典算法的思想之美、代码之美。<br/><br/>本项目的Sorts目录中包含了冒泡排序、快速排序等各类经典排序算法的Python实现。",
|
|
|
|
description: "该项目是GitHub上最受欢迎的Python语言实现经典算法的项目之一,包含了前沿的神经网络和经典数据结构及算法的Python实现。项目具有兼顾经典和前沿的特点。学习经典算法的源码实现,感受经典算法的思想之美、代码之美。<br/><br/>本项目的Sorts目录中包含了冒泡排序、快速排序等各类经典排序算法的Python实现。",
|
|
|
|
task: '标注../sorts/目录下的所有代码文件。',
|
|
|
|
task: '标注../sorts/目录下的所有代码文件。',
|
|
|
|
link_name: 'CSDN,十大经典排序算法',
|
|
|
|
link_name: 'CSDN,十大经典排序算法',
|
|
|
|
link_url: 'https://blog.csdn.net/wfq784967698/article/details/79551476'
|
|
|
|
link_url: 'https://blog.csdn.net/wfq784967698/article/details/79551476'
|
|
|
|
},
|
|
|
|
},
|
|
|
|
],
|
|
|
|
],
|
|
|
|
[{
|
|
|
|
[{
|
|
|
|
name: 'Java项目',
|
|
|
|
name: 'Java项目',
|
|
|
|
description: "CoreNLP是一个Java自然语言分析库,是斯坦福大学自然语言处理小组的研究成果,它集成了所有的自然语言处理工具:分词、词性标注、依存句法分析、命名实体识别等。<br/><br/>本项目的stanford/nlp/parser/目录中包含了Lexparser、nndep以及Shiftreduce等句法分析算法的Java实现。",
|
|
|
|
description: "CoreNLP是一个Java自然语言分析库,是斯坦福大学自然语言处理小组的研究成果,它集成了所有的自然语言处理工具:分词、词性标注、依存句法分析、命名实体识别等。<br/><br/>本项目的stanford/nlp/parser/目录中包含了Lexparser、nndep以及Shiftreduce等句法分析算法的Java实现。",
|
|
|
|
task: '标注../stanford/nlp/parser/目录下的所有代码文件(包括子目录)。',
|
|
|
|
task: '标注../stanford/nlp/parser/目录下的所有代码文件(包括子目录)。',
|
|
|
|
link_name: 'CSDN, 使用Stanford Parser进行句法分析',
|
|
|
|
link_name: 'CSDN, 使用Stanford Parser进行句法分析',
|
|
|
|
link_url: 'https://blog.csdn.net/u010239102/article/details/78111760'
|
|
|
|
link_url: 'https://blog.csdn.net/u010239102/article/details/78111760'
|
|
|
|
},{
|
|
|
|
},{
|
|
|
|
name: 'C++项目',
|
|
|
|
name: 'C++项目',
|
|
|
|
description: "Sentencepiece是Google公司开发的一个C++自然语言处理工具包,它实现了数据驱动、跨语言、高性能、轻量级的面向神经网络文本生成系统的无监督文本词条化工具。<br/><br/>本项目的src/目录中包含了BPE、Unigram以及Char等文本分词算法的C++实现。",
|
|
|
|
description: "Sentencepiece是Google公司开发的一个C++自然语言处理工具包,它实现了数据驱动、跨语言、高性能、轻量级的面向神经网络文本生成系统的无监督文本词条化工具。<br/><br/>本项目的src/目录中包含了BPE、Unigram以及Char等文本分词算法的C++实现。",
|
|
|
|
task: '标注../src/目录下的所有.cc和.h代码文件(不包括子目录)。(注:其中模型训练、测试相关代码可以去掉:*_test.cc, *_trainer.cc, *_trainer.h)',
|
|
|
|
task: '标注../src/目录下的所有.cc和.h代码文件(不包括子目录)。',
|
|
|
|
link_name: 'CSDN, sentencePiece入门小结',
|
|
|
|
link_name: 'CSDN, sentencePiece入门小结',
|
|
|
|
link_url: 'https://blog.csdn.net/sinat_33455447/article/details/90265938'
|
|
|
|
link_url: 'https://blog.csdn.net/sinat_33455447/article/details/90265938'
|
|
|
|
},{
|
|
|
|
},{
|
|
|
|
name: 'Python项目',
|
|
|
|
name: 'Python项目',
|
|
|
|
description: "NLTK是宾西法尼亚大学计算机和信息科学系开发的一个Python自然语言处理工具包,它提供了易于使用的接口,通过这些接口可以访问超过50个语料库和词汇资源(如WordNet),还有一套用于分类、标记化、词干标记、解析和语义推理的文本处理库。<br/><br/>本项目的nltk/stem/目录中包含了Lancaster、Porter以及Snowball等文本分词算法的Python实现。",
|
|
|
|
description: "NLTK是宾西法尼亚大学计算机和信息科学系开发的一个Python自然语言处理工具包,它提供了易于使用的接口,通过这些接口可以访问超过50个语料库和词汇资源(如WordNet),还有一套用于分类、标记化、词干标记、解析和语义推理的文本处理库。<br/><br/>本项目的nltk/stem/目录中包含了Lancaster、Porter以及Snowball等文本分词算法的Python实现。",
|
|
|
|
task: '标注../nltk/stem/目录下的所有代码文件。',
|
|
|
|
task: '标注../nltk/stem/目录下的所有代码文件。',
|
|
|
|
link_name: 'CSDN, 英文分词的算法和原理',
|
|
|
|
link_name: 'CSDN, 英文分词的算法和原理',
|
|
|
|
link_url: 'https://blog.csdn.net/wisdom77/article/details/79446674'
|
|
|
|
link_url: 'https://blog.csdn.net/wisdom77/article/details/79446674'
|
|
|
|
}],
|
|
|
|
}],
|
|
|
|
[{
|
|
|
|
[{
|
|
|
|
name: 'Java项目',
|
|
|
|
name: 'Java项目',
|
|
|
|
description: "Deeplearning4j是Eclipse公司开发的支持各种深度学习算法的运算框架,它可以实施的技术包括受限玻尔兹曼机、深度置信网络、深度自动编码器、堆叠式降噪自动编码器、循环神经张量网络,以及word2vec、doc2vec和GloVe等。<br/><br/>本项目的nn/layers/recurrent/目录中包含了循环神经网络RNN中LSTM、Bidirectional LSTM等算法的Java实现。",
|
|
|
|
description: "Deeplearning4j是Eclipse公司开发的支持各种深度学习算法的运算框架,它可以实施的技术包括受限玻尔兹曼机、深度置信网络、深度自动编码器、堆叠式降噪自动编码器、循环神经张量网络,以及word2vec、doc2vec和GloVe等。<br/><br/>本项目的nn/layers/recurrent/目录中包含了循环神经网络RNN中LSTM、Bidirectional LSTM等算法的Java实现。",
|
|
|
|
task: '标注../nn/layers/recurrent/目录下的所有代码文件。',
|
|
|
|
task: '标注../nn/layers/recurrent/目录下的所有代码文件。',
|
|
|
|
link_name: '官方,DL4J快速入门指南',
|
|
|
|
link_name: '官方,DL4J快速入门指南',
|
|
|
|
link_url: 'https://deeplearning4j.org/cn/quickstart'
|
|
|
|
link_url: 'https://deeplearning4j.org/cn/quickstart'
|
|
|
|
},{
|
|
|
|
},{
|
|
|
|
name: 'C++项目',
|
|
|
|
name: 'C++项目',
|
|
|
|
description: "TensorFlow是谷歌人工智能团队开发的用于机器学习和深度神经网络研究的开源框架,它在图形分类、音频处理、推荐系统和自然语言处理等场景下都有丰富的应用,提供了丰富的API,包括基本的向量矩阵计算、各种优化算法、各种卷积神经网络和循环神经网络基本单元的实现、以及可视化的辅助工具等。<br/><br/>本项目的core/kernels/rnn/目录中包含了循环神经网络RNN中卷积GEMM、LSTM以及GRU算法的C++实现。",
|
|
|
|
description: "TensorFlow是谷歌人工智能团队开发的用于机器学习和深度神经网络研究的开源框架,它在图形分类、音频处理、推荐系统和自然语言处理等场景下都有丰富的应用,提供了丰富的API,包括基本的向量矩阵计算、各种优化算法、各种卷积神经网络和循环神经网络基本单元的实现、以及可视化的辅助工具等。<br/><br/>本项目的core/kernels/rnn/目录中包含了循环神经网络RNN中卷积GEMM、LSTM以及GRU算法的C++实现。",
|
|
|
|
task: '标注../core/kernels/rnn/目录下的所有代码文件。',
|
|
|
|
task: '标注../core/kernels/rnn/目录下的所有代码文件。',
|
|
|
|
link_name: 'CSDN, 深度学习之RNN(循环神经网络)',
|
|
|
|
link_name: 'CSDN, 深度学习之RNN(循环神经网络)',
|
|
|
|
link_url: 'https://blog.csdn.net/qq_32241189/article/details/80461635'
|
|
|
|
link_url: 'https://blog.csdn.net/qq_32241189/article/details/80461635'
|
|
|
|
},{
|
|
|
|
},{
|
|
|
|
name: 'Python项目',
|
|
|
|
name: 'Python项目',
|
|
|
|
description: "Keras是Google公司开发的高度模块化的神经网络学习框架,它是一个高层神经网络API,能够支持简易和快速的原型设计,支持CNN和RNN或二者的结合,且能够支持无缝CPU和GPU切换。<br/><br/>本项目的keras/layers/目录中包含了神经网络运算层中Embedding、CNN以及RNN等算法的Python实现。",
|
|
|
|
description: "Keras是Google公司开发的高度模块化的神经网络学习框架,它是一个高层神经网络API,能够支持简易和快速的原型设计,支持CNN和RNN或二者的结合,且能够支持无缝CPU和GPU切换。<br/><br/>本项目的keras/layers/目录中包含了神经网络运算层中Embedding、CNN以及RNN等算法的Python实现。",
|
|
|
|
task: '标注../keras/layers/目录下的所有代码文件。',
|
|
|
|
task: '标注../keras/layers/目录下的所有代码文件。',
|
|
|
|
link_name: '官方, Keras说明文档',
|
|
|
|
link_name: '官方, Keras说明文档',
|
|
|
|
link_url: 'https://keras.io/layers/about-keras-layers/'
|
|
|
|
link_url: 'https://keras.io/layers/about-keras-layers/'
|
|
|
|
}]
|
|
|
|
}]
|
|
|
|
]
|
|
|
|
]
|
|
|
|
%>
|
|
|
|
%>
|
|
|
|
|
|
|
|
|
|
|
|
<% @competition.competition_stages.includes(:competition_stage_sections).each_with_index do |stage, i| %>
|
|
|
|
<% @competition.competition_stages.includes(:competition_stage_sections).each_with_index do |stage, i| %>
|
|
|
|
<div class="second_code_<%= index + 1 %>" style="background: url(<%= named_attachment_path(@images[index], @images[index].try(:filename)) %>) no-repeat top center;">
|
|
|
|
<div class="second_code_<%= index + 1 %>" style="background: url(<%= named_attachment_path(@images[index], @images[index].try(:filename)) %>) no-repeat top center;">
|
|
|
|
<%
|
|
|
|
<%
|
|
|
|
first_section = stage.competition_stage_sections[0]
|
|
|
|
first_section = stage.competition_stage_sections[0]
|
|
|
|
second_section = stage.competition_stage_sections[1]
|
|
|
|
second_section = stage.competition_stage_sections[1]
|
|
|
|
%>
|
|
|
|
%>
|
|
|
|
<div class="enter_panel" style="<%= i.zero? ? "height: 1212px" : ''%>">
|
|
|
|
<div class="enter_panel" style="<%= i.zero? ? "height: 1212px" : ''%>">
|
|
|
|
<p class="challenge_title"><%= stage.name %></p>
|
|
|
|
<p class="challenge_title"><%= stage.name %></p>
|
|
|
|
<ul class="clearfix challenge_sub_title">
|
|
|
|
<ul class="clearfix challenge_sub_title">
|
|
|
|
<li class="fl">
|
|
|
|
<li class="fl">
|
|
|
|
<span class="mr20"><%= first_section.try(:name) %></span>
|
|
|
|
<span class="mr20"><%= first_section.try(:name) %></span>
|
|
|
|
<span><%= format_time first_section.start_time %> ~ <%= com_end_time first_section.end_time %></span>
|
|
|
|
<span><%= format_time first_section.start_time %> ~ <%= com_end_time first_section.end_time %></span>
|
|
|
|
</li>
|
|
|
|
</li>
|
|
|
|
<li class="fr">
|
|
|
|
<li class="fr">
|
|
|
|
<span class="mr20"><%= second_section.try(:name) %></span>
|
|
|
|
<span class="mr20"><%= second_section.try(:name) %></span>
|
|
|
|
<span><%= format_time second_section.try(:start_time) %> ~ <%= com_end_time second_section.try(:end_time) %></span>
|
|
|
|
<span><%= format_time second_section.try(:start_time) %> ~ <%= com_end_time second_section.try(:end_time) %></span>
|
|
|
|
</li>
|
|
|
|
</li>
|
|
|
|
</ul>
|
|
|
|
</ul>
|
|
|
|
<p class="break_word font-18 challenge_describe">
|
|
|
|
<p class="break_word font-18 challenge_describe">
|
|
|
|
标注说明:每个小组选择一种编程语言的题目,针对标注任务中指定的标注模块,要求对代码模块、模块中的代码文件, 以及文件中的函数必须进行标注,关键代码块、代码行及关键变量等由参赛者自由选择进行标注。 正式赛第一阶段的比赛在标注阶段就开放查看所有人的标注,请大家根据个人理解,写出自己的风格。我们将综合考虑标注的原创性、准确性、 完整性和多样性等不同的维度对标注质量进行评分。<%= challenge_description_extra[i] %>
|
|
|
|
标注说明:每个小组选择一种编程语言的题目,针对标注任务中指定的标注模块,要求对代码模块、模块中的代码文件, 以及文件中的函数必须进行标注,关键代码块、代码行及关键变量等由参赛者自由选择进行标注。 正式赛第一阶段的比赛在标注阶段就开放查看所有人的标注,请大家根据个人理解,写出自己的风格。我们将综合考虑标注的原创性、准确性、 完整性和多样性等不同的维度对标注质量进行评分。<%= challenge_description_extra[i] %>
|
|
|
|
</p>
|
|
|
|
</p>
|
|
|
|
|
|
|
|
|
|
|
|
<ul class="mt30">
|
|
|
|
<ul class="mt30">
|
|
|
|
<% first_section.competition_entries.each_with_index do |entry, j| %>
|
|
|
|
<% first_section.competition_entries.each_with_index do |entry, j| %>
|
|
|
|
<% row_data = data[i][j] %>
|
|
|
|
<% row_data = data[i][j] %>
|
|
|
|
<li class="challenge_box">
|
|
|
|
<li class="challenge_box">
|
|
|
|
<p class="challenge_b_t"><%= row_data[:name] || entry.name %></p>
|
|
|
|
<p class="challenge_b_t"><%= row_data[:name] || entry.name %></p>
|
|
|
|
<p class="enter_btn mb40 clearfix">
|
|
|
|
<p class="enter_btn mb40 clearfix">
|
|
|
|
<%
|
|
|
|
<%
|
|
|
|
is_start = Time.now > first_section.start_time
|
|
|
|
is_start = Time.now > first_section.start_time
|
|
|
|
competition_url = User.current.logged? ? "#{entry.url}?eid=#{User.current.id}" : "#{entry.url}"
|
|
|
|
competition_url = User.current.logged? ? "#{entry.url}?eid=#{User.current.id}" : "#{entry.url}"
|
|
|
|
btn_url = is_start ? "#{competition_url}" : "javascript:void(0);"
|
|
|
|
btn_url = is_start ? "#{competition_url}" : "javascript:void(0);"
|
|
|
|
%>
|
|
|
|
%>
|
|
|
|
<a class="setNewBnt <%= is_start ? 'active' : '' %>"
|
|
|
|
<a class="setNewBnt <%= is_start ? 'active' : '' %>"
|
|
|
|
href="javascript:void(0);"
|
|
|
|
href="javascript:void(0);"
|
|
|
|
data-url="<%= btn_url %>"><%= entry.name %></a>
|
|
|
|
data-url="<%= btn_url %>"><%= entry.name %></a>
|
|
|
|
</p>
|
|
|
|
</p>
|
|
|
|
|
|
|
|
|
|
|
|
<% if row_data.present? %>
|
|
|
|
<% if row_data.present? %>
|
|
|
|
<p class="challenge_b_d">项目简介</p>
|
|
|
|
<p class="challenge_b_d">项目简介</p>
|
|
|
|
<p class="break-word challenge_b_des"><%= raw row_data[:description] %></p>
|
|
|
|
<p class="break-word challenge_b_des"><%= raw row_data[:description] %></p>
|
|
|
|
<p class="challenge_b_d">标注任务</p>
|
|
|
|
<p class="challenge_b_d">标注任务</p>
|
|
|
|
<% if index ==2 %>
|
|
|
|
<% if index ==2 %>
|
|
|
|
<p class="break-word challenge_b_des" style="color: #FC2F78;min-height: 60px"><%= row_data[:task] %></p>
|
|
|
|
<p class="break-word challenge_b_des" style="color: #FC2F78;min-height: 60px"><%= row_data[:task] %></p>
|
|
|
|
<% else %>
|
|
|
|
<% else %>
|
|
|
|
<p class="break-word challenge_b_des" style="color: #FC2F78;min-height: 80px"><%= row_data[:task] %></p>
|
|
|
|
<p class="break-word challenge_b_des" style="color: #FC2F78;min-height: 80px"><%= row_data[:task] %></p>
|
|
|
|
<% end %>
|
|
|
|
<% end %>
|
|
|
|
<p class="challenge_b_d">经典算法解读:</p>
|
|
|
|
<p class="challenge_b_d">经典算法解读:</p>
|
|
|
|
<ul class="clearfix algorithm">
|
|
|
|
<ul class="clearfix algorithm">
|
|
|
|
<a href="<%= row_data[:link_url] %>" target="_blank"><%= row_data[:link_name] %></a>
|
|
|
|
<a href="<%= row_data[:link_url] %>" target="_blank"><%= row_data[:link_name] %></a>
|
|
|
|
</ul>
|
|
|
|
</ul>
|
|
|
|
<p class="enter_btn clearfix">
|
|
|
|
<p class="enter_btn clearfix">
|
|
|
|
<a href="javascript:void(0);"
|
|
|
|
<a href="javascript:void(0);"
|
|
|
|
data-url="<%= btn_url %>"
|
|
|
|
data-url="<%= btn_url %>"
|
|
|
|
class="setNewBnt <%= is_start ? 'active' : '' %>">点击进入代标注模块</a>
|
|
|
|
class="setNewBnt <%= is_start ? 'active' : '' %>">点击进入代标注模块</a>
|
|
|
|
</p>
|
|
|
|
</p>
|
|
|
|
<% end %>
|
|
|
|
<% end %>
|
|
|
|
</li>
|
|
|
|
</li>
|
|
|
|
<% end %>
|
|
|
|
<% end %>
|
|
|
|
</ul>
|
|
|
|
</ul>
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
<% index += 1 %>
|
|
|
|
<% index += 1 %>
|
|
|
|
<% end %>
|
|
|
|
<% end %>
|
|
|
|
|
|
|
|
|
|
|
|
<p class="second_code_6" style="background: url(<%= named_attachment_path(@images[index], @images[index].try(:filename)) %>) no-repeat top center;"></p>
|
|
|
|
<p class="second_code_6" style="background: url(<%= named_attachment_path(@images[index], @images[index].try(:filename)) %>) no-repeat top center;"></p>
|
|
|
|
<% index += 1 %>
|
|
|
|
<% index += 1 %>
|
|
|
|
<p class="second_code_7" style="background: url(<%= named_attachment_path(@images[index], @images[index].try(:filename)) %>) no-repeat top center;"></p>
|
|
|
|
<p class="second_code_7" style="background: url(<%= named_attachment_path(@images[index], @images[index].try(:filename)) %>) no-repeat top center;"></p>
|
|
|
|
<% index += 1 %>
|
|
|
|
<% index += 1 %>
|
|
|
|
<p class="second_code_8" style="background: url(<%= named_attachment_path(@images[index], @images[index].try(:filename)) %>) no-repeat top center;"></p>
|
|
|
|
<p class="second_code_8" style="background: url(<%= named_attachment_path(@images[index], @images[index].try(:filename)) %>) no-repeat top center;"></p>
|
|
|
|
|
|
|
|
|
|
|
|
<script>
|
|
|
|
<script>
|
|
|
|
$(function(){
|
|
|
|
$(function(){
|
|
|
|
var userLogged = <%= @user.present? && @user.logged? %>;
|
|
|
|
var userLogged = <%= @user.present? && @user.logged? %>;
|
|
|
|
var userEnrolled = <%= @enrolled %>;
|
|
|
|
var userEnrolled = <%= @enrolled %>;
|
|
|
|
|
|
|
|
|
|
|
|
$(".enter_btn .setNewBnt.active").on("click", function(){
|
|
|
|
$(".enter_btn .setNewBnt.active").on("click", function(){
|
|
|
|
var url = $(this).data("url");
|
|
|
|
var url = $(this).data("url");
|
|
|
|
|
|
|
|
|
|
|
|
if (!userLogged) {
|
|
|
|
if (!userLogged) {
|
|
|
|
location.href = "<%= signin_url(back_url: competition_path(id: params[:id])) %>";
|
|
|
|
location.href = "<%= signin_url(back_url: competition_path(id: params[:id])) %>";
|
|
|
|
return;
|
|
|
|
return;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
if (!userEnrolled) {
|
|
|
|
if (!userEnrolled) {
|
|
|
|
sure_box_redirect_without_newtab_btn("<%= enroll_competition_path(id: params[:id]) %>", "完成报名后即可参赛", "我要报名");
|
|
|
|
sure_box_redirect_without_newtab_btn("<%= enroll_competition_path(id: params[:id]) %>", "完成报名后即可参赛", "我要报名");
|
|
|
|
return;
|
|
|
|
return;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
var newTab = window.open("_blank");
|
|
|
|
var newTab = window.open("_blank");
|
|
|
|
newTab.location = url;
|
|
|
|
newTab.location = url;
|
|
|
|
})
|
|
|
|
})
|
|
|
|
})
|
|
|
|
})
|
|
|
|
</script>
|
|
|
|
</script>
|