diff options
author | cash <cash@36083f99-b078-4883-b0ff-0f9b5a30f544> | 2010-12-19 01:44:33 +0000 |
---|---|---|
committer | cash <cash@36083f99-b078-4883-b0ff-0f9b5a30f544> | 2010-12-19 01:44:33 +0000 |
commit | abf3fcae3f90b4c52e40d3ef8bb11f92c7a03d1c (patch) | |
tree | 2f243448b156eb97b1b27a2efa38d791c1227bc5 /mod/tabbed_profile/icon.php | |
parent | fea009129f49f4f8d51654ceb569aae04387077b (diff) | |
download | elgg-abf3fcae3f90b4c52e40d3ef8bb11f92c7a03d1c.tar.gz elgg-abf3fcae3f90b4c52e40d3ef8bb11f92c7a03d1c.tar.bz2 |
rough widget profile plugin
git-svn-id: http://code.elgg.org/elgg/trunk@7676 36083f99-b078-4883-b0ff-0f9b5a30f544
Diffstat (limited to 'mod/tabbed_profile/icon.php')
-rw-r--r-- | mod/tabbed_profile/icon.php | 54 |
1 files changed, 54 insertions, 0 deletions
diff --git a/mod/tabbed_profile/icon.php b/mod/tabbed_profile/icon.php new file mode 100644 index 000000000..48ccc16c2 --- /dev/null +++ b/mod/tabbed_profile/icon.php @@ -0,0 +1,54 @@ +<?php +/** +* Elgg profile icon +* +* @package ElggProfile +*/ + +require_once(dirname(dirname(dirname(__FILE__))) . "/engine/start.php"); + +// Get the owning user +$user = elgg_get_page_owner(); + +// Get the size +$size = strtolower(get_input('size')); +if (!in_array($size,array('large','medium','small','tiny','master','topbar'))) + $size = "medium"; + +// If user doesn't exist, return default icon +if (!$user) { + $path = elgg_view("icon/user/default/$size"); + header("Location: $path"); + exit; +} + +// Try and get the icon +$filehandler = new ElggFile(); +$filehandler->owner_guid = $user->getGUID(); +$filehandler->setFilename("profile/" . $user->getGUID() . $size . ".jpg"); + +$success = false; +if ($filehandler->open("read")) { + if ($contents = $filehandler->read($filehandler->size())) { + $success = true; + } +} + +if (!$success) { + global $CONFIG; + $path = elgg_view('icon/user/default/'.$size); + header("Location: {$path}"); + exit; +} + +header("Content-type: image/jpeg"); +header('Expires: ' . date('r',time() + 864000)); +header("Pragma: public"); +header("Cache-Control: public"); +header("Content-Length: " . strlen($contents)); + +$splitString = str_split($contents, 1024); + +foreach($splitString as $chunk) { + echo $chunk; +}
\ No newline at end of file |