diff options
| author | Étienne Loks <etienne.loks@iggdrasil.net> | 2016-05-22 17:02:11 +0200 | 
|---|---|---|
| committer | Étienne Loks <etienne.loks@iggdrasil.net> | 2016-05-22 17:02:11 +0200 | 
| commit | 3edb78f2806d1ec790b751ef6ee4b6fb59abb86a (patch) | |
| tree | 2fc4bd28fb7b1a7edca5a138cf929adcacb6a09d /ishtar_common | |
| parent | 29e3e7daa64e573b7481db4c0c15f1c2bc8730d6 (diff) | |
| download | Ishtar-3edb78f2806d1ec790b751ef6ee4b6fb59abb86a.tar.bz2 Ishtar-3edb78f2806d1ec790b751ef6ee4b6fb59abb86a.zip | |
Basket management: select multiple - select all
Diffstat (limited to 'ishtar_common')
| -rw-r--r-- | ishtar_common/templates/blocks/JQueryJqGrid.html | 1 | ||||
| -rw-r--r-- | ishtar_common/templates/ishtar/manage_basket.html | 26 | ||||
| -rw-r--r-- | ishtar_common/widgets.py | 5 | 
3 files changed, 20 insertions, 12 deletions
| diff --git a/ishtar_common/templates/blocks/JQueryJqGrid.html b/ishtar_common/templates/blocks/JQueryJqGrid.html index 063a3c1da..c6a15243a 100644 --- a/ishtar_common/templates/blocks/JQueryJqGrid.html +++ b/ishtar_common/templates/blocks/JQueryJqGrid.html @@ -90,6 +90,7 @@ jQuery(document).ready(function(){      width: null,      shrinkToFit: false,      rowNum:20, +    {% if multiple_select %}multiselect: true,{% endif %}      jsonReader : {repeatitems: false},      loadError: function (jqXHR, textStatus, errorThrown) {          alert("{% trans "An error as occured during search. Check your query fields." %}"); diff --git a/ishtar_common/templates/ishtar/manage_basket.html b/ishtar_common/templates/ishtar/manage_basket.html index 44c3a2536..6332b326e 100644 --- a/ishtar_common/templates/ishtar/manage_basket.html +++ b/ishtar_common/templates/ishtar/manage_basket.html @@ -4,6 +4,7 @@  <h2>{{page_name}}{% trans ":"%} {{basket}}</h2>  <form enctype="multipart/form-data" action="." method="post">{% csrf_token %}  <div class='form'> +<p class='alert'>{% trans 'Checking "Select all" only select the current page.' %}</p>  {{form}}  <button id='add_to' onclick='return false'>{% trans "Add" %}</button>  <h3>{% trans "Basket content" %}</h3> @@ -18,17 +19,20 @@ function load_list(data){  }  $('#add_to').click(function(){ -    selected_item = jQuery("#grid_pk").getGridParam('selrow'); -    if(!selected_item) return false; -    $.ajax({ -        type: "POST", -        url: '{{add_url}}', -        data: { -            basket_id: {{basket.pk}}, -            item_id: selected_item -        }, -        success: load_list -    }); +    var selected_items = jQuery("#grid_pk").getGridParam('selarrrow'); +    if(!selected_items) return false; +    for (i = 0, n = selected_items.length; i < n; i++) { +        var selected_item = selected_items[i]; +        $.ajax({ +            type: "POST", +            url: '{{add_url}}', +            data: { +                basket_id: {{basket.pk}}, +                item_id: selected_item +            }, +            success: load_list +        }); +    }      return false;  });  jQuery(document).ready(function(){ diff --git a/ishtar_common/widgets.py b/ishtar_common/widgets.py index b8b104a61..6d9600d0c 100644 --- a/ishtar_common/widgets.py +++ b/ishtar_common/widgets.py @@ -513,13 +513,15 @@ class JQueryJqGrid(forms.RadioSelect):      def __init__(self, source, form, associated_model, attrs={},                   table_cols='TABLE_COLS', multiple=False, multiple_cols=[2], -                 new=False, new_message="", source_full=None): +                 new=False, new_message="", source_full=None, +                 multiple_select=False):          self.source = source          self.form = form          self.attrs = attrs          self.associated_model = associated_model          self.table_cols = table_cols          self.multiple = multiple +        self.multiple_select = multiple_select          self.multiple_cols = multiple_cols          self.new, self.new_message = new, new_message          self.source_full = source_full @@ -604,6 +606,7 @@ class JQueryJqGrid(forms.RadioSelect):                      'remove': unicode(_(u"Remove")),                      'sname': name.replace('-', ''),                      'multiple': self.multiple, +                    'multiple_select': self.multiple_select,                      'multi_cols': ",".join((u'"%d"' % col                                             for col in self.multiple_cols))})          t = loader.get_template('blocks/JQueryJqGrid.html') | 
