diff options
-rw-r--r-- | Zotlabs/Lib/ThreadItem.php | 6 | ||||
-rw-r--r-- | include/conversation.php | 4 | ||||
-rw-r--r-- | view/js/main.js | 7 | ||||
-rwxr-xr-x | view/tpl/conv_item.tpl | 53 | ||||
-rwxr-xr-x | view/tpl/conv_list.tpl | 48 |
5 files changed, 46 insertions, 72 deletions
diff --git a/Zotlabs/Lib/ThreadItem.php b/Zotlabs/Lib/ThreadItem.php index c2aa920b9..61a012f9d 100644 --- a/Zotlabs/Lib/ThreadItem.php +++ b/Zotlabs/Lib/ThreadItem.php @@ -238,9 +238,9 @@ class ThreadItem { 'do' => t("Add Star"), 'undo' => t("Remove Star"), 'toggle' => t("Toggle Star Status"), - 'classdo' => (intval($item['item_starred']) ? "hidden" : ""), - 'classundo' => (intval($item['item_starred']) ? "" : "hidden"), - 'isstarred' => (intval($item['item_starred']) ? "starred fa-star" : "unstarred fa-star-o"), + 'classdo' => ((intval($item['item_starred'])) ? "hidden" : ""), + 'classundo' => ((intval($item['item_starred'])) ? "" : "hidden"), + 'isstarred' => ((intval($item['item_starred'])) ? true : false), 'starred' => t('starred'), ); diff --git a/include/conversation.php b/include/conversation.php index 82317ae95..30acd6329 100644 --- a/include/conversation.php +++ b/include/conversation.php @@ -1039,7 +1039,7 @@ function thread_author_menu($item, $mode = '') { if($posts_link) { $menu[] = [ 'menu' => 'view_posts', - 'title' => t('Activity/Posts'), + 'title' => t('Recent Activity'), 'icon' => 'fw', 'action' => '', 'href' => $posts_link @@ -1724,7 +1724,7 @@ function network_tabs() { if(feature_enabled(local_channel(),'star_posts')) { $tabs[] = array( 'label' => t('Starred'), - 'url'=>z_root() . '/' . $cmd . ((x($_GET,'cid')) ? '/?f=&cid=' . $_GET['cid'] : '') . '&star=1', + 'url'=>z_root() . '/' . $cmd . '/?f=' . ((x($_GET,'cid')) ? '&cid=' . $_GET['cid'] : '') . '&star=1', 'sel'=>$starred_active, 'title' => t('Favourite Posts'), ); diff --git a/view/js/main.js b/view/js/main.js index c1e7bd4ec..7ef373b66 100644 --- a/view/js/main.js +++ b/view/js/main.js @@ -1096,18 +1096,21 @@ function dostar(ident) { if(data.result == 1) { $('#starred-' + ident).addClass('starred'); $('#starred-' + ident).removeClass('unstarred'); - $('#starred-' + ident).addClass('fa-star-full'); + $('#starred-' + ident).addClass('fa-star'); $('#starred-' + ident).removeClass('fa-star-o'); $('#star-' + ident).addClass('hidden'); $('#unstar-' + ident).removeClass('hidden'); + var btn_tpl = '<div class="btn-group" id="star-button-' + ident + '"><button type="button" class="btn btn-outline-secondary btn-sm wall-item-like" onclick="dostar(' + ident + ');"><i class="fa fa-star"></i></button></div>' + $('#wall-item-tools-left-' + ident).prepend(btn_tpl); } else { $('#starred-' + ident).addClass('unstarred'); $('#starred-' + ident).removeClass('starred'); $('#starred-' + ident).addClass('fa-star-o'); - $('#starred-' + ident).removeClass('fa-star-full'); + $('#starred-' + ident).removeClass('fa-star'); $('#star-' + ident).removeClass('hidden'); $('#unstar-' + ident).addClass('hidden'); + $('#star-button-' + ident).remove(); } $('#like-rotator-' + ident).hide(); }); diff --git a/view/tpl/conv_item.tpl b/view/tpl/conv_item.tpl index e9f507f1e..cfafa5ffd 100755 --- a/view/tpl/conv_item.tpl +++ b/view/tpl/conv_item.tpl @@ -27,9 +27,17 @@ {{/if}} {{/if}} <div class="p-2 clearfix wall-item-head{{if $item.is_new && !$item.title && !$item.event && !$item.is_comment}} wall-item-head-new rounded-top{{/if}}"> - <div class="wall-item-info" id="wall-item-info-{{$item.id}}" > + <div class="wall-item-info " id="wall-item-info-{{$item.id}}" > <div class="wall-item-photo-wrapper{{if $item.owner_url}} wwfrom{{/if}} h-card p-author" id="wall-item-photo-wrapper-{{$item.id}}"> - <a href="{{$item.profile_url}}" title="{{$item.linktitle}}" class="wall-item-photo-link u-url" id="wall-item-photo-link-{{$item.id}}"><img src="{{$item.thumb}}" class="wall-item-photo{{$item.sparkle}} u-photo p-name" id="wall-item-photo-{{$item.id}}" alt="{{$item.name}}" /></a> + <img src="{{$item.thumb}}" class="fakelink wall-item-photo{{$item.sparkle}} u-photo p-name" id="wall-item-photo-{{$item.id}}" alt="{{$item.name}}" data-toggle="dropdown" /> + {{if $item.thread_author_menu}} + <div class="dropdown-menu"> + {{foreach $item.thread_author_menu as $mitem}} + <a class="dropdown-item" {{if $mitem.href}}href="{{$mitem.href}}"{{/if}} {{if $mitem.action}}onclick="{{$mitem.action}}"{{/if}} {{if $mitem.title}}title="{{$mitem.title}}"{{/if}} >{{$mitem.title}}</a> + {{/foreach}} + + </div> + {{/if}} </div> </div> {{if $item.lock}} @@ -40,7 +48,7 @@ {{/if}} <div class="wall-item-author"> {{if $item.previewing}}<span class="preview-indicator"><i class="fa fa-eye" title="{{$item.preview_lbl}}"></i></span> {{/if}} - <a href="{{$item.profile_url}}" title="{{$item.linktitle}}" class="wall-item-name-link"><span class="wall-item-name{{$item.sparkle}}" id="wall-item-name-{{$item.id}}" >{{$item.name}}</span></a>{{if $item.owner_url}} {{$item.via}} <a href="{{$item.owner_url}}" title="{{$item.olinktitle}}" class="wall-item-name-link"><span class="wall-item-name{{$item.osparkle}}" id="wall-item-ownername-{{$item.id}}">{{$item.owner_name}}</span></a>{{/if}} + <a href="{{$item.profile_url}}" title="{{$item.linktitle}}" class="wall-item-name-link u-url"><span class="wall-item-name{{$item.sparkle}}" id="wall-item-name-{{$item.id}}" >{{$item.name}}</span></a>{{if $item.owner_url}} {{$item.via}} <a href="{{$item.owner_url}}" title="{{$item.olinktitle}}" class="wall-item-name-link"><span class="wall-item-name{{$item.osparkle}}" id="wall-item-ownername-{{$item.id}}">{{$item.owner_name}}</span></a>{{/if}} </div> <div class="wall-item-ago" id="wall-item-ago-{{$item.id}}"> {{if $item.verified}}<i class="fa fa-check item-verified" title="{{$item.verified}}"></i> {{elseif $item.forged}}<i class="fa fa-exclamation item-forged" title="{{$item.forged}}"></i> {{/if}}{{if $item.location}}<span class="wall-item-location p-location" id="wall-item-location-{{$item.id}}">{{$item.location}}, </span>{{/if}}<span class="autotime" title="{{$item.isotime}}"><time class="dt-published" datetime="{{$item.isotime}}">{{$item.localtime}}</time>{{if $item.editedtime}} {{$item.editedtime}}{{/if}}{{if $item.expiretime}} {{$item.expiretime}}{{/if}}</span>{{if $item.editedtime}} <i class="fa fa-pencil"></i>{{/if}} {{if $item.app}}<span class="item.app">{{$item.str_app}}</span>{{/if}} @@ -58,32 +66,9 @@ {{/if}} {{if $item.has_tags}} <div class="p-2 wall-item-tools clearfix"> - <div class="body-tags"> <span class="tag">{{$item.mentions}} {{$item.tags}} {{$item.categories}} {{$item.folders}}</span> </div> - {{** - {{if $item.mentions}} - <div class="body-tags" id="item-mentions"> - <span class="tag">{{$item.mentions}}</span> - </div> - {{/if}} - {{if $item.tags}} - <div class="body-tags" id="item-tags"> - <span class="tag">{{$item.tags}}</span> - </div> - {{/if}} - {{if $item.categories}} - <div class="body-tags" id="item-categories"> - <span class="tag p-category">{{$item.categories}}</span> - </div> - {{/if}} - {{if $item.folders}} - <div class="body-tags" id="item-folders"> - <span class="tag">{{$item.folders}}</span> - </div> - {{/if}} - **}} </div> {{/if}} <div class="p-2 clearfix wall-item-tools"> @@ -179,7 +164,7 @@ <a class="dropdown-item" href="#" onclick="itemAddToCal({{$item.id}}); return false;"><i id="addtocal-{{$item.id}}" class="generic-icons-nav fa fa-fw fa-calendar" title="{{$item.addtocal}}"></i>{{$item.addtocal}}</a> {{/if}} {{if $item.star}} - <a class="dropdown-item" href="#" onclick="dostar({{$item.id}}); return false;"><i id="starred-{{$item.id}}" class="generic-icons-nav fa fa-fw fa-star {{$item.star.isstarred}}" title="{{$item.star.toggle}}"></i>{{$item.star.toggle}}</a> + <a class="dropdown-item" href="#" onclick="dostar({{$item.id}}); return false;"><i id="starred-{{$item.id}}" class="generic-icons-nav fa fa-fw{{if $item.star.isstarred}} starred fa-star{{else}} unstarred fa-star-o{{/if}}" title="{{$item.star.toggle}}"></i>{{$item.star.toggle}}</a> {{/if}} {{if $item.thread_action_menu}} {{foreach $item.thread_action_menu as $mitem}} @@ -189,13 +174,8 @@ {{if $item.drop.dropping}} <a class="dropdown-item" href="#" onclick="dropItem('item/drop/{{$item.id}}', '#thread-wrapper-{{$item.id}}'); return false;" title="{{$item.drop.delete}}" ><i class="generic-icons-nav fa fa-fw fa-trash-o"></i>{{$item.drop.delete}}</a> {{/if}} - {{if $item.thread_author_menu}} - <div class="dropdown-divider"></div> - {{foreach $item.thread_author_menu as $mitem}} - <a class="dropdown-item" {{if $mitem.href}}href="{{$mitem.href}}"{{/if}} {{if $mitem.action}}onclick="{{$mitem.action}}"{{/if}} {{if $mitem.title}}title="{{$mitem.title}}"{{/if}} >{{$mitem.title}}</a> - {{/foreach}} - {{/if}} {{if $item.edpost && $item.dreport}} + <div class="dropdown-divider"></div> <a class="dropdown-item" href="dreport/{{$item.mid}}">{{$item.dreport}}</a> {{/if}} </div> @@ -204,7 +184,12 @@ </div> {{if $item.responses || $item.attachments}} - <div class="wall-item-tools-left{{if ($item.responses.count > 1) || ($item.responses.count && $item.attachments)}} btn-group{{/if}}"> + <div class="wall-item-tools-left btn-group" id="wall-item-tools-left-{{$item.id}}"> + {{if $item.star.isstarred}} + <div class="btn-group" id="star-button-{{$item.id}}"> + <button type="button" class="btn btn-outline-secondary btn-sm wall-item-like" onclick="dostar({{$item.id}});"><i class="fa fa-star"></i></button> + </div> + {{/if}} {{if $item.attachments}} <div class="btn-group"> <button type="button" class="btn btn-outline-secondary btn-sm wall-item-like dropdown-toggle" data-toggle="dropdown" id="attachment-menu-{{$item.id}}"><i class="fa fa-paperclip"></i></button> diff --git a/view/tpl/conv_list.tpl b/view/tpl/conv_list.tpl index 97fd50d01..286bdc54f 100755 --- a/view/tpl/conv_list.tpl +++ b/view/tpl/conv_list.tpl @@ -29,7 +29,15 @@ <div class="p-2 clearfix wall-item-head{{if $item.is_new && !$item.title && !$item.event && !$item.is_comment}} wall-item-head-new rounded-top{{/if}}"> <div class="wall-item-info" id="wall-item-info-{{$item.id}}" > <div class="wall-item-photo-wrapper{{if $item.owner_url}} wwfrom{{/if}} h-card p-author" id="wall-item-photo-wrapper-{{$item.id}}"> - <a href="{{$item.profile_url}}" title="{{$item.linktitle}}" class="wall-item-photo-link u-url" id="wall-item-photo-link-{{$item.id}}"><img src="{{$item.thumb}}" class="wall-item-photo{{$item.sparkle}} u-photo p-name" id="wall-item-photo-{{$item.id}}" alt="{{$item.name}}" /></a> + <img src="{{$item.thumb}}" class="fakelink wall-item-photo{{$item.sparkle}} u-photo p-name" id="wall-item-photo-{{$item.id}}" alt="{{$item.name}}" data-toggle="dropdown" /></a> + {{if $item.thread_author_menu}} + <div class="dropdown-menu"> + {{foreach $item.thread_author_menu as $mitem}} + <a class="dropdown-item" {{if $mitem.href}}href="{{$mitem.href}}"{{/if}} {{if $mitem.action}}onclick="{{$mitem.action}}"{{/if}} {{if $mitem.title}}title="{{$mitem.title}}"{{/if}} >{{$mitem.title}}</a> + {{/foreach}} + + </div> + {{/if}} </div> </div> {{if $item.lock}} @@ -39,7 +47,7 @@ </div> {{/if}} <div class="wall-item-author"> - <a href="{{$item.profile_url}}" title="{{$item.linktitle}}" class="wall-item-name-link"><span class="wall-item-name{{$item.sparkle}}" id="wall-item-name-{{$item.id}}" >{{$item.name}}</span></a>{{if $item.owner_url}} {{$item.via}} <a href="{{$item.owner_url}}" title="{{$item.olinktitle}}" class="wall-item-name-link"><span class="wall-item-name{{$item.osparkle}}" id="wall-item-ownername-{{$item.id}}">{{$item.owner_name}}</span></a>{{/if}} + <a href="{{$item.profile_url}}" title="{{$item.linktitle}}" class="wall-item-name-link u-url"><span class="wall-item-name{{$item.sparkle}}" id="wall-item-name-{{$item.id}}" >{{$item.name}}</span></a>{{if $item.owner_url}} {{$item.via}} <a href="{{$item.owner_url}}" title="{{$item.olinktitle}}" class="wall-item-name-link"><span class="wall-item-name{{$item.osparkle}}" id="wall-item-ownername-{{$item.id}}">{{$item.owner_name}}</span></a>{{/if}} </div> <div class="wall-item-ago" id="wall-item-ago-{{$item.id}}"> {{if $item.verified}}<i class="fa fa-check item-verified" title="{{$item.verified}}"></i> {{elseif $item.forged}}<i class="fa fa-exclamation item-forged" title="{{$item.forged}}"></i> {{/if}}{{if $item.location}}<span class="wall-item-location p-location" id="wall-item-location-{{$item.id}}">{{$item.location}}, </span>{{/if}}<span class="autotime" title="{{$item.isotime}}"><time class="dt-published" datetime="{{$item.isotime}}">{{$item.localtime}}</time>{{if $item.editedtime}} {{$item.editedtime}}{{/if}}{{if $item.expiretime}} {{$item.expiretime}}{{/if}}</span>{{if $item.editedtime}} <i class="fa fa-pencil"></i>{{/if}} {{if $item.app}}<span class="item.app">{{$item.str_app}}</span>{{/if}} @@ -59,28 +67,6 @@ <div class="body-tags"> <span class="tag">{{$item.mentions}} {{$item.tags}} {{$item.categories}} {{$item.folders}}</span> </div> - {{** - {{if $item.mentions}} - <div class="body-tags" id="item-mentions"> - <span class="tag">{{$item.mentions}}</span> - </div> - {{/if}} - {{if $item.tags}} - <div class="body-tags" id="item-tags"> - <span class="tag">{{$item.tags}}</span> - </div> - {{/if}} - {{if $item.categories}} - <div class="body-tags" id="item-categories"> - <span class="tag p-category">{{$item.categories}}</span> - </div> - {{/if}} - {{if $item.folders}} - <div class="body-tags" id="item-folders"> - <span class="tag">{{$item.folders}}</span> - </div> - {{/if}} - **}} </div> {{/if}} <div class="p-2 clearfix wall-item-tools"> @@ -171,7 +157,7 @@ <a class="dropdown-item" href="#" onclick="itemAddToCal({{$item.id}}); return false;"><i id="addtocal-{{$item.id}}" class="generic-icons-nav fa fa-fw fa-calendar" title="{{$item.addtocal}}"></i>{{$item.addtocal}}</a> {{/if}} {{if $item.star}} - <a class="dropdown-item" href="#" onclick="dostar({{$item.id}}); return false;"><i id="starred-{{$item.id}}" class="generic-icons-nav fa fa-fw fa-star {{$item.star.isstarred}}" title="{{$item.star.toggle}}"></i>{{$item.star.toggle}}</a> + <a class="dropdown-item" href="#" onclick="dostar({{$item.id}}); return false;"><i id="starred-{{$item.id}}" class="generic-icons-nav fa fa-fw{{if $item.star.isstarred}} starred fa-star{{else}} unstarred fa-star-o{{/if}}" title="{{$item.star.toggle}}"></i>{{$item.star.toggle}}</a> {{/if}} {{if $item.thread_action_menu}} {{foreach $item.thread_action_menu as $mitem}} @@ -181,12 +167,7 @@ {{if $item.drop.dropping}} <a class="dropdown-item" href="#" onclick="dropItem('item/drop/{{$item.id}}', '#thread-wrapper-{{$item.id}}'); return false;" title="{{$item.drop.delete}}" ><i class="generic-icons-nav fa fa-fw fa-trash-o"></i>{{$item.drop.delete}}</a> {{/if}} - {{if $item.thread_author_menu}} <div class="dropdown-divider"></div> - {{foreach $item.thread_author_menu as $mitem}} - <a class="dropdown-item" {{if $mitem.href}}href="{{$mitem.href}}"{{/if}} {{if $mitem.action}}onclick="{{$mitem.action}}"{{/if}} {{if $mitem.title}}title="{{$mitem.title}}"{{/if}} >{{$mitem.title}}</a> - {{/foreach}} - {{/if}} {{if $item.edpost && $item.dreport}} <a class="dropdown-item" href="dreport/{{$item.mid}}">{{$item.dreport}}</a> {{/if}} @@ -195,7 +176,12 @@ </div> </div> <div id="like-rotator-{{$item.id}}" class="like-rotator"></div> - <div class="wall-item-tools-left{{if $item.unseen_comments || $item.like_count || $item.dislike_count || $item.attachments}} btn-group{{/if}}"> + <div class="wall-item-tools-left btn-group" id="wall-item-tools-left-{{$item.id}}"> + {{if $item.star.isstarred}} + <div class="btn-group" id="star-button-{{$item.id}}"> + <button type="button" class="btn btn-outline-secondary btn-sm wall-item-like" onclick="dostar({{$item.id}});"><i class="fa fa-star"></i></button> + </div> + {{/if}} {{if $item.attachments}} <div class="btn-group"> <button type="button" class="btn btn-outline-secondary btn-sm wall-item-like dropdown-toggle" data-toggle="dropdown" id="attachment-menu-{{$item.id}}"><i class="fa fa-paperclip"></i></button> |