diff options
50 files changed, 784 insertions, 0 deletions
| diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..eb3489a --- /dev/null +++ b/.gitignore @@ -0,0 +1,15 @@ +# See http://help.github.com/ignore-files/ for more about ignoring files. +# +# If you find yourself ignoring temporary files generated by your text editor +# or operating system, you probably want to add a global ignore instead: +#   git config --global core.excludesfile ~/.gitignore_global + +# Ignore bundler config +/.bundle + +# Ignore the default SQLite database. +/db/*.sqlite3 + +# Ignore all logfiles and tempfiles. +/log/*.log +/tmp @@ -0,0 +1,5 @@ +load 'deploy' +# Uncomment if you are using Rails' asset pipeline +load 'deploy/assets' +Dir['vendor/gems/*/recipes/*.rb','vendor/plugins/*/recipes/*.rb'].each { |plugin| load(plugin) } +load 'config/deploy' # remove this line to skip loading any of the default tasks @@ -0,0 +1,46 @@ +source 'https://rubygems.org' + +gem 'rails', '3.2.8' + +# Bundle edge Rails instead: +# gem 'rails', :git => 'git://github.com/rails/rails.git' + + +gem 'json' + +# Gems used only for assets and not required +# in production environments by default. +group :assets do +  gem 'haml-rails',   '~> 0.3.4' +  gem 'sass-rails',   '~> 3.2.5' +  gem 'coffee-rails', '~> 3.2.2' + +  # See https://github.com/sstephenson/execjs#readme for more supported runtimes +  # gem 'therubyracer', :platforms => :ruby + +  gem 'uglifier', '>= 1.2.7' +end + +gem 'jquery-rails' +gem 'bootstrap-sass', '~> 2.0.4' +gem 'haml', '~> 3.1.7' +gem 'simple_form' + +gem 'leap_web' + +gem 'couchrest_session_store' + +# To use ActiveModel has_secure_password +# gem 'bcrypt-ruby', '~> 3.0.0' + +# 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 'ruby-debug' diff --git a/Gemfile.lock b/Gemfile.lock new file mode 100644 index 0000000..023f734 --- /dev/null +++ b/Gemfile.lock @@ -0,0 +1,170 @@ +GEM +  remote: https://rubygems.org/ +  specs: +    actionmailer (3.2.8) +      actionpack (= 3.2.8) +      mail (~> 2.4.4) +    actionpack (3.2.8) +      activemodel (= 3.2.8) +      activesupport (= 3.2.8) +      builder (~> 3.0.0) +      erubis (~> 2.7.0) +      journey (~> 1.0.4) +      rack (~> 1.4.0) +      rack-cache (~> 1.2) +      rack-test (~> 0.6.1) +      sprockets (~> 2.1.3) +    activemodel (3.2.8) +      activesupport (= 3.2.8) +      builder (~> 3.0.0) +    activerecord (3.2.8) +      activemodel (= 3.2.8) +      activesupport (= 3.2.8) +      arel (~> 3.0.2) +      tzinfo (~> 0.3.29) +    activeresource (3.2.8) +      activemodel (= 3.2.8) +      activesupport (= 3.2.8) +    activesupport (3.2.8) +      i18n (~> 0.6) +      multi_json (~> 1.0) +    arel (3.0.2) +    bootstrap-sass (2.0.4.0) +    builder (3.0.0) +    coffee-rails (3.2.2) +      coffee-script (>= 2.2.0) +      railties (~> 3.2.0) +    coffee-script (2.2.0) +      coffee-script-source +      execjs +    coffee-script-source (1.3.3) +    columnize (0.3.6) +    couchrest (1.1.3) +      mime-types (~> 1.15) +      multi_json (~> 1.0) +      rest-client (~> 1.6.1) +    couchrest_model (2.0.0.beta2) +      activemodel (~> 3.0) +      couchrest (~> 1.1.3) +      mime-types (~> 1.15) +      tzinfo (~> 0.3.22) +    couchrest_session_store (0.0.1) +      couchrest +      couchrest_model +    erubis (2.7.0) +    execjs (1.4.0) +      multi_json (~> 1.0) +    haml (3.1.7) +    haml-rails (0.3.4) +      actionpack (~> 3.0) +      activesupport (~> 3.0) +      haml (~> 3.0) +      railties (~> 3.0) +    hike (1.2.1) +    i18n (0.6.0) +    journey (1.0.4) +    jquery-rails (2.1.1) +      railties (>= 3.1.0, < 5.0) +      thor (~> 0.14) +    json (1.7.5) +    leap_web (0.0.1) +      leap_web_certs +      leap_web_core +      leap_web_users +    leap_web_certs (0.0.1) +      leap_web_core (~> 0.0.1) +      rails (~> 3.2.8) +    leap_web_core (0.0.1) +      couchrest (~> 1.1.3) +      couchrest_model (~> 2.0.0.beta2) +      rails (~> 3.2.8) +    leap_web_users (0.0.1) +      bootstrap-sass (~> 2.0.4) +      haml (~> 3.1.7) +      jquery-rails +      leap_web_core (~> 0.0.1) +      rails (~> 3.2.8) +      ruby-srp +      simple_form +    linecache (0.46) +      rbx-require-relative (> 0.0.4) +    mail (2.4.4) +      i18n (>= 0.4.0) +      mime-types (~> 1.16) +      treetop (~> 1.4.8) +    mime-types (1.19) +    multi_json (1.3.6) +    polyglot (0.3.3) +    rack (1.4.1) +    rack-cache (1.2) +      rack (>= 0.4) +    rack-ssl (1.3.2) +      rack +    rack-test (0.6.1) +      rack (>= 1.0) +    rails (3.2.8) +      actionmailer (= 3.2.8) +      actionpack (= 3.2.8) +      activerecord (= 3.2.8) +      activeresource (= 3.2.8) +      activesupport (= 3.2.8) +      bundler (~> 1.0) +      railties (= 3.2.8) +    railties (3.2.8) +      actionpack (= 3.2.8) +      activesupport (= 3.2.8) +      rack-ssl (~> 1.3.2) +      rake (>= 0.8.7) +      rdoc (~> 3.4) +      thor (>= 0.14.6, < 2.0) +    rake (0.9.2.2) +    rbx-require-relative (0.0.9) +    rdoc (3.12) +      json (~> 1.4) +    rest-client (1.6.7) +      mime-types (>= 1.16) +    ruby-debug (0.10.4) +      columnize (>= 0.1) +      ruby-debug-base (~> 0.10.4.0) +    ruby-debug-base (0.10.4) +      linecache (>= 0.3) +    ruby-srp (0.0.2) +    sass (3.2.1) +    sass-rails (3.2.5) +      railties (~> 3.2.0) +      sass (>= 3.1.10) +      tilt (~> 1.3) +    simple_form (2.0.2) +      actionpack (~> 3.0) +      activemodel (~> 3.0) +    sprockets (2.1.3) +      hike (~> 1.2) +      rack (~> 1.0) +      tilt (~> 1.1, != 1.3.0) +    thor (0.16.0) +    tilt (1.3.3) +    treetop (1.4.10) +      polyglot +      polyglot (>= 0.3.1) +    tzinfo (0.3.33) +    uglifier (1.2.7) +      execjs (>= 0.3.0) +      multi_json (~> 1.3) + +PLATFORMS +  ruby + +DEPENDENCIES +  bootstrap-sass (~> 2.0.4) +  coffee-rails (~> 3.2.2) +  couchrest_session_store +  haml (~> 3.1.7) +  haml-rails (~> 0.3.4) +  jquery-rails +  json +  leap_web +  rails (= 3.2.8) +  ruby-debug +  sass-rails (~> 3.2.5) +  simple_form +  uglifier (>= 1.2.7) diff --git a/INSTALL.md b/INSTALL.md new file mode 100644 index 0000000..ff7374e --- /dev/null +++ b/INSTALL.md @@ -0,0 +1,31 @@ +Installation +------------- + + +### Requirements ### + +This file documents installing the webapp demo on a debian system. For other systems you might have to use other commands / packages. + +The webapp only depends on very basic ruby packages and installs the other requirements as gems for now. We use git for version controll and capistrano to deploy. + +#### Packages #### + +The following packages need to be installed: + +* git +* ruby1.8 +* rubygems1.8 +* couchdb + +#### Gems #### + +We install most gems we depend upon through bundler. However the bundler gem needs to be installed and the '''bundle''' command needs to be available to the user used for deploy. + +### Setup Capistrano ### + +run capify in the source tree and edit config/deploy.rb to match your needs. We ship an example in config/deploy.rb.example. + +run '''cap deploy:setup''' to create the directory structure. + +run '''cap deploy''' to deploy to the server. + diff --git a/Rakefile b/Rakefile new file mode 100644 index 0000000..d09b419 --- /dev/null +++ b/Rakefile @@ -0,0 +1,7 @@ +#!/usr/bin/env rake +# Add your own tasks in files placed in lib/tasks ending in .rake, +# for example lib/tasks/capistrano.rake, and they will automatically be available to Rake. + +require File.expand_path('../config/application', __FILE__) + +LeapWebDemo::Application.load_tasks diff --git a/Readme.md b/Readme.md new file mode 100644 index 0000000..848a12d --- /dev/null +++ b/Readme.md @@ -0,0 +1,4 @@ +# Leap Web Demo # + +Demo application to showcase the LEAP web app. + diff --git a/app/assets/images/rails.png b/app/assets/images/rails.pngBinary files differ new file mode 100644 index 0000000..d5edc04 --- /dev/null +++ b/app/assets/images/rails.png diff --git a/app/assets/javascripts/application.js b/app/assets/javascripts/application.js new file mode 100644 index 0000000..9097d83 --- /dev/null +++ b/app/assets/javascripts/application.js @@ -0,0 +1,15 @@ +// This is a manifest file that'll be compiled into application.js, which will include all the files +// listed below. +// +// Any JavaScript/Coffee file within this directory, lib/assets/javascripts, vendor/assets/javascripts, +// or vendor/assets/javascripts of plugins, if any, can be referenced here using a relative path. +// +// It's not advisable to add code directly here, but if you do, it'll appear at the bottom of the +// the compiled file. +// +// WARNING: THE FIRST BLANK LINE MARKS THE END OF WHAT'S TO BE PROCESSED, ANY BLANK LINE SHOULD +// GO AFTER THE REQUIRES BELOW. +// +//= require jquery +//= require jquery_ujs +//= require_tree . diff --git a/app/assets/stylesheets/application.scss b/app/assets/stylesheets/application.scss new file mode 100644 index 0000000..cbd46a7 --- /dev/null +++ b/app/assets/stylesheets/application.scss @@ -0,0 +1 @@ +@import "bootstrap"; diff --git a/app/controllers/application_controller.rb b/app/controllers/application_controller.rb new file mode 100644 index 0000000..e8065d9 --- /dev/null +++ b/app/controllers/application_controller.rb @@ -0,0 +1,3 @@ +class ApplicationController < ActionController::Base +  protect_from_forgery +end diff --git a/app/helpers/application_helper.rb b/app/helpers/application_helper.rb new file mode 100644 index 0000000..de6be79 --- /dev/null +++ b/app/helpers/application_helper.rb @@ -0,0 +1,2 @@ +module ApplicationHelper +end diff --git a/app/mailers/.gitkeep b/app/mailers/.gitkeep new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/app/mailers/.gitkeep diff --git a/app/models/.gitkeep b/app/models/.gitkeep new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/app/models/.gitkeep diff --git a/app/views/home/index.html.haml b/app/views/home/index.html.haml new file mode 100644 index 0000000..11f18de --- /dev/null +++ b/app/views/home/index.html.haml @@ -0,0 +1,4 @@ +%h1 Leap Web Demo + +Try to fetch a  += link_to "cert", cert_path diff --git a/app/views/layouts/application.html.erb b/app/views/layouts/application.html.erb new file mode 100644 index 0000000..a4962fb --- /dev/null +++ b/app/views/layouts/application.html.erb @@ -0,0 +1,14 @@ +<!DOCTYPE html> +<html> +<head> +  <title>LeapWebDemo</title> +  <%= stylesheet_link_tag    "application", :media => "all" %> +  <%= javascript_include_tag "application" %> +  <%= csrf_meta_tags %> +</head> +<body> + +<%= yield %> + +</body> +</html> diff --git a/config.ru b/config.ru new file mode 100644 index 0000000..c6ba8bb --- /dev/null +++ b/config.ru @@ -0,0 +1,4 @@ +# This file is used by Rack-based servers to start the application. + +require ::File.expand_path('../config/environment',  __FILE__) +run LeapWebDemo::Application diff --git a/config/application.rb b/config/application.rb new file mode 100644 index 0000000..5d44a94 --- /dev/null +++ b/config/application.rb @@ -0,0 +1,68 @@ +require File.expand_path('../boot', __FILE__) + +# Pick the frameworks you want: +# require "active_record/railtie" +require "action_controller/railtie" +require "action_mailer/railtie" +require "active_resource/railtie" +require "sprockets/railtie" +require "rails/test_unit/railtie" + +if defined?(Bundler) +  # If you precompile assets before deploying to production, use this line +  Bundler.require(*Rails.groups(:assets => %w(development test))) +  # If you want your assets lazily compiled in production, use this line +  # Bundler.require(:default, :assets, Rails.env) +end + +module LeapWebDemo +  class Application < Rails::Application +    # Settings in config/environments/* take precedence over those specified here. +    # Application configuration should go into files in config/initializers +    # -- all .rb files in that directory are automatically loaded. + +    # Custom directories with classes and modules you want to be autoloadable. +    # config.autoload_paths += %W(#{config.root}/extras) + +    # Only load the plugins named here, in the order given (default is alphabetical). +    # :all can be used as a placeholder for all plugins not explicitly named. +    # config.plugins = [ :exception_notification, :ssl_requirement, :all ] + +    # Activate observers that should always be running. +    # config.active_record.observers = :cacher, :garbage_collector, :forum_observer + +    # Set Time.zone default to the specified zone and make Active Record auto-convert to this zone. +    # Run "rake -D time" for a list of tasks for finding time zone names. Default is UTC. +    # config.time_zone = 'Central Time (US & Canada)' + +    # The default locale is :en and all translations from config/locales/*.rb,yml are auto loaded. +    # config.i18n.load_path += Dir[Rails.root.join('my', 'locales', '*.{rb,yml}').to_s] +    # config.i18n.default_locale = :de + +    # Configure the default encoding used in templates for Ruby 1.9. +    config.encoding = "utf-8" + +    # Configure sensitive parameters which will be filtered from the log file. +    config.filter_parameters += [:password] + +    # Enable escaping HTML in JSON. +    config.active_support.escape_html_entities_in_json = true + +    # Use SQL instead of Active Record's schema dumper when creating the database. +    # This is necessary if your schema can't be completely dumped by the schema dumper, +    # like if you have constraints or database-specific column types +    # config.active_record.schema_format = :sql + +    # Enforce whitelist mode for mass assignment. +    # This will create an empty whitelist of attributes available for mass-assignment for all models +    # in your app. As such, your models will need to explicitly whitelist or blacklist accessible +    # parameters by using an attr_accessible or attr_protected declaration. +    # config.active_record.whitelist_attributes = true + +    # Enable the asset pipeline +    config.assets.enabled = true + +    # Version of your assets, change this if you want to expire all your assets +    config.assets.version = '1.0' +  end +end diff --git a/config/boot.rb b/config/boot.rb new file mode 100644 index 0000000..4489e58 --- /dev/null +++ b/config/boot.rb @@ -0,0 +1,6 @@ +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']) diff --git a/config/deploy.rb.example b/config/deploy.rb.example new file mode 100644 index 0000000..552c820 --- /dev/null +++ b/config/deploy.rb.example @@ -0,0 +1,35 @@ +require "bundler/capistrano" + +set :application, "webapp" +set :repository,  "git://leap.se/leap_web_demo" + +set :scm, :git +# Or: `accurev`, `bzr`, `cvs`, `darcs`, `git`, `mercurial`, `perforce`, `subversion` or `none` + +set :deploy_via, :remote_cache +set :deploy_to, '/home/webapp' +set :use_sudo, false + +set :normalize_asset_timestamps, false + +set :user, "webapp" + +role :web, "YOUR SERVER GOES HERE"                          # Your HTTP server, Apache/etc +role :app, "YOUR SERVER GOES HERE"                          # This may be the same as your `Web` server +# role :db,  "your primary db-server here", :primary => true # This is where Rails migrations will run +# role :db,  "your slave db-server here" + +# if you want to clean up old releases on each deploy uncomment this: +# after "deploy:restart", "deploy:cleanup" + +# if you're still using the script/reaper helper you will need +# these http://github.com/rails/irs_process_scripts + +# If you are using Passenger mod_rails uncomment this: +# namespace :deploy do +#   task :start do ; end +#   task :stop do ; end +#   task :restart, :roles => :app, :except => { :no_release => true } do +#     run "#{try_sudo} touch #{File.join(current_path,'tmp','restart.txt')}" +#   end +# end diff --git a/config/environment.rb b/config/environment.rb new file mode 100644 index 0000000..198698d --- /dev/null +++ b/config/environment.rb @@ -0,0 +1,5 @@ +# Load the rails application +require File.expand_path('../application', __FILE__) + +# Initialize the rails application +LeapWebDemo::Application.initialize! diff --git a/config/environments/development.rb b/config/environments/development.rb new file mode 100644 index 0000000..19ade85 --- /dev/null +++ b/config/environments/development.rb @@ -0,0 +1,31 @@ +LeapWebDemo::Application.configure do +  # Settings specified here will take precedence over those in config/application.rb + +  # In the development environment your application's code is reloaded on +  # every request. This slows down response time but is perfect for development +  # since you don't have to restart the web server when you make code changes. +  config.cache_classes = false + +  # Log error messages when you accidentally call methods on nil. +  config.whiny_nils = true + +  # Show full error reports and disable caching +  config.consider_all_requests_local       = true +  config.action_controller.perform_caching = false + +  # Don't care if the mailer can't send +  config.action_mailer.raise_delivery_errors = false + +  # Print deprecation notices to the Rails logger +  config.active_support.deprecation = :log + +  # Only use best-standards-support built into browsers +  config.action_dispatch.best_standards_support = :builtin + + +  # Do not compress assets +  config.assets.compress = false + +  # Expands the lines which load the assets +  config.assets.debug = true +end diff --git a/config/environments/production.rb b/config/environments/production.rb new file mode 100644 index 0000000..d89379b --- /dev/null +++ b/config/environments/production.rb @@ -0,0 +1,64 @@ +LeapWebDemo::Application.configure do +  # Settings specified here will take precedence over those in config/application.rb + +  # Code is not reloaded between requests +  config.cache_classes = true + +  # Full error reports are disabled and caching is turned on +  config.consider_all_requests_local       = false +  config.action_controller.perform_caching = true + +  # Disable Rails's static asset server (Apache or nginx will already do this) +  config.serve_static_assets = false + +  # Compress JavaScripts and CSS +  config.assets.compress = true + +  # Don't fallback to assets pipeline if a precompiled asset is missed +  config.assets.compile = false + +  # Generate digests for assets URLs +  config.assets.digest = true + +  # Defaults to nil and saved in location specified by config.assets.prefix +  # config.assets.manifest = YOUR_PATH + +  # Specifies the header that your server uses for sending files +  # config.action_dispatch.x_sendfile_header = "X-Sendfile" # for apache +  # config.action_dispatch.x_sendfile_header = 'X-Accel-Redirect' # for nginx + +  # Force all access to the app over SSL, use Strict-Transport-Security, and use secure cookies. +  # config.force_ssl = true + +  # See everything in the log (default is :info) +  # config.log_level = :debug + +  # Prepend all log lines with the following tags +  # config.log_tags = [ :subdomain, :uuid ] + +  # Use a different logger for distributed setups +  # config.logger = ActiveSupport::TaggedLogging.new(SyslogLogger.new) + +  # Use a different cache store in production +  # config.cache_store = :mem_cache_store + +  # Enable serving of images, stylesheets, and JavaScripts from an asset server +  # config.action_controller.asset_host = "http://assets.example.com" + +  # Precompile additional assets (application.js, application.css, and all non-JS/CSS are already added) +  # config.assets.precompile += %w( search.js ) + +  # Disable delivery errors, bad email addresses will be ignored +  # config.action_mailer.raise_delivery_errors = false + +  # Enable threaded mode +  # config.threadsafe! + +  # Enable locale fallbacks for I18n (makes lookups for any locale fall back to +  # the I18n.default_locale when a translation can not be found) +  config.i18n.fallbacks = true + +  # Send deprecation notices to registered listeners +  config.active_support.deprecation = :notify + +end diff --git a/config/environments/test.rb b/config/environments/test.rb new file mode 100644 index 0000000..b0a542e --- /dev/null +++ b/config/environments/test.rb @@ -0,0 +1,35 @@ +LeapWebDemo::Application.configure do +  # Settings specified here will take precedence over those in config/application.rb + +  # The test environment is used exclusively to run your application's +  # test suite. You never need to work with it otherwise. Remember that +  # your test database is "scratch space" for the test suite and is wiped +  # and recreated between test runs. Don't rely on the data there! +  config.cache_classes = true + +  # Configure static asset server for tests with Cache-Control for performance +  config.serve_static_assets = true +  config.static_cache_control = "public, max-age=3600" + +  # Log error messages when you accidentally call methods on nil +  config.whiny_nils = true + +  # Show full error reports and disable caching +  config.consider_all_requests_local       = true +  config.action_controller.perform_caching = false + +  # Raise exceptions instead of rendering exception templates +  config.action_dispatch.show_exceptions = false + +  # Disable request forgery protection in test environment +  config.action_controller.allow_forgery_protection    = false + +  # Tell Action Mailer not to deliver emails to the real world. +  # The :test delivery method accumulates sent emails in the +  # ActionMailer::Base.deliveries array. +  config.action_mailer.delivery_method = :test + + +  # Print deprecation notices to the stderr +  config.active_support.deprecation = :stderr +end diff --git a/config/initializers/backtrace_silencers.rb b/config/initializers/backtrace_silencers.rb new file mode 100644 index 0000000..59385cd --- /dev/null +++ b/config/initializers/backtrace_silencers.rb @@ -0,0 +1,7 @@ +# Be sure to restart your server when you modify this file. + +# You can add backtrace silencers for libraries that you're using but don't wish to see in your backtraces. +# Rails.backtrace_cleaner.add_silencer { |line| line =~ /my_noisy_library/ } + +# You can also remove all the silencers if you're trying to debug a problem that might stem from framework code. +# Rails.backtrace_cleaner.remove_silencers! diff --git a/config/initializers/inflections.rb b/config/initializers/inflections.rb new file mode 100644 index 0000000..5d8d9be --- /dev/null +++ b/config/initializers/inflections.rb @@ -0,0 +1,15 @@ +# Be sure to restart your server when you modify this file. + +# Add new inflection rules using the following format +# (all these examples are active by default): +# ActiveSupport::Inflector.inflections do |inflect| +#   inflect.plural /^(ox)$/i, '\1en' +#   inflect.singular /^(ox)en/i, '\1' +#   inflect.irregular 'person', 'people' +#   inflect.uncountable %w( fish sheep ) +# end +# +# These inflection rules are supported but not enabled by default: +# ActiveSupport::Inflector.inflections do |inflect| +#   inflect.acronym 'RESTful' +# end diff --git a/config/initializers/mime_types.rb b/config/initializers/mime_types.rb new file mode 100644 index 0000000..72aca7e --- /dev/null +++ b/config/initializers/mime_types.rb @@ -0,0 +1,5 @@ +# Be sure to restart your server when you modify this file. + +# Add new mime types for use in respond_to blocks: +# Mime::Type.register "text/richtext", :rtf +# Mime::Type.register_alias "text/html", :iphone diff --git a/config/initializers/secret_token.rb b/config/initializers/secret_token.rb new file mode 100644 index 0000000..94e038e --- /dev/null +++ b/config/initializers/secret_token.rb @@ -0,0 +1,7 @@ +# Be sure to restart your server when you modify this file. + +# Your secret key for verifying the integrity of signed cookies. +# If you change this key, all old signed cookies will become invalid! +# Make sure the secret is at least 30 characters and all random, +# no regular words or you'll be exposed to dictionary attacks. +LeapWebDemo::Application.config.secret_token = '550df064dbc5052d9e192b324c1c5a1095c85a2195f88bd6f6829c63b74d8dffa4556494a2e8cc44345a1926be8b6cb17aa4b3f3102d826f5679c3fb57bb7100' diff --git a/config/initializers/session_store.rb b/config/initializers/session_store.rb new file mode 100644 index 0000000..0c3a729 --- /dev/null +++ b/config/initializers/session_store.rb @@ -0,0 +1,3 @@ +# Be sure to restart your server when you modify this file. + +LeapWebDemo::Application.config.session_store = CouchRestSessionStore diff --git a/config/initializers/wrap_parameters.rb b/config/initializers/wrap_parameters.rb new file mode 100644 index 0000000..5fe232e --- /dev/null +++ b/config/initializers/wrap_parameters.rb @@ -0,0 +1,10 @@ +# Be sure to restart your server when you modify this file. +# +# This file contains settings for ActionController::ParamsWrapper which +# is enabled by default. + +# Enable parameter wrapping for JSON. You can disable this by setting :format to an empty array. +ActiveSupport.on_load(:action_controller) do +  wrap_parameters :format => [:json] +end + diff --git a/config/locales/en.yml b/config/locales/en.yml new file mode 100644 index 0000000..179c14c --- /dev/null +++ b/config/locales/en.yml @@ -0,0 +1,5 @@ +# Sample localization file for English. Add more files in this directory for other locales. +# See https://github.com/svenfuchs/rails-i18n/tree/master/rails%2Flocale for starting points. + +en: +  hello: "Hello world" diff --git a/config/routes.rb b/config/routes.rb new file mode 100644 index 0000000..eff6844 --- /dev/null +++ b/config/routes.rb @@ -0,0 +1,58 @@ +LeapWebDemo::Application.routes.draw do +  # The priority is based upon order of creation: +  # first created -> highest priority. + +  # Sample of regular route: +  #   match 'products/:id' => 'catalog#view' +  # Keep in mind you can assign values other than :controller and :action + +  # Sample of named route: +  #   match 'products/:id/purchase' => 'catalog#purchase', :as => :purchase +  # This route can be invoked with purchase_url(:id => product.id) + +  # Sample resource route (maps HTTP verbs to controller actions automatically): +  #   resources :products + +  # Sample resource route with options: +  #   resources :products do +  #     member do +  #       get 'short' +  #       post 'toggle' +  #     end +  # +  #     collection do +  #       get 'sold' +  #     end +  #   end + +  # Sample resource route with sub-resources: +  #   resources :products do +  #     resources :comments, :sales +  #     resource :seller +  #   end + +  # Sample resource route with more complex sub-resources +  #   resources :products do +  #     resources :comments +  #     resources :sales do +  #       get 'recent', :on => :collection +  #     end +  #   end + +  # Sample resource route within a namespace: +  #   namespace :admin do +  #     # Directs /admin/products/* to Admin::ProductsController +  #     # (app/controllers/admin/products_controller.rb) +  #     resources :products +  #   end + +  # You can have the root of your site routed with "root" +  # just remember to delete public/index.html. +  # root :to => 'welcome#index' + +  # See how all your routes lay out with "rake routes" + +  # This is a legacy wild controller route that's not recommended for RESTful applications. +  # Note: This route will make all actions in every controller accessible via GET requests. +  # match ':controller(/:action(/:id))(.:format)' +end diff --git a/doc/README_FOR_APP b/doc/README_FOR_APP new file mode 100644 index 0000000..fe41f5c --- /dev/null +++ b/doc/README_FOR_APP @@ -0,0 +1,2 @@ +Use this README file to introduce your application and point to useful places in the API for learning more. +Run "rake doc:app" to generate API documentation for your models, controllers, helpers, and libraries. diff --git a/lib/assets/.gitkeep b/lib/assets/.gitkeep new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/lib/assets/.gitkeep diff --git a/lib/tasks/.gitkeep b/lib/tasks/.gitkeep new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/lib/tasks/.gitkeep diff --git a/public/404.html b/public/404.html new file mode 100644 index 0000000..9a48320 --- /dev/null +++ b/public/404.html @@ -0,0 +1,26 @@ +<!DOCTYPE html> +<html> +<head> +  <title>The page you were looking for doesn't exist (404)</title> +  <style type="text/css"> +    body { background-color: #fff; color: #666; text-align: center; font-family: arial, sans-serif; } +    div.dialog { +      width: 25em; +      padding: 0 4em; +      margin: 4em auto 0 auto; +      border: 1px solid #ccc; +      border-right-color: #999; +      border-bottom-color: #999; +    } +    h1 { font-size: 100%; color: #f00; line-height: 1.5em; } +  </style> +</head> + +<body> +  <!-- This file lives in public/404.html --> +  <div class="dialog"> +    <h1>The page you were looking for doesn't exist.</h1> +    <p>You may have mistyped the address or the page may have moved.</p> +  </div> +</body> +</html> diff --git a/public/422.html b/public/422.html new file mode 100644 index 0000000..83660ab --- /dev/null +++ b/public/422.html @@ -0,0 +1,26 @@ +<!DOCTYPE html> +<html> +<head> +  <title>The change you wanted was rejected (422)</title> +  <style type="text/css"> +    body { background-color: #fff; color: #666; text-align: center; font-family: arial, sans-serif; } +    div.dialog { +      width: 25em; +      padding: 0 4em; +      margin: 4em auto 0 auto; +      border: 1px solid #ccc; +      border-right-color: #999; +      border-bottom-color: #999; +    } +    h1 { font-size: 100%; color: #f00; line-height: 1.5em; } +  </style> +</head> + +<body> +  <!-- This file lives in public/422.html --> +  <div class="dialog"> +    <h1>The change you wanted was rejected.</h1> +    <p>Maybe you tried to change something you didn't have access to.</p> +  </div> +</body> +</html> diff --git a/public/500.html b/public/500.html new file mode 100644 index 0000000..f3648a0 --- /dev/null +++ b/public/500.html @@ -0,0 +1,25 @@ +<!DOCTYPE html> +<html> +<head> +  <title>We're sorry, but something went wrong (500)</title> +  <style type="text/css"> +    body { background-color: #fff; color: #666; text-align: center; font-family: arial, sans-serif; } +    div.dialog { +      width: 25em; +      padding: 0 4em; +      margin: 4em auto 0 auto; +      border: 1px solid #ccc; +      border-right-color: #999; +      border-bottom-color: #999; +    } +    h1 { font-size: 100%; color: #f00; line-height: 1.5em; } +  </style> +</head> + +<body> +  <!-- This file lives in public/500.html --> +  <div class="dialog"> +    <h1>We're sorry, but something went wrong.</h1> +  </div> +</body> +</html> diff --git a/public/favicon.ico b/public/favicon.ico new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/public/favicon.ico diff --git a/public/robots.txt b/public/robots.txt new file mode 100644 index 0000000..085187f --- /dev/null +++ b/public/robots.txt @@ -0,0 +1,5 @@ +# See http://www.robotstxt.org/wc/norobots.html for documentation on how to use the robots.txt file +# +# To ban all spiders from the entire site uncomment the next two lines: +# User-Agent: * +# Disallow: / diff --git a/script/rails b/script/rails new file mode 100755 index 0000000..f138a34 --- /dev/null +++ b/script/rails @@ -0,0 +1,6 @@ +#!/usr/bin/env ruby1.8 +# This command will automatically be run when you run "rails" with Rails 3 gems installed from the root of your application. + +APP_PATH = File.expand_path('../../config/application',  __FILE__) +require File.expand_path('../../config/boot',  __FILE__) +require 'rails/commands' diff --git a/test/fixtures/.gitkeep b/test/fixtures/.gitkeep new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/test/fixtures/.gitkeep diff --git a/test/functional/.gitkeep b/test/functional/.gitkeep new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/test/functional/.gitkeep diff --git a/test/integration/.gitkeep b/test/integration/.gitkeep new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/test/integration/.gitkeep diff --git a/test/performance/browsing_test.rb b/test/performance/browsing_test.rb new file mode 100644 index 0000000..3fea27b --- /dev/null +++ b/test/performance/browsing_test.rb @@ -0,0 +1,12 @@ +require 'test_helper' +require 'rails/performance_test_help' + +class BrowsingTest < ActionDispatch::PerformanceTest +  # Refer to the documentation for all available options +  # self.profile_options = { :runs => 5, :metrics => [:wall_time, :memory] +  #                          :output => 'tmp/performance', :formats => [:flat] } + +  def test_homepage +    get '/' +  end +end diff --git a/test/test_helper.rb b/test/test_helper.rb new file mode 100644 index 0000000..8298517 --- /dev/null +++ b/test/test_helper.rb @@ -0,0 +1,7 @@ +ENV["RAILS_ENV"] = "test" +require File.expand_path('../../config/environment', __FILE__) +require 'rails/test_help' + +class ActiveSupport::TestCase +  # Add more helper methods to be used by all tests here... +end diff --git a/test/unit/.gitkeep b/test/unit/.gitkeep new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/test/unit/.gitkeep diff --git a/vendor/assets/javascripts/.gitkeep b/vendor/assets/javascripts/.gitkeep new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/vendor/assets/javascripts/.gitkeep diff --git a/vendor/assets/stylesheets/.gitkeep b/vendor/assets/stylesheets/.gitkeep new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/vendor/assets/stylesheets/.gitkeep diff --git a/vendor/plugins/.gitkeep b/vendor/plugins/.gitkeep new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/vendor/plugins/.gitkeep | 
