diff options
author | Silvio Rhatto <rhatto@riseup.net> | 2013-12-29 20:45:58 -0200 |
---|---|---|
committer | Silvio Rhatto <rhatto@riseup.net> | 2013-12-29 20:45:58 -0200 |
commit | 97e689213ff4e829f251af526ed4e796a3cc2b71 (patch) | |
tree | b04d03ec56305041216b72328fc9b5afde27bc76 /mod/lightpics/pages/photos/album | |
parent | 0ab6351abb7a602d96c62b0ad35413c88113a6cf (diff) | |
parent | 69e2d8c5d8732042c9319aef1fdea45a82b63e42 (diff) | |
download | elgg-97e689213ff4e829f251af526ed4e796a3cc2b71.tar.gz elgg-97e689213ff4e829f251af526ed4e796a3cc2b71.tar.bz2 |
Merge branch 'master' into saravea
Conflicts:
.gitmodules
mod/admins
mod/assemblies
mod/audio_html5
mod/beechat
mod/crud
mod/elgg-activitystreams
mod/elggman
mod/elggpg
mod/favorites
mod/federated-objects
mod/friendly_time
mod/group_alias
mod/group_operators
mod/languages
mod/lightpics
mod/openid_client
mod/spotlight
mod/suicide
mod/tasks
mod/videolist
Diffstat (limited to 'mod/lightpics/pages/photos/album')
-rw-r--r-- | mod/lightpics/pages/photos/album/add.php | 34 | ||||
-rw-r--r-- | mod/lightpics/pages/photos/album/edit.php | 48 | ||||
-rw-r--r-- | mod/lightpics/pages/photos/album/sort.php | 56 | ||||
-rw-r--r-- | mod/lightpics/pages/photos/album/view.php | 63 |
4 files changed, 201 insertions, 0 deletions
diff --git a/mod/lightpics/pages/photos/album/add.php b/mod/lightpics/pages/photos/album/add.php new file mode 100644 index 000000000..d34d39177 --- /dev/null +++ b/mod/lightpics/pages/photos/album/add.php @@ -0,0 +1,34 @@ +<?php +/** + * Create new album page + * + * @author Cash Costello + * @license http://www.gnu.org/licenses/gpl-2.0.html GNU General Public License v2 + */ + +$owner = elgg_get_page_owner_entity(); + +gatekeeper(); +group_gatekeeper(); + +$title = elgg_echo('photos:add'); + +// set up breadcrumbs +elgg_push_breadcrumb(elgg_echo('photos'), "photos/all"); +if (elgg_instanceof($owner, 'user')) { + elgg_push_breadcrumb($owner->name, "photos/owner/$owner->username"); +} else { + elgg_push_breadcrumb($owner->name, "photos/group/$owner->guid/all"); +} +elgg_push_breadcrumb($title); + +$vars = tidypics_prepare_form_vars(); +$content = elgg_view_form('photos/album/save', array('method' => 'post'), $vars); + +$body = elgg_view_layout('content', array( + 'content' => $content, + 'title' => $title, + 'filter' => '', +)); + +echo elgg_view_page($title, $body); diff --git a/mod/lightpics/pages/photos/album/edit.php b/mod/lightpics/pages/photos/album/edit.php new file mode 100644 index 000000000..7efb05ce1 --- /dev/null +++ b/mod/lightpics/pages/photos/album/edit.php @@ -0,0 +1,48 @@ +<?php +/** + * Edit an album + * + * @author Cash Costello + * @license http://www.gnu.org/licenses/gpl-2.0.html GNU General Public License v2 + */ + +$guid = (int) get_input('guid'); + +if (!$entity = get_entity($guid)) { + // @todo either deleted or do not have access + forward('photos/all'); +} + +if (!$entity->canEdit()) { + // @todo cannot change it + forward('photos/all'); +} + +elgg_set_page_owner_guid($entity->getContainerGUID()); +$owner = elgg_get_page_owner_entity(); + +gatekeeper(); +group_gatekeeper(); + +$title = elgg_echo('album:edit'); + +// set up breadcrumbs +elgg_push_breadcrumb(elgg_echo('photos'), "photos/all"); +if (elgg_instanceof($owner, 'user')) { + elgg_push_breadcrumb($owner->name, "photos/owner/$owner->username"); +} else { + elgg_push_breadcrumb($owner->name, "photos/group/$owner->guid/all"); +} +elgg_push_breadcrumb($entity->getTitle(), $entity->getURL()); +elgg_push_breadcrumb($title); + +$vars = tidypics_prepare_form_vars($entity); +$content = elgg_view_form('photos/album/save', array('method' => 'post'), $vars); + +$body = elgg_view_layout('content', array( + 'content' => $content, + 'title' => $title, + 'filter' => '', +)); + +echo elgg_view_page($title, $body); diff --git a/mod/lightpics/pages/photos/album/sort.php b/mod/lightpics/pages/photos/album/sort.php new file mode 100644 index 000000000..005205dd5 --- /dev/null +++ b/mod/lightpics/pages/photos/album/sort.php @@ -0,0 +1,56 @@ +<?php +/** + * Album sort page + * + * This displays a listing of all the photos so that they can be sorted + */ + +gatekeeper(); +group_gatekeeper(); + +// get the album entity +$album_guid = (int) get_input('guid'); +$album = get_entity($album_guid); + +// panic if we can't get it +if (!$album) { + forward(); +} + +// container should always be set, but just in case +$owner = $album->getContainerEntity(); +elgg_set_page_owner_guid($owner->getGUID()); + +$title = elgg_echo('tidypics:sort', array($album->getTitle())); + +// set up breadcrumbs +elgg_push_breadcrumb(elgg_echo('photos'), 'photos/all'); +if (elgg_instanceof($owner, 'group')) { + elgg_push_breadcrumb($owner->name, "photos/group/$owner->guid/all"); +} else { + elgg_push_breadcrumb($owner->name, "photos/owner/$owner->username"); +} +elgg_push_breadcrumb($album->getTitle(), $album->getURL()); +elgg_push_breadcrumb(elgg_echo('album:sort')); + +elgg_register_menu_item('title', array( + 'name' => 'upload', + 'href' => 'photos/upload/' . $album->getGUID(), + 'text' => elgg_echo('images:upload'), + 'link_class' => 'elgg-button elgg-button-action', +)); + +if ($album->getSize()) { + $content = elgg_view_form('photos/album/sort', array(), array('album' => $album)); +} else { + $content = elgg_echo('tidypics:sort:no_images'); +} + +$body = elgg_view_layout('content', array( + 'filter' => false, + 'content' => $content, + 'title' => $title, + 'sidebar' => elgg_view('tidypics/sidebar', array('page' => 'album')), +)); + +echo elgg_view_page($title, $body); diff --git a/mod/lightpics/pages/photos/album/view.php b/mod/lightpics/pages/photos/album/view.php new file mode 100644 index 000000000..6e111ab98 --- /dev/null +++ b/mod/lightpics/pages/photos/album/view.php @@ -0,0 +1,63 @@ +<?php +/** + * This displays the photos that belong to an album + * + * @author Cash Costello + * @license http://www.gnu.org/licenses/gpl-2.0.html GNU General Public License v2 + */ + +group_gatekeeper(); + +// get the album entity +$album_guid = (int) get_input('guid'); +$album = get_entity($album_guid); +if (!$album) { + register_error(elgg_echo('noaccess')); + $_SESSION['last_forward_from'] = current_page_url(); + forward(''); +} + +elgg_set_page_owner_guid($album->getContainerGUID()); +$owner = elgg_get_page_owner_entity(); + +$title = elgg_echo($album->getTitle()); + +// set up breadcrumbs +elgg_push_breadcrumb(elgg_echo('photos'), 'photos/all'); +if (elgg_instanceof($owner, 'group')) { + elgg_push_breadcrumb($owner->name, "photos/group/$owner->guid/all"); +} else { + elgg_push_breadcrumb($owner->name, "photos/owner/$owner->username"); +} +elgg_push_breadcrumb($album->getTitle()); + +$content = elgg_view_entity($album, array('full_view' => true)); + +if ($album->getContainerEntity()->canWriteToContainer()) { + elgg_register_menu_item('title', array( + 'name' => 'upload', + 'href' => 'photos/upload/' . $album->getGUID(), + 'text' => elgg_echo('images:upload'), + 'link_class' => 'elgg-button elgg-button-action', + )); +} + +// only show sort button if there are images +if ($album->canEdit() && $album->getSize() > 0) { + elgg_register_menu_item('title', array( + 'name' => 'sort', + 'href' => "photos/sort/" . $album->getGUID(), + 'text' => elgg_echo('album:sort'), + 'link_class' => 'elgg-button elgg-button-action', + 'priority' => 200, + )); +} + +$body = elgg_view_layout('content', array( + 'filter' => false, + 'content' => $content, + 'title' => $album->getTitle(), + 'sidebar' => elgg_view('tidypics/sidebar', array('page' => 'album')), +)); + +echo elgg_view_page($title, $body); |