parent
381e00b74f
commit
8fb46b0448
2 changed files with 102 additions and 6 deletions
|
@ -1021,14 +1021,14 @@ class App.Utils
|
||||||
|
|
||||||
if type.name is 'phone'
|
if type.name is 'phone'
|
||||||
|
|
||||||
# inbound call
|
# the article we are replying to is an outbound call
|
||||||
if article.sender.name is 'Agent'
|
if article.sender.name is 'Agent'
|
||||||
if article.to
|
if article.to?.match(/@/)
|
||||||
articleNew.to = article.to
|
articleNew.to = article.to
|
||||||
|
|
||||||
# outbound call
|
# the article we are replying to is an incoming call
|
||||||
else if article.to
|
else if article.from?.match(/@/)
|
||||||
articleNew.to = article.to
|
articleNew.to = article.from
|
||||||
|
|
||||||
# if sender is customer but in article.from is no email, try to get
|
# if sender is customer but in article.from is no email, try to get
|
||||||
# customers email via customer user
|
# customers email via customer user
|
||||||
|
|
|
@ -2100,7 +2100,7 @@ test('check getRecipientArticle format', function() {
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
result = {
|
result = {
|
||||||
to: customer.email,
|
to: 'customer@example.com',
|
||||||
cc: '',
|
cc: '',
|
||||||
body: '',
|
body: '',
|
||||||
in_reply_to: 'message_id3',
|
in_reply_to: 'message_id3',
|
||||||
|
@ -2915,6 +2915,102 @@ test('check getRecipientArticle format', function() {
|
||||||
verify = App.Utils.getRecipientArticle(ticket, article, article.created_by, article.type)
|
verify = App.Utils.getRecipientArticle(ticket, article, article.created_by, article.type)
|
||||||
deepEqual(verify, result)
|
deepEqual(verify, result)
|
||||||
|
|
||||||
|
// Regression test for issue #2184
|
||||||
|
// Case 1
|
||||||
|
// 1. Create a "Received Call" Ticket for article_customer
|
||||||
|
// 2. Change the Customer of the ticket to ticket_customer (but article.from still points to article_customer)
|
||||||
|
// 3. Reply to the first Article
|
||||||
|
// Recipient SHOULD BE Article.from
|
||||||
|
|
||||||
|
var article_customer = {
|
||||||
|
login: 'login',
|
||||||
|
firstname: 'article',
|
||||||
|
lastname: 'lastname',
|
||||||
|
email: 'article_customer@example.com',
|
||||||
|
}
|
||||||
|
var ticket_customer = {
|
||||||
|
login: 'login2',
|
||||||
|
firstname: 'ticket',
|
||||||
|
lastname: 'lastname',
|
||||||
|
email: 'ticket_customer@example.com',
|
||||||
|
}
|
||||||
|
ticket = {
|
||||||
|
customer: ticket_customer,
|
||||||
|
}
|
||||||
|
article = {
|
||||||
|
type: {
|
||||||
|
name: 'phone',
|
||||||
|
},
|
||||||
|
sender: {
|
||||||
|
name: 'Customer',
|
||||||
|
},
|
||||||
|
from: article_customer.email,
|
||||||
|
to: 'some group',
|
||||||
|
message_id: 'message_id22',
|
||||||
|
created_by: {
|
||||||
|
login: 'login',
|
||||||
|
firstname: 'firstname',
|
||||||
|
lastname: 'lastname',
|
||||||
|
email: 'article_created_by@example.com',
|
||||||
|
},
|
||||||
|
}
|
||||||
|
result = {
|
||||||
|
to: 'article_customer@example.com',
|
||||||
|
cc: '',
|
||||||
|
body: '',
|
||||||
|
in_reply_to: 'message_id22',
|
||||||
|
}
|
||||||
|
verify = App.Utils.getRecipientArticle(ticket, article, article.created_by, article.type)
|
||||||
|
deepEqual(verify, result)
|
||||||
|
|
||||||
|
// Regression test for issue #2184
|
||||||
|
// Case 2
|
||||||
|
// 1. Create a "Outbound Call" Ticket for article_customer
|
||||||
|
// 2. Change the Customer of the Ticket to ticket_customer (but article.to still points to article_customer)
|
||||||
|
// 3. Reply to the first Article
|
||||||
|
// Recipient SHOULD BE Article.to
|
||||||
|
|
||||||
|
article_customer = {
|
||||||
|
login: 'login',
|
||||||
|
firstname: 'article',
|
||||||
|
lastname: 'lastname',
|
||||||
|
email: 'article_customer@example.com',
|
||||||
|
}
|
||||||
|
ticket_customer = {
|
||||||
|
login: 'login2',
|
||||||
|
firstname: 'ticket',
|
||||||
|
lastname: 'lastname',
|
||||||
|
email: 'ticket_customer@example.com',
|
||||||
|
}
|
||||||
|
ticket = {
|
||||||
|
customer: ticket_customer,
|
||||||
|
}
|
||||||
|
article = {
|
||||||
|
type: {
|
||||||
|
name: 'phone',
|
||||||
|
},
|
||||||
|
sender: {
|
||||||
|
name: 'Agent',
|
||||||
|
},
|
||||||
|
from: 'agent1@example.com',
|
||||||
|
to: article_customer.email,
|
||||||
|
message_id: 'message_id23',
|
||||||
|
created_by: {
|
||||||
|
login: 'login',
|
||||||
|
firstname: 'firstname',
|
||||||
|
lastname: 'lastname',
|
||||||
|
email: 'article_created_by@example.com',
|
||||||
|
},
|
||||||
|
}
|
||||||
|
result = {
|
||||||
|
to: 'article_customer@example.com',
|
||||||
|
cc: '',
|
||||||
|
body: '',
|
||||||
|
in_reply_to: 'message_id23',
|
||||||
|
}
|
||||||
|
verify = App.Utils.getRecipientArticle(ticket, article, article.created_by, article.type)
|
||||||
|
deepEqual(verify, result)
|
||||||
|
|
||||||
});
|
});
|
||||||
|
|
||||||
test("contentTypeCleanup", function() {
|
test("contentTypeCleanup", function() {
|
||||||
|
|
Loading…
Reference in a new issue