plugin formtastic qi_image_select
This commit is contained in:
parent
aec1b53c84
commit
a6d45ed58b
1
vendor/plugins/qi_select_image/README.markdown
vendored
Normal file
1
vendor/plugins/qi_select_image/README.markdown
vendored
Normal file
@ -0,0 +1 @@
|
||||
Copyright (c) 2011 Nicolas Bally
|
11
vendor/plugins/qi_select_image/Rakefile
vendored
Normal file
11
vendor/plugins/qi_select_image/Rakefile
vendored
Normal file
@ -0,0 +1,11 @@
|
||||
require 'rake'
|
||||
require 'spec/rake/spectask'
|
||||
|
||||
desc 'Default: run all specs.'
|
||||
task :default => :spec
|
||||
|
||||
desc 'Run all specs'
|
||||
Spec::Rake::SpecTask.new(:spec) do |t|
|
||||
t.spec_opts = ['--colour --format progress --loadby mtime --reverse']
|
||||
t.spec_files = FileList['spec/**/*_spec.rb']
|
||||
end
|
6
vendor/plugins/qi_select_image/init.rb
vendored
Normal file
6
vendor/plugins/qi_select_image/init.rb
vendored
Normal file
@ -0,0 +1,6 @@
|
||||
# -*- encoding : utf-8 -*-
|
||||
if Object.const_defined?("Formtastic")
|
||||
require 'qi_image_select'
|
||||
Formtastic::SemanticFormBuilder.send(:include, Formtastic::QiImageSelect)
|
||||
end
|
||||
|
54
vendor/plugins/qi_select_image/lib/qi_image_select.rb
vendored
Normal file
54
vendor/plugins/qi_select_image/lib/qi_image_select.rb
vendored
Normal file
@ -0,0 +1,54 @@
|
||||
|
||||
|
||||
module Formtastic
|
||||
module QiImageSelect
|
||||
|
||||
def self.included(base)
|
||||
base.send(:extend, ClassMethods)
|
||||
end
|
||||
|
||||
module ClassMethods
|
||||
|
||||
@@image_preview_sizes = [ :preview, :thumbnail, :thumb, :small ]
|
||||
|
||||
def image_preview_sizes
|
||||
@@image_preview_sizes
|
||||
end
|
||||
|
||||
def image_preview_sizes=(value)
|
||||
@@image_preview_sizes = value
|
||||
end
|
||||
|
||||
end
|
||||
|
||||
|
||||
protected
|
||||
|
||||
def qi_image_select_input(method, options)
|
||||
|
||||
r = rand(1000000000000000000000000000)
|
||||
|
||||
html_options = options.delete(:input_html) || {}
|
||||
|
||||
self.label(method, options_for_label(options)) +
|
||||
template.content_tag(:fieldset, self.manager_select_link(method, options, r) + template.tag(:br) + self.image_preview(method, options, r) + self.send(:hidden_field, method, html_options.merge!(:id => "input_"+r.to_s)))
|
||||
end
|
||||
|
||||
|
||||
def manager_select_link(method, options, r)
|
||||
|
||||
template.content_tag(:a, "Modifier cette image", :href => "#", :onclick => "select_image_from_manager('"+r.to_s+"');return false;")
|
||||
|
||||
end
|
||||
|
||||
def image_preview(method, options,r)
|
||||
|
||||
if object.send("#{method}?")
|
||||
template.content_tag(:span, template.image_tag(object.image_file.file.large.medium.small.thumb.url, :id => "img_"+r.to_s), :class => "preview ")
|
||||
else
|
||||
template.content_tag(:span, template.image_tag("", :id => "img_"+r.to_s), :class => "preview ")
|
||||
end
|
||||
end
|
||||
|
||||
end
|
||||
end
|
7
vendor/plugins/qi_select_image/spec/spec_helper.rb
vendored
Normal file
7
vendor/plugins/qi_select_image/spec/spec_helper.rb
vendored
Normal file
@ -0,0 +1,7 @@
|
||||
# -*- encoding : utf-8 -*-
|
||||
begin
|
||||
require File.dirname(__FILE__) + '/../../../../spec/spec_helper'
|
||||
rescue LoadError
|
||||
puts "You need to install rspec in your base app"
|
||||
exit
|
||||
end
|
2
vendor/plugins/qi_select_image/spec/to_slug_spec.rb
vendored
Normal file
2
vendor/plugins/qi_select_image/spec/to_slug_spec.rb
vendored
Normal file
@ -0,0 +1,2 @@
|
||||
# -*- encoding : utf-8 -*-
|
||||
require File.dirname(__FILE__) + '/spec_helper.rb'
|
Loading…
x
Reference in New Issue
Block a user