Skip to content

Commit

Permalink
update to 0.30.1
Browse files Browse the repository at this point in the history
  • Loading branch information
joshnuss committed Nov 30, 2010
1 parent 86b69d7 commit 41aa3e0
Show file tree
Hide file tree
Showing 449 changed files with 21,715 additions and 318 deletions.
23 changes: 23 additions & 0 deletions LICENSE
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
Redistribution and use in source and binary forms, with or without modification,
are permitted provided that the following conditions are met:

* Redistributions of source code must retain the above copyright notice,
this list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above copyright notice,
this list of conditions and the following disclaimer in the documentation
and/or other materials provided with the distribution.
* Neither the name of the Rails Dog LLC nor the names of its
contributors may be used to endorse or promote products derived from this
software without specific prior written permission.

THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
9 changes: 1 addition & 8 deletions README.markdown → README.md
Original file line number Diff line number Diff line change
Expand Up @@ -23,12 +23,5 @@ Editing FAQs
===========

1. Login to Administraton Console
2. Click on Configuration
3. Click on the Frequently Asked Questions link
2. Click on FAQ

Loading Sample FAQs
=============

There are sample FAQs loaded as part of the rake db:bootstrap task.

See the sample data in db/sample.
150 changes: 48 additions & 102 deletions Rakefile
Original file line number Diff line number Diff line change
@@ -1,120 +1,66 @@
# I think this is the one that should be moved to the extension Rakefile template

# In rails 1.2, plugins aren't available in the path until they're loaded.
# Check to see if the rspec plugin is installed first and require
# it if it is. If not, use the gem version.

# Determine where the RSpec plugin is by loading the boot
unless defined? SPREE_ROOT
ENV["RAILS_ENV"] = "test"
case
when ENV["SPREE_ENV_FILE"]
require File.dirname(ENV["SPREE_ENV_FILE"]) + "/boot"
when File.dirname(__FILE__) =~ %r{vendor/SPREE/vendor/extensions}
require "#{File.expand_path(File.dirname(__FILE__) + "/../../../../../")}/config/boot"
else
require "#{File.expand_path(File.dirname(__FILE__) + "/../../../")}/config/boot"
end
end

require 'rubygems'
require 'rake'
require 'rake/rdoctask'
require 'rake/testtask'
require 'rake/packagetask'
require 'rake/gempackagetask'

rspec_base = File.expand_path(SPREE_ROOT + '/vendor/plugins/rspec/lib')
$LOAD_PATH.unshift(rspec_base) if File.exist?(rspec_base)
require 'spec/rake/spectask'
# require 'spec/translator'
spec = eval(File.read('spree_faq.gemspec'))

# Cleanup the SPREE_ROOT constant so specs will load the environment
Object.send(:remove_const, :SPREE_ROOT)
Rake::GemPackageTask.new(spec) do |p|
p.gem_spec = spec
end

extension_root = File.expand_path(File.dirname(__FILE__))
desc "Release to gemcutter"
task :release => :package do
require 'rake/gemcutter'
Rake::Gemcutter::Tasks.new(spec).define
Rake::Task['gem:push'].invoke
end

task :default => :spec
task :stats => "spec:statsetup"
desc "Default Task"
task :default => [ :spec ]

desc "Run all specs in spec directory"
Spec::Rake::SpecTask.new(:spec) do |t|
t.spec_opts = ['--options', "\"#{extension_root}/spec/spec.opts\""]
t.spec_files = FileList["#{extension_root}/spec/**/*_spec.rb"]
end
require 'rspec/core/rake_task'
RSpec::Core::RakeTask.new

namespace :spec do
desc "Run all specs in spec directory with RCov"
Spec::Rake::SpecTask.new(:rcov) do |t|
t.spec_opts = ['--options', "\"#{extension_root}/spec/spec.opts\""]
t.spec_files = FileList['spec/**/*_spec.rb']
t.rcov = true
t.rcov_opts = ['--exclude', 'spec', '--rails']
end

desc "Print Specdoc for all specs"
Spec::Rake::SpecTask.new(:doc) do |t|
t.spec_opts = ["--format", "specdoc", "--dry-run"]
t.spec_files = FileList['spec/**/*_spec.rb']
end
# require 'cucumber/rake/task'
# Cucumber::Rake::Task.new do |t|
# t.cucumber_opts = %w{--format pretty}
# end

[:models, :controllers, :views, :helpers].each do |sub|
desc "Run the specs under spec/#{sub}"
Spec::Rake::SpecTask.new(sub) do |t|
t.spec_opts = ['--options', "\"#{extension_root}/spec/spec.opts\""]
t.spec_files = FileList["spec/#{sub}/**/*_spec.rb"]
desc "Regenerates a rails 3 app for testing"
task :test_app do
SPREE_PATH = ENV['SPREE_PATH']
raise "SPREE_PATH should be specified" unless SPREE_PATH
require File.join(SPREE_PATH, 'lib/generators/spree/test_app_generator')
class AuthTestAppGenerator < Spree::Generators::TestAppGenerator
def tweak_gemfile
append_file 'Gemfile' do
<<-gems
gem 'spree_core', :path => '#{File.join(SPREE_PATH, 'core')}'
gem 'spree_auth', :path => '#{File.join(SPREE_PATH, 'auth')}'
gem 'spree_faq', :path => '../..'
gems
end
end
end

