diff --git a/app/controllers/disk_wizard_controller.rb b/app/controllers/disk_wizard_controller.rb index b7ca4bc..e12f158 100644 --- a/app/controllers/disk_wizard_controller.rb +++ b/app/controllers/disk_wizard_controller.rb @@ -53,6 +53,10 @@ def manage_disk if request.post? self.user_selections = {fs_type: fs_type, format: format, path: partition} end + if partition.match(/^\/dev/).blank? + device = Device.find_with_unallocated(user_selections['disk']) + @selected_partiton = (device.partitions.select{|part| part.identifier == user_selections['path'] }).first + end end # Expected key:values in @params: @@ -64,7 +68,8 @@ def confirmation unless params[:fs_type].blank? # create new partition with this file system fs_type = params[:fs_type].to_i - self.user_selections = {fs_type: fs_type} + partition_divider = params[:partition_divider].to_i + self.user_selections = {fs_type: fs_type, partition_divider: partition_divider} end option = params[:option] label = params[:label].blank? ? nil : params[:label] @@ -131,7 +136,8 @@ def process_disk end if option.include?(CREATE_OPTION) - para = {identifier: user_selections['identifier'], path: user_selections['disk'], fs_type: user_selections['fs_type']} + para = {identifier: user_selections['identifier'], path: user_selections['disk'], + fs_type: user_selections['fs_type'], partition_divider: user_selections['partition_divider']} job_name = :create_new_partition_job DebugLogger.info "|#{self.class.name}|>|#{__method__}|:Job_name = #{job_name}, para = #{para}" jobs_queue.enqueue({job_name: job_name, job_para: para}) diff --git a/app/views/disk_wizard/confirmation.html.erb b/app/views/disk_wizard/confirmation.html.erb index d97a528..3672e26 100644 --- a/app/views/disk_wizard/confirmation.html.erb +++ b/app/views/disk_wizard/confirmation.html.erb @@ -63,7 +63,7 @@ create Partition
  • - <%= number_to_human_size @selected_disk.size %> + <%= number_to_human_size @selected_disk.size/user_selections['partition_divider'] %> Partition Size
  • <% elsif option == DiskWizardController::NOTHING_OPTION %> diff --git a/app/views/disk_wizard/manage_disk.html.erb b/app/views/disk_wizard/manage_disk.html.erb index 7af5448..9b5a5cc 100644 --- a/app/views/disk_wizard/manage_disk.html.erb +++ b/app/views/disk_wizard/manage_disk.html.erb @@ -24,19 +24,23 @@ $( document ).ready( function () { if ($('.create_new_partition').is(':checked')) { $('#fs_selector').slideDown(); + $('#size_selector').slideDown(); $('#mount_after_creation').slideDown(); } else { $('#fs_selector').slideUp(); $('#mount_after_creation').slideUp(); + $('#size_selector').slideUp(); } }); $(function () { $('.create_new_partition, .nothing').change(function () { if ($('.create_new_partition').is(':checked')) { $('#fs_selector').slideDown(); + $('#size_selector').slideDown(); $('#mount_after_creation').slideDown(); } else { $('#fs_selector').slideUp(); + $('#size_selector').slideUp(); $('#mount_after_creation').slideUp(); } }); @@ -90,16 +94,25 @@
    +