Puzzlizer
Description
Puzzlizer allows you to create a puzzle from an upload image. It uses RMagic to cut up the image and provides helper function to allows the user to move the pieces around to solve the puzzle.
Installation
Edit you gem file add puzzlize to it.
gem "puzzlize"Alternatively you could install the gem yourself:
console:
gem install puzzlizeUsage
Before you start you will need to add a migration on the model that you want to use:
console:
rails g migration add_puzzle_columnsInside the migration you will need (assuming that your model is Painting):
def self.up
change_table :paintings do |t|
t.add_puzzlize_columns
end
end
def self.down
remove_puzzlize_columns :paintings
endInside your model you will need:
class Painting < ActiveRecord::Base
has_attached_file :image, {:styles => { :medium => "800x800>" }}.merge(PAPERCLIP_STORAGE_OPTIONS) <-- after paperclip
puzzlize :image
endIf you are not using paperclip and your image object does not have access to image.path(:medium) and image.url(:medium) you must overwritte these two methods in your model.
class Painting < ActiveRecord::Base
def default_puzzle_image_url
// Replacement code for --- image.url(:medium) ---
end
def default_puzzle_image_path
// Replacement code for --- image.path(:medium) ---
end
endin the show/view:
puzzlize_javascript_and_css(@painting)
puzzlize_show_puzzle(@painting)where @painting is model object.