dash_creator 0.1.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (96) hide show
  1. checksums.yaml +7 -0
  2. data/MIT-LICENSE +20 -0
  3. data/README.md +170 -0
  4. data/Rakefile +36 -0
  5. data/app/assets/config/dash_creator_manifest.js +2 -0
  6. data/app/assets/javascripts/dash_creator/application.js +24 -0
  7. data/app/assets/javascripts/dash_creator/chart.js +2 -0
  8. data/app/assets/javascripts/dash_creator/dashboard.js +2 -0
  9. data/app/assets/javascripts/dash_creator/dashboard_object.js +2 -0
  10. data/app/assets/javascripts/dash_creator/filter.js +2 -0
  11. data/app/assets/javascripts/dash_creator/libs/Chart.js +12269 -0
  12. data/app/assets/javascripts/dash_creator/libs/bootstrap.js +3535 -0
  13. data/app/assets/javascripts/dash_creator/libs/chartCreator.js +1582 -0
  14. data/app/assets/javascripts/dash_creator/libs/dashboardCreator.js +531 -0
  15. data/app/assets/javascripts/dash_creator/libs/daterangepicker.js +1626 -0
  16. data/app/assets/javascripts/dash_creator/libs/filterCreator.js +733 -0
  17. data/app/assets/javascripts/dash_creator/libs/jquery-ui.js +18706 -0
  18. data/app/assets/javascripts/dash_creator/libs/jquery.minicolors.js +1108 -0
  19. data/app/assets/javascripts/dash_creator/libs/moment.js +4301 -0
  20. data/app/assets/javascripts/dash_creator/libs/tether.js +1811 -0
  21. data/app/assets/javascripts/dash_creator/user.js +2 -0
  22. data/app/assets/stylesheets/dash_creator/application.css +16 -0
  23. data/app/assets/stylesheets/dash_creator/chart.css +4 -0
  24. data/app/assets/stylesheets/dash_creator/dashboard.css +4 -0
  25. data/app/assets/stylesheets/dash_creator/dashboard_object.css +4 -0
  26. data/app/assets/stylesheets/dash_creator/filter.css +4 -0
  27. data/app/assets/stylesheets/dash_creator/fonts/FontAwesome.otf +0 -0
  28. data/app/assets/stylesheets/dash_creator/fonts/fontawesome-webfont.eot +0 -0
  29. data/app/assets/stylesheets/dash_creator/fonts/fontawesome-webfont.svg +2671 -0
  30. data/app/assets/stylesheets/dash_creator/fonts/fontawesome-webfont.ttf +0 -0
  31. data/app/assets/stylesheets/dash_creator/fonts/fontawesome-webfont.woff +0 -0
  32. data/app/assets/stylesheets/dash_creator/fonts/fontawesome-webfont.woff2 +0 -0
  33. data/app/assets/stylesheets/dash_creator/libs/font-awesome.css +2199 -0
  34. data/app/assets/stylesheets/dash_creator/libs/jquery.minicolors.css +319 -0
  35. data/app/assets/stylesheets/dash_creator/libs/jquery.minicolors.png +0 -0
  36. data/app/assets/stylesheets/dash_creator/libs/style.css +13714 -0
  37. data/app/assets/stylesheets/dash_creator/user.css +4 -0
  38. data/app/controllers/dash_creator/application_controller.rb +3 -0
  39. data/app/controllers/dash_creator/chart_controller.rb +81 -0
  40. data/app/controllers/dash_creator/dashboard_controller.rb +37 -0
  41. data/app/controllers/dash_creator/dashboard_object_controller.rb +34 -0
  42. data/app/controllers/dash_creator/filter_controller.rb +60 -0
  43. data/app/controllers/dash_creator/user_controller.rb +82 -0
  44. data/app/helpers/dash_creator/application_helper.rb +4 -0
  45. data/app/helpers/dash_creator/chart_helper.rb +829 -0
  46. data/app/helpers/dash_creator/dashboard_helper.rb +4 -0
  47. data/app/helpers/dash_creator/dashboard_object_helper.rb +4 -0
  48. data/app/helpers/dash_creator/filter_helper.rb +237 -0
  49. data/app/helpers/dash_creator/user_helper.rb +4 -0
  50. data/app/jobs/dash_creator/application_job.rb +4 -0
  51. data/app/mailers/dash_creator/application_mailer.rb +6 -0
  52. data/app/models/dash_creator/application_record.rb +5 -0
  53. data/app/models/dash_creator/chart.rb +21 -0
  54. data/app/models/dash_creator/dashboard.rb +13 -0
  55. data/app/models/dash_creator/dashboard_object.rb +7 -0
  56. data/app/models/dash_creator/filter.rb +22 -0
  57. data/app/views/dash_creator/chart/_chart_creator.html.erb +230 -0
  58. data/app/views/dash_creator/chart/_modals.html.erb +74 -0
  59. data/app/views/dash_creator/chart/_plot_chart.html.erb +45 -0
  60. data/app/views/dash_creator/chart/create_chart.js.erb +53 -0
  61. data/app/views/dash_creator/dashboard/_dashboard_creator.html.erb +182 -0
  62. data/app/views/dash_creator/dashboard/_modals.html.erb +74 -0
  63. data/app/views/dash_creator/dashboard_object/_chart.html.erb +9 -0
  64. data/app/views/dash_creator/dashboard_object/_stat.html.erb +24 -0
  65. data/app/views/dash_creator/dashboard_object/_table.html.erb +16 -0
  66. data/app/views/dash_creator/filter/_filtering_card.html.erb +132 -0
  67. data/app/views/dash_creator/filter/_modals.html.erb +51 -0
  68. data/app/views/dash_creator/filter/_result_tables.html.erb +55 -0
  69. data/app/views/dash_creator/filter/apply_filtering.js.erb +46 -0
  70. data/app/views/dash_creator/filter/create_stat.js.erb +20 -0
  71. data/app/views/dash_creator/layouts/application.html.erb +64 -0
  72. data/app/views/dash_creator/layouts/menu/_left_menu.html.erb +12 -0
  73. data/app/views/dash_creator/user/_section_card.html.erb +17 -0
  74. data/app/views/dash_creator/user/creator.html.erb +11 -0
  75. data/app/views/dash_creator/user/dashboard.html.erb +10 -0
  76. data/config/initializers/dash_creator.rb +0 -0
  77. data/config/routes.rb +30 -0
  78. data/lib/dash_creator.rb +87 -0
  79. data/lib/dash_creator/acts_as_dash_creator.rb +16 -0
  80. data/lib/dash_creator/acts_as_dashboard_object.rb +19 -0
  81. data/lib/dash_creator/engine.rb +11 -0
  82. data/lib/dash_creator/version.rb +3 -0
  83. data/lib/generators/dash_creator/install/install_generator.rb +70 -0
  84. data/lib/generators/dash_creator/install/templates/_chart.html.erb +9 -0
  85. data/lib/generators/dash_creator/install/templates/_section_card.html.erb +17 -0
  86. data/lib/generators/dash_creator/install/templates/_stat.html.erb +24 -0
  87. data/lib/generators/dash_creator/install/templates/_table.html.erb +16 -0
  88. data/lib/generators/dash_creator/install/templates/add_indexes_to_dash_creator_tables.rb +15 -0
  89. data/lib/generators/dash_creator/install/templates/create_dash_creator_charts.rb +25 -0
  90. data/lib/generators/dash_creator/install/templates/create_dash_creator_dashboard_objects.rb +36 -0
  91. data/lib/generators/dash_creator/install/templates/create_dash_creator_dashboards.rb +28 -0
  92. data/lib/generators/dash_creator/install/templates/create_dash_creator_filters.rb +22 -0
  93. data/lib/generators/dash_creator/install/templates/dashboard.html.erb +10 -0
  94. data/lib/generators/dash_creator/install/templates/initializer.rb +48 -0
  95. data/lib/tasks/dash_creator_tasks.rake +4 -0
  96. metadata +196 -0
