public
Description: Hedgehog rewrite for rails 2.0
Clone URL: git://github.com/jorrel/soniqck.git
name age message
file .gitignore Fri Apr 11 19:06:06 -0700 2008 added .gitignore to ignore the logs [jorrel]
file README Fri Apr 11 19:42:39 -0700 2008 updated README with goals [jorrel]
file Rakefile Tue Apr 08 00:21:11 -0700 2008 Initial Structure after running rails [jorrel]
directory app/ Sat Apr 12 21:49:54 -0700 2008 automated_controller now automates index [jorrel]
directory config/ Sat Apr 12 21:49:54 -0700 2008 automated_controller now automates index [jorrel]
directory db/ Fri Apr 11 19:01:19 -0700 2008 added rspec testing [jorrel]
directory doc/ Tue Apr 08 00:21:11 -0700 2008 Initial Structure after running rails [jorrel]
file previous_failures.txt Fri Apr 11 19:01:19 -0700 2008 added rspec testing [jorrel]
directory public/ Tue Apr 08 00:21:11 -0700 2008 Initial Structure after running rails [jorrel]
directory script/ Fri Apr 11 19:01:19 -0700 2008 added rspec testing [jorrel]
directory spec/ Sat Apr 12 21:49:54 -0700 2008 automated_controller now automates index [jorrel]
directory stories/ Fri Apr 11 19:01:19 -0700 2008 added rspec testing [jorrel]
directory test/ Sat Apr 12 21:49:54 -0700 2008 automated_controller now automates index [jorrel]
directory vendor/ Sat Apr 12 21:49:54 -0700 2008 automated_controller now automates index [jorrel]
README
= Soniqck


== Overview

  Soniqck the Hedgehog

  Soniqck is a rewrite of hedeghog ticketing for rails 2.0


== Primary Goals

=== ModelAutomator rewrite

  ModelAutomator will be rewritted as AutomatedController

  desired usage:

     class PostsController < ApplicationController
       automate  # will automatically infer that the model is Post

       private

         # able to override specific responses
         def respond_to_xml_on_index
           render :text => @posts.to_xml
         end
     end

  new find_or_initialize:

     class CommentsController < ApplicationController
       # @post = Post.find(params[:post_id])
       # @comment = @post.comments.find(params[:id])
       find_or_initialize :comment, :belongs_to => :post
     end

     class CitiesController < ApplicationController
       # @country = Country.find(params[:country_id])
       # @city = @country.towns.custom_finder(params[:id], params[:another_field])
       find_or_initialize :city,
                          :belongs_to => :country, :as => :town,
                          :finder => :custom_finder, :id => [:id, :another_field]
     end

     # Maybe too much, but it would be nice
     class ParagraphController < ApplicationController
       # @author = Author.find(params[:author_id])
       # @book = @author.works.find(params[:book_id])
       # @page = @book.pages.find(params[:page_id])
       # @paragraph => @page.paragraphs.find(params[:id])
       find_or_initialize :paragraph,
                          :belongs_to => {
                            :page => {
                            :belongs_to => {
                              :book => {
                              :belongs_to => :author, :as => :work
                              }
                            }}
                          }
     end

=== Queueing

  Usage of QueueFu or similar for sending email