active_scaffold 3.4.2 → 3.4.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/CHANGELOG +5 -1
- data/app/assets/javascripts/jquery/active_scaffold.js +33 -22
- data/app/assets/javascripts/prototype/active_scaffold.js +67 -17
- data/app/views/active_scaffold_overrides/_field_search.html.erb +6 -3
- data/app/views/active_scaffold_overrides/_form.html.erb +4 -2
- data/app/views/active_scaffold_overrides/_form_association.html.erb +4 -2
- data/app/views/active_scaffold_overrides/_form_association_footer.html.erb +2 -4
- data/app/views/active_scaffold_overrides/_search.html.erb +0 -14
- data/lib/active_scaffold/config/search.rb +1 -1
- data/lib/active_scaffold/extensions/action_view_rendering.rb +1 -6
- data/lib/active_scaffold/helpers/form_column_helpers.rb +0 -1
- data/lib/active_scaffold/helpers/view_helpers.rb +1 -1
- data/lib/active_scaffold/version.rb +1 -1
- metadata +2 -2
    
        checksums.yaml
    CHANGED
    
    | @@ -1,7 +1,7 @@ | |
| 1 1 | 
             
            ---
         | 
| 2 2 | 
             
            SHA1:
         | 
| 3 | 
            -
              metadata.gz:  | 
| 4 | 
            -
              data.tar.gz:  | 
| 3 | 
            +
              metadata.gz: 0a8ff5ba84f3dc705d9828e90c74107b5d7956c0
         | 
| 4 | 
            +
              data.tar.gz: 83d93e5cfce76fc8b5ffa04a72114e88a39ee6b3
         | 
| 5 5 | 
             
            SHA512:
         | 
| 6 | 
            -
              metadata.gz:  | 
| 7 | 
            -
              data.tar.gz:  | 
| 6 | 
            +
              metadata.gz: 0a1018479c9bab0ef13fbfe281c20a1fec953bb91403c06c69b38a9220b78b7e7d55d39cd28f9fb5bf36ae742e5947034415478ff0fd9157c560fe73cbb2a23e
         | 
| 7 | 
            +
              data.tar.gz: d1b55a0ca9c756fd581aaaec5bdff972ad55942f8ea5d326e4e166dff35ea4c0ad4bebed3ff6df85275a7fb4872b1ebc4d7a2c8868b7bfb1954aa42ef7756dfb
         | 
    
        data/CHANGELOG
    CHANGED
    
    | @@ -1,4 +1,8 @@ | |
| 1 | 
            -
            = 3.4. | 
| 1 | 
            +
            = 3.4.3
         | 
| 2 | 
            +
            - default search columns doesn't include association columns (broken on 3.4.2), it slowing down search with no point (searching by association's primary key)
         | 
| 3 | 
            +
            - More unobtrusive html views
         | 
| 4 | 
            +
             | 
| 5 | 
            +
            = 3.4.2
         | 
| 2 6 | 
             
            - fix tableless on latest rails4 versions
         | 
| 3 7 | 
             
            - respond with 406 for html request on js only actions
         | 
| 4 8 | 
             
            - fix JS issue on IE8
         | 
| @@ -224,6 +224,13 @@ jQuery(document).ready(function($) { | |
| 224 224 | 
             
                } else value = form_element.is("input:checkbox:not(:checked)") ? null : form_element.val();
         | 
| 225 225 | 
             
                ActiveScaffold.update_column(form_element, element.attr('href'), element.data('update_send_form'), form_element.attr('id'), value);
         | 
| 226 226 | 
             
              });
         | 
| 227 | 
            +
              jQuery(document).on('click', 'a.visibility-toggle', function(e) {
         | 
| 228 | 
            +
                var link = jQuery(this), toggable = jQuery('#' + link.data('toggable'));
         | 
| 229 | 
            +
                e.preventDefault();
         | 
| 230 | 
            +
                toggable.toggle();
         | 
| 231 | 
            +
                link.html((toggable.is(':hidden')) ? link.data('show') : link.data('hide'));
         | 
| 232 | 
            +
                return false;
         | 
| 233 | 
            +
              });
         | 
