refinerycms-registrations 0.1.1 → 0.1.2
Sign up to get free protection for your applications and to get access to all the features.
- data/app/assets/images/refinery/race_registrations/xls.gif +0 -0
- data/app/assets/javascripts/refinery/race_registrations/race_registrations.js +2 -0
- data/app/controllers/refinery/race_registrations/registrations_controller.rb +5 -0
- data/app/models/refinery/race_registrations/registration.rb +8 -0
- data/app/views/refinery/race_registrations/admin/categories/_category.html.erb +1 -4
- data/app/views/refinery/race_registrations/admin/groups/_group.html.erb +1 -4
- data/app/views/refinery/race_registrations/people/_form.html.erb +1 -1
- data/app/views/refinery/race_registrations/registrations/_registration.html.erb +6 -1
- data/app/views/refinery/race_registrations/registrations/show.xls.erb +75 -0
- data/config/initializers/refinery/core.rb +1 -0
- data/config/locales/en.yml +2 -0
- data/config/locales/es.yml +1 -0
- data/config/locales/fr.yml +1 -0
- data/config/locales/nb.yml +1 -0
- data/config/locales/nl.yml +1 -0
- data/config/locales/sk.yml +2 -0
- data/lib/refinery/registrations/engine.rb +1 -0
- data/readme.md +5 -0
- metadata +4 -2
Binary file
|
@@ -22,6 +22,11 @@ module Refinery
|
|
22
22
|
# you can use meta fields from your model instead (e.g. browser_title)
|
23
23
|
# by swapping @page for @registration in the line below:
|
24
24
|
present(@page)
|
25
|
+
|
26
|
+
respond_to do |format|
|
27
|
+
format.html
|
28
|
+
format.xls
|
29
|
+
end
|
25
30
|
end
|
26
31
|
|
27
32
|
protected
|
@@ -12,6 +12,14 @@ module Refinery
|
|
12
12
|
|
13
13
|
acts_as_indexed :fields => [:title, :locality]
|
14
14
|
|
15
|
+
def self.to_csv(options = {})
|
16
|
+
CSV.generate(options) do |csv|
|
17
|
+
csv << column_names
|
18
|
+
all.each do |product|
|
19
|
+
csv << product.attributes.values_at(*column_names)
|
20
|
+
end
|
21
|
+
end
|
22
|
+
end
|
15
23
|
|
16
24
|
|
17
25
|
validates :title, :presence => true, :uniqueness => true
|
@@ -4,10 +4,7 @@
|
|
4
4
|
|
5
5
|
</span>
|
6
6
|
<span class='actions'>
|
7
|
-
|
8
|
-
<%= link_to refinery_icon_tag("application_go.png"), refinery.race_registrations_category_path(category),
|
9
|
-
:title => t('.view_live_html'),
|
10
|
-
:target => "_blank" %>
|
7
|
+
|
11
8
|
|
12
9
|
<%= link_to refinery_icon_tag("application_edit.png"), refinery.edit_race_registrations_admin_category_path(category),
|
13
10
|
:title => t('.edit') %>
|
@@ -4,10 +4,7 @@
|
|
4
4
|
|
5
5
|
</span>
|
6
6
|
<span class='actions'>
|
7
|
-
|
8
|
-
<%= link_to refinery_icon_tag("application_go.png"), refinery.race_registrations_group_path(group),
|
9
|
-
:title => t('.view_live_html'),
|
10
|
-
:target => "_blank" %>
|
7
|
+
|
11
8
|
|
12
9
|
<%= link_to refinery_icon_tag("application_edit.png"), refinery.edit_race_registrations_admin_group_path(group),
|
13
10
|
:title => t('.edit') %>
|
@@ -1,7 +1,7 @@
|
|
1
1
|
<%= render :partial=>"form_header" %>
|
2
2
|
<%#TODO club autocomplete %>
|
3
3
|
|
4
|
-
<%= form_for [refinery, :race_registrations, @person] do |f| -%>
|
4
|
+
<%= form_for [refinery, :race_registrations, @person], :validate=>false do |f| -%>
|
5
5
|
<%= render '/refinery/admin/error_messages',
|
6
6
|
:object => @person,
|
7
7
|
:include_object_name => true %><br/>
|
@@ -2,7 +2,12 @@
|
|
2
2
|
<h2><%= @registration.title %></h2>
|
3
3
|
<h3><%= @registration.locality %> <%= @registration.race_date.strftime("%d.%m.%Y") %></h3>
|
4
4
|
|
5
|
-
<p><%= t('.number_of_registered_people') %> <%= @registration.people.count %></p>
|
5
|
+
<p style="float: left;"><%= t('.number_of_registered_people') %> <%= @registration.people.count %></p>
|
6
|
+
|
7
|
+
<p style="float: right;">
|
8
|
+
<%= link_to image_tag('refinery/race_registrations/xls.gif') << t('.download') << ' ' , refinery.race_registrations_registration_path(@registration, format: "xls") %>
|
9
|
+
</p>
|
10
|
+
<p style="clear:both;"></p>
|
6
11
|
|
7
12
|
|
8
13
|
<%= render :partial => '/refinery/message' %>
|
@@ -0,0 +1,75 @@
|
|
1
|
+
<?xml version="1.0"?>
|
2
|
+
<Workbook xmlns="urn:schemas-microsoft-com:office:spreadsheet"
|
3
|
+
xmlns:o="urn:schemas-microsoft-com:office:office"
|
4
|
+
xmlns:x="urn:schemas-microsoft-com:office:excel"
|
5
|
+
xmlns:ss="urn:schemas-microsoft-com:office:spreadsheet"
|
6
|
+
xmlns:html="http://www.w3.org/TR/REC-html40">
|
7
|
+
<Worksheet ss:Name="Sheet1">
|
8
|
+
|
9
|
+
|
10
|
+
<Table>
|
11
|
+
<Row>
|
12
|
+
<Cell><Data ss:Type="String">
|
13
|
+
<b><%= @registration.title %></b>
|
14
|
+
</Data>
|
15
|
+
</Cell>
|
16
|
+
</Row>
|
17
|
+
<Row>
|
18
|
+
<Cell><Data ss:Type="String">
|
19
|
+
<B><%= @registration.locality %> <%= @registration.race_date.strftime("%d.%m.%Y") %></B>
|
20
|
+
</Data>
|
21
|
+
</Cell>
|
22
|
+
</Row>
|
23
|
+
<Row>
|
24
|
+
<Cell><Data ss:Type="String">
|
25
|
+
<B><%= t('refinery.race_registrations.registrations.registration.number_of_registered_people') %> <%= @registration.people.count %></B>
|
26
|
+
</Data>
|
27
|
+
</Cell>
|
28
|
+
</Row>
|
29
|
+
|
30
|
+
|
31
|
+
<% @registration.categories.each do |category| %>
|
32
|
+
<% people_in_category = @registration.people.in_category(category.id, sort_column(), sort_direction() ) %>
|
33
|
+
|
34
|
+
<% if people_in_category.count > 0 %>
|
35
|
+
|
36
|
+
<Row>
|
37
|
+
<Cell><Data ss:Type="String"><B><%= category.title %></B></Data></Cell>
|
38
|
+
</Row>
|
39
|
+
<Row>
|
40
|
+
<Cell><Data ss:Type="String"><%= t('activerecord.attributes.refinery/race_registrations/person.num') %></Data></Cell>
|
41
|
+
<Cell><Data ss:Type="String"><%= t('activerecord.attributes.refinery/race_registrations/person.surname') %></Data></Cell>
|
42
|
+
<Cell><Data ss:Type="String"><%= t('activerecord.attributes.refinery/race_registrations/person.name') %></Data></Cell>
|
43
|
+
<Cell><Data ss:Type="String"><%= t('activerecord.attributes.refinery/race_registrations/person.country') %></Data></Cell>
|
44
|
+
<Cell><Data ss:Type="String"><%= t('activerecord.attributes.refinery/race_registrations/person.birth_date') %></Data></Cell>
|
45
|
+
<Cell><Data ss:Type="String"><%= t('activerecord.attributes.refinery/race_registrations/person.club') %></Data></Cell>
|
46
|
+
<Cell><Data ss:Type="String"><%= t('activerecord.attributes.refinery/race_registrations/person.city') %></Data></Cell>
|
47
|
+
<Cell><Data ss:Type="String"><%= t('activerecord.attributes.refinery/race_registrations/person.created_at') %></Data></Cell>
|
48
|
+
</Row>
|
49
|
+
|
50
|
+
<% people_in_category.each_with_index do |person,index| %>
|
51
|
+
<Row>
|
52
|
+
<Cell><Data ss:Type="String"><%= index + 1 %></Data></Cell>
|
53
|
+
<Cell><Data ss:Type="String"><%= person.surname %></Data></Cell>
|
54
|
+
<Cell><Data ss:Type="String"><%= person.name %></Data></Cell>
|
55
|
+
<Cell><Data ss:Type="String"><%= person.country %></Data></Cell>
|
56
|
+
<Cell><Data ss:Type="String"><%= person.birth_date %></Data></Cell>
|
57
|
+
<Cell><Data ss:Type="String"><%= person.club %></Data></Cell>
|
58
|
+
<Cell><Data ss:Type="String"><%= person.city %></Data></Cell>
|
59
|
+
<Cell><Data ss:Type="String"><%= person.created_at.strftime("%d.%m.%Y %H:%M") %></Data></Cell>
|
60
|
+
</Row>
|
61
|
+
<% end %>
|
62
|
+
|
63
|
+
<% end %>
|
64
|
+
<Row>
|
65
|
+
<Cell>
|
66
|
+
<Data ss:Type="String">
|
67
|
+
|
68
|
+
</Data>
|
69
|
+
</Cell>
|
70
|
+
</Row>
|
71
|
+
<% end %>
|
72
|
+
</Table>
|
73
|
+
</Worksheet>
|
74
|
+
</Workbook>
|
75
|
+
|
@@ -4,5 +4,6 @@ Refinery::Core.configure do |config|
|
|
4
4
|
|
5
5
|
#Register extra stylesheet for backend (optional options)
|
6
6
|
config.register_stylesheet "refinery/race_registrations/admin/race_registrations.css"
|
7
|
+
config.register_stylesheet "refinery/race_registrations/admin/sortable_table.css"
|
7
8
|
end
|
8
9
|
|
data/config/locales/en.yml
CHANGED
@@ -102,6 +102,7 @@ en:
|
|
102
102
|
other: Other People
|
103
103
|
registrations:
|
104
104
|
registration:
|
105
|
+
download: "Download"
|
105
106
|
number_of_registered_people: "Number of registered people:"
|
106
107
|
sorry_no_registrations: 'Sorry, no registration found.'
|
107
108
|
registration_chooser:
|
@@ -116,6 +117,7 @@ en:
|
|
116
117
|
refinery/race_registrations/category:
|
117
118
|
title: Title
|
118
119
|
refinery/race_registrations/person:
|
120
|
+
num: Num
|
119
121
|
id: ID
|
120
122
|
name: Name
|
121
123
|
surname: Surname
|
data/config/locales/es.yml
CHANGED
data/config/locales/fr.yml
CHANGED
data/config/locales/nb.yml
CHANGED
data/config/locales/nl.yml
CHANGED
data/config/locales/sk.yml
CHANGED
@@ -103,6 +103,7 @@ sk:
|
|
103
103
|
other: Daľšie osoby
|
104
104
|
registrations:
|
105
105
|
registration:
|
106
|
+
download: "Stiahnuť"
|
106
107
|
number_of_registered_people: 'Priebežne zaregistrovaných jazdcov:'
|
107
108
|
sorry_no_registrations: 'Ľutujeme, hľadaná registrácia sa nenašla.'
|
108
109
|
registration_chooser:
|
@@ -118,6 +119,7 @@ sk:
|
|
118
119
|
refinery/race_registrations/category:
|
119
120
|
title: Názov
|
120
121
|
refinery/race_registrations/person:
|
122
|
+
num: P.č.
|
121
123
|
id: ID
|
122
124
|
name: Meno
|
123
125
|
surname: Priezvisko
|
data/readme.md
CHANGED
@@ -69,6 +69,11 @@ If you don't have Chosen JS included in your backend yet, append this code to yo
|
|
69
69
|
config.register_stylesheet "refinery/race_registrations/admin/chosen.css"
|
70
70
|
```
|
71
71
|
|
72
|
+
To config/initializers/mime_types add:
|
73
|
+
```
|
74
|
+
Mime::Type.register "application/xls", :xls
|
75
|
+
```
|
76
|
+
|
72
77
|
Before production, don't forget to precompile assets by:
|
73
78
|
|
74
79
|
```ruby
|
metadata
CHANGED
@@ -2,14 +2,14 @@
|
|
2
2
|
name: refinerycms-registrations
|
3
3
|
version: !ruby/object:Gem::Version
|
4
4
|
prerelease:
|
5
|
-
version: 0.1.
|
5
|
+
version: 0.1.2
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
8
8
|
- Martin Markech
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date:
|
12
|
+
date: 2013-01-29 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
type: :runtime
|
@@ -79,6 +79,7 @@ files:
|
|
79
79
|
- app/assets/images/refinery/race_registrations/admin/chosen-sprite.png
|
80
80
|
- app/assets/images/refinery/race_registrations/down_arrow.png
|
81
81
|
- app/assets/images/refinery/race_registrations/up_arrow.png
|
82
|
+
- app/assets/images/refinery/race_registrations/xls.gif
|
82
83
|
- app/assets/javascripts/refinery/race_registrations/admin/race_registrations.js
|
83
84
|
- app/assets/javascripts/refinery/race_registrations/admin/jquery.chosen.min.js
|
84
85
|
- app/assets/javascripts/refinery/race_registrations/race_registrations.js
|
@@ -129,6 +130,7 @@ files:
|
|
129
130
|
- app/views/refinery/race_registrations/categories/index.html.erb
|
130
131
|
- app/views/refinery/race_registrations/categories/show.html.erb
|
131
132
|
- app/views/refinery/race_registrations/registrations/show.html.erb
|
133
|
+
- app/views/refinery/race_registrations/registrations/show.xls.erb
|
132
134
|
- app/views/refinery/race_registrations/registrations/_registration_chooser.html.erb
|
133
135
|
- app/views/refinery/race_registrations/registrations/_registration.html.erb
|
134
136
|
- app/views/refinery/race_registrations/groups/index.html.erb
|