forked from jacknudt/trustieforge
Merge branch 'develop' of 10.0.47.245:/home/trustie2 into develop
This commit is contained in:
commit
cda9942723
|
@ -66,6 +66,8 @@ class OpenSourceProjectsController < ApplicationController
|
|||
order(sort_clause).
|
||||
all
|
||||
|
||||
@bugs = @open_source_project.bugs.limit(6)
|
||||
|
||||
respond_to do |format|
|
||||
format.html {
|
||||
render :layout => "base_opensource_p"
|
||||
|
|
|
@ -473,7 +473,7 @@ module ApplicationHelper
|
|||
end
|
||||
|
||||
def user_url_and_time(user_name, user_url, created)
|
||||
unless user_name.nil?
|
||||
unless user_name.nil? || user_name == ''
|
||||
l(:label_added_time_by, :author => link_to(user_name, user_url), :age => time_tag(created)).html_safe
|
||||
else
|
||||
l(:label_added_time, :age => time_tag(created)).html_safe
|
||||
|
|
|
@ -38,4 +38,12 @@ module OpenSourceProjectsHelper
|
|||
def show_origin(url)
|
||||
|
||||
end
|
||||
|
||||
def show_description(bug, open_source_project)
|
||||
description = BugToOsp.where("osp_id = ? and relative_memo_id = ?", open_source_project.id, bug.id).first.description
|
||||
if description.nil? || description == ''
|
||||
description = open_source_project.name + l(:label_bug)
|
||||
end
|
||||
description
|
||||
end
|
||||
end
|
||||
|
|
|
@ -0,0 +1,8 @@
|
|||
class BugToOsp < ActiveRecord::Base
|
||||
# attr_accessible :title, :body
|
||||
belongs_to :open_source_project, :foreign_key => "osp_id"
|
||||
belongs_to :bug, :class_name => 'RelativeMemo', :foreign_key => "relative_memo_id"
|
||||
|
||||
validates_presence_of :osp_id, :relative_memo_id
|
||||
|
||||
end
|
|
@ -14,6 +14,10 @@ class OpenSourceProject < ActiveRecord::Base
|
|||
has_many :apply_tips, :class_name => 'ApplyProjectMaster', :as => :apply, :dependent => :delete_all, :conditions => "#{ApplyProjectMaster.table_name}.status = 1"
|
||||
has_many :applicants, :class_name => 'User', :through => :apply_tips, :source => :user
|
||||
|
||||
has_many :bugs_to_osp, :class_name => 'BugToOsp', :foreign_key => 'osp_id', :dependent => :destroy
|
||||
has_many :bugs, :through => :bugs_to_osp, :class_name => "RelativeMemo", :order => "#{RelativeMemo.table_name}.created_at DESC"
|
||||
|
||||
|
||||
validates_uniqueness_of :name
|
||||
|
||||
acts_as_taggable
|
||||
|
|
|
@ -11,6 +11,9 @@ class RelativeMemo < ActiveRecord::Base
|
|||
|
||||
has_many :no_uses, :as => :no_use, :dependent => :delete_all
|
||||
|
||||
has_many :bugs_to_osp, :class_name => 'BugToOsp', :foreign_key => 'relative_memo_id', :dependent => :destroy
|
||||
|
||||
|
||||
acts_as_taggable
|
||||
|
||||
validates_presence_of :subject
|
||||
|
|
|
@ -14,7 +14,12 @@
|
|||
<td>
|
||||
<table width="630px" border="0">
|
||||
<tr>
|
||||
<td valign="top" width="500px" class="<%= topic.sticky ? 'sticky' : '' %> <%= topic.locked? ? 'locked' : '' %>"><%= link_to h(topic.subject), open_source_project_relative_memo_path(open_source_project, topic) %></td>
|
||||
<td valign="top" width="500px" class="<%= topic.sticky ? 'sticky' : '' %> <%= topic.locked? ? 'locked' : '' %>">
|
||||
<% if topic.url.nil? || topic.url == '' %>
|
||||
<%= link_to h(topic.subject), open_source_project_relative_memo_path(open_source_project, topic) %>
|
||||
<% else %>
|
||||
<%= link_to h(topic.subject), topic.url %>
|
||||
<% end %></td>
|
||||
<td align="right" rowspan="3">
|
||||
<table class="borad-count">
|
||||
<tr>
|
||||
|
@ -48,11 +53,11 @@
|
|||
<tr>
|
||||
<td colspan="2" ><span class="font_description"> </span></td>
|
||||
</tr>
|
||||
<!-- <tr>
|
||||
<td align="left" colspan="2" ><span class="font_lighter"><%#= authoring topic.created_at, topic.author %>
|
||||
<tr>
|
||||
<td align="left" colspan="2" ><span class="font_lighter"><%= user_url_and_time topic.username, topic.userhomeurl, topic.created_at %>
|
||||
<br />
|
||||
</span></td>
|
||||
</tr> -->
|
||||
</tr>
|
||||
<tr>
|
||||
<td align="left" colspan="2" >帖子来源:<span class="font_lighter" style="color: #068d9c"><%=link_to 'OSChina', topic.url %>
|
||||
</span></td>
|
||||
|
|
|
@ -24,25 +24,29 @@
|
|||
<div class="fixed"></div>
|
||||
<div class="li_list" style="margin-top:10px;margin-left:10px">
|
||||
<ul style="list-style-type: square;">
|
||||
<% @bugs.each do |bug| %>
|
||||
<li><span class="li_time">>[<%= show_description(bug, open_source_project) %>]</span><%= link_to bug.subject, bug.url %></li>
|
||||
<% end %>
|
||||
|
||||
<!-- <li><span class="li_time">>[DDoS漏洞]</span><a href="/vuldb/ssvid-62261" title="Cobbler 2.4.x - 2.6.x 本地文件包含">Cobbler 2.4.x - 2.6.x 本地文件包含</a></li> -->
|
||||
|
||||
<li><span class="li_time">>[OpenSSL漏洞]</span><a href="/vuldb/ssvid-62260" title="Ruby OpenSSL CA私钥伪造漏洞">Ruby OpenSSL CA私钥伪造漏洞</a></li>
|
||||
<!-- <li><span class="li_time">>[OpenSSL漏洞]</span><a href="/vuldb/ssvid-62260" title="Ruby OpenSSL CA私钥伪造漏洞">Ruby OpenSSL CA私钥伪造漏洞</a></li> -->
|
||||
|
||||
<li><span class="li_time">>[远程溢出漏洞]</span><a href="/vuldb/ssvid-62259" title="Adobe Flash Player 整数堆栈下溢远程命令执行">Adobe Flash Player 远程命令执行</a></li>
|
||||
<!-- <li><span class="li_time">>[远程溢出漏洞]</span><a href="/vuldb/ssvid-62259" title="Adobe Flash Player 整数堆栈下溢远程命令执行">Adobe Flash Player 远程命令执行</a></li> -->
|
||||
|
||||
<!-- <li><span class="li_time">14-05-07</span><a href="/vuldb/ssvid-62258" title="PHPDISK phpdisk_del_process.php SQL注入漏洞">PHPDISK phpdisk_del_process.php SQL注入漏洞</a></li> -->
|
||||
|
||||
<!-- <li><span class="li_time">[OpenSSL漏洞]</span><a href="/vuldb/ssvid-62257" title="BEESCMS 3.4 order_save.php SQL注入漏洞">BEESCMS 3.4 order_save.php SQL注入漏洞</a></li> -->
|
||||
|
||||
<!-- <li ><span class="li_time">>[SQL注入漏洞]</span><a href="/vuldb/ssvid-62256" title="Apache/NGINX 下 PHP-FPM 或者 PHP-CGI 拒绝服务漏洞">Apache/NGINX 下 PHP-FPM </a></li> -->
|
||||
<!-- <li ><span class="li_time">>[SQL注入漏洞]</span><a href="/vuldb/ssvid-62256" title="Apache/NGINX 下 PHP-FPM 或者 PHP-CGI 拒绝服务漏洞">Apache/NGINX 下 PHP-FPM </a></li> -->
|
||||
|
||||
<li><span class="li_time">>[SQL注入漏洞]</span><a href="/vuldb/ssvid-62250" title="AlienVault OSSIM SQL注入以及远程代码执行">AlienVault OSSIM SQL注入</a></li>
|
||||
<!-- <li><span class="li_time">>[SQL注入漏洞]</span><a href="/vuldb/ssvid-62250" title="AlienVault OSSIM SQL注入以及远程代码执行">AlienVault OSSIM SQL注入</a></li> -->
|
||||
|
||||
<li><span class="li_time">>[DDoS漏洞]</span><a href="/vuldb/ssvid-62248" title="Eucalyptus Web Services拒绝服务漏洞">Eucalyptus Web Services</a></li>
|
||||
<!-- <li><span class="li_time">>[DDoS漏洞]</span><a href="/vuldb/ssvid-62248" title="Eucalyptus Web Services拒绝服务漏洞">Eucalyptus Web Services</a></li> -->
|
||||
|
||||
<li ><span class="li_time">>[OpenSSL漏洞]</span><a href="/vuldb/ssvid-62245" title="Watchguard Fireware XTM OpenSSL TLS心跳信息泄漏漏洞"> Fireware XTM OpenSSL TLS</a></li>
|
||||
<!-- <li ><span class="li_time">>[OpenSSL漏洞]</span><a href="/vuldb/ssvid-62245" title="Watchguard Fireware XTM OpenSSL TLS心跳信息泄漏漏洞"> Fireware XTM OpenSSL TLS</a></li> -->
|
||||
|
||||
<li ><span class="li_time">>[OpenSSL漏洞]</span><a href="/vuldb/ssvid-62244" title="SAP Sybase SQL Anywhere OpenSSL TLS泄漏漏洞">Sybase SQL Anywhere OpenSSL TLS</a></li>
|
||||
<!-- <li ><span class="li_time">>[OpenSSL漏洞]</span><a href="/vuldb/ssvid-62244" title="SAP Sybase SQL Anywhere OpenSSL TLS泄漏漏洞">Sybase SQL Anywhere OpenSSL TLS</a></li> -->
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
|
@ -52,14 +56,16 @@
|
|||
<script type="text/javascript">
|
||||
$(function(){
|
||||
var flow=[];
|
||||
for(var i=0;i<35;i++){
|
||||
for(var i=0;i<24+5;i++){
|
||||
flow.push(Math.floor(Math.random()*(30+((i%12)*5)))+10);
|
||||
// t.push(Math.floor(Math.random()*(30+((i%12)*5)))+10);
|
||||
}
|
||||
|
||||
|
||||
|
||||
var data = [
|
||||
{
|
||||
name : 'commit',
|
||||
name :'',
|
||||
value:flow,
|
||||
color:'#0d8ecf',
|
||||
line_width:2
|
||||
|
@ -67,7 +73,14 @@
|
|||
|
||||
];
|
||||
|
||||
var labels = ["","2010","2011","2012","2013","2014"];
|
||||
//创建x轴标签文本
|
||||
var date = new Date()
|
||||
|
||||
var labels = [];
|
||||
/* labels.push(date.getFullYear()-2);
|
||||
labels.push(date.getFullYear()-1);
|
||||
labels.push(date.getFullYear());*/
|
||||
labels=["2012","","","","","","","","","","","","2013","","","","","","","","","","","","2014","","","",""];
|
||||
|
||||
var line = new iChart.LineBasic2D({
|
||||
render : 'canvasDiv',
|
||||
|
@ -109,9 +122,30 @@
|
|||
width:2,
|
||||
color:'#3f8695'
|
||||
},
|
||||
},
|
||||
listeners:{
|
||||
//tip:提示框对象、name:数据名称、value:数据值、text:当前文本、i:数据点的索引
|
||||
parseText:function(tip,name,value,text,i){
|
||||
return name+"漏洞数:"+value;
|
||||
}
|
||||
} ,
|
||||
|
||||
// legend : {
|
||||
},
|
||||
tipMocker:function(tips,i){
|
||||
var index;
|
||||
if (Math.floor(i/12)==0) {
|
||||
index=0;
|
||||
}else if (Math.floor(i/12)==1) {
|
||||
index=12;
|
||||
}else{
|
||||
index=24;
|
||||
};
|
||||
return "<div style='font-weight:400'>"+
|
||||
labels[index]+" "+//日期
|
||||
((i%12)==0?"1 月":((i%12+1))+"月")+ //时间
|
||||
"</div>"+tips.join("<br/>");
|
||||
},
|
||||
|
||||
// legend : {
|
||||
// enable : true,
|
||||
// row:1,//设置在一行上显示,与column配合使用
|
||||
// column : 'max',
|
||||
|
@ -226,7 +260,7 @@
|
|||
|
||||
<!-- <li><span class="li_time">[OpenSSL漏洞]</span><a href="/vuldb/ssvid-62257" title="BEESCMS 3.4 order_save.php SQL注入漏洞">BEESCMS 3.4 order_save.php SQL注入漏洞</a></li> -->
|
||||
|
||||
<!-- <li ><span class="li_time">>[SQL注入漏洞]</span><a href="/vuldb/ssvid-62256" title="Apache/NGINX 下 PHP-FPM 或者 PHP-CGI 拒绝服务漏洞">Apache/NGINX 下 PHP-FPM </a></li> -->
|
||||
<li ><span class="li_time">>[SQL注入漏洞]</span><a href="/vuldb/ssvid-62256" title="Apache/NGINX 下 PHP-FPM 或者 PHP-CGI 拒绝服务漏洞">Apache/NGINX 下 PHP-FPM </a></li>
|
||||
|
||||
<li><span class="li_time">>[SQL注入漏洞]</span><a href="/vuldb/ssvid-62250" title="AlienVault OSSIM SQL注入以及远程代码执行">AlienVault OSSIM SQL注入</a></li>
|
||||
|
||||
|
@ -243,14 +277,17 @@
|
|||
<script type="text/javascript">
|
||||
$(function(){
|
||||
var flow=[];
|
||||
for(var i=0;i<35;i++){
|
||||
for(var i=0;i<24+5;i++){
|
||||
flow.push(Math.floor(Math.random()*(30+((i%12)*5)))+10);
|
||||
// t.push(Math.floor(Math.random()*(30+((i%12)*5)))+10);
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
var data = [
|
||||
{
|
||||
name : 'commit',
|
||||
name : '',
|
||||
value:flow,
|
||||
color:'#0d8ecf',
|
||||
line_width:2
|
||||
|
@ -258,7 +295,17 @@
|
|||
|
||||
];
|
||||
|
||||
var labels = ["","2010","2011","2012","2013","2014"];
|
||||
//创建x轴标签文本
|
||||
var date = new Date()
|
||||
|
||||
var labels = [];
|
||||
/* labels.push(date.getFullYear()-2);
|
||||
labels.push(date.getFullYear()-1);
|
||||
labels.push(date.getFullYear());
|
||||
labels.push(date.getFullYear()+1);*/
|
||||
|
||||
labels=["2012","","","","","","","","","","","","2013","","","","","","","","","","","","2014","","","",""];
|
||||
|
||||
|
||||
var line = new iChart.LineBasic2D({
|
||||
render : 'canvasDiv2',
|
||||
|
@ -300,7 +347,29 @@
|
|||
width:2,
|
||||
color:'#3f8695'
|
||||
},
|
||||
listeners:{
|
||||
//tip:提示框对象、name:数据名称、value:数据值、text:当前文本、i:数据点的索引
|
||||
parseText:function(tip,name,value,text,i){
|
||||
return name+"帖子数:"+value+"万";
|
||||
}
|
||||
} ,
|
||||
},
|
||||
|
||||
tipMocker:function(tips,i){
|
||||
var index;
|
||||
if (Math.floor(i/12)==0) {
|
||||
index=0;
|
||||
}else if (Math.floor(i/12)==1) {
|
||||
index=12;
|
||||
}else{
|
||||
index=24;
|
||||
};
|
||||
return "<div style='font-weight:400'>"+
|
||||
labels[index]+" "+//日期
|
||||
((i%12)==0?"1 月":((i%12+1))+"月")+ //时间
|
||||
"</div>"+tips.join("<br/>");
|
||||
},
|
||||
|
||||
crosshair:{
|
||||
enable:true, //十字交叉线
|
||||
line_color:'#62bce9'
|
||||
|
@ -352,7 +421,7 @@
|
|||
</script>
|
||||
<!--我是分割线2===================================================================================================!-->
|
||||
<div class="borad-topic-count" style="margin-top:10px">
|
||||
<!-- 共有 <%= link_to memos.count %> 个贴子 -->
|
||||
<!-- 共有 <%#= link_to memos.count %> 个贴子 -->
|
||||
<span><h1 style="color:#7591cc;font-weight:900">全球热帖</h1></span>
|
||||
<span style="margin-top: -30px; margin-right:70px;float: right; display: block;"><%= link_to "更多>>", :controller => "open_source_projects",:action => "showmemo", :id => @open_source_project.id %></span>
|
||||
</div>
|
||||
|
@ -366,7 +435,7 @@
|
|||
<td>
|
||||
<table width="630px" border="0">
|
||||
<tr>
|
||||
<td valign="top" width="500px" class="<%= topic.sticky ? 'sticky' : '' %> <%= topic.locked? ? 'locked' : '' %>"><%= link_to h(topic.subject), open_source_project_relative_memo_path(open_source_project, topic) %></td>
|
||||
<td valign="top" width="500px" class="<%= topic.sticky ? 'sticky' : '' %> <%= topic.locked? ? 'locked' : '' %>"><%= link_to h(topic.subject), topic.url %></td>
|
||||
<td align="right" rowspan="3">
|
||||
<table class="borad-count">
|
||||
<tr>
|
||||
|
|
|
@ -148,7 +148,7 @@ li {
|
|||
<div class="col2">
|
||||
<div> <span> <h1 style="fontsize:19px">软件安全漏洞 </h1></span><span style="margin-top: -30px; margin-right:70px;float: right; display: block;"><a href="#" hover="text-decoration: underline;" >More >></span></a></div>
|
||||
<div class="fixed"></div>
|
||||
<div class="li_list" style="margin-top:10px;margin-left:10px">
|
||||
<div id ="buglist" class="li_list" style="margin-top:10px;margin-left:10px">
|
||||
<ul style="list-style-type: square;">
|
||||
<li><span class="li_time">[DDoS漏洞]</span><a href="/vuldb/ssvid-62261" title="Cobbler 2.4.x - 2.6.x 本地文件包含">Cobbler 2.4.x - 2.6.x 本地文件包含</a></li>
|
||||
|
||||
|
@ -178,14 +178,14 @@ li {
|
|||
<script type="text/javascript">
|
||||
$(function(){
|
||||
var flow=[];
|
||||
for(var i=0;i<35;i++){
|
||||
for(var i=0;i<24+5;i++){
|
||||
flow.push(Math.floor(Math.random()*(30+((i%12)*5)))+10);
|
||||
// t.push(Math.floor(Math.random()*(30+((i%12)*5)))+10);
|
||||
}
|
||||
|
||||
var data = [
|
||||
{
|
||||
name : 'commit',
|
||||
name : '',
|
||||
value:flow,
|
||||
color:'#0d8ecf',
|
||||
line_width:2
|
||||
|
@ -193,7 +193,17 @@ li {
|
|||
|
||||
];
|
||||
|
||||
var labels = ["","2010","2011","2012","2013","2014"];
|
||||
//创建x轴标签文本
|
||||
var date = new Date()
|
||||
|
||||
var labels = [];
|
||||
/* labels.push(date.getFullYear()-2);
|
||||
labels.push(date.getFullYear()-1);
|
||||
labels.push(date.getFullYear());*/
|
||||
|
||||
labels=["2012","","","","","","","","","","","","2013","","","","","","","","","","","","2014","","","",""];
|
||||
|
||||
//var labels = ["","2010","2011","2012","2013","2014"];
|
||||
|
||||
var line = new iChart.LineBasic2D({
|
||||
render : 'canvasDiv',
|
||||
|
@ -221,7 +231,28 @@ li {
|
|||
width:2,
|
||||
color:'#3f8695'
|
||||
},
|
||||
listeners:{
|
||||
//tip:提示框对象、name:数据名称、value:数据值、text:当前文本、i:数据点的索引
|
||||
parseText:function(tip,name,value,text,i){
|
||||
return name+"漏洞数:"+value;
|
||||
}
|
||||
} ,
|
||||
},
|
||||
tipMocker:function(tips,i){
|
||||
var index;
|
||||
if (Math.floor(i/12)==0) {
|
||||
index=0;
|
||||
}else if (Math.floor(i/12)==1) {
|
||||
index=12;
|
||||
}else{
|
||||
index=24;
|
||||
};
|
||||
return "<div style='font-weight:400'>"+
|
||||
labels[index]+" "+//日期
|
||||
((i%12)==0?"1 月":((i%12+1))+"月")+ //时间
|
||||
"</div>"+tips.join("<br/>");
|
||||
},
|
||||
|
||||
|
||||
legend : {
|
||||
enable : true,
|
||||
|
|
|
@ -1916,4 +1916,5 @@ zh:
|
|||
|
||||
# ajax异步验证
|
||||
modal_valid_passing: 可以使用
|
||||
label_bug: 漏洞
|
||||
|
|
@ -0,0 +1,5 @@
|
|||
class AddTopicResourceToRelativeMemo < ActiveRecord::Migration
|
||||
def change
|
||||
add_column :relative_memos, :topic_resource, :string
|
||||
end
|
||||
end
|
|
@ -0,0 +1,10 @@
|
|||
class CreateBugToOsps < ActiveRecord::Migration
|
||||
def change
|
||||
create_table :bug_to_osps do |t|
|
||||
t.integer :osp_id
|
||||
t.integer :relative_memo_id
|
||||
t.string :description
|
||||
t.timestamps
|
||||
end
|
||||
end
|
||||
end
|
12
db/schema.rb
12
db/schema.rb
|
@ -11,7 +11,7 @@
|
|||
#
|
||||
# It's strongly recommended to check this file into your version control system.
|
||||
|
||||
ActiveRecord::Schema.define(:version => 20140519074133) do
|
||||
ActiveRecord::Schema.define(:version => 20140522025721) do
|
||||
|
||||
create_table "activities", :force => true do |t|
|
||||
t.integer "act_id", :null => false
|
||||
|
@ -121,6 +121,14 @@ ActiveRecord::Schema.define(:version => 20140519074133) do
|
|||
add_index "boards", ["last_message_id"], :name => "index_boards_on_last_message_id"
|
||||
add_index "boards", ["project_id"], :name => "boards_project_id"
|
||||
|
||||
create_table "bug_to_osps", :force => true do |t|
|
||||
t.integer "osp_id"
|
||||
t.integer "relative_memo_id"
|
||||
t.string "description"
|
||||
t.datetime "created_at", :null => false
|
||||
t.datetime "updated_at", :null => false
|
||||
end
|
||||
|
||||
create_table "changes", :force => true do |t|
|
||||
t.integer "changeset_id", :null => false
|
||||
t.string "action", :limit => 1, :default => "", :null => false
|
||||
|
@ -699,6 +707,7 @@ ActiveRecord::Schema.define(:version => 20140519074133) do
|
|||
t.string "username"
|
||||
t.string "userhomeurl"
|
||||
t.date "date_collected"
|
||||
t.string "topic_resource"
|
||||
end
|
||||
|
||||
create_table "repositories", :force => true do |t|
|
||||
|
@ -787,6 +796,7 @@ ActiveRecord::Schema.define(:version => 20140519074133) do
|
|||
t.integer "softapplication_id"
|
||||
t.integer "is_public"
|
||||
t.string "application_developers"
|
||||
t.string "deposit_project_url"
|
||||
t.string "deposit_project"
|
||||
end
|
||||
|
||||
|
|
|
@ -1,582 +1,15 @@
|
|||
@charset utf-8;
|
||||
|
||||
|
||||
a {
|
||||
cursor:pointer;
|
||||
}
|
||||
|
||||
a:link {
|
||||
color:#105DB5;
|
||||
text-decoration:none;
|
||||
}
|
||||
|
||||
h3 {
|
||||
font-size:16px;
|
||||
}
|
||||
|
||||
button {
|
||||
border:1px solid #ccc;
|
||||
border-radius:4px;
|
||||
font-size:14px;
|
||||
font-weight:700;
|
||||
margin:5px 0;
|
||||
padding:5px 18px 6px;
|
||||
}
|
||||
|
||||
pre {
|
||||
white-space:0;
|
||||
word-wrap:break-word;
|
||||
}
|
||||
|
||||
/*#main {
|
||||
text-align:left;
|
||||
width:870px;
|
||||
background:#FFF;
|
||||
margin:auto;
|
||||
}
|
||||
|
||||
#content {
|
||||
background:#FFF;
|
||||
width:94%;
|
||||
float:left;
|
||||
padding-top:45px;
|
||||
margin:5px 25px;
|
||||
}*/
|
||||
|
||||
|
||||
|
||||
|
||||
.li_list {
|
||||
clear:both;
|
||||
padding:0 0 0 0px;
|
||||
}
|
||||
|
||||
.li_more {
|
||||
text-align:right;
|
||||
clear:both;
|
||||
margin:5px 0;
|
||||
padding:0 0 1px;
|
||||
}
|
||||
|
||||
.li_time {
|
||||
padding:0 7px 0 0;
|
||||
}
|
||||
|
||||
div.pages {
|
||||
color:#AAA;
|
||||
font-size:13px;
|
||||
text-align:right;
|
||||
margin:10px 0;
|
||||
}
|
||||
|
||||
div.pages a,.thispage,.break {
|
||||
margin:2px;
|
||||
padding:0 4px;
|
||||
}
|
||||
|
||||
div.pages .prev {
|
||||
margin-right:5px;
|
||||
}
|
||||
|
||||
div.pages .next {
|
||||
margin-left:5px;
|
||||
}
|
||||
|
||||
div.pages .thispage {
|
||||
background:none repeat scroll 0 0 #4D5256;
|
||||
color:#FFF;
|
||||
}
|
||||
|
||||
|
||||
|
||||
.clearfix:after {
|
||||
clear:both;
|
||||
content:" ";
|
||||
display:block;
|
||||
height:0;
|
||||
line-height:0;
|
||||
visibility:hidden;
|
||||
}
|
||||
|
||||
.searchform .searchinput {
|
||||
background:none repeat scroll 0 0 #FFF;
|
||||
border:medium none;
|
||||
float:left;
|
||||
font-family:Arial,sans-serif;
|
||||
font-size:13px;
|
||||
width:72px;
|
||||
margin:0;
|
||||
padding:0;
|
||||
}
|
||||
|
||||
.searchform .searchinput:focus {
|
||||
width:196px;
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
.article_title {
|
||||
font-weight:700;
|
||||
border-bottom:1px solid #CCC;
|
||||
margin-bottom:5px;
|
||||
padding:5px 0 10px;
|
||||
}
|
||||
|
||||
.vuln {
|
||||
font-weight:700;
|
||||
border-bottom:medium none!important;
|
||||
padding:3px 0;
|
||||
}
|
||||
|
||||
.article {
|
||||
padding:5px 0 5px 12px;
|
||||
}
|
||||
|
||||
.at_hr {
|
||||
font-weight:700;
|
||||
border-left:7px solid #778087;
|
||||
border-bottom:medium none!important;
|
||||
margin:9px 0;
|
||||
padding:5px;
|
||||
}
|
||||
|
||||
.article_exp {
|
||||
padding:0 0 0 20px;
|
||||
}
|
||||
|
||||
.sh_reference {
|
||||
padding:0 0 0 15px;
|
||||
}
|
||||
|
||||
.sh_reference blockquote {
|
||||
padding:5px 18px;
|
||||
}
|
||||
|
||||
.Statement {
|
||||
color:red;
|
||||
}
|
||||
|
||||
.cell {
|
||||
border-bottom:1px dashed #E0E0E0;
|
||||
line-height:18px;
|
||||
list-style:none;
|
||||
padding:9px 0 9px 15px;
|
||||
}
|
||||
|
||||
.fade {
|
||||
color:#999;
|
||||
font-size:14px;
|
||||
font-weight:700;
|
||||
vertical-align:middle;
|
||||
}
|
||||
|
||||
.created {
|
||||
color:#999;
|
||||
display:block;
|
||||
font-size:11px;
|
||||
}
|
||||
|
||||
.ntitle {
|
||||
font-size:22px;
|
||||
font-weight:700;
|
||||
border-bottom:1px dashed #ECECEC;
|
||||
padding:5px 15px;
|
||||
}
|
||||
|
||||
.nutime {
|
||||
color:#999;
|
||||
font-size:12px;
|
||||
padding:5px 15px;
|
||||
}
|
||||
|
||||
.notags {
|
||||
font-size:11px;
|
||||
text-align:right;
|
||||
margin-top:-24px;
|
||||
padding:5px 15px;
|
||||
}
|
||||
|
||||
.notags a {
|
||||
background:none repeat scroll 0 0 #778087;
|
||||
border-radius:10px;
|
||||
color:#FFF;
|
||||
margin-bottom:5px;
|
||||
padding:2px 10px;
|
||||
}
|
||||
|
||||
.notags a:hover {
|
||||
background:none repeat scroll 0 0 #4D5256;
|
||||
color:white;
|
||||
text-decoration:none;
|
||||
}
|
||||
|
||||
.node_dir_list {
|
||||
width:570px;
|
||||
float:left;
|
||||
overflow:hidden;
|
||||
border-right:1px dashed #E2E2E2;
|
||||
}
|
||||
|
||||
.node_dir_side {
|
||||
float:right;
|
||||
width:220px;
|
||||
overflow:hidden;
|
||||
margin:0;
|
||||
padding:0 15px 0 10px;
|
||||
}
|
||||
|
||||
.node_list ul {
|
||||
clear:both;
|
||||
padding:0 30px;
|
||||
}
|
||||
|
||||
.node_list li {
|
||||
clear:both;
|
||||
height:38px;
|
||||
list-style-type:square;
|
||||
font-size:15px;
|
||||
padding:3px;
|
||||
}
|
||||
|
||||
|
||||
|
||||
.return_te {
|
||||
text-align:right;
|
||||
font-size:12px;
|
||||
vertical-align:bottom;
|
||||
margin-bottom:-15px;
|
||||
padding-right:15px;
|
||||
}
|
||||
|
||||
.editor {
|
||||
width:600px;
|
||||
overflow:hidden;
|
||||
font-size:12px;
|
||||
}
|
||||
|
||||
.editor .tools {
|
||||
height:20px;
|
||||
line-height:20px;
|
||||
padding:0;
|
||||
}
|
||||
|
||||
.editor .tools a {
|
||||
margin-right:15px;
|
||||
text-decoration:none;
|
||||
overflow:hidden;
|
||||
}
|
||||
|
||||
.editor .Container {
|
||||
display:none;
|
||||
position:absolute;
|
||||
float:left;
|
||||
z-index:1000;
|
||||
width:330px;
|
||||
height:95px;
|
||||
border:1px solid #BBB;
|
||||
background:#FFF;
|
||||
overflow:hidden;
|
||||
cursor:default;
|
||||
padding:5px 0 10px 10px;
|
||||
}
|
||||
|
||||
.editor .imgIframe {
|
||||
border:0;
|
||||
width:100%;
|
||||
height:22px;
|
||||
margin:0;
|
||||
padding:0;
|
||||
}
|
||||
|
||||
.editor .Button {
|
||||
text-align:center;
|
||||
margin:0;
|
||||
padding:5px 0;
|
||||
}
|
||||
|
||||
.editor #attinfoDiv {
|
||||
padding-top:5px;
|
||||
color:#000;
|
||||
}
|
||||
|
||||
.Button input {
|
||||
margin-right:5px;
|
||||
font-size:12px;
|
||||
}
|
||||
|
||||
.editor input {
|
||||
margin-right:5px;
|
||||
font-size:11px;
|
||||
}
|
||||
|
||||
.na_list {
|
||||
clear:both;
|
||||
padding:15px 0 0 62px;
|
||||
}
|
||||
|
||||
.return_Nadir {
|
||||
font-weight:700;
|
||||
font-size:20px;
|
||||
padding:0 0 15px;
|
||||
}
|
||||
|
||||
.return_Nav {
|
||||
padding-left:10px;
|
||||
align:left;
|
||||
font-weight:700;
|
||||
font-size:15px;
|
||||
}
|
||||
|
||||
.return_Nav a {
|
||||
padding:0 .5px;
|
||||
}
|
||||
|
||||
.applists {
|
||||
width:100%;
|
||||
list-style-type:none;
|
||||
float:left;
|
||||
border-top:1px dashed #E0E0E0;
|
||||
padding:40px 0 10px;
|
||||
}
|
||||
|
||||
.applists ul {
|
||||
list-style-type:none;
|
||||
width:98%;
|
||||
list-style-position:outside;
|
||||
float:left;
|
||||
margin:5px 5px 10px 25px;
|
||||
padding:0;
|
||||
}
|
||||
|
||||
.applists ul li {
|
||||
width:25%;
|
||||
display:inline;
|
||||
float:left;
|
||||
line-height:24px;
|
||||
margin:0;
|
||||
}
|
||||
|
||||
.return_top {
|
||||
text-align:right;
|
||||
font-size:10px;
|
||||
vertical-align:bottom;
|
||||
margin-top:-15px;
|
||||
padding-right:30px;
|
||||
}
|
||||
|
||||
.return_top a {
|
||||
color:#999;
|
||||
text-decoration:none;
|
||||
}
|
||||
|
||||
.return_en {
|
||||
vertical-align:top;
|
||||
align:left;
|
||||
font-weight:900;
|
||||
font-size:22px;
|
||||
color:#666;
|
||||
}
|
||||
|
||||
.maintinfo {
|
||||
width:820px;
|
||||
background-color:#E9EEF2;
|
||||
border-radius:5px;
|
||||
float:left;
|
||||
font-size:14px;
|
||||
height:90px;
|
||||
line-height:1.6;
|
||||
position:relative;
|
||||
color:#666;
|
||||
border-style:none none inset;
|
||||
margin:10px 0 15px;
|
||||
}
|
||||
|
||||
.maintinfo strong {
|
||||
float:left;
|
||||
font-size:20px;
|
||||
height:64px;
|
||||
padding-top:28px;
|
||||
text-align:center;
|
||||
width:230px;
|
||||
}
|
||||
|
||||
.maintinfo div {
|
||||
padding:22px 0 18px;
|
||||
}
|
||||
|
||||
.maintinfo b {
|
||||
font-size:13px;
|
||||
font-weight:400;
|
||||
margin-right:15px;
|
||||
}
|
||||
|
||||
.maintinfo em {
|
||||
font-size:12px;
|
||||
margin-right:15px;
|
||||
}
|
||||
|
||||
.maintinfo span {
|
||||
float:right;
|
||||
margin-top:-15px;
|
||||
font-size:10px;
|
||||
padding-right:9px;
|
||||
}
|
||||
|
||||
.maintinfo .blogo {
|
||||
background:url(http://mit00.02753.com/sebug_flat_0da.png) no-repeat scroll 0 0 transparent;
|
||||
display:block;
|
||||
height:19px;
|
||||
text-indent:-5000px;
|
||||
width:52px;
|
||||
float:right;
|
||||
margin:-35px -58px 0 0;
|
||||
}
|
||||
|
||||
.aside {
|
||||
float:right;
|
||||
font-size:11px;
|
||||
width:280px;
|
||||
}
|
||||
|
||||
.aside .group {
|
||||
border-bottom:1px dashed #ECECEC;
|
||||
clear:both;
|
||||
margin-bottom:10px;
|
||||
padding-bottom:10px;
|
||||
}
|
||||
|
||||
.aside .group li {
|
||||
float:left;
|
||||
height:22px;
|
||||
margin-right:1%;
|
||||
overflow:hidden;
|
||||
white-space:nowrap;
|
||||
width:32.299999%;
|
||||
}
|
||||
|
||||
.indexarticle {
|
||||
float:left;
|
||||
padding-right:5px;
|
||||
width:530px;
|
||||
}
|
||||
|
||||
.bug_index_list ul {
|
||||
list-style:none;
|
||||
margin-bottom:20px;
|
||||
}
|
||||
|
||||
.bug_index_list li {
|
||||
padding-left:10px;
|
||||
position:relative;
|
||||
line-height:26px;
|
||||
}
|
||||
|
||||
.indexarticle .topitems {
|
||||
clear:both;
|
||||
margin-bottom:20px;
|
||||
font-size:11px;
|
||||
padding:10px 0 0 10px;
|
||||
}
|
||||
|
||||
.indexarticle .topitems li {
|
||||
float:left;
|
||||
height:22px;
|
||||
margin-right:1%;
|
||||
overflow:hidden;
|
||||
white-space:nowrap;
|
||||
width:23%;
|
||||
}
|
||||
|
||||
.indexseach {
|
||||
text-align:center;
|
||||
margin:auto;
|
||||
padding:110px 0;
|
||||
}
|
||||
|
||||
.lsbb {
|
||||
background:#eee;
|
||||
border:1px solid #999;
|
||||
border-top-color:#ccc;
|
||||
border-left-color:#ccc;
|
||||
height:30px;
|
||||
width:120px;
|
||||
}
|
||||
|
||||
.lsb {
|
||||
font:14px arial;
|
||||
background-position:bottom;
|
||||
border:none;
|
||||
color:#000;
|
||||
cursor:pointer;
|
||||
height:30px;
|
||||
vertical-align:top;
|
||||
background:#f1f1f1;
|
||||
margin:0;
|
||||
}
|
||||
|
||||
.lsb:active {
|
||||
background:#ccc;
|
||||
}
|
||||
|
||||
.tsf-p {
|
||||
width:480px;
|
||||
margin:0 auto;
|
||||
}
|
||||
|
||||
.lst-td {
|
||||
border-bottom:1px solid #999;
|
||||
padding-right:16px;
|
||||
}
|
||||
|
||||
.lst {
|
||||
-moz-box-sizing:content-box;
|
||||
background:#fff;
|
||||
border:1px solid #ccc;
|
||||
border-bottom:none;
|
||||
color:#4D5256;
|
||||
font:20px arial;
|
||||
float:left;
|
||||
height:26px;
|
||||
vertical-align:middle;
|
||||
width:100%;
|
||||
padding:2px 10px 2px 6px;
|
||||
}
|
||||
|
||||
.com {
|
||||
color:#800;
|
||||
}
|
||||
|
||||
.lit {
|
||||
color:#066;
|
||||
}
|
||||
|
||||
.pun,.opn,.clo {
|
||||
color:#440;
|
||||
}
|
||||
|
||||
.fun {
|
||||
color:#red;
|
||||
}
|
||||
|
||||
.str,.atv {
|
||||
color:#080;
|
||||
}
|
||||
|
||||
.kwd,.tag {
|
||||
color:#008;
|
||||
}
|
||||
|
||||
.pln {
|
||||
color:#000;
|
||||
}
|
||||
|
||||
.prettyprint {
|
||||
padding:10px 0 10px 20px;
|
||||
}
|
||||
|
||||
ol.linenums {
|
||||
margin:0 0 0 20px;
|
||||
|
@ -588,104 +21,18 @@ line-height:15px;
|
|||
padding:0 5px;
|
||||
}
|
||||
|
||||
.prettyprint-dark {
|
||||
background-color:#1d1f21;
|
||||
border:0;
|
||||
padding:10px;
|
||||
}
|
||||
|
||||
.prettyprint-dark.linenums li {
|
||||
color:#444;
|
||||
}
|
||||
|
||||
.prettyprint-dark.linenums li:hover {
|
||||
background-color:#282a2e;
|
||||
}
|
||||
|
||||
.prettyprint-dark.kwd,.prettyprint-dark.tag {
|
||||
color:#006;
|
||||
font-weight:700;
|
||||
}
|
||||
|
||||
.prettyprint-dark.str,.prettyprint-dark.atv {
|
||||
color:#060;
|
||||
}
|
||||
|
||||
#slider1 {
|
||||
width:805px;
|
||||
height:285px;
|
||||
position:relative;
|
||||
overflow:hidden;
|
||||
}
|
||||
|
||||
#slider1Content {
|
||||
width:805px;
|
||||
position:absolute;
|
||||
top:0;
|
||||
margin-left:0;
|
||||
}
|
||||
|
||||
.slider1Image {
|
||||
float:center;
|
||||
position:relative;
|
||||
display:none;
|
||||
}
|
||||
|
||||
.slider1Image span {
|
||||
position:absolute;
|
||||
font:10px/15px Arial,sans-serif;
|
||||
width:805px;
|
||||
background-color:#E9EEF2;
|
||||
filter:alpha(opacity=70);
|
||||
-moz-opacity:.7;
|
||||
-khtml-opacity:.7;
|
||||
opacity:.7;
|
||||
color:#000;
|
||||
display:none;
|
||||
padding:10px 13px;
|
||||
}
|
||||
|
||||
.top {
|
||||
top:0;
|
||||
left:0;
|
||||
}
|
||||
|
||||
.slider1Image span strong {
|
||||
font-size:14px;
|
||||
}
|
||||
|
||||
.chart_p {
|
||||
font-size:11px;
|
||||
line-height:18px;
|
||||
}
|
||||
|
||||
#isad {
|
||||
float:right;
|
||||
background:url(http://mit00.02753.com/www/img/icon_ad.png) no-repeat scroll 0 0 transparent;
|
||||
font-size:11px;
|
||||
padding-left:20px;
|
||||
line-height:11px;
|
||||
}
|
||||
|
||||
*,div.pages .next a,div.pages .prev a {
|
||||
margin:0;
|
||||
padding:0;
|
||||
}
|
||||
|
||||
a:hover,.created a:hover {
|
||||
.li_list a:hover,.created a:hover {
|
||||
background-color:#105DB5;
|
||||
color:#FFF;
|
||||
text-decoration:none;
|
||||
}
|
||||
|
||||
h1,h2 {
|
||||
font-size:18px;
|
||||
}
|
||||
|
||||
.fixed,.clear {
|
||||
clear:both;
|
||||
}
|
||||
|
||||
.li_list li,.na_list li {
|
||||
clear:both;
|
||||
height:18px;
|
||||
|
@ -693,14 +40,16 @@ list-style-type:square;
|
|||
padding:2px;
|
||||
}
|
||||
|
||||
|
||||
.fixed,.clear {
|
||||
clear:both;
|
||||
}
|
||||
|
||||
|
||||
h1,h2 {
|
||||
font-size:18px;
|
||||
}
|
||||
|
||||
div.pages .break,.created a {
|
||||
color:#999;
|
||||
}
|
||||
|
||||
.tomore,.at_sebug {
|
||||
padding:5px 0;
|
||||
}
|
||||
|
||||
.typ,.atn,.dec,.var,.prettyprint-dark.typ,.prettyprint-dark .atn,.prettyprint-dark .dec,.prettyprint-dark.var {
|
||||
color:#606;
|
||||
}
|
|
@ -0,0 +1,11 @@
|
|||
# Read about fixtures at http://api.rubyonrails.org/classes/ActiveRecord/Fixtures.html
|
||||
|
||||
# This model initially had no columns defined. If you add columns to the
|
||||
# model remove the '{}' from the fixture names and add the columns immediately
|
||||
# below each fixture, per the syntax in the comments below
|
||||
#
|
||||
one: {}
|
||||
# column: value
|
||||
#
|
||||
two: {}
|
||||
# column: value
|
|
@ -0,0 +1,7 @@
|
|||
require 'test_helper'
|
||||
|
||||
class BugToOspTest < ActiveSupport::TestCase
|
||||
# test "the truth" do
|
||||
# assert true
|
||||
# end
|
||||
end
|
Loading…
Reference in New Issue