diff --git a/applications/teletype/priv/templates/port_cancel.html b/applications/teletype/priv/templates/port_cancel.html index 05fa923d751..3f7906d0b13 100644 --- a/applications/teletype/priv/templates/port_cancel.html +++ b/applications/teletype/priv/templates/port_cancel.html @@ -35,7 +35,7 @@

-

Your port request {{port_request.name}} of account {{account.name}} has been canceled.

+

Your port request {{port_request.name}} in account {{account.name}} has been canceled.

@@ -43,10 +43,10 @@

- +
@@ -56,22 +56,22 @@

+ +

- - - -
-

{{port_request.transition_reason.user.first_name}} {{port_request.transition_reason.user.last_name}} commented on {{port_request.transition_reason.date.local|date:"l, F j, Y \\a\\t H:i"}}:

+

{{port_request.transition_reason.user.author}} commented on {{port_request.transition_reason.date.local|date:"F j, Y \\a\\t h:i A"}}:

{{port_request.transition_reason.content}}

 
-

Port Request Numbers

+
+

Port Request Information

+

+ -   Name:  {{port_request.name}}
+ -   State:  {{port_request.port_state}}
+ -   ID:  {{port_request.id}}
{% if port_request.port_scheduled_date %} + -   Scheduled Transfer Date:  {{port_request.port_scheduled_date.local|date:"l, F j, Y h:i A"}} ({{port_request.port_scheduled_date.timezone}})
{% elif port_request.requested_port_date %} + -   Requested Transfer Date:  {{port_request.requested_port_date.local|date:"l, F j, Y h:i A"}} ({{port_request.requested_port_date.timezone}})
{% endif %} + -   Numbers:
{{ port_request.numbers|join:", " }} +

-
    {% for number in port_request.numbers %}
  • {{number}}
  • {% endfor %}
-
- - - - - + + + + + +
 

Account Information

diff --git a/applications/teletype/priv/templates/port_cancel.text b/applications/teletype/priv/templates/port_cancel.text index 4ffffb9f4d7..840104e6b87 100644 --- a/applications/teletype/priv/templates/port_cancel.text +++ b/applications/teletype/priv/templates/port_cancel.text @@ -1,17 +1,20 @@ Port Request Canceled -Your port request "{{port_request.name}}" of account '{{account.name}}' has been canceled. -{% if port_request.transition_reason.content %} +Your port request {{port_request.name}} in account {{account.name}} has been canceled.{% if port_request.transition_reason.content %} -{{port_request.transition_reason.user.first_name}} {{port_request.transition_reason.user.last_name}} commented on {{port_request.transition_reason.date.local|date:"l, F j, Y \\a\\t H:i"}}: -{{port_request.transition_reason.content}} +{{port_request.transition_reason.user.author}} commented on {{port_request.transition_reason.date.local|date:"F j, Y \\a\\t h:i A"}}: + > {{port_request.transition_reason.content}} {% endif %} -=== Port Request Numbers === -{% for number in port_request.numbers %} -- {{number}} -{% endfor %} + +Port Request Information + Name: {{port_request.name}} + State: {{port_request.port_state}} + ID: {{port_request.id}}{% if port_request.port_scheduled_date %} + Scheduled Date: {{port_request.port_scheduled_date.local|date:"l, F j, Y h:i A"}} ({{port_request.port_scheduled_date.timezone}}){% elif port_request.requested_port_date %} + Requested Transfer Date: {{port_request.requested_port_date.local|date:"l, F j, Y h:i A"}} ({{port_request.requested_port_date.timezone}}){% endif %} + Numbers: {{ port_request.numbers|join:", "|stringformat:"s"|wordwrap:40 }} diff --git a/applications/teletype/priv/templates/port_comment.html b/applications/teletype/priv/templates/port_comment.html index ab2c144e0b0..cc42e4772fd 100644 --- a/applications/teletype/priv/templates/port_comment.html +++ b/applications/teletype/priv/templates/port_comment.html @@ -18,7 +18,7 @@

- {{user.first_name}} {{user.last_name}} commented on your port request '{{port_request.name}}' - + {{port_request.author}} commented on your port request '{{port_request.name}}' -
 
+

Port Request Information

+

+ -   Name:  {{port_request.name}}
+ -   State:  {{port_request.port_state}}
+ -   ID:  {{port_request.id}} +

+
+

Account Information

+

+ -   Account ID:  {{account.id}}
+ -   Account Name:  {{account.name}}
+ -   Account Realm:  {{account.realm}} +

+
+
 
diff --git a/applications/teletype/priv/templates/port_comment.text b/applications/teletype/priv/templates/port_comment.text index 9d647a95946..ecb8a8d376d 100644 --- a/applications/teletype/priv/templates/port_comment.text +++ b/applications/teletype/priv/templates/port_comment.text @@ -1,9 +1,17 @@ Port Request Comment -Comment on your port request "{{port_request.name}}" of account '{{account.name}}'. +{{port_request.author}} commented on your port request. -{{user.first_name}} {{user.last_name}} commented on {{port_request.comment.date.local|date:"l, F j, Y \\a\\t H:i"}}: -{{port_request.comment.content}} +{{port_request.comment.date.local|date:"F j, Y H:i A"}} + + +> {{port_request.comment.content}} + + +Port Request Information + Name: {{port_request.name}} + State: {{port_request.port_state}} + ID: {{port_request.id}} Account Information diff --git a/applications/teletype/priv/templates/port_pending.html b/applications/teletype/priv/templates/port_pending.html index 7b2a0d6d975..23162ce2e14 100644 --- a/applications/teletype/priv/templates/port_pending.html +++ b/applications/teletype/priv/templates/port_pending.html @@ -38,7 +38,7 @@

-

Your request {{port_request.name}} to port numbers into account {{account.name}} is transitioned into pending state.

+

Your number port request {{port_request.name}} for account {{account.name}} transitioned into pending state.

@@ -49,7 +49,7 @@

-

{{port_request.transition_reason.user.first_name}} {{port_request.transition_reason.user.last_name}} commented on {{port_request.transition_reason.date.local|date:"l, F j, Y \\a\\t H:i"}}:

+

{{port_request.transition_reason.user.author}} commented on {{port_request.transition_reason.date.local|date:"F j, Y \\a\\t h:i A"}}:

{{port_request.transition_reason.content}}

@@ -58,24 +58,24 @@

+ +   - -

Port Request Numbers

+ +

Port Request Information

+

