fanforce-app-factory 1.7.1 → 2.0.0.rc1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (206) hide show
  1. checksums.yaml +7 -0
  2. data/.ruby-version +1 -1
  3. data/.yardopts +5 -0
  4. data/.yardopts.rb +1 -0
  5. data/Gemfile +10 -1
  6. data/README.md +12 -12
  7. data/Rakefile +8 -3
  8. data/apps.json +787 -0
  9. data/fanforce-app-factory.gemspec +4 -5
  10. data/lib/fanforce/app_factory.rb +15 -52
  11. data/lib/fanforce/app_factory/Rakefile +59 -0
  12. data/lib/fanforce/app_factory/app.rb +50 -0
  13. data/lib/fanforce/app_factory/asset_framework/app_factory/_bootstrap.scss +2 -0
  14. data/lib/fanforce/app_factory/asset_framework/app_factory/_common.scss +1 -0
  15. data/lib/fanforce/app_factory/asset_framework/app_factory/_directives.scss +7 -0
  16. data/lib/fanforce/app_factory/asset_framework/app_factory/_font-awesome.scss +1 -0
  17. data/lib/fanforce/app_factory/asset_framework/app_factory/_ui-select.scss +3 -0
  18. data/lib/fanforce/app_factory/{assets/lib/common → asset_framework/app_factory/bootstrap}/_bootstrap-overrides.scss +2 -0
  19. data/lib/fanforce/app_factory/{assets/lib/vendors/bootstrap/css → asset_framework/app_factory/bootstrap}/bootstrap.css +2 -2
  20. data/lib/fanforce/app_factory/{assets/lib/vendors/bootstrap/js → asset_framework/app_factory/bootstrap}/bootstrap.js +0 -0
  21. data/lib/fanforce/app_factory/asset_framework/app_factory/bootstrap/bootstrap.min.css +7 -0
  22. data/lib/fanforce/app_factory/{assets/lib/vendors/bootstrap/js → asset_framework/app_factory/bootstrap}/bootstrap.min.js +0 -0
  23. data/lib/fanforce/app_factory/{assets/lib/vendors/bootstrap/fonts → asset_framework/app_factory/bootstrap}/glyphicons-halflings-regular.eot +0 -0
  24. data/lib/fanforce/app_factory/{assets/lib/vendors/bootstrap/fonts → asset_framework/app_factory/bootstrap}/glyphicons-halflings-regular.svg +0 -0
  25. data/lib/fanforce/app_factory/{assets/lib/vendors/bootstrap/fonts → asset_framework/app_factory/bootstrap}/glyphicons-halflings-regular.ttf +0 -0
  26. data/lib/fanforce/app_factory/{assets/lib/vendors/bootstrap/fonts → asset_framework/app_factory/bootstrap}/glyphicons-halflings-regular.woff +0 -0
  27. data/lib/fanforce/app_factory/{assets/lib → asset_framework/app_factory}/common/_mixins.scss +0 -0
  28. data/lib/fanforce/app_factory/asset_framework/app_factory/directives.coffee +1 -0
  29. data/lib/fanforce/app_factory/asset_framework/app_factory/directives/error/_error.scss +6 -0
  30. data/lib/fanforce/app_factory/{assets/lib/common/module-error → asset_framework/app_factory/directives/error}/arrow-left.png +0 -0
  31. data/lib/fanforce/app_factory/{assets/lib/common/module-error → asset_framework/app_factory/directives/error}/icon-error.png +0 -0
  32. data/lib/fanforce/app_factory/asset_framework/app_factory/directives/initiative-footer/_initiative-footer.coffee +16 -0
  33. data/lib/fanforce/app_factory/{assets/lib/common/_module-add-initiative-footer.scss → asset_framework/app_factory/directives/initiative-footer/_initiative-footer.scss} +4 -1
  34. data/lib/fanforce/app_factory/{assets/lib/common/_module-initiative-searcher.scss → asset_framework/app_factory/directives/initiative-searcher/_initiative-searcher.scss} +6 -6
  35. data/lib/fanforce/app_factory/{assets/lib/common/module-initiative-searcher → asset_framework/app_factory/directives/initiative-searcher}/icon-search.png +0 -0
  36. data/lib/fanforce/app_factory/{assets/lib/common/module-initiative-searcher → asset_framework/app_factory/directives/initiative-searcher}/spinner.gif +0 -0
  37. data/lib/fanforce/app_factory/{assets/lib/common/module-initiative-searcher → asset_framework/app_factory/directives/initiative-searcher}/sprite-arrows.png +0 -0
  38. data/lib/fanforce/app_factory/asset_framework/app_factory/directives/loading/_loading.coffee +4 -0
  39. data/lib/fanforce/app_factory/asset_framework/app_factory/directives/loading/_loading.scss +4 -0
  40. data/lib/fanforce/app_factory/{assets/js/add_source_popup.js → asset_framework/app_factory/directives/saving-to-server/_saving-to-server.coffee} +0 -0
  41. data/lib/fanforce/app_factory/asset_framework/app_factory/directives/saving-to-server/_saving-to-server.scss +6 -0
  42. data/lib/fanforce/app_factory/{assets/lib/common/module-saving-initiative → asset_framework/app_factory/directives/saving-to-server}/spinner.gif +0 -0
  43. data/lib/fanforce/app_factory/asset_framework/app_factory/directives/start-arrow/_start-arrow.coffee +8 -0
  44. data/lib/fanforce/app_factory/{assets/lib/common/_module-start-here.scss → asset_framework/app_factory/directives/start-arrow/_start-arrow.scss} +5 -4
  45. data/lib/fanforce/app_factory/{assets/lib/common/module-start-here → asset_framework/app_factory/directives/start-arrow}/arrow.png +0 -0
  46. data/lib/fanforce/app_factory/{assets/lib/common/_module-video-thumbnail.scss → asset_framework/app_factory/directives/video-thumbnail/_video-thumbnail.scss} +3 -3
  47. data/lib/fanforce/app_factory/{assets/lib/common/module-video-thumbnail → asset_framework/app_factory/directives/video-thumbnail}/icon-play.png +0 -0
  48. data/lib/fanforce/app_factory/asset_framework/app_factory/font-awesome.coffee +1 -0
  49. data/lib/fanforce/app_factory/{assets/lib/vendors/font-awesome/font → asset_framework/app_factory/font-awesome}/FontAwesome.otf +0 -0
  50. data/lib/fanforce/app_factory/{assets/lib/vendors/font-awesome/css → asset_framework/app_factory/font-awesome}/font-awesome.css +2 -2
  51. data/lib/fanforce/app_factory/{assets/lib/vendors/font-awesome/css → asset_framework/app_factory/font-awesome}/font-awesome.min.css +0 -0
  52. data/lib/fanforce/app_factory/{assets/lib/vendors/font-awesome/font → asset_framework/app_factory/font-awesome}/fontawesome-webfont.eot +0 -0
  53. data/lib/fanforce/app_factory/{assets/lib/vendors/font-awesome/font → asset_framework/app_factory/font-awesome}/fontawesome-webfont.svg +0 -0
  54. data/lib/fanforce/app_factory/{assets/lib/vendors/font-awesome/font → asset_framework/app_factory/font-awesome}/fontawesome-webfont.ttf +0 -0
  55. data/lib/fanforce/app_factory/{assets/lib/vendors/font-awesome/font → asset_framework/app_factory/font-awesome}/fontawesome-webfont.woff +0 -0
  56. data/lib/fanforce/app_factory/asset_framework/app_factory/lib.coffee +1 -0
  57. data/lib/fanforce/app_factory/asset_framework/app_factory/lib/cookie.coffee +16 -0
  58. data/lib/fanforce/app_factory/asset_framework/app_factory/lib/ng-focus-blur.js +68 -0
  59. data/lib/fanforce/app_factory/asset_framework/app_factory/lib/ng-visible.js +7 -0
  60. data/lib/fanforce/app_factory/asset_framework/app_factory/lib/url.coffee +20 -0
  61. data/lib/fanforce/app_factory/asset_framework/app_factory/lib/utils.coffee +11 -0
  62. data/lib/fanforce/app_factory/asset_framework/app_factory/scafolding/_promotional.scss +1 -0
  63. data/lib/fanforce/app_factory/asset_framework/app_factory/scafolding/_standard.scss +1 -0
  64. data/lib/fanforce/app_factory/{assets/js/fanforce-engager.js → asset_framework/app_factory/scafolding/promotional.coffee} +0 -0
  65. data/lib/fanforce/app_factory/asset_framework/app_factory/ui-select.coffee +1 -0
  66. data/lib/fanforce/app_factory/asset_framework/app_factory/ui-select/select.css +171 -0
  67. data/lib/fanforce/app_factory/asset_framework/app_factory/ui-select/select.js +1281 -0
  68. data/lib/fanforce/app_factory/asset_framework/app_factory/ui-select/select_override.scss +1 -0
  69. data/lib/fanforce/app_factory/asset_framework/app_factory/ui-select/selectize.default.css +443 -0
  70. data/lib/fanforce/app_factory/cli/_cleanorgs.rb +54 -0
  71. data/lib/fanforce/app_factory/controllers/base_controller.rb +5 -1
  72. data/lib/fanforce/app_factory/core_config.rb +95 -0
  73. data/lib/fanforce/app_factory/scafolding/Routes.rb +64 -0
  74. data/lib/fanforce/app_factory/{layouts → scafolding/layouts}/engage.haml +0 -0
  75. data/lib/fanforce/app_factory/{public → scafolding/public}/favicon.ico +0 -0
  76. data/lib/fanforce/app_factory/{public → scafolding/public}/robots.txt +0 -0
  77. data/lib/fanforce/app_factory/{assets/lib/common/layouts/_promotional.scss → scafolding/scafolding_assets/css/promotional.scss} +4 -9
  78. data/lib/fanforce/app_factory/scafolding/scafolding_assets/css/standard.scss +10 -0
  79. data/lib/fanforce/app_factory/{assets → scafolding/scafolding_assets}/img/icon-16.png +0 -0
  80. data/lib/fanforce/app_factory/{assets → scafolding/scafolding_assets}/img/icon-32.png +0 -0
  81. data/lib/fanforce/app_factory/{assets → scafolding/scafolding_assets}/img/icon-42.png +0 -0
  82. data/lib/fanforce/app_factory/{assets → scafolding/scafolding_assets}/img/marketplace.png +0 -0
  83. data/lib/fanforce/app_factory/{assets → scafolding/scafolding_assets}/img/marketplace.psd +0 -0
  84. data/lib/fanforce/app_factory/{assets/lib → scafolding/scafolding_assets/img}/promotional/fanforce_bg.png +0 -0
  85. data/lib/fanforce/app_factory/{assets/lib → scafolding/scafolding_assets/img}/promotional/icon-42.png +0 -0
  86. data/lib/fanforce/app_factory/{assets/lib → scafolding/scafolding_assets/img}/promotional/icon-plus.png +0 -0
  87. data/lib/fanforce/app_factory/{views → scafolding/views}/add_initiative.haml +0 -0
  88. data/lib/fanforce/app_factory/{views → scafolding/views}/add_source.haml +0 -0
  89. data/lib/fanforce/app_factory/{views → scafolding/views}/close_popup.haml +0 -0
  90. data/lib/fanforce/app_factory/{views → scafolding/views}/config.haml +0 -0
  91. data/lib/fanforce/app_factory/{views → scafolding/views}/convert_initiative.haml +0 -0
  92. data/lib/fanforce/app_factory/{views → scafolding/views}/dashboard.haml +1 -1
  93. data/lib/fanforce/app_factory/{views → scafolding/views}/edit_initiative.haml +0 -0
  94. data/lib/fanforce/app_factory/{views → scafolding/views}/engage.haml +0 -0
  95. data/lib/fanforce/app_factory/{views → scafolding/views}/index.haml +1 -1
  96. data/lib/fanforce/app_factory/{views → scafolding/views}/new_message.haml +0 -0
  97. data/lib/fanforce/app_factory/{views → scafolding/views}/source_details.haml +0 -0
  98. data/lib/fanforce/app_factory/{views → scafolding/views}/widget_templates.haml +0 -0
  99. data/lib/fanforce/app_factory/sinatra/Routes.rb +17 -0
  100. data/lib/fanforce/app_factory/sinatra/_load.rb +76 -0
  101. data/lib/fanforce/app_factory/sinatra/error_handling.rb +47 -0
  102. data/lib/fanforce/app_factory/{routes_core.rb → sinatra/helper_routes/app.rb} +8 -8
  103. data/lib/fanforce/app_factory/sinatra/helper_routes/com_behavior.rb +23 -0
  104. data/lib/fanforce/app_factory/sinatra/helper_routes/com_broadcaster.rb +7 -0
  105. data/lib/fanforce/app_factory/sinatra/helper_routes/com_connector.rb +11 -0
  106. data/lib/fanforce/app_factory/sinatra/helper_routes/com_identifier.rb +3 -0
  107. data/lib/fanforce/app_factory/{routes_js_widget.rb → sinatra/helper_routes/com_js_widget.rb} +1 -1
  108. data/lib/fanforce/app_factory/{config → sinatra}/helpers/assets.rb +1 -1
  109. data/lib/fanforce/app_factory/sinatra/helpers/fanforce.rb +18 -0
  110. data/lib/fanforce/app_factory/{config → sinatra}/helpers/json.rb +1 -1
  111. data/lib/fanforce/app_factory/{config → sinatra}/helpers/ractive.rb +1 -1
  112. data/lib/fanforce/app_factory/sprockets/_all.rb +2 -0
  113. data/lib/fanforce/app_factory/sprockets/compiler.rb +2 -11
  114. data/lib/fanforce/app_factory/sprockets/hacks.rb +1 -1
  115. data/lib/fanforce/app_factory/version.rb +2 -2
  116. data/workers.json +323 -0
  117. metadata +121 -222
  118. data/.rbenv-gemsets +0 -1
  119. data/lib/fanforce/app_factory.rake +0 -56
  120. data/lib/fanforce/app_factory/_init_sinatra.rb +0 -80
  121. data/lib/fanforce/app_factory/assets/css/add_edit_initiative.scss +0 -1
  122. data/lib/fanforce/app_factory/assets/css/add_source.scss +0 -1
  123. data/lib/fanforce/app_factory/assets/css/config.scss +0 -1
  124. data/lib/fanforce/app_factory/assets/css/convert_initiative.scss +0 -1
  125. data/lib/fanforce/app_factory/assets/css/dashboard.scss +0 -24
  126. data/lib/fanforce/app_factory/assets/css/engage.scss +0 -1
  127. data/lib/fanforce/app_factory/assets/css/new_message.scss +0 -1
  128. data/lib/fanforce/app_factory/assets/css/promotional.scss +0 -1
  129. data/lib/fanforce/app_factory/assets/css/source_details.scss +0 -1
  130. data/lib/fanforce/app_factory/assets/js/add_edit_initiative.js +0 -1
  131. data/lib/fanforce/app_factory/assets/js/add_source.js +0 -1
  132. data/lib/fanforce/app_factory/assets/js/config.js +0 -1
  133. data/lib/fanforce/app_factory/assets/js/convert_initiative.js +0 -1
  134. data/lib/fanforce/app_factory/assets/js/dashboard.coffee +0 -18
  135. data/lib/fanforce/app_factory/assets/js/fanforce-finder.js +0 -0
  136. data/lib/fanforce/app_factory/assets/js/new_message.js +0 -1
  137. data/lib/fanforce/app_factory/assets/js/promotional.js +0 -1
  138. data/lib/fanforce/app_factory/assets/js/source_details.js +0 -0
  139. data/lib/fanforce/app_factory/assets/lib/common/_module-error.scss +0 -11
  140. data/lib/fanforce/app_factory/assets/lib/common/_module-page-loading.scss +0 -1
  141. data/lib/fanforce/app_factory/assets/lib/common/_module-saving-initiative.scss +0 -6
  142. data/lib/fanforce/app_factory/assets/lib/common/_tags.scss +0 -1
  143. data/lib/fanforce/app_factory/assets/lib/common/_variables.scss +0 -27
  144. data/lib/fanforce/app_factory/assets/lib/common/broadcaster-divider-arrow.png +0 -0
  145. data/lib/fanforce/app_factory/assets/lib/common/icons/dropdown-arrow.png +0 -0
  146. data/lib/fanforce/app_factory/assets/lib/common/icons/initiative.png +0 -0
  147. data/lib/fanforce/app_factory/assets/lib/common/layouts/_add_edit_initiative.scss +0 -27
  148. data/lib/fanforce/app_factory/assets/lib/common/layouts/_add_source.scss +0 -18
  149. data/lib/fanforce/app_factory/assets/lib/common/layouts/_config.scss +0 -27
  150. data/lib/fanforce/app_factory/assets/lib/common/layouts/_convert_initiative.scss +0 -27
  151. data/lib/fanforce/app_factory/assets/lib/common/layouts/_dashboard.scss +0 -18
  152. data/lib/fanforce/app_factory/assets/lib/common/layouts/_engage.scss +0 -80
  153. data/lib/fanforce/app_factory/assets/lib/common/layouts/_new_message.scss +0 -24
  154. data/lib/fanforce/app_factory/assets/lib/common/layouts/_source_details.scss +0 -17
  155. data/lib/fanforce/app_factory/assets/lib/common/layouts/add_edit_initiative.js +0 -6
  156. data/lib/fanforce/app_factory/assets/lib/common/layouts/add_source.js +0 -6
  157. data/lib/fanforce/app_factory/assets/lib/common/layouts/config.js +0 -6
  158. data/lib/fanforce/app_factory/assets/lib/common/layouts/convert_initiative.js +0 -6
  159. data/lib/fanforce/app_factory/assets/lib/common/layouts/dashboard.js +0 -6
  160. data/lib/fanforce/app_factory/assets/lib/common/layouts/engage.js +0 -0
  161. data/lib/fanforce/app_factory/assets/lib/common/layouts/new_message.js +0 -5
  162. data/lib/fanforce/app_factory/assets/lib/common/layouts/promotional.js +0 -1
  163. data/lib/fanforce/app_factory/assets/lib/common/layouts/source_details.js +0 -5
  164. data/lib/fanforce/app_factory/assets/lib/vendors/bootstrap-datepicker/datepicker.css +0 -7
  165. data/lib/fanforce/app_factory/assets/lib/vendors/bootstrap-datepicker/datepicker.js +0 -454
  166. data/lib/fanforce/app_factory/assets/lib/vendors/bootstrap-timepicker/timepicker.css +0 -82
  167. data/lib/fanforce/app_factory/assets/lib/vendors/bootstrap-timepicker/timepicker.js +0 -803
  168. data/lib/fanforce/app_factory/assets/lib/vendors/bootstrap/css/bootstrap.min.css +0 -7
  169. data/lib/fanforce/app_factory/assets/lib/vendors/bootstrap/img/glyphicons-halflings-regular.eot +0 -0
  170. data/lib/fanforce/app_factory/assets/lib/vendors/bootstrap/img/glyphicons-halflings-regular.svg +0 -0
  171. data/lib/fanforce/app_factory/assets/lib/vendors/bootstrap/img/glyphicons-halflings-regular.ttf +0 -0
  172. data/lib/fanforce/app_factory/assets/lib/vendors/bootstrap/img/glyphicons-halflings-regular.woff +0 -0
  173. data/lib/fanforce/app_factory/assets/lib/vendors/chosen/_chosen_override.scss +0 -6
  174. data/lib/fanforce/app_factory/assets/lib/vendors/chosen/chosen-sprite.png +0 -0
  175. data/lib/fanforce/app_factory/assets/lib/vendors/chosen/chosen-sprite@2x.png +0 -0
  176. data/lib/fanforce/app_factory/assets/lib/vendors/chosen/chosen.jquery.js +0 -1166
  177. data/lib/fanforce/app_factory/assets/lib/vendors/chosen/chosen.scss +0 -434
  178. data/lib/fanforce/app_factory/assets/lib/vendors/jquery/jquery-1.10.2.js +0 -9789
  179. data/lib/fanforce/app_factory/assets/lib/vendors/jquery/jquery.inputHint.js +0 -154
  180. data/lib/fanforce/app_factory/assets/lib/vendors/jquery/jquery.tmpl.debug.js +0 -484
  181. data/lib/fanforce/app_factory/assets/lib/vendors/knockout/knockout.custom-handlers.coffee +0 -155
  182. data/lib/fanforce/app_factory/assets/lib/vendors/knockout/knockout.debug.js +0 -4469
  183. data/lib/fanforce/app_factory/assets/lib/vendors/knockout/knockout.min.js +0 -96
  184. data/lib/fanforce/app_factory/assets/lib/vendors/select2/_select2_override.scss +0 -47
  185. data/lib/fanforce/app_factory/assets/lib/vendors/select2/select2-spinner.gif +0 -0
  186. data/lib/fanforce/app_factory/assets/lib/vendors/select2/select2.png +0 -0
  187. data/lib/fanforce/app_factory/assets/lib/vendors/select2/select2.scss +0 -617
  188. data/lib/fanforce/app_factory/assets/lib/vendors/select2/select2_modified.js +0 -3225
  189. data/lib/fanforce/app_factory/assets/lib/vendors/select2/select2x2.png +0 -0
  190. data/lib/fanforce/app_factory/assets/lib/vendors/underscore/underscore.debug.js +0 -999
  191. data/lib/fanforce/app_factory/config/_error_handling.rb +0 -27
  192. data/lib/fanforce/app_factory/config/core_config.rb +0 -104
  193. data/lib/fanforce/app_factory/config/helpers/fanforce.rb +0 -22
  194. data/lib/fanforce/app_factory/layouts/add_edit_initiative.haml +0 -18
  195. data/lib/fanforce/app_factory/layouts/add_source.haml +0 -18
  196. data/lib/fanforce/app_factory/layouts/config.haml +0 -18
  197. data/lib/fanforce/app_factory/layouts/convert_initiative.haml +0 -18
  198. data/lib/fanforce/app_factory/layouts/dashboard.haml +0 -18
  199. data/lib/fanforce/app_factory/layouts/new_message.haml +0 -18
  200. data/lib/fanforce/app_factory/layouts/promotional.haml +0 -18
  201. data/lib/fanforce/app_factory/layouts/source_details.haml +0 -18
  202. data/lib/fanforce/app_factory/routes_behavior.rb +0 -31
  203. data/lib/fanforce/app_factory/routes_broadcaster.rb +0 -7
  204. data/lib/fanforce/app_factory/routes_connector.rb +0 -11
  205. data/lib/fanforce/app_factory/routes_identifier.rb +0 -3
  206. data/lib/fanforce/app_factory_workers.rb +0 -2
