ajout de la fonction de rotation d'images
This commit is contained in:
parent
47bfaee09b
commit
c3cbbdadd4
@ -55,5 +55,12 @@
|
|||||||
@image_file = ImageFile.find(params[:id])
|
@image_file = ImageFile.find(params[:id])
|
||||||
|
|
||||||
end
|
end
|
||||||
|
|
||||||
|
def rotate
|
||||||
|
deg = params[:direction] == "right" ? -90 : 90
|
||||||
|
|
||||||
|
@image_file = ImageFile.find(params[:id])
|
||||||
|
@image_file.rotate(deg)
|
||||||
|
end
|
||||||
|
|
||||||
end
|
end
|
||||||
|
@ -26,4 +26,18 @@ class ImageFile < ActiveRecord::Base
|
|||||||
Tag.find_or_create_by_name(t.to_s.strip) if name.size > 0
|
Tag.find_or_create_by_name(t.to_s.strip) if name.size > 0
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
def rotate(degrees=90)
|
||||||
|
versions = [self.file.path, self.file.large.path, self.file.large.medium.path, self.file.large.medium.small.path, self.file.large.medium.small.thumb.path, self.file.square.path]
|
||||||
|
|
||||||
|
versions.each do |v|
|
||||||
|
image = Magick::ImageList.new(v)
|
||||||
|
image = image.rotate(degrees)
|
||||||
|
image.write(v)
|
||||||
|
end
|
||||||
|
self.updated_at = Time.now
|
||||||
|
self.save
|
||||||
|
end
|
||||||
end
|
end
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
- if image_file.file?
|
- if image_file.file?
|
||||||
#image_file.image_file{:id => image_file.id, :data_thumb => image_file.file.large.medium.small.thumb.url, :data_id => image_file.id, :data_name => image_file.name, :data_description => image_file.description, :data_tags => image_file.tags, :data_show_url => admin_image_file_path(:id => image_file.id, :manager => params[:manager], :multiple => params[:multiple]), :data_edit_url => edit_admin_image_file_path(:id => image_file.id, :manager => params[:manager], :multiple => params[:multiple]) , :class => ("new" if @image_file_create)}
|
#image_file.image_file{:id => image_file.id, :data_thumb => image_file.file.large.medium.small.thumb.url, :data_id => image_file.id, :data_name => image_file.name, :data_description => image_file.description, :data_tags => image_file.tags, :data_show_url => admin_image_file_path(:id => image_file.id, :manager => params[:manager], :multiple => params[:multiple]), :data_edit_url => edit_admin_image_file_path(:id => image_file.id, :manager => params[:manager], :multiple => params[:multiple]) , :class => ("new" if @image_file_create)}
|
||||||
%a{:name => "image_file_#{image_file.id}_anchor"}
|
%a{:name => "image_file_#{image_file.id}_anchor"}
|
||||||
.img.QI_background_resize{:style => ("background-image:url('"+(image_file.file.large.medium.small.thumb.url).to_s+"');")}
|
.img.QI_background_resize{:style => ("background-image:url('"+(image_file.file.large.medium.small.thumb.url).to_s+"?u="+image_file.updated_at.to_s+"');")}
|
||||||
=#s
|
=#s
|
||||||
=#image_tag image_file.file.medium.thumb.url if image_file.file?
|
=#image_tag image_file.file.medium.thumb.url if image_file.file?
|
||||||
.name
|
.name
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
.img{:style => ("background-image:url('"+(@image_file.file.url).to_s+"');")}
|
.img{:style => ("background-image:url('"+(@image_file.file.url).to_s+"?u="+ @image_file.updated_at.to_s+"');")}
|
||||||
|
|
||||||
.form
|
.form
|
||||||
|
|
||||||
@ -7,7 +7,8 @@
|
|||||||
#right_bar_clone_buttons_left
|
#right_bar_clone_buttons_left
|
||||||
= link_to i(:trash_stroke, :gray_light), admin_image_file_path(:id => @image_file.id, :manager => params[:manager], :multiple => params[:multiple]), :confirm => 'Voulez-vous vraiment supprimer cette image ?', :method => :delete, :remote => true
|
= link_to i(:trash_stroke, :gray_light), admin_image_file_path(:id => @image_file.id, :manager => params[:manager], :multiple => params[:multiple]), :confirm => 'Voulez-vous vraiment supprimer cette image ?', :method => :delete, :remote => true
|
||||||
|
|
||||||
|
= link_to i(:rotate, :gray_light, "12x14"), rotate_admin_image_file_path(:id => @image_file.id, :manager => params[:manager], :multiple => params[:multiple]), :remote => true, :onclick => "set_busy();"
|
||||||
|
= link_to i(:rotate_right, :gray_light, "12x14"), rotate_admin_image_file_path(:id => @image_file.id, :manager => params[:manager], :multiple => params[:multiple], :direction => :right), :remote => true, :onclick => "set_busy();"
|
||||||
= link_to i(:check_alt, :gray_light), "#",:onclick => "manager_send_image_file("+@image_file.id.to_s+");return false;" if params[:manager] and !params[:multiple]
|
= link_to i(:check_alt, :gray_light), "#",:onclick => "manager_send_image_file("+@image_file.id.to_s+");return false;" if params[:manager] and !params[:multiple]
|
||||||
|
|
||||||
|
|
||||||
|
9
app/views/admin/image_files/rotate.js.erb
Normal file
9
app/views/admin/image_files/rotate.js.erb
Normal file
@ -0,0 +1,9 @@
|
|||||||
|
|
||||||
|
$('#image_file_<%= @image_file.id %>').replaceWith("<%= escape_javascript(render(@image_file))%>");
|
||||||
|
|
||||||
|
|
||||||
|
$('#image_file_container_content').html("<%= escape_javascript(render(:partial => "show")) %>");
|
||||||
|
|
||||||
|
set_image_files_img_size($("#image_files_big_container #right_bar #grid_slider").slider("value"));
|
||||||
|
image_files_load();
|
||||||
|
unset_busy();
|
@ -66,7 +66,11 @@ Pharma::Application.routes.draw do
|
|||||||
resources :admins
|
resources :admins
|
||||||
resources :menus
|
resources :menus
|
||||||
resources :menu_items
|
resources :menu_items
|
||||||
resources :image_files
|
resources :image_files do
|
||||||
|
member do
|
||||||
|
get :rotate
|
||||||
|
end
|
||||||
|
end
|
||||||
resources :file_folders
|
resources :file_folders
|
||||||
resources :data_files
|
resources :data_files
|
||||||
resources :pages
|
resources :pages
|
||||||
|
Loading…
x
Reference in New Issue
Block a user