@@ -0,0 +1,10 @@
1
+ <div class="animated fadeIn" style="margin: 50px 20px 0px 20px;">
2
+ <h1 class="text-center"><%= @dashboard.name %></h1>
3
+ <div class="row" style="margin-top: 20px;">
4
+ <% unless @dashboard.options.empty? || @dashboard.options.nil? %>
5
+ <% @dashboard.options.each do |index, section| %>
6
+ <%= render 'section_card', {section: section} %>
7
+ <% end %>
8
+ <% end %>
9
+ </div>
10
+ </div>
@@ -0,0 +1,48 @@
1
+ DashCreator.configure do |config|
2
+ # # Check dash_creator README for further information
3
+
4
+ # Use pgcrypto extension or not for DashCreator model ids
5
+ config.use_pgcrypto = true
6
+
7
+ # Use redis to store charts data (to avoid heavy refreshing each time)
8
+ # Set it to nil if you do not use redis or if you do not want charts data to be stored
9
+ $redis = Redis::Namespace.new("app_chart_cache", :redis => Redis.new)
10
+ config.redis_store_variable = $redis
11
+
12
+ # The name of the class the filters, charts and dashboards belong to
13
+ config.user_class = 'User'
14
+
15
+ # Array of the names of the models you do not want to use in DashCreator
16
+ config.except_models = %w(DashCreator::Filter DashCreator::Chart DashCreator::Dashboard DashCreator::DashboardObject)
17
+
18
+ # Array of the names (such as they are in database) of the attributes you do not want to use in DashCreator
19
+ # TODO: make it per model ?
20
+ config.except_attributes = %w(id password_digest)
21
+
22
+ # The name aliases of the attributes from DB to model name
23
+ # Ex owned_by: 'user_id'
24
+ config.attributes_aliases = {
25
+
26
+ }
27
+
28
+ # The column name aliases of the attributes from Rails to DB
29
+ # Ex owner_id: 'owned_by'
30
+ config.columns_aliases = {
31
+
32
+ }
33
+
34
+ # Change displayed names for models
35
+ # Ex Egg: 'Milk'
36
+ config.displayed_model_names = {
37
+
38
+ }
39
+
40
+ # Change displayed names for attributes for each model
41
+ # Ex User: { bday: 'Date of birth', child_id: 'Kid' }
42
+ config.displayed_attribute_names = {
43
+
44
+ }
45
+
46
+ # Define creator page layout giving its path
47
+ config.layout_path = 'dash_creator/layouts/application'
48
+ end
@@ -0,0 +1,4 @@
1
+ # desc "Explaining what the task does"
2
+ # task :dash_creator do
3
+ # # Task goes here
4
+ # end
metadata ADDED
@@ -0,0 +1,196 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: dash_creator
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.1.2
5
+ platform: ruby
6
+ authors:
7
+ - Elie Oriol
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2017-08-31 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: rails
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - "~>"
18
+ - !ruby/object:Gem::Version
19
+ version: '5.1'
20
+ type: :runtime
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - "~>"
25
+ - !ruby/object:Gem::Version
26
+ version: '5.1'
27
+ - !ruby/object:Gem::Dependency
28
+ name: jquery-rails
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - "~>"
32
+ - !ruby/object:Gem::Version
33
+ version: '4.3'
34
+ type: :runtime
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - "~>"
39
+ - !ruby/object:Gem::Version
40
+ version: '4.3'
41
+ - !ruby/object:Gem::Dependency
42
+ name: redis
43
+ requirement: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - "~>"
46
+ - !ruby/object:Gem::Version
47
+ version: '3.3'
48
+ type: :runtime
49
+ prerelease: false
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - "~>"
53
+ - !ruby/object:Gem::Version
54
+ version: '3.3'
55
+ - !ruby/object:Gem::Dependency
56
+ name: redis-namespace
57
+ requirement: !ruby/object:Gem::Requirement
58
+ requirements:
59
+ - - "~>"
60
+ - !ruby/object:Gem::Version
61
+ version: '1.5'
62
+ type: :runtime
63
+ prerelease: false
64
+ version_requirements: !ruby/object:Gem::Requirement
65
+ requirements:
66
+ - - "~>"
67
+ - !ruby/object:Gem::Version
68
+ version: '1.5'
69
+ description: DashCreator is a client-side dashboard creator gem. It can be used with
70
+ any database to create filters, charts and dashboards of your own with a graphical
71
+ interface.
72
+ email:
73
+ - elie@mailbutler.io
74
+ executables: []
75
+ extensions: []
76
+ extra_rdoc_files: []
77
+ files:
78
+ - MIT-LICENSE
79
+ - README.md
80
+ - Rakefile
81
+ - app/assets/config/dash_creator_manifest.js
82
+ - app/assets/javascripts/dash_creator/application.js
83
+ - app/assets/javascripts/dash_creator/chart.js
84
+ - app/assets/javascripts/dash_creator/dashboard.js
85
+ - app/assets/javascripts/dash_creator/dashboard_object.js
86
+ - app/assets/javascripts/dash_creator/filter.js
87
+ - app/assets/javascripts/dash_creator/libs/Chart.js
88
+ - app/assets/javascripts/dash_creator/libs/bootstrap.js
89
+ - app/assets/javascripts/dash_creator/libs/chartCreator.js
90
+ - app/assets/javascripts/dash_creator/libs/dashboardCreator.js
91
+ - app/assets/javascripts/dash_creator/libs/daterangepicker.js
92
+ - app/assets/javascripts/dash_creator/libs/filterCreator.js
93
+ - app/assets/javascripts/dash_creator/libs/jquery-ui.js
94
+ - app/assets/javascripts/dash_creator/libs/jquery.minicolors.js
95
+ - app/assets/javascripts/dash_creator/libs/moment.js
96
+ - app/assets/javascripts/dash_creator/libs/tether.js
97
+ - app/assets/javascripts/dash_creator/user.js
98
+ - app/assets/stylesheets/dash_creator/application.css
99
+ - app/assets/stylesheets/dash_creator/chart.css
100
+ - app/assets/stylesheets/dash_creator/dashboard.css
101
+ - app/assets/stylesheets/dash_creator/dashboard_object.css
102
+ - app/assets/stylesheets/dash_creator/filter.css
103
+ - app/assets/stylesheets/dash_creator/fonts/FontAwesome.otf
104
+ - app/assets/stylesheets/dash_creator/fonts/fontawesome-webfont.eot
105
+ - app/assets/stylesheets/dash_creator/fonts/fontawesome-webfont.svg
106
+ - app/assets/stylesheets/dash_creator/fonts/fontawesome-webfont.ttf
107
+ - app/assets/stylesheets/dash_creator/fonts/fontawesome-webfont.woff
108
+ - app/assets/stylesheets/dash_creator/fonts/fontawesome-webfont.woff2
109
+ - app/assets/stylesheets/dash_creator/libs/font-awesome.css
110
+ - app/assets/stylesheets/dash_creator/libs/jquery.minicolors.css
111
+ - app/assets/stylesheets/dash_creator/libs/jquery.minicolors.png
112
+ - app/assets/stylesheets/dash_creator/libs/style.css
113
+ - app/assets/stylesheets/dash_creator/user.css
114
+ - app/controllers/dash_creator/application_controller.rb
115
+ - app/controllers/dash_creator/chart_controller.rb
116
+ - app/controllers/dash_creator/dashboard_controller.rb
117
+ - app/controllers/dash_creator/dashboard_object_controller.rb
118
+ - app/controllers/dash_creator/filter_controller.rb
119
+ - app/controllers/dash_creator/user_controller.rb
120
+ - app/helpers/dash_creator/application_helper.rb
121
+ - app/helpers/dash_creator/chart_helper.rb
122
+ - app/helpers/dash_creator/dashboard_helper.rb
123
+ - app/helpers/dash_creator/dashboard_object_helper.rb
124
+ - app/helpers/dash_creator/filter_helper.rb
125
+ - app/helpers/dash_creator/user_helper.rb
126
+ - app/jobs/dash_creator/application_job.rb
127
+ - app/mailers/dash_creator/application_mailer.rb
128
+ - app/models/dash_creator/application_record.rb
129
+ - app/models/dash_creator/chart.rb
130
+ - app/models/dash_creator/dashboard.rb
131
+ - app/models/dash_creator/dashboard_object.rb
132
+ - app/models/dash_creator/filter.rb
133
+ - app/views/dash_creator/chart/_chart_creator.html.erb
134
+ - app/views/dash_creator/chart/_modals.html.erb
135
+ - app/views/dash_creator/chart/_plot_chart.html.erb
136
+ - app/views/dash_creator/chart/create_chart.js.erb
137
+ - app/views/dash_creator/dashboard/_dashboard_creator.html.erb
138
+ - app/views/dash_creator/dashboard/_modals.html.erb
139
+ - app/views/dash_creator/dashboard_object/_chart.html.erb
140
+ - app/views/dash_creator/dashboard_object/_stat.html.erb
141
+ - app/views/dash_creator/dashboard_object/_table.html.erb
142
+ - app/views/dash_creator/filter/_filtering_card.html.erb
143
+ - app/views/dash_creator/filter/_modals.html.erb
144
+ - app/views/dash_creator/filter/_result_tables.html.erb
145
+ - app/views/dash_creator/filter/apply_filtering.js.erb
146
+ - app/views/dash_creator/filter/create_stat.js.erb
147
+ - app/views/dash_creator/layouts/application.html.erb
148
+ - app/views/dash_creator/layouts/menu/_left_menu.html.erb
149
+ - app/views/dash_creator/user/_section_card.html.erb
150
+ - app/views/dash_creator/user/creator.html.erb
151
+ - app/views/dash_creator/user/dashboard.html.erb
152
+ - config/initializers/dash_creator.rb
153
+ - config/routes.rb
154
+ - lib/dash_creator.rb
155
+ - lib/dash_creator/acts_as_dash_creator.rb
156
+ - lib/dash_creator/acts_as_dashboard_object.rb
157
+ - lib/dash_creator/engine.rb
158
+ - lib/dash_creator/version.rb
159
+ - lib/generators/dash_creator/install/install_generator.rb
160
+ - lib/generators/dash_creator/install/templates/_chart.html.erb
161
+ - lib/generators/dash_creator/install/templates/_section_card.html.erb
162
+ - lib/generators/dash_creator/install/templates/_stat.html.erb
163
+ - lib/generators/dash_creator/install/templates/_table.html.erb
164
+ - lib/generators/dash_creator/install/templates/add_indexes_to_dash_creator_tables.rb
165
+ - lib/generators/dash_creator/install/templates/create_dash_creator_charts.rb
166
+ - lib/generators/dash_creator/install/templates/create_dash_creator_dashboard_objects.rb
167
+ - lib/generators/dash_creator/install/templates/create_dash_creator_dashboards.rb
168
+ - lib/generators/dash_creator/install/templates/create_dash_creator_filters.rb
169
+ - lib/generators/dash_creator/install/templates/dashboard.html.erb
170
+ - lib/generators/dash_creator/install/templates/initializer.rb
171
+ - lib/tasks/dash_creator_tasks.rake
172
+ homepage: https://rubygems.org/gems/dash_creator
173
+ licenses:
174
+ - MIT
175
+ metadata: {}
176
+ post_install_message:
177
+ rdoc_options: []
178
+ require_paths:
179
+ - lib
180
+ required_ruby_version: !ruby/object:Gem::Requirement
181
+ requirements:
182
+ - - ">="
183
+ - !ruby/object:Gem::Version
184
+ version: '0'
185
+ required_rubygems_version: !ruby/object:Gem::Requirement
186
+ requirements:
187
+ - - ">="
188
+ - !ruby/object:Gem::Version
189
+ version: '0'
190
+ requirements: []
191
+ rubyforge_project:
192
+ rubygems_version: 2.5.1
193
+ signing_key:
194
+ specification_version: 4
195
+ summary: DashCreator is a client-side dashboard creator gem.
196
+ test_files: []