c80_news 0.1.0.11 → 0.1.0.12

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: de13e0bc3a1f20519899b157fbabbf2cc56948e7
4
- data.tar.gz: 0d52a37680d717feabe4c67711485f6b94127e41
3
+ metadata.gz: 100cce9ae05213c510c94a3f627953df8d16a2d1
4
+ data.tar.gz: e3bd28704e957118f4ceb2d3a2fdcd93a9fb7a8b
5
5
  SHA512:
6
- metadata.gz: 0a630380ce62add26ee78c830d974beb6b4554d81af7525e2439d4db06f64a30a8bea1a6ef0a465a81edbd35e96c70c46d27ad741db47e368d91760e0776d508
7
- data.tar.gz: 0896990aa87c254d4008a4112dce5e0427b20c7cbdd6243184fedd9cee22a300f1343eb763433bdad247d75d5dae0394052eded6ae732038e7989d3cc29950fd
6
+ metadata.gz: c231c4ad019c4864344f561a590dfc8fea823ec2440415933fecfbf1c1a5d3037b9659563ec14681756be77e156de9e7833200a0b02dc548039d85f7f112349e
7
+ data.tar.gz: 3096a130e04c191c5338d617739067619f223440a588e38155e804567062aa66d363ce7b0ab4c2048688501249d880c867c738f772dd831f770e75f422d5532b
data/README.md CHANGED
@@ -65,6 +65,9 @@ $ grep c80_news . -r --include=Gemfile
65
65
  ```
66
66
  render_news_block
67
67
  render_one_fact
68
+
69
+ render_news_block(false, params[:page], {:partial_name => 'fact_inverted', :thumb_size => 'thumb_preview', :css_class_news_block => 'style_photostudio'})
70
+ render_news_block(true, params[:page], {:partial_name => 'fact_inverted', :thumb_size => 'thumb_md', :css_class_news_block => 'style_photostudio'})
68
71
  ```
69
72
 
70
73
  ## Development
@@ -9,7 +9,7 @@ var fNewsStartWillPaginateAjax;
9
9
  var fNewsProcessBlocks; // при клике по preview-картинке новости будет происходить переход на просмотр новости
10
10
 