data/.rbenv-gemsets DELETED
@@ -1 +0,0 @@
1
- fanforce-app-factory
@@ -1,56 +0,0 @@
1
- require 'fanforce/api'
2
- require 'fileutils'
3
- require 'json'
4
- require 'yaml'
5
- require_relative 'app_factory/sprockets/hacks'
6
- require_relative 'app_factory/sprockets/compiler'
7
- require_relative 'app_factory/version'
8
-
9
- FanforceApp.config.load_env
10
- FanforceApp.config.load_redis
11
-
12
- namespace :assets do
13
- root_dir = FanforceApp.config.root_dir
14
- factory_root_dir = FanforceApp.config.factory_root_dir
15
-
16
- desc 'Precompile assets for production'
17
- task :precompile => :clean do
18
- sprockets = SprocketsCompiler.setup(root_dir)
19
-
20
- puts 'PRECOMPILING ASSETS... '
21
- SprocketsCompiler.new(sprockets: sprockets, precompile: [/(\/|^)[^_\/]+[^\/]*\.(css|js|png|gif|jpeg|jpg|otf|eot|svg|ttf|woff)/]).compile
22
- puts 'DONE'
23
-
24
- print 'GENERATING ASSET MANIFESTS... '
25
- asset_list = {}
26
- sprockets.each_logical_path do |logical_path|
27
- if File.basename(logical_path) !~ /^[_]/ and asset = sprockets.find_asset(logical_path)
28
- asset_list[logical_path] = "/assets/#{asset.digest_path}"
29
- end
30
- end
31
- IO.write File.join(root_dir, '/public/asset_manifest.json'), JSON.generate(asset_list)
32
- IO.write File.join(root_dir, '/public/asset_manifest.json'), "ASSETS=#{JSON.generate(asset_list)}"
33
- IO.write File.join(root_dir, '/public/asset_manifest.json'), asset_list.to_yaml
34
- puts 'DONE'
35
-
36
- print 'ENSURING FAVICON EXISTS... '
37
- FileUtils.cp("#{factory_root_dir}/public/favicon.ico", "#{root_dir}/public/favicon.ico") if !File.exists?(root_dir+'/public/favicon.ico')
38
- puts 'DONE'
39
-
40
- print 'ENSURING ROBOTS.TXT EXISTS... '
41
- FileUtils.cp("#{factory_root_dir}/public/robots.txt", "#{root_dir}/public/robots.txt") if !File.exists?(root_dir+'/public/robots.txt')
42
- puts 'DONE'
43
- end
44
-
45
- desc 'Clean assets folder'
46
- task :clean do
47
- print 'DESTROYING PUBLIC/ASSETS... '
48
- FileUtils.rm_rf File.join(root_dir, '/public/assets')
49
- puts 'DONE'
50
- end
51
-
52
- task :test do
53
- puts 'TEST WORKED!'
54
- end
55
-
56
- end
@@ -1,80 +0,0 @@
1
- require 'sinatra/content_for'
2
- require 'bugsnag'
3
- ####################################################################################
4
-
5
- class FanforceApp::Sinatra < Sinatra::Base
6
- require_relative 'config/_error_handling'
7
- require_relative 'config/helpers/assets'
8
- require_relative 'config/helpers/ractive'
9
- require_relative 'config/helpers/json'
10
- require_relative 'config/helpers/fanforce'
11
-
12
- use Rack::JSONR, :method_override => :all
13
- use Bugsnag::Rack
14
-
15
- helpers Sinatra::AssetHelpers
16
- helpers Sinatra::RactiveHelpers
17
- helpers Sinatra::JSONHelpers
18
- helpers Sinatra::FanforceHelpers
19
- helpers Sinatra::ContentFor
20
-
21
- def self.any(url,&block)
22
- get(url, &block)
23
- put(url, &block)
24
- post(url, &block)
25
- delete(url, &block)
26
- end
27
-
28
- def self.default_javascript_package(package_name)
29
-
30
- end
31
-
32
- def self.require_controllers
33
- require "#{FanforceApp.config.factory_root_dir}/controllers/base_controller"
34
- Dir["#{FanforceApp.config.root_dir}/controllers/*_controller.rb"].each {|f| require f }
35
- end
36
-
37
- @@static_files = {}
38
- def self.static(url, *args, &block)
39
- @@static_files[url] = {args: args, block: block}
40
- get(url, &block)
41
- end
42
-
43
- def page(page, options={})
44
- gem_dir = Pathname.new(File.expand_path('../', __FILE__))
45
- app_dir = Pathname.new(File.expand_path('../', settings.views))
46
- app_views_dir = Pathname.new(settings.views)
47
- gem_rel_dir = gem_dir.relative_path_from(app_views_dir).to_s
48
- gem_abs_dir = File.expand_path(gem_rel_dir, app_views_dir)
49
-
50
- if !File.exists?("#{app_dir}/views/#{page}.haml")
51
- if File.exists?("#{app_dir}/views/#{options[:com_dir]}/#{page}.haml")
52
- page_path = :"#{options[:com_dir]}/#{page}"
53
- else
54
- page_path = :"#{gem_rel_dir}/views/#{page}" if File.exists?("#{gem_abs_dir}/views/#{page}.haml")
55
- end
56
- end
57
- page_path ||= page
58
-
59
- if options[:layout]
60
- if File.exists?("#{app_dir}/layouts/#{options[:layout]}.haml")
61
- options[:layout] = :"../layouts/#{options[:layout]}"
62
- else
63
- options[:layout] = :"#{gem_rel_dir}/layouts/#{options[:layout]}"
64
- end
65
- else
66
- options[:layout] = false
67
- end
68
-
69
- haml page_path, options
70
- end
71
-
72
- configure do
73
- FanforceApp.load_config
74
- set :haml, {:escape_attrs => false}
75
- set :static, true
76
- set :protection, :except => [:frame_options, :json_csrf]
77
- end
78
-
79
- end
80
-
@@ -1 +0,0 @@
1
- @import 'common/layouts/add_edit_initiative';
@@ -1 +0,0 @@
1
- @import 'common/layouts/add_source';
@@ -1 +0,0 @@
1
- @import 'common/layouts/config';
@@ -1 +0,0 @@
1
- @import 'common/layouts/convert_initiative';
@@ -1,24 +0,0 @@
1
- @import 'common/layouts/dashboard';
2
-
3
- .module-plugin-button { width:100%; color:#3b5365; @include ff-gradient(#e2e9f8,#d8e1ef); @include box-shadow(#f7f9fd 1px 1px 0 inset, #e8e8e8 1px 1px 2px); height:42px; line-height: 35px; padding:0; text-align: left; position:relative;
4
- &:hover { @include ff-gradient(#cdd6ea,#bac9df); }
5
- .icon { background-position:0 0; background-repeat:no-repeat; width:32px; height:32px; position:absolute; left:5px; top:5px; }
6
- .text { padding-left:48px; margin-right:72px; font-size:15px; font-weight: bold; overflow:hidden; white-space:nowrap; text-overflow: ellipsis; padding-top:0; }
7
- .stats { position:absolute; top:3px; right:0; font-size:11px; font-weight:100; width:65px; padding-right: 8px; color:#7b8d9e; text-shadow:none; overflow:hidden; white-space:nowrap; text-overflow: ellipsis; text-align:right;
8
- &.faded { @include opacity(.4); }
9
- }
10
- }
11
-
12
- .container-fluid { padding: 50px;
13
- h3 { color: #adb1ba; border-bottom: 1px solid #ebebeb; padding-bottom: 15px; margin-bottom: 10px; }
14
- .description { font-size: 18px; color: #c1c5cd; line-height: 27px; padding-right:20px; }
15
-
16
- ul.plugins {
17
- li { @include reset-ul(); border-bottom: 1px solid #ebebeb; padding-bottom:10px; margin-bottom:10px;
18
- .command { float:left; color: #666666; width: 30%; line-height: 50px; font-weight: bold; @include box-sizing(border-box); }
19
- button { width: 70%; @extend .module-plugin-button; @include box-sizing(border-box); }
20
- }
21
-
22
- }
23
- }
24
-
@@ -1 +0,0 @@
1
- @import 'common/layouts/engage';
@@ -1 +0,0 @@
1
- @import 'common/layouts/new_message';
@@ -1 +0,0 @@
1
- @import 'common/layouts/promotional';
@@ -1 +0,0 @@
1
- @import 'common/layouts/source_details';
@@ -1 +0,0 @@
1
- //= require common/layouts/add_edit_initiative
@@ -1 +0,0 @@
1
- //= require common/layouts/add_source
@@ -1 +0,0 @@
1
- //= require common/layouts/add_edit_initiative
@@ -1 +0,0 @@
1
- //= require common/layouts/convert_initiative
@@ -1,18 +0,0 @@
1
- #= require common/layouts/dashboard
2
-
3
- class @DashboardController
4
- constructor: (app_id) ->
5
- @description = ko.observable('')
6
- @plugins = ko.observableArray([])
7
- request = FF.get "/apps/#{app_id}", {include_associations: {plugins: 'name,type,public_urls,data_source_count'}, include_fields: 'description'}
8
- request.done (data)=>
9
- @description data.description
10
- @plugins @preparePlugins(data.plugins)
11
-
12
- preparePlugins: (plugins) ->
13
- for plugin in plugins
14
- plugin.addSource = () ->
15
- plugin.addInitiative = () ->
16
- plugin.newBroadcast = () ->
17
- plugins
18
-
@@ -1 +0,0 @@
1
- //= require common/layouts/new_message
@@ -1 +0,0 @@
1
- //= require common/layouts/promotional
File without changes
@@ -1,11 +0,0 @@
1
- $module_path: "/assets/common/module-error";
2
- /////////////////////////////////////////////////////////////////////////////////////////
3
-
4
- .module-error { position:relative; color:#ffffff; font-size:12; @include min-height(30px); @include border-radius(1px); line-height:30px; background:#e70000;
5
- .msg { background:url(#{$module_path}/icon-error.png) 7px 7px no-repeat; padding:0px 13px 0 30px; }
6
- }
7
-
8
- .module-error-bubble { position:absolute; top:0; right:-240px;
9
- .arrow-left { position:absolute; left:-9px; top:11px; width:11px; height:20px; background:url(#{$module_path}/arrow-left.png) left top no-repeat; }
10
- .error { width:200px; @include border-radius(2px); background:#fd4141; border:#ff0000 1px solid; @include box-shadow(#bcbcbc 1px 1px 2px, #fe7474 1px 1px 0 inset); color:#ffffff; padding:12px; padding-bottom:10px; }
11
- }
@@ -1 +0,0 @@
1
- .module-page-loading { color:#cccccc; font-size:15px; text-align: center; padding-top:45px; }
@@ -1,6 +0,0 @@
1
- $module_path: "/assets/common/module-saving-initiative";
2
- /////////////////////////////////////////////////////////////////////////////////////////
3
-
4
- .module-saving-initiative { text-align: center; height:100px; position:absolute; left:0; margin-top:80px; width:100%; color:#b9cddc; text-shadow:#ffffff 1px 1px 0; display:none; text-align:center;
5
- .spinner { width:64px; height:64px; background:url(#{$module_path}/spinner.gif) 0 0 no-repeat; margin:0 auto 20px; }
6
- }
@@ -1,27 +0,0 @@
1
- //////////////////////////////////////////////////////////////////////////////////////////////////
2
- // SET CORE VARIABLES
3
- // Define all core variables here
4
- //////////////////////////////////////////////////////////////////////////////////////////////////
5
- $link-color: #1861a8;
6
- $action-color: #ffb400;
7
- $true-fan-color: #72c14b;
8
- $error-color: #e70000;
9
-
10
- $font-family: 'Helvetica', Arial, sans-serif;
11
- $font-size-small: 11px;
12
- $font-size-normal: 12px;
13
- $font-size-large: 13px;
14
-
15
- $line-height: 1.5em;
16
-
17
- //////////////////////////////////////////////////////////////////////////////////////////////////
18
- // SET LAYOUT CONTENT WIDTHS
19
- // This has to be defined as a function to get around the scoping limitations of sass
20
- //////////////////////////////////////////////////////////////////////////////////////////////////
21
- @function content-width($layout: 'none') {
22
- @if $layout == 'website' { @return 960px; }
23
- @else if $layout == 'application' { @return 1000px; }
24
- @else if $layout == 'auth' { @return 1000px; }
25
- @else if $layout == 'styleguide' { @return 1120px; }
26
- @else { @return 960px; }
27
- }
@@ -1,27 +0,0 @@
1
- //////////////////////////////////////////////////////////////////////////////////////////////////
2
- // COMPASS AND BOOTSTRAP
3
- //////////////////////////////////////////////////////////////////////////////////////////////////
4
- @import 'compass/css3';
5
- @import 'compass/utilities';
6
- @import 'vendors/bootstrap/css/bootstrap.min.css';
7
- @import 'vendors/font-awesome/css/font-awesome.min.css';
8
-
9
- //////////////////////////////////////////////////////////////////////////////////////////////////
10
- // COMMON
11
- //////////////////////////////////////////////////////////////////////////////////////////////////
12
- @import 'common/mixins';
13
- @import 'common/variables';
14
- @import 'common/bootstrap-overrides';
15
-
16
- @import 'common/module-page-loading';
17
- @import 'common/module-saving-initiative';
18
- @import 'common/module-add-initiative-footer';
19
-
20
- //////////////////////////////////////////////////////////////////////////////////////////////////
21
- // BASE STYLES (AS FEW AS POSSIBLE)
22
- //////////////////////////////////////////////////////////////////////////////////////////////////
23
-
24
- body { overflow:hidden; background: #F4F8FC;
25
- .hide { display:none !important; }
26
- .dropdown-menu { @include border-radius(4px); border:1px solid #aec7dd; @include box-shadow(1px 1px 3px rgba(0, 0, 0, 0.2), #ffffff 1px 1px 0 inset); background:#f7fafd; }
27
- }
@@ -1,18 +0,0 @@
1
- //////////////////////////////////////////////////////////////////////////////////////////////////
2
- // COMPASS AND BOOTSTRAP
3
- //////////////////////////////////////////////////////////////////////////////////////////////////
4
- @import 'compass/css3';
5
- @import 'compass/utilities';
6
- @import 'vendors/bootstrap/css/bootstrap.min.css';
7
- @import 'vendors/font-awesome/css/font-awesome.min.css';
8
-
9
- //////////////////////////////////////////////////////////////////////////////////////////////////
10
- // COMMON
11
- //////////////////////////////////////////////////////////////////////////////////////////////////
12
- @import 'common/mixins';
13
- @import 'common/variables';
14
- @import 'common/bootstrap-overrides';
15
-
16
- //////////////////////////////////////////////////////////////////////////////////////////////////
17
- // BASE STYLES (AS FEW AS POSSIBLE)
18
- //////////////////////////////////////////////////////////////////////////////////////////////////
@@ -1,27 +0,0 @@
1
- //////////////////////////////////////////////////////////////////////////////////////////////////
2
- // COMPASS AND BOOTSTRAP
3
- //////////////////////////////////////////////////////////////////////////////////////////////////
4
- @import 'compass/css3';
5
- @import 'compass/utilities';
6
- @import 'vendors/bootstrap/css/bootstrap.min.css';
7
- @import 'vendors/font-awesome/css/font-awesome.min.css';
8
-
9
- //////////////////////////////////////////////////////////////////////////////////////////////////
10
- // COMMON
11
- //////////////////////////////////////////////////////////////////////////////////////////////////
12
- @import 'common/mixins';
13
- @import 'common/variables';
14
- @import 'common/tags';
15
-
16
- @import 'common/module-page-loading';
17
- @import 'common/module-saving-initiative';
18
- @import 'common/module-add-initiative-footer';
19
-
20
- //////////////////////////////////////////////////////////////////////////////////////////////////
21
- // BASE STYLES (AS FEW AS POSSIBLE)
22
- //////////////////////////////////////////////////////////////////////////////////////////////////
23
-
24
- body { overflow:hidden; background: white;
25
- .hide { display:none !important; }
26
- .dropdown-menu { @include border-radius(4px); border:1px solid #aec7dd; @include box-shadow(1px 1px 3px rgba(0, 0, 0, 0.2), #ffffff 1px 1px 0 inset); background:#f7fafd; }
27
- }
@@ -1,27 +0,0 @@
1
- //////////////////////////////////////////////////////////////////////////////////////////////////
2
- // COMPASS AND BOOTSTRAP
3
- //////////////////////////////////////////////////////////////////////////////////////////////////
4
- @import 'compass/css3';
5
- @import 'compass/utilities';
6
- @import 'vendors/bootstrap/css/bootstrap.min.css';
7
- @import 'vendors/font-awesome/css/font-awesome.min.css';
8
-
9
- //////////////////////////////////////////////////////////////////////////////////////////////////
10
- // COMMON
11
- //////////////////////////////////////////////////////////////////////////////////////////////////
12
- @import 'common/mixins';
13
- @import 'common/variables';
14
- @import 'common/bootstrap-overrides';
15
-
16
- @import 'common/module-page-loading';
17
- @import 'common/module-saving-initiative';
18
- @import 'common/module-add-initiative-footer';
19
-
20
- //////////////////////////////////////////////////////////////////////////////////////////////////
21
- // BASE STYLES (AS FEW AS POSSIBLE)
22
- //////////////////////////////////////////////////////////////////////////////////////////////////
23
-
24
- body { overflow:hidden; background: #F4F8FC;
25
- .hide { display:none !important; }
26
- .dropdown-menu { @include border-radius(4px); border:1px solid #aec7dd; @include box-shadow(1px 1px 3px rgba(0, 0, 0, 0.2), #ffffff 1px 1px 0 inset); background:#f7fafd; }
27
- }
@@ -1,18 +0,0 @@
1
- //////////////////////////////////////////////////////////////////////////////////////////////////
2
- // COMPASS AND BOOTSTRAP
3
- //////////////////////////////////////////////////////////////////////////////////////////////////
4
- @import 'compass/css3';
5
- @import 'compass/utilities';
6
- @import 'vendors/bootstrap/css/bootstrap.min.css';
7
- @import 'vendors/font-awesome/css/font-awesome.min.css';
8
-
9
- //////////////////////////////////////////////////////////////////////////////////////////////////
10
- // COMMON
11
- //////////////////////////////////////////////////////////////////////////////////////////////////
12
- @import 'common/mixins';
13
- @import 'common/variables';
14
- @import 'common/tags';
15
-
16
- //////////////////////////////////////////////////////////////////////////////////////////////////
17
- // BASE STYLES (AS FEW AS POSSIBLE)
18
- //////////////////////////////////////////////////////////////////////////////////////////////////
@@ -1,80 +0,0 @@
1
- //////////////////////////////////////////////////////////////////////////////////////////////////
2
- // FRAMEWORK: CORE VARIABLES & SASS RESET
3
- //////////////////////////////////////////////////////////////////////////////////////////////////
4
- //@import "compass/reset";
5
- @import "common/variables";
6
-
7
- //////////////////////////////////////////////////////////////////////////////////////////////////
8
- // FRAMEWORK: SASS LIBRARY
9
- //////////////////////////////////////////////////////////////////////////////////////////////////
10
- @import "compass/css3";
11
- @import "compass/layout/sticky-footer";
12
- @import "compass/utilities";
13
-
14
- //////////////////////////////////////////////////////////////////////////////////////////////////
15
- // FRAMEWORK: COMMON FILES
16
- //////////////////////////////////////////////////////////////////////////////////////////////////
17
- @import "common/mixins";
18
- @import "common/variables";
19
-
20
- //////////////////////////////////////////////////////////////////////////////////////////////////
21
- // COMMON TAGS
22
- //////////////////////////////////////////////////////////////////////////////////////////////////
23
-
24
- h1, .h1 { font-size: 30px; font-weight:bold; margin:10px 0; line-height:1em; }
25
- h2, .h2 { font-size: 20px; font-weight:bold; margin:8px 0; line-height:1em; }
26
- h3, .h3 { font-size: 17px; font-weight:bold; margin:6px 0; line-height:1em; }
27
- h4, .h4 { font-size: 14px; font-weight:bold; margin:4px 0; line-height:1em; }
28
- h5, .h5 { font-size: $font-size-large; font-weight: bold; margin:2px 0; line-height:1em; }
29
- h6, .h6 { font-size: $font-size-normal; font-weight: bold; margin:2px 0; line-height:1em; }
30
- h7, .h7 { font-size: $font-size-small; font-weight: bold; margin:2px 0; line-height:1em; }
31
-
32
- p, .p { line-height:$line-height; margin-bottom:10px; }
33
- a { text-decoration:none; color:$link-color;
34
- &:hover { text-decoration:underline; }
35
- }
36
- strong, .strong { font-weight:bold; }
37
- emphasis, .emphasis { font-style:italic; }
38
-
39
- ul { list-style-type: square; list-style-position:outside; padding:0; margin-left:0; line-height:$line-height;
40
- li { margin-top:5px; margin-left:1em; }
41
- }
42
-
43
- ol { list-style-type:decimal; list-style-position:outside; padding:0; margin-left:0; line-height:$line-height;
44
- li { margin-top:5px; margin-left:1.5em; }
45
- }
46
-
47
- pre { font-family:"Courier New", Courier, monospace, sans-serif; color: #555; line-height: 1.6em; }
48
-
49
- .hide { display:none !important; }
50
-
51
- //////////////////////////////////////////////////////////////////////////////////////////////////
52
- // FRAMEWORK: MODULE ACTIVATION
53
- //////////////////////////////////////////////////////////////////////////////////////////////////
54
- html { height:100%; }
55
- body { height: 100%; background-color:#292a2e; @include ff-gradient(#26262a,#2b2d31); text-align:center; margin:0; font-family:$font-family; font-size:$font-size-normal; line-height:$line-height;
56
- $content-width:content-width('engage');
57
- @include sticky-footer(40px, ".lyt-root", ".lyt-root-footer", ".lyt-footer");
58
-
59
- .lyt-root { @include ff-gradient(#26262a,#2b2d31); }
60
- .lyt-header { min-height:80px;
61
- .hello { background: #2d2d31; height:40px; line-height: 44px; text-align: right; border-bottom:1px solid #000000; @include box-shadow(#343438 0 1px 0);
62
- .hello-wrapper { max-width: 960px; margin:0 auto; }
63
- .greeting { color: #858789; font-style: italic; padding-right:10px; font-weight: 100; }
64
- a { font-weight: bold; color: #aeb2b4; }
65
- }
66
- .logo { border-bottom:1px solid #000000; @include box-shadow(#343438 0 1px 0); background-position: center center; background-repeat:no-repeat;
67
- img { margin-top:18px; }
68
- }
69
- }
70
- .lyt-footer { color:#565d65; font-size:10px; line-height:40px; border-top:1px solid #343438; @include box-shadow(#000000 0 -1px 0);
71
- a { color:#565d65;
72
- &:hover { color:#747d88; }
73
- }
74
- }
75
-
76
- // layout-specific components
77
- .ff-widget { display:inline-block; @include box-shadow(#000000 2px 2px 2px); border:10px solid #ffffff; @include border-radius(3px); margin:50px 0 50px; color: #444444;
78
- .loading { line-height: 100px; }
79
- }
80
- }