TT#53607 Remove '+' symbol on logs and outgoing

Change-Id: If3319c129616c4ff2d2686a7b750c1a0a0f1facb
changes/88/27488/7
Robert Axelsen 6 years ago
parent af2c112dfa
commit da0da9d755

@ -46,13 +46,16 @@
/> />
<span <span
v-if="isInitiating" v-if="isInitiating"
>{{ $t('call.initiating', {number: callNumberFormatted}) }}</span> >
{{ $t('call.initiating', {number: callNumberFormatted}) }}</span>
<span <span
v-else-if="isRinging" v-else-if="isRinging"
>{{ $t('call.ringing', {number: callNumberFormatted}) }}</span> >
{{ $t('call.ringing', {number: callNumberFormatted}) }}</span>
<span <span
v-else-if="isIncoming" v-else-if="isIncoming"
>{{ $t('call.incoming', {number: callNumberFormatted}) }}</span> >
{{ $t('call.incoming', {number: callNumberFormatted}) }}</span>
</div> </div>
<div <div
v-else-if="isEnded" v-else-if="isEnded"

@ -156,9 +156,6 @@
</template> </template>
<script> <script>
import {
normalizeDestination
} from '../../filters/number-format'
import platformMixin from '../../mixins/platform' import platformMixin from '../../mixins/platform'
import { import {
startLoading, startLoading,
@ -305,9 +302,6 @@
} }
return classes; return classes;
}, },
callNumberFormatted() {
return normalizeDestination(this.callNumber);
},
pageTitleExt() { pageTitleExt() {
if(this.isHome) { if(this.isHome) {
return this.callStateTitle; return this.callStateTitle;

@ -14,18 +14,21 @@
<span class="gt-sm csc-entity-title"> <span class="gt-sm csc-entity-title">
{{ direction }} {{ direction }}
</span> </span>
<span class="csc-entity-title"> <span class="csc-entity-title csc-phone-number">
{{ fax.caller | numberFormat }} {{ fax.caller | numberFormat }}
</span> </span>
</q-item-tile> </q-item-tile>
<q-item-tile <q-item-tile
sublabel sublabel
>{{ fax.start_time | smartTime }} >
{{ fax.start_time | smartTime }}
</q-item-tile> </q-item-tile>
<q-item-tile <q-item-tile
v-if="fax.pages === 0" v-if="fax.pages === 0"
sublabel sublabel
>No pages</q-item-tile> >
No pages
</q-item-tile>
<q-item-tile <q-item-tile
v-else-if="fax.pages === 1" v-else-if="fax.pages === 1"
sublabel sublabel

@ -1,12 +1,6 @@
import _ from 'lodash'; import _ from 'lodash';
import url from 'url'; import url from 'url';
import {
PhoneNumberUtil,
PhoneNumberFormat
} from 'google-libphonenumber';
var phoneUtil = PhoneNumberUtil.getInstance();
const DestinationHosts = { const DestinationHosts = {
VoiceBox: 'voicebox.local', VoiceBox: 'voicebox.local',
@ -17,49 +11,9 @@ const DestinationHosts = {
}; };
export default function numberFormat(number) { export default function numberFormat(number) {
try { let destination = url.parse(number, true);
let destination = url.parse(number, true); let extractedNumber = destination.auth ? destination.auth.split(':')[0] : destination.pathname;
let extractedNumber = destination.auth.split(':')[0]; return extractedNumber;
let normalizedNumber = normalizeNumber(extractedNumber);
if(normalizedNumber !== extractedNumber) {
return normalizedNumber;
}
else {
return extractedNumber;
}
}
catch(err) {
return normalizeNumber(number);
}
}
export function normalizeNumber(number, excludeLibPhoneNumber) {
if(_.isString(number)) {
let normalizedNumber = number.replace(/\s*/g, '');
if(normalizedNumber.match(/^\+?[0-9]+$/)) {
if(normalizedNumber.match(/^\+/) === null) {
normalizedNumber = '+' + normalizedNumber;
}
if(excludeLibPhoneNumber === true) {
return normalizedNumber;
}
else {
try {
return phoneUtil.format(phoneUtil.parse(normalizedNumber, 'DE'),
PhoneNumberFormat.INTERNATIONAL);
}
catch(err) {
return normalizedNumber;
}
}
}
else {
return number;
}
}
else {
return number;
}
} }
export function rawNumber(number) { export function rawNumber(number) {
@ -70,7 +24,7 @@ export function normalizeDestination(destination) {
try { try {
destination = destination.replace(/\s*/g, ''); destination = destination.replace(/\s*/g, '');
if(destination.match(/^sip:/g) === null && destination.match(/^sips:/g) === null && if (destination.match(/^sip:/g) === null && destination.match(/^sips:/g) === null &&
destination.match(/^\+?[0-9]+$/) === null) { destination.match(/^\+?[0-9]+$/) === null) {
destination = 'sip:' + destination; destination = 'sip:' + destination;
} }
@ -78,7 +32,7 @@ export function normalizeDestination(destination) {
let parsedDestination = url.parse(destination, true); let parsedDestination = url.parse(destination, true);
let authParts = parsedDestination.auth.split(':'); let authParts = parsedDestination.auth.split(':');
let host = parsedDestination.host; let host = parsedDestination.host;
let normalizedNumber = normalizeNumber(authParts[0]); let normalizedNumber = authParts[0];
let isNumber = normalizedNumber !== authParts[0]; let isNumber = normalizedNumber !== authParts[0];
if (host === DestinationHosts.VoiceBox) { if (host === DestinationHosts.VoiceBox) {
@ -106,8 +60,8 @@ export function normalizeDestination(destination) {
return normalizedNumber; return normalizedNumber;
} }
} }
catch(err) { catch (err) {
return normalizeNumber(destination); return destination;
} }
} }

@ -1,22 +1,10 @@
import _ from 'lodash';
import { normalizeNumber } from './number-format'
export default function(number, extension) { export default function(number, extension) {
let constructedNumber = "" + number.cc + number.ac + number.sn; let constructedNumber = "" + number.cc + number.ac + number.sn;
let normalizedNumber = normalizeNumber(constructedNumber); if (extension) {
let finalNumber; return constructedNumber.replace(new RegExp(extension + '$'), '');
if(_.isString(normalizedNumber)) {
finalNumber = normalizedNumber;
} }
else { else {
finalNumber = constructedNumber; return constructedNumber;
}
if(extension) {
return finalNumber.replace(new RegExp(extension + '$'), '');
} }
else {
return finalNumber;
}
} }

@ -2,21 +2,12 @@
import { assert } from 'chai'; import { assert } from 'chai';
import numberFormat from '../../src/filters/number-format'; import numberFormat from '../../src/filters/number-format';
import { normalizeNumber, normalizeDestination } from '../../src/filters/number-format'; import { normalizeDestination } from '../../src/filters/number-format';
const numbers = { const numbers = {
valid1: '+43 993 004', valid1: '43993004',
valid2: '43993004',
valid3: ' 43993004 ',
valid4: '+43993004',
valid5: '43 993 004',
valid6: '4 3 9 9 3 0 0 4',
valid7: '+4 3 9 9 3 0 0 4',
valid8: ' +43993004 ',
invalid1: '43993004+', invalid1: '43993004+',
invalid2: '$43993004', invalid2: 'a43993004',
invalid3: 'a43993004',
invalid4: 'abcdefghi'
}; };
const sipUris = { const sipUris = {
@ -36,24 +27,9 @@ const destinations = {
describe('NumberFormatFilter', function() { describe('NumberFormatFilter', function() {
it('should normalize phone numbers', function(){
assert.equal(normalizeNumber(numbers.valid1), numbers.valid1);
assert.equal(normalizeNumber(numbers.valid2), numbers.valid1);
assert.equal(normalizeNumber(numbers.valid3), numbers.valid1);
assert.equal(normalizeNumber(numbers.valid4), numbers.valid1);
assert.equal(normalizeNumber(numbers.valid5), numbers.valid1);
assert.equal(normalizeNumber(numbers.valid6), numbers.valid1);
assert.equal(normalizeNumber(numbers.valid7), numbers.valid1);
assert.equal(normalizeNumber(numbers.valid8), numbers.valid1);
assert.equal(normalizeNumber(numbers.invalid1), numbers.invalid1);
assert.equal(normalizeNumber(numbers.invalid2), numbers.invalid2);
assert.equal(normalizeNumber(numbers.invalid3), numbers.invalid3);
assert.equal(normalizeNumber(numbers.invalid4), numbers.invalid4);
});
it('should format a number or sip uri', function(){ it('should format a number or sip uri', function(){
assert.equal(numberFormat(sipUris.valid1), numbers.valid1); assert.equal(numberFormat(sipUris.valid1), numbers.valid1);
assert.equal(numberFormat(sipUris.invalid1), numbers.invalid3); assert.equal(numberFormat(sipUris.invalid1), numbers.invalid2);
}); });
it('should format a call forward destination', function(){ it('should format a call forward destination', function(){

Loading…
Cancel
Save