[Ovirt-devel] [PATCH 1/3] Adding the VM Pool migration for vms
Arthur Clément
aclement at linagora.com
Wed Sep 8 12:57:26 UTC 2010
ack & pushed
On mercredi 01 septembre 2010 14:57:24 Simon COURTOIS wrote:
> Signed-off-by: Simon COURTOIS <scourtois at linagora.com>
> ---
> src/app/controllers/vm_controller.rb | 16 ++++++++++++++
> src/app/views/vm/edit_vmpool.rhtml | 36
> ++++++++++++++++++++++++++++++++ src/app/views/vm/show.rhtml |
> 3 ++
> src/public/images/icon_vmpool_11px.png | Bin 0 -> 542 bytes
> 4 files changed, 55 insertions(+), 0 deletions(-)
> create mode 100644 src/app/views/vm/edit_vmpool.rhtml
> create mode 100644 src/public/images/icon_vmpool_11px.png
>
> diff --git a/src/app/controllers/vm_controller.rb
> b/src/app/controllers/vm_controller.rb index 9860843..f4a90b9 100644
> --- a/src/app/controllers/vm_controller.rb
> +++ b/src/app/controllers/vm_controller.rb
> @@ -146,6 +146,22 @@ class VmController < ApplicationController
> render :layout => false
> end
>
> + def edit_vmpool
> + svc_modify(params[:id])
> + @vm = Vm.find(params[:id])
> + @vm_pools =
> VmResourcePool.find_all_by_parent_id(@vm.vm_resource_pool.parent.id) +
> render :layout => 'popup'
> + end
> +
> + def update_vmpool
> + svc_modify(params[:id])
> + @vm = Vm.find(params[:id])
> + @vm_pool = VmResourcePool.find(params[:vm][:vm_resource_pool_id])
> + @vm.update_attribute(:vm_resource_pool, @vm_pool)
> + render :json => { :object => "vm", :success => true,
> + :alert => "VM Pool changed for this Virtual Machine"
> } + end
> +
> protected
> def _setup_provisioning_options
> @provisioning_options = [[Vm::PXE_OPTION_LABEL, Vm::PXE_OPTION_VALUE],
> diff --git a/src/app/views/vm/edit_vmpool.rhtml
> b/src/app/views/vm/edit_vmpool.rhtml new file mode 100644
> index 0000000..cfa29a7
> --- /dev/null
> +++ b/src/app/views/vm/edit_vmpool.rhtml
> @@ -0,0 +1,36 @@
> +<%- content_for :title do -%>
> + Change VM Pool
> +<%- end -%>
> +<%- content_for :description do -%>
> + Please choose pool destination.
> +<%- end -%>
> +
> +<form method="POST" id="change_vmpool_form" action="<%= url_for :action =>
> 'update_vmpool' %>"> + <div class="dialog_form">
> + <%= error_messages_for 'change_vmpool' %>
> +
> + <% form_tag do %>
> + <!--[form:change_vmpool]-->
> + <%= hidden_field_tag 'id', @vm.id, :id => 'vm_id' %>
> + <%= label "vm", "vm_resource_pool_id", "Select the pool to migrate
> to" %> + <%= select "vm", "vm_resource_pool_id", @vm_pools.map {
> |pool| [pool.name, pool.id] } %> + <% end %>
> +
> + </div>
> + <%= popup_footer("$('#change_vmpool_form').submit()", "Change VM Pool")
> %> +</form>
> +<script type="text/javascript">
> + $(function() {
> +
> + $('#change_vmpool_form').ajaxForm({
> + dataType: 'json',
> + success: function(data, status) {
> + afterVm(data, status);
> + if (data.alert) {
> + $.jGrowl(data.alert);
> + }
> + }
> + });
> +
> + });
> +</script>
> diff --git a/src/app/views/vm/show.rhtml b/src/app/views/vm/show.rhtml
> index e7207aa..3413095 100644
> --- a/src/app/views/vm/show.rhtml
> +++ b/src/app/views/vm/show.rhtml
> @@ -33,6 +33,9 @@
> </a>
> <% end -%>
> <% end %>
> + <%= link_to image_tag("icon_vmpool_11px.png") + " Change VM Pool",
> + {:controller => 'vm', :action => 'edit_vmpool',
> :id => @vm}, + :rel=>"facebox[.bolder]",
:class=>"selection_facebox"
> %>
> <a href="#confirm_cancel" rel="facebox[.bolder]">
> <%= image_tag "icon_cancel_11px.png" %> Cancel queued tasks
> </a>
> diff --git a/src/public/images/icon_vmpool_11px.png
> b/src/public/images/icon_vmpool_11px.png new file mode 100644
> index
> 0000000000000000000000000000000000000000..86e5970fcb706e5bd82882baafc4e03d
> 7f648ee9 GIT binary patch
> literal 542
> zcmV+(0^$9MP)<h;3K|Lk000e1NJLTq000aC000XJ1^@s6OK at yo00001b5ch_0Itp)
> z=>Px#24YJ`L;(K){{a7>y{D4^000SaNLh0L01FcU01FcV0GgZ_00007bV*G`2igb{
> z4g?!fhG5<R00Ev!L_t(2&vlVKYZO5MK;P`nWsjVKaD|8%Q=K3Pb`e7aqn>C)0%|M-
> z3qOj0MgD<kmC8cz4~S7Bf{jHAAr=uyA%fUQL<vE;gUg-S&F#$W?(B?Rs`J(FRS$-+
> z_;`W;As)=%nwY)PT(4C3Vbm^5FJDi;SYG)sOn&wJ3DTAB`nk(z at oLM9s3DGw9bLV5
> z|1Ls^JuwVJI-T~~wVU&2q}G`QOX<7_vt4YljdKdYUf}VFour%^KR!7sbL+usT%IDM
> zfZpH`f8qoo1lE>}j8p_bbLJ9Xzim8}Md82~xUv8jpta`Xr_Y=`ag2-8lPtY?$Is2*
> z6h($H#s#U$As^tf7 at x%?NkX^(m$mgTjE@~go1E`IHpxte(F&=w1v{Y3Vw?yuW<MLh
> zwy2F(nVPxHPLksB#BoAa<Vcg3Auc6wiogf-`i}R at PYI=@BBgg8QQ91(GgepLO3}P<
> zezvo%t_GpB&cVTYMWm at tqbNF6tJNj|y4~)xs2UyU_4<#*ut7KG=1w;njXU*vy--St
> gPP=Vdt=0m-KfYwn??4I``~Uy|07*qoM6N<$f<@--od5s;
>
> literal 0
> HcmV?d00001
--
Arthur CLEMENT
Linagora Paris
More information about the ovirt-devel
mailing list