# Hopefully no one has written their extensions in pre-0.9 style
# desc "Translate specs from pre-0.9 to 0.9 style"
# task :translate do
# translator = ::Spec::Translator.new
# dir = RAILS_ROOT + '/spec'
# translator.translate(dir, dir)
# end

# Setup specs for stats
task :statsetup do
require 'code_statistics'
::STATS_DIRECTORIES << %w(Model\ specs spec/models)
::STATS_DIRECTORIES << %w(View\ specs spec/views)
::STATS_DIRECTORIES << %w(Controller\ specs spec/controllers)
::STATS_DIRECTORIES << %w(Helper\ specs spec/views)
::CodeStatistics::TEST_TYPES << "Model specs"
::CodeStatistics::TEST_TYPES << "View specs"
::CodeStatistics::TEST_TYPES << "Controller specs"
::CodeStatistics::TEST_TYPES << "Helper specs"
::STATS_DIRECTORIES.delete_if {|a| a[0] =~ /test/}
end
def install_gems
system("cd spec/test_app && rake spree_core:install")
system("cd spec/test_app && rake spree_auth:install")
generate 'spree_faq:install'
end

namespace :db do
namespace :fixtures do
desc "Load fixtures (from spec/fixtures) into the current environment's database. Load specific fixtures using FIXTURES=x,y"
task :load => :environment do
require 'active_record/fixtures'
ActiveRecord::Base.establish_connection(RAILS_ENV.to_sym)
(ENV['FIXTURES'] ? ENV['FIXTURES'].split(/,/) : Dir.glob(File.join(RAILS_ROOT, 'spec', 'fixtures', '*.{yml,csv}'))).each do |fixture_file|
Fixtures.create_fixtures('spec/fixtures', File.basename(fixture_file, '.*'))
end
end
def migrate_db
run_migrations
end
end
AuthTestAppGenerator.start
end

desc 'Generate documentation for the spree_faq extension.'
Rake::RDocTask.new(:rdoc) do |rdoc|
rdoc.rdoc_dir = 'rdoc'
rdoc.title = 'SpreeFaqExtension'
rdoc.options << '--line-numbers' << '--inline-source'
rdoc.rdoc_files.include('README')
rdoc.rdoc_files.include('lib/**/*.rb')
end

# For extensions that are in transition
desc 'Test the spree_faq extension.'
Rake::TestTask.new(:test) do |t|
t.libs << 'lib'
t.pattern = 'test/**/*_test.rb'
t.verbose = true
namespace :test_app do
desc 'Rebuild test and cucumber databases'
task :rebuild_dbs do
system("cd spec/test_app && rake db:drop db:migrate RAILS_ENV=test")
end
end

# Load any custom rakefiles for extension
Dir[File.dirname(__FILE__) + '/tasks/*.rake'].sort.each { |f| require f }
4 changes: 0 additions & 4 deletions app/controllers/faqs_controller.rb
Original file line number Diff line number Diff line change
Expand Up @@ -5,10 +5,6 @@ def index
@categories = QuestionCategory.all :include => :questions
end

def show
@question = Question.find(params[:id])
end

def default_title
I18n.t 'frequently_asked_questions'
end
Expand Down
12 changes: 0 additions & 12 deletions app/helpers/admin/question_categories_helper.rb

This file was deleted.

2 changes: 0 additions & 2 deletions app/helpers/faqs_helper.rb

This file was deleted.

13 changes: 7 additions & 6 deletions app/views/admin/question_categories/edit.html.erb
Original file line number Diff line number Diff line change
Expand Up @@ -2,13 +2,14 @@
<%= javascript_include_tag 'jquery.scrollTo-min' %>
<%= stylesheet_link_tag 'spree_faq' %>
<% end %>
<% form_for @question_category, :url => object_path do |f| %>
<% javascript_tag do %>
<%= form_for @question_category, :url => object_path do |f| %>
<%= render "shared/error_messages", :target => f.object %>
<%= javascript_tag do %>
var new_question_html = '<%= generate_template(f, :questions) %>';

