git-svn-id: http://svn.research-infrastructures.eu/public/d4science/gcube/trunk/portlets/user/message-conversations@154657 82a268e6-3cf1-43bd-a215-b396298e98cf
This commit is contained in:
parent
740bb2b707
commit
f7887a22ab
|
@ -122,75 +122,75 @@ public class ConvServiceImpl extends RemoteServiceServlet implements MessageServ
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
List<WorkspaceMessage> listMessages = null;
|
List<WorkspaceMessage> listMessages = null;
|
||||||
try {
|
|
||||||
listMessages = (sent) ?
|
|
||||||
workspace.getWorkspaceMessageManager().getSentMessages() : workspace.getWorkspaceMessageManager().getReceivedMessages();
|
|
||||||
} catch (Exception e) {
|
|
||||||
_log.error("Could not read messages of " + user.getFullname());
|
|
||||||
return null;
|
|
||||||
}
|
|
||||||
_log.debug("Got messages of " + user.getFullname() + " how many? " + listMessages.size());
|
|
||||||
//the messages are returned from the oldest to the new one, so we reverse them
|
|
||||||
Collections.reverse(listMessages);
|
|
||||||
LiferayUserManager um = new LiferayUserManager();
|
|
||||||
|
|
||||||
for (WorkspaceMessage m : listMessages) {
|
listMessages = (sent) ?
|
||||||
String previewBody = m.getBody().length() > 80 ? m.getBody().substring(0, 79) + " ..." : m.getBody();
|
workspace.getWorkspaceMessageManager().getSentMessages() : workspace.getWorkspaceMessageManager().getReceivedMessages();
|
||||||
MessageUserModel mu = null;
|
if (listMessages == null) {
|
||||||
GCubeUser sender = null;
|
_log.error("listMessages is null, Could not read messages of " + user.getFullname());
|
||||||
try {
|
return null;
|
||||||
if (sent) {
|
}
|
||||||
if (m.getAddresses().size() < 2) {
|
_log.debug("Got messages of " + user.getFullname() + " how many? " + listMessages.size());
|
||||||
GCubeUser recipient = um.getUserByUsername(m.getAddresses().get(0));
|
//the messages are returned from the oldest to the new one, so we reverse them
|
||||||
mu = new MessageUserModel(recipient.getUserId(), recipient.getUsername(), recipient.getFullname(), recipient.getUserAvatarURL(), "", "");
|
Collections.reverse(listMessages);
|
||||||
} else {
|
LiferayUserManager um = new LiferayUserManager();
|
||||||
//we have at least 2 recipients
|
|
||||||
GCubeUser recipient1 = um.getUserByUsername(m.getAddresses().get(0));
|
|
||||||
GCubeUser recipient2 = um.getUserByUsername(m.getAddresses().get(1));
|
|
||||||
String label2Display = recipient1.getFirstName() + " & " + recipient2.getFirstName();
|
|
||||||
if (m.getAddresses().size() > 2)
|
|
||||||
label2Display += " & ...";
|
|
||||||
mu = new MessageUserModel(recipient1.getUserId(), recipient1.getUsername(), label2Display, null, "", "");
|
|
||||||
|
|
||||||
|
for (WorkspaceMessage m : listMessages) {
|
||||||
|
String previewBody = m.getBody().length() > 80 ? m.getBody().substring(0, 79) + " ..." : m.getBody();
|
||||||
|
MessageUserModel mu = null;
|
||||||
|
GCubeUser sender = null;
|
||||||
|
try {
|
||||||
|
if (sent) {
|
||||||
|
if (m.getAddresses().size() < 2) {
|
||||||
|
GCubeUser recipient = um.getUserByUsername(m.getAddresses().get(0));
|
||||||
|
mu = new MessageUserModel(recipient.getUserId(), recipient.getUsername(), recipient.getFullname(), recipient.getUserAvatarURL(), "", "");
|
||||||
|
} else {
|
||||||
|
//we have at least 2 recipients
|
||||||
|
GCubeUser recipient1 = um.getUserByUsername(m.getAddresses().get(0));
|
||||||
|
GCubeUser recipient2 = um.getUserByUsername(m.getAddresses().get(1));
|
||||||
|
String label2Display = recipient1.getFirstName() + " & " + recipient2.getFirstName();
|
||||||
|
if (m.getAddresses().size() > 2)
|
||||||
|
label2Display += " & ...";
|
||||||
|
mu = new MessageUserModel(recipient1.getUserId(), recipient1.getUsername(), label2Display, null, "", "");
|
||||||
|
|
||||||
|
}
|
||||||
|
} else { //received message
|
||||||
|
sender = um.getUserByUsername(m.getSender().getPortalLogin());
|
||||||
|
mu = new MessageUserModel(sender.getUserId(), sender.getUsername(), sender.getFullname(), sender.getUserAvatarURL(), "", "");
|
||||||
|
}
|
||||||
|
} catch (Exception ex) {
|
||||||
|
if (!sent) {
|
||||||
|
mu = new MessageUserModel(m.getSender().getPortalLogin());
|
||||||
|
} else {
|
||||||
|
mu = new MessageUserModel(m.getAddresses().get(0));
|
||||||
|
}
|
||||||
}
|
}
|
||||||
} else { //received message
|
boolean hasAttachments = !m.getAttachmentsIds().isEmpty();
|
||||||
sender = um.getUserByUsername(m.getSender().getPortalLogin());
|
if (!sent) { //received messages
|
||||||
mu = new MessageUserModel(sender.getUserId(), sender.getUsername(), sender.getFullname(), sender.getUserAvatarURL(), "", "");
|
|
||||||
}
|
|
||||||
} catch (Exception ex) {
|
|
||||||
if (!sent) {
|
|
||||||
mu = new MessageUserModel(m.getSender().getPortalLogin());
|
|
||||||
} else {
|
|
||||||
mu = new MessageUserModel(m.getAddresses().get(0));
|
|
||||||
}
|
|
||||||
}
|
|
||||||
boolean hasAttachments = !m.getAttachmentsIds().isEmpty();
|
|
||||||
if (!sent) { //received messages
|
|
||||||
|
|
||||||
toReturn.add(new ConvMessage(
|
toReturn.add(new ConvMessage(
|
||||||
m.getId(),
|
m.getId(),
|
||||||
m.getSubject(),
|
m.getSubject(),
|
||||||
mu,
|
mu,
|
||||||
new Date(m.getSendTime().getTimeInMillis()),
|
new Date(m.getSendTime().getTimeInMillis()),
|
||||||
previewBody,
|
previewBody,
|
||||||
m.isRead(),
|
m.isRead(),
|
||||||
hasAttachments));
|
hasAttachments));
|
||||||
} else { //sent messages
|
} else { //sent messages
|
||||||
ArrayList<MessageUserModel> recipients = new ArrayList<>();
|
ArrayList<MessageUserModel> recipients = new ArrayList<>();
|
||||||
for (String rec : m.getAddresses()) {
|
for (String rec : m.getAddresses()) {
|
||||||
recipients.add(new MessageUserModel(rec));
|
recipients.add(new MessageUserModel(rec));
|
||||||
|
}
|
||||||
|
toReturn.add(new ConvMessage(
|
||||||
|
m.getId(),
|
||||||
|
m.getSubject(),
|
||||||
|
mu,
|
||||||
|
recipients,
|
||||||
|
new Date(m.getSendTime().getTimeInMillis()),
|
||||||
|
previewBody,
|
||||||
|
m.isRead(),
|
||||||
|
hasAttachments));
|
||||||
|
}
|
||||||
}
|
}
|
||||||
toReturn.add(new ConvMessage(
|
|
||||||
m.getId(),
|
|
||||||
m.getSubject(),
|
|
||||||
mu,
|
|
||||||
recipients,
|
|
||||||
new Date(m.getSendTime().getTimeInMillis()),
|
|
||||||
previewBody,
|
|
||||||
m.isRead(),
|
|
||||||
hasAttachments));
|
|
||||||
}
|
|
||||||
}
|
|
||||||
} catch (Exception e) {
|
} catch (Exception e) {
|
||||||
e.printStackTrace();
|
e.printStackTrace();
|
||||||
return null;
|
return null;
|
||||||
|
|
Loading…
Reference in New Issue