From f087c23c8600fe197d3a59f4a0cd839754459b37 Mon Sep 17 00:00:00 2001 From: Harald Eilertsen Date: Fri, 25 Jan 2013 21:53:05 +0100 Subject: Initial commit. --- .gitignore | 99 ++++++++ Gemfile | 54 +++++ Gemfile.lock | 205 ++++++++++++++++ README.rdoc | 261 +++++++++++++++++++++ Rakefile | 7 + app/assets/images/rails.png | Bin 0 -> 6646 bytes app/assets/javascripts/application.js | 15 ++ app/assets/stylesheets/application.css | 13 + app/controllers/application_controller.rb | 3 + app/decorators/controllers/refinery/.gitkeep | 0 app/decorators/models/refinery/.gitkeep | 0 app/helpers/application_helper.rb | 2 + app/mailers/.gitkeep | 0 app/models/.gitkeep | 0 app/views/sitemap/index.xml.builder | 25 ++ config.ru | 4 + config/application.rb | 68 ++++++ config/boot.rb | 6 + config/database.yml.mysql | 20 ++ config/database.yml.postgresql | 58 +++++ config/database.yml.sqlite3 | 18 ++ config/environment.rb | 5 + config/environments/development.rb | 37 +++ config/environments/production.rb | 67 ++++++ config/environments/test.rb | 37 +++ config/initializers/backtrace_silencers.rb | 7 + config/initializers/inflections.rb | 15 ++ config/initializers/mime_types.rb | 5 + config/initializers/refinery/authentication.rb | 5 + config/initializers/refinery/core.rb | 52 ++++ config/initializers/refinery/core.rb.example | 52 ++++ config/initializers/refinery/i18n.rb | 10 + config/initializers/refinery/images.rb | 45 ++++ config/initializers/refinery/pages.rb | 53 +++++ config/initializers/refinery/resources.rb | 27 +++ config/initializers/secret_token.rb | 7 + config/initializers/session_store.rb | 6 + config/initializers/wrap_parameters.rb | 14 ++ config/locales/en.yml | 5 + config/routes.rb | 66 ++++++ ...uthentication_schema.refinery_authentication.rb | 44 ++++ ...te_refinerycms_images_schema.refinery_images.rb | 16 ++ ...inerycms_resources_schema.refinery_resources.rb | 14 ++ ...eate_refinerycms_pages_schema.refinery_pages.rb | 59 +++++ ...130124232356_create_seo_meta.seo_meta_engine.rb | 24 ++ db/migrate/20130125203718_add_sessions_table.rb | 12 + db/schema.rb | 162 +++++++++++++ db/seeds.rb | 10 + doc/README_FOR_APP | 2 + lib/assets/.gitkeep | 0 lib/tasks/.gitkeep | 0 log/.gitkeep | 0 public/404.html | 26 ++ public/422.html | 26 ++ public/500.html | 25 ++ public/favicon.ico | 0 public/robots.txt | 5 + script/rails | 6 + vendor/assets/javascripts/.gitkeep | 0 vendor/assets/stylesheets/.gitkeep | 0 vendor/plugins/.gitkeep | 0 61 files changed, 1804 insertions(+) create mode 100644 .gitignore create mode 100644 Gemfile create mode 100644 Gemfile.lock create mode 100644 README.rdoc create mode 100644 Rakefile create mode 100644 app/assets/images/rails.png create mode 100644 app/assets/javascripts/application.js create mode 100644 app/assets/stylesheets/application.css create mode 100644 app/controllers/application_controller.rb create mode 100644 app/decorators/controllers/refinery/.gitkeep create mode 100644 app/decorators/models/refinery/.gitkeep create mode 100644 app/helpers/application_helper.rb create mode 100644 app/mailers/.gitkeep create mode 100644 app/models/.gitkeep create mode 100644 app/views/sitemap/index.xml.builder create mode 100644 config.ru create mode 100644 config/application.rb create mode 100644 config/boot.rb create mode 100644 config/database.yml.mysql create mode 100644 config/database.yml.postgresql create mode 100644 config/database.yml.sqlite3 create mode 100644 config/environment.rb create mode 100644 config/environments/development.rb create mode 100644 config/environments/production.rb create mode 100644 config/environments/test.rb create mode 100644 config/initializers/backtrace_silencers.rb create mode 100644 config/initializers/inflections.rb create mode 100644 config/initializers/mime_types.rb create mode 100644 config/initializers/refinery/authentication.rb create mode 100644 config/initializers/refinery/core.rb create mode 100644 config/initializers/refinery/core.rb.example create mode 100644 config/initializers/refinery/i18n.rb create mode 100644 config/initializers/refinery/images.rb create mode 100644 config/initializers/refinery/pages.rb create mode 100644 config/initializers/refinery/resources.rb create mode 100644 config/initializers/secret_token.rb create mode 100644 config/initializers/session_store.rb create mode 100644 config/initializers/wrap_parameters.rb create mode 100644 config/locales/en.yml create mode 100644 config/routes.rb create mode 100644 db/migrate/20130124232352_create_refinerycms_authentication_schema.refinery_authentication.rb create mode 100644 db/migrate/20130124232353_create_refinerycms_images_schema.refinery_images.rb create mode 100644 db/migrate/20130124232354_create_refinerycms_resources_schema.refinery_resources.rb create mode 100644 db/migrate/20130124232355_create_refinerycms_pages_schema.refinery_pages.rb create mode 100644 db/migrate/20130124232356_create_seo_meta.seo_meta_engine.rb create mode 100644 db/migrate/20130125203718_add_sessions_table.rb create mode 100644 db/schema.rb create mode 100644 db/seeds.rb create mode 100644 doc/README_FOR_APP create mode 100644 lib/assets/.gitkeep create mode 100644 lib/tasks/.gitkeep create mode 100644 log/.gitkeep create mode 100644 public/404.html create mode 100644 public/422.html create mode 100644 public/500.html create mode 100644 public/favicon.ico create mode 100644 public/robots.txt create mode 100755 script/rails create mode 100644 vendor/assets/javascripts/.gitkeep create mode 100644 vendor/assets/stylesheets/.gitkeep create mode 100644 vendor/plugins/.gitkeep diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..a9c2f24 --- /dev/null +++ b/.gitignore @@ -0,0 +1,99 @@ +# 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 +# Rails +.bundle +db/*.sqlite3 +db/*.sqlite3-journal +*.log +tmp +tmp/**/* + +# Ignore sensitive config files +config/refinery/core.rb +config/secret_token.rb +config/database.yml + +# Documentation +doc/api +doc/app +.yardoc +.yardopts +coverage + +# Public Uploads +public/system/* +public/themes/* + +# Public Cache +public/javascripts/cache +public/stylesheets/cache + +# Vendor Cache +vendor/cache + +# Acts as Indexed +index/**/* + +# Refinery Specific +*.tmproj +*.autobackupbyrefinery.* +refinerycms-*.gem + +# Mac +.DS_Store + +# Windows +Thumbs.db + +# NetBeans +nbproject + +# Eclipse +.project + +# Redcar +.redcar + +# Rubinius +*.rbc + +# Vim +*.swp +*.swo + +# RubyMine +.idea + +# E-texteditor +.eprj + +# Backup +*~ + +# Capybara Bug +capybara-*html + +# sass +.sass-cache +.sass-cache/* + +#rvm +.rvmrc +.rvmrc.* + +# vendor/extensions dummy applications. +vendor/extensions/**/spec/dummy + diff --git a/Gemfile b/Gemfile new file mode 100644 index 0000000..c10bdd6 --- /dev/null +++ b/Gemfile @@ -0,0 +1,54 @@ +source 'https://rubygems.org' + +gem 'rails', '3.2.11' + +# Bundle edge Rails instead: +# gem 'rails', :git => 'git://github.com/rails/rails.git' + +group :development, :test do + gem 'sqlite3' +end + +group :production do + gem 'mysql2' +end + +# 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' + + # See https://github.com/sstephenson/execjs#readme for more supported runtimes + # gem 'therubyracer', :platforms => :ruby + + gem 'uglifier', '>= 1.0.3' +end + +gem 'jquery-rails', '~> 2.0.0' + +# 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' +gem 'rvm-capistrano' + +# To use debugger +# gem 'debugger' + +# Refinery CMS +gem 'refinerycms', '~> 2.0.0' + +# Specify additional Refinery CMS Extensions here (all optional): +gem 'refinerycms-i18n', '~> 2.0.0' +# gem 'refinerycms-blog', '~> 2.0.0' +# gem 'refinerycms-inquiries', '~> 2.0.0' +# gem 'refinerycms-search', '~> 2.0.0' +# gem 'refinerycms-page-images', '~> 2.0.0' diff --git a/Gemfile.lock b/Gemfile.lock new file mode 100644 index 0000000..89b7c21 --- /dev/null +++ b/Gemfile.lock @@ -0,0 +1,205 @@ +GEM + remote: https://rubygems.org/ + specs: + actionmailer (3.2.11) + actionpack (= 3.2.11) + mail (~> 2.4.4) + actionpack (3.2.11) + activemodel (= 3.2.11) + activesupport (= 3.2.11) + 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.2.1) + activemodel (3.2.11) + activesupport (= 3.2.11) + builder (~> 3.0.0) + activerecord (3.2.11) + activemodel (= 3.2.11) + activesupport (= 3.2.11) + arel (~> 3.0.2) + tzinfo (~> 0.3.29) + activeresource (3.2.11) + activemodel (= 3.2.11) + activesupport (= 3.2.11) + activesupport (3.2.11) + i18n (~> 0.6) + multi_json (~> 1.0) + acts_as_indexed (0.7.8) + arel (3.0.2) + awesome_nested_set (2.1.5) + activerecord (>= 3.0.0) + babosa (0.3.8) + bcrypt-ruby (3.0.1) + builder (3.0.4) + capistrano (2.14.1) + highline + net-scp (>= 1.0.0) + net-sftp (>= 2.0.0) + net-ssh (>= 2.0.14) + net-ssh-gateway (>= 1.1.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.4.0) + devise (2.0.4) + bcrypt-ruby (~> 3.0) + orm_adapter (~> 0.0.3) + railties (~> 3.1) + warden (~> 1.1.1) + dragonfly (0.9.12) + rack + erubis (2.7.0) + execjs (1.4.0) + multi_json (~> 1.0) + friendly_id (4.0.9) + globalize3 (0.2.0) + activemodel (>= 3.0.0) + activerecord (>= 3.0.0) + paper_trail (~> 2) + highline (1.6.15) + hike (1.2.1) + i18n (0.6.1) + journey (1.0.4) + jquery-rails (2.0.3) + railties (>= 3.1.0, < 5.0) + thor (~> 0.14) + json (1.7.6) + mail (2.4.4) + i18n (>= 0.4.0) + mime-types (~> 1.16) + treetop (~> 1.4.8) + mime-types (1.19) + multi_json (1.5.0) + mysql2 (0.3.11) + net-scp (1.0.4) + net-ssh (>= 1.99.1) + net-sftp (2.0.5) + net-ssh (>= 2.0.9) + net-ssh (2.6.3) + net-ssh-gateway (1.1.0) + net-ssh (>= 1.99.1) + orm_adapter (0.0.7) + paper_trail (2.7.0) + activerecord (~> 3.0) + railties (~> 3.0) + polyglot (0.3.3) + rack (1.4.4) + rack-cache (1.2) + rack (>= 0.4) + rack-ssl (1.3.2) + rack + rack-test (0.6.2) + rack (>= 1.0) + rails (3.2.11) + actionmailer (= 3.2.11) + actionpack (= 3.2.11) + activerecord (= 3.2.11) + activeresource (= 3.2.11) + activesupport (= 3.2.11) + bundler (~> 1.0) + railties (= 3.2.11) + railties (3.2.11) + actionpack (= 3.2.11) + activesupport (= 3.2.11) + rack-ssl (~> 1.3.2) + rake (>= 0.8.7) + rdoc (~> 3.4) + thor (>= 0.14.6, < 2.0) + rake (10.0.3) + rdoc (3.12) + json (~> 1.4) + refinerycms (2.0.9) + bundler (~> 1.0) + refinerycms-authentication (= 2.0.9) + refinerycms-core (= 2.0.9) + refinerycms-dashboard (= 2.0.9) + refinerycms-images (= 2.0.9) + refinerycms-pages (= 2.0.9) + refinerycms-resources (= 2.0.9) + refinerycms-authentication (2.0.9) + devise (~> 2.0.0) + orm_adapter (~> 0.0.7) + refinerycms-core (= 2.0.9) + refinerycms-core (2.0.9) + acts_as_indexed (~> 0.7.7) + awesome_nested_set (~> 2.1.3) + coffee-rails (~> 3.2.1) + friendly_id (~> 4.0.1) + globalize3 (~> 0.2.0) + jquery-rails (~> 2.0.0) + rails (>= 3.1.3, < 3.3) + sass-rails (~> 3.2.3) + truncate_html (~> 0.5) + uglifier (>= 1.0.3) + will_paginate (~> 3.0.2) + refinerycms-dashboard (2.0.9) + refinerycms-core (= 2.0.9) + refinerycms-i18n (2.0.2) + refinerycms-core (~> 2.0.0) + routing-filter (>= 0.2.3) + refinerycms-images (2.0.9) + dragonfly (~> 0.9.8) + rack-cache (>= 0.5.3) + refinerycms-core (= 2.0.9) + refinerycms-pages (2.0.9) + awesome_nested_set (~> 2.1.3) + babosa (!= 0.3.6) + refinerycms-core (= 2.0.9) + seo_meta (~> 1.3.0) + refinerycms-resources (2.0.9) + dragonfly (~> 0.9.8) + rack-cache (>= 0.5.3) + refinerycms-core (= 2.0.9) + routing-filter (0.3.1) + actionpack + rvm-capistrano (1.2.7) + capistrano (>= 2.0.0) + sass (3.2.5) + sass-rails (3.2.6) + railties (~> 3.2.0) + sass (>= 3.1.10) + tilt (~> 1.3) + seo_meta (1.3.0) + railties (>= 3.0.0) + sprockets (2.2.2) + hike (~> 1.2) + multi_json (~> 1.0) + rack (~> 1.0) + tilt (~> 1.1, != 1.3.0) + sqlite3 (1.3.7) + thor (0.17.0) + tilt (1.3.3) + treetop (1.4.12) + polyglot + polyglot (>= 0.3.1) + truncate_html (0.9.1) + tzinfo (0.3.35) + uglifier (1.3.0) + execjs (>= 0.3.0) + multi_json (~> 1.0, >= 1.0.2) + warden (1.1.1) + rack (>= 1.0) + will_paginate (3.0.4) + +PLATFORMS + ruby + +DEPENDENCIES + capistrano + coffee-rails (~> 3.2.1) + jquery-rails (~> 2.0.0) + mysql2 + rails (= 3.2.11) + refinerycms (~> 2.0.0) + refinerycms-i18n (~> 2.0.0) + rvm-capistrano + sass-rails (~> 3.2.3) + sqlite3 + uglifier (>= 1.0.3) diff --git a/README.rdoc b/README.rdoc new file mode 100644 index 0000000..7c36f23 --- /dev/null +++ b/README.rdoc @@ -0,0 +1,261 @@ +== Welcome to Rails + +Rails is a web-application framework that includes everything needed to create +database-backed web applications according to the Model-View-Control pattern. + +This pattern splits the view (also called the presentation) into "dumb" +templates that are primarily responsible for inserting pre-built data in between +HTML tags. The model contains the "smart" domain objects (such as Account, +Product, Person, Post) that holds all the business logic and knows how to +persist themselves to a database. The controller handles the incoming requests +(such as Save New Account, Update Product, Show Post) by manipulating the model +and directing data to the view. + +In Rails, the model is handled by what's called an object-relational mapping +layer entitled Active Record. This layer allows you to present the data from +database rows as objects and embellish these data objects with business logic +methods. You can read more about Active Record in +link:files/vendor/rails/activerecord/README.html. + +The controller and view are handled by the Action Pack, which handles both +layers by its two parts: Action View and Action Controller. These two layers +are bundled in a single package due to their heavy interdependence. This is +unlike the relationship between the Active Record and Action Pack that is much +more separate. Each of these packages can be used independently outside of +Rails. You can read more about Action Pack in +link:files/vendor/rails/actionpack/README.html. + + +== Getting Started + +1. At the command prompt, create a new Rails application: + rails new myapp (where myapp is the application name) + +2. Change directory to myapp and start the web server: + cd myapp; rails server (run with --help for options) + +3. Go to http://localhost:3000/ and you'll see: + "Welcome aboard: You're riding Ruby on Rails!" + +4. Follow the guidelines to start developing your application. You can find +the following resources handy: + +* The Getting Started Guide: http://guides.rubyonrails.org/getting_started.html +* Ruby on Rails Tutorial Book: http://www.railstutorial.org/ + + +== Debugging Rails + +Sometimes your application goes wrong. Fortunately there are a lot of tools that +will help you debug it and get it back on the rails. + +First area to check is the application log files. Have "tail -f" commands +running on the server.log and development.log. Rails will automatically display +debugging and runtime information to these files. Debugging info will also be +shown in the browser on requests from 127.0.0.1. + +You can also log your own messages directly into the log file from your code +using the Ruby logger class from inside your controllers. Example: + + class WeblogController < ActionController::Base + def destroy + @weblog = Weblog.find(params[:id]) + @weblog.destroy + logger.info("#{Time.now} Destroyed Weblog ID ##{@weblog.id}!") + end + end + +The result will be a message in your log file along the lines of: + + Mon Oct 08 14:22:29 +1000 2007 Destroyed Weblog ID #1! + +More information on how to use the logger is at http://www.ruby-doc.org/core/ + +Also, Ruby documentation can be found at http://www.ruby-lang.org/. There are +several books available online as well: + +* Programming Ruby: http://www.ruby-doc.org/docs/ProgrammingRuby/ (Pickaxe) +* Learn to Program: http://pine.fm/LearnToProgram/ (a beginners guide) + +These two books will bring you up to speed on the Ruby language and also on +programming in general. + + +== Debugger + +Debugger support is available through the debugger command when you start your +Mongrel or WEBrick server with --debugger. This means that you can break out of +execution at any point in the code, investigate and change the model, and then, +resume execution! You need to install ruby-debug to run the server in debugging +mode. With gems, use sudo gem install ruby-debug. Example: + + class WeblogController < ActionController::Base + def index + @posts = Post.all + debugger + end + end + +So the controller will accept the action, run the first line, then present you +with a IRB prompt in the server window. Here you can do things like: + + >> @posts.inspect + => "[#nil, "body"=>nil, "id"=>"1"}>, + #"Rails", "body"=>"Only ten..", "id"=>"2"}>]" + >> @posts.first.title = "hello from a debugger" + => "hello from a debugger" + +...and even better, you can examine how your runtime objects actually work: + + >> f = @posts.first + => #nil, "body"=>nil, "id"=>"1"}> + >> f. + Display all 152 possibilities? (y or n) + +Finally, when you're ready to resume execution, you can enter "cont". + + +== Console + +The console is a Ruby shell, which allows you to interact with your +application's domain model. Here you'll have all parts of the application +configured, just like it is when the application is running. You can inspect +domain models, change values, and save to the database. Starting the script +without arguments will launch it in the development environment. + +To start the console, run rails console from the application +directory. + +Options: + +* Passing the -s, --sandbox argument will rollback any modifications + made to the database. +* Passing an environment name as an argument will load the corresponding + environment. Example: rails console production. + +To reload your controllers and models after launching the console run +reload! + +More information about irb can be found at: +link:http://www.rubycentral.org/pickaxe/irb.html + + +== dbconsole + +You can go to the command line of your database directly through rails +dbconsole. You would be connected to the database with the credentials +defined in database.yml. Starting the script without arguments will connect you +to the development database. Passing an argument will connect you to a different +database, like rails dbconsole production. Currently works for MySQL, +PostgreSQL and SQLite 3. + +== Description of Contents + +The default directory structure of a generated Ruby on Rails application: + + |-- app + | |-- assets + | |-- images + | |-- javascripts + | `-- stylesheets + | |-- controllers + | |-- helpers + | |-- mailers + | |-- models + | `-- views + | `-- layouts + |-- config + | |-- environments + | |-- initializers + | `-- locales + |-- db + |-- doc + |-- lib + | `-- tasks + |-- log + |-- public + |-- script + |-- test + | |-- fixtures + | |-- functional + | |-- integration + | |-- performance + | `-- unit + |-- tmp + | |-- cache + | |-- pids + | |-- sessions + | `-- sockets + `-- vendor + |-- assets + `-- stylesheets + `-- plugins + +app + Holds all the code that's specific to this particular application. + +app/assets + Contains subdirectories for images, stylesheets, and JavaScript files. + +app/controllers + Holds controllers that should be named like weblogs_controller.rb for + automated URL mapping. All controllers should descend from + ApplicationController which itself descends from ActionController::Base. + +app/models + Holds models that should be named like post.rb. Models descend from + ActiveRecord::Base by default. + +app/views + Holds the template files for the view that should be named like + weblogs/index.html.erb for the WeblogsController#index action. All views use + eRuby syntax by default. + +app/views/layouts + Holds the template files for layouts to be used with views. This models the + common header/footer method of wrapping views. In your views, define a layout + using the layout :default and create a file named default.html.erb. + Inside default.html.erb, call <% yield %> to render the view using this + layout. + +app/helpers + Holds view helpers that should be named like weblogs_helper.rb. These are + generated for you automatically when using generators for controllers. + Helpers can be used to wrap functionality for your views into methods. + +config + Configuration files for the Rails environment, the routing map, the database, + and other dependencies. + +db + Contains the database schema in schema.rb. db/migrate contains all the + sequence of Migrations for your schema. + +doc + This directory is where your application documentation will be stored when + generated using rake doc:app + +lib + Application specific libraries. Basically, any kind of custom code that + doesn't belong under controllers, models, or helpers. This directory is in + the load path. + +public + The directory available for the web server. Also contains the dispatchers and the + default HTML files. This should be set as the DOCUMENT_ROOT of your web + server. + +script + Helper scripts for automation and generation. + +test + Unit and functional tests along with fixtures. When using the rails generate + command, template test files will be generated for you and placed in this + directory. + +vendor + External libraries that the application depends on. Also includes the plugins + subdirectory. If the app has frozen rails, those gems also go here, under + vendor/rails/. This directory is in the load path. diff --git a/Rakefile b/Rakefile new file mode 100644 index 0000000..d965a50 --- /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__) + +ReligionsfrihetNo::Application.load_tasks diff --git a/app/assets/images/rails.png b/app/assets/images/rails.png new file mode 100644 index 0000000..d5edc04 Binary files /dev/null and b/app/assets/images/rails.png differ 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.css b/app/assets/stylesheets/application.css new file mode 100644 index 0000000..3192ec8 --- /dev/null +++ b/app/assets/stylesheets/application.css @@ -0,0 +1,13 @@ +/* + * This is a manifest file that'll be compiled into application.css, which will include all the files + * listed below. + * + * Any CSS and SCSS file within this directory, lib/assets/stylesheets, vendor/assets/stylesheets, + * or vendor/assets/stylesheets of plugins, if any, can be referenced here using a relative path. + * + * You're free to add application-wide styles to this file and they'll appear at the top of the + * compiled file, but it's generally better to create a new file per style scope. + * + *= require_self + *= require_tree . + */ 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/decorators/controllers/refinery/.gitkeep b/app/decorators/controllers/refinery/.gitkeep new file mode 100644 index 0000000..e69de29 diff --git a/app/decorators/models/refinery/.gitkeep b/app/decorators/models/refinery/.gitkeep new file mode 100644 index 0000000..e69de29 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 diff --git a/app/models/.gitkeep b/app/models/.gitkeep new file mode 100644 index 0000000..e69de29 diff --git a/app/views/sitemap/index.xml.builder b/app/views/sitemap/index.xml.builder new file mode 100644 index 0000000..8e89852 --- /dev/null +++ b/app/views/sitemap/index.xml.builder @@ -0,0 +1,25 @@ +xml.instruct! + +xml.urlset "xmlns" => "http://www.sitemaps.org/schemas/sitemap/0.9" do + + @locales.each do |locale| + ::I18n.locale = locale + ::Refinery::Page.live.in_menu.includes(:parts).each do |page| + # exclude sites that are external to our own domain. + page_url = if page.url.is_a?(Hash) + # This is how most pages work without being overriden by link_url + page.url.merge({:only_path => false}) + elsif page.url.to_s !~ /^http/ + # handle relative link_url addresses. + [request.protocol, request.host_with_port, page.url].join + end + + # Add XML entry only if there is a valid page_url found above. + xml.url do + xml.loc url_for(page_url) + xml.lastmod page.updated_at.to_date + end if page_url.present? and page.show_in_menu? + end + end + +end diff --git a/config.ru b/config.ru new file mode 100644 index 0000000..4209e7e --- /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 ReligionsfrihetNo::Application diff --git a/config/application.rb b/config/application.rb new file mode 100644 index 0000000..e27ac93 --- /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 ReligionsfrihetNo + 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/database.yml.mysql b/config/database.yml.mysql new file mode 100644 index 0000000..75cca95 --- /dev/null +++ b/config/database.yml.mysql @@ -0,0 +1,20 @@ +development: &development + adapter: mysql2 + host: localhost + username: root + password: + database: your_local_database + +test: &test + adapter: mysql2 + host: localhost + username: root + password: + database: your_test_database + +production: &production + adapter: mysql2 + host: localhost + database: your_production_database + username: your_production_database_login + password: your_production_database_password diff --git a/config/database.yml.postgresql b/config/database.yml.postgresql new file mode 100644 index 0000000..09c55d3 --- /dev/null +++ b/config/database.yml.postgresql @@ -0,0 +1,58 @@ +# PostgreSQL. Versions 7.4 and 8.x are supported. +# +# Install the pg driver: +# gem install pg +# On Mac OS X with macports: +# gem install pg -- --with-pg-config=/opt/local/lib/postgresql84/bin/pg_config +# On Windows: +# gem install pg +# Choose the win32 build. +# Install PostgreSQL and put its /bin directory on your path. +# +# Configure Using Gemfile +# gem 'pg' +# +development: + adapter: postgresql + encoding: unicode + database: refinery_database_development + pool: 5 + username: postgres + password: postgres + min_messages: warning + + # Connect on a TCP socket. Omitted by default since the client uses a + # domain socket that doesn't need configuration. Windows does not have + # domain sockets, so uncomment these lines. + #host: localhost + #port: 5432 + + # Schema search path. The server defaults to $user,public + #schema_search_path: myapp,sharedapp,public + + # Minimum log levels, in increasing order: + # debug5, debug4, debug3, debug2, debug1, + # log, notice, warning, error, fatal, and panic + # The server defaults to notice. + #min_messages: warning + +# Warning: The database defined as "test" will be erased and +# re-generated from your development database when you run "rake". +# Do not set this db to the same as development or production. +test: + adapter: postgresql + encoding: unicode + database: refinery_database_test + pool: 5 + username: postgres + password: postgres + min_messages: warning + +production: + adapter: postgresql + encoding: unicode + database: refinery_database_production + pool: 5 + username: postgres + password: postgres + min_messages: warning diff --git a/config/database.yml.sqlite3 b/config/database.yml.sqlite3 new file mode 100644 index 0000000..a511ffe --- /dev/null +++ b/config/database.yml.sqlite3 @@ -0,0 +1,18 @@ +# SQLite version 3.x +development: + adapter: <%= "jdbc" if defined?(JRUBY_PLATFORM) %>sqlite3 + database: db/development.sqlite3 + timeout: 5000 + +# Warning: The database defined as 'test' will be erased and +# re-generated from your development database when you run 'rake'. +# Do not set this db to the same as development or production. +test: + adapter: <%= "jdbc" if defined?(JRUBY_PLATFORM) %>sqlite3 + database: db/test.sqlite3 + timeout: 5000 + +production: + adapter: <%= "jdbc" if defined?(JRUBY_PLATFORM) %>sqlite3 + database: db/production.sqlite3 + timeout: 5000 diff --git a/config/environment.rb b/config/environment.rb new file mode 100644 index 0000000..3417c7b --- /dev/null +++ b/config/environment.rb @@ -0,0 +1,5 @@ +# Load the rails application +require File.expand_path('../application', __FILE__) + +# Initialize the rails application +ReligionsfrihetNo::Application.initialize! diff --git a/config/environments/development.rb b/config/environments/development.rb new file mode 100644 index 0000000..31efae2 --- /dev/null +++ b/config/environments/development.rb @@ -0,0 +1,37 @@ +ReligionsfrihetNo::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 + + # Raise exception on mass assignment protection for Active Record models + config.active_record.mass_assignment_sanitizer = :strict + + # Log the query plan for queries taking more than this (works + # with SQLite, MySQL, and PostgreSQL) + config.active_record.auto_explain_threshold_in_seconds = 0.5 + + # 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..8ccb3a8 --- /dev/null +++ b/config/environments/production.rb @@ -0,0 +1,67 @@ +ReligionsfrihetNo::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 = true + + # 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 + + # Log the query plan for queries taking more than this (works + # with SQLite, MySQL, and PostgreSQL) + # config.active_record.auto_explain_threshold_in_seconds = 0.5 +end diff --git a/config/environments/test.rb b/config/environments/test.rb new file mode 100644 index 0000000..efec97a --- /dev/null +++ b/config/environments/test.rb @@ -0,0 +1,37 @@ +ReligionsfrihetNo::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 + + # Raise exception on mass assignment protection for Active Record models + config.active_record.mass_assignment_sanitizer = :strict + + # 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/refinery/authentication.rb b/config/initializers/refinery/authentication.rb new file mode 100644 index 0000000..d90a392 --- /dev/null +++ b/config/initializers/refinery/authentication.rb @@ -0,0 +1,5 @@ +# encoding: utf-8 +Refinery::Authentication.configure do |config| + # Configure whether to allow superuser to assign roles + # config.superuser_can_assign_roles = false +end diff --git a/config/initializers/refinery/core.rb b/config/initializers/refinery/core.rb new file mode 100644 index 0000000..0d08447 --- /dev/null +++ b/config/initializers/refinery/core.rb @@ -0,0 +1,52 @@ +# encoding: utf-8 +Refinery::Core.configure do |config| + # When true will rescue all not found errors and display a friendly error page + config.rescue_not_found = Rails.env.production? + + # When true this will force SSL redirection in all Refinery backend controllers. + # config.force_ssl = false + + # When true will use Amazon's Simple Storage Service instead of + # the default file system for storing resources and images + config.s3_backend = !(ENV['S3_KEY'].nil? || ENV['S3_SECRET'].nil?) + + # Whenever Refinery caches anything and can set a cache key, it will add + # a prefix to the cache key containing the string you set here. + # config.base_cache_key = :refinery + + # Site name + config.site_name = "Religionsfrihet i Praksis" + + # This activates Google Analytics tracking within your website. If this + # config is left blank or set to UA-xxxxxx-x then no remote calls to + # Google Analytics are made. + # config.google_analytics_page_code = "UA-xxxxxx-x" + + # Enable/disable authenticity token on frontend + # config.authenticity_token_on_frontend = true + + # Hide/show child pages in menu + # config.menu_hide_children = false + + # CSS class selectors for menu helper + # config.menu_css = {:selected=>"selected", :first=>"first", :last=>"last"} + + # Should set this if concerned about DOS attacks. See + # http://markevans.github.com/dragonfly/file.Configuration.html#Configuration + # config.dragonfly_secret = "d1122d494d5ff96a870d13bcd2ea0b9f2d9bf1fbd0cbc59b" + + # Show/hide IE6 upgrade message in the backend + # config.ie6_upgrade_message_enabled = true + + # Show/hide browser update message in the backend + # config.show_internet_explorer_upgrade_message = false + + # Add extra tags to the wymeditor whitelist e.g. = {'tag' => {'attributes' => {'1' => 'href'}}} or just {'tag' => {}} + # config.wymeditor_whitelist_tags = {} + + # Register extra javascript for backend + # config.register_javascript "prototype-rails" + + # Register extra stylesheet for backend (optional options) + # config.register_stylesheet "custom", :media => 'screen' +end diff --git a/config/initializers/refinery/core.rb.example b/config/initializers/refinery/core.rb.example new file mode 100644 index 0000000..0d08447 --- /dev/null +++ b/config/initializers/refinery/core.rb.example @@ -0,0 +1,52 @@ +# encoding: utf-8 +Refinery::Core.configure do |config| + # When true will rescue all not found errors and display a friendly error page + config.rescue_not_found = Rails.env.production? + + # When true this will force SSL redirection in all Refinery backend controllers. + # config.force_ssl = false + + # When true will use Amazon's Simple Storage Service instead of + # the default file system for storing resources and images + config.s3_backend = !(ENV['S3_KEY'].nil? || ENV['S3_SECRET'].nil?) + + # Whenever Refinery caches anything and can set a cache key, it will add + # a prefix to the cache key containing the string you set here. + # config.base_cache_key = :refinery + + # Site name + config.site_name = "Religionsfrihet i Praksis" + + # This activates Google Analytics tracking within your website. If this + # config is left blank or set to UA-xxxxxx-x then no remote calls to + # Google Analytics are made. + # config.google_analytics_page_code = "UA-xxxxxx-x" + + # Enable/disable authenticity token on frontend + # config.authenticity_token_on_frontend = true + + # Hide/show child pages in menu + # config.menu_hide_children = false + + # CSS class selectors for menu helper + # config.menu_css = {:selected=>"selected", :first=>"first", :last=>"last"} + + # Should set this if concerned about DOS attacks. See + # http://markevans.github.com/dragonfly/file.Configuration.html#Configuration + # config.dragonfly_secret = "d1122d494d5ff96a870d13bcd2ea0b9f2d9bf1fbd0cbc59b" + + # Show/hide IE6 upgrade message in the backend + # config.ie6_upgrade_message_enabled = true + + # Show/hide browser update message in the backend + # config.show_internet_explorer_upgrade_message = false + + # Add extra tags to the wymeditor whitelist e.g. = {'tag' => {'attributes' => {'1' => 'href'}}} or just {'tag' => {}} + # config.wymeditor_whitelist_tags = {} + + # Register extra javascript for backend + # config.register_javascript "prototype-rails" + + # Register extra stylesheet for backend (optional options) + # config.register_stylesheet "custom", :media => 'screen' +end diff --git a/config/initializers/refinery/i18n.rb b/config/initializers/refinery/i18n.rb new file mode 100644 index 0000000..96671d4 --- /dev/null +++ b/config/initializers/refinery/i18n.rb @@ -0,0 +1,10 @@ +# encoding: utf-8 + +Refinery::I18n.configure do |config| + config.enabled = true + config.default_locale = :nb + config.current_locale = :nb + config.default_frontend_locale = :nb + config.frontend_locales = [:nb, :en] + config.locales = {:en=>"English", :fr=>"Français", :nl=>"Nederlands", :"pt-BR"=>"Português", :da=>"Dansk", :nb=>"Norsk Bokmål", :sl=>"Slovenian", :es=>"Español", :it=>"Italiano", :de=>"Deutsch", :lv=>"Latviski", :ru=>"Русский", :sv=>"Svenska", :pl=>"Polski", :"zh-CN"=>"Simplified Chinese", :"zh-TW"=>"Traditional Chinese", :el=>"Ελληνικά", :rs=>"Srpski", :cs=>"Česky", :sk=>"Slovenský", :ja=>"日本語", :bg=>"Български"} +end diff --git a/config/initializers/refinery/images.rb b/config/initializers/refinery/images.rb new file mode 100644 index 0000000..58c01ff --- /dev/null +++ b/config/initializers/refinery/images.rb @@ -0,0 +1,45 @@ +# encoding: utf-8 +Refinery::Images.configure do |config| + # Configures the maximum allowed upload size (in bytes) for an image + # config.max_image_size = 5242880 + + # Configure how many images per page should be displayed when a dialog is presented that contains images + # config.pages_per_dialog = 18 + + # Configure how many images per page should be displayed when a dialog is presented that + # contains images and image resize options + # config.pages_per_dialog_that_have_size_options = 12 + + # Configure how many images per page should be displayed in the list of images in the admin area + # config.pages_per_admin_index = 20 + + # Configure image sizes + # config.user_image_sizes = {:small=>"110x110>", :medium=>"225x255>", :large=>"450x450>"} + + # Configure white-listed mime types for validation + # config.whitelisted_mime_types = ["image/jpeg", "image/png", "image/gif", "image/tiff"] + + # Configure image view options + # config.image_views = [:grid, :list] + + # Configure default image view + # config.preferred_image_view = :grid + + # Configure S3 (you can also use ENV for this) + # The s3_backend setting by default defers to the core setting for this but can be set just for images. + # config.s3_backend = Refinery::Core.s3_backend + # config.s3_bucket_name = ENV['S3_BUCKET'] + # config.s3_access_key_id = ENV['S3_KEY'] + # config.s3_secret_access_key = ENV['S3_SECRET'] + # config.s3_region = ENV['S3_REGION] + + # Configure Dragonfly + # This is where in the middleware stack to insert the Dragonfly middleware + # config.dragonfly_insert_before = "ActionDispatch::Callbacks" + # config.dragonfly_secret = "d1122d494d5ff96a870d13bcd2ea0b9f2d9bf1fbd0cbc59b" + # If you decide to trust file extensions replace :ext below with :format + # config.dragonfly_url_format = "/system/images/:job/:basename.:ext" + # config.datastore_root_path = "/home/haraldei/src/religionsfrihet.no/public/system/refinery/images" + # config.trust_file_extensions = false + +end diff --git a/config/initializers/refinery/pages.rb b/config/initializers/refinery/pages.rb new file mode 100644 index 0000000..c1d10a8 --- /dev/null +++ b/config/initializers/refinery/pages.rb @@ -0,0 +1,53 @@ +# encoding: utf-8 +Refinery::Pages.configure do |config| + # Configure specific page templates + # config.types.register :home do |home| + # home.parts = %w[intro body] + # end + + # Configure global page default parts + # config.default_parts = ["Body", "Side Body"] + + # Configure whether to allow adding new page parts + # config.new_page_parts = false + + # Configure whether to enable marketable_urls + # config.marketable_urls = true + + # Configure how many pages per page should be displayed when a dialog is presented that contains a links to pages + # config.pages_per_dialog = 14 + + # Configure how many pages per page should be displayed in the list of pages in the admin area + # config.pages_per_admin_index = 20 + + # Configure whether to strip diacritics from Western characters + # config.approximate_ascii = false + + # Configure whether to strip non-ASCII characters from the friendly_id string + # config.strip_non_ascii = false + + # Set this to true if you want to override slug which automatically gets generated + # when you create a page + # config.use_custom_slugs = false + + # Set this to true if you want backend pages to be cached + # config.cache_pages_backend = false + + # Set this to true to activate full-page-cache + # config.cache_pages_full = false + + # Set this to true to fully expand the page hierarchy in the admin + # config.auto_expand_admin_tree = true + + # config.layout_template_whitelist = ["application"] + + # config.view_template_whitelist = ["home", "show"] + + # config.use_layout_templates = false + + # config.use_view_templates = false + + # config.page_title = {:chain_page_title=>false, :ancestors=>{:separator=>" | ", :class=>"ancestors", :tag=>"span"}, :page_title=>{:class=>nil, :tag=>nil, :wrap_if_not_chained=>false}} + + # config.absolute_page_links = false +end diff --git a/config/initializers/refinery/resources.rb b/config/initializers/refinery/resources.rb new file mode 100644 index 0000000..d2fe7f9 --- /dev/null +++ b/config/initializers/refinery/resources.rb @@ -0,0 +1,27 @@ +# encoding: utf-8 +Refinery::Resources.configure do |config| + # Configures the maximum allowed upload size (in bytes) for a file upload + # config.max_file_size = 52428800 + + # Configure how many resources per page should be displayed when a dialog is presented that contains resources + # config.pages_per_dialog = 12 + + # Configure how many resources per page should be displayed in the list of resources in the admin area + # config.pages_per_admin_index = 20 + + # Configure S3 (you can also use ENV for this) + # The s3_backend setting by default defers to the core setting for this but can be set just for resources. + # config.s3_backend = Refinery::Core.s3_backend + # config.s3_bucket_name = ENV['S3_BUCKET'] + # config.s3_access_key_id = ENV['S3_KEY'] + # config.s3_secret_access_key = ENV['S3_SECRET'] + # config.s3_region = ENV['S3_REGION] + + # Configure Dragonfly + # This is where in the middleware stack to insert the Dragonfly middleware + # config.dragonfly_insert_before = "ActionDispatch::Callbacks" + # config.dragonfly_secret = "d1122d494d5ff96a870d13bcd2ea0b9f2d9bf1fbd0cbc59b" + # config.dragonfly_url_format = "/system/resources/:job/:basename.:format" + # config.datastore_root_path = "/home/haraldei/src/religionsfrihet.no/public/system/refinery/resources" + +end diff --git a/config/initializers/secret_token.rb b/config/initializers/secret_token.rb new file mode 100644 index 0000000..4169eb1 --- /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. +ReligionsfrihetNo::Application.config.secret_token = '326727027aa26095e98aeccc39abfdabb117fb93d843ea3f89330f6120bcbd3a56566124c3667d554793783b45a0d1aed68b4923944032c14ee40752870667d5' diff --git a/config/initializers/session_store.rb b/config/initializers/session_store.rb new file mode 100644 index 0000000..0eb8a1e --- /dev/null +++ b/config/initializers/session_store.rb @@ -0,0 +1,6 @@ +# Be sure to restart your server when you modify this file. + +# Use the database for sessions instead of the cookie-based default, +# which shouldn't be used to store highly confidential information +# (create the session table with "rails generate session_migration") +ReligionsfrihetNo::Application.config.session_store :active_record_store diff --git a/config/initializers/wrap_parameters.rb b/config/initializers/wrap_parameters.rb new file mode 100644 index 0000000..999df20 --- /dev/null +++ b/config/initializers/wrap_parameters.rb @@ -0,0 +1,14 @@ +# 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 + +# Disable root element in JSON by default. +ActiveSupport.on_load(:active_record) do + self.include_root_in_json = false +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..86c7a47 --- /dev/null +++ b/config/routes.rb @@ -0,0 +1,66 @@ +ReligionsfrihetNo::Application.routes.draw do + + # This line mounts Refinery's routes at the root of your application. + # This means, any requests to the root URL of your application will go to Refinery::PagesController#home. + # If you would like to change where this extension is mounted, simply change the :at option to something different. + # + # We ask that you don't use the :as option here, as Refinery relies on it being the default of "refinery" + mount Refinery::Core::Engine, :at => '/' + + # 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/db/migrate/20130124232352_create_refinerycms_authentication_schema.refinery_authentication.rb b/db/migrate/20130124232352_create_refinerycms_authentication_schema.refinery_authentication.rb new file mode 100644 index 0000000..b306ecc --- /dev/null +++ b/db/migrate/20130124232352_create_refinerycms_authentication_schema.refinery_authentication.rb @@ -0,0 +1,44 @@ +# This migration comes from refinery_authentication (originally 20100913234705) +class CreateRefinerycmsAuthenticationSchema < ActiveRecord::Migration + def change + # Postgres apparently requires the roles_users table to exist before creating the roles table. + create_table :refinery_roles_users, :id => false do |t| + t.integer :user_id + t.integer :role_id + end + + add_index :refinery_roles_users, [:role_id, :user_id] + add_index :refinery_roles_users, [:user_id, :role_id] + + create_table :refinery_roles do |t| + t.string :title + end + + create_table :refinery_user_plugins do |t| + t.integer :user_id + t.string :name + t.integer :position + end + + add_index :refinery_user_plugins, :name + add_index :refinery_user_plugins, [:user_id, :name], :unique => true + + create_table :refinery_users do |t| + t.string :username, :null => false + t.string :email, :null => false + t.string :encrypted_password, :null => false + t.datetime :current_sign_in_at + t.datetime :last_sign_in_at + t.string :current_sign_in_ip + t.string :last_sign_in_ip + t.integer :sign_in_count + t.datetime :remember_created_at + t.string :reset_password_token + t.datetime :reset_password_sent_at + + t.timestamps + end + + add_index :refinery_users, :id + end +end diff --git a/db/migrate/20130124232353_create_refinerycms_images_schema.refinery_images.rb b/db/migrate/20130124232353_create_refinerycms_images_schema.refinery_images.rb new file mode 100644 index 0000000..94831c2 --- /dev/null +++ b/db/migrate/20130124232353_create_refinerycms_images_schema.refinery_images.rb @@ -0,0 +1,16 @@ +# This migration comes from refinery_images (originally 20100913234707) +class CreateRefinerycmsImagesSchema < ActiveRecord::Migration + def change + create_table :refinery_images do |t| + t.string :image_mime_type + t.string :image_name + t.integer :image_size + t.integer :image_width + t.integer :image_height + t.string :image_uid + t.string :image_ext + + t.timestamps + end + end +end diff --git a/db/migrate/20130124232354_create_refinerycms_resources_schema.refinery_resources.rb b/db/migrate/20130124232354_create_refinerycms_resources_schema.refinery_resources.rb new file mode 100644 index 0000000..e3e6264 --- /dev/null +++ b/db/migrate/20130124232354_create_refinerycms_resources_schema.refinery_resources.rb @@ -0,0 +1,14 @@ +# This migration comes from refinery_resources (originally 20100913234709) +class CreateRefinerycmsResourcesSchema < ActiveRecord::Migration + def change + create_table :refinery_resources do |t| + t.string :file_mime_type + t.string :file_name + t.integer :file_size + t.string :file_uid + t.string :file_ext + + t.timestamps + end + end +end diff --git a/db/migrate/20130124232355_create_refinerycms_pages_schema.refinery_pages.rb b/db/migrate/20130124232355_create_refinerycms_pages_schema.refinery_pages.rb new file mode 100644 index 0000000..8a8f425 --- /dev/null +++ b/db/migrate/20130124232355_create_refinerycms_pages_schema.refinery_pages.rb @@ -0,0 +1,59 @@ +# This migration comes from refinery_pages (originally 20100913234708) +class CreateRefinerycmsPagesSchema < ActiveRecord::Migration + def up + create_table :refinery_page_parts do |t| + t.integer :refinery_page_id + t.string :title + t.text :body + t.integer :position + + t.timestamps + end + + add_index :refinery_page_parts, :id + add_index :refinery_page_parts, :refinery_page_id + + create_table :refinery_pages do |t| + t.integer :parent_id + t.string :path + t.string :slug + t.boolean :show_in_menu, :default => true + t.string :link_url + t.string :menu_match + t.boolean :deletable, :default => true + t.boolean :draft, :default => false + t.boolean :skip_to_first_child, :default => false + t.integer :lft + t.integer :rgt + t.integer :depth + t.string :view_template + t.string :layout_template + + t.timestamps + end + + add_index :refinery_pages, :depth + add_index :refinery_pages, :id + add_index :refinery_pages, :lft + add_index :refinery_pages, :parent_id + add_index :refinery_pages, :rgt + + Refinery::PagePart.create_translation_table!({ + :body => :text + }) + + Refinery::Page.create_translation_table!({ + :title => :string, + :custom_slug => :string, + :menu_title => :string, + :slug => :string + }) + end + + def down + drop_table :refinery_page_parts + drop_table :refinery_pages + Refinery::PagePart.drop_translation_table! + Refinery::Page.drop_translation_table! + end +end diff --git a/db/migrate/20130124232356_create_seo_meta.seo_meta_engine.rb b/db/migrate/20130124232356_create_seo_meta.seo_meta_engine.rb new file mode 100644 index 0000000..7efd8dc --- /dev/null +++ b/db/migrate/20130124232356_create_seo_meta.seo_meta_engine.rb @@ -0,0 +1,24 @@ +# This migration comes from seo_meta_engine (originally 20110329222114) +class CreateSeoMeta < ActiveRecord::Migration + + def self.up + create_table :seo_meta do |t| + t.integer :seo_meta_id + t.string :seo_meta_type + + t.string :browser_title + t.string :meta_keywords + t.text :meta_description + + t.timestamps + end + + add_index :seo_meta, :id + add_index :seo_meta, [:seo_meta_id, :seo_meta_type] + end + + def self.down + drop_table :seo_meta + end + +end diff --git a/db/migrate/20130125203718_add_sessions_table.rb b/db/migrate/20130125203718_add_sessions_table.rb new file mode 100644 index 0000000..4c87956 --- /dev/null +++ b/db/migrate/20130125203718_add_sessions_table.rb @@ -0,0 +1,12 @@ +class AddSessionsTable < ActiveRecord::Migration + def change + create_table :sessions do |t| + t.string :session_id, :null => false + t.text :data + t.timestamps + end + + add_index :sessions, :session_id + add_index :sessions, :updated_at + end +end diff --git a/db/schema.rb b/db/schema.rb new file mode 100644 index 0000000..8afc9c6 --- /dev/null +++ b/db/schema.rb @@ -0,0 +1,162 @@ +# encoding: UTF-8 +# This file is auto-generated from the current state of the database. Instead +# of editing this file, please use the migrations feature of Active Record to +# incrementally modify your database, and then regenerate this schema definition. +# +# Note that this schema.rb definition is the authoritative source for your +# database schema. If you need to create the application database on another +# system, you should be using db:schema:load, not running all the migrations +# from scratch. The latter is a flawed and unsustainable approach (the more migrations +# you'll amass, the slower it'll run and the greater likelihood for issues). +# +# It's strongly recommended to check this file into your version control system. + +ActiveRecord::Schema.define(:version => 20130125203718) do + + create_table "refinery_images", :force => true do |t| + t.string "image_mime_type" + t.string "image_name" + t.integer "image_size" + t.integer "image_width" + t.integer "image_height" + t.string "image_uid" + t.string "image_ext" + t.datetime "created_at", :null => false + t.datetime "updated_at", :null => false + end + + create_table "refinery_page_part_translations", :force => true do |t| + t.integer "refinery_page_part_id" + t.string "locale" + t.text "body" + t.datetime "created_at", :null => false + t.datetime "updated_at", :null => false + end + + add_index "refinery_page_part_translations", ["locale"], :name => "index_refinery_page_part_translations_on_locale" + add_index "refinery_page_part_translations", ["refinery_page_part_id"], :name => "index_f9716c4215584edbca2557e32706a5ae084a15ef" + + create_table "refinery_page_parts", :force => true do |t| + t.integer "refinery_page_id" + t.string "title" + t.text "body" + t.integer "position" + t.datetime "created_at", :null => false + t.datetime "updated_at", :null => false + end + + add_index "refinery_page_parts", ["id"], :name => "index_refinery_page_parts_on_id" + add_index "refinery_page_parts", ["refinery_page_id"], :name => "index_refinery_page_parts_on_refinery_page_id" + + create_table "refinery_page_translations", :force => true do |t| + t.integer "refinery_page_id" + t.string "locale" + t.string "title" + t.string "custom_slug" + t.string "menu_title" + t.string "slug" + t.datetime "created_at", :null => false + t.datetime "updated_at", :null => false + end + + add_index "refinery_page_translations", ["locale"], :name => "index_refinery_page_translations_on_locale" + add_index "refinery_page_translations", ["refinery_page_id"], :name => "index_d079468f88bff1c6ea81573a0d019ba8bf5c2902" + + create_table "refinery_pages", :force => true do |t| + t.integer "parent_id" + t.string "path" + t.string "slug" + t.boolean "show_in_menu", :default => true + t.string "link_url" + t.string "menu_match" + t.boolean "deletable", :default => true + t.boolean "draft", :default => false + t.boolean "skip_to_first_child", :default => false + t.integer "lft" + t.integer "rgt" + t.integer "depth" + t.string "view_template" + t.string "layout_template" + t.datetime "created_at", :null => false + t.datetime "updated_at", :null => false + end + + add_index "refinery_pages", ["depth"], :name => "index_refinery_pages_on_depth" + add_index "refinery_pages", ["id"], :name => "index_refinery_pages_on_id" + add_index "refinery_pages", ["lft"], :name => "index_refinery_pages_on_lft" + add_index "refinery_pages", ["parent_id"], :name => "index_refinery_pages_on_parent_id" + add_index "refinery_pages", ["rgt"], :name => "index_refinery_pages_on_rgt" + + create_table "refinery_resources", :force => true do |t| + t.string "file_mime_type" + t.string "file_name" + t.integer "file_size" + t.string "file_uid" + t.string "file_ext" + t.datetime "created_at", :null => false + t.datetime "updated_at", :null => false + end + + create_table "refinery_roles", :force => true do |t| + t.string "title" + end + + create_table "refinery_roles_users", :id => false, :force => true do |t| + t.integer "user_id" + t.integer "role_id" + end + + add_index "refinery_roles_users", ["role_id", "user_id"], :name => "index_refinery_roles_users_on_role_id_and_user_id" + add_index "refinery_roles_users", ["user_id", "role_id"], :name => "index_refinery_roles_users_on_user_id_and_role_id" + + create_table "refinery_user_plugins", :force => true do |t| + t.integer "user_id" + t.string "name" + t.integer "position" + end + + add_index "refinery_user_plugins", ["name"], :name => "index_refinery_user_plugins_on_name" + add_index "refinery_user_plugins", ["user_id", "name"], :name => "index_refinery_user_plugins_on_user_id_and_name", :unique => true + + create_table "refinery_users", :force => true do |t| + t.string "username", :null => false + t.string "email", :null => false + t.string "encrypted_password", :null => false + t.datetime "current_sign_in_at" + t.datetime "last_sign_in_at" + t.string "current_sign_in_ip" + t.string "last_sign_in_ip" + t.integer "sign_in_count" + t.datetime "remember_created_at" + t.string "reset_password_token" + t.datetime "reset_password_sent_at" + t.datetime "created_at", :null => false + t.datetime "updated_at", :null => false + end + + add_index "refinery_users", ["id"], :name => "index_refinery_users_on_id" + + create_table "seo_meta", :force => true do |t| + t.integer "seo_meta_id" + t.string "seo_meta_type" + t.string "browser_title" + t.string "meta_keywords" + t.text "meta_description" + t.datetime "created_at", :null => false + t.datetime "updated_at", :null => false + end + + add_index "seo_meta", ["id"], :name => "index_seo_meta_on_id" + add_index "seo_meta", ["seo_meta_id", "seo_meta_type"], :name => "index_seo_meta_on_seo_meta_id_and_seo_meta_type" + + create_table "sessions", :force => true do |t| + t.string "session_id", :null => false + t.text "data" + t.datetime "created_at", :null => false + t.datetime "updated_at", :null => false + end + + add_index "sessions", ["session_id"], :name => "index_sessions_on_session_id" + add_index "sessions", ["updated_at"], :name => "index_sessions_on_updated_at" + +end diff --git a/db/seeds.rb b/db/seeds.rb new file mode 100644 index 0000000..5e6468a --- /dev/null +++ b/db/seeds.rb @@ -0,0 +1,10 @@ +# This file should contain all the record creation needed to seed the database with its default values. +# The data can then be loaded with the rake db:seed (or created alongside the db with db:setup). +# +# Examples: +# +# cities = City.create([{ name: 'Chicago' }, { name: 'Copenhagen' }]) +# Mayor.create(name: 'Emanuel', city: cities.first) + +# Added by Refinery CMS Pages extension +Refinery::Pages::Engine.load_seed 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 diff --git a/lib/tasks/.gitkeep b/lib/tasks/.gitkeep new file mode 100644 index 0000000..e69de29 diff --git a/log/.gitkeep b/log/.gitkeep new file mode 100644 index 0000000..e69de29 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 @@ + + + + The page you were looking for doesn't exist (404) + + + + + +
+

The page you were looking for doesn't exist.

+

You may have mistyped the address or the page may have moved.

+
+ + 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 @@ + + + + The change you wanted was rejected (422) + + + + + +
+

The change you wanted was rejected.

+

Maybe you tried to change something you didn't have access to.

+
+ + 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 @@ + + + + We're sorry, but something went wrong (500) + + + + + +
+

We're sorry, but something went wrong.

+
+ + diff --git a/public/favicon.ico b/public/favicon.ico new file mode 100644 index 0000000..e69de29 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..f8da2cf --- /dev/null +++ b/script/rails @@ -0,0 +1,6 @@ +#!/usr/bin/env ruby +# 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/vendor/assets/javascripts/.gitkeep b/vendor/assets/javascripts/.gitkeep new file mode 100644 index 0000000..e69de29 diff --git a/vendor/assets/stylesheets/.gitkeep b/vendor/assets/stylesheets/.gitkeep new file mode 100644 index 0000000..e69de29 diff --git a/vendor/plugins/.gitkeep b/vendor/plugins/.gitkeep new file mode 100644 index 0000000..e69de29 -- cgit v1.2.3