summaryrefslogtreecommitdiff
path: root/app
diff options
context:
space:
mode:
authorFrederic Guillot <fred@kanboard.net>2016-03-26 17:25:54 -0400
committerFrederic Guillot <fred@kanboard.net>2016-03-26 17:25:54 -0400
commit4ca716ec47863f3eef6c851de7a4f37650f8ea6e (patch)
treeaf7ca983e3cec6300c1689bd76eb99e37fc2f799 /app
parent820c929ab38273c80d0930e2e6140dd7676ba4df (diff)
Move avatar actions to controller AvatarFile
Diffstat (limited to 'app')
-rw-r--r--app/Controller/AvatarFile.php39
-rw-r--r--app/Controller/User.php37
-rw-r--r--app/Model/File.php1
-rw-r--r--app/Template/avatar_file/show.php (renamed from app/Template/user/avatar.php)4
-rw-r--r--app/Template/user/sidebar.php4
-rw-r--r--app/User/Avatar/AvatarFileProvider.php2
6 files changed, 43 insertions, 44 deletions
diff --git a/app/Controller/AvatarFile.php b/app/Controller/AvatarFile.php
index f8298e16..a47cca66 100644
--- a/app/Controller/AvatarFile.php
+++ b/app/Controller/AvatarFile.php
@@ -14,10 +14,47 @@ use Kanboard\Core\Thumbnail;
class AvatarFile extends Base
{
/**
- * Show Avatar image and send aggressive caching headers
+ * Display avatar page
*/
public function show()
{
+ $user = $this->getUser();
+
+ $this->response->html($this->helper->layout->user('avatar_file/show', array(
+ 'user' => $user,
+ )));
+ }
+
+ /**
+ * Upload Avatar
+ */
+ public function upload()
+ {
+ $user = $this->getUser();
+
+ if (! $this->avatarFile->uploadFile($user['id'], $this->request->getFileInfo('avatar'))) {
+ $this->flash->failure(t('Unable to upload the file.'));
+ }
+
+ $this->response->redirect($this->helper->url->to('AvatarFile', 'show', array('user_id' => $user['id'])));
+ }
+
+ /**
+ * Remove Avatar image
+ */
+ public function remove()
+ {
+ $this->checkCSRFParam();
+ $user = $this->getUser();
+ $this->avatarFile->remove($user['id']);
+ $this->response->redirect($this->helper->url->to('AvatarFile', 'show', array('user_id' => $user['id'])));
+ }
+
+ /**
+ * Show Avatar image (public)
+ */
+ public function image()
+ {
$user_id = $this->request->getIntegerParam('user_id');
$size = $this->request->getStringParam('size', 48);
$filename = $this->avatarFile->getFilename($user_id);
diff --git a/app/Controller/User.php b/app/Controller/User.php
index 8c02ef7f..f7d7d2e0 100644
--- a/app/Controller/User.php
+++ b/app/Controller/User.php
@@ -405,41 +405,4 @@ class User extends Base
'user' => $user,
)));
}
-
- /**
- * Display avatar page
- */
- public function avatar()
- {
- $user = $this->getUser();
-
- $this->response->html($this->helper->layout->user('user/avatar', array(
- 'user' => $user,
- )));
- }
-
- /**
- * Upload Avatar
- */
- public function uploadAvatar()
- {
- $user = $this->getUser();
-
- if (! $this->avatarFile->uploadFile($user['id'], $this->request->getFileInfo('avatar'))) {
- $this->flash->failure(t('Unable to upload the file.'));
- }
-
- $this->response->redirect($this->helper->url->to('user', 'avatar', array('user_id' => $user['id'])));
- }
-
- /**
- * Remove Avatar image
- */
- public function removeAvatar()
- {
- $this->checkCSRFParam();
- $user = $this->getUser();
- $this->avatarFile->remove($user['id']);
- $this->response->redirect($this->helper->url->to('user', 'avatar', array('user_id' => $user['id'])));
- }
}
diff --git a/app/Model/File.php b/app/Model/File.php
index 5e77060c..e383235c 100644
--- a/app/Model/File.php
+++ b/app/Model/File.php
@@ -5,7 +5,6 @@ namespace Kanboard\Model;
use Exception;
use Kanboard\Core\Thumbnail;
use Kanboard\Event\FileEvent;
-use Kanboard\Core\Tool;
use Kanboard\Core\ObjectStorage\ObjectStorageException;
/**
diff --git a/app/Template/user/avatar.php b/app/Template/avatar_file/show.php
index c285f44d..266a2ccb 100644
--- a/app/Template/user/avatar.php
+++ b/app/Template/avatar_file/show.php
@@ -4,14 +4,14 @@
<?= $this->avatar->render($user['id'], $user['username'], $user['name'], $user['email'], $user['avatar_path'], '') ?>
-<form method="post" enctype="multipart/form-data" action="<?= $this->url->href('user', 'uploadAvatar', array('user_id' => $user['id'])) ?>">
+<form method="post" enctype="multipart/form-data" action="<?= $this->url->href('AvatarFile', 'upload', array('user_id' => $user['id'])) ?>">
<?= $this->form->csrf() ?>
<?= $this->form->label(t('Upload my avatar image'), 'avatar') ?>
<?= $this->form->file('avatar') ?>
<div class="form-actions">
<?php if (! empty($user['avatar_path'])): ?>
- <?= $this->url->link(t('Remove my image'), 'User', 'removeAvatar', array('user_id' => $user['id']), true, 'btn btn-red') ?>
+ <?= $this->url->link(t('Remove my image'), 'AvatarFile', 'remove', array('user_id' => $user['id']), true, 'btn btn-red') ?>
<?php endif ?>
<button type="submit" class="btn btn-blue"><?= t('Save') ?></button>
<?= t('or') ?>
diff --git a/app/Template/user/sidebar.php b/app/Template/user/sidebar.php
index ecadc60d..5ea2e355 100644
--- a/app/Template/user/sidebar.php
+++ b/app/Template/user/sidebar.php
@@ -37,8 +37,8 @@
<li <?= $this->app->checkMenuSelection('user', 'edit') ?>>
<?= $this->url->link(t('Edit profile'), 'user', 'edit', array('user_id' => $user['id'])) ?>
</li>
- <li <?= $this->app->checkMenuSelection('user', 'avatar') ?>>
- <?= $this->url->link(t('Avatar'), 'user', 'avatar', array('user_id' => $user['id'])) ?>
+ <li <?= $this->app->checkMenuSelection('AvatarFile') ?>>
+ <?= $this->url->link(t('Avatar'), 'AvatarFile', 'show', array('user_id' => $user['id'])) ?>
</li>
<?php endif ?>
diff --git a/app/User/Avatar/AvatarFileProvider.php b/app/User/Avatar/AvatarFileProvider.php
index 87a42c07..eea565f0 100644
--- a/app/User/Avatar/AvatarFileProvider.php
+++ b/app/User/Avatar/AvatarFileProvider.php
@@ -23,7 +23,7 @@ class AvatarFileProvider extends Base implements AvatarProviderInterface
*/
public function render(array $user, $size)
{
- $url = $this->helper->url->href('AvatarFile', 'show', array('user_id' => $user['id'], 'size' => $size));
+ $url = $this->helper->url->href('AvatarFile', 'image', array('user_id' => $user['id'], 'size' => $size));
$title = $this->helper->text->e($user['name'] ?: $user['username']);
return '<img src="' . $url . '" alt="' . $title . '" title="' . $title . '">';
}