              "text": text,
              "sortable": True,
              "ascending": order_type == "asc",
              "sort_pos": sort_pos,
              "url": cl.get_query_string({ORDER_VAR: o_list}),
              "class_attrib": mark_safe(th_classes and ' class="%s"' % ' '.join(th_classes) or '')
          }
  
  def _boolean_icon(field_val):
      BOOLEAN_MAPPING = {True: 'yes', False: 'no', None: 'unknown'}
 
</s> remove         o_list = '.'.join(o_list)
 </s> add  </s> remove         o_list = []
 </s> add         o_list_primary = [] # URL for making this field the primary sort
        o_list_remove  = [] # URL for removing this field from sort
        o_list_toggle  = [] # URL for toggling order type for this field </s> remove     padding-right: 10px;
 </s> add }

#sorting-popup-div table {
    border-right: 0px;
    border-left: 0px;
}

#sorting-popup-div .reset {
    text-align: center;
}

#sorting-popup-div .cancel {
    font-size: 10px;
    background: #e1e1e1 url(../img/admin/nav-bg.gif) 0 50% repeat-x;
    border-top: 1px solid #ddd;
    text-align: center;
}

#sorting-popup-div .cancel a {
    width: 100%;
    display: block; </s> remove             o_list.insert(0, make_qs_param(new_order_type, i))
 </s> add             o_list_primary.insert(0, make_qs_param(new_order_type, i))
            "url_primary": cl.get_query_string({ORDER_VAR: '.'.join(o_list_primary)}),
            "url_remove": cl.get_query_string({ORDER_VAR: '.'.join(o_list_remove)}),
            "url_toggle": cl.get_query_string({ORDER_VAR: '.'.join(o_list_toggle)}),
              "text": text,
              "sortable": True,
              "ascending": order_type == "asc",
              "sort_pos": sort_pos,
            "url_primary": cl.get_query_string({ORDER_VAR: '.'.join(o_list_primary)}),
            "url_remove": cl.get_query_string({ORDER_VAR: '.'.join(o_list_remove)}),
            "url_toggle": cl.get_query_string({ORDER_VAR: '.'.join(o_list_toggle)}),
              "class_attrib": mark_safe(th_classes and ' class="%s"' % ' '.join(th_classes) or '')
          }
  
  def _boolean_icon(field_val):
      BOOLEAN_MAPPING = {True: 'yes', False: 'no', None: 'unknown'}
keep keep keep keep replace keep keep keep keep keep
 Improved UI for advanced sorting controls.

Now allows individual fields to be removed/toggled.

Refs #11868

git-svn-id: http://code.djangoproject.com/svn/django/trunk@16320 bcc190cf-cafb-0310-a4f2-bffc1f526a37 
django/contrib/admin/templatetags/admin_list.py