| 227 234 | 
             
              jQuery(document).on('recordselect:change', 'input.recordselect.update_form', function(event, id, label) {
         | 
| 228 235 | 
             
                var element = jQuery(this);
         | 
| 229 236 | 
             
                ActiveScaffold.update_column(element, element.data('update_url'), element.data('update_send_form'), element.attr('id'), id);
         | 
| @@ -279,14 +286,21 @@ jQuery(document).ready(function($) { | |
| 279 286 | 
             
                e.preventDefault();
         | 
| 280 287 | 
             
              });
         | 
| 281 288 |  | 
| 289 | 
            +
              /* setup some elements on page/form load */
         | 
| 290 | 
            +
              ActiveScaffold.load_embedded(document);
         | 
| 291 | 
            +
              ActiveScaffold.enable_js_form_buttons(document);
         | 
| 282 292 | 
             
              ActiveScaffold.live_search(document);
         | 
| 283 293 | 
             
              ActiveScaffold.auto_paginate(document);
         | 
| 284 | 
            -
              ActiveScaffold.draggable_lists('.draggable-lists');
         | 
| 294 | 
            +
              ActiveScaffold.draggable_lists('.draggable-lists', document);
         | 
| 285 295 | 
             
              jQuery(document).on('as:element_updated', function(e) {
         | 
| 296 | 
            +
                ActiveScaffold.load_embedded(e.target);
         | 
| 297 | 
            +
                ActiveScaffold.enable_js_form_buttons(e.target);
         | 
| 286 298 | 
             
                ActiveScaffold.live_search(e.target);
         | 
| 287 299 | 
             
                ActiveScaffold.draggable_lists('.draggable-lists', e.target);
         | 
| 288 300 | 
             
              });
         | 
| 289 301 | 
             
              jQuery(document).on('as:action_success', 'a.as_action', function(e, action_link) {
         | 
| 302 | 
            +
                ActiveScaffold.load_embedded(action_link.adapter);
         | 
| 303 | 
            +
                ActiveScaffold.enable_js_form_buttons(action_link.adapter);
         | 
| 290 304 | 
             
                ActiveScaffold.live_search(action_link.adapter);
         | 
| 291 305 | 
             
                ActiveScaffold.auto_paginate(action_link.adapter);
         | 
| 292 306 | 
             
                ActiveScaffold.draggable_lists('.draggable-lists', action_link.adapter);
         | 
| @@ -415,6 +429,17 @@ var ActiveScaffold = { | |
| 415 429 | 
             
              auto_load_page: function(href, params) {
         | 
| 416 430 | 
             
                jQuery.get(href, params, null, 'script');
         | 
| 417 431 | 
             
              },
         | 
| 432 | 
            +
              enable_js_form_buttons: function(element) {
         | 
| 433 | 
            +
                jQuery('.as-js-button', element).show();
         | 
| 434 | 
            +
              },
         | 
| 435 | 
            +
              load_embedded: function(element) {
         | 
| 436 | 
            +
                $('.active-scaffold-component .load-embedded', element).each(function(index, item) {
         | 
| 437 | 
            +
                  item = jQuery(item);
         | 
| 438 | 
            +
                  item.closest('.active-scaffold-component').load(item.attr('href'), function() {
         | 
| 439 | 
            +
                    jQuery(this).trigger('as:element_updated');
         | 
| 440 | 
            +
                  });
         | 
| 441 | 
            +
                });
         | 
| 442 | 
            +
              },
         | 
| 418 443 |  | 
| 419 444 | 
             
              records_for: function(tbody_id) {
         | 
| 420 445 | 
             
                if (typeof(tbody_id) == 'string') tbody_id = '#' + tbody_id;
         | 
| @@ -455,10 +480,11 @@ var ActiveScaffold = { | |
| 455 480 | 
             
              removeSortClasses: function(scaffold) {
         | 
| 456 481 | 
             
                if (typeof(scaffold) == 'string') scaffold = '#' + scaffold;
         | 
| 457 482 | 
             
                scaffold = jQuery(scaffold)
         | 
| 458 | 
            -
                scaffold.find('td.sorted').each(function(element) {
         | 
| 459 | 
            -
                  element.removeClass("sorted");
         | 
| 483 | 
            +
                scaffold.find('td.sorted').each(function(index, element) {
         | 
| 484 | 
            +
                  jQuery(element).removeClass("sorted");
         | 
| 460 485 | 
             
                });
         | 
| 461 | 
            -
                scaffold.find('th.sorted').each(function(element) {
         | 
| 486 | 
            +
                scaffold.find('th.sorted').each(function(index, element) {
         | 
| 487 | 
            +
                  element = jQuery(element);
         | 
| 462 488 | 
             
                  element.removeClass("sorted");
         | 
| 463 489 | 
             
                  element.removeClass("asc");
         | 
| 464 490 | 
             
                  element.removeClass("desc");
         | 
| @@ -735,21 +761,6 @@ var ActiveScaffold = { | |
| 735 761 | 
             
                }
         | 
| 736 762 | 
             
              },
         | 
| 737 763 |  | 
| 738 | 
            -
              create_visibility_toggle: function(element, options) {
         | 
| 739 | 
            -
                if (typeof(element) == 'string') element = '#' + element;
         | 
| 740 | 
            -
                var toggable = jQuery(element);
         | 
| 741 | 
            -
                var toggler = toggable.prev();
         | 
| 742 | 
            -
                var initial_label = (options.default_visible === true) ? options.hide_label : options.show_label;
         | 
| 743 | 
            -
                
         | 
| 744 | 
            -
                toggler.append(' <a class="visibility-toggle" href="#">' + initial_label + '</a>');
         | 
| 745 | 
            -
                toggler.children('a').click(function(e) {
         | 
| 746 | 
            -
                  e.preventDefault();
         | 
| 747 | 
            -
                  toggable.toggle(); 
         | 
| 748 | 
            -
                  jQuery(this).html((toggable.is(':hidden')) ? options.show_label : options.hide_label);
         | 
| 749 | 
            -
                  return false;
         | 
| 750 | 
            -
                });
         | 
| 751 | 
            -
              },
         | 
| 752 | 
            -
              
         | 
| 753 764 | 
             
              create_associated_record_form: function(element, content, options) {
         | 
| 754 765 | 
             
                if (typeof(element) == 'string') element = '#' + element;
         | 
| 755 766 | 
             
                var element = jQuery(element);
         | 
| @@ -953,11 +964,11 @@ var ActiveScaffold = { | |
| 953 964 | 
             
                });
         | 
| 954 965 | 
             
              },
         | 
| 955 966 |  | 
| 956 | 
            -
              draggable_lists: function( | 
| 967 | 
            +
              draggable_lists: function(selector_or_elements, parent) {
         | 
| 957 968 | 
             
                var elements;
         | 
| 958 969 | 
             
                if (!jQuery.fn.draggableLists) return;
         | 
| 959 | 
            -
                if (typeof( | 
| 960 | 
            -
                else elements = jQuery( | 
| 970 | 
            +
                if (typeof(selector_or_elements) == 'string') elements = jQuery('ul' + selector_or_elements, parent);
         | 
| 971 | 
            +
                else elements = jQuery(selector_or_elements);
         | 
| 961 972 | 
             
                elements.draggableLists();
         | 
| 962 973 | 
             
              }
         | 
| 963 974 | 
             
            }
         | 
| @@ -284,6 +284,13 @@ document.observe("dom:loaded", function() { | |
| 284 284 | 
             
                } else value = form_element.getValue();
         | 
| 285 285 | 
             
                ActiveScaffold.update_column(form_element, element.readAttribute('href'), element.hasAttribute('data-update_send_form'), form_element.readAttribute('id'), value);
         | 
| 286 286 | 
             
              });
         | 
| 287 | 
            +
              document.on('click', 'a.visibility-toggle', function(event) {
         | 
| 288 | 
            +
                event.stop();
         | 
| 289 | 
            +
                var link = event.findElement();
         | 
| 290 | 
            +
                var toggable = $(link.readAttribute('data-toggable'));
         | 
| 291 | 
            +
                toggable.toggle();
         | 
| 292 | 
            +
                link.innerHTML = (toggable.style.display == 'none') ? link.readAttribute('data-show') : link.readAttribute('data-hide');
         | 
| 293 | 
            +
              });
         | 
| 287 294 | 
             
              document.on('recordselect:change', 'input.recordselect.update_form', function(event) {
         | 
| 288 295 | 
             
                var element = event.findElement();
         | 
| 289 296 | 
             
                ActiveScaffold.update_column(element, element.readAttribute('data-update_url'), element.hasAttribute('data-update_send_form'), element.readAttribute('id'), element.memo.id);
         | 
| @@ -330,6 +337,27 @@ document.observe("dom:loaded", function() { | |
| 330 337 | 
             
                ActiveScaffold.hide(element.up('.message'));
         | 
| 331 338 | 
             
                event.stop();
         | 
| 332 339 | 
             
              });
         | 
| 340 | 
            +
              
         | 
| 341 | 
            +
              /* setup some elements on page/form load */
         | 
| 342 | 
            +
              ActiveScaffold.load_embedded(document);
         | 
| 343 | 
            +
              ActiveScaffold.enable_js_form_buttons(document);
         | 
| 344 | 
            +
              ActiveScaffold.live_search(document);
         | 
| 345 | 
            +
              ActiveScaffold.auto_paginate(document);
         | 
| 346 | 
            +
              ActiveScaffold.draggable_lists('.draggable-lists', document);
         | 
| 347 | 
            +
              document.on('as:element_updated', function(e) {
         | 
| 348 | 
            +
                var target = event.findElement();
         | 
| 349 | 
            +
                ActiveScaffold.load_embedded(target);
         | 
| 350 | 
            +
                ActiveScaffold.enable_js_form_buttons(target);
         | 
| 351 | 
            +
                ActiveScaffold.live_search(target);
         | 
| 352 | 
            +
                ActiveScaffold.draggable_lists('.draggable-lists', target);
         | 
| 353 | 
            +
              });
         | 
| 354 | 
            +
              document.on('as:action_success', 'a.as_action', function(e, action_link) {
         | 
| 355 | 
            +
                ActiveScaffold.load_embedded(action_link.adapter);
         | 
| 356 | 
            +
                ActiveScaffold.enable_js_form_buttons(action_link.adapter);
         | 
| 357 | 
            +
                ActiveScaffold.live_search(action_link.adapter);
         | 
| 358 | 
            +
                ActiveScaffold.auto_paginate(action_link.adapter);
         | 
| 359 | 
            +
                ActiveScaffold.draggable_lists('.draggable-lists', action_link.adapter);
         | 
| 360 | 
            +
              });
         | 
| 333 361 | 
             
            });
         | 
| 334 362 |  | 
| 335 363 |  | 
| @@ -338,6 +366,38 @@ document.observe("dom:loaded", function() { | |
| 338 366 | 
             
             */
         | 
| 339 367 |  | 
| 340 368 | 
             
            var ActiveScaffold = {
         | 
| 369 | 
            +
              live_search: function(element) {
         | 
| 370 | 
            +
                $$('form.search.live input[type=search]', element).each(function(item) {
         | 
| 371 | 
            +
                  new Form.Element.DelayedObserver(item, 0.5, function(element, value) {
         | 
| 372 | 
            +
                    if (!$(element.id)) return false; // because the element may have been destroyed
         | 
| 373 | 
            +
                    $(element).next().click();
         | 
| 374 | 
            +
                  });
         | 
| 375 | 
            +
                });
         | 
| 376 | 
            +
              },
         | 
| 377 | 
            +
              auto_paginate: function(element) {
         | 
| 378 | 
            +
                var paginate_link = $(element).select('.active-scaffold-pagination.auto-paginate a:first');
         | 
| 379 | 
            +
                if (paginate_link.length) {
         | 
| 380 | 
            +
                  $(element).select('.active-scaffold-pagination.auto-paginate').invoke('hide');
         | 
| 381 | 
            +
                  ActiveScaffold.auto_load_page(paginate_link.readAttribute('href'), {auto_pagination: true});
         | 
| 382 | 
            +
                }
         | 
| 383 | 
            +
              },
         | 
| 384 | 
            +
              auto_load_page: function(href, params) {
         | 
| 385 | 
            +
                new Ajax.Request(href, {
         | 
| 386 | 
            +
                  method: 'get',
         | 
| 387 | 
            +
                  parameters: params,
         | 
| 388 | 
            +
                  asynchronous: true,
         | 
| 389 | 
            +
                  evalScripts: true
         | 
| 390 | 
            +
                });
         | 
| 391 | 
            +
              },
         | 
| 392 | 
            +
              enable_js_form_buttons: function(element) {
         | 
| 393 | 
            +
                $(element).select('.as-js-button').invoke('show');
         | 
| 394 | 
            +
              },
         | 
| 395 | 
            +
              load_embedded: function(element) {
         | 
| 396 | 
            +
                $(element).select('.active-scaffold-component .load-embedded').each(function(item) {
         | 
| 397 | 
            +
                  new Ajax.Updater(item.up('.active-scaffold-component'), item.readAttribute('href'), {method: 'get', evalScripts: true});
         | 
| 398 | 
            +
                });
         | 
| 399 | 
            +
              },
         | 
| 400 | 
            +
              
         | 
| 341 401 | 
             
              records_for: function(tbody_id) {
         | 
| 342 402 | 
             
                var rows = [];
         | 
| 343 403 | 
             
                var child = $(tbody_id).down('.record');
         | 
| @@ -627,21 +687,6 @@ var ActiveScaffold = { | |
| 627 687 | 
             
                span.inplace_edit.enterEditMode();
         | 
| 628 688 | 
             
              },
         | 
| 629 689 |  | 
| 630 | 
            -
              create_visibility_toggle: function(element, options) {
         | 
| 631 | 
            -
                var toggable = $(element);
         | 
| 632 | 
            -
                var toggler = toggable.previous();
         | 
| 633 | 
            -
                var initial_label = (options.default_visible === true) ? options.hide_label : options.show_label;
         | 
| 634 | 
            -
                
         | 
| 635 | 
            -
                toggler.insert(' <a class="visibility-toggle" href="#">' + initial_label + '</a>');
         | 
| 636 | 
            -
                toggler.firstDescendant().observe('click', function(event) {
         | 
| 637 | 
            -
                  var element = event.element();
         | 
| 638 | 
            -
                  event.stop();
         | 
| 639 | 
            -
                  toggable.toggle(); 
         | 
| 640 | 
            -
                  element.innerHTML = (toggable.style.display == 'none') ? options.show_label : options.hide_label;
         | 
| 641 | 
            -
                  return false;
         | 
| 642 | 
            -
                });
         | 
| 643 | 
            -
              },
         | 
| 644 | 
            -
              
         | 
| 645 690 | 
             
              create_associated_record_form: function(element, content, options) {
         | 
| 646 691 | 
             
                var element = $(element);
         | 
| 647 692 | 
             
                if (options.singular == false) {
         | 
| @@ -756,8 +801,13 @@ var ActiveScaffold = { | |
| 756 801 | 
             
                });
         | 
| 757 802 | 
             
              },
         | 
| 758 803 |  | 
| 759 | 
            -
              draggable_lists: function( | 
| 760 | 
            -
                 | 
| 804 | 
            +
              draggable_lists: function(selector_or_elements, parent) {
         | 
| 805 | 
            +
                var elements;
         | 
| 806 | 
            +
                if (typeof(selector_or_elements) == 'string') elements = $(parent).select('ul' + selector_or_elements);
         | 
| 807 | 
            +
                else elements = $A($(selector_or_elements));
         | 
| 808 | 
            +
                elements.each(function(item) {
         | 
| 809 | 
            +
                  new DraggableLists(item);
         | 
| 810 | 
            +
                });
         | 
| 761 811 | 
             
              },
         | 
| 762 812 |  | 
| 763 813 | 
             
              highlight: function(element) {
         | 
| @@ -13,13 +13,16 @@ form_tag url_options, options %> | |
| 13 13 | 
             
                <% end -%>
         | 
| 14 14 | 
             
                <% unless hiddens.empty?  -%>
         | 
| 15 15 | 
             
                  <li class="sub-section">
         | 
| 16 | 
            -
                   | 
| 17 | 
            -
                  < | 
| 16 | 
            +
                  <% further_options_id = sub_section_id(:sub_section => 'further_options') %>
         | 
| 17 | 
            +
                  <h5>
         | 
| 18 | 
            +
                    <%= as_(:optional_attributes) %>
         | 
| 19 | 
            +
                    <%= link_to_visibility_toggle(further_options_id, {:default_visible => false}) %>
         | 
| 20 | 
            +
                  </h5>
         | 
| 21 | 
            +
                  <ol id ="<%= further_options_id %>" class="form" style="display:none;">
         | 
| 18 22 | 
             
                  <% hiddens.each do |column| -%>
         | 
| 19 23 | 
             
                    <li class="form-element"><%= search_attribute(column, @record) %></li>
         | 
| 20 24 | 
             
                  <% end -%>
         | 
| 21 25 | 
             
                  </ol>
         | 
| 22 | 
            -
                  <%= link_to_visibility_toggle(sub_section_id(:sub_section => 'further_options'), {:default_visible => false}) %>
         | 
| 23 26 | 
             
                  </li>
         | 
| 24 27 | 
             
              <% end -%>
         | 
| 25 28 | 
             
              </ol>
         | 
| @@ -12,9 +12,11 @@ | |
| 12 12 | 
             
              <% if authorized %>
         | 
| 13 13 | 
             
                <% subsection_id = sub_section_id(:sub_section => column.label) %>
         | 
| 14 14 | 
             
              <li class="sub-section <%= column_css_class %>">
         | 
| 15 | 
            -
                <h5 | 
| 15 | 
            +
                <h5>
         | 
| 16 | 
            +
                  <%= column.label %>
         | 
| 17 | 
            +
                  <%= link_to_visibility_toggle(subsection_id, {:default_visible => !column.collapsed}) -%>
         | 
| 18 | 
            +
                </h5>
         | 
| 16 19 | 
             
                <%= render :partial => 'form', :locals => { :columns => column, :subsection_id => subsection_id, :form_action => form_action, :scope => scope } %>
         | 
| 17 | 
            -
                <%= link_to_visibility_toggle(subsection_id, {:default_visible => !column.collapsed}) -%>
         | 
| 18 20 | 
             
              </li>
         | 
| 19 21 | 
             
              <% end %>
         | 
| 20 22 | 
             
              <% elsif renders_as == :subform and authorized -%>
         | 
| @@ -10,14 +10,16 @@ disable_required_for_new = @disable_required_for_new | |
| 10 10 | 
             
            @disable_required_for_new = !!show_blank_record unless (column.singular_association? && column.required?)
         | 
| 11 11 | 
             
            subform_div_id = "#{sub_form_id(:association => column.name, :id => parent_record.id || generated_id(parent_record) || 99999999999)}-div" 
         | 
| 12 12 | 
             
            -%>
         | 
| 13 | 
            -
            <h5 | 
| 13 | 
            +
            <h5>
         | 
| 14 | 
            +
              <%= column.label -%>
         | 
| 15 | 
            +
              <%= link_to_visibility_toggle(subform_div_id, {:default_visible => !column.collapsed}) -%>
         | 
| 16 | 
            +
            </h5>
         | 
| 14 17 | 
             
            <div id ="<%= subform_div_id %>" <%= 'style="display: none;"'.html_safe if column.collapsed -%>>
         | 
| 15 18 | 
             
            <%# HACK to be able to delete all associated records %>
         | 
| 16 19 | 
             
              <%= hidden_field_tag "#{active_scaffold_input_options(column, scope, :object => parent_record)[:name]}[0]", '' if column.plural_association? %>
         | 
| 17 20 | 
             
              <%= render :partial => subform_partial_for_column(column), :locals => {:column => column, :parent_record => parent_record, :associated => associated, :show_blank_record => show_blank_record, :scope => scope} %>
         | 
| 18 21 | 
             
              <%= render :partial => 'form_association_footer', :locals => {:parent_record => parent_record, :column => column, :associated => associated, :scope => scope} -%>
         | 
| 19 22 | 
             
            </div>
         | 
| 20 | 
            -
            <%= link_to_visibility_toggle(subform_div_id, {:default_visible => !column.collapsed}) -%>
         | 
| 21 23 | 
             
            <%
         | 
| 22 24 | 
             
              @record = parent_record # restore @record, some partials can change it TODO remove when changing @record is removed
         | 
| 23 25 | 
             
              @disable_required_for_new = disable_required_for_new
         | 
| @@ -28,8 +28,7 @@ add_new_url = params_for(:controller => controller_path, :action => 'edit_associ | |
| 28 28 | 
             
                     add_class = 'as_replace_with_new'
         | 
| 29 29 | 
             
                   end
         | 
| 30 30 | 
             
                   create_another_id = "#{sub_form_id(:association => column.name, :id => parent_record.id || temporary_id || 99999999999)}-create-another" %>
         | 
| 31 | 
            -
                <%= link_to add_label, add_new_url, :id => create_another_id, :remote => true, :class => add_class, :style=> "display: none;" %>
         | 
| 32 | 
            -
                <%= javascript_tag("ActiveScaffold.show('#{create_another_id}');") %>
         | 
| 31 | 
            +
                <%= link_to add_label, add_new_url, :id => create_another_id, :remote => true, :class => "as-js-button #{add_class}", :style=> "display: none;" %>
         | 
| 33 32 | 
             
                <% end -%>
         | 
| 34 33 |  | 
| 35 34 | 
             
                <%= '|' if show_add_new and show_add_existing %>
         | 
| @@ -42,8 +41,7 @@ add_new_url = params_for(:controller => controller_path, :action => 'edit_associ | |
| 42 41 | 
             
                       add_existing_id = "#{sub_form_id(:association => column.name, :id => parent_record.id || temporary_id || 99999999999)}-add-existing"
         | 
| 43 42 | 
             
                       add_existing_label = column.plural_association? ? :add_existing : :replace_existing %>
         | 
| 44 43 | 
             
                    <%= select_tag 'associated_id', '<option value="">'.html_safe + as_(:_select_) + '</option>'.html_safe + select_options %>
         | 
| 45 | 
            -
                    <%= link_to as_(add_existing_label), edit_associated_url, :id => add_existing_id, :remote => true, :class=> "as_#{add_existing_label}", :style => "display: none;" %>
         | 
| 46 | 
            -
                    <%= javascript_tag("ActiveScaffold.show('#{add_existing_id}');") %>
         | 
| 44 | 
            +
                    <%= link_to as_(add_existing_label), edit_associated_url, :id => add_existing_id, :remote => true, :class=> "subform-button as_#{add_existing_label}", :style => "display: none;" %>
         | 
| 47 45 | 
             
                  <% end -%>
         | 
| 48 46 | 
             
                <% end -%>
         | 
| 49 47 | 
             
              </div>
         | 
| @@ -12,17 +12,3 @@ options = {:id => element_form_id(:action => 'search'), | |
| 12 12 | 
             
              <%= link_to as_(:reset), url_for(url_options.merge(:search => '')), :class => 'as_cancel reset', :remote => true, :data => {:refresh => true} %>
         | 
| 13 13 | 
             
              <%= loading_indicator_tag(:action => :search) %>
         | 
| 14 14 | 
             
            </form>
         | 
| 15 | 
            -
             | 
| 16 | 
            -
            <% if ActiveScaffold.js_framework == :prototype %>
         | 
| 17 | 
            -
            <script type="text/javascript">
         | 
| 18 | 
            -
            //<![CDATA[
         | 
| 19 | 
            -
              new TextFieldWithExample('<%= search_input_id %>', '<%= as_(live_search ? :live_search : :search_terms) %>', {focus: true});
         | 
| 20 | 
            -
            <% if live_search -%>
         | 
| 21 | 
            -
              new Form.Element.DelayedObserver('<%= search_input_id %>', 0.5, function(element, value) {
         | 
| 22 | 
            -
                if (!$(element.id)) return false; // because the element may have been destroyed
         | 
| 23 | 
            -
                $(element).next().click();
         | 
| 24 | 
            -
              });
         | 
| 25 | 
            -
            <% end -%>
         | 
| 26 | 
            -
            //]]>
         | 
| 27 | 
            -
            </script>
         | 
| 28 | 
            -
            <% end -%>
         | 
| @@ -41,7 +41,7 @@ module ActiveScaffold::Config | |
| 41 41 | 
             
                def columns
         | 
| 42 42 | 
             
                  # we want to delay initializing to the @core.columns set for as long as possible. Too soon and .search_sql will not be available to .searchable?
         | 
| 43 43 | 
             
                  unless @columns
         | 
| 44 | 
            -
                    self.columns = @core.columns.collect{|c| c.name if @core.columns._inheritable.include?(c.name) and c.searchable? and c.text?}.compact
         | 
| 44 | 
            +
                    self.columns = @core.columns.collect{|c| c.name if @core.columns._inheritable.include?(c.name) and c.searchable? and c.association.nil? and c.text?}.compact
         | 
| 45 45 | 
             
                  end
         | 
| 46 46 | 
             
                  @columns
         | 
| 47 47 | 
             
                end
         | 
| @@ -75,12 +75,7 @@ module ActionView::Helpers #:nodoc: | |
| 75 75 | 
             
                        # might be a namespaced controller (e.g., 'admin/admins')
         | 
| 76 76 | 
             
                        model = remote_controller.to_s.sub(/.*\//, '').singularize
         | 
| 77 77 | 
             
                        content_tag(:div, :class => 'active-scaffold-header') do
         | 
| 78 | 
            -
                          content_tag :h2, link_to(args.first[:label] || active_scaffold_config_for(model).list.label, url, :remote => true)
         | 
| 79 | 
            -
                        end <<
         | 
| 80 | 
            -
                        if ActiveScaffold.js_framework == :prototype
         | 
| 81 | 
            -
                          javascript_tag("new Ajax.Updater('#{id}', '#{url}', {method: 'get', evalScripts: true});")
         | 
| 82 | 
            -
                        elsif ActiveScaffold.js_framework == :jquery
         | 
| 83 | 
            -
                          javascript_tag("jQuery('##{id}').load('#{url}', function() { jQuery(this).trigger('as:element_updated'); });")
         | 
| 78 | 
            +
                          content_tag :h2, link_to(args.first[:label] || active_scaffold_config_for(model).list.label, url, :remote => true, :class => 'load-embedded')
         | 
| 84 79 | 
             
                        end
         | 
| 85 80 | 
             
                      end
         | 
| 86 81 | 
             
                    end
         | 
| @@ -80,7 +80,7 @@ module ActiveScaffold | |
| 80 80 | 
             
                    options[:default_visible] = true if options[:default_visible].nil?
         | 
| 81 81 | 
             
                    options[:hide_label] ||= as_(:hide) 
         | 
| 82 82 | 
             
                    options[:show_label] ||= as_(:show_block)
         | 
| 83 | 
            -
                     | 
| 83 | 
            +
                    link_to options[:default_visible] ? options[:hide_label] : options[:show_label], '#', :data => {:show => options[:show_label], :hide => options[:hide_label], :toggable => id}, :style => 'display: none;', :class => 'as-js-button visibility-toggle'
         | 
| 84 84 | 
             
                  end
         | 
| 85 85 |  | 
| 86 86 | 
             
                  def skip_action_link?(link, *args)
         | 
    
        metadata
    CHANGED
    
    | @@ -1,14 +1,14 @@ | |
| 1 1 | 
             
            --- !ruby/object:Gem::Specification
         | 
| 2 2 | 
             
            name: active_scaffold
         | 
| 3 3 | 
             
            version: !ruby/object:Gem::Version
         | 
| 4 | 
            -
              version: 3.4. | 
| 4 | 
            +
              version: 3.4.3
         | 
| 5 5 | 
             
            platform: ruby
         | 
| 6 6 | 
             
            authors:
         | 
| 7 7 | 
             
            - Many, see README
         | 
| 8 8 | 
             
            autorequire: 
         | 
| 9 9 | 
             
            bindir: bin
         | 
| 10 10 | 
             
            cert_chain: []
         | 
| 11 | 
            -
            date: 2014-08- | 
| 11 | 
            +
            date: 2014-08-29 00:00:00.000000000 Z
         | 
| 12 12 | 
             
            dependencies:
         | 
| 13 13 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 14 14 | 
             
              name: shoulda
         |