delete.php 1.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. <?php
  2. /**
  3. * Delete a group
  4. */
  5. $guid = (int) get_input('guid');
  6. if (!$guid) {
  7. // backward compatible
  8. elgg_deprecated_notice("Use 'guid' for group delete action", 1.8);
  9. $guid = (int)get_input('group_guid');
  10. }
  11. $entity = get_entity($guid);
  12. if (!$entity->canEdit()) {
  13. register_error(elgg_echo('group:notdeleted'));
  14. forward(REFERER);
  15. }
  16. if (($entity) && ($entity instanceof ElggGroup)) {
  17. // delete group icons
  18. $owner_guid = $entity->owner_guid;
  19. $prefix = "groups/" . $entity->guid;
  20. $imagenames = elgg_get_config('icon_sizes');
  21. $img = new ElggFile();
  22. $img->owner_guid = $owner_guid;
  23. foreach ($imagenames as $name => $value) {
  24. $img->setFilename("{$prefix}{$name}.jpg");
  25. $img->delete();
  26. }
  27. // delete original icon
  28. $img->setFilename("{$prefix}.jpg");
  29. $img->delete();
  30. // delete group
  31. if ($entity->delete()) {
  32. system_message(elgg_echo('group:deleted'));
  33. } else {
  34. register_error(elgg_echo('group:notdeleted'));
  35. }
  36. } else {
  37. register_error(elgg_echo('group:notdeleted'));
  38. }
  39. $url_name = elgg_get_logged_in_user_entity()->username;
  40. forward(elgg_get_site_url() . "groups/member/{$url_name}");