diff --git a/admin/app/admin/ad_campaigns.rb b/admin/app/admin/ad_campaigns.rb index dd5b0f390..8260c76c7 100644 --- a/admin/app/admin/ad_campaigns.rb +++ b/admin/app/admin/ad_campaigns.rb @@ -28,7 +28,7 @@ end ActiveAdmin.register JamRuby::AdCampaign, as: 'AdCampaign' do menu :label => 'Ad Campaigns', :parent => 'Reports' - before_filter :skip_sidebar!, :only => :index + before_action :skip_sidebar!, :only => :index config.batch_actions = false config.clear_action_items! config.sort_order = "users.origin_utm_campaign DESC" diff --git a/admin/app/admin/affiliates.rb b/admin/app/admin/affiliates.rb index 8bfc083bb..4845ff13a 100644 --- a/admin/app/admin/affiliates.rb +++ b/admin/app/admin/affiliates.rb @@ -136,10 +136,12 @@ ActiveAdmin.register JamRuby::AffiliatePartner, :as => 'Affiliates' do end - action_item :only => [:show] do - link_to("Mark Paid", - mark_paid_admin_affiliate_path(resource.id), - :confirm => "Mark this affiliate as PAID?") if resource.unpaid + action_item :mark_paid, only: :show do + if params[:id] && resource.unpaid + link_to("Mark Paid", + mark_paid_admin_affiliate_path(resource.id), + :confirm => "Mark this affiliate as PAID?") + end end member_action :mark_paid, :method => :get do diff --git a/admin/app/admin/connections.rb b/admin/app/admin/connections.rb index c21633588..9bd754581 100644 --- a/admin/app/admin/connections.rb +++ b/admin/app/admin/connections.rb @@ -29,7 +29,7 @@ ActiveAdmin.register JamRuby::Connection, :as => 'Connection' do end action_item :only => [:show] do - link_to('Reload', reload_admin_connection_path(resource.id), class: 'confirm') + link_to('Reload', reload_admin_connection_path(resource.id), class: 'confirm') if params[:id] end member_action :reload, :method => :get do connection = Connection.find(params[:id]) @@ -38,7 +38,7 @@ ActiveAdmin.register JamRuby::Connection, :as => 'Connection' do end action_item :only => [:show] do - link_to('Restart Client', restart_admin_connection_path(resource.id), class: 'confirm') if resource.client_type == 'client' + link_to('Restart Client', restart_admin_connection_path(resource.id), class: 'confirm') if params[:id] && resource.client_type == 'client' end member_action :restart, :method => :get do connection = Connection.find(params[:id]) @@ -47,7 +47,7 @@ ActiveAdmin.register JamRuby::Connection, :as => 'Connection' do end action_item :only => [:show] do - link_to('Shutdown Client', stop_admin_connection_path(resource.id), class: 'confirm') if resource.client_type == 'client' + link_to('Shutdown Client', stop_admin_connection_path(resource.id), class: 'confirm') if params[:id] && resource.client_type == 'client' end member_action :stop, :method => :get do connection = Connection.find(params[:id]) diff --git a/admin/app/admin/email_batch.rb b/admin/app/admin/email_batch.rb index 4c5150dd5..9831c920d 100644 --- a/admin/app/admin/email_batch.rb +++ b/admin/app/admin/email_batch.rb @@ -10,26 +10,26 @@ ActiveAdmin.register JamRuby::EmailBatch, :as => 'Batch Emails' do form :partial => 'form' action_item :only => [:show] do - link_to('Edit Batch Email', edit_admin_batch_email_path(resource.id)) if resource.can_run_batch? + link_to('Edit Batch Email', edit_admin_batch_email_path(resource.id)) if params[:id] && resource.can_run_batch? end action_item :only => [:show] do link_to("Test Batch (#{resource.test_count})", batch_test_admin_batch_email_path(resource.id), - :confirm => "Run test batch with #{resource.test_count} emails?") if resource.can_run_test? + :confirm => "Run test batch with #{resource.test_count} emails?") if params[:id] && resource.can_run_test? end action_item :only => [:show] do link_to("Deliver Batch (#{User.email_opt_in.count})", batch_send_admin_batch_email_path(resource.id), - :confirm => "Run LIVE batch with #{User.email_opt_in.count} emails?") if resource.can_run_batch? + :confirm => "Run LIVE batch with #{User.email_opt_in.count} emails?") if params[:id] && resource.can_run_batch? end action_item :only => [:show, :edit] do - link_to('Clone Batch Email', batch_clone_admin_batch_email_path(resource.id)) + link_to('Clone Batch Email', batch_clone_admin_batch_email_path(resource.id)) if params[:id] end - action_item do + action_item :new_batch_email do link_to('New Batch Email', new_admin_batch_email_path) end diff --git a/admin/app/admin/icecast_bootstrap.rb b/admin/app/admin/icecast_bootstrap.rb index 6367fff89..d5d19b0f0 100644 --- a/admin/app/admin/icecast_bootstrap.rb +++ b/admin/app/admin/icecast_bootstrap.rb @@ -205,11 +205,11 @@ ActiveAdmin.register_page "Bootstrap" do end - action_item do + action_item :create_brew_template do link_to "Create MacOSX (Brew) Template", admin_bootstrap_brew_template_path, :method => :post end - action_item do + action_item :create_ubuntu_template do link_to "Create Ubuntu 12.04 Template", admin_bootstrap_ubuntu_template_path, :method => :post end diff --git a/admin/app/admin/icecast_server_group.rb b/admin/app/admin/icecast_server_group.rb index 2c560996d..185086bf2 100644 --- a/admin/app/admin/icecast_server_group.rb +++ b/admin/app/admin/icecast_server_group.rb @@ -1,3 +1,4 @@ ActiveAdmin.register JamRuby::IcecastServerGroup, :as => 'IcecastServerGroup' do menu :parent => 'Icecast' + index download_links: false end diff --git a/admin/app/admin/jam_class_knobs.rb b/admin/app/admin/jam_class_knobs.rb index f27e3f0e0..c7747b4e9 100644 --- a/admin/app/admin/jam_class_knobs.rb +++ b/admin/app/admin/jam_class_knobs.rb @@ -8,7 +8,7 @@ ActiveAdmin.register_page "Jam Class Knobs" do end - action_item do + action_item :force_hourly do link_to "Force Hourly Background Job", admin_jam_class_knobs_force_hourly_path, :method => :post end end \ No newline at end of file diff --git a/admin/app/admin/jam_ruby_artifact_updates.rb b/admin/app/admin/jam_ruby_artifact_updates.rb index de0a4f65b..f92d3b859 100644 --- a/admin/app/admin/jam_ruby_artifact_updates.rb +++ b/admin/app/admin/jam_ruby_artifact_updates.rb @@ -21,7 +21,7 @@ ActiveAdmin.register JamRuby::ArtifactUpdate, :as => 'Artifacts' do end action_item :only => [:show] do - link_to('Send Client Update Notice', send_client_update_notice_admin_artifact_path(resource.id)) + link_to('Send Client Update Notice', send_client_update_notice_admin_artifact_path(resource.id)) if params[:id] end member_action :send_client_update_notice, :method => :get do diff --git a/admin/app/admin/jam_ruby_users.rb b/admin/app/admin/jam_ruby_users.rb index d65f2bc39..043bc7169 100644 --- a/admin/app/admin/jam_ruby_users.rb +++ b/admin/app/admin/jam_ruby_users.rb @@ -28,7 +28,7 @@ ActiveAdmin.register JamRuby::User, :as => 'Users' do end action_item :latency, only: :show do - link_to 'Show Latency', latency_admin_user_path(resource) + link_to 'Show Latency', latency_admin_user_path(resource) if params[:id] end collection_action :add_school_user, method: [:get, :post] do diff --git a/admin/app/admin/jammers_subscription_cohorts.rb b/admin/app/admin/jammers_subscription_cohorts.rb index 336e86ae9..8185d23f7 100644 --- a/admin/app/admin/jammers_subscription_cohorts.rb +++ b/admin/app/admin/jammers_subscription_cohorts.rb @@ -54,9 +54,9 @@ ActiveAdmin.register_page "Jammers Subscription Cohorts" do j.created_at LIMIT 1 -- Select only that single row ) j ON TRUE }) - .group("date_trunc('month', users.created_at)") + .group(Arel.sql("date_trunc('month', users.created_at)")) .where("j.created_at IS NULL OR (j.created_at - users.created_at) >= INTERVAL '2 hours'") - .order("date_trunc('month', users.created_at) DESC") do |row| + .order(Arel.sql("date_trunc('month', users.created_at) DESC")) do |row| column "Month", Proc.new { |user| user.month.strftime('%B %Y') } column "Total", :total column "Subscribed", Proc.new { |user| raw(Spacer.spacer(user.subscribed, user)) } diff --git a/admin/app/admin/jamtrack_subscription_cohorts.rb b/admin/app/admin/jamtrack_subscription_cohorts.rb index 5b78f4f20..070c3cbfc 100644 --- a/admin/app/admin/jamtrack_subscription_cohorts.rb +++ b/admin/app/admin/jamtrack_subscription_cohorts.rb @@ -54,7 +54,7 @@ ActiveAdmin.register_page "JamTrack Subscription Cohorts" do j.created_at LIMIT 1 -- Select only that single row ) j ON (j.created_at - users.created_at) < INTERVAL '2 hours' }) - .group("date_trunc('month', users.created_at)").order("date_trunc('month', users.created_at) DESC") do |row| + .group(Arel.sql("date_trunc('month', users.created_at)")).order(Arel.sql("date_trunc('month', users.created_at) DESC")) do |row| column "Month", Proc.new { |user| user.month.strftime('%B %Y') } column "Total", :total column "Subscribed", Proc.new { |user| raw(Spacer.spacer(user.subscribed, user)) } diff --git a/admin/app/admin/score_history.rb b/admin/app/admin/score_history.rb index 7786b4c29..bd50b96c5 100644 --- a/admin/app/admin/score_history.rb +++ b/admin/app/admin/score_history.rb @@ -37,7 +37,7 @@ ActiveAdmin.register JamRuby::ScoreHistory, :as => 'Score History' do filter :to_latitude filter :to_longitude - before_filter only: :index do + before_action only: :index do @per_page = 1_000_000 if request.format == 'text/csv' end diff --git a/admin/app/admin/subscription_override.rb b/admin/app/admin/subscription_override.rb index 8831c66cf..eaf571f47 100644 --- a/admin/app/admin/subscription_override.rb +++ b/admin/app/admin/subscription_override.rb @@ -2,6 +2,8 @@ ActiveAdmin.register User, :as => 'User_Override' do menu :label => 'Subscription', :parent => 'Users' + config.filters = false + form title: 'Use This To Give a No-Payment Subscription' do |f| inputs 'Details' do input :admin_override_touch, :as => :hidden, value: 'true' diff --git a/admin/app/assets/config/manifest.js b/admin/app/assets/config/manifest.js new file mode 100644 index 000000000..fb27c7262 --- /dev/null +++ b/admin/app/assets/config/manifest.js @@ -0,0 +1,4 @@ +//= link_tree ../images +//= link_directory ../javascripts .js +//= link_directory ../stylesheets .css +//= link jquery-ui/theme.css \ No newline at end of file diff --git a/admin/app/assets/javascripts/active_admin.js.coffee b/admin/app/assets/javascripts/active_admin.js.coffee deleted file mode 100644 index 7d9d7acbd..000000000 --- a/admin/app/assets/javascripts/active_admin.js.coffee +++ /dev/null @@ -1,10 +0,0 @@ -#= require active_admin/base -#= require jquery3 -#= require best_in_place -#= require jquery.purr -#= require best_in_place.purr - -$(document).ready -> - # IS NOT HAPPENING: USE ACTIVE_ADMIN.JS - console.log("DAT COFFEE INIT") - jQuery(".best_in_place").best_in_place() \ No newline at end of file diff --git a/admin/app/assets/stylesheets/active_admin.scss b/admin/app/assets/stylesheets/active_admin.scss deleted file mode 100644 index d3c61f387..000000000 --- a/admin/app/assets/stylesheets/active_admin.scss +++ /dev/null @@ -1,17 +0,0 @@ -// SASS variable overrides must be declared before loading up Active Admin's styles. -// -// To view the variables that Active Admin provides, take a look at -// `app/assets/stylesheets/active_admin/mixins/_variables.scss` in the -// Active Admin source. -// -// For example, to change the sidebar width: -// $sidebar-width: 242px; - -// Active Admin's got SASS! -@import "active_admin/mixins"; -@import "active_admin/base"; - -// Overriding any non-variable SASS must be done after the fact. -// For example, to change the default status-tag color: -// -// .status_tag { background: #6090DB; } diff --git a/admin/app/controllers/application_controller.rb b/admin/app/controllers/application_controller.rb index d3e00deb6..a77ddbfee 100644 --- a/admin/app/controllers/application_controller.rb +++ b/admin/app/controllers/application_controller.rb @@ -3,7 +3,7 @@ class ApplicationController < ActionController::Base protect_from_forgery - before_filter :prepare_gon + before_action :prepare_gon def prepare_gon @olark_enabled = false diff --git a/admin/app/models/cohort.rb b/admin/app/models/cohort.rb index dcf7e51f2..dd605d05c 100644 --- a/admin/app/models/cohort.rb +++ b/admin/app/models/cohort.rb @@ -74,7 +74,7 @@ class Cohort < ActiveRecord::Base end def self.generate_monthly_cohorts(monthly_start, monthly_end) - Cohort.delete_all(['all_time = ?',false]) + Cohort.where(all_time: false).delete_all self.cohort_group_ranges.collect do |range| next if range.first > monthly_end cc = Cohort.new @@ -89,7 +89,7 @@ class Cohort < ActiveRecord::Base end def self.generate_all_time_cohorts - Cohort.delete_all("all_time = 't'") + Cohort.where(all_time: true).delete_all self.cohort_group_ranges.collect do |range| unless cc = Cohort.where(group_start: range.first).where(all_time: true).limit(1).first cc = Cohort.new diff --git a/admin/app/uploaders/image_uploader.rb b/admin/app/uploaders/image_uploader.rb index f094084d4..68495db4f 100644 --- a/admin/app/uploaders/image_uploader.rb +++ b/admin/app/uploaders/image_uploader.rb @@ -2,8 +2,8 @@ class ImageUploader < CarrierWave::Uploader::Base include CarrierWaveDirect::Uploader - include CarrierWave::MimeTypes - process :set_content_type + # include CarrierWave::MimeTypes + # process :set_content_type def initialize(*) diff --git a/admin/config/application.rb b/admin/config/application.rb index 2f1330667..a6655f7b7 100644 --- a/admin/config/application.rb +++ b/admin/config/application.rb @@ -1,6 +1,22 @@ require File.expand_path('../boot', __FILE__) -require 'rails/all' +# require 'rails/all' +require "rails" +# Pick the frameworks you want: +require "active_model/railtie" +require "active_job/railtie" +require "active_record/railtie" +# require "active_storage/engine" +require "action_controller/railtie" +require "action_mailer/railtie" +# require "action_mailbox/engine" +# require "action_text/engine" +require "action_view/railtie" +# require "action_cable/engine" +require "sprockets/railtie" +require "rails/test_unit/railtie" + +require 'inherited_resources' # initialize ActiveRecord's db connection # why? Because user.rb uses validates :acceptance, which needs a connection to the database. if there is better way... @@ -35,7 +51,7 @@ module JamAdmin # config.plugins = [ :exception_notification, :ssl_requirement, :all ] # Activate observers that should always be running. - config.active_record.observers = "JamRuby::InvitedUserObserver" + # config.active_record.observers = "JamRuby::InvitedUserObserver" config.assets.paths << "#{Rails.root}/app/assets/csvs" config.assets.prefix = "#{ENV['RAILS_RELATIVE_URL_ROOT']}/assets" diff --git a/admin/config/boot.rb b/admin/config/boot.rb index 56e91c277..7cbc2c0e2 100644 --- a/admin/config/boot.rb +++ b/admin/config/boot.rb @@ -3,18 +3,17 @@ require 'rubygems' # Set up gems listed in the Gemfile. ENV['BUNDLE_GEMFILE'] ||= File.expand_path('../../Gemfile', __FILE__) -require 'bundler/setup' if File.exists?(ENV['BUNDLE_GEMFILE']) +require 'bundler/setup' if File.exist?(ENV['BUNDLE_GEMFILE']) -# change default port of jam-admin so that it's easy to run both -require 'rails/commands/server' +# require 'rails/commands/server' -module Rails - class Server - alias :default_options_alias :default_options - def default_options - default_options_alias.merge!( - :Port => 3333 + ENV['JAM_INSTANCE'].to_i, - :pid => File.expand_path("tmp/pids/server-#{ENV['JAM_INSTANCE'].to_i}.pid")) - end - end -end \ No newline at end of file +# module Rails +# class Server +# alias :default_options_alias :default_options +# def default_options +# default_options_alias.merge!( +# :Port => 3333 + ENV['JAM_INSTANCE'].to_i, +# :pid => File.expand_path("tmp/pids/server-#{ENV['JAM_INSTANCE'].to_i}.pid")) +# end +# end +# end \ No newline at end of file diff --git a/admin/config/environment.rb b/admin/config/environment.rb index 92e6d1539..640a5a47c 100644 --- a/admin/config/environment.rb +++ b/admin/config/environment.rb @@ -1,7 +1,7 @@ # Load the rails application require File.expand_path('../application', __FILE__) -APP_CONFIG = Rails.application.config +APP_CONFIG = Rails.application.config unless defined?(APP_CONFIG) Stats.client = InfluxDB::Rails.client # Initialize the rails application diff --git a/admin/config/environments/development.rb b/admin/config/environments/development.rb index 2d0595cd7..651ecaaa4 100644 --- a/admin/config/environments/development.rb +++ b/admin/config/environments/development.rb @@ -26,7 +26,7 @@ JamAdmin::Application.configure do config.action_dispatch.best_standards_support = :builtin # Raise exception on mass assignment protection for Active Record models - config.active_record.mass_assignment_sanitizer = :strict + # config.active_record.mass_assignment_sanitizer = :strict # Do not compress assets diff --git a/admin/config/environments/test.rb b/admin/config/environments/test.rb index f8700bd0f..d7c8deccc 100644 --- a/admin/config/environments/test.rb +++ b/admin/config/environments/test.rb @@ -30,7 +30,7 @@ JamAdmin::Application.configure do config.action_mailer.delivery_method = :test # Raise exception on mass assignment protection for Active Record models - config.active_record.mass_assignment_sanitizer = :strict + # config.active_record.mass_assignment_sanitizer = :strict # Print deprecation notices to the stderr config.active_support.deprecation = :stderr diff --git a/admin/config/initializers/active_admin.rb b/admin/config/initializers/active_admin.rb index 8f5e04739..dffcfb1a7 100644 --- a/admin/config/initializers/active_admin.rb +++ b/admin/config/initializers/active_admin.rb @@ -1,3 +1,25 @@ +module DeviseHelper + def devise_error_messages! + return "" if resource.errors.empty? + + messages = resource.errors.full_messages.map { |msg| content_tag(:li, msg) }.join + html = <<-HTML +