+ -   Name:  {{port_request.name}}
+ -   State:  {{port_request.port_state}}
+ -   ID:  {{port_request.id}}
{% if port_request.port_scheduled_date %} + -   Scheduled Transfer Date:  {{port_request.port_scheduled_date.local|date:"l, F j, Y h:i A"}} ({{port_request.port_scheduled_date.timezone}})
{% elif port_request.requested_port_date %} + -   Requested Transfer Date:  {{port_request.requested_port_date.local|date:"l, F j, Y h:i A"}} ({{port_request.requested_port_date.timezone}})
{% endif %} + -   Numbers:
{{ port_request.numbers|join:", " }} +

- - - - - - - - - - - @@ -58,24 +58,24 @@

+ +

- - - - -
 

Account Information

diff --git a/applications/teletype/priv/templates/port_pending.text b/applications/teletype/priv/templates/port_pending.text index 7654ae57e6d..bef5e78180f 100644 --- a/applications/teletype/priv/templates/port_pending.text +++ b/applications/teletype/priv/templates/port_pending.text @@ -1,18 +1,21 @@ Port Request Pending -Your request "{{port_request.name}}" to port numbers into -account '{{account.name}}' is transitioned into pending state. -{% if port_request.transition_reason.content %} +Your number port request {{port_request.name}} for account {{account.name}} +transitioned into pending state.{% if port_request.transition_reason.content %} -{{port_request.transition_reason.user.first_name}} {{port_request.transition_reason.user.last_name}} commented on {{port_request.transition_reason.date.local|date:"l, F j, Y \\a\\t H:i"}}: -{{port_request.transition_reason.content}} +{{port_request.transition_reason.user.author}} commented on {{port_request.transition_reason.date.local|date:"F j, Y \\a\\t h:i A"}}: + > {{port_request.transition_reason.content}} {% endif %} -=== Port Request Numbers === -{% for number in port_request.numbers %} -- {{number}} -{% endfor %} + +Port Request Information + Name: {{port_request.name}} + State: {{port_request.port_state}} + ID: {{port_request.id}}{% if port_request.port_scheduled_date %} + Scheduled Date: {{port_request.port_scheduled_date.local|date:"l, F j, Y h:i A"}} ({{port_request.port_scheduled_date.timezone}}){% elif port_request.requested_port_date %} + Requested Transfer Date: {{port_request.requested_port_date.local|date:"l, F j, Y h:i A"}} ({{port_request.requested_port_date.timezone}}){% endif %} + Numbers: {{ port_request.numbers|join:", "|stringformat:"s"|wordwrap:40 }} diff --git a/applications/teletype/priv/templates/port_rejected.html b/applications/teletype/priv/templates/port_rejected.html index 33479dfdf2e..bf407dbffb2 100644 --- a/applications/teletype/priv/templates/port_rejected.html +++ b/applications/teletype/priv/templates/port_rejected.html @@ -49,7 +49,7 @@

-

{{port_request.transition_reason.user.first_name}} {{port_request.transition_reason.user.last_name}} commented on {{port_request.transition_reason.date.local|date:"l, F j, Y \\a\\t H:i"}}:

+

{{port_request.transition_reason.user.author}} commented on {{port_request.transition_reason.date.local|date:"F j, Y \\a\\t h:i A"}}:

{{port_request.transition_reason.content}}

 
-

Port Request Numbers

+
+

Port Request Information

+

+ -   Name:  {{port_request.name}}
+ -   State:  {{port_request.port_state}}
+ -   ID:  {{port_request.id}}
{% if port_request.port_scheduled_date %} + -   Scheduled Transfer Date:  {{port_request.port_scheduled_date.local|date:"l, F j, Y h:i A"}} ({{port_request.port_scheduled_date.timezone}})
{% elif port_request.requested_port_date %} + -   Requested Transfer Date:  {{port_request.requested_port_date.local|date:"l, F j, Y h:i A"}} ({{port_request.requested_port_date.timezone}})
{% endif %} + -   Numbers:
{{ port_request.numbers|join:", " }} +

-
    {% for number in port_request.numbers %}
  • {{number}}
  • {% endfor %}
-
- - - - - +
 

Account Information

diff --git a/applications/teletype/priv/templates/port_rejected.text b/applications/teletype/priv/templates/port_rejected.text index aa07689da31..48272c08e39 100644 --- a/applications/teletype/priv/templates/port_rejected.text +++ b/applications/teletype/priv/templates/port_rejected.text @@ -1,17 +1,20 @@ Port Request Rejected -Port request "{{port_request.name}}" of account '{{account.name}}' has been rejected. -{% if port_request.transition_reason.content %} +Port request "{{port_request.name}}" of account '{{account.name}}' has been rejected.{% if port_request.transition_reason.content %} -{{port_request.transition_reason.user.first_name}} {{port_request.transition_reason.user.last_name}} commented on {{port_request.transition_reason.date.local|date:"l, F j, Y \\a\\t H:i"}}: -{{port_request.transition_reason.content}} +{{port_request.transition_reason.user.author}} commented on {{port_request.transition_reason.date.local|date:"F j, Y \\a\\t h:i A"}}: + > {{port_request.transition_reason.content}} {% endif %} -=== Port Request Numbers === -{% for number in port_request.numbers %} -- {{number}} -{% endfor %} + +Port Request Information + Name: {{port_request.name}} + State: {{port_request.port_state}} + ID: {{port_request.id}}{% if port_request.port_scheduled_date %} + Scheduled Date: {{port_request.port_scheduled_date.local|date:"l, F j, Y h:i A"}} ({{port_request.port_scheduled_date.timezone}}){% elif port_request.requested_port_date %} + Requested Transfer Date: {{port_request.requested_port_date.local|date:"l, F j, Y h:i A"}} ({{port_request.requested_port_date.timezone}}){% endif %} + Numbers: {{ port_request.numbers|join:", "|stringformat:"s"|wordwrap:40 }} diff --git a/applications/teletype/priv/templates/port_request.html b/applications/teletype/priv/templates/port_request.html index 7ca22400a02..d0a40548f5d 100644 --- a/applications/teletype/priv/templates/port_request.html +++ b/applications/teletype/priv/templates/port_request.html @@ -41,23 +41,40 @@

Request {{port_request.name}} to port numbers into account {{account.name}} has been submitted.

+ {% if port_request.transition_reason.content %} + - - - - -
-

Port Request Numbers

-
-
    {% for number in port_request.numbers %}
  • {{number}}
  • {% endfor %}
+
+ + + + +
+

{{port_request.transition_reason.user.author}} commented on {{port_request.transition_reason.date.local|date:"F j, Y \\a\\t h:i A"}}:

+

{{port_request.transition_reason.content}}

