From 89b8bc07ac7178b8ea722f8d1faa2f649faa8c1b Mon Sep 17 00:00:00 2001 From: marijus Date: Sun, 18 May 2014 09:14:21 +0200 Subject: implement modal for more then 10 likes/dislikes --- boot.php | 2 +- include/ItemObject.php | 18 ++++++++++++++++++ view/tpl/conv_item.tpl | 44 ++++++++++++++++++++++++++++++++++++++++++++ 3 files changed, 63 insertions(+), 1 deletion(-) diff --git a/boot.php b/boot.php index f9f8ad43f..e86e3da84 100755 --- a/boot.php +++ b/boot.php @@ -347,7 +347,7 @@ define ( 'DROPITEM_PHASE2', 2); * Maximum number of "people who like (or don't like) this" that we will list by name */ -define ( 'MAX_LIKERS', 75); +define ( 'MAX_LIKERS', 10); /** * Communication timeout diff --git a/include/ItemObject.php b/include/ItemObject.php index 475642787..cdb09ecf1 100644 --- a/include/ItemObject.php +++ b/include/ItemObject.php @@ -125,11 +125,24 @@ class Item extends BaseObject { $like_count = ((x($alike,$item['mid'])) ? $alike[$item['mid']] : ''); $like_list = ((x($alike,$item['mid'])) ? $alike[$item['mid'] . '-l'] : ''); + if (count($like_list) > MAX_LIKERS) { + $like_list_part = array_slice($like_list, 0, MAX_LIKERS); + array_push($like_list_part, '' . t('View all') . ''); + } else { + $like_list_part = ''; + } $like_button_label = ((x($alike,$item['mid'])) && ($alike[$item['mid']] < 2 ) ? t('Like') : t('Likes')); + if (feature_enabled($conv->get_profile_owner(),'dislike')) { $dislike_count = ((x($dlike,$item['mid'])) ? $dlike[$item['mid']] : ''); $dislike_list = ((x($dlike,$item['mid'])) ? $dlike[$item['mid'] . '-l'] : ''); $dislike_button_label = ((x($dlike,$item['mid'])) && ($dlike[$item['mid']] < 2) ? t('Dislike') : t('Dislikes')); + if (count($dislike_list) > MAX_LIKERS) { + $dislike_list_part = array_slice($dislike_list, 0, MAX_LIKERS); + array_push($dislike_list_part, '' . t('View all') . ''); + } else { + $dislike_list_part = ''; + } } $showlike = ((x($alike,$item['mid'])) ? format_like($alike[$item['mid']],$alike[$item['mid'] . '-l'],'like',$item['mid']) : ''); @@ -261,10 +274,15 @@ class Item extends BaseObject { // end toolbar buttons 'like_count' => $like_count, 'like_list' => $like_list, + 'like_list_part' => $like_list_part, 'like_button_label' => $like_button_label, + 'like_modal_title' => t('Likes'), + 'dislike_modal_title' => t('Dislikes'), 'dislike_count' => ((feature_enabled($conv->get_profile_owner(),'dislike')) ? $dislike_count : ''), 'dislike_list' => ((feature_enabled($conv->get_profile_owner(),'dislike')) ? $dislike_list : ''), + 'dislike_list_part' => ((feature_enabled($conv->get_profile_owner(),'dislike')) ? $dislike_list_part : ''), 'dislike_button_label' => ((feature_enabled($conv->get_profile_owner(),'dislike')) ? $dislike_button_label : ''), + 'modal_dismiss' => t('Close'), 'showlike' => $showlike, 'showdislike' => $showdislike, 'comment' => $this->get_comment_box($indent), diff --git a/view/tpl/conv_item.tpl b/view/tpl/conv_item.tpl index f9be3b077..ee10b6633 100755 --- a/view/tpl/conv_item.tpl +++ b/view/tpl/conv_item.tpl @@ -103,16 +103,60 @@ {{if $item.like_count}}
+ {{if $item.like_list_part}} + + {{else}} + {{/if}}
{{/if}} {{if $item.dislike_count}}
+ {{if $item.dislike_list_part}} + + {{else}} + {{/if}}
{{/if}} + {{if $item.like_list_part}} + + {{/if}} + {{if $item.dislike_list_part}} + + {{/if}} {{* we dont' use this do we? {{if $item.drop.pagedrop}} -- cgit v1.2.3