jQuery(document).ready(function($) {
$('#new_question_link').click(function() {
$('#questions').append(new_question_html);
$('#questions').append(new_question_html.replace(/NEW_RECORD/g, $('#questions .question').size()));
$('#questions .question:last .remove').click(function() {
$(this).parent('.question').remove();
});
Expand All @@ -24,7 +25,7 @@
<div class="yui-gc">
<div class="yui-u first">

<% f.field_container :name do %>
<%= f.field_container :name do %>
<%= f.label :name, t("category_name") %> <span class="required">*</span><br />
<%= f.text_field :name, :class => 'fullwidth title' %>
<%= f.error_message_on :name %>
Expand All @@ -34,12 +35,12 @@
<h2>Questions</h2>
<%= link_to_with_icon 'add', t('add_question'), '#', :id => 'new_question_link' %>
<% f.fields_for :questions do |question_form| %>
<%= f.fields_for :questions do |question_form| %>
<%= render :partial => 'question', :locals => {:f => question_form } %>
<% end %>
</div>

<%= f.submit %>
<%= render :partial => 'admin/shared/edit_resource_links' %>
</div>
</div>

Expand Down
39 changes: 23 additions & 16 deletions app/views/admin/question_categories/index.html.erb
Original file line number Diff line number Diff line change
@@ -1,32 +1,39 @@
<div class='toolbar'>
<ul class='actions'>
<li id="new_ot_link">
<%= button_link_to_remote t("new_question_category"),
{:url => new_object_url,
:method => :get,
:update => "new-category"}, :icon => 'add' %>
<li id="new_question_category_link">
<%= button_link_to t("new_question_category"),
new_object_url,
{:remote => :true, :icon => 'add' } %>
</li>
</ul>
<br class='clear' />
</div>
<%= image_tag "spinner.gif", :plugin=>"spree", :style => "display:none", :id => 'busy_indicator' %>
<div id="new-category"></div>
<div id="new_question_category"></div>

<h1>Question Categories</h1>
<h1><%= t("question_categories") %></h1>
<table class="index">
<thead>
<th><%= t("category") %></td>
<th><%= t("questions") %></td>
<th>&nbsp;</th>
<%= hook :admin_question_categories_index_headers do %>
<th><%= t("category") %></td>
<th><%= t("questions") %></td>
<% end %>
<th>
<%= hook :admin_question_categories_header_actions %>
</th>
</tr>
<thead>
<% @question_categories.each do |category| %>
<tr>
<td><%= h category.name %></td>
<td><%= category.questions.count %></td>
<tr id="<%= dom_id category %>">
<%- locals = {:category => category} %>
<%= hook :admin_question_categories_index_rows, locals do %>
<td><%= h category.name %></td>
<td><%= category.questions.count %></td>
<% end %>
<td class="actions">
<%= link_to_edit category.id %>&nbsp;
<%= link_to_delete category.id %>
<%= hook :admin_question_categories_index_row_actions, locals do %>
<%= link_to_edit category %>&nbsp;
<%= link_to_delete category %>
<% end %>
</td>
</tr>
<% end %>
Expand Down
8 changes: 4 additions & 4 deletions app/views/admin/question_categories/new.html.erb
Original file line number Diff line number Diff line change
@@ -1,11 +1,11 @@
<%= error_messages_for :question_category %>
<% form_for @question_category, :url => collection_path do |f| %>
<%= form_for @question_category, :url => collection_path do |f| %>
<%= render "shared/error_messages", :target => f.object %>
<fieldset>
<% f.field_container :name do %>
<%= f.field_container :name do %>
<%= f.label :name, t("name") %> <span class="required">*</span><br />
<%= f.text_field :name, :class => 'fullwidth title' %>
<%= f.error_message_on :name %>
<% end %>
<%= f.submit t("create_category") %>
<%= render :partial => 'admin/shared/new_resource_links' %>
</fieldset>
<% end %>
14 changes: 8 additions & 6 deletions app/views/faqs/index.html.erb
Original file line number Diff line number Diff line change
Expand Up @@ -2,12 +2,14 @@

<div id="faqs">
<% @categories.each do |category| %>
<div id="<%= category.to_param -%>">
<div id="<%= dom_id category -%>" class="category">
<h2><%= h category.name %></h2>
<ul id="answers">
<ul class="answers">
<% category.questions.each do |question| %>
<li>
<a class="question" id="question_<%= question.id -%>"><%= h question.question -%></a>
<a class="question" id="<%= dom_id question -%>" href="#<%= "answer_#{question.id}" %>">
<%= h question.question -%>
</a>
<div class="answer" id="<%= "answer_#{question.id}"-%>">
<%= question.answer %>
</div>
Expand All @@ -18,9 +20,9 @@
<% end %>
</div>

<% content_for :head do %>
<% javascript_tag do %>
$(document).ready(function() {
<%= content_for :head do %>
<%= javascript_tag do %>
$(function() {
$('.answer').hide();
$('.question').click(function() {
var id = $(this).attr('id').split('_')[1];
Expand Down
2 changes: 2 additions & 0 deletions autotest/discover.rb
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
Autotest.add_discovery { "rails" }
Autotest.add_discovery { "rspec2" }
3 changes: 2 additions & 1 deletion config/locales/en-GB.yml
Original file line number Diff line number Diff line change
@@ -1,7 +1,8 @@
---
en:
frequently_asked_questions: Frequently Asked Questions
question_categoriess: Frequently Asked Questions
question_categories_admin: FAQ
question_categories: Frequently Asked Questions
new_question_category: New Category
questions: Questions
create_category: Create Category
Expand Down
Loading

0 comments on commit 41aa3e0

Please # to comment.