+
+ {% endif %} - + + + + - - - - @@ -71,25 +66,45 @@

State

+ + + + - + + + + + + + + + - - + + - + - - + + + + + + + + + + @@ -100,7 +115,7 @@

{{port_request.bill_region}}

- +
 
+

Port Request Information

+

+ -   Name:  {{port_request.name}}
+ -   State:  {{port_request.port_state}}
+ -   ID:  {{port_request.id}}
{% if port_request.requested_port_date %} + -   Requested Transfer Date:  {{port_request.requested_port_date.local|date:"l, F j, Y h:i A"}} ({{port_request.requested_port_date.timezone}})
{% endif %} + -   Numbers:
{{ port_request.numbers|join:", " }} +

+

Account Information

diff --git a/applications/teletype/priv/templates/port_request.text b/applications/teletype/priv/templates/port_request.text index f1491c4246b..78277bcc3f8 100644 --- a/applications/teletype/priv/templates/port_request.text +++ b/applications/teletype/priv/templates/port_request.text @@ -1,13 +1,19 @@ Port Request Submitted -Request "{{port_request.name}}" to port numbers into account '{{account.name}}' has been submitted. +Request "{{port_request.name}}" to port numbers into account '{{account.name}}' has been submitted.{% if port_request.transition_reason.content %} +{{port_request.transition_reason.user.author}} commented on {{port_request.transition_reason.date.local|date:"F j, Y \\a\\t h:i A"}}: + > {{port_request.transition_reason.content}} +{% endif %} -=== Port Request Numbers === -{% for number in port_request.numbers %} -- {{number}} -{% endfor %} + +Port Request Information + Name: {{port_request.name}} + State: {{port_request.port_state}} + ID: {{port_request.id}}{% if port_request.requested_port_date %} + Requested Transfer Date: {{port_request.requested_port_date.local|date:"l, F j, Y h:i A"}} ({{port_request.requested_port_date.timezone}}){% endif %} + Numbers: {{ port_request.numbers|join:", "|stringformat:"s"|wordwrap:40 }} diff --git a/applications/teletype/priv/templates/port_request_admin.html b/applications/teletype/priv/templates/port_request_admin.html index 9f308834dcb..6a9e7962b19 100644 --- a/applications/teletype/priv/templates/port_request_admin.html +++ b/applications/teletype/priv/templates/port_request_admin.html @@ -37,18 +37,13 @@

-

Request {{port_request.name}} to port numbers into account {{account.name}} has been submitted.

-

-

Port Request Numbers

+
+ Submitted On: {{port_request.created.local|date:"l, F j, Y h:i A"}} ({{port_request.created.timezone}})
-
    {% for number in port_request.numbers %}
  • {{number}}
  • {% endfor %}
+
+

Request {{port_request.name}} to port numbers into account {{account.name}} has been submitted.

{{port_request.port_state}}
Numbers{{port_request.numbers|join:", "}}
Requested Port Date{{port_request.requested_port_date.local|date:"l, F j, Y H:i"}}{% if port_request.requested_port_date %}{{port_request.requested_port_date.local|date:"l, F j, Y h:i A"}} ({{port_request.requested_port_date.timezone}}){% else %}Not scheduled{% endif %}
Losing Carrier{{port_request.losing_carrier}}
Winning Carrier{{port_request.winning_carrier}}
Service Provider{{port_request.service_provider}}Carrier Reference Number{{port_request.carrier_reference_number}}
Customer Contact{{port_request.customer_contact}}{{ port_request.customer_contact|join:", "}}
Billing Name {{port_request.bill_name}}
Billing Address{% firstof port_request.bill_address port_request.street_address %}Billing Street Number{{port_request.bill_street_number}}
Billing Street{{port_request.bill_street_address}}
Billing Street Type{{port_request.bill_street_type}}
Billing City
Billing Zip CodeBilling Postal Code {{port_request.bill_postal_code}}
diff --git a/applications/teletype/priv/templates/port_request_admin.text b/applications/teletype/priv/templates/port_request_admin.text index 6689175e098..22e081ab139 100644 --- a/applications/teletype/priv/templates/port_request_admin.text +++ b/applications/teletype/priv/templates/port_request_admin.text @@ -1,28 +1,29 @@ Port Request Submitted (Admin Report) -Request "{{port_request.name}}" to port numbers into account '{{account.name}}' has been submitted. - -=== Port Request Numbers === +Submitted On: {{port_request.created.local|date:"l, F j, Y h:i A"}} ({{port_request.created.timezone}}) -{% for number in port_request.numbers %} -- {{number}} -{% endfor %} +Request "{{port_request.name}}" to port numbers into account '{{account.name}}' has been submitted. === Port Request Details === - Name: {{port_request.name}} - Port ID: {{port_request.id}} - State: {{port_request.state}} - Requested Port Date: {{port_request.requested_port_date.local|date:"l, F j, Y H:i"}} - Service Provider: {{port_request.service_provider}} - Customer Contact: {{port_request.customer_contact}} - Billing Name: {{port_request.billing_name}} - Billing Address: {% firstof port_request.bill_address port_request.street_address %} - Billing City: {{port_request.billing_locality}} - Billing State: {{port_request.region}} - Billing Zip Code: {{port_request.postal_code}} + Name: {{port_request.name}} + Port ID: {{port_request.id}} + State: {{port_request.port_state}} + Numbers: Numbers: {{ port_request.numbers|join:", "|stringformat:"s"|wordwrap:40 }} + Requested Port Date: {% if port_request.requested_port_date %}{{port_request.requested_port_date.local|date:"l, F j, Y h:i A"}} ({{port_request.requested_port_date.timezone}}){% else %}Not scheduled{% endif %} + Losing Carrier: {{port_request.losing_carrier}} + Winning Carrier: {{port_request.winning_carrier}} + Carrier Reference Number: {{port_request.carrier_reference_number}} + Customer Contact: {{ port_request.customer_contact|join:", "}} + Billing Name: {{port_request.bill_name}} + Billing Street Number: {{port_request.bill_street_number}} + Billing Street: {{port_request.bill_street_address}} + Billing Street Type: {{port_request.bill_street_type}} + Billing City: {{port_request.bill_locality}} + Billing State: {{port_request.bill_region}} + Billing Postal Code: {{port_request.bill_postal_code}} diff --git a/applications/teletype/priv/templates/port_scheduled.html b/applications/teletype/priv/templates/port_scheduled.html index 8e8690b92ab..98438099c87 100644 --- a/applications/teletype/priv/templates/port_scheduled.html +++ b/applications/teletype/priv/templates/port_scheduled.html @@ -38,7 +38,7 @@