11
11
  $(function () {
12
- if ($(".news_block").length) {
12
+ if ($('.news_block[data-is_render_paginator="true"]').length) {
13
13
 
14
14
  fNewsBindHistoryAdapter = function () {
15
15
  History.Adapter.bind(window,'statechange',function(){ // Note: We are using statechange instead of popstate
@@ -48,7 +48,7 @@ $(function () {
48
48
 
49
49
  fNewsProccessPaginateLinks = function () {
50
50
  //console.log("fNewsProccessPaginateLinks");
51
- $(".div_will_paginate a").click(function (e) {
51
+ $(".news_block .div_will_paginate a").click(function (e) {
52
52
  e.preventDefault();
53
53
  var page = $(this).attr('href').split("?page=")[1];
54
54
  History.pushState({page:page},window.document.title,"?page="+page);
@@ -56,7 +56,7 @@ $(function () {
56
56
  };
57
57
 
58
58
  fNewsStartWillPaginateAjax = function () {
59
- if ($(".div_will_paginate a").length > 0) {
59
+ if ($(".news_block .div_will_paginate a").length > 0) {
60
60
  fNewsProccessPaginateLinks();
61
61
  fNewsBindHistoryAdapter();
62
62
  }
@@ -18,6 +18,10 @@ div.news_block {
18
18
  max-width: 100%;
19
19
  }
20
20
 
21
+ &.clear_left {
22
+ clear: left;
23
+ }
24
+
21
25
  }
22
26
 
23
27
  &.per_row_3 {
@@ -0,0 +1,65 @@
1
+ div.ajax_div {
2
+
3
+ div.div_will_paginate {
4
+ width: 100%;
5
+ clear: both;
6
+ float: left;
7
+ padding: 0 46px;
8
+
9
+ .pagination {
10
+ margin: 0;
11
+
12
+ span {
13
+ &.previous_page {
14
+ display: none;
15
+ }
16
+ &.next_page {
17
+ display: none;
18
+ }
19
+ }
20
+
21
+ em {
22
+
23
+ display: inline-block;
24
+ line-height: 29px;
25
+ width: 30px;
26
+ height: 30px;
27
+
28
+ text-align: center;
29
+ font-weight: bold !important;
30
+ font-style: normal !important;
31
+
32
+ border: 1px solid #B6B6B6;
33
+ background-color: #E9353B;
34
+ color:#ffffff;
35
+
36
+ }
37
+
38
+ a {
39
+ display: inline-block;
40
+ line-height: 29px;
41
+ width: 30px;
42
+ height: 30px;
43
+
44
+ border: 1px solid #B6B6B6;
45
+ background-color: #ffffff;
46
+ color:#777777;
47
+ text-align: center;
48
+ font-weight: bold !important;
49
+
50
+ text-decoration: none;
51
+ &:hover, &:active, &:focus { text-decoration: none !important; color: black; }
52
+
53
+ &.previous_page {
54
+ display: none;
55
+ }
56
+ &.next_page {
57
+ display: none;
58
+ }
59
+
60
+ }
61
+ }
62
+
63
+ }
64
+
65
+ }
@@ -25,26 +25,31 @@ module C80News
25
25
 
26
26
  news = Fact.paginate(:page => page, :per_page => per_page)
27
27
 
28
+ is_render_paginator = options[:is_render_paginator].present? \
29
+ ? options[:is_render_paginator] \
30
+ : is_news_page
31
+
28
32
  render :partial => "shared/news_block",
29
33
  :locals => {
30
34
  :news_list => news,
31
35
  :is_news_page => is_news_page,
32
36
  :per_block_row => per_block_row,
33
37
  :partial_name => options[:partial_name],
34
- :is_render_paginator => options[:is_render_paginator],
38
+ :is_render_paginator => is_render_paginator,
35
39
  :thumb_size => options[:thumb_size],
36
- :css_class_news_block => css_class_news_block
40
+ :css_class_news_block => css_class_news_block,
41
+ :h3_title => options[:h3_title]
37
42
  }
38
43
  end
39
44
 
40
- def render_one_fact(fact, partial_name='fact',thumb_size='thumb_md')
45
+ def render_one_fact(fact, partial_name='fact', thumb_size='thumb_md', additional_css_class=nil)
41
46
 
42
47
 
43
48
  unless thumb_size.present?
44
49
  thumb_size = 'thumb_md'
45
50
  end
46
51
 
47
- Rails.logger.debug "[TRACE] <render_one_fact> thumb_size: #{thumb_size}"
52
+ # Rails.logger.debug "[TRACE] <render_one_fact> thumb_size: #{thumb_size}"
48
53
 
49
54
  # свойства модуля
50
55
  p = Prop.first
@@ -58,7 +63,8 @@ module C80News
58
63
  fact: fact,
59
64
  css_common_width_height: "width:#{w}px;height:#{h}px",
60
65
  css_common_width: "width:#{w}px;",
61
- thumb_size:thumb_size
66
+ thumb_size:thumb_size,
67
+ additional_css_class:additional_css_class
62
68
  }
63
69
  end
64
70
 
@@ -66,5 +72,26 @@ module C80News
66
72
  "/news/#{fact.slug}"
67
73
  end
68
74
 
75
+ # метод добавлен, чтобы сократить количество символов в строке, которую надо вставить в
76
+ # 256-символьное структурное поле Страницы (Page) типа after_main (в админке), чтобы отрендерить новостной виджет
77
+ def render_news_widget(css_class_news_block='style_default',
78
+ partial_name='fact_inverted',
79
+ thumb_size='thumb_preview',
80
+ h3_title=' '
81
+ )
82
+
83
+ if h3_title == ' '
84
+ h3_title = I18n.t('c80_news.news_widget.h3_title')
85
+ end
86
+
87
+ render_news_block(false, params[:page], {
88
+ :partial_name => partial_name,
89
+ :thumb_size => thumb_size,
90
+ :css_class_news_block => css_class_news_block,
91
+ :h3_title => h3_title
92
+ }
93
+ )
94
+ end
95
+
69
96
  end
70
97
  end
@@ -1,4 +1,4 @@
1
- var $cc = $(".ajax_div").parent();
1
+
2
2
  var html_str = "<%= j render_news_block(true,params[:page], {
3
3
  :partial_name => params[:partial_name],
4
4
  :is_render_paginator => params[:is_render_paginator],
@@ -6,10 +6,10 @@ var html_str = "<%= j render_news_block(true,params[:page], {
6
6
  })
7
7
  %>";
8
8
 
9
- $('.ajax_div').remove();
10
- $cc.prepend(html_str); <%# TODO_MY:: параметризировать: либо apprend, либо prepend %>
9
+ var $aa = $('.news_block[data-is_render_paginator="true"]');
10
+ $aa.replaceWith(html_str);
11
11
 
12
- Holder.run(".ajax_div img");
12
+ Holder.run($aa.find("img"));
13
13
  fLazyStart();
14
14
 
15
15
  fNewsProccessPaginateLinks();
@@ -1,4 +1,4 @@
1
- <div class="fact">
1
+ <div class="fact <%=additional_css_class%>">
2
2
  <%= render_image_link_lazy({
3
3
  :alt_image => fact.title,
4
4
  :image => fact.send(thumb_size),
@@ -1,3 +1,6 @@
1
+ <% if h3_title.present? %>
2
+ <h3 class="section_title h3_for_news_block"><%= h3_title %></h3>
3
+ <% end %>
1
4
  <div class="ajax_div news_block <%= css_class_news_block %>"
2
5
  data-partial_name="<%= partial_name %>"
3
6
  data-css_class_news_block="<%= css_class_news_block %>"
@@ -1,7 +1,11 @@
1
1
  <div class="news_list clearfix per_row_<%=per_row%>">
2
- <% news_list.each do |fact| %>
2
+ <% news_list.each_with_index do |fact, index| %>
3
3
 
4
- <%= render_one_fact(fact, partial_name, thumb_size).to_s %>
4
+ <%# чтобы не было такого https://dl.dropboxusercontent.com/u/1365807/work/sokol/tx/2016-11-05_165449_news_clear.jpg %>
5
+ <% clear_left_css_class = index % per_row == 0 ? 'clear_left':'' %>
6
+ <% clear_left_css_class += " index_#{index}" %>
7
+
8
+ <%= render_one_fact(fact, partial_name, thumb_size, clear_left_css_class.to_s).to_s %>
5
9
 
6
10
  <% end %>
7
11
  </div>
@@ -0,0 +1,4 @@
1
+ ru:
2
+ c80_news:
3
+ news_widget:
4
+ h3_title: 'Новости'
@@ -1,3 +1,3 @@
1
1
  module C80News
2
- VERSION = "0.1.0.11"
2
+ VERSION = "0.1.0.12"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: c80_news
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0.11
4
+ version: 0.1.0.12
5
5
  platform: ruby
6
6
  authors:
7
7
  - C80609A
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2016-10-10 00:00:00.000000000 Z
11
+ date: 2016-11-14 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -116,6 +116,7 @@ files:
116
116
  - app/assets/stylesheets/c80_news.scss
117
117
  - app/assets/stylesheets/c80_news/_mixins/style_photostudio.scss
118
118
  - app/assets/stylesheets/c80_news/news_block.scss
119
+ - app/assets/stylesheets/c80_news/will_paginate.scss
119
120
  - app/controllers/c80_news/application_controller.rb
120
121
  - app/helpers/c80_news/application_helper.rb
121
122
  - app/models/c80_news/fact.rb
@@ -132,6 +133,7 @@ files:
132
133
  - bin/console
133
134
  - bin/setup
134
135
  - c80_news.gemspec
136
+ - config/locales/ru.yml
135
137
  - config/routes.rb
136
138
  - db/migrate/20151213202020_create_news_fact.rb
137
139
  - db/migrate/20151213203030_create_news_fphotos.rb