diff --git a/.gitignore b/.gitignore index b648f8d3..6403fac1 100644 --- a/.gitignore +++ b/.gitignore @@ -22,3 +22,6 @@ capybara-*.html **.orig rerun.txt pickle-email-*.html +*~ +/public/assets +/bundle diff --git a/Gemfile b/Gemfile index 45581f7f..f3dc73c1 100644 --- a/Gemfile +++ b/Gemfile @@ -5,19 +5,32 @@ gem 'rails', '3.2.11' # Bundle edge Rails instead: # gem 'rails', :git => 'git://github.com/rails/rails.git' -gem 'sqlite3' -gem 'mysql2' - # Gems used only for assets and not required # in production environments by default. group :assets do gem 'sass-rails', '~> 3.2.3' # gem 'coffee-rails', '~> 3.2.1' + gem 'bootstrap-sass' # See https://github.com/sstephenson/execjs#readme for more supported runtimes - # gem 'therubyracer', :platforms => :ruby + gem 'therubyracer', :platforms => :ruby -# gem 'uglifier', '>= 1.0.3' + gem 'uglifier', '>= 1.2.2' +end + +group :development, :test do + gem 'pry' + gem 'sqlite3' + gem 'thin' + gem 'rspec-rails', '2.11.0' +end + +group :production do + gem 'mysql2' +end + +group :test do + gem 'capybara', '1.1.2' end gem 'will_paginate' @@ -36,15 +49,6 @@ gem 'transitions', :require => ["transitions", "active_record/transitions"] gem 'acts_as_commentable_with_threading' gem 'prawn' gem 'prawn_rails' - -# To use Jbuilder templates for JSON -# gem 'jbuilder' - -# Use unicorn as the app server -# gem 'unicorn' - -# Deploy with Capistrano -# gem 'capistrano' - -# To use debugger -# gem 'debugger' +gem 'gravtastic' +gem 'active_model_serializers' +gem 'axlsx_rails' diff --git a/Gemfile.lock b/Gemfile.lock index b0bd151b..e95ca596 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -15,6 +15,8 @@ GEM rack-cache (~> 1.2) rack-test (~> 0.6.1) sprockets (~> 2.2.1) + active_model_serializers (0.8.1) + activemodel (>= 3.0) activemodel (3.2.11) activesupport (= 3.2.11) builder (~> 3.0.0) @@ -37,28 +39,55 @@ GEM arel (3.0.2) awesome_nested_set (2.1.6) activerecord (>= 3.0.0) + axlsx (1.3.6) + htmlentities (~> 4.3.1) + nokogiri (>= 1.4.1) + rubyzip (>= 0.9.5) + axlsx_rails (0.1.4) + axlsx + rails (>= 3.1) bcrypt-ruby (3.0.1) + bootstrap-sass (2.3.2.0) + sass (~> 3.2) builder (3.0.4) cancan (1.6.10) + capybara (1.1.2) + mime-types (>= 1.16) + nokogiri (>= 1.3.3) + rack (>= 1.0.0) + rack-test (>= 0.5.4) + selenium-webdriver (~> 2.0) + xpath (~> 0.1.4) + childprocess (0.3.9) + ffi (~> 1.0, >= 1.0.11) climate_control (0.0.3) activesupport (>= 3.0) cocaine (0.5.1) climate_control (>= 0.0.3, < 1.0) cocoon (1.1.2) + coderay (1.0.9) + daemons (1.1.9) devise (2.2.4) bcrypt-ruby (~> 3.0) orm_adapter (~> 0.1) railties (~> 3.1) warden (~> 1.2.1) + diff-lcs (1.1.3) erubis (2.7.0) + eventmachine (1.0.3) + execjs (1.4.0) + multi_json (~> 1.0) + ffi (1.9.0) formtastic (2.2.1) actionpack (>= 3.0) formtastic-bootstrap (2.1.1) formtastic (~> 2.2) + gravtastic (3.2.6) haml (4.0.2) tilt hashery (2.1.0) hike (1.2.2) + htmlentities (4.3.1) i18n (0.6.4) journey (1.0.4) jquery-fileupload-rails (0.4.1) @@ -68,13 +97,18 @@ GEM railties (>= 3.0, < 5.0) thor (>= 0.14, < 2.0) json (1.8.0) + libv8 (3.11.8.17) mail (2.4.4) i18n (>= 0.4.0) mime-types (~> 1.16) treetop (~> 1.4.8) + method_source (0.8.1) mime-types (1.23) + mini_portile (0.5.0) multi_json (1.7.3) mysql2 (0.3.11) + nokogiri (1.6.0) + mini_portile (~> 0.5.0) orm_adapter (0.4.0) paper_trail (2.7.1) activerecord (~> 3.0) @@ -98,6 +132,10 @@ GEM prawn_rails (0.0.11) prawn (>= 0.11.1) railties (>= 3.0.0) + pry (0.9.12.2) + coderay (~> 1.0.5) + method_source (~> 0.8) + slop (~> 3.4) rack (1.4.5) rack-cache (1.2) rack (>= 0.4) @@ -123,18 +161,46 @@ GEM rake (10.0.4) rdoc (3.12.2) json (~> 1.4) + ref (1.0.5) + rspec (2.11.0) + rspec-core (~> 2.11.0) + rspec-expectations (~> 2.11.0) + rspec-mocks (~> 2.11.0) + rspec-core (2.11.1) + rspec-expectations (2.11.3) + diff-lcs (~> 1.1.3) + rspec-mocks (2.11.3) + rspec-rails (2.11.0) + actionpack (>= 3.0) + activesupport (>= 3.0) + railties (>= 3.0) + rspec (~> 2.11.0) ruby-rc4 (0.1.5) + rubyzip (0.9.9) sass (3.2.5) sass-rails (3.2.5) railties (~> 3.2.0) sass (>= 3.1.10) tilt (~> 1.3) + selenium-webdriver (2.33.0) + childprocess (>= 0.2.5) + multi_json (~> 1.0) + rubyzip + websocket (~> 1.0.4) + slop (3.4.5) sprockets (2.2.2) hike (~> 1.2) multi_json (~> 1.0) rack (~> 1.0) tilt (~> 1.1, != 1.3.0) sqlite3 (1.3.7) + therubyracer (0.11.4) + libv8 (~> 3.11.8.12) + ref + thin (1.5.1) + daemons (>= 1.0.9) + eventmachine (>= 0.12.6) + rack (>= 1.0.0) thor (0.18.1) tilt (1.4.1) transitions (0.1.8) @@ -143,20 +209,31 @@ GEM polyglot (>= 0.3.1) ttfunk (1.0.3) tzinfo (0.3.37) + uglifier (2.1.1) + execjs (>= 0.3.0) + multi_json (~> 1.0, >= 1.0.2) warden (1.2.1) rack (>= 1.0) + websocket (1.0.7) will_paginate (3.0.4) + xpath (0.1.4) + nokogiri (~> 1.3) PLATFORMS ruby DEPENDENCIES + active_model_serializers acts_as_commentable_with_threading + axlsx_rails bcrypt-ruby (~> 3.0.0) + bootstrap-sass cancan + capybara (= 1.1.2) cocoon devise formtastic-bootstrap + gravtastic haml jquery-fileupload-rails jquery-rails @@ -165,8 +242,13 @@ DEPENDENCIES paperclip (~> 3.0) prawn prawn_rails + pry rails (= 3.2.11) + rspec-rails (= 2.11.0) sass-rails (~> 3.2.3) sqlite3 + therubyracer + thin transitions + uglifier (>= 1.2.2) will_paginate diff --git a/app/assets/images/img/glyphicons-halflings-white.png b/app/assets/images/img/glyphicons-halflings-white.png deleted file mode 100644 index 3bf6484a..00000000 Binary files a/app/assets/images/img/glyphicons-halflings-white.png and /dev/null differ diff --git a/app/assets/images/img/glyphicons-halflings.png b/app/assets/images/img/glyphicons-halflings.png deleted file mode 100644 index a9969993..00000000 Binary files a/app/assets/images/img/glyphicons-halflings.png and /dev/null differ diff --git a/app/assets/javascripts/admin/admin.js.coffee b/app/assets/javascripts/admin/admin.js.coffee deleted file mode 100644 index 76156794..00000000 --- a/app/assets/javascripts/admin/admin.js.coffee +++ /dev/null @@ -1,3 +0,0 @@ -# Place all the behaviors and hooks related to the matching controller here. -# All this logic will automatically be available in application.js. -# You can use CoffeeScript in this file: http://jashkenas.github.com/coffee-script/ diff --git a/app/assets/javascripts/admin/call_for_papers.js.coffee b/app/assets/javascripts/admin/call_for_papers.js.coffee deleted file mode 100644 index 76156794..00000000 --- a/app/assets/javascripts/admin/call_for_papers.js.coffee +++ /dev/null @@ -1,3 +0,0 @@ -# Place all the behaviors and hooks related to the matching controller here. -# All this logic will automatically be available in application.js. -# You can use CoffeeScript in this file: http://jashkenas.github.com/coffee-script/ diff --git a/app/assets/javascripts/admin/conference.js.coffee b/app/assets/javascripts/admin/conference.js.coffee deleted file mode 100644 index 76156794..00000000 --- a/app/assets/javascripts/admin/conference.js.coffee +++ /dev/null @@ -1,3 +0,0 @@ -# Place all the behaviors and hooks related to the matching controller here. -# All this logic will automatically be available in application.js. -# You can use CoffeeScript in this file: http://jashkenas.github.com/coffee-script/ diff --git a/app/assets/javascripts/admin/people.js.coffee b/app/assets/javascripts/admin/people.js.coffee deleted file mode 100644 index 76156794..00000000 --- a/app/assets/javascripts/admin/people.js.coffee +++ /dev/null @@ -1,3 +0,0 @@ -# Place all the behaviors and hooks related to the matching controller here. -# All this logic will automatically be available in application.js. -# You can use CoffeeScript in this file: http://jashkenas.github.com/coffee-script/ diff --git a/app/assets/javascripts/admin/supporters.js.coffee b/app/assets/javascripts/admin/supporters.js.coffee deleted file mode 100644 index 76156794..00000000 --- a/app/assets/javascripts/admin/supporters.js.coffee +++ /dev/null @@ -1,3 +0,0 @@ -# Place all the behaviors and hooks related to the matching controller here. -# All this logic will automatically be available in application.js. -# You can use CoffeeScript in this file: http://jashkenas.github.com/coffee-script/ diff --git a/app/assets/javascripts/admin/users.js.coffee b/app/assets/javascripts/admin/users.js.coffee deleted file mode 100644 index 76156794..00000000 --- a/app/assets/javascripts/admin/users.js.coffee +++ /dev/null @@ -1,3 +0,0 @@ -# Place all the behaviors and hooks related to the matching controller here. -# All this logic will automatically be available in application.js. -# You can use CoffeeScript in this file: http://jashkenas.github.com/coffee-script/ diff --git a/app/assets/javascripts/admin/venue.js.coffee b/app/assets/javascripts/admin/venue.js.coffee deleted file mode 100644 index 76156794..00000000 --- a/app/assets/javascripts/admin/venue.js.coffee +++ /dev/null @@ -1,3 +0,0 @@ -# Place all the behaviors and hooks related to the matching controller here. -# All this logic will automatically be available in application.js. -# You can use CoffeeScript in this file: http://jashkenas.github.com/coffee-script/ diff --git a/app/assets/javascripts/application.js b/app/assets/javascripts/application.js index b7d274aa..1ebf29ee 100644 --- a/app/assets/javascripts/application.js +++ b/app/assets/javascripts/application.js @@ -17,5 +17,5 @@ //= require jquery-ui-timepicker-addon //= require jquery.dataTables //= require cocoon -//= require bootstrap.min +//= require bootstrap //= require osem diff --git a/app/assets/javascripts/bootstrap.js.coffee b/app/assets/javascripts/bootstrap.js.coffee deleted file mode 100644 index c9404a8e..00000000 --- a/app/assets/javascripts/bootstrap.js.coffee +++ /dev/null @@ -1,4 +0,0 @@ -jQuery -> - $("a[rel=popover]").popover() - $(".tooltip").tooltip() - $("a[rel=tooltip]").tooltip() \ No newline at end of file diff --git a/app/assets/javascripts/bootstrap.min.js b/app/assets/javascripts/bootstrap.min.js deleted file mode 100644 index e4679604..00000000 --- a/app/assets/javascripts/bootstrap.min.js +++ /dev/null @@ -1,7 +0,0 @@ -/** -* Bootstrap.js by @fat & @mdo -* plugins: bootstrap-transition.js, bootstrap-modal.js, bootstrap-dropdown.js, bootstrap-scrollspy.js, bootstrap-tab.js, bootstrap-tooltip.js, bootstrap-popover.js, bootstrap-affix.js, bootstrap-alert.js, bootstrap-button.js, bootstrap-collapse.js, bootstrap-carousel.js, bootstrap-typeahead.js -* Copyright 2012 Twitter, Inc. -* http://www.apache.org/licenses/LICENSE-2.0.txt -*/ -!function(a){a(function(){a.support.transition=function(){var a=function(){var a=document.createElement("bootstrap"),b={WebkitTransition:"webkitTransitionEnd",MozTransition:"transitionend",OTransition:"oTransitionEnd otransitionend",transition:"transitionend"},c;for(c in b)if(a.style[c]!==undefined)return b[c]}();return a&&{end:a}}()})}(window.jQuery),!function(a){var b=function(b,c){this.options=c,this.$element=a(b).delegate('[data-dismiss="modal"]',"click.dismiss.modal",a.proxy(this.hide,this)),this.options.remote&&this.$element.find(".modal-body").load(this.options.remote)};b.prototype={constructor:b,toggle:function(){return this[this.isShown?"hide":"show"]()},show:function(){var b=this,c=a.Event("show");this.$element.trigger(c);if(this.isShown||c.isDefaultPrevented())return;this.isShown=!0,this.escape(),this.backdrop(function(){var c=a.support.transition&&b.$element.hasClass("fade");b.$element.parent().length||b.$element.appendTo(document.body),b.$element.show(),c&&b.$element[0].offsetWidth,b.$element.addClass("in").attr("aria-hidden",!1),b.enforceFocus(),c?b.$element.one(a.support.transition.end,function(){b.$element.focus().trigger("shown")}):b.$element.focus().trigger("shown")})},hide:function(b){b&&b.preventDefault();var c=this;b=a.Event("hide"),this.$element.trigger(b);if(!this.isShown||b.isDefaultPrevented())return;this.isShown=!1,this.escape(),a(document).off("focusin.modal"),this.$element.removeClass("in").attr("aria-hidden",!0),a.support.transition&&this.$element.hasClass("fade")?this.hideWithTransition():this.hideModal()},enforceFocus:function(){var b=this;a(document).on("focusin.modal",function(a){b.$element[0]!==a.target&&!b.$element.has(a.target).length&&b.$element.focus()})},escape:function(){var a=this;this.isShown&&this.options.keyboard?this.$element.on("keyup.dismiss.modal",function(b){b.which==27&&a.hide()}):this.isShown||this.$element.off("keyup.dismiss.modal")},hideWithTransition:function(){var b=this,c=setTimeout(function(){b.$element.off(a.support.transition.end),b.hideModal()},500);this.$element.one(a.support.transition.end,function(){clearTimeout(c),b.hideModal()})},hideModal:function(a){this.$element.hide().trigger("hidden"),this.backdrop()},removeBackdrop:function(){this.$backdrop.remove(),this.$backdrop=null},backdrop:function(b){var c=this,d=this.$element.hasClass("fade")?"fade":"";if(this.isShown&&this.options.backdrop){var e=a.support.transition&&d;this.$backdrop=a('