-

Your number port request {{port_request.name}} of account {{account.name}} has been scheduled to happen on {{port_request.port_scheduled_date.local|date:"l, F j, Y H:i"}}

+

Your number port request {{port_request.name}} of account {{account.name}} has been scheduled to port on {{port_request.port_scheduled_date.local|date:"l, F j, Y h:i A"}} ({{port_request.port_scheduled_date.timezone}})

@@ -49,7 +49,7 @@

-

{{port_request.transition_reason.user.first_name}} {{port_request.transition_reason.user.last_name}} commented on {{port_request.transition_reason.date.local|date:"l, F j, Y \\a\\t H:i"}}:

+

{{port_request.transition_reason.user.author}} commented on {{port_request.transition_reason.date.local|date:"F j, Y \\a\\t h:i A"}}:

{{port_request.transition_reason.content}}

@@ -58,23 +58,23 @@

+ +   - -

Port Request Numbers

+ +

Port Request Information

+

+ -   Name:  {{port_request.name}}
+ -   State:  {{port_request.port_state}}
+ -   ID:  {{port_request.id}}
+ -   Scheduled Transfer Date:  {{port_request.port_scheduled_date.local|date:"l, F j, Y h:i A"}} ({{port_request.port_scheduled_date.timezone}})
+ -   Numbers:
{{ port_request.numbers|join:", " }} +

- - - - - - - - - - @@ -58,23 +58,23 @@

+ +

- - - -
 

Account Information

diff --git a/applications/teletype/priv/templates/port_scheduled.text b/applications/teletype/priv/templates/port_scheduled.text index 5069978bf76..6bce50929b9 100644 --- a/applications/teletype/priv/templates/port_scheduled.text +++ b/applications/teletype/priv/templates/port_scheduled.text @@ -1,18 +1,20 @@ Port Request Scheduled Your number port request "{{port_request.name}}" of account '{{account.name}}' has been scheduled -to happen on {{port_request.port_scheduled_date.local|date:"l, F j, Y H:i"}} -{% if port_request.transition_reason.content %} +to port on {{port_request.port_scheduled_date.local|date:"l, F j, Y h:i A"}} ({{port_request.port_scheduled_date.timezone}}).{% if port_request.transition_reason.content %} -{{port_request.transition_reason.user.first_name}} {{port_request.transition_reason.user.last_name}} commented on {{port_request.transition_reason.date.local|date:"l, F j, Y \\a\\t H:i"}}: -{{port_request.transition_reason.content}} +{{port_request.transition_reason.user.author}} commented on {{port_request.transition_reason.date.local|date:"F j, Y \\a\\t h:i A"}}: + > {{port_request.transition_reason.content}} {% endif %} -=== Port Request Numbers === -{% for number in port_request.numbers %} -- {{number}} -{% endfor %} + +Port Request Information + Name: {{port_request.name}} + State: {{port_request.port_state}} + ID: {{port_request.id}} + Scheduled Date: {{port_request.port_scheduled_date.local|date:"l, F j, Y h:i A"}} ({{port_request.port_scheduled_date.timezone}}) + Numbers: {{ port_request.numbers|join:", "|stringformat:"s"|wordwrap:40 }} diff --git a/applications/teletype/priv/templates/port_unconfirmed.html b/applications/teletype/priv/templates/port_unconfirmed.html index 0787fbabdc3..137fb62f71c 100644 --- a/applications/teletype/priv/templates/port_unconfirmed.html +++ b/applications/teletype/priv/templates/port_unconfirmed.html @@ -49,7 +49,7 @@

-

{{port_request.transition_reason.user.first_name}} {{port_request.transition_reason.user.last_name}} commented on {{port_request.transition_reason.date.local|date:"l, F j, Y \\a\\t H:i"}}:

+

{{port_request.transition_reason.user.author}} commented on {{port_request.transition_reason.date.local|date:"F j, Y \\a\\t h:i A"}}:

{{port_request.transition_reason.content}}

 
-

Port Request Numbers

+
+

Port Request Information

+

+ -   Name:  {{port_request.name}}
+ -   State:  {{port_request.port_state}}
+ -   ID:  {{port_request.id}}
+ -   Date Submitted:  {{port_request.created.local|date:"l, F j, Y h:i A"}} ({{port_request.created.timezone}})
+ -   Numbers:
{{ port_request.numbers|join:", " }} +

-
    {% for number in port_request.numbers %}
  • {{number}}
  • {% endfor %}
-
- - - - - @@ -58,23 +58,23 @@

+ +

- - - -
 

Account Information

diff --git a/applications/teletype/priv/templates/port_unconfirmed.text b/applications/teletype/priv/templates/port_unconfirmed.text index ae9d5ac7d4b..48b8b153f16 100644 --- a/applications/teletype/priv/templates/port_unconfirmed.text +++ b/applications/teletype/priv/templates/port_unconfirmed.text @@ -4,18 +4,20 @@ Port request "{{port_request.name}}" of account '{{account.name}}' has been submitted a while back, but didn't have any action on it. -Please review the port request and fully submitted or cancel it. -{% if port_request.transition_reason.content %} +Please review the port request and fully submitted or cancel it.{% if port_request.transition_reason.content %} -{{port_request.transition_reason.user.first_name}} {{port_request.transition_reason.user.last_name}} commented on {{port_request.transition_reason.date.local|date:"l, F j, Y \\a\\t H:i"}}: -{{port_request.transition_reason.content}} +{{port_request.transition_reason.user.author}} commented on {{port_request.transition_reason.date.local|date:"F j, Y \\a\\t h:i A"}}: + > {{port_request.transition_reason.content}} {% endif %} -=== Port Request Numbers === -{% for number in port_request.numbers %} -- {{number}} -{% endfor %} + +Port Request Information + Name: {{port_request.name}} + State: {{port_request.port_state}} + ID: {{port_request.id}} + Date Submitted: {{port_request.created.local|date:"l, F j, Y h:i A"}} ({{port_request.created.timezone}}) + Numbers: {{ port_request.numbers|join:", "|stringformat:"s"|wordwrap:40 }} diff --git a/applications/teletype/priv/templates/ported.html b/applications/teletype/priv/templates/ported.html index 8861033c875..86ca04fc6e5 100644 --- a/applications/teletype/priv/templates/ported.html +++ b/applications/teletype/priv/templates/ported.html @@ -49,7 +49,7 @@

-

{{port_request.transition_reason.user.first_name}} {{port_request.transition_reason.user.last_name}} commented on {{port_request.transition_reason.date.local|date:"l, F j, Y \\a\\t H:i"}}:

+

{{port_request.transition_reason.user.author}} commented on {{port_request.transition_reason.date.local|date:"F j, Y \\a\\t h:i A"}}:

{{port_request.transition_reason.content}}

 
-

Port Request Numbers

+
+

Port Request Information

+

+ -   Name:  {{port_request.name}}
+ -   State:  {{port_request.port_state}}
+ -   ID:  {{port_request.id}}
+ -   Ported Date:  {{port_request.ported_date.local|date:"l, F j, Y h:i A"}} ({{port_request.ported_date.timezone}})
+ -   Numbers:
{{ port_request.numbers|join:", " }} +

-
    {% for number in port_request.numbers %}
  • {{number}}
  • {% endfor %}
-
- - - - -
 

Account Information

diff --git a/applications/teletype/priv/templates/ported.text b/applications/teletype/priv/templates/ported.text index 404f3b4a09b..b292d5ec607 100644 --- a/applications/teletype/priv/templates/ported.text +++ b/applications/teletype/priv/templates/ported.text @@ -1,18 +1,20 @@ Port Request Successful -Port request "{{port_request.name}}" of account '{{account.name}}' has been ported successfully. -{% if port_request.transition_reason.content %} +Port request "{{port_request.name}}" of account '{{account.name}}' has been ported successfully.{% if port_request.transition_reason.content %} -{{port_request.transition_reason.user.first_name}} {{port_request.transition_reason.user.last_name}} commented on {{port_request.transition_reason.date.local|date:"l, F j, Y \\a\\t H:i"}}: -{{port_request.transition_reason.content}} +{{port_request.transition_reason.user.author}} commented on {{port_request.transition_reason.date.local|date:"F j, Y \\a\\t h:i A"}}: + > {{port_request.transition_reason.content}} {% endif %} -=== Port Request Numbers === -{% for number in port_request.numbers %} -- {{number}} -{% endfor %} + +Port Request Information + Name: {{port_request.name}} + State: {{port_request.port_state}} + ID: {{port_request.id}} + Ported Date: {{port_request.ported_date.local|date:"l, F j, Y h:i A"}} ({{port_request.ported_date.timezone}}) + Numbers: {{ port_request.numbers|join:", "|stringformat:"s"|wordwrap:40 }} diff --git a/applications/teletype/src/teletype_port_utils.erl b/applications/teletype/src/teletype_port_utils.erl index effc1e36805..aa6523348db 100644 --- a/applications/teletype/src/teletype_port_utils.erl +++ b/applications/teletype/src/teletype_port_utils.erl @@ -12,6 +12,7 @@ -export([fix_port_request_data/2]). -include("teletype.hrl"). +-include_lib("kazoo_number_manager/include/knm_port_request.hrl"). -spec is_comment_private(kz_json:object()) -> boolean(). is_comment_private(DataJObj) -> @@ -110,7 +111,16 @@ fix_port_request_data(JObj, DataJObj) -> -spec fix_numbers(kz_json:object(), kz_json:object()) -> kz_json:object(). fix_numbers(JObj, _DataJObj) -> - NumbersJObj = kz_json:get_value(<<"numbers">>, JObj, kz_json:new()), + NumbersJObj = case kz_json:get_value(?PORT_PVT_STATE, JObj) of + ?PORT_COMPLETED -> + kz_json:get_json_value(<<"ported_numbers">> + ,JObj + %% in case the doc is not saved/replicated yet + ,kz_json:get_json_value(<<"numbers">>, JObj, kz_json:new()) + ); + _ -> + kz_json:get_json_value(<<"numbers">>, JObj, kz_json:new()) + end, Numbers = kz_json:foldl(fun fix_number_fold/3, [], NumbersJObj), kz_json:set_value(<<"numbers">>, Numbers, JObj). @@ -139,6 +149,7 @@ fix_comments(JObj, DataJObj) -> Date = kz_json:from_list(teletype_util:fix_timestamp(Timestamp, DataJObj)), Props = [{<<"date">>, Date} ,{<<"timestamp">>, kz_json:get_value(<<"local">>, Date)} %% backward compatibility + | get_commenter_info(DataJObj) ], kz_json:set_value(<<"comment">> ,kz_json:set_values(Props, Comment) @@ -148,9 +159,24 @@ fix_comments(JObj, DataJObj) -> -spec fix_dates(kz_json:object(), kz_json:object()) -> kz_json:object(). fix_dates(JObj, _DataJObj) -> - lists:foldl(fun fix_date_fold/2, JObj, [<<"transfer_date">>, <<"scheduled_date">>]). + lists:foldl(fun fix_date_fold/2 + ,kz_json:set_value(<<"created">>, kz_doc:created(JObj), JObj) + ,[<<"transfer_date">>, <<"scheduled_date">>, <<"created">>, <<"ported_date">>] + ). -spec fix_date_fold(kz_json:path(), kz_json:object()) -> kz_json:object(). +fix_date_fold(<<"ported_date">> = Key, JObj) -> + case [TransitionJObj + || TransitionJObj <- kz_json:get_list_value(<<"pvt_transitions">>, JObj, []), + kz_json:get_ne_binary_value([<<"transition">>, <<"new">>], TransitionJObj) =:= ?PORT_COMPLETED + ] + of + [] -> JObj; + [Completed|_] -> + Timestamp = kz_json:get_integer_value([<<"transition">>, <<"timestamp">>], Completed), + Date = kz_json:from_list(teletype_util:fix_timestamp(Timestamp, JObj)), + kz_json:set_value(Key, Date, JObj) + end; fix_date_fold(Key, JObj) -> case kz_json:get_integer_value(Key, JObj) of 'undefined' -> JObj; @@ -161,17 +187,26 @@ fix_date_fold(Key, JObj) -> -spec fix_notifications(kz_json:object(), kz_json:object()) -> kz_json:object(). fix_notifications(JObj, _DataJObj) -> - kz_json:set_value(<<"customer_contact">> - ,kz_json:get_value([<<"notifications">>, <<"email">>, <<"send_to">>], JObj) - ,JObj %% not deleting the key for backward compatibility - ). + case kz_json:get_value([<<"notifications">>, <<"email">>, <<"send_to">>], JObj) of + <<_/binary>> =Email -> kz_json:set_value(<<"customer_contact">>, [Email], JObj); + [_|_]=Emails -> kz_json:set_value(<<"customer_contact">>, Emails, JObj); + _ -> JObj + end. -spec fix_carrier(kz_json:object(), kz_json:object()) -> kz_json:object(). fix_carrier(JObj, _DataJObj) -> - kz_json:set_value(<<"service_provider">> - ,kz_json:get_value(<<"carrier">>, JObj) - ,JObj %% not deleting the key for backward compatibility - ). + kz_json:set_values([{<<"losing_carrier">>, kz_json:get_first_defined([<<"carrier">> + ,[<<"billing">>, <<"carrier">>] + ,<<"bill_carrier">> + ] + ,JObj + ,<<"Unknown Carrier">> + ) + } + ,{<<"winning_carrier">>, kz_json:get_value(<<"winning_carrier">>, JObj, <<"Unknown Carrier">>)} + ] + ,JObj %% not deleting the key for backward compatibility + ). -spec fix_transfer_date(kz_json:object(), kz_json:object()) -> kz_json:object(). fix_transfer_date(JObj, _DataJObj) -> @@ -194,9 +229,7 @@ maybe_add_reason(JObj, DataJObj) -> case kz_json:get_ne_json_value(<<"reason">>, DataJObj) of 'undefined' -> JObj; Reason -> - UserInfo = get_commenter_info(kz_json:get_ne_binary_value(<<"account_id">>, Reason) - ,kz_json:get_ne_binary_value(<<"user_id">>, Reason) - ), + UserInfo = get_commenter_info(DataJObj), Timestamp = kz_json:get_integer_value(<<"timestamp">>, Reason), Date = kz_json:from_list(teletype_util:fix_timestamp(Timestamp, DataJObj)), Props = [{<<"content">>, kz_json:get_ne_binary_value(<<"content">>, Reason)} @@ -206,13 +239,67 @@ maybe_add_reason(JObj, DataJObj) -> kz_json:set_value(<<"transition_reason">>, kz_json:from_list(Props), JObj) end. --spec get_commenter_info(kz_term:api_ne_binary(), kz_term:api_ne_binary()) -> kz_term:proplist(). -get_commenter_info(?NE_BINARY=AccountId, ?NE_BINARY=UserId) -> - case kzd_user:fetch(AccountId, UserId) of - {'ok', UserJObj} -> teletype_util:user_params(UserJObj); - {'error', _Reason} -> - lager:debug("failed to get commenter info: account_id ~s user_id ~s", [AccountId, UserId]), - [] +-spec get_commenter_info(kz_json:object()) -> kz_term:proplist(). +get_commenter_info(DataJObj) -> + maybe_add_user_data(DataJObj + ,kz_json:get_first_defined([[<<"comment">>, <<"author">>] + ,[<<"reason">>, <<"author">>] + ], DataJObj) + ). + +-spec maybe_add_user_data(kz_json:object(), kz_term:api_binary()) -> kz_term:proplist(). +maybe_add_user_data(DataJObj, Author) -> + maybe_add_user_data(DataJObj, Author, teletype_util:is_preview(DataJObj)). + +-spec maybe_add_user_data(kz_json:object(), kz_term:api_binary(), boolean()) -> kz_term:proplist(). +maybe_add_user_data(DataJObj, Author, 'true') -> + AccountId = kz_json:get_ne_binary_value(<<"account_id">>, DataJObj), + case teletype_util:find_account_admin(AccountId) of + 'undefined' when Author =:= 'undefined' -> + [{<<"author">>, <<"An agent">>}]; + 'undefined' -> + [{<<"author">>, Author}]; + UserDoc when Author =:= 'undefined' -> + [{<<"author">>, first_last_name(kzd_user:first_name(UserDoc), kzd_user:last_name(UserDoc))} + | teletype_util:user_params(UserDoc) + ]; + UserDoc -> + [{<<"author">>, Author} + | teletype_util:user_params(UserDoc) + ] end; -get_commenter_info(_, _) -> - []. +maybe_add_user_data(DataJObj, Author, 'false') -> + AccountId = kz_json:get_first_defined([[<<"comment">>, <<"account_id">>] + ,[<<"reason">>, <<"account_id">>] + ] + ,DataJObj + ), + UserId = kz_json:get_first_defined([[<<"comment">>, <<"user_id">>] + ,[<<"reason">>, <<"user_id">>] + ] + ,DataJObj + ), + case kzd_user:fetch(AccountId, UserId) of + {'error', _} when Author =:= 'undefined' -> + [{<<"author">>, <<"An agent">>}]; + {'error', _} -> + [{<<"author">>, Author}]; + {'ok', UserDoc} when Author =:= 'undefined' -> + [{<<"author">>, first_last_name(kzd_user:first_name(UserDoc), kzd_user:last_name(UserDoc))} + | teletype_util:user_params(UserDoc) + ]; + {'ok', UserDoc} -> + [{<<"author">>, Author} + | teletype_util:user_params(UserDoc) + ] + end. + +-spec first_last_name(kz_term:api_binary(), kz_term:api_binary()) -> kz_term:ne_binary(). +first_last_name(?NE_BINARY = First, ?NE_BINARY = Last) -> + <>; +first_last_name(_, ?NE_BINARY = Last) -> + <>; +first_last_name(?NE_BINARY = First, _) -> + <>; +first_last_name(_, _) -> + <<"An agent">>. diff --git a/applications/teletype/src/templates/teletype_port_cancel.erl b/applications/teletype/src/templates/teletype_port_cancel.erl index 0ee5db01a96..0bdeaba0a08 100644 --- a/applications/teletype/src/templates/teletype_port_cancel.erl +++ b/applications/teletype/src/templates/teletype_port_cancel.erl @@ -21,7 +21,7 @@ ) ). --define(TEMPLATE_SUBJECT, <<"Port request '{{port_request.name}}' has been canceled">>). +-define(TEMPLATE_SUBJECT, <<"Port request '{{port_request.name|safe}}' has been canceled">>). -define(TEMPLATE_CATEGORY, <<"port_request">>). -define(TEMPLATE_NAME, <<"Port Cancel">>). @@ -102,8 +102,7 @@ handle_port_request(DataJObj) -> Emails = teletype_util:find_addresses(DataJObj, TemplateMetaJObj, ?TEMPLATE_ID), - EmailAttachements = teletype_port_utils:get_attachments(DataJObj), - case teletype_util:send_email(Emails, Subject, RenderedTemplates, EmailAttachements) of + case teletype_util:send_email(Emails, Subject, RenderedTemplates) of 'ok' -> teletype_util:notification_completed(?TEMPLATE_ID); {'error', Reason} -> teletype_util:notification_failed(?TEMPLATE_ID, Reason) end. diff --git a/applications/teletype/src/templates/teletype_port_comment.erl b/applications/teletype/src/templates/teletype_port_comment.erl index cd9f6db47ee..72a029a0499 100644 --- a/applications/teletype/src/templates/teletype_port_comment.erl +++ b/applications/teletype/src/templates/teletype_port_comment.erl @@ -22,7 +22,7 @@ ) ). --define(TEMPLATE_SUBJECT, <<"New comment for port request '{{port_request.name}}'">>). +-define(TEMPLATE_SUBJECT, <<"New comment for port request '{{port_request.name|safe}}'">>). -define(TEMPLATE_CATEGORY, <<"port_request">>). -define(TEMPLATE_NAME, <<"Port Comment">>). @@ -122,5 +122,7 @@ user_data(DataJObj, 'true') -> user_data(DataJObj, 'false') -> AccountId = kz_json:get_value([<<"port_request">>, <<"comment">>, <<"account_id">>], DataJObj), UserId = kz_json:get_value([<<"port_request">>, <<"comment">>, <<"user_id">>], DataJObj), - {'ok', UserJObj} = kzd_user:fetch(AccountId, UserId), - teletype_util:user_params(UserJObj). + case kzd_user:fetch(AccountId, UserId) of + {error, _} -> []; + {ok, UserJObj} -> teletype_util:user_params(UserJObj) + end. diff --git a/applications/teletype/src/templates/teletype_port_pending.erl b/applications/teletype/src/templates/teletype_port_pending.erl index c67a67bdbcf..156bb1e3954 100644 --- a/applications/teletype/src/templates/teletype_port_pending.erl +++ b/applications/teletype/src/templates/teletype_port_pending.erl @@ -21,7 +21,7 @@ ) ). --define(TEMPLATE_SUBJECT, <<"Port request: '{{port_request.name}}' is now pending">>). +-define(TEMPLATE_SUBJECT, <<"Port request: '{{port_request.name|safe}}' is now pending">>). -define(TEMPLATE_CATEGORY, <<"port_request">>). -define(TEMPLATE_NAME, <<"Port Pending">>). @@ -102,8 +102,7 @@ handle_port_request(DataJObj) -> Emails = teletype_util:find_addresses(DataJObj, TemplateMetaJObj, ?TEMPLATE_ID), - EmailAttachements = teletype_port_utils:get_attachments(DataJObj), - case teletype_util:send_email(Emails, Subject, RenderedTemplates, EmailAttachements) of + case teletype_util:send_email(Emails, Subject, RenderedTemplates) of 'ok' -> teletype_util:notification_completed(?TEMPLATE_ID); {'error', Reason} -> teletype_util:notification_failed(?TEMPLATE_ID, Reason) end. diff --git a/applications/teletype/src/templates/teletype_port_rejected.erl b/applications/teletype/src/templates/teletype_port_rejected.erl index c8b04edacc1..a9dd59ea584 100644 --- a/applications/teletype/src/templates/teletype_port_rejected.erl +++ b/applications/teletype/src/templates/teletype_port_rejected.erl @@ -21,7 +21,7 @@ ) ). --define(TEMPLATE_SUBJECT, <<"Port request '{{port_request.name}}' has been rejected">>). +-define(TEMPLATE_SUBJECT, <<"Port request '{{port_request.name|safe}}' has been rejected">>). -define(TEMPLATE_CATEGORY, <<"port_request">>). -define(TEMPLATE_NAME, <<"Port Rejected">>). @@ -102,8 +102,7 @@ handle_port_request(DataJObj) -> Emails = teletype_util:find_addresses(DataJObj, TemplateMetaJObj, ?TEMPLATE_ID), - EmailAttachements = teletype_port_utils:get_attachments(DataJObj), - case teletype_util:send_email(Emails, Subject, RenderedTemplates, EmailAttachements) of + case teletype_util:send_email(Emails, Subject, RenderedTemplates) of 'ok' -> teletype_util:notification_completed(?TEMPLATE_ID); {'error', Reason} -> teletype_util:notification_failed(?TEMPLATE_ID, Reason) end. diff --git a/applications/teletype/src/templates/teletype_port_request.erl b/applications/teletype/src/templates/teletype_port_request.erl index b6e4984c433..bc18377c394 100644 --- a/applications/teletype/src/templates/teletype_port_request.erl +++ b/applications/teletype/src/templates/teletype_port_request.erl @@ -21,7 +21,7 @@ ) ). --define(TEMPLATE_SUBJECT, <<"Number port request for account '{{account.name}}'">>). +-define(TEMPLATE_SUBJECT, <<"Number port request for account '{{account.name|safe}}'">>). -define(TEMPLATE_CATEGORY, <<"port_request">>). -define(TEMPLATE_NAME, <<"Port Request">>). @@ -98,8 +98,7 @@ handle_port_request(DataJObj) -> Emails = teletype_util:find_addresses(DataJObj, TemplateMetaJObj, ?TEMPLATE_ID), - EmailAttachements = teletype_port_utils:get_attachments(DataJObj), - case teletype_util:send_email(Emails, Subject, RenderedTemplates, EmailAttachements) of + case teletype_util:send_email(Emails, Subject, RenderedTemplates) of 'ok' -> teletype_util:notification_completed(?TEMPLATE_ID); {'error', Reason} -> teletype_util:notification_failed(?TEMPLATE_ID, Reason) end. diff --git a/applications/teletype/src/templates/teletype_port_request_admin.erl b/applications/teletype/src/templates/teletype_port_request_admin.erl index f5268999420..47ca233e48f 100644 --- a/applications/teletype/src/templates/teletype_port_request_admin.erl +++ b/applications/teletype/src/templates/teletype_port_request_admin.erl @@ -21,7 +21,7 @@ ) ). --define(TEMPLATE_SUBJECT, <<"Number port request for account '{{account.name}}' (Details)">>). +-define(TEMPLATE_SUBJECT, <<"Number port request for account '{{account.name|safe}}' (Details)">>). -define(TEMPLATE_CATEGORY, <<"system">>). -define(TEMPLATE_NAME, <<"Admin Port Request">>). @@ -119,9 +119,8 @@ maybe_set_emails(DataJObj) -> -spec maybe_set_from(kz_json:object()) -> kz_json:object(). maybe_set_from(DataJObj) -> - SystemFrom = kz_term:to_binary(node()), PortRequest = kz_json:get_value(<<"port_request">>, DataJObj), - DefaultFrom = kz_json:get_value(<<"from">>, DataJObj, SystemFrom), + DefaultFrom = kz_json:get_value(<<"from">>, DataJObj, teletype_util:default_from_address()), Initiator = kz_json:get_value([<<"notifications">>, <<"email">>, <<"send_to">>], PortRequest, DefaultFrom), kz_json:set_value(<<"from">>, Initiator, DataJObj). diff --git a/applications/teletype/src/templates/teletype_port_scheduled.erl b/applications/teletype/src/templates/teletype_port_scheduled.erl index 467a6d637db..5a62ffc522e 100644 --- a/applications/teletype/src/templates/teletype_port_scheduled.erl +++ b/applications/teletype/src/templates/teletype_port_scheduled.erl @@ -21,7 +21,7 @@ ) ). --define(TEMPLATE_SUBJECT, <<"Port request '{{port_request.name}}' has been scheduled">>). +-define(TEMPLATE_SUBJECT, <<"Port request '{{port_request.name|safe}}' has been scheduled">>). -define(TEMPLATE_CATEGORY, <<"port_request">>). -define(TEMPLATE_NAME, <<"Port Scheduled">>). @@ -102,8 +102,7 @@ handle_port_request(DataJObj) -> Emails = teletype_util:find_addresses(DataJObj, TemplateMetaJObj, ?TEMPLATE_ID), - EmailAttachements = teletype_port_utils:get_attachments(DataJObj), - case teletype_util:send_email(Emails, Subject, RenderedTemplates, EmailAttachements) of + case teletype_util:send_email(Emails, Subject, RenderedTemplates) of 'ok' -> teletype_util:notification_completed(?TEMPLATE_ID); {'error', Reason} -> teletype_util:notification_failed(?TEMPLATE_ID, Reason) end. diff --git a/applications/teletype/src/templates/teletype_port_unconfirmed.erl b/applications/teletype/src/templates/teletype_port_unconfirmed.erl index 200c73c1dcc..5fa3cbe645d 100644 --- a/applications/teletype/src/templates/teletype_port_unconfirmed.erl +++ b/applications/teletype/src/templates/teletype_port_unconfirmed.erl @@ -21,7 +21,7 @@ ) ). --define(TEMPLATE_SUBJECT, <<"Unfinished port request '{{port_request.name}}' reminder">>). +-define(TEMPLATE_SUBJECT, <<"Unfinished port request '{{port_request.name|safe}}' reminder">>). -define(TEMPLATE_CATEGORY, <<"port_request">>). -define(TEMPLATE_NAME, <<"Port Unconfirmed">>). @@ -102,8 +102,7 @@ handle_port_request(DataJObj) -> Emails = teletype_util:find_addresses(DataJObj, TemplateMetaJObj, ?TEMPLATE_ID), - EmailAttachements = teletype_port_utils:get_attachments(DataJObj), - case teletype_util:send_email(Emails, Subject, RenderedTemplates, EmailAttachements) of + case teletype_util:send_email(Emails, Subject, RenderedTemplates) of 'ok' -> teletype_util:notification_completed(?TEMPLATE_ID); {'error', Reason} -> teletype_util:notification_failed(?TEMPLATE_ID, Reason) end. diff --git a/applications/teletype/src/templates/teletype_ported.erl b/applications/teletype/src/templates/teletype_ported.erl index 40b5f353445..60a650a856b 100644 --- a/applications/teletype/src/templates/teletype_ported.erl +++ b/applications/teletype/src/templates/teletype_ported.erl @@ -21,7 +21,7 @@ ) ). --define(TEMPLATE_SUBJECT, <<"Number port request '{{port_request.name}}' completed">>). +-define(TEMPLATE_SUBJECT, <<"Number port request '{{port_request.name|safe}}' completed">>). -define(TEMPLATE_CATEGORY, <<"port_request">>). -define(TEMPLATE_NAME, <<"Port Successful">>). @@ -102,8 +102,7 @@ handle_port_request(DataJObj) -> Emails = teletype_util:find_addresses(DataJObj, TemplateMetaJObj, ?TEMPLATE_ID), - EmailAttachements = teletype_port_utils:get_attachments(DataJObj), - case teletype_util:send_email(Emails, Subject, RenderedTemplates, EmailAttachements) of + case teletype_util:send_email(Emails, Subject, RenderedTemplates) of 'ok' -> teletype_util:notification_completed(?TEMPLATE_ID); {'error', Reason} -> teletype_util:notification_failed(?TEMPLATE_ID, Reason) end. diff --git a/core/kazoo_number_manager/priv/couchdb/views/port_requests.json b/core/kazoo_number_manager/priv/couchdb/views/port_requests.json index df8688f3b88..0c1d0745c0d 100644 --- a/core/kazoo_number_manager/priv/couchdb/views/port_requests.json +++ b/core/kazoo_number_manager/priv/couchdb/views/port_requests.json @@ -24,6 +24,11 @@ " for (i in doc.numbers) {", " emit([doc.pvt_account_id, i], null);", " }", + " if (doc.ported_numbers) {", + " for (i in doc.ported_numbers) {", + " emit([doc.pvt_account_id, i], null);", + " }", + " }", "}" ] }, @@ -57,10 +62,15 @@ "listing_by_number": { "map": [ "function(doc) {", - " if (doc.pvt_type != 'port_request' || doc.pvt_deleted || doc.pvt_port_state == 'completed' || doc.pvt_port_state == 'canceled') return;", + " if (doc.pvt_type != 'port_request' || doc.pvt_deleted) return;", " for (i in doc.numbers) {", " emit(i, doc.pvt_account_id);", " }", + " if (doc.ported_numbers) {", + " for (i in doc.ported_numbers) {", + " emit(i, doc.pvt_account_id);", + " }", + " }", "}" ] }, diff --git a/core/kazoo_number_manager/src/knm_port_request.erl b/core/kazoo_number_manager/src/knm_port_request.erl index a128575d409..b0d6edebe6d 100644 --- a/core/kazoo_number_manager/src/knm_port_request.erl +++ b/core/kazoo_number_manager/src/knm_port_request.erl @@ -497,7 +497,10 @@ is_in_account_and_in_service(AccountId, PN) -> %%------------------------------------------------------------------------------ -spec clear_numbers_from_port(kz_json:object()) -> {ok, kz_json:object()}. clear_numbers_from_port(PortReq) -> - Cleared = kz_json:set_value(?NUMBERS_KEY, kz_json:new(), PortReq), + Update = [{?NUMBERS_KEY, kz_json:new()} + ,{<<"ported_numbers">>, kz_json:get_json_value(?NUMBERS_KEY, PortReq)} + ], + Cleared = kz_json:set_values(Update, PortReq), case save_doc(Cleared) of {'ok', _PortReq1}=Ok -> lager:debug("port numbers cleared"),