Module: C80AlbumGallery::C80AlbumGalleryApplicationHelper

Defined in:
app/helpers/c80_album_gallery/c80_album_gallery_application_helper.rb

Instance Method Summary collapse

Instance Method Details

TODO

негибко: а что делать, если мне нужен иной путь в host приложеии, не portfolio?



5
6
7
# File 'app/helpers/c80_album_gallery/c80_album_gallery_application_helper.rb', line 5

def my_url_for_gallery(gallery)
  "#{root_url}portfolio/#{gallery.id}"
end

выдать список обложек галерей, снабжённых title, при клике ведущих на просмотр галереи 2. Галереи берутся в порядке def_order 3. С помощью css_klass можно регулировать количество элементов в ряду. 4. С помощью css_list_klass можно кастомизировать внеший вид списка. 5. С помощью thumb_size можно регулировать размер картинки



100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
# File 'app/helpers/c80_album_gallery/c80_album_gallery_application_helper.rb', line 100

def render_gallery_list(      css_list_klass='style_1',
                              css_item_klass='col-lg-4 col-md-4 col-sm-6 col-xs-6',
                              thumb_size='thumb_md')

  galleries_list = Gallery.all.def_order

  w = C80AlbumGallery::Prop.first.send("#{thumb_size}_width")
  h = C80AlbumGallery::Prop.first.send("#{thumb_size}_height")
  w_style = "width:#{w}px"
  h_style = "height:#{h}px"
  # wh_style = "#{w_style};#{h_style}"

  render :partial => 'c80_album_gallery/gallery_list',
         :locals => {
             list: galleries_list,
             css_list_klass: css_list_klass,
             css_item_klass: css_item_klass,
             thumb_size: thumb_size,
             w_style: w_style,
             h_style: h_style
         }

end

выдать список обложек галерей, снабжённых title, при клике ведущих на просмотр галери



10
11
12
13
14
15
16
17
18
19
# File 'app/helpers/c80_album_gallery/c80_album_gallery_application_helper.rb', line 10

def render_gallery_list_old

  v = Gallery.all

  render :partial => 'c80_album_gallery/flow_galleries',
         :locals => {
             list:v
         }

end

выдать список обложек галерей, снабжённых title, при клике ведущих на просмотр галери

  1. Под список фиксируется count позиций: если галереи для какой-то позиции не нашлось - будет выведена серая болванка (которая будет как бы намекать "дружок, тут должно быть что-то согласно макету, загрузи недостающие элементы")
  2. Галереи берутся в порядке def_order, затем случайным образом перемешиваются, затем уже вставляются во VIEW.
  3. С помощью css_klass можно регулировать количество элементов в ряду.
  4. С помощью css_list_klass можно кастомизировать внеший вид списка.
  5. С помощью thumb_size можно регулировать размер картинки


65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
# File 'app/helpers/c80_album_gallery/c80_album_gallery_application_helper.rb', line 65

def render_gallery_list_slots(count=3,
                              css_list_klass='style_1',
                              css_item_klass='col-lg-4 col-md-4 col-sm-6 col-xs-6',
                              thumb_size='thumb_md')

  # извлечём нужное количество альбомов (нужно помнить, что нужного количества может и не набраться)
  galleries = Gallery.all.def_order.limit(count).order('rand()')

  # предварительно подготовим список к рендеру
  list = []
  count.times do |i|
    gallery = galleries[i]
    if gallery.present?
      list << gallery
    else
      list << Gallery.new({ title: "Слот #{i}", tag: "slot_#{i}" })
    end
  end

  render :partial => 'c80_album_gallery/flow_galleries_slots',
         :locals => {
             list: list,
             count: count,
             css_list_klass: css_list_klass,
             css_item_klass: css_item_klass,
             thumb_size: thumb_size
         }

end


33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
# File 'app/helpers/c80_album_gallery/c80_album_gallery_application_helper.rb', line 33

def render_view_gallery_page(gallery,
                             css_list_klass='style_1',
                             css_item_klass='col-lg-4 col-md-4 col-sm-6 col-xs-6',
                             thumb_size='thumb_md')

  list = gallery.gphotos

  w = C80AlbumGallery::Prop.first.send("#{thumb_size}_width")
  h = C80AlbumGallery::Prop.first.send("#{thumb_size}_height")
  w_style = "width:#{w}px"
  h_style = "height:#{h}px"
  # wh_style = "#{w_style};#{h_style}"

  render :partial => 'c80_album_gallery/gallery_view_page',
         :locals => {
             list: list,
             css_list_klass: css_list_klass,
             css_item_klass: css_item_klass,
             thumb_size: thumb_size,
             w_style: w_style,
             h_style: h_style,
             gallery_title: gallery.title
         }

end

отрендерить "внутренности" галереи: т.е. открыть на просмотр фото



22
23
24
25
26
27
28
29
30
31
# File 'app/helpers/c80_album_gallery/c80_album_gallery_application_helper.rb', line 22

def render_view_gallery_page_old(gallery,perrow=3)

  render :partial => 'c80_album_gallery/gallery',
         :locals => {
             :gallery => gallery,
             :perrow => perrow,
             :gtag => gallery.id
         }

end