update addons to support Smarty3
[friendica-addons.git] / widgets / widget_like.php
1 <?php
2
3 function like_widget_name() {
4         return "Shows likes";
5 }
6 function like_widget_help() {
7         return "Search first item which contains <em>KEY</em> and print like/dislike count";
8 }
9
10 function like_widget_args(){
11         return Array("KEY");
12 }
13
14 function like_widget_size(){
15         return Array('60px','20px');
16 }
17
18
19 function like_widget_content(&$a, $conf){
20         $args = explode(",",$_GET['a']);
21         
22         
23         $baseq="SELECT COUNT(`item`.`id`) as `c`, `p`.`id`
24                                         FROM `item`, 
25                                                 (SELECT `i`.`id` FROM `item` as `i` WHERE 
26                                                         `i`.`visible` = 1 AND `i`.`deleted` = 0
27                                                         AND (( `i`.`wall` = 1 AND `i`.`allow_cid` = ''  
28                                                                         AND `i`.`allow_gid` = '' 
29                                                                         AND `i`.`deny_cid`  = '' 
30                                                                         AND `i`.`deny_gid`  = '' ) 
31                                                                   OR `i`.`uid` = %d )
32                                                         AND `i`.`body` LIKE '%%%s%%' LIMIT 1) as `p`
33                                         WHERE `item`.`parent` = `p`.`id` ";
34         
35         // count likes
36         $r = q( $baseq . "AND `item`.`verb` = 'http://activitystrea.ms/schema/1.0/like'",
37                         intval($conf['uid']),
38                         dbesc($args[0])
39         );
40         $likes = $r[0]['c'];
41         $iid = $r[0]['id'];
42         
43         // count dislikes
44         $r = q( $baseq . "AND `item`.`verb` = 'http://purl.org/macgirvin/dfrn/1.0/dislike'",
45                         intval($conf['uid']),
46                         dbesc($args[0])
47         );
48         $dislikes = $r[0]['c'];
49         
50         
51         require_once("include/conversation.php");
52         
53         $o = "";
54         
55 #       $t = file_get_contents( dirname(__file__). "/widget_like.tpl" );
56         $t = get_markup_template("widget_like.tpl", "addon/widgets/");
57         $o .= replace_macros($t, array(
58                 '$like'         => $likes,
59                 '$strlike'      => sprintf( tt("%d person likes this", "%d people like this", $likes), $likes),
60                 
61                 '$dislike'      => $dislikes,
62                 '$strdislike'=> sprintf( tt("%d person doesn't like this", "%d people don't like this", $dislikes), $dislikes),
63                 
64                 '$baseurl' => $a->get_baseurl(),
65         ));
66                 
67         return $o;
68 }