diff options
author | brettp <brettp@36083f99-b078-4883-b0ff-0f9b5a30f544> | 2010-03-04 16:36:48 +0000 |
---|---|---|
committer | brettp <brettp@36083f99-b078-4883-b0ff-0f9b5a30f544> | 2010-03-04 16:36:48 +0000 |
commit | 88c3d54f0a6ceb0b539af4e922157b101b945542 (patch) | |
tree | 476b22df83c386c930b303a12d8a2a79e235bb7d /mod/profile/actions/cropicon.php | |
parent | 21b799f2e9c3f307497e3f8c10fb547036380d82 (diff) | |
download | elgg-88c3d54f0a6ceb0b539af4e922157b101b945542.tar.gz elgg-88c3d54f0a6ceb0b539af4e922157b101b945542.tar.bz2 |
Merged interface changes to profile in.
git-svn-id: http://code.elgg.org/elgg/trunk@5284 36083f99-b078-4883-b0ff-0f9b5a30f544
Diffstat (limited to 'mod/profile/actions/cropicon.php')
-rw-r--r-- | mod/profile/actions/cropicon.php | 134 |
1 files changed, 64 insertions, 70 deletions
diff --git a/mod/profile/actions/cropicon.php b/mod/profile/actions/cropicon.php index f86799ccf..70b8e9288 100644 --- a/mod/profile/actions/cropicon.php +++ b/mod/profile/actions/cropicon.php @@ -1,80 +1,74 @@ <?php +/** + * Elgg profile plugin upload new user icon action + * + * @package ElggProfile + * @license http://www.gnu.org/licenses/old-licenses/gpl-2.0.html GNU Public License version 2 + * @author Curverider Ltd <info@elgg.com> + * @copyright Curverider Ltd 2008-2010 + * @link http://elgg.com/ + */ - /** - * Elgg profile plugin upload new user icon action - * - * @package ElggProfile - * @license http://www.gnu.org/licenses/old-licenses/gpl-2.0.html GNU Public License version 2 - * @author Curverider Ltd <info@elgg.com> - * @copyright Curverider Ltd 2008-2010 - * @link http://elgg.com/ - */ +gatekeeper(); - gatekeeper(); +$profile_username = get_input('username'); +$profile_owner = get_user_by_username($profile_username); - $x1 = (int) get_input('x_1',0); - $y1 = (int) get_input('y_1',0); - $x2 = (int) get_input('x_2',0); - $y2 = (int) get_input('y_2',0); +if (!$profile_owner || !($profile_owner instanceof ElggUser) || !$profile_owner->canEdit()) { + register_error(elgg_echo('profile:icon:fail')); + forward($_SERVER['HTTP_REFERER']); +} + +$x1 = (int) get_input('x_1',0); +$y1 = (int) get_input('y_1',0); +$x2 = (int) get_input('x_2',0); +$y2 = (int) get_input('y_2',0); + +$filehandler = new ElggFile(); +$filehandler->owner_guid = $profile_owner->getGUID(); +$filehandler->setFilename("profile/" . $profile_owner->username . "master" . ".jpg"); +$filename = $filehandler->getFilenameOnFilestore(); - // username is set in form which ensures the page owner is set - $user = page_owner_entity(); +$topbar = get_resized_image_from_existing_file($filename, 16, 16, true, $x1, $y1, $x2, $y2); +$tiny = get_resized_image_from_existing_file($filename, 25, 25, true, $x1, $y1, $x2, $y2); +$small = get_resized_image_from_existing_file($filename, 40, 40, true, $x1, $y1, $x2, $y2); +$medium = get_resized_image_from_existing_file($filename, 100, 100, true, $x1, $y1, $x2, $y2); - if (!$user || !$user->canEdit()) { - register_error(elgg_echo("profile:icon:noaccess")); - forward(); - } - +if ($small !== FALSE && $medium !== FALSE && $tiny !== FALSE) { $filehandler = new ElggFile(); - $filehandler->owner_guid = $user->getGUID(); - $filehandler->setFilename("profile/" . $user->username . "master" . ".jpg"); - $filename = $filehandler->getFilenameOnFilestore(); - - $topbar = get_resized_image_from_existing_file($filename,16,16, true, $x1, $y1, $x2, $y2); - $tiny = get_resized_image_from_existing_file($filename,25,25, true, $x1, $y1, $x2, $y2); - $small = get_resized_image_from_existing_file($filename,40,40, true, $x1, $y1, $x2, $y2); - $medium = get_resized_image_from_existing_file($filename,100,100, true, $x1, $y1, $x2, $y2); + $filehandler->owner_guid = $profile_owner->getGUID(); + $filehandler->setFilename("profile/" . $profile_owner->username . "medium.jpg"); + $filehandler->open("write"); + $filehandler->write($medium); + $filehandler->close(); + $filehandler->setFilename("profile/" . $profile_owner->username . "small.jpg"); + $filehandler->open("write"); + $filehandler->write($small); + $filehandler->close(); + $filehandler->setFilename("profile/" . $profile_owner->username . "tiny.jpg"); + $filehandler->open("write"); + $filehandler->write($tiny); + $filehandler->close(); + $filehandler->setFilename("profile/" . $profile_owner->username . "topbar.jpg"); + $filehandler->open("write"); + $filehandler->write($topbar); + $filehandler->close(); + + $profile_owner->x1 = $x1; + $profile_owner->x2 = $x2; + $profile_owner->y1 = $y1; + $profile_owner->y2 = $y2; - if ($small !== false - && $medium !== false - && $tiny !== false) { - - $filehandler = new ElggFile(); - $filehandler->owner_guid = $user->getGUID(); - $filehandler->setFilename("profile/" . $user->username . "medium.jpg"); - $filehandler->open("write"); - $filehandler->write($medium); - $filehandler->close(); - $filehandler->setFilename("profile/" . $user->username . "small.jpg"); - $filehandler->open("write"); - $filehandler->write($small); - $filehandler->close(); - $filehandler->setFilename("profile/" . $user->username . "tiny.jpg"); - $filehandler->open("write"); - $filehandler->write($tiny); - $filehandler->close(); - $filehandler->setFilename("profile/" . $user->username . "topbar.jpg"); - $filehandler->open("write"); - $filehandler->write($topbar); - $filehandler->close(); - - $user->x1 = $x1; - $user->x2 = $x2; - $user->y1 = $y1; - $user->y2 = $y2; - - $user->icontime = time(); - - system_message(elgg_echo("profile:icon:uploaded")); - - } else { - register_error(elgg_echo("profile:icon:notfound")); - } - - //forward the user back to the upload page to crop - - $url = $vars['url'] . "pg/profile/{$user->username}/editicon/"; + $profile_owner->icontime = time(); + + system_message(elgg_echo("profile:icon:uploaded")); +} else { + register_error(elgg_echo("profile:icon:notfound")); +} - if (isloggedin()) forward($url); +//forward the user back to the upload page to crop +$url = "{$vars['url']}pg/profile/{$profile_owner->username}/edit/icon"; -?> +if (isloggedin()) { + forward($url); +} |