From c1411ffc81908882edaace315c46e500419d2aba Mon Sep 17 00:00:00 2001 From: cash Date: Sat, 26 Feb 2011 14:23:32 +0000 Subject: Refs #2982 adding and deleting friend collections works - editing does not git-svn-id: http://code.elgg.org/elgg/trunk@8490 36083f99-b078-4883-b0ff-0f9b5a30f544 --- actions/friends/addcollection.php | 36 ------------ actions/friends/collections/add.php | 36 ++++++++++++ actions/friends/collections/delete.php | 36 ++++++++++++ actions/friends/collections/edit.php | 13 +++++ actions/friends/deletecollection.php | 36 ------------ actions/friends/editcollection.php | 13 ----- engine/lib/users.php | 14 +++-- pages/friends/add.php | 23 -------- pages/friends/collections.php | 23 -------- pages/friends/collections/add.php | 26 +++++++++ pages/friends/collections/pickercallback.php | 71 ++++++++++++++++++++++++ pages/friends/collections/view.php | 23 ++++++++ pages/friends/edit.php | 30 ---------- pages/friends/pickercallback.php | 55 ------------------ views/default/core/friends/collection.php | 32 +++++++---- views/default/core/friends/collections.php | 13 ++--- views/default/core/friends/collectiontabs.php | 31 ++++++----- views/default/forms/friends/collectionfields.php | 15 ----- views/default/forms/friends/collections/edit.php | 53 ++++++++++++++++++ views/default/forms/friends/edit.php | 53 ------------------ 20 files changed, 311 insertions(+), 321 deletions(-) delete mode 100644 actions/friends/addcollection.php create mode 100644 actions/friends/collections/add.php create mode 100644 actions/friends/collections/delete.php create mode 100644 actions/friends/collections/edit.php delete mode 100644 actions/friends/deletecollection.php delete mode 100644 actions/friends/editcollection.php delete mode 100644 pages/friends/add.php delete mode 100644 pages/friends/collections.php create mode 100644 pages/friends/collections/add.php create mode 100644 pages/friends/collections/pickercallback.php create mode 100644 pages/friends/collections/view.php delete mode 100644 pages/friends/edit.php delete mode 100644 pages/friends/pickercallback.php delete mode 100644 views/default/forms/friends/collectionfields.php create mode 100644 views/default/forms/friends/collections/edit.php delete mode 100644 views/default/forms/friends/edit.php diff --git a/actions/friends/addcollection.php b/actions/friends/addcollection.php deleted file mode 100644 index eac8bced8..000000000 --- a/actions/friends/addcollection.php +++ /dev/null @@ -1,36 +0,0 @@ -username); - -} else { - register_error(elgg_echo("friends:nocollectionname")); - - // Forward to the add collection page - forward("pg/collections/add"); -} diff --git a/actions/friends/collections/add.php b/actions/friends/collections/add.php new file mode 100644 index 000000000..eac8bced8 --- /dev/null +++ b/actions/friends/collections/add.php @@ -0,0 +1,36 @@ +username); + +} else { + register_error(elgg_echo("friends:nocollectionname")); + + // Forward to the add collection page + forward("pg/collections/add"); +} diff --git a/actions/friends/collections/delete.php b/actions/friends/collections/delete.php new file mode 100644 index 000000000..f0ceaf023 --- /dev/null +++ b/actions/friends/collections/delete.php @@ -0,0 +1,36 @@ +owner_guid == elgg_get_logged_in_user_guid()) { + + $delete_collection = delete_access_collection($collection_id); + + // Success message + if ($delete_collection) { + system_message(elgg_echo("friends:collectiondeleted")); + } else { + register_error(elgg_echo("friends:collectiondeletefailed")); + } + } else { + // Failure message + register_error(elgg_echo("friends:collectiondeletefailed")); + } +} else { + // Failure message + register_error(elgg_echo("friends:collectiondeletefailed")); +} + +// Forward to the collections page +forward("pg/collections/" . elgg_get_logged_in_user_entity()->username); diff --git a/actions/friends/collections/edit.php b/actions/friends/collections/edit.php new file mode 100644 index 000000000..8fd1eae18 --- /dev/null +++ b/actions/friends/collections/edit.php @@ -0,0 +1,13 @@ +owner_guid == elgg_get_logged_in_user_guid()) { - - $delete_collection = delete_access_collection($collection_id); - - // Success message - if ($delete_collection) { - system_message(elgg_echo("friends:collectiondeleted")); - } else { - register_error(elgg_echo("friends:collectiondeletefailed")); - } - } else { - // Failure message - register_error(elgg_echo("friends:collectiondeletefailed")); - } -} else { - // Failure message - register_error(elgg_echo("friends:collectiondeletefailed")); -} - -// Forward to the collections page -forward("pg/collections/" . elgg_get_logged_in_user_entity()->username); diff --git a/actions/friends/editcollection.php b/actions/friends/editcollection.php deleted file mode 100644 index 8fd1eae18..000000000 --- a/actions/friends/editcollection.php +++ /dev/null @@ -1,13 +0,0 @@ -getGUID()); if (elgg_get_logged_in_user_guid() == elgg_get_page_owner_guid()) { collections_submenu_items(); } - require_once(dirname(dirname(dirname(__FILE__))) . "/pages/friends/collections.php"); + require_once "{$base}pages/friends/collections/view.php"; } } } @@ -1566,9 +1568,9 @@ function users_init() { elgg_register_action('avatar/crop'); elgg_register_action('profile/edit'); - elgg_register_action('friends/addcollection'); - elgg_register_action('friends/deletecollection'); - elgg_register_action('friends/editcollection'); + elgg_register_action('friends/collections/add'); + elgg_register_action('friends/collections/delete'); + elgg_register_action('friends/collections/edit'); elgg_register_plugin_hook_handler('entity:icon:url', 'user', 'user_avatar_hook'); diff --git a/pages/friends/add.php b/pages/friends/add.php deleted file mode 100644 index 96da26ae1..000000000 --- a/pages/friends/add.php +++ /dev/null @@ -1,23 +0,0 @@ - get_user_friends(elgg_get_logged_in_user_guid(), "", 9999) - ) -); - -$body = elgg_view_layout('one_sidebar', array('content' => $content)); - -echo elgg_view_page(elgg_echo('friends:collections:add'), $body); diff --git a/pages/friends/collections.php b/pages/friends/collections.php deleted file mode 100644 index fa7527f4d..000000000 --- a/pages/friends/collections.php +++ /dev/null @@ -1,23 +0,0 @@ - false, - 'content' => $content, - 'title' => $title, - 'context' => 'collections', -)); - -echo elgg_view_page($title, $body); diff --git a/pages/friends/collections/add.php b/pages/friends/collections/add.php new file mode 100644 index 000000000..51425db37 --- /dev/null +++ b/pages/friends/collections/add.php @@ -0,0 +1,26 @@ + get_user_friends(elgg_get_logged_in_user_guid(), "", 9999) +)); +$content .= elgg_view('input/form', array( + 'action' => 'action/friends/collections/add', + 'body' => $form_body, +)); + +$body = elgg_view_layout('one_sidebar', array('content' => $content)); + +echo elgg_view_page(elgg_echo('friends:collections:add'), $body); diff --git a/pages/friends/collections/pickercallback.php b/pages/friends/collections/pickercallback.php new file mode 100644 index 000000000..8da44d8c0 --- /dev/null +++ b/pages/friends/collections/pickercallback.php @@ -0,0 +1,71 @@ + $friendspicker, + 'count' => sizeof($members), + )); + $content = elgg_view('core/friends/tablelist', array( + 'entities' => $members, + 'content' => $js_segment, + )); + break; + default: + $friends = $pageowner->getFriends('', 9999); + $params = array( + 'collection' => get_access_collection($collection), + 'friends' => $friends, + 'friendspicker' => $friendspicker, + ); + $content = elgg_view_form('friends/collections/edit', array(), $params); + /* + $form_body = elgg_view('input/hidden', array( + 'name' => 'collection_id', + 'value' => get_access_collection($collection)->id, + )); + $content = elgg_view('input/friendspicker', array( + 'entities' => $friends, + 'value' => $members, + 'callback' => true, + 'friendspicker' => $friendspicker, + 'formcontents' => $form_body, + 'formtarget' => $site_url . 'action/friends/collections/edit', + )); + * + */ + break; +} + +// Output the content +echo $content; \ No newline at end of file diff --git a/pages/friends/collections/view.php b/pages/friends/collections/view.php new file mode 100644 index 000000000..fa7527f4d --- /dev/null +++ b/pages/friends/collections/view.php @@ -0,0 +1,23 @@ + false, + 'content' => $content, + 'title' => $title, + 'context' => 'collections', +)); + +echo elgg_view_page($title, $body); diff --git a/pages/friends/edit.php b/pages/friends/edit.php deleted file mode 100644 index 665929319..000000000 --- a/pages/friends/edit.php +++ /dev/null @@ -1,30 +0,0 @@ - $collection, - 'collection_members' => $collection_members)); - -$body = elgg_view_layout('one_sidebar', array('content' => $content)); - -echo elgg_view_page($title, $body); \ No newline at end of file diff --git a/pages/friends/pickercallback.php b/pages/friends/pickercallback.php deleted file mode 100644 index f613f1ae1..000000000 --- a/pages/friends/pickercallback.php +++ /dev/null @@ -1,55 +0,0 @@ - $friendspicker, 'count' => sizeof($members))); - $content = elgg_view('core/friends/tablelist', - array('entities' => $members, 'content' => $js_segment)); - break; - default: - $friends = $pageowner->getFriends('', 9999); - $content = elgg_view('input/friendspicker', array( - 'entities' => $friends, - 'value' => $members, - 'callback' => true, - 'friendspicker' => $friendspicker, - 'formcontents' => elgg_view('forms/friends/collectionfields', - array('collection' => get_access_collection($collection))), - 'formtarget' => $site_url . 'action/friends/editcollection', - )); - break; -} - -// Output the content -echo $content; \ No newline at end of file diff --git a/views/default/core/friends/collection.php b/views/default/core/friends/collection.php index 89c44a2b3..95f5944e7 100644 --- a/views/default/core/friends/collection.php +++ b/views/default/core/friends/collection.php @@ -1,13 +1,10 @@

