X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=widgets%2Fwidget_like.php;h=649d4a767ec1b4d65311dc83ae304953c614a731;hb=7ec4923c34ec4dd714280871078a928c6ce698f5;hp=6927d43241390a35e064b20e987839884ddeedcf;hpb=056921b1e8d64702535f03e238bc2e451ddca646;p=friendica-addons.git diff --git a/widgets/widget_like.php b/widgets/widget_like.php old mode 100644 new mode 100755 index 6927d432..649d4a76 --- a/widgets/widget_like.php +++ b/widgets/widget_like.php @@ -11,12 +11,57 @@ function like_widget_args(){ return Array("KEY"); } +function like_widget_size(){ + return Array('60px','20px'); +} + + function like_widget_content(&$a, $conf){ $args = explode(",",$_GET['a']); - if ($args[0]!=""){ - return " #TODO like/dislike count for item with " .$args[0]. " # "; - } else { - return " #TODO# "; - } + + $baseq="SELECT COUNT(`item`.`id`) as `c`, `p`.`id` + FROM `item`, + (SELECT `i`.`id` FROM `item` as `i` WHERE + `i`.`visible` = 1 AND `i`.`deleted` = 0 + AND (( `i`.`wall` = 1 AND `i`.`allow_cid` = '' + AND `i`.`allow_gid` = '' + AND `i`.`deny_cid` = '' + AND `i`.`deny_gid` = '' ) + OR `i`.`uid` = %d ) + AND `i`.`body` LIKE '%%%s%%' LIMIT 1) as `p` + WHERE `item`.`parent` = `p`.`id` "; + + // count likes + $r = q( $baseq . "AND `item`.`verb` = 'http://activitystrea.ms/schema/1.0/like'", + intval($conf['uid']), + dbesc($args[0]) + ); + $likes = $r[0]['c']; + $iid = $r[0]['id']; + + // count dislikes + $r = q( $baseq . "AND `item`.`verb` = 'http://purl.org/macgirvin/dfrn/1.0/dislike'", + intval($conf['uid']), + dbesc($args[0]) + ); + $dislikes = $r[0]['c']; + + + require_once("include/conversation.php"); + + $o = ""; + + $t = file_get_contents( dirname(__file__). "/widget_like.tpl" ); + $o .= replace_macros($t, array( + '$like' => $likes, + '$strlike' => sprintf( tt("%d person likes this", "%d people like this", $likes), $likes), + + '$dislike' => $dislikes, + '$strdislike'=> sprintf( tt("%d person doesn't like this", "%d people don't like this", $dislikes), $dislikes), + + '$baseurl' => $a->get_baseurl(), + )); + + return $o; }