mirror of
https://github.com/twisterarmy/twister-html.git
synced 2025-03-11 21:11:02 +00:00
Merge pull request #363 from erqan/last-activity
peers' latest activity (status) time in 'who to follow' lists
This commit is contained in:
commit
a9265289ec
@ -890,17 +890,20 @@ textarea.splited-post {
|
||||
color: #e34f42;
|
||||
}
|
||||
|
||||
.followers
|
||||
{
|
||||
.followers,
|
||||
.latest-activity {
|
||||
font-size: 12px;
|
||||
color: rgba( 0, 0, 0, .6 );
|
||||
margin-left: 58px;
|
||||
}
|
||||
.followed-by
|
||||
{
|
||||
|
||||
.followed-by,
|
||||
.latest-activity .time {
|
||||
color: #e34f42;
|
||||
font-size: 13px;
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
.twister-user-name,
|
||||
.twister-by-user-name
|
||||
{
|
||||
@ -2343,7 +2346,7 @@ ol.toptrends-list {
|
||||
display: inline-block;
|
||||
text-align: initial;
|
||||
width: 320px;
|
||||
height: 120px;
|
||||
height: 130px;
|
||||
margin: 2px;
|
||||
padding: 2px;
|
||||
border: solid 1px rgba(69, 71, 77, .1);
|
||||
@ -2386,6 +2389,13 @@ ol.toptrends-list {
|
||||
right: 32px;
|
||||
}
|
||||
|
||||
.following-own-modal .following-list .latest-activity {
|
||||
position: absolute;
|
||||
top: 110px;
|
||||
right: 32px;
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
/*************************************
|
||||
*********** AUTOCOMPLETING ***********
|
||||
**************************************/
|
||||
|
@ -302,6 +302,10 @@
|
||||
</a>
|
||||
</div>
|
||||
<a class="twister-user-remove">×</a>
|
||||
<div class="latest-activity" data-screen-name="" data-id="" data-time="0">
|
||||
<span class="label">Last activity</span>
|
||||
<span class="time"></span>
|
||||
</div>
|
||||
<button class="follow">Follow</button>
|
||||
</div>
|
||||
</li>
|
||||
@ -776,6 +780,10 @@
|
||||
<div>
|
||||
<span class="swarm-status" style="display: none;"></span>
|
||||
</div>
|
||||
<div class="latest-activity" data-screen-name="" data-id="" data-time="0">
|
||||
<span class="label">Last activity</span>
|
||||
<span class="time"></span>
|
||||
</div>
|
||||
</div>
|
||||
</li>
|
||||
</div>
|
||||
|
@ -389,6 +389,7 @@ function checkNetworkStatusAndAskRedirect(cbFunc, cbReq) {
|
||||
}
|
||||
|
||||
function timeGmtToText(t) {
|
||||
if (t == 0) return '-';
|
||||
var d = new Date(0);
|
||||
d.setUTCSeconds(t);
|
||||
return d.toString().replace(/GMT.*/g, '');
|
||||
@ -710,6 +711,7 @@ function addPeerToFollowingList(list, peerAlias) {
|
||||
.on('mouseup', {route: $.MAL.mentionsUrl(peerAlias)}, routeOnClick);
|
||||
getAvatar(peerAlias, item.find('.mini-profile-photo'));
|
||||
getFullname(peerAlias, item.find('.mini-profile-name'));
|
||||
getStatusTime(peerAlias, item.find('.latest-activity .time'));
|
||||
|
||||
if (peerAlias === defaultScreenName)
|
||||
item.find('.following-config').hide();
|
||||
@ -750,6 +752,7 @@ function fillWhoToFollowModal(list, hlist, start) {
|
||||
getFullname(utf, item.find('.twister-user-full'));
|
||||
getBioToElem(utf, item.find('.bio'));
|
||||
getFullname(followingUsers[i], item.find('.followed-by').text(followingUsers[i]));
|
||||
getStatusTime(utf, item.find('.latest-activity .time'));
|
||||
|
||||
item.find('.twister-user-remove').remove();
|
||||
|
||||
@ -872,14 +875,22 @@ function handleClickOpenProfileModal(event) {
|
||||
}
|
||||
|
||||
function handleClickOpenConversation(event) {
|
||||
event.preventDefault();
|
||||
event.stopPropagation();
|
||||
var elem = $(event.target).closest(event.data.feeder);
|
||||
if (!elem.length) {
|
||||
muteEvent(event, true);
|
||||
return;
|
||||
}
|
||||
|
||||
var elem = $(event.target);
|
||||
var postData = elem.closest(event.data.feeder);
|
||||
var post = {
|
||||
writer: elem.attr('data-screen-name'),
|
||||
id: elem.attr('data-id')
|
||||
};
|
||||
if (!post.writer || !post.id) {
|
||||
muteEvent(event, true);
|
||||
return;
|
||||
}
|
||||
|
||||
event.data.route = '#conversation?post=' + postData.attr('data-screen-name')
|
||||
+ ':post' + postData.attr('data-id');
|
||||
event.data.route = '#conversation?post=' + post.writer + ':post' + post.id;
|
||||
routeOnClick(event);
|
||||
}
|
||||
|
||||
@ -2620,6 +2631,9 @@ function initInterfaceCommon() {
|
||||
displayQueryPending($('.hashtag-modal .postboard-posts'));
|
||||
});
|
||||
|
||||
getElem('.latest-activity', true).on('mouseup',
|
||||
{feeder: '.latest-activity'}, handleClickOpenConversation);
|
||||
|
||||
replaceDashboards();
|
||||
$(window).resize(replaceDashboards);
|
||||
|
||||
|
@ -366,7 +366,8 @@ if(preferredLanguage == "en"){
|
||||
"users_favs": "Favorites of @%{username}",
|
||||
"Favorites": "Favorites",
|
||||
"You have to log in to favorite messages.": "You have to log in to favorite messages.",
|
||||
"fav_this": "Is it for you only?"
|
||||
"fav_this": "Is it for you only?",
|
||||
"Last activity": "Last activity"
|
||||
};
|
||||
}
|
||||
if(preferredLanguage == "es"){
|
||||
@ -705,7 +706,8 @@ if(preferredLanguage == "es"){
|
||||
"users_favs": "Favorites of @%{username}",
|
||||
"Favorites": "Favorites",
|
||||
"You have to log in to favorite messages.": "You have to log in to favorite messages.",
|
||||
"fav_this": "Is it for you only?"
|
||||
"fav_this": "Is it for you only?",
|
||||
"Last activity": "Last activity"
|
||||
};
|
||||
}
|
||||
|
||||
@ -1043,7 +1045,8 @@ if(preferredLanguage == "uk"){
|
||||
"users_favs": "Favorites of @%{username}",
|
||||
"Favorites": "Favorites",
|
||||
"You have to log in to favorite messages.": "You have to log in to favorite messages.",
|
||||
"fav_this": "Is it for you only?"
|
||||
"fav_this": "Is it for you only?",
|
||||
"Last activity": "Last activity"
|
||||
};
|
||||
}
|
||||
|
||||
@ -1386,7 +1389,8 @@ if(preferredLanguage == "zh-CN"){
|
||||
"users_favs": "Favorites of @%{username}",
|
||||
"Favorites": "Favorites",
|
||||
"You have to log in to favorite messages.": "You have to log in to favorite messages.",
|
||||
"fav_this": "Is it for you only?"
|
||||
"fav_this": "Is it for you only?",
|
||||
"Last activity": "Last activity"
|
||||
};
|
||||
}
|
||||
|
||||
@ -1726,7 +1730,8 @@ if(preferredLanguage == "nl"){
|
||||
"users_favs": "Favorites of @%{username}",
|
||||
"Favorites": "Favorites",
|
||||
"You have to log in to favorite messages.": "You have to log in to favorite messages.",
|
||||
"fav_this": "Is it for you only?"
|
||||
"fav_this": "Is it for you only?",
|
||||
"Last activity": "Last activity"
|
||||
};
|
||||
}
|
||||
|
||||
@ -2064,7 +2069,8 @@ if(preferredLanguage == "it"){
|
||||
"users_favs": "Favorites of @%{username}",
|
||||
"Favorites": "Favorites",
|
||||
"You have to log in to favorite messages.": "You have to log in to favorite messages.",
|
||||
"fav_this": "Is it for you only?"
|
||||
"fav_this": "Is it for you only?",
|
||||
"Last activity": "Last activity"
|
||||
};
|
||||
}
|
||||
|
||||
@ -2403,8 +2409,8 @@ if(preferredLanguage == "fr"){
|
||||
"No favs here because you are not logged in." : "No favs here because you are not logged in.",
|
||||
"users_favs": "Favorites of @%{username}",
|
||||
"Favorites": "Favorites",
|
||||
"You have to log in to favorite messages.": "You have to log in to favorite messages."
|
||||
|
||||
"You have to log in to favorite messages.": "You have to log in to favorite messages.",
|
||||
"Last activity": "Last activity"
|
||||
};
|
||||
}
|
||||
|
||||
@ -2750,7 +2756,8 @@ if(preferredLanguage == "ru"){
|
||||
"users_favs": "Favorites of @%{username}",
|
||||
"Favorites": "Favorites",
|
||||
"You have to log in to favorite messages.": "You have to log in to favorite messages.",
|
||||
"fav_this": "Is it for you only?"
|
||||
"fav_this": "Is it for you only?",
|
||||
"Last activity": "Last activity"
|
||||
};
|
||||
}
|
||||
|
||||
@ -3092,7 +3099,8 @@ if(preferredLanguage == "de"){
|
||||
"users_favs": "Favorites of @%{username}",
|
||||
"Favorites": "Favorites",
|
||||
"You have to log in to favorite messages.": "You have to log in to favorite messages.",
|
||||
"fav_this": "Is it for you only?"
|
||||
"fav_this": "Is it for you only?",
|
||||
"Last activity": "Last activity"
|
||||
};
|
||||
}
|
||||
|
||||
@ -3429,7 +3437,8 @@ if(preferredLanguage == "ja"){
|
||||
"users_favs": "Favorites of @%{username}",
|
||||
"Favorites": "Favorites",
|
||||
"You have to log in to favorite messages.": "You have to log in to favorite messages.",
|
||||
"fav_this": "Is it for you only?"
|
||||
"fav_this": "Is it for you only?",
|
||||
"Last activity": "Last activity"
|
||||
};
|
||||
}
|
||||
|
||||
@ -3772,7 +3781,8 @@ if(preferredLanguage == "pt-BR"){
|
||||
"users_favs": "Favorites of @%{username}",
|
||||
"Favorites": "Favorites",
|
||||
"You have to log in to favorite messages.": "You have to log in to favorite messages.",
|
||||
"fav_this": "Is it for you only?"
|
||||
"fav_this": "Is it for you only?",
|
||||
"Last activity": "Last activity"
|
||||
};
|
||||
}
|
||||
|
||||
@ -4111,7 +4121,8 @@ if(preferredLanguage == "tr"){
|
||||
"users_favs": "@%{username} kullanıcısının favorileri",
|
||||
"Favorites": "Favoriler",
|
||||
"You have to log in to favorite messages.": "İletileri favorine eklemek için giriş yapmalısın.",
|
||||
"fav_this": "Sana özel mi?"
|
||||
"fav_this": "Sana özel mi?",
|
||||
"Last activity": "Son etkinlik"
|
||||
};
|
||||
}
|
||||
|
||||
@ -4453,7 +4464,8 @@ if(preferredLanguage == "cs"){
|
||||
"users_favs": "Favorites of @%{username}",
|
||||
"Favorites": "Favorites",
|
||||
"You have to log in to favorite messages.": "You have to log in to favorite messages.",
|
||||
"fav_this": "Is it for you only?"
|
||||
"fav_this": "Is it for you only?",
|
||||
"Last activity": "Last activity"
|
||||
};
|
||||
}
|
||||
|
||||
|
@ -515,6 +515,7 @@ function processWhoToFollowSuggestion(suggestion, followedBy) {
|
||||
|
||||
getAvatar(suggestion, item.find('.twister-user-photo'));
|
||||
getFullname(followedBy, item.find('.followed-by').text(followedBy));
|
||||
getStatusTime(suggestion, item.find('.latest-activity .time'));
|
||||
|
||||
item.find('.twister-user-remove').on('click', function() {
|
||||
item.remove();
|
||||
|
@ -522,6 +522,22 @@ function getPostsCount(peerAlias, elem) {
|
||||
);
|
||||
}
|
||||
|
||||
function getStatusTime(peerAlias, elem) {
|
||||
dhtget(peerAlias, 'status', 's',
|
||||
function (req, ret) {
|
||||
if (!ret || !ret.userpost)
|
||||
return;
|
||||
|
||||
req.elem.text(timeGmtToText(ret.userpost.time))
|
||||
.closest('.latest-activity')
|
||||
.attr('data-screen-name', req.peerAlias)
|
||||
.attr('data-id', ret.userpost.k)
|
||||
.attr('data-time', ret.userpost.time)
|
||||
;
|
||||
}, {peerAlias: peerAlias, elem: elem}
|
||||
);
|
||||
}
|
||||
|
||||
function getPostMaxAvailability(peerAlias, k, cbFunc, cbReq) {
|
||||
twisterRpc('getpiecemaxseen', [peerAlias, k],
|
||||
function(req, ret) {
|
||||
|
@ -1072,16 +1072,19 @@ textarea.splited-post {
|
||||
opacity: .8;
|
||||
}
|
||||
|
||||
.followers
|
||||
{
|
||||
.followers,
|
||||
.latest-activity {
|
||||
font-size: 12px;
|
||||
color: rgba( 0, 0, 0, .6 );
|
||||
margin-left: 58px;
|
||||
}
|
||||
.followed-by
|
||||
{
|
||||
|
||||
.followed-by,
|
||||
.latest-activity .time {
|
||||
font-size: 13px;
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
.twister-user-name,
|
||||
.twister-by-user-name
|
||||
{
|
||||
@ -2767,7 +2770,7 @@ textarea.splited-post {
|
||||
display: inline-block;
|
||||
text-align: initial;
|
||||
width: 320px;
|
||||
height: 120px;
|
||||
height: 130px;
|
||||
margin: 2px;
|
||||
padding: 2px;
|
||||
border: solid 1px rgba(69, 71, 77, .1);
|
||||
@ -2813,6 +2816,13 @@ textarea.splited-post {
|
||||
right: 32px;
|
||||
}
|
||||
|
||||
.following-own-modal .following-list .latest-activity {
|
||||
position: absolute;
|
||||
top: 110px;
|
||||
right: 32px;
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
.gifCheckBox {
|
||||
float: right;
|
||||
vertical-align: middle;
|
||||
|
@ -2209,7 +2209,8 @@ textarea.splited-post {
|
||||
}
|
||||
|
||||
/* line 447, ../sass/style.sass */
|
||||
.followers {
|
||||
.followers,
|
||||
.latest-activity {
|
||||
font-size: 12px;
|
||||
color: #66686B;
|
||||
}
|
||||
@ -2219,13 +2220,22 @@ textarea.splited-post {
|
||||
}
|
||||
|
||||
/* line 453, ../sass/style.sass */
|
||||
.followed-by {
|
||||
.followed-by,
|
||||
.latest-activity {
|
||||
color: #aaa;
|
||||
font-size: 12px;
|
||||
cursor: pointer;
|
||||
display: block;
|
||||
}
|
||||
|
||||
.who-to-follow .latest-activity {
|
||||
margin-bottom: 8px;
|
||||
}
|
||||
|
||||
.who-to-follow .latest-activity .label {
|
||||
display: none;
|
||||
}
|
||||
|
||||
/* line 459, ../sass/style.sass */
|
||||
.twister-user-name, .twister-by-user-name {
|
||||
font-weight: bold;
|
||||
@ -3356,7 +3366,7 @@ ol.toptrends-list a:hover {
|
||||
.following-own-modal .following-list > li {
|
||||
display: inline-block;
|
||||
width: 320px;
|
||||
height: 160px;
|
||||
height: 184px;
|
||||
margin: 2px;
|
||||
padding: 2px;
|
||||
border: solid 1px rgba(69, 71, 77, .1);
|
||||
@ -3456,6 +3466,10 @@ ol.toptrends-list a:hover {
|
||||
display: block;
|
||||
}
|
||||
|
||||
.following-own-modal .following-list .latest-activity {
|
||||
font-size: 11px;
|
||||
}
|
||||
|
||||
/********** AUTOCOMPLETING *********/
|
||||
|
||||
/* line 1087, ../sass/style.sass */
|
||||
|
Loading…
x
Reference in New Issue
Block a user