-<?php\r
-/**\r
- * Elgg add like action\r
- *\r
- * @package Elgg\r
- * @author Curverider <curverider.co.uk>\r
- * @link http://elgg.org/\r
- */\r
-\r
-// Make sure we're logged in; forward to the front page if not\r
-gatekeeper();\r
-\r
-// Get input\r
-$entity_guid = (int) get_input('guid');\r
-//check to see if the user has already liked the item\r
-if(elgg_already_created_annotation($entity_guid, 'likes')){\r
- system_message(elgg_echo("likes:alreadyliked"));\r
- forward($_SERVER['HTTP_REFERER']);\r
-}\r
-// Let's see if we can get an entity with the specified GUID\r
-$entity = get_entity($entity_guid);\r
-if (!$entity) {\r
- register_error(elgg_echo("likes:notfound"));\r
- forward($_SERVER['HTTP_REFERER']);\r
-}\r
-\r
-$user = get_loggedin_user();\r
-$annotation = create_annotation($entity->guid, \r
- 'likes',\r
- "likes", \r
- "", \r
- $user->guid, \r
- $entity->access_id);\r
-\r
-// tell user annotation didn't work if that is the case\r
-if (!$annotation) {\r
- register_error(elgg_echo("likes:failure"));\r
- forward($_SERVER['HTTP_REFERER']);\r
-}\r
-\r
-// notify if poster wasn't owner\r
-if ($entity->owner_guid != $user->guid) {\r
- \r
- notify_user($entity->owner_guid,\r
- $user->guid,\r
- elgg_echo('likes:email:subject'),\r
- sprintf(\r
- elgg_echo('likes:email:body'),\r
- $entity->title,\r
- $user->name,\r
- $comment_text,\r
- $entity->getURL(),\r
- $user->name,\r
- $user->getURL()\r
- )\r
- );\r
-}\r
-\r
-system_message(elgg_echo("likes:likes"));\r
-//add to river\r
-add_to_river('annotation/annotatelike','likes',$user->guid,$entity->guid, "", 0, $annotation);\r
-\r
-// Forward back to the page where the user 'liked' the object\r
-forward($_SERVER['HTTP_REFERER']);\r
+<?php
+/**
+ * Elgg add like action
+ *
+ * @package Elgg
+ * @author Curverider <curverider.co.uk>
+ * @link http://elgg.org/
+ */
+
+gatekeeper();
+$entity_guid = (int) get_input('guid');
+
+//check to see if the user has already liked the item
+if (elgg_annotation_exists($entity_guid, 'likes')){
+ system_message(elgg_echo("likes:alreadyliked"));
+ forward($_SERVER['HTTP_REFERER']);
+}
+// Let's see if we can get an entity with the specified GUID
+$entity = get_entity($entity_guid);
+if (!$entity) {
+ register_error(elgg_echo("likes:notfound"));
+ forward($_SERVER['HTTP_REFERER']);
+}
+
+$user = get_loggedin_user();
+$annotation = create_annotation($entity->guid,
+ 'likes',
+ "likes",
+ "",
+ $user->guid,
+ $entity->access_id);
+
+// tell user annotation didn't work if that is the case
+if (!$annotation) {
+ register_error(elgg_echo("likes:failure"));
+ forward($_SERVER['HTTP_REFERER']);
+}
+
+// notify if poster wasn't owner
+if ($entity->owner_guid != $user->guid) {
+
+ notify_user($entity->owner_guid,
+ $user->guid,
+ elgg_echo('likes:email:subject'),
+ sprintf(
+ elgg_echo('likes:email:body'),
+ $entity->title,
+ $user->name,
+ $comment_text,
+ $entity->getURL(),
+ $user->name,
+ $user->getURL()
+ )
+ );
+}
+
+system_message(elgg_echo("likes:likes"));
+//add to river
+add_to_river('annotation/annotatelike','likes',$user->guid,$entity->guid, "", 0, $annotation);
+
+// Forward back to the page where the user 'liked' the object
+forward($_SERVER['HTTP_REFERER']);
*
* @uses $vars['entity']
*/
-
-if (isset($vars['entity']) && isloggedin()) {
+
+if (isset($vars['entity']) && isloggedin()) {
$guid = $vars['entity']->getGuid();
$url = elgg_add_action_tokens_to_url($vars['url'] . "action/likes/add?guid={$guid}");
//check to see if the user has already liked
- if(!elgg_already_created_annotation($guid, 'likes'))
- echo "<a href=\"{$url}\">" . elgg_echo('likes:likethis') . "</a><br />";
+ if (!elgg_annotation_exists($guid, 'likes')) {
+ echo "<a href=\"{$url}\">" . elgg_echo('likes:likethis') . "</a><br />";
+ }
//display the number of likes
$numoflikes = elgg_count_likes($vars['entity']);
- if($numoflikes != 0){
- if($numoflikes == 1)
+ if ($numoflikes != 0) {
+ if ($numoflikes == 1) {
echo "<a onclick=\" $('#showLikes').show('slow');\">" . elgg_count_likes($vars['entity']) . " " . elgg_echo('likes:userlikedthis') . "</a>";
- else
+ } else {
echo "<a onclick=\" $('#showLikes').show('slow');\">" . elgg_count_likes($vars['entity']) . " " . elgg_echo('likes:userslikethis') . "</a>";
+ }
}
//show the users who liked the object
echo "<div id=\"showLikes\" style=\"display:none;\">";