view media/js/messages/box.js @ 235:d302c498560e

Fix problem when deleting multiple topics from a forum in bulk. We getting a list of topics from the database, then deleting each topic. But after you delete a topic, the forum.last_post on the remaining non-deleted topics can be stale. This was causing a weird DoesNotExist. Now just get the topics one at a time from the database.
author Brian Neal <bgneal@gmail.com>
date Thu, 26 Aug 2010 04:01:58 +0000
parents dbd703f7d63a
children
line wrap: on
line source
function messages_master_click()
{
   var state = document.getElementById('master_select').checked
   for (i = 0; i < document.messages_box_form.length; ++i)
   {
      if (document.messages_box_form.elements[i].type == 'checkbox')
      {
         document.messages_box_form.elements[i].checked = state;
      }
   }
}

function messages_set_master()
{
   var count = 0;
   var numChkBoxes = 0;
   for (i = 0; i < document.messages_box_form.length; ++i)
   {
      if (document.messages_box_form.elements[i].type == 'checkbox' &&
          document.messages_box_form.elements[i].id != 'master_select')
      {
         ++numChkBoxes;
         if (document.messages_box_form.elements[i].checked)
         {
            ++count;
         }
      }
   }
   document.getElementById('master_select').checked = count == numChkBoxes;
}

function messages_count_selected()
{
   var count = 0;
   for (i = 0; i < document.messages_box_form.length; ++i)
   {
      if (document.messages_box_form.elements[i].type == 'checkbox' &&
          document.messages_box_form.elements[i].checked &&
          document.messages_box_form.elements[i].id != 'master_select')
      {
         ++count;
      }
   }
   return count;
}

function messages_confirm_delete()
{
   var count = messages_count_selected();
   if (count == 0)
   {
      alert("No messages selected.");
      return false;
   }
   return confirm('Really delete selected messages?');
}

function messages_confirm_undelete()
{
   var count = messages_count_selected();
   if (count == 0)
   {
      alert("No messages selected.");
      return false;
   }
   return confirm('Really undelete selected messages?');
}