[PATCH conductor 1/2] BZ 785231: deployments: reworked launch time params form

Jirka Tomasek jtomasek at redhat.com
Wed Feb 1 15:53:05 UTC 2012


On 01/31/2012 09:14 PM, mzatko at redhat.com wrote:
> From: Maros Zatko<mzatko at redhat.com>
>
> https://bugzilla.redhat.com/show_bug.cgi?id=785231
>
> This allows you to fill in launch time parameters
> when there are more than five parameters in a service.
> ---
>   .../views/deployments/launch_time_params.html.haml |   47 +++++++++++--------
>   1 files changed, 27 insertions(+), 20 deletions(-)
>
> diff --git a/src/app/views/deployments/launch_time_params.html.haml b/src/app/views/deployments/launch_time_params.html.haml
> index 9e633f8..f342256 100644
> --- a/src/app/views/deployments/launch_time_params.html.haml
> +++ b/src/app/views/deployments/launch_time_params.html.haml
> @@ -13,27 +13,30 @@
>       = hidden_field_tag :deployable_id, params[:deployable_id]
>
>       %section.services
> +      .labels
> +        - @services.each do |service, assembly_name|
> +          %h4.service{:id =>  service.id}= service.name.titleize
> +          %p.hidden.description= service.description
> +
>         %header
>           %h3.service
>           %p.description
>
> -      - @services.each do |service, assembly_name|
> -        %h4.service= service.name.titleize
> -        %p.hidden.description= service.description
> -
> -        .parameters
> -          - service.parameters.each do |parameter|
> -            .parameter
> -              - if not parameter.reference?
> -                - id = "deployment[launch_parameters][#{assembly_name}][#{service.name}][#{parameter.name}]"
> -                = label_tag id, parameter.name.titleize + ':'
> -                - value = get_hash_multi(params, [:deployment, :launch_parameters, assembly_name, service.name, parameter.name])
> -                - if parameter.type == "password"
> -                  = password_field_tag id, (parameter.value or value)
> +      .params-container
> +        - @services.each do |service, assembly_name|
> +          .parameters{:id =>  service.id}
> +            - service.parameters.each do |parameter|
> +              .parameter
> +                - if not parameter.reference?
> +                  - id = "deployment[launch_parameters][#{assembly_name}][#{service.name}][#{parameter.name}]"
> +                  = label_tag id, parameter.name.titleize + ':'
> +                  - value = get_hash_multi(params, [:deployment, :launch_parameters, assembly_name, service.name, parameter.name])
> +                  - if parameter.type == "password"
> +                    = password_field_tag id, (parameter.value or value)
> +                  - else
> +                    = text_field_tag id, (parameter.value or value)
>                   - else
> -                  = text_field_tag id, (parameter.value or value)
> -              - else
> -                = t('.reference', :assembly =>  parameter.reference_assembly, :parameter =>  parameter.reference_parameter)
> +                  = t('.reference', :assembly =>  parameter.reference_assembly, :parameter =>  parameter.reference_parameter)
>
>         #service-headers
>
> @@ -42,10 +45,13 @@
>   :javascript
>     (function () {
>       function selectService($service) {
> -      $('.service.selected').next().next('.parameters').hide();
> +      var old_param_id = $('.service.selected').attr('id');
> +      $('div.params-container').find('#' + old_param_id).hide();
>         $('.service.selected').removeClass('selected');
> +
>         $service.addClass('selected');
> -      $service.next().next('.parameters').show();
> +      var new_param_id = $service.attr('id');
> +      $('div.params-container').find('#' + new_param_id).show();
>
>         $service.parents('.services').find('header .service').text($service.text());
>         $service.parents('.services').find('header .description')
> @@ -58,12 +64,13 @@
>           var filledOut = _.all($parameters, function(item) {
>             return ! _.isEmpty($(item).val());
>           });
> -        $(this).prev().prev('.service').toggleClass('filled-out', filledOut);
> +        var param_id = $(this).attr('id');
> +        $('.labels').find('#' + param_id).toggleClass('filled-out', filledOut);
>           $('#submit_params').attr('disabled', !filledOut);
>         });
>       }
>
> -    var $services = $('.launch-time-params .services h4.service');
> +    var $services = $('.launch-time-params .services .labels h4.service');
>       selectService($services.first());
>       $services.live('click', function(e) { selectService($(this)); });
>
Nice, ACK to patchset

Jirka



More information about the aeolus-devel mailing list