From 3d2c0ba721e4c3eb6a6dd93237bda4c7b0a9d944 Mon Sep 17 00:00:00 2001 From: yanxd Date: Mon, 13 Jan 2014 08:23:35 +0800 Subject: [PATCH 01/43] add activityBox to project/course/contest html --- app/views/bids/contest.html.erb | 6 +++--- app/views/projects/course.html.erb | 10 +++++++--- app/views/projects/index.html.erb | 12 +++++++----- public/stylesheets/nyan.css | 19 +++++++++++++++++++ 4 files changed, 36 insertions(+), 11 deletions(-) diff --git a/app/views/bids/contest.html.erb b/app/views/bids/contest.html.erb index 565e558d7..9cffe1172 100644 --- a/app/views/bids/contest.html.erb +++ b/app/views/bids/contest.html.erb @@ -1,5 +1,3 @@ - -
<%= form_tag(:controller => 'bids', :action => 'contest', :method => :get) do %> @@ -28,7 +26,6 @@
<% end %>
- @@ -46,6 +43,9 @@ <% if @bids.size > 0%> +
+ +
<%= sort_contest(@s_state)%>
<%= render :partial => 'contest_show', :locals => {:bids => @bids, :bid_pages => @bid_pages} %> diff --git a/app/views/projects/course.html.erb b/app/views/projects/course.html.erb index f635e0867..3e82961c5 100644 --- a/app/views/projects/course.html.erb +++ b/app/views/projects/course.html.erb @@ -2,7 +2,6 @@ <%= auto_discovery_link_tag(:atom, {:action => 'index', :format => 'atom', :key => User.current.rss_key}) %> <% end %> -
<%= form_tag(:controller => 'projects', :action => 'search', :method => :get) do %> @@ -30,8 +29,13 @@
<% end %> -
- +
+ +
+
+
aaaa
+
+
<%= sort_course(@s_type, @project_type)%> diff --git a/app/views/projects/index.html.erb b/app/views/projects/index.html.erb index e9b780d0f..5264bda7f 100644 --- a/app/views/projects/index.html.erb +++ b/app/views/projects/index.html.erb @@ -2,12 +2,11 @@ <%= auto_discovery_link_tag(:atom, {:action => 'index', :format => 'atom', :key => User.current.rss_key}) %> <% end %> -
<%= form_tag(:controller => 'projects', :action => "search", :method => :get) do %> - +
<%= l(:label_project_deposit) %><%= l(:label_project_deposit) %> <%= l(:label_user_location) %> : <% if User.current.logged? %> @@ -28,9 +27,12 @@
<% end %> -
- - + +
+
+
a
+
+
<%= sort_project(@s_type, @project_type) %>
<%= render_project_hierarchy(@projects)%> diff --git a/public/stylesheets/nyan.css b/public/stylesheets/nyan.css index 2bf095e4f..764939f3c 100644 --- a/public/stylesheets/nyan.css +++ b/public/stylesheets/nyan.css @@ -11,6 +11,9 @@ .ph10_5{ /*padding horizontal 10% 5%*/ padding: 0px 5% 0px 10%; } +.clear_both{ + clear: both; +} * { font-family: Helvetica, Tahoma, Arial, "Microsoft YaHei", "微软雅黑", SimSun, "宋体", STXihei, "华文细黑", Heiti, "黑体", sans-serif; } @@ -341,3 +344,19 @@ table.content-text-list tbody tr td.locked, div.memo-section .locked{ font-size: 1.5em; padding-left: 4%; } +/* xx动态框 +*******************************************************************************/ +.project_acts *{border:1px solid #000000;} +.project_acts{ + height: 250px; + +} +.project_acts .project_acts_left{ + float: left; + height: 100%; + width: 61%; +} +.project_acts .project_acts_right{ + height: 100%; + margin-left: 61%; +} \ No newline at end of file From f91d94fd4c9b800ecb2c3f0a24d851a821ed3fb4 Mon Sep 17 00:00:00 2001 From: yanxd Date: Mon, 13 Jan 2014 16:24:13 +0800 Subject: [PATCH 02/43] fetch stores/index instance_object --- app/controllers/stores_controller.rb | 16 +++++++++++++++- app/helpers/projects_helper.rb | 6 +++++- app/helpers/welcome_helper.rb | 2 +- app/models/attachment.rb | 1 + app/models/project.rb | 2 ++ 5 files changed, 24 insertions(+), 3 deletions(-) diff --git a/app/controllers/stores_controller.rb b/app/controllers/stores_controller.rb index 2790308ba..6237ef89e 100644 --- a/app/controllers/stores_controller.rb +++ b/app/controllers/stores_controller.rb @@ -7,8 +7,22 @@ class StoresController < ApplicationController # menu_item :settings, :only => :settings # include ActsAsTaggableOn::TagsHelper - + LIMIT = 20 unless const_defined?(:LIMIT) def index + #Document HomeworkAttach Issue Message News Version WikiPage + projects_attach + @projects_attach = Attachment.includes(:attach_project).where("projects.project_type=?", 0). + reorder("#{Attachment.table_name}.created_on DESC"). + limit(LIMIT) + @courses_attach = Attachment.includes(:attach_project).where("projects.project_type=?", 1). + reorder("#{Attachment.table_name}.created_on DESC"). + limit(LIMIT) + @homeworks_attach = Attachment.where("container_type = 'HomeworkAttach'"). + reorder("created_on DESC"). + limit(LIMIT) + @memos_attach = Attachment.where("container_type = 'Memo'"). + reorder("created_on DESC"). + limit(LIMIT) end end diff --git a/app/helpers/projects_helper.rb b/app/helpers/projects_helper.rb index 63d5fea2a..12e1dee6d 100644 --- a/app/helpers/projects_helper.rb +++ b/app/helpers/projects_helper.rb @@ -268,7 +268,8 @@ module ProjectsHelper @projects << Project.visible.find_by_id("#{obj.project_id}")#where('id=:id', id: obj.project_id) end @projects - rescue NoMethodError + rescue NoMethodError => e + logger.error "Logger.Error [ProjectsHelper] ===> #sort_project_by_hot, NoMethodError: #{e}" [] end @@ -285,4 +286,7 @@ module ProjectsHelper WHERE project_type = 0 ORDER BY grade DESC LIMIT #{limit} ) AS t ON p.id = t.project_id ") end + def method_name + + end end diff --git a/app/helpers/welcome_helper.rb b/app/helpers/welcome_helper.rb index 69b06aa12..154c2a98b 100644 --- a/app/helpers/welcome_helper.rb +++ b/app/helpers/welcome_helper.rb @@ -66,7 +66,7 @@ module WelcomeHelper begin grade = project.project_status.grade if project && project.project_status rescue Exception => e - logger.error "[WelcomeHelper] ===> #{e}" + logger.error "Logger.Error [WelcomeHelper] ===> #{e}" end "项目评分:".html_safe << grade.to_s end diff --git a/app/models/attachment.rb b/app/models/attachment.rb index eeab56242..63f2ad5fa 100644 --- a/app/models/attachment.rb +++ b/app/models/attachment.rb @@ -20,6 +20,7 @@ require "fileutils" class Attachment < ActiveRecord::Base belongs_to :container, :polymorphic => true + belongs_to :attach_project, foreign_key: 'container_id', conditions: "#{Attachment.table_name}.container_type = 'Project'" belongs_to :author, :class_name => "User", :foreign_key => "author_id" validates_presence_of :filename, :author diff --git a/app/models/project.rb b/app/models/project.rb index e106ac0c0..7968859e2 100644 --- a/app/models/project.rb +++ b/app/models/project.rb @@ -151,6 +151,8 @@ class Project < ActiveRecord::Base where("LOWER(identifier) LIKE :p OR LOWER(name) LIKE :p ", :p => pattern) end } + scope :project_entities, -> { where(project_type: 0) } + scope :course_entities, -> { where(project_type: 1) } def new_course self.where('project_type = ?', 1) From 405cf70b42c95ba41eb1b1b92cc2641889d1b072 Mon Sep 17 00:00:00 2001 From: nieguanghui Date: Mon, 13 Jan 2014 16:29:02 +0800 Subject: [PATCH 03/43] modified table style --- app/views/files/index.html.erb | 71 +++++++++++++++++++++++++++++---- app/views/stores/index.html.erb | 10 ++--- 2 files changed, 66 insertions(+), 15 deletions(-) diff --git a/app/views/files/index.html.erb b/app/views/files/index.html.erb index 2488e935c..07b4f3823 100644 --- a/app/views/files/index.html.erb +++ b/app/views/files/index.html.erb @@ -1,4 +1,53 @@ +
<% if @project.project_type == 1 %> @@ -14,14 +63,20 @@ <% delete_allowed = User.current.allowed_to?(:manage_files, @project) %> - +
+ + + + + + - <%= sort_header_tag('filename', :caption => l(:field_filename)) %> - <%= sort_header_tag('created_on', :caption => l(:label_date), :default_order => 'desc') %> - <%= sort_header_tag('size', :caption => l(:field_filesize), :default_order => 'desc') %> - <%= sort_header_tag('downloads', :caption => l(:field_downloads), :default_order => 'desc') %> - <%= sort_header_tag('description', :caption => l(:field_description)) %> - + <%= sort_header_tag('filename', :caption => l(:field_filename), :scope =>"col" , :id => "vzebra-adventure")%> + <%= sort_header_tag('created_on', :caption => l(:label_date), :default_order => 'desc', :scope =>"col" , :id => "vzebra-comedy")%> + <%= sort_header_tag('size', :caption => l(:field_filesize), :default_order => 'desc', :scope =>"col", :id=> "vzebra-children")%> + <%= sort_header_tag('downloads', :caption => l(:field_downloads), :default_order => 'desc', :scope =>"col", :id => "vzebra-action") %> + <%= sort_header_tag('downloads', :caption => "操作", :scope =>"col", :id => "vzebra-children") %> + <% @containers.each do |container| %> @@ -39,7 +94,7 @@ - + - <% 5.times do |c1|%> + <% @projects_attach.each do |c1|%> - - + + <% end %> From fd25c5ed300226d1416365e0de3d209554f5cb7c Mon Sep 17 00:00:00 2001 From: yanxd Date: Mon, 13 Jan 2014 20:26:40 +0800 Subject: [PATCH 06/43] ... --- app/controllers/stores_controller.rb | 36 ++++++++++++++++++---------- app/models/attachment.rb | 2 +- 2 files changed, 24 insertions(+), 14 deletions(-) diff --git a/app/controllers/stores_controller.rb b/app/controllers/stores_controller.rb index 705a5e26a..cb85b39b0 100644 --- a/app/controllers/stores_controller.rb +++ b/app/controllers/stores_controller.rb @@ -9,30 +9,40 @@ class StoresController < ApplicationController # include ActsAsTaggableOn::TagsHelper LIMIT = 20 unless const_defined?(:LIMIT) def index - #Document HomeworkAttach Issue Message News Version WikiPage + @projects_attach = project_classification(0).take(LIMIT) + @courses_attach = project_classification(1).take(LIMIT) + # @projects_attach = Attachment.includes(:projects).where("projects.project_type=?", 0). + # reorder("#{Attachment.table_name}.created_on DESC"). + # limit(LIMIT) - @projects_attach = Attachment.includes(:attach_project).where("projects.project_type=?", 0). - reorder("#{Attachment.table_name}.created_on DESC"). - limit(LIMIT) - - @courses_attach = Attachment.includes(:attach_project).where("projects.project_type=?", 1). - reorder("#{Attachment.table_name}.created_on DESC"). - limit(LIMIT) + # @courses_attach = Attachment.includes(:projects).where("projects.project_type=?", 1). + # reorder("#{Attachment.table_name}.created_on DESC"). + # limit(LIMIT) @homeworks_attach = Attachment.where("container_type = 'HomeworkAttach'"). reorder("created_on DESC"). limit(LIMIT) @memos_attach = Attachment.where("container_type = 'Memo'"). reorder("created_on DESC"). limit(LIMIT) + @attach_array = Array.new + @attach_array.push(@projects_attach, @courses_attach, @homeworks_attach, @memos_attach) end private - #Document HomeworkAttach Issue Message News Version WikiPage + def project_classification project_type=0 - #Document HomeworkAttach Issue Message News Version WikiPage - doc_attach = Attachment.joins(str_join_table("documents")).where("projects.project_type=#{project_type}") - issue_attach = Attachment.joins(str_join_table("issues")).where("projects.project_type=#{project_type}") - mess_attach = Attachment.joins(str_join_table("messages")).where("projects.project_type=#{project_type}") + pro_attach = Attachment.joins("LEFT JOIN projects ON attachments.container_id = projects.id").where("projects.project_type=#{project_type}") + doc_attach = join_tools_project "documents", project_type + issue_attach = join_tools_project "issues", project_type + mess_attach = []#join_tools_project "messages", project_type + news_attach = join_tools_project "news", project_type + vers_attach = join_tools_project "versions", project_type + wiki_attach = []#join_tools_project "wiki_pages", project_type + + pro_attach+doc_attach+issue_attach+mess_attach+news_attach+vers_attach+wiki_attach + end + def join_tools_project tableName, project_type=0 + Attachment.joins(str_join_table(tableName)).where("projects.project_type=#{project_type}") end def str_join_table tableName diff --git a/app/models/attachment.rb b/app/models/attachment.rb index 63f2ad5fa..d29b03760 100644 --- a/app/models/attachment.rb +++ b/app/models/attachment.rb @@ -20,7 +20,7 @@ require "fileutils" class Attachment < ActiveRecord::Base belongs_to :container, :polymorphic => true - belongs_to :attach_project, foreign_key: 'container_id', conditions: "#{Attachment.table_name}.container_type = 'Project'" + belongs_to :projects, foreign_key: 'container_id', conditions: "attachments.container_type = 'Project'" belongs_to :author, :class_name => "User", :foreign_key => "author_id" validates_presence_of :filename, :author From d0d36186df3fb0664fb8043f207e908815b7f256 Mon Sep 17 00:00:00 2001 From: nieguanghui Date: Mon, 13 Jan 2014 20:46:27 +0800 Subject: [PATCH 07/43] modified table style --- app/views/files/index.html.erb | 2 +- app/views/stores/index.html.erb | 11 ++++++----- 2 files changed, 7 insertions(+), 6 deletions(-) diff --git a/app/views/files/index.html.erb b/app/views/files/index.html.erb index 07b4f3823..5743ed321 100644 --- a/app/views/files/index.html.erb +++ b/app/views/files/index.html.erb @@ -90,7 +90,7 @@ <% end -%> <% container.attachments.each do |file| %> "> - + diff --git a/app/views/stores/index.html.erb b/app/views/stores/index.html.erb index 098c63494..bbdc10913 100644 --- a/app/views/stores/index.html.erb +++ b/app/views/stores/index.html.erb @@ -60,9 +60,10 @@ <% end %>
-<% 4.times do |c|%> +<% @attach_array.each do |c|%>
-

热门<%=c%>

+

+

<%= format_time(file.created_on) %> <%= number_to_human_size(file.filesize) %> <%= file.downloads %><%= file.description %> <%= link_to(image_tag('delete.png'), attachment_path(file), :data => {:confirm => l(:text_are_you_sure)}, :method => :delete) if delete_allowed %> diff --git a/app/views/stores/index.html.erb b/app/views/stores/index.html.erb index c282da570..5c9b72228 100644 --- a/app/views/stores/index.html.erb +++ b/app/views/stores/index.html.erb @@ -23,7 +23,7 @@ } .line_block p{ margin: 1em 0px auto; - background: linear-gradient(#ffffff, #e5e5e5) repeat scroll 0% 0% transparent; + /*background: linear-gradient(#ffffff, #e5e5e5) repeat scroll 0% 0% transparent;*/ border-bottom: 1px solid rgb(226,226,226); border-top-left-radius : 6px; border-top-right-radius : 6px; @@ -34,7 +34,7 @@ height: 30px; font-size: 1.5em; padding-left: 4%; - border-bottom: 2px solid #FF661B + border-bottom: 1px solid rgb(21, 165, 200); } .resource_sum, .line_blo{ border: 1px solid #eeeeee; @@ -43,7 +43,7 @@ border: 1px solid #eeeeee; } .line_block table thead tr{ - background-color: #d1d1d1; + /*background-color: #d1d1d1;*/ } .line_block table td{ height: 2em; @@ -59,10 +59,6 @@ <% end %> -<% content_for :sidebar do%> - this is sidebar in index.html.erb -<% end %> -
<% 4.times do |c|%>
From 5a797ba4747ebf54bd95ef0594ed1cc730fb510f Mon Sep 17 00:00:00 2001 From: yanxd Date: Mon, 13 Jan 2014 16:34:24 +0800 Subject: [PATCH 04/43] s --- app/controllers/stores_controller.rb | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) diff --git a/app/controllers/stores_controller.rb b/app/controllers/stores_controller.rb index 6237ef89e..705a5e26a 100644 --- a/app/controllers/stores_controller.rb +++ b/app/controllers/stores_controller.rb @@ -10,10 +10,11 @@ class StoresController < ApplicationController LIMIT = 20 unless const_defined?(:LIMIT) def index #Document HomeworkAttach Issue Message News Version WikiPage - projects_attach + @projects_attach = Attachment.includes(:attach_project).where("projects.project_type=?", 0). reorder("#{Attachment.table_name}.created_on DESC"). limit(LIMIT) + @courses_attach = Attachment.includes(:attach_project).where("projects.project_type=?", 1). reorder("#{Attachment.table_name}.created_on DESC"). limit(LIMIT) @@ -25,4 +26,18 @@ class StoresController < ApplicationController limit(LIMIT) end + private + #Document HomeworkAttach Issue Message News Version WikiPage + def project_classification project_type=0 + #Document HomeworkAttach Issue Message News Version WikiPage + doc_attach = Attachment.joins(str_join_table("documents")).where("projects.project_type=#{project_type}") + issue_attach = Attachment.joins(str_join_table("issues")).where("projects.project_type=#{project_type}") + mess_attach = Attachment.joins(str_join_table("messages")).where("projects.project_type=#{project_type}") + end + + def str_join_table tableName + str = "LEFT JOIN #{tableName} ON attachments.container_id = #{tableName}.id + LEFT JOIN projects ON #{tableName}.project_id = projects.id" + str + end end From e460896fa2feb4dbdd03ce245c6a5f6eb493fe7c Mon Sep 17 00:00:00 2001 From: nieguanghui Date: Mon, 13 Jan 2014 16:40:18 +0800 Subject: [PATCH 05/43] nothing --- app/views/stores/index.html.erb | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/app/views/stores/index.html.erb b/app/views/stores/index.html.erb index 5c9b72228..098c63494 100644 --- a/app/views/stores/index.html.erb +++ b/app/views/stores/index.html.erb @@ -71,10 +71,10 @@
<%=c1%><%=c1%> ti<%= c1 %><%= c1.downloads %> ti
<%= link_to_attachment file, :download => true, :title => file.description %><%= link_to_attachment file, :download => true, :title => file.description, :style => "width: 230px; overflow: hidden; white-space: nowrap;text-overflow: ellipsis;" %> <%= format_time(file.created_on) %> <%= number_to_human_size(file.filesize) %> <%= file.downloads %>
@@ -71,10 +72,10 @@ - <% @projects_attach.each do |c1|%> + <% c.each do |c1|%> - - + + <% end %> From 95e77464ad3d2229cd904d0973cf5b4141e7e511 Mon Sep 17 00:00:00 2001 From: yanxd Date: Mon, 13 Jan 2014 21:02:45 +0800 Subject: [PATCH 08/43] downloads desc --- app/controllers/stores_controller.rb | 19 +++++++++++++------ app/models/attachment.rb | 2 +- 2 files changed, 14 insertions(+), 7 deletions(-) diff --git a/app/controllers/stores_controller.rb b/app/controllers/stores_controller.rb index cb85b39b0..3a6a26d2f 100644 --- a/app/controllers/stores_controller.rb +++ b/app/controllers/stores_controller.rb @@ -15,9 +15,9 @@ class StoresController < ApplicationController # reorder("#{Attachment.table_name}.created_on DESC"). # limit(LIMIT) - # @courses_attach = Attachment.includes(:projects).where("projects.project_type=?", 1). - # reorder("#{Attachment.table_name}.created_on DESC"). - # limit(LIMIT) + # @courses_attach = Attachment.includes(:projects).where("projects.project_type=?", 1). + # reorder("#{Attachment.table_name}.created_on DESC"). + # limit(LIMIT) @homeworks_attach = Attachment.where("container_type = 'HomeworkAttach'"). reorder("created_on DESC"). limit(LIMIT) @@ -31,7 +31,10 @@ class StoresController < ApplicationController private def project_classification project_type=0 - pro_attach = Attachment.joins("LEFT JOIN projects ON attachments.container_id = projects.id").where("projects.project_type=#{project_type}") + pro_attach = Attachment.joins("LEFT JOIN projects ON attachments.container_id = projects.id"). + where("projects.project_type=#{project_type}"). + reorder("downloads"). + limit(LIMIT) doc_attach = join_tools_project "documents", project_type issue_attach = join_tools_project "issues", project_type mess_attach = []#join_tools_project "messages", project_type @@ -39,10 +42,14 @@ class StoresController < ApplicationController vers_attach = join_tools_project "versions", project_type wiki_attach = []#join_tools_project "wiki_pages", project_type - pro_attach+doc_attach+issue_attach+mess_attach+news_attach+vers_attach+wiki_attach + tmp = pro_attach+doc_attach+issue_attach+mess_attach+news_attach+vers_attach+wiki_attach + tmp.sort { |a, b| b.downloads <=> a.downloads } end def join_tools_project tableName, project_type=0 - Attachment.joins(str_join_table(tableName)).where("projects.project_type=#{project_type}") + Attachment.joins(str_join_table(tableName)). + where("projects.project_type=#{project_type}"). + reorder('downloads DESC'). + limit(LIMIT) end def str_join_table tableName diff --git a/app/models/attachment.rb b/app/models/attachment.rb index d29b03760..144125174 100644 --- a/app/models/attachment.rb +++ b/app/models/attachment.rb @@ -20,7 +20,7 @@ require "fileutils" class Attachment < ActiveRecord::Base belongs_to :container, :polymorphic => true - belongs_to :projects, foreign_key: 'container_id', conditions: "attachments.container_type = 'Project'" + belongs_to :project, foreign_key: 'container_id', conditions: "attachments.container_type = 'Project'" belongs_to :author, :class_name => "User", :foreign_key => "author_id" validates_presence_of :filename, :author From 308df9eda5ebc9c5720490b0618a0dc95c1702be Mon Sep 17 00:00:00 2001 From: yanxd Date: Mon, 13 Jan 2014 21:24:01 +0800 Subject: [PATCH 09/43] z --- app/controllers/stores_controller.rb | 32 ++++++++++++++-------------- 1 file changed, 16 insertions(+), 16 deletions(-) diff --git a/app/controllers/stores_controller.rb b/app/controllers/stores_controller.rb index 3a6a26d2f..d8d7346d3 100644 --- a/app/controllers/stores_controller.rb +++ b/app/controllers/stores_controller.rb @@ -9,15 +9,15 @@ class StoresController < ApplicationController # include ActsAsTaggableOn::TagsHelper LIMIT = 20 unless const_defined?(:LIMIT) def index - @projects_attach = project_classification(0).take(LIMIT) - @courses_attach = project_classification(1).take(LIMIT) - # @projects_attach = Attachment.includes(:projects).where("projects.project_type=?", 0). - # reorder("#{Attachment.table_name}.created_on DESC"). - # limit(LIMIT) + # @projects_attach = project_classification(0).take(LIMIT) + # @courses_attach = project_classification(1).take(LIMIT) + @projects_attach = Attachment.includes(:project).where("projects.project_type=?", 0). + reorder("#{Attachment.table_name}.downloads DESC"). + limit(LIMIT) - # @courses_attach = Attachment.includes(:projects).where("projects.project_type=?", 1). - # reorder("#{Attachment.table_name}.created_on DESC"). - # limit(LIMIT) + @courses_attach = Attachment.includes(:project).where("projects.project_type=?", 1). + reorder("#{Attachment.table_name}.downloads DESC"). + limit(LIMIT) @homeworks_attach = Attachment.where("container_type = 'HomeworkAttach'"). reorder("created_on DESC"). limit(LIMIT) @@ -31,16 +31,16 @@ class StoresController < ApplicationController private def project_classification project_type=0 - pro_attach = Attachment.joins("LEFT JOIN projects ON attachments.container_id = projects.id"). + pro_attach = Attachment.joins("LEFT JOIN projects ON attachments.container_id = projects.id"). where("projects.project_type=#{project_type}"). - reorder("downloads"). + reorder("downloads DESC"). limit(LIMIT) - doc_attach = join_tools_project "documents", project_type - issue_attach = join_tools_project "issues", project_type - mess_attach = []#join_tools_project "messages", project_type - news_attach = join_tools_project "news", project_type - vers_attach = join_tools_project "versions", project_type - wiki_attach = []#join_tools_project "wiki_pages", project_type + doc_attach = join_tools_project "documents", project_type + issue_attach = join_tools_project "issues", project_type + mess_attach = []#join_tools_project "messages", project_type + news_attach = join_tools_project "news", project_type + vers_attach = join_tools_project "versions", project_type + wiki_attach = []#join_tools_project "wiki_pages", project_type tmp = pro_attach+doc_attach+issue_attach+mess_attach+news_attach+vers_attach+wiki_attach tmp.sort { |a, b| b.downloads <=> a.downloads } From b2f2097cd4fd95c871dd3ae1520e4dc4c90fa382 Mon Sep 17 00:00:00 2001 From: nieguanghui Date: Mon, 13 Jan 2014 21:32:34 +0800 Subject: [PATCH 10/43] ellipsis --- app/views/stores/index.html.erb | 18 +++++++++++++++--- 1 file changed, 15 insertions(+), 3 deletions(-) diff --git a/app/views/stores/index.html.erb b/app/views/stores/index.html.erb index bbdc10913..aa799d0a2 100644 --- a/app/views/stores/index.html.erb +++ b/app/views/stores/index.html.erb @@ -13,6 +13,7 @@ display: inline-block; width: 49%; margin: 10px auto; + vertical-align: top; padding: 0px 2%; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; @@ -48,6 +49,16 @@ .line_block table td{ height: 2em; } + .filename { + + overflow: hidden; + white-space: nowrap; + text-overflow: ellipsis; + max-width: 247px; + } + /*.filename a:after { + content: "..."; + }*/ <% content_for :top_field do%> @@ -60,9 +71,10 @@ <% end %>
-<% @attach_array.each do |c|%> +<% @attach_array.each do |k|%>

+ c

<%= c1 %><%= c1.downloads %> ti<%= link_to_attachment c1 %><%= c1.downloads %>
@@ -72,9 +84,9 @@ - <% c.each do |c1|%> + <% k.each do |c1|%> - + <% end %> From dadf9da4775d84cfaf46a322f2d65cb8d0b4b74f Mon Sep 17 00:00:00 2001 From: nieguanghui Date: Tue, 14 Jan 2014 09:24:46 +0800 Subject: [PATCH 11/43] modified something --- app/views/files/index.html.erb | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/app/views/files/index.html.erb b/app/views/files/index.html.erb index 5743ed321..7aa51563e 100644 --- a/app/views/files/index.html.erb +++ b/app/views/files/index.html.erb @@ -1,7 +1,7 @@ @@ -83,14 +89,14 @@ <% next if container.attachments.empty? -%> <% if container.is_a?(Version) -%> - <% end -%> <% container.attachments.each do |file| %> "> - + From 85e89f5c09f53ae391f900bfe90a6baa312648db Mon Sep 17 00:00:00 2001 From: yanxd Date: Tue, 14 Jan 2014 09:29:28 +0800 Subject: [PATCH 12/43] storeshelper attachFromUrl --- app/helpers/stores_helper.rb | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) create mode 100644 app/helpers/stores_helper.rb diff --git a/app/helpers/stores_helper.rb b/app/helpers/stores_helper.rb new file mode 100644 index 000000000..025ae0bbb --- /dev/null +++ b/app/helpers/stores_helper.rb @@ -0,0 +1,30 @@ +module StoresHelper + def attachFromUrl attachment + container = attachment.container + case container.to_s + when 'Message' + board_message_path(container.board, container) + when 'Issue' + issue_path(container) + when 'Document' + document_path container + when 'HomeworkAttach' + bid_path(container.bid) + when 'Memo' + forum_memo_path(container.forum, container) + when 'News' + news_path(container) + when 'Project' + project_files_path(container) + when 'Version' + # version_path(container) + project_files_path(container.project) + when 'WikiPage' + project_wiki_path(container.project) + when 'Bid' + bid_path(container) + else + logger.error "StoresHelper#attachUrl unkown type ==> #{container}" + end + end +end From e174c710ef6e78c89399e062fbce6419753167e1 Mon Sep 17 00:00:00 2001 From: nieguanghui Date: Tue, 14 Jan 2014 09:33:00 +0800 Subject: [PATCH 13/43] add url to files --- app/views/stores/index.html.erb | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/app/views/stores/index.html.erb b/app/views/stores/index.html.erb index aa799d0a2..d2153f57f 100644 --- a/app/views/stores/index.html.erb +++ b/app/views/stores/index.html.erb @@ -81,13 +81,15 @@ + <% k.each do |c1|%> - + + <% end %> From d09e995f52392514647d35d0df64765b282e08df Mon Sep 17 00:00:00 2001 From: yanxd Date: Tue, 14 Jan 2014 09:43:53 +0800 Subject: [PATCH 14/43] class --- app/helpers/stores_helper.rb | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/app/helpers/stores_helper.rb b/app/helpers/stores_helper.rb index 025ae0bbb..e2be22cc0 100644 --- a/app/helpers/stores_helper.rb +++ b/app/helpers/stores_helper.rb @@ -1,7 +1,7 @@ module StoresHelper def attachFromUrl attachment container = attachment.container - case container.to_s + case container.class.to_s when 'Message' board_message_path(container.board, container) when 'Issue' @@ -24,7 +24,7 @@ module StoresHelper when 'Bid' bid_path(container) else - logger.error "StoresHelper#attachUrl unkown type ==> #{container}" + '#'#logger.error "StoresHelper#attachUrl unkown type ==> #{container}" end end end From 54aef57287596c540ceba7e0728381cf83154c9b Mon Sep 17 00:00:00 2001 From: nieguanghui Date: Tue, 14 Jan 2014 10:12:55 +0800 Subject: [PATCH 15/43] download --- app/views/stores/index.html.erb | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/app/views/stores/index.html.erb b/app/views/stores/index.html.erb index d2153f57f..ee7cda629 100644 --- a/app/views/stores/index.html.erb +++ b/app/views/stores/index.html.erb @@ -81,15 +81,15 @@ - + <% k.each do |c1|%> - + - + <% end %> From 41fefd0b37c0f1291100ad499beeed27363938d5 Mon Sep 17 00:00:00 2001 From: yanxd Date: Tue, 14 Jan 2014 10:24:13 +0800 Subject: [PATCH 16/43] =?UTF-8?q?=E5=8E=BB=E9=99=A4=E9=9A=90=E8=97=8F?= =?UTF-8?q?=E9=A1=B9=E7=9B=AE=E8=AF=BE=E7=A8=8B=E5=86=85=E7=9A=84=E5=86=85?= =?UTF-8?q?=E5=AE=B9=EF=BC=8C=20=E4=B8=8B=E8=BD=BD=E6=96=87=E4=BB=B6?= =?UTF-8?q?=E5=90=8D=E7=BC=A9=E7=95=A5=E6=98=BE=E7=A4=BA=E9=BC=A0=E6=A0=87?= =?UTF-8?q?=E7=A7=BB=E4=B8=8A=E5=8E=BB=E6=B5=AE=E5=8A=A8=E6=98=BE=E7=A4=BA?= =?UTF-8?q?=E6=89=80=E6=9C=89=20=E5=AE=8C=E6=95=B4=E6=96=87=E4=BB=B6?= =?UTF-8?q?=E5=90=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/controllers/stores_controller.rb | 4 ++-- app/views/stores/index.html.erb | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/app/controllers/stores_controller.rb b/app/controllers/stores_controller.rb index d8d7346d3..b8e37bee7 100644 --- a/app/controllers/stores_controller.rb +++ b/app/controllers/stores_controller.rb @@ -11,11 +11,11 @@ class StoresController < ApplicationController def index # @projects_attach = project_classification(0).take(LIMIT) # @courses_attach = project_classification(1).take(LIMIT) - @projects_attach = Attachment.includes(:project).where("projects.project_type=?", 0). + @projects_attach = Attachment.includes(:project).where("projects.project_type=? AND projects.is_public = ?", 0, 1). reorder("#{Attachment.table_name}.downloads DESC"). limit(LIMIT) - @courses_attach = Attachment.includes(:project).where("projects.project_type=?", 1). + @courses_attach = Attachment.includes(:project).where("projects.project_type=? AND projects.is_public = ?", 1, 1). reorder("#{Attachment.table_name}.downloads DESC"). limit(LIMIT) @homeworks_attach = Attachment.where("container_type = 'HomeworkAttach'"). diff --git a/app/views/stores/index.html.erb b/app/views/stores/index.html.erb index ee7cda629..9ff68ec3f 100644 --- a/app/views/stores/index.html.erb +++ b/app/views/stores/index.html.erb @@ -87,7 +87,7 @@ <% k.each do |c1|%> - + From d34253bdfcbefb8108408008d8938f660c50d78b Mon Sep 17 00:00:00 2001 From: yanxd Date: Tue, 14 Jan 2014 15:01:11 +0800 Subject: [PATCH 17/43] search framework --- app/controllers/stores_controller.rb | 8 ++++++-- app/views/stores/index.html.erb | 2 +- app/views/stores/search.html.erb | 1 + config/routes.rb | 7 ++++++- 4 files changed, 14 insertions(+), 4 deletions(-) create mode 100644 app/views/stores/search.html.erb diff --git a/app/controllers/stores_controller.rb b/app/controllers/stores_controller.rb index b8e37bee7..634210d78 100644 --- a/app/controllers/stores_controller.rb +++ b/app/controllers/stores_controller.rb @@ -5,9 +5,13 @@ class StoresController < ApplicationController # menu_item :overview # menu_item :roadmap, :only => :roadmap # menu_item :settings, :only => :settings - # include ActsAsTaggableOn::TagsHelper - LIMIT = 20 unless const_defined?(:LIMIT) + + def search + @searched_attach = Attachment.all[0..20] + end + + LIMIT = 12 unless const_defined?(:LIMIT) def index # @projects_attach = project_classification(0).take(LIMIT) # @courses_attach = project_classification(1).take(LIMIT) diff --git a/app/views/stores/index.html.erb b/app/views/stores/index.html.erb index 9ff68ec3f..c32231859 100644 --- a/app/views/stores/index.html.erb +++ b/app/views/stores/index.html.erb @@ -87,7 +87,7 @@ <% k.each do |c1|%> - + diff --git a/app/views/stores/search.html.erb b/app/views/stores/search.html.erb new file mode 100644 index 000000000..989e6b4f2 --- /dev/null +++ b/app/views/stores/search.html.erb @@ -0,0 +1 @@ +<%= @searched_attach.to_s %> \ No newline at end of file diff --git a/config/routes.rb b/config/routes.rb index ea02406b8..78f334b47 100644 --- a/config/routes.rb +++ b/config/routes.rb @@ -16,7 +16,12 @@ # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. RedmineApp::Application.routes.draw do - resources :stores + resources :stores do + collection do + match 'search', via: [:get, :post] + end + end + resources :forums do collection do match 'search_forum', :via => [:get, :post] From f1f08e150b95cfeedda4b65f7a3a60c0b9959ddf Mon Sep 17 00:00:00 2001 From: yanxd Date: Tue, 14 Jan 2014 15:18:18 +0800 Subject: [PATCH 18/43] modify search bar action http --- app/views/stores/index.html.erb | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/app/views/stores/index.html.erb b/app/views/stores/index.html.erb index c32231859..165280691 100644 --- a/app/views/stores/index.html.erb +++ b/app/views/stores/index.html.erb @@ -63,9 +63,9 @@ <% content_for :top_field do%>
- <%= form_for('#', :remote => true) do |f| %> - <%= f.text_field :name, size:"100", placeholder:'请输入要搜索的关键字' %> - <%= f.submit value:"search", class:"whiteButton m3p10 h30"%> + <%= form_tag( search_stores_path, method: 'get') do %> + <%= text_field_tag 'name', nil, size:"100", placeholder:'请输入要搜索的关键字' %> + <%= submit_tag l(:label_search), class:"whiteButton m3p10 h30"%> <% end %>
<% end %> From 997b90c3b2c136493577b0dd6f307254b50da5e8 Mon Sep 17 00:00:00 2001 From: yanxd Date: Tue, 14 Jan 2014 15:41:56 +0800 Subject: [PATCH 19/43] add label on box --- app/controllers/stores_controller.rb | 4 ++++ app/views/stores/index.html.erb | 2 +- 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/app/controllers/stores_controller.rb b/app/controllers/stores_controller.rb index 634210d78..ea45acaec 100644 --- a/app/controllers/stores_controller.rb +++ b/app/controllers/stores_controller.rb @@ -30,6 +30,10 @@ class StoresController < ApplicationController limit(LIMIT) @attach_array = Array.new @attach_array.push(@projects_attach, @courses_attach, @homeworks_attach, @memos_attach) + @str_arr = [ l(:label_project_deposit), + l(:label_course_practice), + l(:label_contest_innovate), + l(:label_forum) ] end private diff --git a/app/views/stores/index.html.erb b/app/views/stores/index.html.erb index 165280691..4642e18c2 100644 --- a/app/views/stores/index.html.erb +++ b/app/views/stores/index.html.erb @@ -74,7 +74,7 @@ <% @attach_array.each do |k|%>

- c + <%=@str_arr.shift%>

<%= link_to_attachment c1 %><%= link_to_attachment c1 %> <%= c1.downloads %>
- <%= link_to(h(container), {:controller => 'versions', :action => 'show', :id => container}, :class => "icon icon-package") %> + + <%= link_to(h(container), {:controller => 'versions', :action => 'show', :id => container}, :class => "icon icon-package", :style => "color: #666666;") %>
<%= link_to_attachment file, :download => true, :title => file.description, :style => "width: 230px; overflow: hidden; white-space: nowrap;text-overflow: ellipsis;" %><%= link_to_attachment file, :download => true, :title => file.description, :style => "width: 230px; overflow: hidden; white-space: nowrap;text-overflow: ellipsis;" %> <%= format_time(file.created_on) %> <%= number_to_human_size(file.filesize) %> <%= file.downloads %>
文件名 下载次数下载次数
<%= link_to_attachment c1 %><%= c1.downloads %> <%= c1.downloads %> <%= attachFromUrl c1 %>
文件名 下载次数下载次数下载
<%= link_to_attachment c1 %><%= link_to c1.filename, (attachFromUrl c1) %> <%= c1.downloads %> <%= attachFromUrl c1 %> <%= link_to_attachment c1, {:text => "下载"}%>
<%= link_to c1.filename, (attachFromUrl c1) %> <%= link_to c1.filename, (attachFromUrl c1), {:title => c1.filename} %> <%= c1.downloads %> <%= link_to_attachment c1, {:text => "下载"}%>
<%= link_to c1.filename, (attachFromUrl c1), {:title => c1.filename} %> <%= link_to c1.filename, (attachFromUrl c1), {:title => c1.filename, :target => "_blank"} %> <%= c1.downloads %> <%= link_to_attachment c1, {:text => "下载"}%>
From 6a7a6b1be68db17baa28cef37a70b3faa5b2d28b Mon Sep 17 00:00:00 2001 From: nieguanghui Date: Tue, 14 Jan 2014 16:18:48 +0800 Subject: [PATCH 20/43] modified searching result for stores --- app/views/stores/index.html.erb | 2 +- app/views/stores/search.html.erb | 39 +++++++++++++++++++++++++++++++- 2 files changed, 39 insertions(+), 2 deletions(-) diff --git a/app/views/stores/index.html.erb b/app/views/stores/index.html.erb index 4642e18c2..d349d0aa8 100644 --- a/app/views/stores/index.html.erb +++ b/app/views/stores/index.html.erb @@ -74,7 +74,7 @@ <% @attach_array.each do |k|%>

- <%=@str_arr.shift%> + <%= @str_arr.shift %>

diff --git a/app/views/stores/search.html.erb b/app/views/stores/search.html.erb index 989e6b4f2..f9838a329 100644 --- a/app/views/stores/search.html.erb +++ b/app/views/stores/search.html.erb @@ -1 +1,38 @@ -<%= @searched_attach.to_s %> \ No newline at end of file +<% content_for :top_field do%> +
+ <%= form_tag( search_stores_path, method: 'get') do %> + <%= text_field_tag 'name', nil, size:"100", placeholder:'请输入要搜索的关键字' %> + <%= submit_tag l(:label_search), class:"whiteButton m3p10 h30"%> + <% end %> +
+<% end %> + +<% @searched_attach.each do |result| %> + +
+ + +
+ <%= result.description %> +
所属分类:IT资料 > 常用软件 > 下载软件 + 上传时间:<%= format_time(result.created_on) %>
星级: | 下载:<%= result.downloads%> | 大小:<%= number_to_human_size(result.filesize) %> + | 共享者:<%= result.author%> + +
+ <% end %> + + + \ No newline at end of file From 91a6c13cedf1ae81be233af216dda7d77076f9bf Mon Sep 17 00:00:00 2001 From: yanxd Date: Tue, 14 Jan 2014 17:21:27 +0800 Subject: [PATCH 21/43] search --- app/controllers/stores_controller.rb | 18 +++++++++++------- 1 file changed, 11 insertions(+), 7 deletions(-) diff --git a/app/controllers/stores_controller.rb b/app/controllers/stores_controller.rb index ea45acaec..e0e675882 100644 --- a/app/controllers/stores_controller.rb +++ b/app/controllers/stores_controller.rb @@ -8,7 +8,11 @@ class StoresController < ApplicationController # include ActsAsTaggableOn::TagsHelper def search - @searched_attach = Attachment.all[0..20] + name = params[:name] ||= '' + @searched_attach = Attachment.includes(:project).where("projects.is_public = ? AND filename LIKE '%"<< name <<"%' ", 1) + # @searched_attach = Attachment.all[0..20] + @searched_attach.take 20 + # reutrn @searched_attach end LIMIT = 12 unless const_defined?(:LIMIT) @@ -43,12 +47,12 @@ class StoresController < ApplicationController where("projects.project_type=#{project_type}"). reorder("downloads DESC"). limit(LIMIT) - doc_attach = join_tools_project "documents", project_type - issue_attach = join_tools_project "issues", project_type - mess_attach = []#join_tools_project "messages", project_type - news_attach = join_tools_project "news", project_type - vers_attach = join_tools_project "versions", project_type - wiki_attach = []#join_tools_project "wiki_pages", project_type + doc_attach = join_tools_project "documents", project_type + issue_attach = join_tools_project "issues", project_type + mess_attach = []#join_tools_project "messages", project_type + news_attach = join_tools_project "news", project_type + vers_attach = join_tools_project "versions", project_type + wiki_attach = []#join_tools_project "wiki_pages", project_type tmp = pro_attach+doc_attach+issue_attach+mess_attach+news_attach+vers_attach+wiki_attach tmp.sort { |a, b| b.downloads <=> a.downloads } From 2bb44456d643efce9f693329d8daf767f388051b Mon Sep 17 00:00:00 2001 From: yanxd Date: Tue, 14 Jan 2014 20:48:43 +0800 Subject: [PATCH 22/43] search --- app/controllers/stores_controller.rb | 26 +++++++++++----------- app/helpers/stores_helper.rb | 30 ++++++++++++++++++++++++++ app/views/layouts/base_stores.html.erb | 2 +- app/views/stores/search.html.erb | 2 +- 4 files changed, 45 insertions(+), 15 deletions(-) diff --git a/app/controllers/stores_controller.rb b/app/controllers/stores_controller.rb index e0e675882..a0624b1cd 100644 --- a/app/controllers/stores_controller.rb +++ b/app/controllers/stores_controller.rb @@ -9,10 +9,10 @@ class StoresController < ApplicationController def search name = params[:name] ||= '' - @searched_attach = Attachment.includes(:project).where("projects.is_public = ? AND filename LIKE '%"<< name <<"%' ", 1) - # @searched_attach = Attachment.all[0..20] - @searched_attach.take 20 - # reutrn @searched_attach + # 按文件名搜索 + result = Attachment.includes(:project).where("projects.is_public = ? AND filename LIKE '%" << name << "%' ", 1) + @searched_attach = result + return @searched_attach end LIMIT = 12 unless const_defined?(:LIMIT) @@ -47,12 +47,12 @@ class StoresController < ApplicationController where("projects.project_type=#{project_type}"). reorder("downloads DESC"). limit(LIMIT) - doc_attach = join_tools_project "documents", project_type - issue_attach = join_tools_project "issues", project_type - mess_attach = []#join_tools_project "messages", project_type - news_attach = join_tools_project "news", project_type - vers_attach = join_tools_project "versions", project_type - wiki_attach = []#join_tools_project "wiki_pages", project_type + doc_attach = join_tools_project Document, project_type + issue_attach = join_tools_project Issue, project_type + mess_attach = []#join_tools_project Message, project_type + news_attach = join_tools_project News"news", project_type + vers_attach = join_tools_project Version"versions", project_type + wiki_attach = []#join_tools_project WikiPage, project_type tmp = pro_attach+doc_attach+issue_attach+mess_attach+news_attach+vers_attach+wiki_attach tmp.sort { |a, b| b.downloads <=> a.downloads } @@ -64,9 +64,9 @@ class StoresController < ApplicationController limit(LIMIT) end - def str_join_table tableName - str = "LEFT JOIN #{tableName} ON attachments.container_id = #{tableName}.id - LEFT JOIN projects ON #{tableName}.project_id = projects.id" + def str_join_table tableClass + str = "LEFT JOIN #{tableClass.table_name} ON attachments.container_id = #{tableClass.table_name}.id + LEFT JOIN projects ON #{tableClass.table_name}.project_id = projects.id" str end end diff --git a/app/helpers/stores_helper.rb b/app/helpers/stores_helper.rb index e2be22cc0..76ff1fd76 100644 --- a/app/helpers/stores_helper.rb +++ b/app/helpers/stores_helper.rb @@ -27,4 +27,34 @@ module StoresHelper '#'#logger.error "StoresHelper#attachUrl unkown type ==> #{container}" end end + + def come_from_local attachment # TODO: title_html look at. + container = attachment.container + case container.class.to_s + when 'Message' + board_message_path(container.board, container) + when 'Issue' + issue_path(container) + when 'Document' + document_path container + when 'HomeworkAttach' + bid_path(container.bid) + when 'Memo' + forum_memo_path(container.forum, container) + when 'News' + news_path(container) + when 'Project' + project_files_path(container) + when 'Version' + # version_path(container) + project_files_path(container.project) + when 'WikiPage' + project_wiki_path(container.project) + when 'Bid' + bid_path(container) + else + '#'#logger.error "StoresHelper#attachUrl unkown type ==> #{container}" + end + + end end diff --git a/app/views/layouts/base_stores.html.erb b/app/views/layouts/base_stores.html.erb index 60e686f1a..268c3beda 100644 --- a/app/views/layouts/base_stores.html.erb +++ b/app/views/layouts/base_stores.html.erb @@ -38,7 +38,7 @@ <%= link_to stores_url , stores_url %> -

<%=link_to l(:label_home),home_path %> > <%=link_to l(:label_course_file),:controller => 'projects', :action => 'index', :project_type => 0 %> > <%=link_to @project, '' %>

+

<%=link_to l(:label_home),home_path %> > <%=link_to l(:label_course_file),stores_url %>

diff --git a/app/views/stores/search.html.erb b/app/views/stores/search.html.erb index f9838a329..84f5a0780 100644 --- a/app/views/stores/search.html.erb +++ b/app/views/stores/search.html.erb @@ -1,7 +1,7 @@ <% content_for :top_field do%>
<%= form_tag( search_stores_path, method: 'get') do %> - <%= text_field_tag 'name', nil, size:"100", placeholder:'请输入要搜索的关键字' %> + <%= text_field_tag 'name', nil, size:"100", placeholder:'请输入要搜索的关键字', :value => params[:name] %> <%= submit_tag l(:label_search), class:"whiteButton m3p10 h30"%> <% end %>
From 61380a5e1a5e25d18f268438398c79921469c9d9 Mon Sep 17 00:00:00 2001 From: yanxd Date: Wed, 15 Jan 2014 10:40:37 +0800 Subject: [PATCH 23/43] =?UTF-8?q?=E6=96=87=E4=BB=B6=E6=9D=A5=E6=BA=90?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/controllers/stores_controller.rb | 6 +- app/helpers/stores_helper.rb | 106 +++++++++++++++++++++++---- app/views/stores/search.html.erb | 2 +- 3 files changed, 97 insertions(+), 17 deletions(-) diff --git a/app/controllers/stores_controller.rb b/app/controllers/stores_controller.rb index a0624b1cd..ea4812809 100644 --- a/app/controllers/stores_controller.rb +++ b/app/controllers/stores_controller.rb @@ -10,7 +10,11 @@ class StoresController < ApplicationController def search name = params[:name] ||= '' # 按文件名搜索 - result = Attachment.includes(:project).where("projects.is_public = ? AND filename LIKE '%" << name << "%' ", 1) + #result = Attachment.includes(:project).where("projects.is_public = 1 AND filename LIKE '%" << name << "%' ") + result = Attachment.where("attachments.container_type IS NOT NULL AND filename LIKE '%" + name + "%' "). + reorder("created_on DESC") + result = result.to_a + result.map { |res| result.delete(res) if res.container.nil?} @searched_attach = result return @searched_attach end diff --git a/app/helpers/stores_helper.rb b/app/helpers/stores_helper.rb index 76ff1fd76..3ab574e86 100644 --- a/app/helpers/stores_helper.rb +++ b/app/helpers/stores_helper.rb @@ -28,33 +28,109 @@ module StoresHelper end end - def come_from_local attachment # TODO: title_html look at. + def result_come_from attachment + come_from_local(attachment).join(" > ").html_safe + end + + WORD_LIMIT = 100 + def come_from_local attachment + container = attachment.container case container.class.to_s when 'Message' - board_message_path(container.board, container) + # '项目 > zzz > 论坛 > 帖子xxx' + # topic_str = container.project.project_type == 0 ? l(:label_board) : l(:label_new_course) + topic_list = link_to l(:label_board), project_boards_path(container.project) + topic_item = link_to container.subject.truncate(WORD_LIMIT, omission: '...'), board_message_path(container.board, container), title: container.subject + project_link(container.project).push(topic_list, topic_item) when 'Issue' - issue_path(container) + # '项目 > zzz > 缺陷 > 问题xxx' + issue_list = link_to l(:label_project_issues), project_issues_path(container.project) + issue_item = link_to container.subject.truncate(WORD_LIMIT, omission: '...'), issue_path(container), title: container.subject + project_link(container.project).push(issue_list, issue_item) when 'Document' - document_path container - when 'HomeworkAttach' - bid_path(container.bid) - when 'Memo' - forum_memo_path(container.forum, container) + # '项目 > zzz > 文档 > 文档xxx' + doc_list = link_to l(:label_document), project_documents_path(container.project) + doc_item = link_to container.title.truncate(WORD_LIMIT, omission: '...'), document_path(container), title: container.title + project_link(container.project).push(doc_list, doc_item) when 'News' - news_path(container) + # '课程 > zzz > 新闻 > 新闻xxx' + news_str = container.project.project_type == 0 ? l(:label_news) : l(:label_course_news) + news_list = link_to news_str, project_news_index_path(container.project) + news_item = link_to container.title.truncate(WORD_LIMIT, omission: '...'), news_path(container), title: container.title + project_link(container.project).push(news_list, news_item) when 'Project' - project_files_path(container) + # '项目 > zzz ' + file_str = container.project.project_type == 0 ? l(:project_module_files) : l(:label_course_file) + files_list = link_to file_str, project_files_path(container.project) + project_link(container).push(files_list) when 'Version' - # version_path(container) - project_files_path(container.project) + # '项目 > zzz > 里程碑 > xxx' + ver_list = link_to l(:label_roadmap), project_roadmap_path(container.project) + files_list = link_to l(:label_course_file), project_files_path(container.project) + ver_item = link_to container.name.truncate(WORD_LIMIT, omission: '...'), version_path(container), title: container.name + project_link(container.project).push(ver_list, files_list, ver_item) when 'WikiPage' - project_wiki_path(container.project) + # '项目 > zzz > 维基 > xxx' 有点问题 + wiki_list = link_to l(:label_wiki), project_wiki_path(container.project) + project_link(container.project).push(wiki_list) + when 'HomeworkAttach' + # '课程 > zzz > 作业 > 作业xxx' + bid_link(container.bid) + when 'Memo' + # '贴吧 > 讨论区 > 帖子 xxx' + return [link_to(attachment.id, '#')] if container.forum.nil? + forums_list = link_to l(:label_forum), forums_path + memo_list = link_to container.forum.name, forum_path(container.forum) + memo_item = link_to container.subject, forum_memo_path(container.forum, container) + [forums_list, memo_list, memo_item] when 'Bid' - bid_path(container) + # '竞赛 > xxx ' + bid_link(container) else - '#'#logger.error "StoresHelper#attachUrl unkown type ==> #{container}" + Rails.logger.error "ERROR: attachment type unkown" + [link_to('unkown', '')] + end + end + + private + + def project_link project + if project.nil? + Rails.logger.error "ERROR: attachment type unkown #project_link project.nil?" + return [link_to('unkown', '')] + end + project_list = nil + if project.project_type == 0 + project_list = link_to l(:label_project_plural), projects_path + else + project_list = link_to l(:label_new_course), course_path end + project_item = link_to project.to_s, project_path(project) + [project_list, project_item] + end + def bid_link bid + bid_list = nil + bid_item = nil + case bid.reward_type + when 1 # 众包 + bid_list = link_to l(:label_requirement_enterprise_list), calls_path + bid_item = link_to bid.name, respond_path(bid) + when 2 # 竞赛 + bid_list = link_to l(:label_contest_list), contest_path + bid_item = link_to bid.name, respond_path(bid) + when 3 # 作业 + if bid.courses.first.nil? + Rails.logger.error "ERROR: attachment type unkown #bid_link/when 3" + return [link_to(bid.id, '#')] + end + bid_list = link_to l(:label_homework), project_homework_path(bid.courses.first) + bid_item = link_to bid.name, respond_path(bid) + return project_link(bid.courses.first).push(bid_list, bid_item) + else + xxx + end + [bid_list, bid_item] end end diff --git a/app/views/stores/search.html.erb b/app/views/stores/search.html.erb index 84f5a0780..03bbf9b13 100644 --- a/app/views/stores/search.html.erb +++ b/app/views/stores/search.html.erb @@ -18,7 +18,7 @@ class=f16 href="http://ishare.iask.sina.com.cn/f/23680389.html" target=_blank><%= result.filename %>
<%= result.description %> -
所属分类:所属分类:<%=result_come_from result%>=====================IT资料 > 常用软件 >  Date: Wed, 15 Jan 2014 14:28:36 +0800 Subject: [PATCH 24/43] paginate --- app/controllers/application_controller.rb | 2 +- app/controllers/stores_controller.rb | 3 +-- app/helpers/stores_helper.rb | 9 +++++---- app/views/stores/search.html.erb | 4 +++- 4 files changed, 10 insertions(+), 8 deletions(-) diff --git a/app/controllers/application_controller.rb b/app/controllers/application_controller.rb index 2c220c25b..51b7fa804 100644 --- a/app/controllers/application_controller.rb +++ b/app/controllers/application_controller.rb @@ -625,7 +625,7 @@ class ApplicationController < ActionController::Base @obj_count = obj.count @obj_pages = Paginator.new @obj_count, pre_size, params['page'] if obj.kind_of? ActiveRecord::Base or obj.kind_of? ActiveRecord::Relation - obj.limit(@obj_pages.per_page).offset(@obj_pages.offset).all + obj.limit(@obj_pages.per_page).offset(@obj_pages.offset) elsif obj.kind_of? Array obj[@obj_pages.offset, @obj_pages.per_page] else diff --git a/app/controllers/stores_controller.rb b/app/controllers/stores_controller.rb index ea4812809..0fe44058e 100644 --- a/app/controllers/stores_controller.rb +++ b/app/controllers/stores_controller.rb @@ -15,8 +15,7 @@ class StoresController < ApplicationController reorder("created_on DESC") result = result.to_a result.map { |res| result.delete(res) if res.container.nil?} - @searched_attach = result - return @searched_attach + @searched_attach = paginateHelper result end LIMIT = 12 unless const_defined?(:LIMIT) diff --git a/app/helpers/stores_helper.rb b/app/helpers/stores_helper.rb index 3ab574e86..26f1c7630 100644 --- a/app/helpers/stores_helper.rb +++ b/app/helpers/stores_helper.rb @@ -24,7 +24,8 @@ module StoresHelper when 'Bid' bid_path(container) else - '#'#logger.error "StoresHelper#attachUrl unkown type ==> #{container}" + Rails.logger.error "ERROR: StoresHelper#attachUrl unkown type ==> #{container}" + '#' end end @@ -32,6 +33,8 @@ module StoresHelper come_from_local(attachment).join(" > ").html_safe end + private + WORD_LIMIT = 100 def come_from_local attachment @@ -93,8 +96,6 @@ module StoresHelper end end - private - def project_link project if project.nil? Rails.logger.error "ERROR: attachment type unkown #project_link project.nil?" @@ -123,7 +124,7 @@ module StoresHelper when 3 # 作业 if bid.courses.first.nil? Rails.logger.error "ERROR: attachment type unkown #bid_link/when 3" - return [link_to(bid.id, '#')] + return [link_to('unkown', '#')] end bid_list = link_to l(:label_homework), project_homework_path(bid.courses.first) bid_item = link_to bid.name, respond_path(bid) diff --git a/app/views/stores/search.html.erb b/app/views/stores/search.html.erb index 03bbf9b13..13aefcbee 100644 --- a/app/views/stores/search.html.erb +++ b/app/views/stores/search.html.erb @@ -35,4 +35,6 @@ <% end %> - \ No newline at end of file + + + \ No newline at end of file From b825d2b7b524eafacea9c4cd136f4763340ca6b5 Mon Sep 17 00:00:00 2001 From: yanxd Date: Wed, 15 Jan 2014 16:02:41 +0800 Subject: [PATCH 25/43] css... --- app/views/files/index.html.erb | 2 +- app/views/stores/index.html.erb | 63 +++++++++++++++--- app/views/stores/search.html.erb | 111 ++++++++++++++++++++++++++++++- 3 files changed, 166 insertions(+), 10 deletions(-) diff --git a/app/views/files/index.html.erb b/app/views/files/index.html.erb index 7aa51563e..89dc7e8ea 100644 --- a/app/views/files/index.html.erb +++ b/app/views/files/index.html.erb @@ -96,7 +96,7 @@ <% end -%> <% container.attachments.each do |file| %> "> - <%= link_to_attachment file, :download => true, :title => file.description, :style => "width: 230px; overflow: hidden; white-space: nowrap;text-overflow: ellipsis;" %> + <%= link_to_attachment file, :download => true, :title => file.filename+"\n"+file.description, :style => "width: 230px; overflow: hidden; white-space: nowrap;text-overflow: ellipsis;" %> <%= format_time(file.created_on) %> <%= number_to_human_size(file.filesize) %> <%= file.downloads %> diff --git a/app/views/stores/index.html.erb b/app/views/stores/index.html.erb index d349d0aa8..a1e08d5b6 100644 --- a/app/views/stores/index.html.erb +++ b/app/views/stores/index.html.erb @@ -45,6 +45,7 @@ } .line_block table thead tr{ /*background-color: #d1d1d1;*/ + text-align: center; } .line_block table td{ height: 2em; @@ -59,13 +60,59 @@ /*.filename a:after { content: "..."; }*/ + .blueinputbar{ + -o-transform-origin: 138px 46.5px; + -o-transition: background 0.2s cubic-bezier(0, 0, 1, 1); + -webkit-border-bottom-left-radius: 3px; + -webkit-border-bottom-right-radius: 3px; + -webkit-border-radius: 3px; + -webkit-border-top-left-radius: 3px; + -webkit-border-top-right-radius: 3px; + -webkit-box-shadow: rgba(0, 0, 0, 0.047) 0px 1px 3px 0px inset, rgba(82, 168, 236, 0.600) 0px 0px 8px 0px; + -webkit-transform-origin: 138px 46.5px; + -webkit-transition: background 0.2s cubic-bezier(0, 0, 1, 1); + -webkit-transition-delay: 0; + -webkit-transition-duration: 0.2s; + -webkit-transition-property: background; + -webkit-transition-timing-function: cubic-bezier(0, 0, 1, 1); + align-content: stretch; + align-items: stretch; + align-self: stretch; + background: #FFFFFF; + border-bottom: 1px solid #56B4EF; + border-left: 1px solid #56B4EF; + border-radius: 3px; + border-right: 1px solid #56B4EF; + border-top: 1px solid #56B4EF; + color: #333333; + justify-content: flex-start; + margin: 0px; + order: 0; + outline: #333333 0px; + overflow-wrap: break-word; + resize: none; + text-shadow: none; + transform-origin: 138px 46.5px; + transition: background 0.2s cubic-bezier(0, 0, 1, 1); + unicode-bidi: embed; + vertical-align: top; + word-wrap: break-word; + } + input.blueinputbar:focus { + box-shadow: rgba(0, 0, 0, 0.047) 0px 1px 3px 0px inset, rgba(82, 168, 236, 0.600) 0px 0px 5px 0px; + border-bottom: 1px solid #56B4EF; + border-left: 1px solid #56B4EF; + border-radius: 3px; + border-right: 1px solid #56B4EF; + border-top: 1px solid #56B4EF; + } <% content_for :top_field do%> -
+
<%= form_tag( search_stores_path, method: 'get') do %> - <%= text_field_tag 'name', nil, size:"100", placeholder:'请输入要搜索的关键字' %> - <%= submit_tag l(:label_search), class:"whiteButton m3p10 h30"%> + <%= text_field_tag 'name', nil, size:"100", placeholder:'请输入要搜索的关键字', :class => 'blueinputbar' %> + <%= submit_tag l(:label_search), class:"whiteButton", style: "padding: 0px 10px;"%> <% end %>
<% end %> @@ -79,17 +126,17 @@ - - - + + + <% k.each do |c1|%> - - + + <% end %> diff --git a/app/views/stores/search.html.erb b/app/views/stores/search.html.erb index 13aefcbee..35fac9017 100644 --- a/app/views/stores/search.html.erb +++ b/app/views/stores/search.html.erb @@ -1,7 +1,116 @@ + <% content_for :top_field do%>
<%= form_tag( search_stores_path, method: 'get') do %> - <%= text_field_tag 'name', nil, size:"100", placeholder:'请输入要搜索的关键字', :value => params[:name] %> + <%= text_field_tag 'name', nil, size:"100", placeholder:'请输入要搜索的关键字', :value => params[:name] , :class => 'blueinputbar'%> <%= submit_tag l(:label_search), class:"whiteButton m3p10 h30"%> <% end %>
From a5c9d9c31eab0c6d4323986315e488e4218e9e3d Mon Sep 17 00:00:00 2001 From: yanxd Date: Wed, 15 Jan 2014 17:28:53 +0800 Subject: [PATCH 26/43] um... --- app/controllers/stores_controller.rb | 2 + app/views/layouts/base_stores.html.erb | 2 +- app/views/stores/index.html.erb | 114 ++++-------------------- app/views/stores/search.html.erb | 97 -------------------- public/images/button/download.png | Bin 0 -> 42649 bytes public/images/button/download_focus.png | Bin 0 -> 50851 bytes public/stylesheets/nyan.css | 107 +++++++++++++++++++++- 7 files changed, 125 insertions(+), 197 deletions(-) create mode 100644 public/images/button/download.png create mode 100644 public/images/button/download_focus.png diff --git a/app/controllers/stores_controller.rb b/app/controllers/stores_controller.rb index 0fe44058e..f1d7e9999 100644 --- a/app/controllers/stores_controller.rb +++ b/app/controllers/stores_controller.rb @@ -1,3 +1,4 @@ +# encoding: utf-8 # Trustie - education management software # Copyright (C) 2013-2014 class StoresController < ApplicationController @@ -9,6 +10,7 @@ class StoresController < ApplicationController def search name = params[:name] ||= '' + redirect_to stores_path, :notice => '为何不写点东西?' if name.blank? # 按文件名搜索 #result = Attachment.includes(:project).where("projects.is_public = 1 AND filename LIKE '%" << name << "%' ") result = Attachment.where("attachments.container_type IS NOT NULL AND filename LIKE '%" + name + "%' "). diff --git a/app/views/layouts/base_stores.html.erb b/app/views/layouts/base_stores.html.erb index 268c3beda..9d125b251 100644 --- a/app/views/layouts/base_stores.html.erb +++ b/app/views/layouts/base_stores.html.erb @@ -42,6 +42,7 @@
文件名下载次数下载<%=l(:label_attachment)%><%=l(:field_downloads)%><%=l(:button_download)%>
<%= link_to c1.filename, (attachFromUrl c1), {:title => c1.filename, :target => "_blank"} %> <%= c1.downloads %> <%= link_to_attachment c1, {:text => "下载"}%><%= c1.downloads %> <%= link_to_attachment c1, {:text => "下载"}%>
+ <%= render_flash_messages %>
<%= yield :top_field %>
@@ -50,7 +51,6 @@ <%= view_layouts_base_sidebar_hook_response %>
- <%= render_flash_messages %> <%= yield %> <%= call_hook :view_layouts_base_content %>
diff --git a/app/views/stores/index.html.erb b/app/views/stores/index.html.erb index a1e08d5b6..0ed270d92 100644 --- a/app/views/stores/index.html.erb +++ b/app/views/stores/index.html.erb @@ -9,103 +9,7 @@ max-width: 100%; margin: 20px auto; } - .line_block{ - display: inline-block; - width: 49%; - margin: 10px auto; - vertical-align: top; - padding: 0px 2%; - -webkit-box-sizing: border-box; - -moz-box-sizing: border-box; - -box-sizing: border-box; - } - .resource_sum{ - height: auto; - } - .line_block p{ - margin: 1em 0px auto; - /*background: linear-gradient(#ffffff, #e5e5e5) repeat scroll 0% 0% transparent;*/ - border-bottom: 1px solid rgb(226,226,226); - border-top-left-radius : 6px; - border-top-right-radius : 6px; - box-shadow: 0px 1px 0px white, 0px, -1px 0px rgb(245,245,245); - height: 39px; - font-size: 15px; - line-height: 26px; - height: 30px; - font-size: 1.5em; - padding-left: 4%; - border-bottom: 1px solid rgb(21, 165, 200); - } - .resource_sum, .line_blo{ - border: 1px solid #eeeeee; - } - .line_block table{ - border: 1px solid #eeeeee; - } - .line_block table thead tr{ - /*background-color: #d1d1d1;*/ - text-align: center; - } - .line_block table td{ - height: 2em; - } - .filename { - - overflow: hidden; - white-space: nowrap; - text-overflow: ellipsis; - max-width: 247px; - } - /*.filename a:after { - content: "..."; - }*/ - .blueinputbar{ - -o-transform-origin: 138px 46.5px; - -o-transition: background 0.2s cubic-bezier(0, 0, 1, 1); - -webkit-border-bottom-left-radius: 3px; - -webkit-border-bottom-right-radius: 3px; - -webkit-border-radius: 3px; - -webkit-border-top-left-radius: 3px; - -webkit-border-top-right-radius: 3px; - -webkit-box-shadow: rgba(0, 0, 0, 0.047) 0px 1px 3px 0px inset, rgba(82, 168, 236, 0.600) 0px 0px 8px 0px; - -webkit-transform-origin: 138px 46.5px; - -webkit-transition: background 0.2s cubic-bezier(0, 0, 1, 1); - -webkit-transition-delay: 0; - -webkit-transition-duration: 0.2s; - -webkit-transition-property: background; - -webkit-transition-timing-function: cubic-bezier(0, 0, 1, 1); - align-content: stretch; - align-items: stretch; - align-self: stretch; - background: #FFFFFF; - border-bottom: 1px solid #56B4EF; - border-left: 1px solid #56B4EF; - border-radius: 3px; - border-right: 1px solid #56B4EF; - border-top: 1px solid #56B4EF; - color: #333333; - justify-content: flex-start; - margin: 0px; - order: 0; - outline: #333333 0px; - overflow-wrap: break-word; - resize: none; - text-shadow: none; - transform-origin: 138px 46.5px; - transition: background 0.2s cubic-bezier(0, 0, 1, 1); - unicode-bidi: embed; - vertical-align: top; - word-wrap: break-word; - } - input.blueinputbar:focus { - box-shadow: rgba(0, 0, 0, 0.047) 0px 1px 3px 0px inset, rgba(82, 168, 236, 0.600) 0px 0px 5px 0px; - border-bottom: 1px solid #56B4EF; - border-left: 1px solid #56B4EF; - border-radius: 3px; - border-right: 1px solid #56B4EF; - border-top: 1px solid #56B4EF; - } + <% content_for :top_field do%> @@ -136,7 +40,9 @@ <%= link_to c1.filename, (attachFromUrl c1), {:title => c1.filename, :target => "_blank"} %> <%= c1.downloads %> - <%= link_to_attachment c1, {:text => "下载"}%> + + <%= link_to_attachment c1, {:text => image_tag("/images/button/download.png", width: "22px", alt: "l(:button_download)") }%> + <% end %> @@ -144,3 +50,15 @@ <% reset_cycle; end %> + \ No newline at end of file diff --git a/app/views/stores/search.html.erb b/app/views/stores/search.html.erb index 35fac9017..19bb29fbc 100644 --- a/app/views/stores/search.html.erb +++ b/app/views/stores/search.html.erb @@ -9,103 +9,6 @@ max-width: 100%; margin: 20px auto; } - .line_block{ - display: inline-block; - width: 49%; - margin: 10px auto; - vertical-align: top; - padding: 0px 2%; - -webkit-box-sizing: border-box; - -moz-box-sizing: border-box; - -box-sizing: border-box; - } - .resource_sum{ - height: auto; - } - .line_block p{ - margin: 1em 0px auto; - /*background: linear-gradient(#ffffff, #e5e5e5) repeat scroll 0% 0% transparent;*/ - border-bottom: 1px solid rgb(226,226,226); - border-top-left-radius : 6px; - border-top-right-radius : 6px; - box-shadow: 0px 1px 0px white, 0px, -1px 0px rgb(245,245,245); - height: 39px; - font-size: 15px; - line-height: 26px; - height: 30px; - font-size: 1.5em; - padding-left: 4%; - border-bottom: 1px solid rgb(21, 165, 200); - } - .resource_sum, .line_blo{ - border: 1px solid #eeeeee; - } - .line_block table{ - border: 1px solid #eeeeee; - } - .line_block table thead tr{ - /*background-color: #d1d1d1;*/ - text-align: center; - } - .line_block table td{ - height: 2em; - } - .filename { - - overflow: hidden; - white-space: nowrap; - text-overflow: ellipsis; - max-width: 247px; - } - /*.filename a:after { - content: "..."; - }*/ - .blueinputbar{ - -o-transform-origin: 138px 46.5px; - -o-transition: background 0.2s cubic-bezier(0, 0, 1, 1); - -webkit-border-bottom-left-radius: 3px; - -webkit-border-bottom-right-radius: 3px; - -webkit-border-radius: 3px; - -webkit-border-top-left-radius: 3px; - -webkit-border-top-right-radius: 3px; - -webkit-box-shadow: rgba(0, 0, 0, 0.047) 0px 1px 3px 0px inset, rgba(82, 168, 236, 0.600) 0px 0px 8px 0px; - -webkit-transform-origin: 138px 46.5px; - -webkit-transition: background 0.2s cubic-bezier(0, 0, 1, 1); - -webkit-transition-delay: 0; - -webkit-transition-duration: 0.2s; - -webkit-transition-property: background; - -webkit-transition-timing-function: cubic-bezier(0, 0, 1, 1); - align-content: stretch; - align-items: stretch; - align-self: stretch; - background: #FFFFFF; - border-bottom: 1px solid #56B4EF; - border-left: 1px solid #56B4EF; - border-radius: 3px; - border-right: 1px solid #56B4EF; - border-top: 1px solid #56B4EF; - color: #333333; - justify-content: flex-start; - margin: 0px; - order: 0; - outline: #333333 0px; - overflow-wrap: break-word; - resize: none; - text-shadow: none; - transform-origin: 138px 46.5px; - transition: background 0.2s cubic-bezier(0, 0, 1, 1); - unicode-bidi: embed; - vertical-align: top; - word-wrap: break-word; - } - input.blueinputbar:focus { - box-shadow: rgba(0, 0, 0, 0.047) 0px 1px 3px 0px inset, rgba(82, 168, 236, 0.600) 0px 0px 5px 0px; - border-bottom: 1px solid #56B4EF; - border-left: 1px solid #56B4EF; - border-radius: 3px; - border-right: 1px solid #56B4EF; - border-top: 1px solid #56B4EF; - } <% content_for :top_field do%>
diff --git a/public/images/button/download.png b/public/images/button/download.png new file mode 100644 index 0000000000000000000000000000000000000000..04745e7c75d3e4eb702de45be77cf306570fc834 GIT binary patch literal 42649 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%0Dr(XVdg!W~7;d5pTyLF?0=hQqk?3?MFxuL?~ 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 literal 0 HcmV?d00001 diff --git a/public/stylesheets/nyan.css b/public/stylesheets/nyan.css index 764939f3c..c0900cc10 100644 --- a/public/stylesheets/nyan.css +++ b/public/stylesheets/nyan.css @@ -14,6 +14,13 @@ .clear_both{ clear: both; } +.btn_download{ + display: inline-block; + background: url('images/button/download.png') no-repeat transparent; +} +.btn_download a{ + background: url('images/button/download.png') no-repeat transparent; +} * { font-family: Helvetica, Tahoma, Arial, "Microsoft YaHei", "微软雅黑", SimSun, "宋体", STXihei, "华文细黑", Heiti, "黑体", sans-serif; } @@ -359,4 +366,102 @@ table.content-text-list tbody tr td.locked, div.memo-section .locked{ .project_acts .project_acts_right{ height: 100%; margin-left: 61%; -} \ No newline at end of file +} +/* stores 资源库 +*******************************************************************************/ + .line_block{ + display: inline-block; + width: 49%; + margin: 10px auto; + vertical-align: top; + padding: 0px 2%; + -webkit-box-sizing: border-box; + -moz-box-sizing: border-box; + -box-sizing: border-box; + } + .resource_sum{ + height: auto; + } + .line_block p{ + margin: 1em 0px auto; + /*background: linear-gradient(#ffffff, #e5e5e5) repeat scroll 0% 0% transparent;*/ + border-bottom: 1px solid rgb(226,226,226); + border-top-left-radius : 6px; + border-top-right-radius : 6px; + box-shadow: 0px 1px 0px white, 0px, -1px 0px rgb(245,245,245); + height: 39px; + font-size: 15px; + line-height: 26px; + height: 30px; + font-size: 1.5em; + padding-left: 4%; + border-bottom: 1px solid rgb(21, 165, 200); + } + .resource_sum, .line_blo{ + border: 1px solid #eeeeee; + } + .line_block table{ + border: 1px solid #eeeeee; + } + .line_block table thead tr{ + /*background-color: #d1d1d1;*/ + text-align: center; + } + .line_block table td{ + height: 2em; + } + .filename { + + overflow: hidden; + white-space: nowrap; + text-overflow: ellipsis; + max-width: 247px; + } + /*.filename a:after { + content: "..."; + }*/ + .blueinputbar{ + -o-transform-origin: 138px 46.5px; + -o-transition: background 0.2s cubic-bezier(0, 0, 1, 1); + -webkit-border-bottom-left-radius: 3px; + -webkit-border-bottom-right-radius: 3px; + -webkit-border-radius: 3px; + -webkit-border-top-left-radius: 3px; + -webkit-border-top-right-radius: 3px; + -webkit-transform-origin: 138px 46.5px; + -webkit-transition: background 0.2s cubic-bezier(0, 0, 1, 1); + -webkit-transition-delay: 0; + -webkit-transition-duration: 0.2s; + -webkit-transition-property: background; + -webkit-transition-timing-function: cubic-bezier(0, 0, 1, 1); + align-content: stretch; + align-items: stretch; + align-self: stretch; + background: #FFFFFF; + border-bottom: 1px solid #56B4EF; + border-left: 1px solid #56B4EF; + border-radius: 3px; + border-right: 1px solid #56B4EF; + border-top: 1px solid #56B4EF; + color: #333333; + justify-content: flex-start; + margin: 0px; + order: 0; + outline: #333333 0px; + overflow-wrap: break-word; + resize: none; + text-shadow: none; + transform-origin: 138px 46.5px; + transition: background 0.2s cubic-bezier(0, 0, 1, 1); + unicode-bidi: embed; + vertical-align: top; + word-wrap: break-word; + } + input.blueinputbar:focus { + box-shadow: rgba(0, 0, 0, 0.047) 0px 1px 3px 0px inset, rgba(82, 168, 236, 0.600) 0px 0px 5px 0px; + border-bottom: 1px solid #56B4EF; + border-left: 1px solid #56B4EF; + border-radius: 3px; + border-right: 1px solid #56B4EF; + border-top: 1px solid #56B4EF; + } \ No newline at end of file From 7ee1b0646293fbe21ac59750a442e230a43ff173 Mon Sep 17 00:00:00 2001 From: yanxd Date: Wed, 15 Jan 2014 19:33:36 +0800 Subject: [PATCH 27/43] change image --- public/images/button/download.png | Bin 42649 -> 44419 bytes public/images/button/download_focus.png | Bin 50851 -> 43907 bytes 2 files changed, 0 insertions(+), 0 deletions(-) diff --git a/public/images/button/download.png b/public/images/button/download.png index 04745e7c75d3e4eb702de45be77cf306570fc834..d6d6b9ea101241673b83f5fa9bc769d97072c876 100644 GIT binary patch delta 18251 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 P{vDE{aw0WC27&(v!!Scl diff --git a/public/images/button/download_focus.png b/public/images/button/download_focus.png index 6b8009b49d2ae7127ac58fc089cb9a860bf9224e..d22f806c3b23a27c13670c5a60b254345ab18ef0 100644 GIT binary patch delta 17765 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 R3_rwDQ+lOX{oFF_zX0d}2AKc= From a687bed84c060c16784f72b3d1180d4b4d24606c Mon Sep 17 00:00:00 2001 From: nieguanghui Date: Wed, 15 Jan 2014 19:41:12 +0800 Subject: [PATCH 28/43] serach --- app/views/stores/search.html.erb | 12 ++++-------- 1 file changed, 4 insertions(+), 8 deletions(-) diff --git a/app/views/stores/search.html.erb b/app/views/stores/search.html.erb index f9838a329..39f884b8e 100644 --- a/app/views/stores/search.html.erb +++ b/app/views/stores/search.html.erb @@ -14,9 +14,9 @@ <%= result.description %>
所属分类:IT资料 > 常用软件 > 下载软件 上传时间:<%= format_time(result.created_on) %>
星级: | 下载:<%= result.downloads%> | 大小:<%= number_to_human_size(result.filesize) %> - | 共享者:<%= result.author%> + class=gray>下载:<%= result.downloads%> | 大小:<%= number_to_human_size(result.filesize) %> + | 共享者:<%= link_to result.author%> <% end %> From a54158c938123aaaab43680b00e969f98f712923 Mon Sep 17 00:00:00 2001 From: nieguanghui Date: Wed, 15 Jan 2014 20:05:13 +0800 Subject: [PATCH 29/43] say something --- app/views/stores/search.html.erb | 36 +++++++++++++++----------------- 1 file changed, 17 insertions(+), 19 deletions(-) diff --git a/app/views/stores/search.html.erb b/app/views/stores/search.html.erb index a6c206d77..4d7e09e1c 100644 --- a/app/views/stores/search.html.erb +++ b/app/views/stores/search.html.erb @@ -1,3 +1,4 @@ + - <% content_for :top_field do%>
<%= form_tag( search_stores_path, method: 'get') do %> <%= text_field_tag 'name', nil, size:"100", placeholder:'请输入要搜索的关键字', :class => 'blueinputbar' %> - <%= submit_tag l(:label_search), class:"whiteButton", style: "padding: 0px 10px;"%> + <%= submit_tag l(:label_search), :class => "enterprise"%> <% end %>
<% end %> diff --git a/app/views/stores/search.html.erb b/app/views/stores/search.html.erb index 4d7e09e1c..355a87052 100644 --- a/app/views/stores/search.html.erb +++ b/app/views/stores/search.html.erb @@ -1,46 +1,34 @@ - - <% content_for :top_field do%>
<%= form_tag( search_stores_path, method: 'get') do %> <%= text_field_tag 'name', nil, size:"100", placeholder:'请输入要搜索的关键字', :value => params[:name] , :class => 'blueinputbar'%> - <%= submit_tag l(:label_search), class:"whiteButton m3p10 h30"%> + <%= submit_tag l(:label_search), :class => "enterprise"%> <% end %>
<% end %> <% @searched_attach.each do |result| %> - - - - + + +
-
- <%= result.filename %> + + + + - - -
+
+ <%= result.filename %> <%= link_to_attachment result, {:text => "下载"}%> -
+ <%= result.description %> -
所属分类:<%=result_come_from result%> - 上传时间:<%= format_time(result.created_on) %> -
- 下载:<%= result.downloads%> +
所属分类:<%=result_come_from result%> + 上传时间:<%= format_time(result.created_on) %> +
+ 下载:<%= result.downloads%> | 大小:<%= number_to_human_size(result.filesize) %> - | 共享者:<%= link_to result.author%> - -
- <% end %> + | 共享者:<%= link_to result.author%> +
+
+ +<% end %> diff --git a/public/stylesheets/nyan.css b/public/stylesheets/nyan.css index c0900cc10..fb4511d47 100644 --- a/public/stylesheets/nyan.css +++ b/public/stylesheets/nyan.css @@ -417,6 +417,10 @@ table.content-text-list tbody tr td.locked, div.memo-section .locked{ text-overflow: ellipsis; max-width: 247px; } + #top_field { + max-width: 100%; + margin: 20px auto; + } /*.filename a:after { content: "..."; }*/ From 76f69973b4e0882ddf07b8d10507efe9c527b2b8 Mon Sep 17 00:00:00 2001 From: yanxd Date: Wed, 15 Jan 2014 21:00:07 +0800 Subject: [PATCH 32/43] fix search incalid byte sequence in utf-8 --- app/views/layouts/base_stores.html.erb | 1 + app/views/stores/index.html.erb | 2 +- app/views/stores/search.html.erb | 4 ++-- 3 files changed, 4 insertions(+), 3 deletions(-) diff --git a/app/views/layouts/base_stores.html.erb b/app/views/layouts/base_stores.html.erb index 9d125b251..00760263b 100644 --- a/app/views/layouts/base_stores.html.erb +++ b/app/views/layouts/base_stores.html.erb @@ -2,6 +2,7 @@ + <%= h html_title %> diff --git a/app/views/stores/index.html.erb b/app/views/stores/index.html.erb index d25f865f1..53e75a76a 100644 --- a/app/views/stores/index.html.erb +++ b/app/views/stores/index.html.erb @@ -1,6 +1,6 @@ <% content_for :top_field do%>
- <%= form_tag( search_stores_path, method: 'get') do %> + <%= form_tag( search_stores_path, method: 'post') do %> <%= text_field_tag 'name', nil, size:"100", placeholder:'请输入要搜索的关键字', :class => 'blueinputbar' %> <%= submit_tag l(:label_search), :class => "enterprise"%> <% end %> diff --git a/app/views/stores/search.html.erb b/app/views/stores/search.html.erb index 355a87052..cef781601 100644 --- a/app/views/stores/search.html.erb +++ b/app/views/stores/search.html.erb @@ -1,6 +1,6 @@ <% content_for :top_field do%>
- <%= form_tag( search_stores_path, method: 'get') do %> + <%= form_tag( search_stores_path, method: 'post') do %> <%= text_field_tag 'name', nil, size:"100", placeholder:'请输入要搜索的关键字', :value => params[:name] , :class => 'blueinputbar'%> <%= submit_tag l(:label_search), :class => "enterprise"%> <% end %> @@ -31,4 +31,4 @@ <% end %> - + From 00022ce9fec673d1c9adbc5e9bbf2346abd00b1b Mon Sep 17 00:00:00 2001 From: yanxd Date: Thu, 16 Jan 2014 09:47:50 +0800 Subject: [PATCH 33/43] icon search controller --- app/controllers/stores_controller.rb | 55 ++++++++++++++++-------- app/views/stores/index.html.erb | 2 +- app/views/stores/search.html.erb | 2 +- public/images/button/download.png | Bin 44419 -> 42101 bytes public/images/button/download_focus.png | Bin 43907 -> 42334 bytes 5 files changed, 38 insertions(+), 21 deletions(-) diff --git a/app/controllers/stores_controller.rb b/app/controllers/stores_controller.rb index 251f37cdc..dde7d9e2d 100644 --- a/app/controllers/stores_controller.rb +++ b/app/controllers/stores_controller.rb @@ -25,13 +25,15 @@ class StoresController < ApplicationController LIMIT = 12 unless const_defined?(:LIMIT) def index - @projects_attach = Attachment.includes(:project).where("projects.project_type=? AND projects.is_public = ?", 0, 1). - reorder("#{Attachment.table_name}.downloads DESC"). - limit(LIMIT) + @projects_attach = project_classification(0).take(LIMIT) + @courses_attach = project_classification(1).take(LIMIT) + # @projects_attach = Attachment.includes(:project).where("projects.project_type=? AND projects.is_public = ?", 0, 1). + # reorder("#{Attachment.table_name}.downloads DESC"). + # limit(LIMIT) - @courses_attach = Attachment.includes(:project).where("projects.project_type=? AND projects.is_public = ?", 1, 1). - reorder("#{Attachment.table_name}.downloads DESC"). - limit(LIMIT) + # @courses_attach = Attachment.includes(:project).where("projects.project_type=? AND projects.is_public = ?", 1, 1). + # reorder("#{Attachment.table_name}.downloads DESC"). + # limit(LIMIT) @homeworks_attach = Attachment.where("container_type = 'HomeworkAttach'"). reorder("downloads DESC"). limit(LIMIT) @@ -49,30 +51,45 @@ class StoresController < ApplicationController private def project_classification project_type=0 - pro_attach = Attachment.joins("LEFT JOIN projects ON attachments.container_id = projects.id"). - where("projects.project_type=#{project_type}"). - reorder("downloads DESC"). - limit(LIMIT) + # pro_attach = Attachment.joins("LEFT JOIN projects ON attachments.container_id = projects.id"). + # where("attachments.container_type='Project' AND projects.is_public=1 AND projects.project_type=#{project_type}"). + # reorder("downloads DESC"). + # limit(LIMIT) + pro_attach = join_tools_project Project, project_type doc_attach = join_tools_project Document, project_type issue_attach = join_tools_project Issue, project_type - mess_attach = [] - news_attach = join_tools_project News"news", project_type - vers_attach = join_tools_project Version"versions", project_type - wiki_attach = [] + mess_attach = join_tools_project Message, project_type + news_attach = join_tools_project News, project_type + vers_attach = join_tools_project Version, project_type + wiki_attach = join_tools_project WikiPage, project_type - tmp = pro_attach+doc_attach+issue_attach+mess_attach+news_attach+vers_attach+wiki_attach + tmp = pro_attach + tmp = pro_attach+doc_attach+issue_attach+mess_attach+news_attach+vers_attach+wiki_attach tmp.sort { |a, b| b.downloads <=> a.downloads } end def join_tools_project tableName, project_type=0 Attachment.joins(str_join_table(tableName)). - where("projects.project_type=#{project_type}"). + where("attachments.container_type='#{tableName.to_s}' AND projects.is_public=1 AND projects.project_type=#{project_type}"). reorder('downloads DESC'). limit(LIMIT) end def str_join_table tableClass - str = "LEFT JOIN #{tableClass.table_name} ON attachments.container_id = #{tableClass.table_name}.id - LEFT JOIN projects ON #{tableClass.table_name}.project_id = projects.id" - str + case tableClass.to_s + when 'Project' + "LEFT JOIN projects ON attachments.container_id = projects.id" + when 'Document', 'Issue', 'Version', 'News' # 连接子表即有 project_id 字段,即两层连接 + "LEFT JOIN #{tableClass.table_name} ON attachments.container_id = #{tableClass.table_name}.id + LEFT JOIN projects ON #{tableClass.table_name}.project_id = projects.id" + when 'Message' # 三层连接 + "LEFT JOIN #{tableClass.table_name} ON attachments.container_id = #{tableClass.table_name}.id + LEFT JOIN boards ON boards.id = #{tableClass.table_name}.board_id + LEFT JOIN projects ON boards.project_id = projects.id" + when 'WikiPage'# 三层连接 + "LEFT JOIN #{tableClass.table_name} ON attachments.container_id = #{tableClass.table_name}.id + LEFT JOIN wikis ON wikis.id = #{tableClass.table_name}.wiki_id + LEFT JOIN projects ON wikis.project_id = projects.id" + else + end end end diff --git a/app/views/stores/index.html.erb b/app/views/stores/index.html.erb index 53e75a76a..5b20e5fbc 100644 --- a/app/views/stores/index.html.erb +++ b/app/views/stores/index.html.erb @@ -1,7 +1,7 @@ <% content_for :top_field do%>
<%= form_tag( search_stores_path, method: 'post') do %> - <%= text_field_tag 'name', nil, size:"100", placeholder:'请输入要搜索的关键字', :class => 'blueinputbar' %> + <%= text_field_tag 'name', nil, size:"100", placeholder:'请输入要搜索的关键字', :class => 'blueinputbar', :required => true %> <%= submit_tag l(:label_search), :class => "enterprise"%> <% end %>
diff --git a/app/views/stores/search.html.erb b/app/views/stores/search.html.erb index cef781601..d107ab43a 100644 --- a/app/views/stores/search.html.erb +++ b/app/views/stores/search.html.erb @@ -1,7 +1,7 @@ <% content_for :top_field do%>
<%= form_tag( search_stores_path, method: 'post') do %> - <%= text_field_tag 'name', nil, size:"100", placeholder:'请输入要搜索的关键字', :value => params[:name] , :class => 'blueinputbar'%> + <%= text_field_tag 'name', nil, size:"100", placeholder:'请输入要搜索的关键字', :value => params[:name] , :class => 'blueinputbar', :required => true %> <%= submit_tag l(:label_search), :class => "enterprise"%> <% end %>
diff --git a/public/images/button/download.png b/public/images/button/download.png index d6d6b9ea101241673b83f5fa9bc769d97072c876..af9748df2d2f3a9f63e0ff3b731fa96c6f2d7898 100644 GIT binary patch delta 16437 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 delta 18772 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 delta 18257 zcmb6AbxOleu;A|Q?gY0$a0?P#gS)#7?(XjH?k>SK*o(VEaF@e(?{n+^bMNoe zshXKJ)$>%Zo>jG`rux&pG4>^3=?iJtPk9MMI6OEoFfc?Z$sbCeBi4WCSLn~{V51dZ z9H{~Tb86?Hs^*q?p5bnV@rz*C^k9c3``Zsz%6150z}fl!Als4L0^o}IH618q8;KN(Il+TIi%tFrTdzPU1?l= ze0&XAmL(KtwxGGJDbJkEhlh&?lOFHe1#2?kI|WYLUw>;jH+1l@ z3eDrX7ct{%t}M-A9i76>LuEw?dV1HiaHWR^&-qB$Hu5E3-*a-m^*yG?ro0jAnq(q5 z$+TDWfgnG&)Hhy(4So1=9aK8##vyECh82}}uT_36&AT0N)2(I0{h55PpnXtrudoC< zF&zmzdAwcjO}*K0?wgs^2X~hh5T~Y`c(;vHv$KiR6pHAx&-D47ot;@S!owZzqp#L)Y)g!JO|8G_7j>|VNkmQWuUvrTbH&> z5%}enm?(u`ZL7)`Wj2mW9u=pZM6Mk)0%x`$Pj_Z}8cd-)l5fjCm3 zx4}#}C}b(>DQDtP7ziwR7e6^LWJ;Eg+#L$A5!?o@jOKIh#q!^yQ4&I(=h*>J1k~GZ zbv1 z0D&M1!OuPk0Z6Mz@kfl!iKbJSemng@UUx!nbgboebDno!M%hcI6L(jS z45$cHhlc<(_G|0p2 zVvqd|<|4+s)`dth^D%)So6MX5EW5{e=)L+QI@`PDpY+)UOpv>!{?p#bwMOSjbqS7F)5|aoU+?*QnZnOl zg@PN1q?d;oFqd8e!5*NRl+W>Q_Xd6e6xHbCOUN?Va`Sq|@%=nLV0CA9tCj^l@h@_T zlv`iT6hx$2Rn8%VyP%V>dmob_?_B{FmA8#F5aUCBl_JO$G?p`0tY`YF_~qD9Sv|hi zIm(B8U)GLEO=z@g;~G)U^y(FxkKWq`?ncUIX|#A`I#@iP_#AcY=BYOvPUd+nQC&#$ z8C#?0wylhTc*C+F=?SzFSEIM6x96+UBkJ`Sx1gZ;>;36m$dV?>Zi3XiU|&0#*(gm1 zIM^>TV2`ghpT7d{Ib<9|vguVK>(0#?V`>QWG~ecrO_XI=IEC4%G%F08rfqqhy<2;E zQZd`6Oj9?XVIGx}650gl-SmI<&@@;*9iCF(_mQQVNr*{SHU$(=(W(;`=KI=n{>0SEsk?n=+ z-mvCD+Af8MFlSevrq1O0pb=tSBH1Z?RUea3_GZwVW^Ge^gVcNHe)qUrbp}o(cuO@dhtWJ8|)cq4lC?#Q){u@R@zb~F^H7tF1 zYn(tJQl_K~C3+z?nr(rq!jLy&OfZB}1^B?MEmf31{{*~ctnf8lT%uNOT8y-sI|Af= ztuQEr;u+dIbiF2jgT-M`$|<8w=39ZxBSRSKt)hq>P8W6+mlHVHBEVoh64E9h6BrV7 zjqBl9DnKx>v5>GRB&SyO6BZ^9IgS@yL*?UIL*@B2vo0Fz4E5P9-HsQo)2FJ|fRDBS zPuHr;y?n<&$N6NJvf;AX(wB()tg0^M@yg|58@1q$$#mCp7U=_bQAmud z716Gm{zVN9Fc}q=cF-~Jh+2~eqvlOe#7#+4+hzCBi+{Dx^HdkwSMr)m+6JPk;cH-HG+ZSs&mU>ptiaOvGKj} zD{c+42-4P$xx`;`BR3b5$VggNHj{waJJv|H2Nv8c4(~Jn*|w=!4L?sIFog0;cLZ*M z1DdV@MZ7%h5Ts^4Foju@$C>-E73F5p$0JfN2KLCGz?h&3TcB)k>?BG(uE_n2xq!Zs zGr{A|z5Wnq2jVcO7}J~u=={TaCcOE=WVXU;l`{{|s9a=rC5(rOR0MKV7CuhKO>Fcr z(N9k@(%0S9=LE|ynP=n!JB1HhuB{N9Bl>$UhXpldMFHotUT&61eLsMt!4`edGsN<RZt5%h} zf_Hqik%Xavz3kcvex^qVU2qaLKauiEh9lcJSf~e)YWPIY{C_gqms;csD)3;yT)shp zU9-*h(zjNfu|-0g0!ELg_9j*C#bBcYKQw(e4#3tS5P8EXeMGGrhd@?tW?zXN>%SOt zuEcMPW+6)`h;7RFFNp}}W%oUJTMH#OKw1PRWnMb-y}4=3;9AYAp>o%F9*hVG<9$m5 z_ZKx$JzJ@5l2{gqIgb|Kw|dzXJJM3^Z-=-)C%V8C8DX+h1^!8$?AwPr1;^o=ZsnWE ziibf@fXN>Pk;oUSu^*?_dptqgpbX#>40!tDM|oUY65FkWTro$Iu>a9Mm$Lfc7^fpN zY#yRetI(%fWb-4c`=D!)L2HMxcxAx!86pcnP9cR?y zR|2C&&~l(d0i-H&2&4>iMe6xYa$uo;(2S0WF{BMqbvL%)j-7L+smgn1`IHQBM{RCh z*$=|QK-Kce54NafcD)tQ_?1 z>m|9<_u^TD2y)wN)~w%bUfe&nXl3i9(4@Zrg8|PyDw|nTrwM-b$)2nWbJ)>Jot3k(nXNdqUy2Ltg0i_7+76#k=VE$ zPFy!hJr$cn#wq(pl!ujD*qz(#(k^+u1*?ohDg}^Du1(Hbh`Zj`Xm5jL{e36kGB>z5 zP?TrPj1g;uYT@@L#nxjQfzV%Nad!)rOV>7onY%a)AEhW2%(n@*U772NV;9WswmswI z;?OY{X9F*ga(bQAnr}G?)P}$uIVk@U`TFFqilm3j7uR+43tsVe+ zN*X7Z_>PTad7|hX*2E9!8c^F6=@*Ga$!uQ_>9Yr;;0fA!??A(l2m$A+B#yl;D52bu zJ*nKG^vZsYv2iVI2bl%-?PY_sY2-pR&hP;A60;x?HjXS5v~o({yfKS&iBbt~lH0AW zhBMo=R91Wv+XTJzpR|HTjM?MTRyqN3g9uTfkKg6ofpBY8Te@N*fmmLF_iYKDx|AyR z13E)Z?BboR0Tt|KPSA)Ct*rw^^m%1*z-|0Bu>pBG;%Sa7Nwxz`jEv8W8xa>DLo=|) zo@PvRS;7k$2rU}8tC;xpUr#?~N&ijT8U~GnR<7CjEIq2t-2m8Le04%VCc=ahEZAtZ zw92nohJgI$M={y(FPiKuPow2%!p#BAJ;X+sq2f5Yv!PVGUR(mXxX)F+j@m-#U>0et zL(pQ?>5A#cFF(=ktiT5ZLTn3AMr!~^0>pEO<#w26AuM+WOZwXTuRZ|SCJSRIjlwNV ze^}21&Tv#kT1DuX#_)pu1lF(AENZr~D-I~O=gQc&^N=t%)v)1j0iNa3{v)Q51o{I{ zg+GEN&Mxtw>D*trQGd>k$~&;q5^564Oo)ln5!`$eV(tkE94Zod{3a>GB=-%7xRhW$7d*EEBKBtHYEhL)F4C1Bj}(zQtn90cFur` zTC1)UICGZ0@;Y#b*xlW?sQe7bnq?~P%#NbT$b>pUQhF_dW-<_z6_*x!x63r7(rcRNnK(A zZr}FmhAIk+l%&d#q^c4;t|@T+c#(cjXP?D=ZYC*8MJ8Elx$N;iW(Gh`mFV)4$HzQu z>ilbv)xRrEl;lgfkYn$YqpNSk+be}XK%pD~@Gwm!PQFE*1rAnWW6@&n?%SP6YGPwC zViQmx@X~B$`PWo&BUX96Z4ymQ0nwSxL?a?OH2h(>4l)BUzX6P}RU;{fhDsVPbyGn} zyi6t5AUU#lF5w;tQK${Z!kSj}?N7ky$3a(ULd(0c(-&tSEkDQu$ad zWc%c+Self{Ry)hf;_zg*)C}X3Uy8TgUzXc?*&*8ybZawm0tiZW zt|3`Qy_>U97k!gyM8q!0uS%u8jI<(99OnV5q0ISn`9okyep(Pio8Z);;}pYbxoG z$5CJvpPK_`YXaz{HO&^<3IH^Ca$v^CAf&B|%NWD)MpI|^B0ZB6P`q-;-BQNZwWaNd zl$KEgqHrKIi0Z^V?u_olrAU7%iQ*`Ya_6Q$+5eU_{;9$5V01Nu$`FRbZ2;rkG<3|X zaw7LiSeif|GQOvjUenL88hj@~5h#UzFx}5UPr)pbXa?l5fiO`}ooOY}OcN3DC!a^n z$sZ%ZWAq(qa@(*a2|OT|u%LKyP-FSxw74S?U5F7Eqwp)=qJFVK;+^xJ&)GCspIX&L zL>Q1C4b?$kN#NxUQ+=atHKuluX{Ji6l&V#~(Q?9H*?k5d6a3dL;fHgXr;x!k4cc1X zwNU8AKnJ!b{;cSL`BeOo?*`vo(tLzWhV~o`m;VU%lM7xR%<1u8z1ZdSe!juMRUqZ; zv-P*ZL0kXE)Q%@0*BcaluR_|*31hEa;ICC5HvN02!QsjnWfKis4cB9nX}JXp?9D_RTB~VLy>WkMtp6v zidO)H$Q*j>e?N}MM72P~hyE}^H3x@oPKj*}9jCibR;9#rKQle!;nTG1w+XY~1RC6D zvu|r_Wec_JbA_urti=_o7ZO?_d$}oK1pQbt%|AWN&-gvqA)y=#ZAiXh_9j30Y$bxv zl85M!C%0YEB0fsLNvnQ)KC;!Em1+%wJOWt3J@SHe9-7Q^?;3ff_E`59e<10Z#dLa` z_TO7Yak$;$q&Sm`)K6pxg4p5!0Jc&?`SmMsS0bw7}RhsKx~%4L90Hp&S}V$ z(O~NQOZzT1E5s1l$S9AhQ!Pdsl)WG}CBMqP?WNVv<6Ena9dsK~(0uFEuo~r`_Ydeh zxcn3DWyG*z>XipCu5ETtx3K$@DvIsYQiTp)0_u{fJl*Uh8Q&)VJx>EmD@wP>=(bB-}92bv5AHgs{=xfs~=w`=m;I(A;O5Z+hejve_eg6-A`+#R}_obJfO-#rN{^y zu}ntYC*|mFygE<~w5jPd>8Gf&F%9&dKCHdB{$MVK#b!tnV@m1`;L=|W)P;LcWxy(! z@2pI5=5U?2&}CpVlq@@N(;tmca&*}a{ayn3L3vi>xc>Oxj%fxY_JgS2#b~u_W*R)i1N$)}cGLNlTHnDw5&`wx_>_cb zi%(DRi@}!NoSj=~mR`914WkHjTnHqHHUx&biXD?S6yV$T*XH8`U>`qL&IEC!jvRGY zefrujp~Xqrwi_{OAwBoV31*ew_v*yUyxVP(j0y4LP|ehfw8F{AaYVvdpSgU@Xb*mh z+9>8vu`hkDP**E%y?|E^U>{#YG%N!SMg|KRqcm!(ik*g@SU2L9b1*?*zWVw-Hin8l zNn^GnNIDU-!YQeQdpeV)eR`MNCMPf*J*+W>1gU5*0dt#Mk~yYxwZm!m zbEVM%ef664Ac3CZ?*m^XHs)2o#T--?bTxrX)cQXOymPR)%p2Q8Ac_oc;52R2nDOd& zGYehBtIomAu~y_#&Tt(`ed9RBPfpy9G22G;P#PgW(b);IoIY+9{rF1nH0bQnHbuIO zp!hPbhSP;E9krsB4&)shj_?HXtdwV{=(rCOkG4qoM7AcA5)Pegiq;d~VfoDeI&T4| zM6Tg+S*J`-d&NC;m`{FRzJj;wBzkP%P-x$EJ_)!oz5D`PCB1UixDG6SVk_H9d0$w(0&Il(8q9#O#cccVVp$j-|80$&VFw|;r-QmP{5l($= zCycNQ|7lG&p!qtx2fqCtQgfCB1DYe8z>cGNTUr5J;NED~)OSa)ZU(#(-eL*qtY^ri z1ukvvsc)+Uc>Whzs%&@rYibsebAZuwH#5qS)29lg{)g6d_sMXV6Z1iE48;APUC)w} zY0rwk#j10w;fghjxG0m|VQPejyk{y>dji+}0vF&xQJli%G2P3I)3X%kbP&(h64%{} zeDy7S1Dkr1WOtOG;^8^mTS`wj&rCQ>P6$dO*!t8uicjG_HJKREo9@Az7>Nl@(r-IN zPw_nW^Q@$zM^DjjPx%%6>&Xc#xRGxCpXd^nxoZM50M5@x4xCe+l7PBa@I5b$Xp z|8IV-sJKtHlmE}df3wROeo8O$aodng zg+Y*)3D+K(I)9ek@Z_`B$lG&4n3KUhf|)g5R03qWGJCq(iTM^Xc?Amy;ax*2M=9JE zN@5mvdiN8+1nNMt;e~N0vF1#CKabf`(FQWHPr7D{jl(*gfa!yQSq+!mQhWR&#cWfJ zc@eI8x)t?wO);ar9DMX#z3~&$(znWOD5~kxq2gwGxnsCC9d|*OqPTR>)M|AjMRHg( zy)olh#gHyz#r1WT-a0P7=X=3NrhnY3-5-H|Qqw))bKS+nvjGJ?6VT_ap7{HI4p6MW zmq9v_90t3L|CSxh&lWPXR$$#nE;!i38vHIdb3xZQSKz7t_CeZs?|Tc6yUYIQy|+oq zcKPtytV?RG_h&lstpp}J9Z8FR9vONbu-d_z1!jQL{u~%@aW}PAS6m;@nTY3Fp!K5@ zD7ZuSxKV4Yo=0cu1HsJ+UO-;NIXiMb+uhydc-vo+zigLi`)f4rc<5g|Uqg8uK}`h_ z)sZ+D!@gTB>q)Nr+X}>cZkqbCT~$gv`>pY0h3LkLSFMQ>o8}T*eGpn`Q|V|S9H%ee zpQs0m!S0T#W@OFAkJ)&q&P$BVxcY*C(rFTUG6j==685{<-nyEurUR>SjTgMPfr62@ z!-e?c;1p@yUC1=Vk61`4QTK5Sn>_d*46*)DyBaZj{f{+Y&^ScU2G6~@BjgP!*i3@X zCIzDc>fhWF#4EQ1geU?Zz&j4RgU8>FIkgQ5dMG5O#F4R@-`}->3h!H(9*=8)xK<^~ zJ%M9~bGhg-`8XzbIKRkMR!tn2jQ6Gz##;}0g7$WcSMr*6bf!hWaIyS+PmKE_^@1sE zk$|pN&S8(SUj9&gwVRv!spx)ILGb)lL)_Yv?@=YJZMH)2ND|y>e5?H$TtnL%2i)kR z@k~p+RLv~nZX3vIbZ|pLYuy80$5RxPe|O`!i7vC*PXA>+tNHOAJDj=e?L z6&Y1KF(-bZT+?j6=VJcjpVE9TS=9Lm+WJo;zkJff7d#p=c(Q!|w@PAjok=sRk1K^9 z?qzQW({DwY*!qZU6R=l<{Ok|CrZ$#z2R?;iu8e{dUJqvcLIl-KV2w?H>fxSKi^c%g z*t%)Nwpo@2O>NVoF%9brcxIdH!Qo(wX!br&jUw`I!x>PPGbgY2&`ZxW5NAH9K9k<9 z$6~7)mF-9OBKz$yAz+G3WN z@YW<)H>B84zy9?s=amkaec%Y4z!_ZsdsMpjfZ<(K>KWcM7QaI$NG!IIa3X!JSY9z| z7E12`Eoo;u8m+F>%;FVU?hRi{eg9y3NoyI4+F|;W$>9V3f+xC4dm4L9t9$&iyM=5f zlcHxejyLT`@b$01TYTiI?>k!(L$Z}#h|R>x(fT|i(~e^k!P66f%hUu9`{6_;`_1RE zFZ8~7uQoD;#;oV(xbv3>Mi6~-r%vmtaLRaUjNWb^JJl~0UtZjH%3tC3pxubEqqdRO z6?bp%%V(^=z$a*??)H^iTJG*p!V~stC9U;&h!hFgg?95KnlO2#ddV{d#*kwi!gvj0 zW@8I?w<9?|W`U1e!H?_1%@0J_t8pK}*zK+#Nh+xWe~!-Tmw8=@^1)Xb#>7_&Z>XB^ zoHvRQ#QlD&hBA$ng00eFFn%8&B;V74eQ<@9vOn}MKuWaVma(g5QSQcezb&afyM{|j zdA~Yn8|>V`_1aAshxvHS+I$`WlvWCM=Oh}%DBgY-egKw%_cZB3B5dvTWY!n;VAu5M zFPPh}Vka#`F|wQN@Y zIiLFlPh+@qwsdv(oBqnp4EHhmI}c6q4ZquSu$gz^%1NpoBHl9Rk3__u&OD<6ub55e z6(T^(eGd@3zpvQ*cj&z2XD!m7y+DqUW#(*^|S;a}Rad2lD$K(*f+UOz1VF7xpVr zgRHA(ZmCcXa^WP8`14rGM^}*mF3n~4SVb37DH`zDrl;2~dQ&r)Y}~_Z(fy~Q7V?Ze zuGf=;F6!cq^ywpn{NHfnBaID_*cZ7D zB3-_aE&|JA+2@{KO9nb4@}xgbvMSp;cFZ5!jE8SOmd7m*q3lzh={%m)!AHG(I0t^O z9WnztXJ3nZpW)6LYU%}{$4f+J4*c^ zq|(+tc-pad!j5qCQkhV=jRa%Z$Sf*D+B7^d$X7$IX+e=t9w_ z|G=Ig#k7mg?}U$2PY0$;l2^~0Qwi{l-g{yC72Ua~IeY-$6Znr);wwF)TH9K{J(9`5 zax0hKEJ|YicY%(HLkka%ie~I^AxxlbV>q7x-lzT(k_@@uy>W9ij2{)N6wKr;>UZcd z^VH$0ACi_xg_@)+e9<_DnfU8=z87#hRb(UY_gkInpQ6}$_8$ifq(*}nKvV&$sv%cp z1NYZlS3Dc7ABD8a)31CumRE*&MwMLDD}E!kXajY!rLUg+>AwQQp7Qdi%EbWH2UPnV z!)v7ERXy()%YZuxA;N?|#`Sq?zSE2^6r*0RW}ZIr+AO9#Bp?0c3h)iG5WFHIMKZ~s zOBpDc$WW!&kspk!IVyuov^_vIJeV0z0s?Glhsfx0-*Dm(gum;#!u%`-!ZR_$gy@?98X@NqjMOAV;UCT-*Bdc&>yXU)dGKNXiPfFr)u7OyVo4L z)|3!g-Exky8w9jN@CM0*yseo;U=j5!F82;`5w4ZMkN>)F2q<|eR;C=XY?i!guC=$6 zM_>AuMW{Uw%0EV#_-2ZZtX0M1#;)~1_`2Y9wB%umu28>WFsN2y@P%*Rw6PHFdD|x7 zeto_0-gU)^mm3Yc;|`P8-4I(o7qNx&JVE&ptTUwXavA8?hu6{Ut@nFTe#nO!`8_@h zY9k0>mg{abYYT5TMc|{CvyeX}Vsg0>k2I)i7k!y8r|8vm4q9APJ5uw$*=qzH`8NBg z6lsD}|PWL;aPFlgdTxANp=WC`+Br+KThu^|a9(t1 zt!W=3L(0y=v~b%g?zxjn+AA{aj6=)b*6i?cXm9R{VANafR)B}`(GXMLFqPp%Ip*D+ zYvN6Xv~+Gi(0tqNEpB?|by6~d66`gDrE$6jbu(ShlI(1%L+IS`)ayRwnd&3+J zvjOzYWvfXBZn`gBQM|$yNK1+h1|VJM&cA33S%m!V&Oh#jrR~NSX7!(tijM73PU2B_ zo{OLbgciJnDPiQ;RA7FWR#u}Bs;cFVF6Q!AE^^(=pBp$kqPNwwOSvjJtC~}Xcz9qA z%Rc_Ht{)n1EVaHu-^zvWSsm9*c6KUu|M#Dk7DzY8A4!eR=Bt!?88mdi*X)35ob5D|OzOhSPs zsQmv3Z*yn-xF>Tam7P<0QN`v9T1lo*1^cuIi&)|e1S1U{ljbnU++rJ45>s% zjJ|>pNHa){kh2ycsD8mnh_%4bH-oIXr#P!51Gc|Klk%EvE-Z_-Qr(G+tI%rl$BGAu zn%}Qs{A@RdrmV`rO*Ns!OoCy>GKu?Swr0t=ZdBZ~klDt!26C8U7kzkE%I>jWrYpKF z@(*8LtwN>(pK*d~*eoCY^+}^g`!sj-7ux#8DzXuDcpwS;SW!FsNnn|?8!mo9F{&!N ztWj>77!tbP{``*1hXU(o3bax|OwZtYU`Ffa5r`C7_ddJ=*5FBWvmG~t+K07zP;gk6XD=93K9^E<9DWIQ&AKErI(K>LvNF2$UHakE_#>q-*5 zki}}WOqim|$AKcs4{r22)td?fC69t0yUqwJ<8f}ogrZY#!{e1?WmU2KZ0B z^~Hsu6c?0r6!_SKdgfn5LS{|wM&LL?j1N{QXhXjJBO057#f&m{5M?c~VP? z%tEESq9k4@iV%#$Tee26;uWjTc5bd4yCP<>+Vzk478_^NoX&U`$cmvQC(@4C{po ze0X~AF)f>IOnDc5N(XNwTiQoyvc@u$tD9mv(?)GOLq^xcJiOFO4f{`uKoM@nAYv(; z($+e;Ks><68H8YHQ5Ji926@p=z2+SGT5=1+FTgL7#TwloYW(J6xq#*_t=L)P&@c{6(B}GAggdBbRuAKT%f-#Ck{& z^;eEkew5(Jy-JIv)#vJ}wO5~xCAA%)m?@x)FNt@dY_Q;AtUSS8{v@$7(Lh&`ZHl0% zC{$iz=+`kToEE|J6SndYsmhiO)B_zFS>qOY<8;>A4P9P1{smoi7VFLsp?22y0(P_3 z;UR#KNe5Og>a`#x@#8DL;v>x-HF{_X!Pss*F-P|BBvJ(9ldMS^%xf7EcwQgMwi^az z|4WVCP}!vy6BktY8Wzop!>x3n)*B00TjA**2{i<}&KKeO3bbFC6yv$2j6SFd`M!$? zvOe|Ykg?~v=l@_dpz=|J)j0A;xi{sI&4K|R`b&bPX-Hp96WO}&aTO+sCeMQNkOW#@ z_fIrGu1^Uh7;@6KYdGt8G%rB{B$22YqnaIjz?KbZB{XB?|)60&O2ep+@zD(@m!7F7reIH<+WjhgRUgzw@j82U zw7wm4{y≥Qt4jr6Kx)8^mH0E2UVeZ?X3b+?AM$W+ONH4r4usl`r1@{0;@} z*Opqb7!?nBN6EQ)tTJl1A-LZRL?*Nq5p?@@ewihEa?Wwd7(Mn26uI@GM$;xLc*An} z`s?sfx1l~|y)!A=!-ZR1jU_6*SkxUTSF>bIcI5^QZK1TqS5Z1#7!`IQd4w_qx(JDA1|nX6N>m8yv)t-t zZk-V6uCN{mXNP^eG(cPW=2xomS=yumx@@Wtd_!ey=U2u2pfMvg;UDuwBvP4*oK_sC z)Fplrx?Kar?)yJKi_2rVZ~qXfb)&b5U7;{|UyIf{-J>vgLC!z2w?2|1&KM@7W31Jq zw^3?+7BW-ZtmTYj-moxSl~(`+Glw= zd3UcC!w@~lW0nnJxt?j5A>U2MHmSeRjWUdx0-=R+bd|8UZ>vBJY zs(X~gxB68;N7-Q}sndVm@uNo1g|c((eKFq>DKh`s2U@r1@P3%mgH^6ozl_1543el5 ze3j}}skP;I9Zu1KaaU!?<~6#?&F?r|QR#2P5Hh-n=?(A_2)vY!%m&O^!0Ewsm>^4r zkym1*TaB_)Ln|gJyh-@Y1Z)h??ea8w*l;48S{>cYJ55l7+-rnVt8Sj@UF6pwdaU7Z z?uB-5;P13`!j#O^gbN4lPuP`+OJ3G)ee6q*Y=Nc;xGFX{!gy=ke}oHMGS(%(^zZKd zO%4Hn4{HQ@v&7FFb~eBH1J2usks?O@=Ct~-_ahSA`6aKThEYl{PV02zyc}fYGqut! z7-Hfqff$Cjwy!fv6M4aF`9HEut22N;4|{ea&qu*s3O#}7lrLaE(7qBC#cx(Ju~E|) z#$5?crt!=*KLwBw%bCzM40j{DlPO{4UZZZwD z-J2AJKFe)u9-%?sked+8?_nb1xd`Im_}NyL$sFn!=jz?WiwRNgs<;J8XyF-^ zvGe;hl=}~FsZQN<9)QsGh}a+~x>derjt3H+)B<>dE8r3?Q}m43h-M@|L^&`^vr%H) zNBu0yB64Tk(F}INsBl4+@|fp(R8(u)EOr%a;OYpe>G*LIE3`Wi)jmti=K~(S1OX%; zNV#^(3oyMS=x!+p4#G1{mj7tFI;(iDxR*U~Z$j z!0~fJm4clqJs>#WG5-UiJEz)LODs+cL15Q}=akYcBJ5ZYo*M=3vJxx1BQ1W+(6=K? zAYW(=B|Y`8X0dBXGX3URuLghO>8xQ#qop3=uS%_BZ(LI&sk&!7 zrB}RvSoO97M>J^bP&rLTR{H{`H&fRw7q9x4e}&#$#m8xJ-0d^tzOf(f{SW`E;sH(Z zxZChN(H-tVXBcKS*iZf8!S7kLV%SY=xO%Ov3)SGZV|s7(|NqiSa?`yw<2~15+_ZlR z->~pJk-Vp7c_a=A-gq4w(;RQt92!FbgGO^DhwT0F|9I(AMie{`{xlT5P;=PH@g4g|+$q<1Sgzk5*jXKPVN)C(rbcavs1K9u zZpKId6aE*WlvSo$|0Fa1rEOSYvPJt( zdNcm#|DLJG{6DD<2l>)A0!;>(&$}`-E_qCL&@)S8%EZ)PyR$u_IViarGtSq$ZLfXy zW6~>4@`sb^y-CKP=xDqUX*g^2VcBv8#EbFlT%H{*9zLQq*G@G}U*T;6r*lB*UkI|0 zT$Oo0`tI&Beu;)y7)*j0)^$A(`8r(>TYJ->Gd;KTc=A49w=sy4!m-0avtur?I(9Xw zO{Z)wlDosfYqL{z`&T_3^XAhhy1YMoig|a06aV9dlN-Afvmf~y&Q>3{vchjG-s~Xm zV~F#l<_Zlb-i_ODm6qz;H4FSR?}gDqm{20J_H=e@qcPt#nrdXfR(G+SD0D4K%%cwY z2mJ=~(gq8(Z$8))UIfgcsnMcqx$WhUL5z3{X`Y@r&bEJ&#`P>jTk3>G9c1(MA+Z#= zOiO{^8hblvub|q`mZQQbCd@)b))*#Q=W~gBbqtcU>U9b#H|Z{lLcnq*C3lyHXX8NrA6$u+e7QJ|+vP0}&>ioJ;Gz7g&y06vF%4tYeRcGLr{ zJ(QJh{zpt}fI0F-l$Af;TFBc#`(yN?0*+XFzBA>Mu73k&q4yf>V$wuZ!)!=J&c|5< z#5@dBU#+S(jNJKvBml@hbP*i+?R44F4?e!sRvojyZ?7GJJA{8ywR&j89SR7R#$kpb zwxs|jd+d5u;&%!9HnQVBv_>0ZPhL0OzZ;a6Bw>bVlV9L+V4R4=Slx% zQtG;cuq;8!h(_-lVmCWp)yE^Sss}EFt$cm`(%THveK=a>a!wAq&S_9w{jwp}eIBPX za`p#K-#U;1kX(!Q7A}b+1htFU`wB*F)awBWe?b4kZWX7dy*Ev@V?5wq;|X~11=N?H zUu@s1?q`W#Pey@WwsFZW9JiWPHrw^TtfP8ikrbt!O%-+$%rs*G4-af8OE@tRlXEvm z31`;zVmjB59T=x&lG!jPN?aJo`8Zhn3^3ttu|Q}*-o#5>B!5Bn$8L^~eeKKMl!Y`8 zb1$AzE&3eD{bCcM2hdW!{dY=kQsTM1bYI#+jI^W)wxU_#=+M4ex$Oz|*%@NjIK_am ztoh28C{B+@KK+{cC_ml6fB21+GwWExwBWB==f}${cG~i3bF=)zBkE%&ju3w_eSR=m z3ozY~{NT;VRWf%yjG^VteT`SNSYA*QVMp*cio$Rs@5?HM#72H-?^|j4uKJUUT{39x=vPjqe8x^T=EZn^HwI>RWvH3#wXvy+@y`EnijbHyV*u}ScW2GXifEaVY;<0Uq>r>CSC)T0J*E4>aZ`Mf4RJ10a7 zsz(&yF?RPfo@`@x$AJRR3sMq;xKFb&?r43t#9zvKqM#ptu?*q2x3ed2Z-9=S>al?BN z=Zb<3pp;&B&7~gkUFTZD-vs<59l0_Z3x++#dpg2*qQ8@mgxvoq^S%o7`I(g^na5O94ZGS(G<)*9>ha{rzNUPvywe4pt#kP4!W-Kz!MDLMo}7@T)vG0)lbQWrWo-!7*H;uFZ_Q-CdP15nrh0$U3O z(Y8pL5tu`g7gy-b$Gz)5A*$r}|3RxiJUCn8YcAXLmt`V+2LBeaVjhOwl}`VzVNyCM zmUvqz(2ka3Rcibj5^s7Z;Im|2uC$?QRB216 ze#JM|d#-JQX>+8ntMz9~q|?~LL2uA6vai7pp`+pt@3CY$Asmjc43+z>Hx;Rkc7j%q z*uZ(`2elB7I<^%~>&^=+qhNRjGliIXGYwxjF5Bz?pk~&n@gMMf!;3A}7yA~S!X(z} zRG%!E%P63`r0p3$se5wfd|Z%#}Cgit>20Es;oJ)jrNrAU#BwfTP&7F?nU03 zULtn@H>J-zhhww1)>Y!xe8G#v&ph2*?e1}{5`yKEPb>S)N|Zlq#!ix*W9{bJ_dz5? zf0zNUlBqTFPiDcbunX-pbCZ@O{ z71A>7QJC_;!VU78X0&+T_kXk9^#C7!8TI$O-_F}Q;VC_PRlgf>bo*U1c7vTyDzqj1 z9rI^me&1jnS|SL8@F||yY65S~rev9ow6Fo%aRbFl2qBPd#_e&Z6FJi48Ji}_>ObEF z*lv^hAL1KCLD}3-g1Y4Fe)CH_ur{X}oG~>_UGkvmYp6(EePcZA4wgF5mxUt0qvaYx=Ek4`XR9nNXWMKibY<7`Dz?)CUE)HrFc^=+QfC za@(bYpJ@z3ET%jCU$xx-Khp^S$8nUTd`Vw8jxD-$l`mth7;c#_*PKll@-=2R@@3KH zTfTfqX=ZdRgvyuH=wX=oR;MkJ^~F@aOq1IKt9;*Xk)h1_1MY|W<$iqs4bR8>m3y&W zl8Kod3`2AXYp(H{U?<~bXf^pP&~vGHV_{;JGmAyZ%FVsH%wxvOhk6sx5o&q~?UC^9 zB)+isnQyd~s9%t-2EdHg+eE@%dPCB!59b-iAiMD`>TFs2Pt^IZ(h2-O)X6Z*m6ub_E)Vqt8AieFfSeid{<4X3eYFm{`c7!ID2B+K5V%7sI zvFgq)fH;4(&x4a=+$h_yL;RwsHF%s;xU-5CtuZa?IpAVWobeBkEV)xe4C_^_JAC3TuT4}V|!ZpGn?<~a??zH`zW-EpEm;|lG*m_7zR z{A-(bnAD;9K)aE_&2}TNxyem6R0?**Hi@mAz`lWqGGLnp;`Fps_QXabvFih`6iPr} zD82hU5>Qgwy5q~LwApdPlFD?SCesX4(pbqhre_{sa$N2`x4Ne7S z9D>hHyFj@`bHwbBi0*+Gz{G}z2StF`! z*UE8C4|!iOQX>Kn0d>Qh8fuHW_r|pEzr6^`>+r1pyv77GIQbIG)^)kpS)GUmVthfqJmay>=ZtmszA3cuZPtoomsWCTsQylN6 z)M-(w#a|2zLvG8R9+lhPA&FkNiz&IR&H|jF4pc{GYGQ4Y;o3WrwO+)eP;>#UNp)XH zuKxDV)=S4Ud@qKx2?s*v!xrZn`PRm!ZRYkI#PtLbh<-I(xNNAe$K;Pp0#gPe&(=iAI99h0gB zG`E05qO04IX@O-&|K95XB>@WXnN$;#5|&1;wJ{K-?GRQdhUFZHBkHu zm9E1|IMdw}rI82i9DLD#pAsqdhjDwP<#C6hT*2`}xZR0~`a~Y=4n5(Xa@nIjI?_00 z-b0K4vx&A}uoh;&4t^w!jQH%Z3tUZY@o{W*Th3Q`=AYJ>L$Rr|Bc)3frBhdrU y Date: Thu, 16 Jan 2014 10:17:43 +0800 Subject: [PATCH 34/43] changge --- app/views/stores/search.html.erb | 8 ++++---- public/stylesheets/nyan.css | 7 +++++++ 2 files changed, 11 insertions(+), 4 deletions(-) diff --git a/app/views/stores/search.html.erb b/app/views/stores/search.html.erb index 355a87052..372bf0c1b 100644 --- a/app/views/stores/search.html.erb +++ b/app/views/stores/search.html.erb @@ -14,14 +14,14 @@
- <%= result.filename %> + <%= result.filename %> <%= link_to_attachment result, {:text => "下载"}%>
<%= result.description %> -
所属分类:<%=result_come_from result%> +
所属分类:<%=result_come_from result%> 上传时间:<%= format_time(result.created_on) %>
- 下载:<%= result.downloads%> + 下载:<%= result.downloads%> | 大小:<%= number_to_human_size(result.filesize) %> | 共享者:<%= link_to result.author%>
@@ -29,6 +29,6 @@ - +
<% end %> diff --git a/public/stylesheets/nyan.css b/public/stylesheets/nyan.css index fb4511d47..f1ea5d649 100644 --- a/public/stylesheets/nyan.css +++ b/public/stylesheets/nyan.css @@ -417,6 +417,13 @@ table.content-text-list tbody tr td.locked, div.memo-section .locked{ text-overflow: ellipsis; max-width: 247px; } + + .blue-color, .blue-color a{ + color: rgb(109,153,178); + } + .gray-color, .gray-color a{ + color: rgb(153,153,153); + } #top_field { max-width: 100%; margin: 20px auto; From 5261def716033eab923119f84f99995a45d9f4d4 Mon Sep 17 00:00:00 2001 From: yanxd Date: Thu, 16 Jan 2014 10:19:19 +0800 Subject: [PATCH 35/43] highlight --- app/views/stores/search.html.erb | 48 ++++++++++++++++++++++++++++++++ 1 file changed, 48 insertions(+) diff --git a/app/views/stores/search.html.erb b/app/views/stores/search.html.erb index d107ab43a..23f6312cc 100644 --- a/app/views/stores/search.html.erb +++ b/app/views/stores/search.html.erb @@ -1,3 +1,18 @@ + <% content_for :top_field do%>
<%= form_tag( search_stores_path, method: 'post') do %> @@ -32,3 +47,36 @@ <% end %> + \ No newline at end of file From c4138ffe05913952aa9dbb2c3f69fd9025137309 Mon Sep 17 00:00:00 2001 From: nieguanghui Date: Thu, 16 Jan 2014 10:21:34 +0800 Subject: [PATCH 36/43] changge color --- app/views/stores/search.html.erb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/views/stores/search.html.erb b/app/views/stores/search.html.erb index a992dc9be..1797c2862 100644 --- a/app/views/stores/search.html.erb +++ b/app/views/stores/search.html.erb @@ -29,7 +29,7 @@
- <%= result.filename %> + <%= result.filename %> <%= link_to_attachment result, {:text => "下载"}%>
<%= result.description %> From 52cffd38640e53998e09e5654f36158aba95c405 Mon Sep 17 00:00:00 2001 From: yanxd Date: Thu, 16 Jan 2014 11:04:11 +0800 Subject: [PATCH 37/43] icon --- app/views/stores/search.html.erb | 18 +++++++++++++++--- public/images/button/download.png | Bin 42101 -> 41698 bytes public/images/button/download_focus.png | Bin 42334 -> 41913 bytes 3 files changed, 15 insertions(+), 3 deletions(-) diff --git a/app/views/stores/search.html.erb b/app/views/stores/search.html.erb index 23f6312cc..90828a003 100644 --- a/app/views/stores/search.html.erb +++ b/app/views/stores/search.html.erb @@ -11,6 +11,10 @@ .highlight { padding: 1px 4px; margin: 0 -4px; + filter: alpha(opacity=70); + -moz-opacity: 0.7; + -webkit-opacity: 0.7; + opacity: 0.7; } <% content_for :top_field do%> @@ -30,7 +34,7 @@
<%= result.filename %> - <%= link_to_attachment result, {:text => "下载"}%> + <%= link_to_attachment result, {:text => image_tag("/images/button/download.png", width: "22px", alt: "l(:button_download)", :class => 'download_icon')}%>
<%= result.description %>
所属分类:<%=result_come_from result%> @@ -76,7 +80,15 @@ }); }; $(document).ready(function($) { - $('.cb span').highlight('<%=params[:name]%>') - // $('#main').highlight('<%=params[:name]%>') + $('.cb span').highlight('<%=params[:name]%>'); + + $('.a_download_icon').each(function(){ + $(this).mouseenter(function(event) { + $(this).attr("src", "/images/button/download_focus.png") + }); + $(this).mouseleave(function(event) { + $(this).attr("src", "/images/button/download.png") + }); + }); }); \ No newline at end of file diff --git a/public/images/button/download.png b/public/images/button/download.png index af9748df2d2f3a9f63e0ff3b731fa96c6f2d7898..1588a5af4d9ebabc8496a93deec2fee76fca414f 100644 GIT binary patch delta 15990 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 diff --git a/public/images/button/download_focus.png b/public/images/button/download_focus.png index b1604a04868b984a54d6529f44627df22464dd7c..5bad4fc6b5db0a3e1ad39bfd8330f0ba9360d4bc 100644 GIT binary patch delta 16201 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 delta 16637 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 D_)F76 From bacddf00d96937971286ef4a0fe1973394d2f0e8 Mon Sep 17 00:00:00 2001 From: yanxd Date: Thu, 16 Jan 2014 15:46:09 +0800 Subject: [PATCH 38/43] logo --- app/controllers/stores_controller.rb | 6 +- app/views/stores/search.html.erb | 39 ++--- public/stylesheets/nyan.css | 215 +++++++++++++++------------ 3 files changed, 133 insertions(+), 127 deletions(-) diff --git a/app/controllers/stores_controller.rb b/app/controllers/stores_controller.rb index dde7d9e2d..7e93b012d 100644 --- a/app/controllers/stores_controller.rb +++ b/app/controllers/stores_controller.rb @@ -10,11 +10,11 @@ class StoresController < ApplicationController # 按文件名搜索 result = Attachment.where("attachments.container_type IS NOT NULL AND filename LIKE '%" + name + "%' "). reorder("created_on DESC") - result = result.to_a + # result = result.to_a result.map { |res| if(res.container.nil? || - (res.container.class.to_s.eql?("Project") && res.container.is_public == false) || - (res.container.class.to_s.eql?("HomeworkAttach") && res.container.bid.reward_type == 3) || + (res.container.class.to_s=="Project" && res.container.is_public == false) || + (res.container.class.to_s=="HomeworkAttach" && res.container.bid.reward_type == 3) || false ) result.delete(res) diff --git a/app/views/stores/search.html.erb b/app/views/stores/search.html.erb index 90828a003..7372cc451 100644 --- a/app/views/stores/search.html.erb +++ b/app/views/stores/search.html.erb @@ -1,21 +1,5 @@ - <% content_for :top_field do%>
@@ -33,16 +17,19 @@
- <%= result.filename %> - <%= link_to_attachment result, {:text => image_tag("/images/button/download.png", width: "22px", alt: "l(:button_download)", :class => 'download_icon')}%> + <%= result.filename %> + + <%= link_to_attachment result, {:text => image_tag("/images/button/dl.png", width: "70px", alt: l(:button_download), :class => 'download_icon')}%> +
<%= result.description %> -
所属分类:<%=result_come_from result%> - 上传时间:<%= format_time(result.created_on) %> -
- 下载:<%= result.downloads%> - | 大小:<%= number_to_human_size(result.filesize) %> - | 共享者:<%= link_to result.author%> +
所属分类:<%=result_come_from result%>
+ + 下载:<%= result.downloads%>| + 大小:<%= number_to_human_size(result.filesize) %>| + 共享者:<%= link_to result.author%>| + 上传时间:<%= format_time(result.created_on) %> +
diff --git a/public/stylesheets/nyan.css b/public/stylesheets/nyan.css index fb4511d47..83e2cd9e5 100644 --- a/public/stylesheets/nyan.css +++ b/public/stylesheets/nyan.css @@ -14,13 +14,23 @@ .clear_both{ clear: both; } -.btn_download{ - display: inline-block; - background: url('images/button/download.png') no-repeat transparent; -} -.btn_download a{ - background: url('images/button/download.png') no-repeat transparent; +.highlight { + background-color: #fff34d; + -moz-border-radius: 3px; + -webkit-border-radius: 3px; + border-radius: 3px; + -moz-box-shadow: 0px 1px 2px rgba(0,0,0,0.7); + -webkit-box-shadow: 0px 1px 2px rgba(0,0,0,0.7); + box-shadow: 0px 1px 2px rgba(0,0,0,0.7); + color: #cc0033; + /*padding: 1px 3px;*/ + /*margin: 0 -4px;*/ + filter: alpha(opacity=70); + -moz-opacity: 0.7; + -webkit-opacity: 0.7; + opacity: 0.7; } + * { font-family: Helvetica, Tahoma, Arial, "Microsoft YaHei", "微软雅黑", SimSun, "宋体", STXihei, "华文细黑", Heiti, "黑体", sans-serif; } @@ -369,7 +379,7 @@ table.content-text-list tbody tr td.locked, div.memo-section .locked{ } /* stores 资源库 *******************************************************************************/ - .line_block{ +.line_block { display: inline-block; width: 49%; margin: 10px auto; @@ -378,94 +388,103 @@ table.content-text-list tbody tr td.locked, div.memo-section .locked{ -webkit-box-sizing: border-box; -moz-box-sizing: border-box; -box-sizing: border-box; - } - .resource_sum{ - height: auto; - } - .line_block p{ - margin: 1em 0px auto; - /*background: linear-gradient(#ffffff, #e5e5e5) repeat scroll 0% 0% transparent;*/ - border-bottom: 1px solid rgb(226,226,226); - border-top-left-radius : 6px; - border-top-right-radius : 6px; - box-shadow: 0px 1px 0px white, 0px, -1px 0px rgb(245,245,245); - height: 39px; - font-size: 15px; - line-height: 26px; - height: 30px; - font-size: 1.5em; - padding-left: 4%; - border-bottom: 1px solid rgb(21, 165, 200); - } - .resource_sum, .line_blo{ - border: 1px solid #eeeeee; - } - .line_block table{ - border: 1px solid #eeeeee; - } - .line_block table thead tr{ - /*background-color: #d1d1d1;*/ - text-align: center; - } - .line_block table td{ - height: 2em; - } - .filename { - - overflow: hidden; - white-space: nowrap; - text-overflow: ellipsis; - max-width: 247px; - } - #top_field { - max-width: 100%; - margin: 20px auto; - } - /*.filename a:after { - content: "..."; - }*/ - .blueinputbar{ - -o-transform-origin: 138px 46.5px; - -o-transition: background 0.2s cubic-bezier(0, 0, 1, 1); - -webkit-border-bottom-left-radius: 3px; - -webkit-border-bottom-right-radius: 3px; - -webkit-border-radius: 3px; - -webkit-border-top-left-radius: 3px; - -webkit-border-top-right-radius: 3px; - -webkit-transform-origin: 138px 46.5px; - -webkit-transition: background 0.2s cubic-bezier(0, 0, 1, 1); - -webkit-transition-delay: 0; - -webkit-transition-duration: 0.2s; - -webkit-transition-property: background; - -webkit-transition-timing-function: cubic-bezier(0, 0, 1, 1); - align-content: stretch; - align-items: stretch; - align-self: stretch; - background: #FFFFFF; - border-bottom: 1px solid #56B4EF; - border-left: 1px solid #56B4EF; - border-radius: 3px; - border-right: 1px solid #56B4EF; - border-top: 1px solid #56B4EF; - color: #333333; - justify-content: flex-start; - margin: 0px; - order: 0; - outline: #333333 0px; - overflow-wrap: break-word; - resize: none; - text-shadow: none; - transform-origin: 138px 46.5px; - transition: background 0.2s cubic-bezier(0, 0, 1, 1); - unicode-bidi: embed; - vertical-align: top; - word-wrap: break-word; - } - input.blueinputbar:focus { - box-shadow: rgba(0, 0, 0, 0.047) 0px 1px 3px 0px inset, rgba(82, 168, 236, 0.600) 0px 0px 5px 0px; - border-bottom: 1px solid #56B4EF; - border-left: 1px solid #56B4EF; - border-radius: 3px; - border-right: 1px solid #56B4EF; - border-top: 1px solid #56B4EF; - } \ No newline at end of file +} +.resource_sum{ + height: auto; +} +.line_block p{ + margin: 1em 0px auto; + /*background: linear-gradient(#ffffff, #e5e5e5) repeat scroll 0% 0% transparent;*/ + border-bottom: 1px solid rgb(226,226,226); + border-top-left-radius : 6px; + border-top-right-radius : 6px; + box-shadow: 0px 1px 0px white, 0px, -1px 0px rgb(245,245,245); + height: 39px; + font-size: 15px; + line-height: 26px; + height: 30px; + font-size: 1.5em; + padding-left: 4%; + border-bottom: 1px solid rgb(21, 165, 200); +} +.resource_sum, .line_blo{ + border: 1px solid #eeeeee; +} +.line_block table{ + border: 1px solid #eeeeee; +} +.line_block table thead tr{ + /*background-color: #d1d1d1;*/ + text-align: center; +} +.line_block table td{ + height: 2em; +} +.filename { + + overflow: hidden; + white-space: nowrap; + text-overflow: ellipsis; + max-width: 247px; +} +#top_field { + max-width: 100%; + margin: 20px auto; +} +.blueinputbar{ + -o-transform-origin: 138px 46.5px; + -o-transition: background 0.2s cubic-bezier(0, 0, 1, 1); + -webkit-border-bottom-left-radius: 3px; + -webkit-border-bottom-right-radius: 3px; + -webkit-border-radius: 3px; + -webkit-border-top-left-radius: 3px; + -webkit-border-top-right-radius: 3px; + -webkit-transform-origin: 138px 46.5px; + -webkit-transition: background 0.2s cubic-bezier(0, 0, 1, 1); + -webkit-transition-delay: 0; + -webkit-transition-duration: 0.2s; + -webkit-transition-property: background; + -webkit-transition-timing-function: cubic-bezier(0, 0, 1, 1); + align-content: stretch; + align-items: stretch; + align-self: stretch; + background: #FFFFFF; + border-bottom: 1px solid #56B4EF; + border-left: 1px solid #56B4EF; + border-radius: 3px; + border-right: 1px solid #56B4EF; + border-top: 1px solid #56B4EF; + color: #333333; + justify-content: flex-start; + margin: 0px; + order: 0; + outline: #333333 0px; + overflow-wrap: break-word; + resize: none; + text-shadow: none; + transform-origin: 138px 46.5px; + transition: background 0.2s cubic-bezier(0, 0, 1, 1); + unicode-bidi: embed; + vertical-align: top; + word-wrap: break-word; +} +input.blueinputbar:focus { + box-shadow: rgba(0, 0, 0, 0.047) 0px 1px 3px 0px inset, rgba(82, 168, 236, 0.600) 0px 0px 5px 0px; + border-bottom: 1px solid #56B4EF; + border-left: 1px solid #56B4EF; + border-radius: 3px; + border-right: 1px solid #56B4EF; + border-top: 1px solid #56B4EF; +} +.r1 { + font-size:13px; + line-height: 1.7em; + overflow-wrap: break-word; + padding-bottom: 20px; + padding-left: 20px; + /*width: 50em;*/ +} +.r1 .cb { + font-size: 16px; + color: #3333cc; +} \ No newline at end of file From 7dfea1233703a4ea2f3194df399e739d120c2328 Mon Sep 17 00:00:00 2001 From: yanxd Date: Thu, 16 Jan 2014 15:54:05 +0800 Subject: [PATCH 39/43] remove empty div --- app/views/stores/search.html.erb | 1 - 1 file changed, 1 deletion(-) diff --git a/app/views/stores/search.html.erb b/app/views/stores/search.html.erb index 6753c446e..730eb4d7b 100644 --- a/app/views/stores/search.html.erb +++ b/app/views/stores/search.html.erb @@ -35,7 +35,6 @@ -
<% end %>