Browse Source

Fixed lots of mobile issues

Moved all user / group photos to rounded with initials placeholder
master
Igor Zhukov 9 years ago
parent
commit
e66c02e89c
  1. 17
      app/js/controllers.js
  2. 31
      app/js/directives.js
  3. 5
      app/js/messages_manager.js
  4. 54
      app/js/services.js
  5. 13
      app/less/app.less
  6. 21
      app/less/mobile.less
  7. 11
      app/partials/mobile/channel_modal.html
  8. 11
      app/partials/mobile/chat_modal.html
  9. 2
      app/partials/mobile/contacts_modal.html
  10. 9
      app/partials/mobile/dialog.html
  11. 9
      app/partials/mobile/head.html
  12. 4
      app/partials/mobile/im.html
  13. 2
      app/partials/mobile/message_attach_contact.html
  14. 8
      app/partials/mobile/peer_select.html
  15. 9
      app/partials/mobile/settings_modal.html
  16. 8
      app/partials/mobile/user_modal.html

17
app/js/controllers.js

@ -1153,13 +1153,11 @@ angular.module('myApp.controllers', ['myApp.i18n']) @@ -1153,13 +1153,11 @@ angular.module('myApp.controllers', ['myApp.i18n'])
safeReplaceObject($scope.historyPeer, {
id: peerID,
data: peerData,
photo: AppPeersManager.getPeerPhoto(peerID, 'User', 'Group')
data: peerData
});
MtpApiManager.getUserID().then(function (id) {
$scope.ownID = id;
$scope.ownPhoto = AppUsersManager.getUserPhoto(id, 'User');
});
if (preload) {
@ -2916,7 +2914,6 @@ angular.module('myApp.controllers', ['myApp.i18n']) @@ -2916,7 +2914,6 @@ angular.module('myApp.controllers', ['myApp.i18n'])
var peerString = AppUsersManager.getUserString($scope.userID);
$scope.user = AppUsersManager.getUser($scope.userID);
$scope.userPhoto = AppUsersManager.getUserPhoto($scope.userID, 'User');
$scope.blocked = false;
$scope.settings = {notifications: true};
@ -3333,7 +3330,6 @@ angular.module('myApp.controllers', ['myApp.i18n']) @@ -3333,7 +3330,6 @@ angular.module('myApp.controllers', ['myApp.i18n'])
MtpApiManager.getUserID().then(function (id) {
$scope.profile = AppUsersManager.getUser(id);
$scope.photo = AppUsersManager.getUserPhoto(id, 'User');
});
MtpApiManager.invokeApi('users.getFullUser', {
@ -3427,7 +3423,7 @@ angular.module('myApp.controllers', ['myApp.i18n']) @@ -3427,7 +3423,7 @@ angular.module('myApp.controllers', ['myApp.i18n'])
previous: true
}
});
$scope.photo = AppUsersManager.getUserPhoto(id, 'User');
$scope.photo = {};
});
});
})['finally'](function () {
@ -3452,7 +3448,7 @@ angular.module('myApp.controllers', ['myApp.i18n']) @@ -3452,7 +3448,7 @@ angular.module('myApp.controllers', ['myApp.i18n'])
previous: true
}
});
$scope.photo = AppUsersManager.getUserPhoto(id, 'User');
$scope.photo = {};
});
})['finally'](function () {
delete $scope.photo.updating;
@ -3969,8 +3965,7 @@ angular.module('myApp.controllers', ['myApp.i18n']) @@ -3969,8 +3965,7 @@ angular.module('myApp.controllers', ['myApp.i18n'])
angular.forEach(contactsList, function(userID) {
var contact = {
userID: userID,
user: AppUsersManager.getUser(userID),
userPhoto: AppUsersManager.getUserPhoto(userID, 'User')
user: AppUsersManager.getUser(userID)
}
doneIDs.push(userID);
$scope.contacts.push(contact);
@ -4238,7 +4233,7 @@ angular.module('myApp.controllers', ['myApp.i18n']) @@ -4238,7 +4233,7 @@ angular.module('myApp.controllers', ['myApp.i18n'])
}
})
.controller('ChatInviteLinkModalController', function (_, $scope, $timeout, $modalInstance, AppChatsManager, ErrorService) {
.controller('ChatInviteLinkModalController', function (_, $scope, $timeout, $modalInstance, AppChatsManager, AppProfileManager, ErrorService) {
$scope.exportedInvite = {link: _('group_invite_link_loading_raw')};
@ -4260,7 +4255,7 @@ angular.module('myApp.controllers', ['myApp.i18n']) @@ -4260,7 +4255,7 @@ angular.module('myApp.controllers', ['myApp.i18n'])
if (force) {
$scope.exportedInvite.revoking = true;
}
AppChatsManager.getChatInviteLink($scope.chatID, force).then(function (link) {
AppProfileManager.getChatInviteLink($scope.chatID, force).then(function (link) {
$scope.exportedInvite = {link: link, canRevoke: true};
selectLink();

31
app/js/directives.js

@ -2608,37 +2608,6 @@ angular.module('myApp.directives', ['myApp.filters']) @@ -2608,37 +2608,6 @@ angular.module('myApp.directives', ['myApp.filters'])
}
})
.directive('myUserPhotolink', function (AppUsersManager) {
return {
link: link,
template: '<img my-load-thumb thumb="photo" /><i class="icon icon-online" ng-if="::showStatus || false" ng-show="user.status._ == \'userStatusOnline\'"></i>'
};
function link($scope, element, attrs) {
var userID = $scope.$eval(attrs.myUserPhotolink);
$scope.photo = AppUsersManager.getUserPhoto(userID, 'User');
if ($scope.showStatus = attrs.status && $scope.$eval(attrs.status)) {
$scope.user = AppUsersManager.getUser(userID);
}
if (element[0].tagName == 'A') {
element.on('click', function (e) {
AppUsersManager.openUser(userID, attrs.userOverride && $scope.$eval(attrs.userOverride));
});
}
if (attrs.imgClass) {
$(element[0].firstChild).addClass(attrs.imgClass)
}
}
})
.directive('myPeerLink', function (AppChatsManager, AppUsersManager) {
return {

5
app/js/messages_manager.js

@ -1670,7 +1670,6 @@ angular.module('myApp.services') @@ -1670,7 +1670,6 @@ angular.module('myApp.services')
message.peerID = getMessagePeer(message);
message.peerData = AppPeersManager.getPeer(message.peerID);
message.peerString = AppPeersManager.getPeerString(message.peerID);
message.peerPhoto = AppPeersManager.getPeerPhoto(message.peerID, 'User', 'Group');
message.unreadCount = unreadCount;
if (message._ == 'messageService' && message.action.user_id) {
@ -2056,7 +2055,7 @@ angular.module('myApp.services') @@ -2056,7 +2055,7 @@ angular.module('myApp.services')
if (peerID > 0) {
var fromUser = AppUsersManager.getUser(message.from_id);
var fromPhoto = AppUsersManager.getUserPhoto(message.from_id, 'User');
var fromPhoto = AppUsersManager.getUserPhoto(message.from_id);
notification.title = (fromUser.first_name || '') +
(fromUser.first_name && fromUser.last_name ? ' ' : '') +
@ -2079,7 +2078,7 @@ angular.module('myApp.services') @@ -2079,7 +2078,7 @@ angular.module('myApp.services')
notification.title;
}
notificationPhoto = AppChatsManager.getChatPhoto(-peerID, 'Group');
notificationPhoto = AppChatsManager.getChatPhoto(-peerID);
peerString = AppChatsManager.getChatString(-peerID);
}

54
app/js/services.js

@ -188,7 +188,7 @@ angular.module('myApp.services', ['myApp.i18n', 'izhukov.utils']) @@ -188,7 +188,7 @@ angular.module('myApp.services', ['myApp.i18n', 'izhukov.utils'])
return angular.isObject(users[id]);
}
function getUserPhoto(id, placeholder) {
function getUserPhoto(id) {
var user = getUser(id);
if (id == 333000) {
@ -203,7 +203,7 @@ angular.module('myApp.services', ['myApp.i18n', 'izhukov.utils']) @@ -203,7 +203,7 @@ angular.module('myApp.services', ['myApp.i18n', 'izhukov.utils'])
return {
num: user.num,
placeholder: 'img/placeholders/' + placeholder + 'Avatar' + user.num + '@2x.png',
placeholder: 'img/placeholders/UserAvatar' + user.num + '@2x.png',
location: cachedPhotoLocations[id]
};
}
@ -591,7 +591,7 @@ angular.module('myApp.services', ['myApp.i18n', 'izhukov.utils']) @@ -591,7 +591,7 @@ angular.module('myApp.services', ['myApp.i18n', 'izhukov.utils'])
var lastWord = titleWords.pop();
apiChat.initials = firstWord.charAt(0) + (lastWord ? lastWord.charAt(0) : firstWord.charAt(1));
apiChat.num = (Math.abs(apiChat.id >> 1) % (Config.Mobile ? 4 : 8)) + 1;
apiChat.num = (Math.abs(apiChat.id >> 1) % 8) + 1;
if (apiChat.username) {
var searchUsername = SearchIndexManager.cleanUsername(apiChat.username);
@ -646,29 +646,11 @@ angular.module('myApp.services', ['myApp.i18n', 'izhukov.utils']) @@ -646,29 +646,11 @@ angular.module('myApp.services', ['myApp.i18n', 'izhukov.utils'])
}
}
function getChatInviteLink (id, force) {
return getChatFull(id).then(function (chatFull) {
if (!force &&
chatFull.exported_invite &&
chatFull.exported_invite._ == 'chatInviteExported') {
return chatFull.exported_invite.link;
}
return MtpApiManager.invokeApi('messages.exportChatInvite', {
chat_id: getChatInput(id)
}).then(function (exportedInvite) {
if (chatsFull[id] !== undefined) {
chatsFull[id].exported_invite = exportedInvite;
}
return exportedInvite.link;
});
});
}
function hasChat (id) {
return angular.isObject(chats[id]);
}
function getChatPhoto(id, placeholder) {
function getChatPhoto(id) {
var chat = getChat(id);
if (cachedPhotoLocations[id] === undefined) {
@ -676,7 +658,7 @@ angular.module('myApp.services', ['myApp.i18n', 'izhukov.utils']) @@ -676,7 +658,7 @@ angular.module('myApp.services', ['myApp.i18n', 'izhukov.utils'])
}
return {
placeholder: 'img/placeholders/' + placeholder + 'Avatar' + (Config.Mobile ? chat.num : Math.ceil(chat.num / 2)) + '@2x.png',
placeholder: 'img/placeholders/GroupAvatar' + Math.ceil(chat.num / 2) + '@2x.png',
location: cachedPhotoLocations[id]
};
}
@ -767,7 +749,6 @@ angular.module('myApp.services', ['myApp.i18n', 'izhukov.utils']) @@ -767,7 +749,6 @@ angular.module('myApp.services', ['myApp.i18n', 'izhukov.utils'])
getChannelInput: getChannelInput,
getChatPhoto: getChatPhoto,
getChatString: getChatString,
getChatInviteLink: getChatInviteLink,
resolveUsername: resolveUsername,
hasChat: hasChat,
wrapForFull: wrapForFull,
@ -897,10 +878,10 @@ angular.module('myApp.services', ['myApp.i18n', 'izhukov.utils']) @@ -897,10 +878,10 @@ angular.module('myApp.services', ['myApp.i18n', 'izhukov.utils'])
: AppChatsManager.getChat(-peerID);
}
function getPeerPhoto (peerID, userPlaceholder, chatPlaceholder) {
function getPeerPhoto (peerID) {
return peerID > 0
? AppUsersManager.getUserPhoto(peerID, userPlaceholder)
: AppChatsManager.getChatPhoto(-peerID, chatPlaceholder)
? AppUsersManager.getUserPhoto(peerID)
: AppChatsManager.getChatPhoto(-peerID)
}
function isChannel (peerID) {
@ -1035,6 +1016,24 @@ angular.module('myApp.services', ['myApp.i18n', 'izhukov.utils']) @@ -1035,6 +1016,24 @@ angular.module('myApp.services', ['myApp.i18n', 'izhukov.utils'])
});
}
function getChatInviteLink (id, force) {
return getChatFull(id).then(function (chatFull) {
if (!force &&
chatFull.exported_invite &&
chatFull.exported_invite._ == 'chatInviteExported') {
return chatFull.exported_invite.link;
}
return MtpApiManager.invokeApi('messages.exportChatInvite', {
chat_id: getChatInput(id)
}).then(function (exportedInvite) {
if (chatsFull[id] !== undefined) {
chatsFull[id].exported_invite = exportedInvite;
}
return exportedInvite.link;
});
});
}
function getChannelParticipants (id) {
return MtpApiManager.invokeApi('channels.getParticipants', {
channel: AppChatsManager.getChannelInput(id),
@ -1162,6 +1161,7 @@ angular.module('myApp.services', ['myApp.i18n', 'izhukov.utils']) @@ -1162,6 +1161,7 @@ angular.module('myApp.services', ['myApp.i18n', 'izhukov.utils'])
return {
getPeerBots: getPeerBots,
getProfile: getProfile,
getChatInviteLink: getChatInviteLink,
getChatFull: getChatFull,
getChannelFull: getChannelFull
}

13
app/less/app.less

@ -3027,7 +3027,12 @@ a.contacts_modal_search_clear { @@ -3027,7 +3027,12 @@ a.contacts_modal_search_clear {
height: 40px;
margin-right: 10px;
overflow: hidden;
border-radius: 2px;
border-radius: 20px;
.peer_initials {
line-height: 40px;
font-size: 15px;
}
}
.contacts_modal_contact_status {
color: #999;
@ -3073,13 +3078,17 @@ a.contacts_modal_contact:hover .md_modal_list_peer_description, @@ -3073,13 +3078,17 @@ a.contacts_modal_contact:hover .md_modal_list_peer_description,
width: 40px;
height: 40px;
margin-right: 10px;
border-radius: 2px;
border-radius: 20px;
overflow: hidden;
}
img& {
width: 40px;
height: 40px;
}
.peer_initials {
line-height: 40px;
font-size: 15px;
}
}
.chat_modal_members_forbidden {

21
app/less/mobile.less

@ -405,6 +405,13 @@ html { @@ -405,6 +405,13 @@ html {
overflow: hidden;
}
.peer_initials {
line-height: 36px;
font-size: 15px;
border-radius: 18px;
overflow: hidden;
}
.navbar_peer_not_selected & {
display: none;
}
@ -1010,6 +1017,11 @@ a.im_dialog { @@ -1010,6 +1017,11 @@ a.im_dialog {
div& {
margin: 0 12px 0 0;
.peer_initials {
line-height: 54px;
font-size: 18px;
}
}
}
@ -1104,6 +1116,10 @@ a.im_message_fwd_author { @@ -1104,6 +1116,10 @@ a.im_message_fwd_author {
padding: 0;
}
&.md_simple_modal_window .modal-dialog {
max-width: none;
}
.modal-content {
border-radius: 0;
box-shadow: none;
@ -1141,6 +1157,11 @@ a.im_message_fwd_author { @@ -1141,6 +1157,11 @@ a.im_message_fwd_author {
width: 64px;
height: 64px;
margin-right: 14px;
.peer_initials {
line-height: 64px;
font-size: 18px;
}
}
&_chat_modal_image {

11
app/partials/mobile/channel_modal.html

@ -49,14 +49,7 @@ @@ -49,14 +49,7 @@
<div class="mobile_user_modal_photo_profile_wrap">
<a href="" ng-click="openPhoto(chatFull.chat_photo.id, {p: -chatFull.chat.id})" class="mobile_user_modal_image_wrap pull-left" ng-class="{disabled: !chatFull.chat.photo.photo_small}">
<img
class="mobile_user_modal_image mobile_chat_modal_image"
my-load-thumb
watch="true"
thumb="chatFull.thumb"
/>
</a>
<a ng-click="openPhoto(chatFull.chat_photo.id, {p: -chatFull.chat.id})" class="mobile_user_modal_image_wrap pull-left" my-peer-photolink="::-chatFull.chat.id" img-class="mobile_user_modal_image mobile_chat_modal_image" no-open="true" watch="true" ng-class="{disabled: !chatFull.chat.photo.photo_small}" ng-disabled="!chatFull.chat.photo.photo_small"></a>
<div class="mobile_user_modal_info_wrap clearfix">
<h4 class="mobile_user_modal_header" my-peer-link="-chatFull.chat.id"></h4>
@ -122,7 +115,7 @@ @@ -122,7 +115,7 @@
<a ng-if="participant.canKick" ng-click="kickFromChannel(participant.user_id)" class="chat_modal_participant_kick pull-right" my-i18n="group_modal_members_kick"></a>
<a ng-if="participant.canLeave" ng-click="leaveChannel()" class="chat_modal_participant_kick pull-right" my-i18n="group_modal_menu_leave"></a>
<a class="chat_modal_participant_photo pull-left" my-user-photolink="participant.user_id" img-class="chat_modal_participant_photo" status="true"></a>
<a class="chat_modal_participant_photo pull-left" my-peer-photolink="participant.user_id" img-class="chat_modal_participant_photo" status="true"></a>
<div class="chat_modal_participant_name">
<a my-peer-link="participant.user_id"></a>

11
app/partials/mobile/chat_modal.html

@ -46,14 +46,7 @@ @@ -46,14 +46,7 @@
<div class="mobile_user_modal_photo_profile_wrap">
<a href="" ng-click="openPhoto(chatFull.chat_photo.id, {p: -chatFull.chat.id})" class="mobile_user_modal_image_wrap pull-left" ng-class="{disabled: !chatFull.chat.photo.photo_small}">
<img
class="mobile_user_modal_image mobile_chat_modal_image"
my-load-thumb
watch="true"
thumb="chatFull.thumb"
/>
</a>
<a ng-click="openPhoto(chatFull.chat_photo.id, {p: -chatFull.chat.id})" class="mobile_user_modal_image_wrap pull-left" my-peer-photolink="::-chatFull.chat.id" img-class="mobile_user_modal_image mobile_chat_modal_image" no-open="true" watch="true" ng-class="{disabled: !chatFull.chat.photo.photo_small}" ng-disabled="!chatFull.chat.photo.photo_small"></a>
<div class="mobile_user_modal_info_wrap clearfix">
<h4 class="mobile_user_modal_header" my-peer-link="-chatFull.chat.id"></h4>
@ -109,7 +102,7 @@ @@ -109,7 +102,7 @@
<a ng-if="participant.canKick" ng-click="kickFromGroup(participant.user_id)" class="chat_modal_participant_kick pull-right" my-i18n="group_modal_members_kick"></a>
<a ng-if="participant.canLeave" ng-click="leaveGroup()" class="chat_modal_participant_kick pull-right" my-i18n="group_modal_menu_leave"></a>
<a class="chat_modal_participant_photo pull-left" my-user-photolink="participant.user_id" img-class="chat_modal_participant_photo" status="true"></a>
<a class="chat_modal_participant_photo pull-left" my-peer-photolink="participant.user_id" img-class="chat_modal_participant_photo" status="true"></a>
<div class="chat_modal_participant_name">
<a my-peer-link="participant.user_id"></a>

2
app/partials/mobile/contacts_modal.html

@ -81,7 +81,7 @@ @@ -81,7 +81,7 @@
<i ng-if="multiSelect" class="icon icon-contact-tick"></i>
<div class="contacts_modal_contact_photo pull-left" my-user-photolink="contact.userID" status="true" img-class="contacts_modal_contact_photo"></div>
<div class="contacts_modal_contact_photo pull-left" my-peer-photolink="contact.userID" status="true" img-class="contacts_modal_contact_photo"></div>
<div class="contacts_modal_contact_name" my-peer-link="contact.userID"></div>
<div class="contacts_modal_contact_status" ng-switch="contact.found">
<span ng-switch-when="true" ng-bind="'@' + contact.user.username"></span>

9
app/partials/mobile/dialog.html

@ -13,14 +13,7 @@ @@ -13,14 +13,7 @@
></i>
</div>
<div class="im_dialog_photo pull-left">
<img
class="im_dialog_photo"
my-load-thumb
watch="true"
thumb="dialogMessage.peerPhoto"
/>
</div>
<div class="im_dialog_photo pull-left" my-peer-photolink="::dialogMessage.peerID" img-class="im_dialog_photo" watch="true"></div>
<div class="im_dialog_message_wrap">

9
app/partials/mobile/head.html

@ -2,13 +2,8 @@ @@ -2,13 +2,8 @@
<div class="navbar navbar-static-top navbar-inverse" role="navigation" ng-class="{navbar_peer_not_selected: !curDialog.peer, navbar_offline: offline, navbar_history_select: historyState.selectActions}">
<div class="container">
<a class="navbar-peer-wrap" ng-click="showPeerInfo()">
<img
my-load-thumb
watch="true"
thumb="historyPeer.photo"
/>
</a>
<a class="navbar-peer-wrap" my-peer-photolink="historyPeer.id" peer-watch="true"></a>
<div class="navbar-toggle-wrap dropdown" dropdown>
<a class="dropdown-toggle navbar-toggle" dropdown-toggle>

4
app/partials/mobile/im.html

@ -32,7 +32,7 @@ @@ -32,7 +32,7 @@
<ul class="nav nav-pills nav-stacked">
<li class="im_dialog_wrap" ng-repeat="contact in contacts | orderBy:'user.sortName' track by contact.userID" ng-class="{active: curDialog.peerID == contact.userID}">
<a class="im_dialog" ng-mousedown="dialogSelect(contact.peerString)">
<div class="im_dialog_photo pull-left" my-user-photolink="contact.userID" img-class="im_dialog_photo" watch="true"></div>
<div class="im_dialog_photo pull-left" my-peer-photolink="contact.userID" img-class="im_dialog_photo" watch="true"></div>
<div class="im_dialog_message_wrap">
<div class="im_dialog_peer">
<span class="im_dialog_user" my-peer-link="contact.userID"></span>
@ -51,7 +51,7 @@ @@ -51,7 +51,7 @@
<ul class="nav nav-pills nav-stacked">
<li class="im_dialog_wrap" ng-repeat="foundPeer in foundPeers track by foundPeer.id" ng-class="{active: curDialog.peerID == foundPeer.id}">
<a class="im_dialog" ng-mousedown="dialogSelect(foundPeer.peerString)">
<div class="im_dialog_photo pull-left" my-user-photolink="foundPeer.id" img-class="im_dialog_photo" watch="true"></div>
<div class="im_dialog_photo pull-left" my-peer-photolink="foundPeer.id" img-class="im_dialog_photo" watch="true"></div>
<div class="im_dialog_message_wrap">
<div class="im_dialog_peer">
<span class="im_dialog_user" my-peer-link="foundPeer.id"></span>

2
app/partials/mobile/message_attach_contact.html

@ -1,5 +1,5 @@ @@ -1,5 +1,5 @@
<div>
<a ng-if="historyMessage.media.user_id > 0" class="im_message_contact_photo pull-left" my-user-photolink="historyMessage.media.user_id" img-class="im_message_contact_photo" user-override="historyMessage.media"></a>
<a ng-if="historyMessage.media.user_id > 0" class="im_message_contact_photo pull-left" my-peer-photolink="historyMessage.media.user_id" img-class="im_message_contact_photo" user-override="historyMessage.media"></a>
<div class="im_message_contact_name" ng-switch="historyMessage.media.user_id > 0">
<a ng-switch-when="true" my-peer-link="historyMessage.media.user_id" user-override="historyMessage.media"></a>
<span ng-switch-default ng-bind-html="::historyMessage.media.rFullName"></span>

8
app/partials/mobile/peer_select.html

@ -47,13 +47,7 @@ @@ -47,13 +47,7 @@
<ul class="nav nav-pills nav-stacked">
<li class="im_dialog_wrap" ng-repeat="contact in contacts | orderBy:'user.sortName' track by contact.userID" ng-class="{active: curDialog.peerID == contact.userID}">
<a class="im_dialog" ng-click="dialogSelect(contact.peerString)">
<div class="im_dialog_photo pull-left">
<img
class="im_dialog_photo"
my-load-thumb
thumb="contact.userPhoto"
/>
</div>
<div class="im_dialog_photo pull-left" my-peer-photolink="::contact.userID" img-class="im_dialog_photo" watch="true"></div>
<div class="im_dialog_message_wrap">
<div class="im_dialog_peer">
<span class="im_dialog_user" my-peer-link="contact.userID"></span>

9
app/partials/mobile/settings_modal.html

@ -59,14 +59,7 @@ @@ -59,14 +59,7 @@
<div class="mobile_user_modal_photo_profile_wrap">
<a href="" ng-click="openPhoto(profile.photo.photo_id, {p: profile.id})" class="mobile_user_modal_image_wrap pull-left" ng-class="{disabled: !user.photo.id}">
<img
class="mobile_user_modal_image"
my-load-thumb
watch="true"
thumb="photo"
/>
</a>
<a ng-click="openPhoto(profile.photo.photo_id, {p: profile.id})" class="mobile_user_modal_image_wrap pull-left" my-peer-photolink="::profile.id" img-class="mobile_user_modal_image" no-open="true" watch="true" ng-class="{disabled: !profile.photo.photo_id}" ng-disabled="!profile.photo.photo_id"></a>
<div class="mobile_user_modal_info_wrap clearfix">
<h4 class="mobile_user_modal_header" my-peer-link="profile.id"></h4>

8
app/partials/mobile/user_modal.html

@ -49,13 +49,7 @@ @@ -49,13 +49,7 @@
<div class="mobile_user_modal_photo_profile_wrap">
<a href="" ng-click="openPhoto(user.photo.photo_id, {u: user.id})" class="mobile_user_modal_image_wrap pull-left" ng-class="{disabled: !user.photo.photo_id}">
<img
class="mobile_user_modal_image"
my-load-thumb
thumb="userPhoto"
/>
</a>
<a ng-click="openPhoto(user.photo.photo_id, {u: user.id})" class="mobile_user_modal_image_wrap pull-left" my-peer-photolink="::user.id" img-class="mobile_user_modal_image" no-open="true" watch="true" ng-class="{disabled: !user.photo.photo_id}" ng-disabled="!user.photo.photo_id"></a>
<div class="mobile_user_modal_info_wrap clearfix">
<h4 class="mobile_user_modal_header" ng-bind="user | userName"></h4>

Loading…
Cancel
Save