Now we can delete a group logo.

This commit is contained in:
Akio Nishimura 2016-01-21 08:10:35 +09:00
parent c1655c2c0f
commit d13454fb84

View File

@ -211,6 +211,10 @@ class GrouplogoAction extends GroupAction
'height' => AVATAR_PROFILE_SIZE, 'height' => AVATAR_PROFILE_SIZE,
'alt' => $this->group->nickname)); 'alt' => $this->group->nickname));
$this->elementEnd('div'); $this->elementEnd('div');
if (!empty($this->group->homepage_logo)) {
// TRANS: Button on group logo upload page to delete current group logo.
$this->submit('delete', _('Delete'));
}
$this->elementEnd('li'); $this->elementEnd('li');
} }
@ -315,6 +319,8 @@ class GrouplogoAction extends GroupAction
$this->uploadLogo(); $this->uploadLogo();
} else if ($this->arg('crop')) { } else if ($this->arg('crop')) {
$this->cropLogo(); $this->cropLogo();
} else if ($this->arg('delete')) {
$this->deleteLogo();
} else { } else {
// TRANS: Form validation error message when an unsupported argument is used. // TRANS: Form validation error message when an unsupported argument is used.
$this->showForm(_('Unexpected form submission.')); $this->showForm(_('Unexpected form submission.'));
@ -409,6 +415,29 @@ class GrouplogoAction extends GroupAction
} }
} }
/**
* Get rid of the current group logo.
*
* @return void
*/
function deleteLogo()
{
$orig = clone($this->group);
Avatar::deleteFromProfile($this->group->getProfile());
@unlink(Avatar::path(basename($this->group->original_logo)));
@unlink(Avatar::path(basename($this->group->homepage_logo)));
@unlink(Avatar::path(basename($this->group->stream_logo)));
@unlink(Avatar::path(basename($this->group->mini_logo)));
$this->group->original_logo=User_group::defaultLogo(AVATAR_PROFILE_SIZE);
$this->group->homepage_logo=User_group::defaultLogo(AVATAR_PROFILE_SIZE);
$this->group->stream_logo=User_group::defaultLogo(AVATAR_STREAM_SIZE);
$this->group->mini_logo=User_group::defaultLogo(AVATAR_MINI_SIZE);
$this->group->update($orig);
// TRANS: Success message for deleting the group logo.
$this->showForm(_('Logo deleted.'));
}
function showPageNotice() function showPageNotice()
{ {
if ($this->msg) { if ($this->msg) {