Skip to content

klauBertram/spud_inquiries

 
 

Repository files navigation

Spud Inquiries

Build Status Spud Inquiries is a Spud Engine designed to make it easier to generate contact forms and send email notifications when these inquiries occur. This engine works great with the spud_cms engine but it is fully capable of running standalone with spud_core.

Installation/Usage

  1. In your Gemfile add the following

     gem 'spud_core', :git => "git://github.com/davydotcom/spud_core_admin.git"
     gem 'spud_inquiries', :git => "git://github.com/davydotcom/spud_inquiries.git"
    
  2. Run bundle install

  3. Copy in database migrations to your new rails project

     bundle exec rake railties:install:migrations
     rake db:migrate
    
  4. run a rails server instance and point your browser to /spud/admin

Creating a Contact Form

Creating a contact form is still fairly new and improvements will be made as time goes on. To create a new form, go to the Inquiries app inside of your spud admin panel. Click the forms button to manage various forms. Here you can set the form name, any content (html safe) you wish to render before the form renders, and add the form fields to the form (Email address is currently at the top of all forms and not adjustable).

Routing to the Inquiries Engine

By default the inquiries gem routes the "/contact" url to the form named "contact". However this and other configuration options can be changed as shown below.

	Spud::Inquiries.configure do |config|
		config.enable_routes = true
	    config.default_contact_form = "contact"
	    config.base_layout = "application"
	    config.from_address = "[email protected]"
	end

Where "contact" is the name of the form you wish to use (downcased,parameterized,hyphenated)

Inquiry will default render to the 'application' layout of your application. You can change this by adjusting the configuration option called "base_layout". More configuration options can be found in the Wiki "Configuration" page.

Injecting Forms into Spud CMS Pages

Spud Supports the use of liquid tags to inject dynamic content into pages. In order to inject a contact form into a spud page simply use the following liquid tag in your content:

 {% inquiry Contact %}

The above example will inject a form named "Contact" into your content.

Testing

Spud uses RSpec for testing. Get the tests running with a few short commands:

  1. Create and migrate the databases:

     rake db:create
     rake db:migrate
    
  2. Load the schema in to the test database:

     rake app:db:test:prepare
    
  3. Run the tests with RSpec

     rspec spec
    

After the tests have completed the current code coverage stats is available by opening /coverage/index.html in a browser.

About

Spud Engine for Contact Forms/Inquiries

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Ruby 97.0%
  • JavaScript 1.6%
  • CSS 1.4%