ManageIQ/manageiq-ui-classic

View on GitHub
app/views/layouts/_adv_search_body.html.haml

Summary

Maintainability
Test Coverage
- mode ||= "search"
- force ||= false

#adv_search_body
  - if force || (show_adv_search? && @edit && @edit[@expkey].present?)
    - url = url_for_only_path(:action => 'adv_search_load_choice')
    - url2 = url_for_only_path(:action => 'adv_search_name_typed')
    - report_expressions = MiqReport.get_expressions_by_model(@edit[@expkey][:exp_model])

    - if mode == "search"
      - if @edit && @edit[@expkey] && @edit[@expkey][:selected]
        = " (#{h(@edit[@expkey][:selected][:description])})"
      - elsif @edit && @edit[:adv_search_report]
        = " (from report #{h(@edit[:adv_search_report])})"
      %br
      - if @edit && @edit[@expkey][:expression]
        = render(:partial => 'layouts/exp_editor')
    - elsif mode == "load"
      - if @exp_to_load
        %fieldset
          %h3
            = _("Search Expression Preview")
          - @exp_to_load.each do |token|
            - if ! ["AND", "OR", "(", ")"].include?([token].flatten.first)
              = h([token].flatten.first)
            - else
              %font{:color => "black"}
                %b= h([token].flatten.first)
      %fieldset
        .form-horizontal
          - unless @edit[@expkey].available_adv_searches.blank?
            .form-group
              %label.control-label.col-md-2
                %font{:color => "black"}
                  = _("Choose a saved %{model} filter:") % {:model => ui_lookup(:model => @edit[@expkey][:exp_model])}
              .col-md-8
                = select_tag("chosen_search",
                             options_for_select([[_("<Choose>"), "0"]] + @edit[@expkey].available_adv_searches,
                                                    @edit[@expkey][:exp_chosen_search]),
                             :multiple          => false,
                             :class             => "selectpicker")
                :javascript
                  miqInitSelectPicker();
                  miqSelectPickerEvent('chosen_search', '#{url}')
          - unless @edit[@expkey].available_adv_searches.blank? || report_expressions.blank?
            .form-group
              %label.control-label.col-md-2
                = _("-- OR --")
          - unless report_expressions.blank?
            .form-group
              %label.control-label.col-md-2
                %font{:color => "black"}
                  = _("Choose a %{model} report filter") % {:model => ui_lookup(:model => @edit[@expkey][:exp_model])}
    - elsif mode == "save"
      = render :partial => 'layouts/flash_msg', :locals => {:flash_div_id => 'exp_editor_flash'} if params[:button] != 'save'
      .modal-body
        .form-horizontal
          .form-group
            %label.control-label.col-md-5
              = _("Search Expression")
            .col-md-6
              - @edit[@expkey][:exp_table].each do |token|
                - if ! ["AND", "OR", "(", ")"].include?([token].flatten.first)
                  = h([token].flatten.first)
                - else
                  %font{:color => "black"}
                    %b= h([token].flatten.first)
        .form-horizontal
          .form-group
            %label.control-label.col-md-5
              = _("Save this %{model} search as:") % {:model => ui_lookup(:model => @edit[@expkey][:exp_model])}
            .col-md-6
              %span#search_name_span
                = text_field_tag("search_name",
                                 h(@edit[:new_search_name]) || h(@edit[:adv_search_name]),
                                 :maxlength         => 30,
                                 :class             => "form-control",
                                 "data-miq_focus"   => true,
                                 "data-miq_observe" => {:interval => ".5", :url => url2}.to_json)
          - if role_allows?(:feature => 'add_global_filter')
            .form-group
              %label.control-label.col-md-5
                = _("Global search:")
              .col-md-6
                - checked = @edit && @edit[:expression] && @edit[:expression][:selected] && @edit[:expression][:selected][:typ] == "global"
                = check_box_tag("search_type", "1", checked,
                  :style                      => "width: 20px",
                  "data-miq_observe_checkbox" => {:url => url2}.to_json)