← Back to team overview

mahara-contributors team mailing list archive

[Bug 1359109] Re: Fail deleting long name groups

 

** Changed in: mahara
       Status: In Progress => Fix Committed

-- 
You received this bug notification because you are a member of Mahara
Contributors, which is subscribed to Mahara.
Matching subscriptions: Subscription for all Mahara Contributors -- please ask on #mahara-dev or mahara.org forum before editing or unsubscribing it!
https://bugs.launchpad.net/bugs/1359109

Title:
  Fail deleting long name groups

Status in Mahara ePortfolio:
  Fix Committed

Bug description:
  When you delete a group, it concatenates '.deleted.'.time() that is
  about 19 characters. Hence, if your group name is longer than 108
  characters it will throw a DB exception for exceeding the 128
  characters field for the group name. To avoid this, I've added the
  following code to function group_delete($groupid, $shortname=null,
  $institution=null, $notifymembers=true):

  //Daniel Parejo
      $delete_name = $group->name;
      if (strlen($delete_name) > 100) {
          $delete_name = substr($delete_name, 0, 100) . '(...)';
      }
  //End added code

      update_record('group',
          array(
              'deleted' => 1,
              'name' => $delete_name . '.deleted.' . time(), //modified code
              'shortname' => null,
              'institution' => null,
              'category' => null,
              'urlid' => null,
          ),
          array(
              'id' => $group->id,
          )
      );
      db_commit();

  This solution is not perfect since it will fail if two groups that are
  not different in their 101 first characters are tried to be removed in
  the same time instant. Still, way better than before, though I think a
  more solid solution should be implemented.

To manage notifications about this bug go to:
https://bugs.launchpad.net/mahara/+bug/1359109/+subscriptions


References