"; if ($coll->owner_guid == elgg_get_logged_in_user_guid()) { echo "
"; echo elgg_view('output/confirmlink', array( - 'href' => 'action/friends/deletecollection?collection=' . $coll->id, - 'class' => 'delete_collection' + 'href' => 'action/friends/collections/delete?collection=' . $coll->id, + 'class' => 'delete_collection', + 'text' => elgg_view_icon('delete'), + 'text_encode' => false, )); echo "
"; } @@ -34,16 +33,27 @@ echo $coll->name; echo " ({$count})

"; // individual collection panels -if ($friends = $vars['collection']->entities) { - $content = elgg_view('core/friends/collectiontabs', array('owner' => elgg_get_logged_in_user_entity(), 'collection' => $vars['collection'], 'friendspicker' => $vars['friendspicker'])); +$friends = $vars['collection']->entities; +if ($friends) { + $content = elgg_view('core/friends/collectiontabs', array( + 'owner' => elgg_get_logged_in_user_entity(), + 'collection' => $vars['collection'], + 'friendspicker' => $vars['friendspicker'], + )); - echo elgg_view('input/friendspicker', array('entities' => $friends, 'value' => $members, 'content' => $content, 'replacement' => '', 'friendspicker' => $vars['friendspicker'])); - ?> + echo elgg_view('input/friendspicker', array( + 'entities' => $friends, + 'value' => $members, + 'content' => $content, + 'replacement' => '', + 'friendspicker' => $vars['friendspicker'], + )); +?> diff --git a/views/default/core/friends/collections.php b/views/default/core/friends/collections.php index 5a052b121..5c1c824e7 100644 --- a/views/default/core/friends/collections.php +++ b/views/default/core/friends/collections.php @@ -9,17 +9,16 @@ * @uses $vars['collections'] The array of friends collections */ -if (!isset($friendspicker)) { - $friendspicker = 0; -} - - if (is_array($vars['collections']) && sizeof($vars['collections'])) { echo ""; diff --git a/views/default/core/friends/collectiontabs.php b/views/default/core/friends/collectiontabs.php index 168d2cdfb..2fafe6a8c 100644 --- a/views/default/core/friends/collectiontabs.php +++ b/views/default/core/friends/collectiontabs.php @@ -16,38 +16,43 @@ $ownerid = $vars['owner']->getGUID(); ?> -
-
+