forked from GNUsocial/gnu-social
no longer have to be logged in to merely view a photo album.
This commit is contained in:
parent
148f6b6933
commit
012ccc2dcb
@ -39,9 +39,13 @@ class PhotosAction extends Action
|
|||||||
{
|
{
|
||||||
parent::prepare($args);
|
parent::prepare($args);
|
||||||
|
|
||||||
$this->user = common_current_user();
|
$args = $this->returnToArgs();
|
||||||
common_log(LOG_INFO, "finishing prepare. user : ");
|
$username = $args[1]['nickname'];
|
||||||
common_log(LOG_INFO, $this->user->nickname);
|
if (common_valid_profile_tag($username) == 0) {
|
||||||
|
$this->user = null;
|
||||||
|
} else {
|
||||||
|
$this->user = Profile::staticGet('nickname', $username);
|
||||||
|
}
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -54,75 +58,41 @@ class PhotosAction extends Action
|
|||||||
function title()
|
function title()
|
||||||
{
|
{
|
||||||
if (empty($this->user)) {
|
if (empty($this->user)) {
|
||||||
return _m('Hello');
|
return _m('No such user.');
|
||||||
} else {
|
} else {
|
||||||
return sprintf(_m('Hello, %s'), $this->user->nickname);
|
return sprintf(_m("%s's Photos."), $this->user->nickname);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
function showContent()
|
function showContent()
|
||||||
{
|
{
|
||||||
common_log(LOG_INFO, "getting to show content.\n");
|
if(empty($this->user)) {
|
||||||
if (empty($this->user)) {
|
return;
|
||||||
// TODO: should just redirect to the login page.
|
|
||||||
$this->element('p', array(), 'You are not logged in');
|
|
||||||
} else {
|
|
||||||
common_log(LOG_INFO, 'fileroot : ' . $_SERVER['DOCUMENT_ROOT'] . '/file/');
|
|
||||||
$dir = opendir($_SERVER['DOCUMENT_ROOT'] . '/file/');
|
|
||||||
if ($dir === false) {
|
|
||||||
$err = error_get_last();
|
|
||||||
common_log(LOG_INFO, 'Error opening dir : ' . $err['message']);
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
$args = $this->returnToArgs();
|
|
||||||
foreach (array_keys($args) as $key) {
|
|
||||||
common_log(LOG_INFO, $key . ' => ' . $args[$key]);
|
|
||||||
if (is_array($args[$key])) {
|
|
||||||
foreach (array_keys($args[$key]) as $skey) {
|
|
||||||
common_log(LOG_INFO, ' ' . $skey . ' => ' . $args[$key][$skey]);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
$pathparts = explode('/', $args[1]['nickname']);
|
|
||||||
$username = $pathparts[0];
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
$page = $_GET['pageid'];
|
|
||||||
if (!filter_var($page, FILTER_VALIDATE_INT)){
|
|
||||||
$page = 1;
|
|
||||||
}
|
|
||||||
|
|
||||||
if ($page > 1) {
|
|
||||||
$this->element('a', array('href' => 'photos?pageid=' . ($page-1)), 'Previous page');
|
|
||||||
}
|
|
||||||
$this->element('a', array('href' => 'photos?pageid=' . ($page+1) ), 'Next page');
|
|
||||||
|
|
||||||
$args = $this->returnToArgs();
|
|
||||||
$profile_nick = $args[1]['nickname']; //Nickname for the profile being looked at
|
|
||||||
|
|
||||||
//TODO choice of available albums by user.
|
|
||||||
//Currently based on fact that each user can only have one album.
|
|
||||||
error_log('profile nick:', 3, '/tmp/sean.log');
|
|
||||||
error_log($profile_nick, 3, '/tmp/sean.log');
|
|
||||||
$profile = Profile::staticGet('nickname', $profile_nick);
|
|
||||||
//error_log(',profile_id:', 3, '/tmp/sean.log');
|
|
||||||
//error_log($profile->id, 3, '/tmp/sean.log');
|
|
||||||
$album = GNUSocialPhotoAlbum::staticGet('profile_id', $profile->id);
|
|
||||||
//error_log(',album_id:', 3, '/tmp/sean.log');
|
|
||||||
//error_log($album->album_id, 3, '/tmp/sean.log');
|
|
||||||
$photos = GNUsocialPhoto::getGalleryPage($page, $album->album_id, 9);
|
|
||||||
|
|
||||||
$this->elementStart('ul', array('class' => 'photothumbs'));
|
|
||||||
foreach ($photos as $photo) {
|
|
||||||
$this->elementStart('li');
|
|
||||||
$this->elementStart('a', array('href' => $photo->uri));
|
|
||||||
$this->element('img', array('src' => $photo->thumb_uri));
|
|
||||||
$this->elementEnd('a');
|
|
||||||
$this->elementEnd('li');
|
|
||||||
}
|
|
||||||
$this->elementEnd('ul');
|
|
||||||
}
|
}
|
||||||
|
$page = $_GET['pageid'];
|
||||||
|
if (!filter_var($page, FILTER_VALIDATE_INT)){
|
||||||
|
$page = 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
if ($page > 1) {
|
||||||
|
$this->element('a', array('href' => 'photos?pageid=' . ($page-1)), 'Previous page');
|
||||||
|
}
|
||||||
|
$this->element('a', array('href' => 'photos?pageid=' . ($page+1) ), 'Next page');
|
||||||
|
|
||||||
|
//TODO choice of available albums by user.
|
||||||
|
//Currently based on fact that each user can only have one album.
|
||||||
|
$album = GNUSocialPhotoAlbum::staticGet('profile_id', $this->user->id);
|
||||||
|
$photos = GNUsocialPhoto::getGalleryPage($page, $album->album_id, 9);
|
||||||
|
|
||||||
|
$this->elementStart('ul', array('class' => 'photothumbs'));
|
||||||
|
foreach ($photos as $photo) {
|
||||||
|
$this->elementStart('li');
|
||||||
|
$this->elementStart('a', array('href' => $photo->uri));
|
||||||
|
$this->element('img', array('src' => $photo->thumb_uri));
|
||||||
|
$this->elementEnd('a');
|
||||||
|
$this->elementEnd('li');
|
||||||
|
}
|
||||||
|
$this->elementEnd('ul');
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user