phonelib 0.1.2 → 0.1.3
Sign up to get free protection for your applications and to get access to all the features.
- data/data/PhoneNumberMetaData.xml +79 -55
- data/data/phone_data.yml +22 -18
- data/lib/phonelib/version.rb +1 -1
- data/test/dummy/db/test.sqlite3 +0 -0
- data/test/dummy/log/test.log +105 -0
- metadata +14 -14
@@ -2602,8 +2602,9 @@
|
|
2602
2602
|
<fixedLine>
|
2603
2603
|
<!-- The prefix 50 48 has been added based on numbers found online, while 40 49 has been
|
2604
2604
|
deleted since we haven't found any numbers with this prefix and it is not mentioned in
|
2605
|
-
the
|
2606
|
-
the
|
2605
|
+
the Onatel document.
|
2606
|
+
IMPORTANT: Note that the ITU documents of Mar/Apr 2013 seem to have major errors in the
|
2607
|
+
fixed-line table, so we have not changed our patterns based on these. -->
|
2607
2608
|
<nationalNumberPattern>
|
2608
2609
|
(?:
|
2609
2610
|
20(?:
|
@@ -2677,6 +2678,7 @@
|
|
2677
2678
|
<numberFormat pattern="(\d{2})(\d{3})(\d{2,3})">
|
2678
2679
|
<leadingDigits>
|
2679
2680
|
[356]|
|
2681
|
+
4[124-7]|
|
2680
2682
|
7[1-9]|
|
2681
2683
|
8[1-6]|
|
2682
2684
|
9[1-7]
|
@@ -2986,8 +2988,9 @@
|
|
2986
2988
|
<!-- There seems to be some overlap with phone numbers from Saint Martin and Guadeloupe. The
|
2987
2989
|
national numbering plan does not specify any St Barthélemy-specific numbering prefixes, but
|
2988
2990
|
it appears from searches in online white and yellow pages that a subset of the prefixes
|
2989
|
-
available in
|
2990
|
-
these region codes will be returned, although numbers will be valid for both regions.
|
2991
|
+
available in these regions are used. In these cases, if getRegionCodeForNumber is used, one
|
2992
|
+
of these region codes will be returned, although numbers will be valid for both regions.
|
2993
|
+
-->
|
2991
2994
|
<!-- http://www.itu.int/oth/T0202000058/en -->
|
2992
2995
|
<territory id="BL" countryCode="590" internationalPrefix="00" nationalPrefix="0">
|
2993
2996
|
<!-- Formatting rules borrowed from Guadeloupe. -->
|
@@ -3006,16 +3009,17 @@
|
|
3006
3009
|
<exampleNumber>590271234</exampleNumber>
|
3007
3010
|
</fixedLine>
|
3008
3011
|
<mobile>
|
3012
|
+
<!-- Any ranges assigned from
|
3013
|
+
http://www.arcep.fr/index.php?id=interactivenumeros have been listed as belonging to
|
3014
|
+
Guadeloupe, St Martin and St Barthélemy, since we can't reliably distinguish between
|
3015
|
+
them. -->
|
3009
3016
|
<nationalNumberPattern>
|
3010
3017
|
690(?:
|
3011
|
-
|
3012
|
-
|
3013
|
-
66|
|
3014
|
-
77|
|
3015
|
-
8[78]
|
3018
|
+
0[0-7]|
|
3019
|
+
[1-9]\d
|
3016
3020
|
)\d{4}
|
3017
3021
|
</nationalNumberPattern>
|
3018
|
-
<exampleNumber>
|
3022
|
+
<exampleNumber>690301234</exampleNumber>
|
3019
3023
|
</mobile>
|
3020
3024
|
<!-- http://www.comstbarth.fr/urgences.asp -->
|
3021
3025
|
<emergency>
|
@@ -4046,13 +4050,13 @@
|
|
4046
4050
|
</numberFormat>
|
4047
4051
|
<numberFormat pattern="([89]\d{2})(\d{3})(\d{3})">
|
4048
4052
|
<leadingDigits>
|
4049
|
-
8[0-
|
4053
|
+
8[0-2459]|
|
4050
4054
|
9
|
4051
4055
|
</leadingDigits>
|
4052
4056
|
<format>$1 $2 $3</format>
|
4053
4057
|
</numberFormat>
|
4054
4058
|
<numberFormat pattern="(\d{2})(\d{2})(\d{3})">
|
4055
|
-
<leadingDigits>
|
4059
|
+
<leadingDigits>88</leadingDigits>
|
4056
4060
|
<format>$1 $2 $3</format>
|
4057
4061
|
</numberFormat>
|
4058
4062
|
<numberFormat pattern="(\d{2})(\d{5})">
|
@@ -4079,13 +4083,16 @@
|
|
4079
4083
|
<exampleNumber>1234567</exampleNumber>
|
4080
4084
|
</fixedLine>
|
4081
4085
|
<mobile>
|
4082
|
-
<!--
|
4083
|
-
|
4084
|
-
|
4086
|
+
<!-- As of May'13 the 88 range looks as if it is defunct. The ITU document lists "Yozma
|
4087
|
+
Timeturns" as the operator, but their website (http://www.ytt.cd) is offline and the
|
4088
|
+
holdings company http://www.timeturnsholdings.com/products does not show a link for
|
4089
|
+
DRC. While there are still numbers of the form "88\d{5}" online, none of the ones
|
4090
|
+
tried were valid. If the holdings company does not respond to requests about this
|
4091
|
+
range and unless we receive further information, we will remove this range. -->
|
4085
4092
|
<nationalNumberPattern>
|
4086
4093
|
8(?:
|
4087
|
-
[0-
|
4088
|
-
|
4094
|
+
[0-2459]\d{2}|
|
4095
|
+
8
|
4089
4096
|
)\d{5}|
|
4090
4097
|
9[7-9]\d{7}
|
4091
4098
|
</nationalNumberPattern>
|
@@ -5726,7 +5733,8 @@
|
|
5726
5733
|
<leadingDigits>3</leadingDigits>
|
5727
5734
|
<format>$1 $2</format>
|
5728
5735
|
</numberFormat>
|
5729
|
-
|
5736
|
+
<!-- Note: this is getting ridiculous! How can we format these better? -->
|
5737
|
+
<numberFormat pattern="(800)(\d{7,12})">
|
5730
5738
|
<leadingDigits>800</leadingDigits>
|
5731
5739
|
<format>$1 $2</format>
|
5732
5740
|
</numberFormat>
|
@@ -5825,9 +5833,10 @@
|
|
5825
5833
|
[1-9]\d
|
5826
5834
|
)\d{3,10}|
|
5827
5835
|
9(?:
|
5828
|
-
0[6-9]|
|
5829
|
-
|
5830
|
-
|
5836
|
+
0[6-9]\d{3,10}|
|
5837
|
+
1\d{4,12}|
|
5838
|
+
[2-9]\d{4,11}
|
5839
|
+
)
|
5831
5840
|
</nationalNumberPattern>
|
5832
5841
|
<exampleNumber>30123456</exampleNumber>
|
5833
5842
|
</fixedLine>
|
@@ -5860,8 +5869,8 @@
|
|
5860
5869
|
<exampleNumber>16412345</exampleNumber>
|
5861
5870
|
</pager>
|
5862
5871
|
<tollFree>
|
5863
|
-
<nationalNumberPattern>800\d{7,
|
5864
|
-
<possibleNumberPattern>\d{10,
|
5872
|
+
<nationalNumberPattern>800\d{7,12}</nationalNumberPattern>
|
5873
|
+
<possibleNumberPattern>\d{10,15}</possibleNumberPattern>
|
5865
5874
|
<exampleNumber>8001234567890</exampleNumber>
|
5866
5875
|
</tollFree>
|
5867
5876
|
<premiumRate>
|
@@ -8328,6 +8337,7 @@
|
|
8328
8337
|
<!-- French Guiana (French Dept. of) -->
|
8329
8338
|
<!-- http://www.itu.int/oth/T020200004C/en -->
|
8330
8339
|
<!-- http://www.arcep.fr/index.php?id=2137&bloc=0594&CMD=RESULTS_NUMEROTATION -->
|
8340
|
+
<!-- http://www.arcep.fr/uploads/tx_gsavis/11-1297.pdf -->
|
8331
8341
|
<!-- Using a national prefix here as online numbers are formatted with it. -->
|
8332
8342
|
<territory id="GF" countryCode="594" internationalPrefix="00"
|
8333
8343
|
nationalPrefix="0" nationalPrefixFormattingRule="$NP$FG">
|
@@ -8359,9 +8369,8 @@
|
|
8359
8369
|
694(?:
|
8360
8370
|
[04][0-7]|
|
8361
8371
|
1[0-5]|
|
8362
|
-
|
8363
|
-
|
8364
|
-
9\d
|
8372
|
+
3[018]|
|
8373
|
+
[29]\d
|
8365
8374
|
)\d{4}
|
8366
8375
|
</nationalNumberPattern>
|
8367
8376
|
<exampleNumber>694201234</exampleNumber>
|
@@ -8868,6 +8877,7 @@
|
|
8868
8877
|
|
8869
8878
|
<!-- Guadeloupe -->
|
8870
8879
|
<!-- http://www.itu.int/oth/T0202000058/en -->
|
8880
|
+
<!-- http://www.arcep.fr/index.php?id=interactivenumeros - ZABPQ-ZNE.xls -->
|
8871
8881
|
<territory id="GP" countryCode="590" internationalPrefix="00"
|
8872
8882
|
mainCountryForCode="true" nationalPrefix="0"
|
8873
8883
|
nationalPrefixFormattingRule="$NP$FG">
|
@@ -8881,35 +8891,31 @@
|
|
8881
8891
|
<possibleNumberPattern>\d{9}</possibleNumberPattern>
|
8882
8892
|
</generalDesc>
|
8883
8893
|
<fixedLine>
|
8884
|
-
<!-- The plan says 59011 and 59012 are not implemented yet, but is from 2006 and online
|
8885
|
-
examples can be found. -->
|
8886
8894
|
<nationalNumberPattern>
|
8887
8895
|
590(?:
|
8888
|
-
|
8896
|
+
0[13468]|
|
8897
|
+
1[012]|
|
8889
8898
|
2[0-68]|
|
8890
8899
|
3[28]|
|
8891
|
-
4[
|
8892
|
-
5[
|
8893
|
-
6[
|
8894
|
-
|
8900
|
+
4[0-8]|
|
8901
|
+
5[579]|
|
8902
|
+
6[0189]|
|
8903
|
+
70|
|
8904
|
+
8[0-689]|
|
8905
|
+
9\d
|
8895
8906
|
)\d{4}
|
8896
8907
|
</nationalNumberPattern>
|
8897
8908
|
<exampleNumber>590201234</exampleNumber>
|
8898
8909
|
</fixedLine>
|
8899
8910
|
<mobile>
|
8900
|
-
<!--
|
8901
|
-
|
8902
|
-
|
8911
|
+
<!-- Any ranges assigned from
|
8912
|
+
http://www.arcep.fr/index.php?id=interactivenumeros have been listed as belonging to
|
8913
|
+
Guadeloupe, St Martin and St Barthélemy, since we can't reliably distinguish between
|
8914
|
+
them. -->
|
8903
8915
|
<nationalNumberPattern>
|
8904
8916
|
690(?:
|
8905
|
-
|
8906
|
-
|
8907
|
-
2[013-5]|
|
8908
|
-
[3-5]\d|
|
8909
|
-
6[0-57-9]|
|
8910
|
-
7[1-6]|
|
8911
|
-
8[0-6]|
|
8912
|
-
9[09]
|
8917
|
+
0[0-7]|
|
8918
|
+
[1-9]\d
|
8913
8919
|
)\d{4}
|
8914
8920
|
</nationalNumberPattern>
|
8915
8921
|
<exampleNumber>690301234</exampleNumber>
|
@@ -14931,6 +14937,10 @@
|
|
14931
14937
|
</mobile>
|
14932
14938
|
<premiumRate>
|
14933
14939
|
<!-- Telemedia service is listed under premium rate. -->
|
14940
|
+
<!-- Note that as of March 2013, the ITU document talks about the withdrawal of the range
|
14941
|
+
(90) 0 XXX XXX. This is a 9 digit range and one we have never supported, but this could
|
14942
|
+
be a mistake in the ITU document and refer to (90) 0XX XXX. However as this is unclear
|
14943
|
+
at the moment, we decided to leave the (90) range unchanged for now. -->
|
14934
14944
|
<nationalNumberPattern>90\d{6}</nationalNumberPattern>
|
14935
14945
|
<possibleNumberPattern>\d{8}</possibleNumberPattern>
|
14936
14946
|
<exampleNumber>90123456</exampleNumber>
|
@@ -15645,6 +15655,7 @@
|
|
15645
15655
|
[089]\d
|
15646
15656
|
)|
|
15647
15657
|
7(?:
|
15658
|
+
67|
|
15648
15659
|
7[47-9]|
|
15649
15660
|
[89]\d
|
15650
15661
|
)
|
@@ -15918,6 +15929,7 @@
|
|
15918
15929
|
|
15919
15930
|
<!-- Saint-Martin, French Antilles -->
|
15920
15931
|
<!-- http://www.itu.int/oth/T0202000058/en -->
|
15932
|
+
<!-- http://www.arcep.fr/index.php?id=interactivenumeros - ZABPQ-ZNE.xls -->
|
15921
15933
|
<territory id="MF" countryCode="590" internationalPrefix="00" nationalPrefix="0">
|
15922
15934
|
<!-- Formatting rules borrowed from Guadeloupe. -->
|
15923
15935
|
<generalDesc>
|
@@ -15927,25 +15939,26 @@
|
|
15927
15939
|
<fixedLine>
|
15928
15940
|
<nationalNumberPattern>
|
15929
15941
|
590(?:
|
15930
|
-
|
15931
|
-
|
15932
|
-
5[
|
15942
|
+
[02][79]|
|
15943
|
+
13|
|
15944
|
+
5[0-268]|
|
15933
15945
|
[78]7
|
15934
15946
|
)\d{4}
|
15935
15947
|
</nationalNumberPattern>
|
15936
15948
|
<exampleNumber>590271234</exampleNumber>
|
15937
15949
|
</fixedLine>
|
15938
15950
|
<mobile>
|
15951
|
+
<!-- Any ranges assigned from
|
15952
|
+
http://www.arcep.fr/index.php?id=interactivenumeros have been listed as belonging to
|
15953
|
+
Guadeloupe, St Martin and St Barthélemy, since we can't reliably distinguish between
|
15954
|
+
them. -->
|
15939
15955
|
<nationalNumberPattern>
|
15940
15956
|
690(?:
|
15941
|
-
|
15942
|
-
|
15943
|
-
66|
|
15944
|
-
77|
|
15945
|
-
8[78]
|
15957
|
+
0[0-7]|
|
15958
|
+
[1-9]\d
|
15946
15959
|
)\d{4}
|
15947
15960
|
</nationalNumberPattern>
|
15948
|
-
<exampleNumber>
|
15961
|
+
<exampleNumber>690301234</exampleNumber>
|
15949
15962
|
</mobile>
|
15950
15963
|
<!-- http://www.leshotelsdesaintmartin.com/fr/saint-martin-antilles/informations-saint-martin/infos-pratiques-sxm.html -->
|
15951
15964
|
<emergency>
|
@@ -19787,7 +19800,18 @@
|
|
19787
19800
|
<!-- http://www.anacom.pt/render.jsp?categoryId=279098 -->
|
19788
19801
|
<territory id="PT" countryCode="351" internationalPrefix="00">
|
19789
19802
|
<availableFormats>
|
19803
|
+
<!-- Note: the wikipedia page suggests that mobile numbers may also be formatted with only
|
19804
|
+
two digits in the first group; however, this doesn't seem to be majority usage based on
|
19805
|
+
searches online. -->
|
19806
|
+
<numberFormat pattern="(2\d)(\d{3})(\d{4})">
|
19807
|
+
<leadingDigits>2[12]</leadingDigits>
|
19808
|
+
<format>$1 $2 $3</format>
|
19809
|
+
</numberFormat>
|
19790
19810
|
<numberFormat pattern="([2-46-9]\d{2})(\d{3})(\d{3})">
|
19811
|
+
<leadingDigits>
|
19812
|
+
2[3-9]|
|
19813
|
+
[346-9]
|
19814
|
+
</leadingDigits>
|
19791
19815
|
<format>$1 $2 $3</format>
|
19792
19816
|
</numberFormat>
|
19793
19817
|
</availableFormats>
|
@@ -22231,7 +22255,7 @@
|
|
22231
22255
|
4[1-7]
|
22232
22256
|
)|
|
22233
22257
|
3(?:
|
22234
|
-
3[1-
|
22258
|
+
3[1-389]|
|
22235
22259
|
4[1-7]
|
22236
22260
|
)|
|
22237
22261
|
4[34][12]
|
@@ -23494,7 +23518,7 @@
|
|
23494
23518
|
</fixedLine>
|
23495
23519
|
<mobile>
|
23496
23520
|
<!-- Added 79[5-9] and 707 from online numbers found with this prefix. -->
|
23497
|
-
<!-- Ranges with prefixes 7[
|
23521
|
+
<!-- Ranges with prefixes 7[46] are "not yet operational" as of Jun. 2013. -->
|
23498
23522
|
<nationalNumberPattern>
|
23499
23523
|
7(?:
|
23500
23524
|
0[0-7]|
|
data/data/phone_data.yml
CHANGED
@@ -921,7 +921,7 @@
|
|
921
921
|
:leadingDigits: ! '[78]00'
|
922
922
|
:format: $1$2$3
|
923
923
|
- :pattern: (\d{2})(\d{3})(\d{2,3})
|
924
|
-
:leadingDigits: ! '[356]|7[1-9]|8[1-6]|9[1-7]'
|
924
|
+
:leadingDigits: ! '[356]|4[124-7]|7[1-9]|8[1-6]|9[1-7]'
|
925
925
|
:format: $1$2$3
|
926
926
|
- :pattern: (\d{2})(\d{3})(\d{3,4})
|
927
927
|
:leadingDigits: 48|8[7-9]|9[08]
|
@@ -1021,8 +1021,8 @@
|
|
1021
1021
|
:nationalNumberPattern: 590(?:2[7-9]|5[12]|87)\d{4}
|
1022
1022
|
:exampleNumber: '590271234'
|
1023
1023
|
:mobile:
|
1024
|
-
:nationalNumberPattern: 690(?:
|
1025
|
-
:exampleNumber: '
|
1024
|
+
:nationalNumberPattern: 690(?:0[0-7]|[1-9]\d)\d{4}
|
1025
|
+
:exampleNumber: '690301234'
|
1026
1026
|
:emergency:
|
1027
1027
|
:nationalNumberPattern: '18'
|
1028
1028
|
:possibleNumberPattern: \d{2}
|
@@ -1441,17 +1441,17 @@
|
|
1441
1441
|
:nationalNumberPattern: 1(?:2\d{7}|\d{6})|[2-6]\d{6}
|
1442
1442
|
:exampleNumber: '1234567'
|
1443
1443
|
:mobile:
|
1444
|
-
:nationalNumberPattern: 8(?:[0-
|
1444
|
+
:nationalNumberPattern: 8(?:[0-2459]\d{2}|8)\d{5}|9[7-9]\d{7}
|
1445
1445
|
:exampleNumber: '991234567'
|
1446
1446
|
:formats:
|
1447
1447
|
- :pattern: (\d{2})(\d{3})(\d{4})
|
1448
1448
|
:leadingDigits: '12'
|
1449
1449
|
:format: $1$2$3
|
1450
1450
|
- :pattern: ([89]\d{2})(\d{3})(\d{3})
|
1451
|
-
:leadingDigits: 8[0-
|
1451
|
+
:leadingDigits: 8[0-2459]|9
|
1452
1452
|
:format: $1$2$3
|
1453
1453
|
- :pattern: (\d{2})(\d{2})(\d{3})
|
1454
|
-
:leadingDigits:
|
1454
|
+
:leadingDigits: '88'
|
1455
1455
|
:format: $1$2$3
|
1456
1456
|
- :pattern: (\d{2})(\d{5})
|
1457
1457
|
:leadingDigits: ! '[1-6]'
|
@@ -2084,7 +2084,7 @@
|
|
2084
2084
|
:nationalNumberPattern: ! '[1-35-9]\d{3,14}|4(?:[0-8]\d{4,12}|9(?:[0-37]\d|4(?:[1-35-8]|4\d?)|5\d{1,2}|6[1-8]\d?)\d{2,7})'
|
2085
2085
|
:possibleNumberPattern: \d{2,15}
|
2086
2086
|
:fixedLine:
|
2087
|
-
:nationalNumberPattern: ! '[246]\d{5,13}|3(?:[03-9]\d{4,13}|2\d{9})|5(?:0[2-8]|[1256]\d|[38][0-8]|4\d{0,2}|[79][0-7])\d{3,11}|7(?:0[2-8]|[1-9]\d)\d{3,10}|8(?:0[2-9]|[1-9]\d)\d{3,10}|9(?:0[6-9]|[
|
2087
|
+
:nationalNumberPattern: ! '[246]\d{5,13}|3(?:[03-9]\d{4,13}|2\d{9})|5(?:0[2-8]|[1256]\d|[38][0-8]|4\d{0,2}|[79][0-7])\d{3,11}|7(?:0[2-8]|[1-9]\d)\d{3,10}|8(?:0[2-9]|[1-9]\d)\d{3,10}|9(?:0[6-9]\d{3,10}|1\d{4,12}|[2-9]\d{4,11})'
|
2088
2088
|
:exampleNumber: '30123456'
|
2089
2089
|
:mobile:
|
2090
2090
|
:nationalNumberPattern: 1(?:5[0-2579]\d{8}|6[023]\d{7,8}|7(?:[0-57-9]\d?|6\d)\d{7})
|
@@ -2095,8 +2095,8 @@
|
|
2095
2095
|
:possibleNumberPattern: \d{4,14}
|
2096
2096
|
:exampleNumber: '16412345'
|
2097
2097
|
:tollFree:
|
2098
|
-
:nationalNumberPattern: 800\d{7,
|
2099
|
-
:possibleNumberPattern: \d{10,
|
2098
|
+
:nationalNumberPattern: 800\d{7,12}
|
2099
|
+
:possibleNumberPattern: \d{10,15}
|
2100
2100
|
:exampleNumber: '8001234567890'
|
2101
2101
|
:premiumRate:
|
2102
2102
|
:nationalNumberPattern: 900(?:[135]\d{6}|9\d{7})
|
@@ -2145,7 +2145,7 @@
|
|
2145
2145
|
- :pattern: (3\d{4})(\d{1,10})
|
2146
2146
|
:leadingDigits: '3'
|
2147
2147
|
:format: $1$2
|
2148
|
-
- :pattern: (800)(\d{7,
|
2148
|
+
- :pattern: (800)(\d{7,12})
|
2149
2149
|
:leadingDigits: '800'
|
2150
2150
|
:format: $1$2
|
2151
2151
|
- :pattern: (177)(99)(\d{7,8})
|
@@ -2968,7 +2968,7 @@
|
|
2968
2968
|
:nationalNumberPattern: 594(?:10|2[012457-9]|3[0-57-9]|4[3-9]|5[7-9]|6[0-3]|9[014])\d{4}
|
2969
2969
|
:exampleNumber: '594101234'
|
2970
2970
|
:mobile:
|
2971
|
-
:nationalNumberPattern: 694(?:[04][0-7]|1[0-5]|
|
2971
|
+
:nationalNumberPattern: 694(?:[04][0-7]|1[0-5]|3[018]|[29]\d)\d{4}
|
2972
2972
|
:exampleNumber: '694201234'
|
2973
2973
|
:emergency:
|
2974
2974
|
:nationalNumberPattern: 1[578]
|
@@ -3182,10 +3182,10 @@
|
|
3182
3182
|
:nationalNumberPattern: ! '[56]\d{8}'
|
3183
3183
|
:possibleNumberPattern: \d{9}
|
3184
3184
|
:fixedLine:
|
3185
|
-
:nationalNumberPattern: 590(?:1[
|
3185
|
+
:nationalNumberPattern: 590(?:0[13468]|1[012]|2[0-68]|3[28]|4[0-8]|5[579]|6[0189]|70|8[0-689]|9\d)\d{4}
|
3186
3186
|
:exampleNumber: '590201234'
|
3187
3187
|
:mobile:
|
3188
|
-
:nationalNumberPattern: 690(?:
|
3188
|
+
:nationalNumberPattern: 690(?:0[0-7]|[1-9]\d)\d{4}
|
3189
3189
|
:exampleNumber: '690301234'
|
3190
3190
|
:emergency:
|
3191
3191
|
:nationalNumberPattern: 1[578]
|
@@ -5294,7 +5294,7 @@
|
|
5294
5294
|
:nationalNumberPattern: (?:2(?:1[0569]|2\d|3[015-7]|4[1-46-9]|5[0-24689]|6[2-589]|7[1-37]|9[1347-9])|5(?:33|5[257]))\d{5}
|
5295
5295
|
:exampleNumber: '22212345'
|
5296
5296
|
:mobile:
|
5297
|
-
:nationalNumberPattern: (?:562|6(?:50|7[1-6]|[089]\d)|7(?:7[47-9]|[89]\d))\d{5}
|
5297
|
+
:nationalNumberPattern: (?:562|6(?:50|7[1-6]|[089]\d)|7(?:67|7[47-9]|[89]\d))\d{5}
|
5298
5298
|
:exampleNumber: '65012345'
|
5299
5299
|
:tollFree:
|
5300
5300
|
:nationalNumberPattern: 800\d{5}
|
@@ -5413,11 +5413,11 @@
|
|
5413
5413
|
:nationalNumberPattern: ! '[56]\d{8}'
|
5414
5414
|
:possibleNumberPattern: \d{9}
|
5415
5415
|
:fixedLine:
|
5416
|
-
:nationalNumberPattern: 590(?:
|
5416
|
+
:nationalNumberPattern: 590(?:[02][79]|13|5[0-268]|[78]7)\d{4}
|
5417
5417
|
:exampleNumber: '590271234'
|
5418
5418
|
:mobile:
|
5419
|
-
:nationalNumberPattern: 690(?:
|
5420
|
-
:exampleNumber: '
|
5419
|
+
:nationalNumberPattern: 690(?:0[0-7]|[1-9]\d)\d{4}
|
5420
|
+
:exampleNumber: '690301234'
|
5421
5421
|
:emergency:
|
5422
5422
|
:nationalNumberPattern: 1[578]
|
5423
5423
|
:possibleNumberPattern: \d{2}
|
@@ -6919,7 +6919,11 @@
|
|
6919
6919
|
:possibleNumberPattern: \d{3}
|
6920
6920
|
:exampleNumber: '112'
|
6921
6921
|
:formats:
|
6922
|
+
- :pattern: (2\d)(\d{3})(\d{4})
|
6923
|
+
:leadingDigits: 2[12]
|
6924
|
+
:format: $1$2$3
|
6922
6925
|
- :pattern: ([2-46-9]\d{2})(\d{3})(\d{3})
|
6926
|
+
:leadingDigits: 2[3-9]|[346-9]
|
6923
6927
|
:format: $1$2$3
|
6924
6928
|
- :id: PW
|
6925
6929
|
:countryCode: '680'
|
@@ -8023,7 +8027,7 @@
|
|
8023
8027
|
:nationalNumberPattern: 649(?:712|9(?:4\d|50))\d{4}
|
8024
8028
|
:exampleNumber: '6497121234'
|
8025
8029
|
:mobile:
|
8026
|
-
:nationalNumberPattern: 649(?:2(?:3[129]|4[1-7])|3(?:3[1-
|
8030
|
+
:nationalNumberPattern: 649(?:2(?:3[129]|4[1-7])|3(?:3[1-389]|4[1-7])|4[34][12])\d{4}
|
8027
8031
|
:possibleNumberPattern: \d{10}
|
8028
8032
|
:exampleNumber: '6492311234'
|
8029
8033
|
:tollFree:
|
data/lib/phonelib/version.rb
CHANGED
data/test/dummy/db/test.sqlite3
CHANGED
Binary file
|
data/test/dummy/log/test.log
CHANGED
@@ -711,3 +711,108 @@ Processing by PhonesController#update as HTML
|
|
711
711
|
Redirected to http://test.host/phones/450723037
|
712
712
|
Completed 302 Found in 3ms (ActiveRecord: 0.1ms)
|
713
713
|
[1m[35m (0.0ms)[0m rollback transaction
|
714
|
+
Connecting to database specified by database.yml
|
715
|
+
[1m[36m (0.2ms)[0m [1mbegin transaction[0m
|
716
|
+
[1m[35mFixture Delete (0.1ms)[0m DELETE FROM "phones"
|
717
|
+
[1m[36mFixture Insert (0.1ms)[0m [1mINSERT INTO "phones" ("number", "possible_number", "created_at", "updated_at", "id") VALUES ('972541234567', '972541234567', '2013-07-11 12:30:08', '2013-07-11 12:30:08', 450723037)[0m
|
718
|
+
[1m[35mFixture Insert (0.0ms)[0m INSERT INTO "phones" ("number", "created_at", "updated_at", "id") VALUES ('wrong', '2013-07-11 12:30:08', '2013-07-11 12:30:08', 667262234)
|
719
|
+
[1m[36mFixture Insert (0.0ms)[0m [1mINSERT INTO "phones" ("number", "created_at", "updated_at", "id") VALUES ('972541234567', '2013-07-11 12:30:08', '2013-07-11 12:30:08', 512636273)[0m
|
720
|
+
[1m[35mFixture Insert (0.0ms)[0m INSERT INTO "phones" ("possible_number", "created_at", "updated_at", "id") VALUES ('972541234567', '2013-07-11 12:30:08', '2013-07-11 12:30:08', 23760034)
|
721
|
+
[1m[36mFixture Insert (0.0ms)[0m [1mINSERT INTO "phones" ("number", "possible_number", "created_at", "updated_at", "id") VALUES ('972541234567', 'wrong', '2013-07-11 12:30:08', '2013-07-11 12:30:08', 703612349)[0m
|
722
|
+
[1m[35m (8.0ms)[0m commit transaction
|
723
|
+
[1m[36m (0.1ms)[0m [1mbegin transaction[0m
|
724
|
+
[1m[35mPhone Load (1.5ms)[0m SELECT "phones".* FROM "phones" WHERE "phones"."id" = ? LIMIT 1 [["id", 512636273]]
|
725
|
+
[1m[36m (0.0ms)[0m [1mSAVEPOINT active_record_1[0m
|
726
|
+
[1m[35m (0.1ms)[0m RELEASE SAVEPOINT active_record_1
|
727
|
+
[1m[36m (0.0ms)[0m [1mrollback transaction[0m
|
728
|
+
[1m[35m (0.0ms)[0m begin transaction
|
729
|
+
[1m[36m (0.0ms)[0m [1mSAVEPOINT active_record_1[0m
|
730
|
+
[1m[35m (0.0ms)[0m ROLLBACK TO SAVEPOINT active_record_1
|
731
|
+
[1m[36m (0.0ms)[0m [1mrollback transaction[0m
|
732
|
+
[1m[35m (0.0ms)[0m begin transaction
|
733
|
+
[1m[36m (0.0ms)[0m [1mSAVEPOINT active_record_1[0m
|
734
|
+
[1m[35mSQL (1.4ms)[0m INSERT INTO "phones" ("created_at", "number", "possible_number", "updated_at") VALUES (?, ?, ?, ?) [["created_at", Thu, 11 Jul 2013 12:30:08 UTC +00:00], ["number", "972541234567"], ["possible_number", nil], ["updated_at", Thu, 11 Jul 2013 12:30:08 UTC +00:00]]
|
735
|
+
[1m[36m (0.1ms)[0m [1mRELEASE SAVEPOINT active_record_1[0m
|
736
|
+
[1m[35m (0.1ms)[0m rollback transaction
|
737
|
+
[1m[36m (0.0ms)[0m [1mbegin transaction[0m
|
738
|
+
[1m[35mPhone Load (0.1ms)[0m SELECT "phones".* FROM "phones" WHERE "phones"."id" = ? LIMIT 1 [["id", 450723037]]
|
739
|
+
[1m[36m (0.0ms)[0m [1mSAVEPOINT active_record_1[0m
|
740
|
+
[1m[35m (0.0ms)[0m RELEASE SAVEPOINT active_record_1
|
741
|
+
[1m[36m (0.0ms)[0m [1mrollback transaction[0m
|
742
|
+
[1m[35m (0.0ms)[0m begin transaction
|
743
|
+
[1m[36mPhone Load (0.0ms)[0m [1mSELECT "phones".* FROM "phones" WHERE "phones"."id" = ? LIMIT 1[0m [["id", 23760034]]
|
744
|
+
[1m[35m (0.0ms)[0m SAVEPOINT active_record_1
|
745
|
+
[1m[36m (0.0ms)[0m [1mROLLBACK TO SAVEPOINT active_record_1[0m
|
746
|
+
[1m[35m (0.0ms)[0m rollback transaction
|
747
|
+
[1m[36m (0.0ms)[0m [1mbegin transaction[0m
|
748
|
+
[1m[35mPhone Load (0.0ms)[0m SELECT "phones".* FROM "phones" WHERE "phones"."id" = ? LIMIT 1 [["id", 667262234]]
|
749
|
+
[1m[36m (0.0ms)[0m [1mSAVEPOINT active_record_1[0m
|
750
|
+
[1m[35m (0.0ms)[0m ROLLBACK TO SAVEPOINT active_record_1
|
751
|
+
[1m[36m (0.0ms)[0m [1mrollback transaction[0m
|
752
|
+
[1m[35m (0.0ms)[0m begin transaction
|
753
|
+
[1m[36mPhone Load (0.0ms)[0m [1mSELECT "phones".* FROM "phones" WHERE "phones"."id" = ? LIMIT 1[0m [["id", 703612349]]
|
754
|
+
[1m[35m (0.0ms)[0m SAVEPOINT active_record_1
|
755
|
+
[1m[36m (0.0ms)[0m [1mROLLBACK TO SAVEPOINT active_record_1[0m
|
756
|
+
[1m[35m (0.0ms)[0m rollback transaction
|
757
|
+
[1m[36m (0.1ms)[0m [1mbegin transaction[0m
|
758
|
+
[1m[35mPhone Load (0.1ms)[0m SELECT "phones".* FROM "phones" WHERE "phones"."id" = ? LIMIT 1 [["id", 450723037]]
|
759
|
+
[1m[36m (0.1ms)[0m [1mSELECT COUNT(*) FROM "phones" [0m
|
760
|
+
Processing by PhonesController#create as HTML
|
761
|
+
Parameters: {"phone"=>{"number"=>"972541234567"}}
|
762
|
+
[1m[35m (0.1ms)[0m SAVEPOINT active_record_1
|
763
|
+
[1m[36mSQL (0.2ms)[0m [1mINSERT INTO "phones" ("created_at", "number", "possible_number", "updated_at") VALUES (?, ?, ?, ?)[0m [["created_at", Thu, 11 Jul 2013 12:30:09 UTC +00:00], ["number", "972541234567"], ["possible_number", nil], ["updated_at", Thu, 11 Jul 2013 12:30:09 UTC +00:00]]
|
764
|
+
[1m[35m (0.0ms)[0m RELEASE SAVEPOINT active_record_1
|
765
|
+
Redirected to http://test.host/phones/703612350
|
766
|
+
Completed 302 Found in 3ms (ActiveRecord: 0.3ms)
|
767
|
+
[1m[36m (0.0ms)[0m [1mSELECT COUNT(*) FROM "phones" [0m
|
768
|
+
[1m[35m (0.1ms)[0m rollback transaction
|
769
|
+
[1m[36m (0.0ms)[0m [1mbegin transaction[0m
|
770
|
+
[1m[35mPhone Load (0.0ms)[0m SELECT "phones".* FROM "phones" WHERE "phones"."id" = ? LIMIT 1 [["id", 450723037]]
|
771
|
+
[1m[36m (0.0ms)[0m [1mSELECT COUNT(*) FROM "phones" [0m
|
772
|
+
Processing by PhonesController#destroy as HTML
|
773
|
+
Parameters: {"id"=>"450723037"}
|
774
|
+
[1m[35mPhone Load (0.0ms)[0m SELECT "phones".* FROM "phones" WHERE "phones"."id" = ? LIMIT 1 [["id", "450723037"]]
|
775
|
+
[1m[36m (0.0ms)[0m [1mSAVEPOINT active_record_1[0m
|
776
|
+
[1m[35mSQL (0.1ms)[0m DELETE FROM "phones" WHERE "phones"."id" = ? [["id", 450723037]]
|
777
|
+
[1m[36m (0.0ms)[0m [1mRELEASE SAVEPOINT active_record_1[0m
|
778
|
+
Redirected to http://test.host/phones
|
779
|
+
Completed 302 Found in 1ms (ActiveRecord: 0.2ms)
|
780
|
+
[1m[35m (0.0ms)[0m SELECT COUNT(*) FROM "phones"
|
781
|
+
[1m[36m (0.0ms)[0m [1mrollback transaction[0m
|
782
|
+
[1m[35m (0.0ms)[0m begin transaction
|
783
|
+
[1m[36mPhone Load (0.0ms)[0m [1mSELECT "phones".* FROM "phones" WHERE "phones"."id" = ? LIMIT 1[0m [["id", 450723037]]
|
784
|
+
Processing by PhonesController#edit as HTML
|
785
|
+
Parameters: {"id"=>"450723037"}
|
786
|
+
[1m[35mPhone Load (0.0ms)[0m SELECT "phones".* FROM "phones" WHERE "phones"."id" = ? LIMIT 1 [["id", "450723037"]]
|
787
|
+
Rendered phones/_form.html.erb (4.9ms)
|
788
|
+
Completed 200 OK in 31ms (Views: 30.1ms | ActiveRecord: 0.0ms)
|
789
|
+
[1m[36m (0.1ms)[0m [1mrollback transaction[0m
|
790
|
+
[1m[35m (0.0ms)[0m begin transaction
|
791
|
+
[1m[36mPhone Load (0.1ms)[0m [1mSELECT "phones".* FROM "phones" WHERE "phones"."id" = ? LIMIT 1[0m [["id", 450723037]]
|
792
|
+
Processing by PhonesController#index as HTML
|
793
|
+
[1m[35mPhone Load (0.1ms)[0m SELECT "phones".* FROM "phones"
|
794
|
+
Completed 200 OK in 4ms (Views: 3.4ms | ActiveRecord: 0.1ms)
|
795
|
+
[1m[36m (0.0ms)[0m [1mrollback transaction[0m
|
796
|
+
[1m[35m (0.0ms)[0m begin transaction
|
797
|
+
[1m[36mPhone Load (0.0ms)[0m [1mSELECT "phones".* FROM "phones" WHERE "phones"."id" = ? LIMIT 1[0m [["id", 450723037]]
|
798
|
+
Processing by PhonesController#new as HTML
|
799
|
+
Rendered phones/_form.html.erb (1.2ms)
|
800
|
+
Completed 200 OK in 3ms (Views: 2.4ms | ActiveRecord: 0.0ms)
|
801
|
+
[1m[35m (0.0ms)[0m rollback transaction
|
802
|
+
[1m[36m (0.0ms)[0m [1mbegin transaction[0m
|
803
|
+
[1m[35mPhone Load (0.0ms)[0m SELECT "phones".* FROM "phones" WHERE "phones"."id" = ? LIMIT 1 [["id", 450723037]]
|
804
|
+
Processing by PhonesController#show as HTML
|
805
|
+
Parameters: {"id"=>"450723037"}
|
806
|
+
[1m[36mPhone Load (0.0ms)[0m [1mSELECT "phones".* FROM "phones" WHERE "phones"."id" = ? LIMIT 1[0m [["id", "450723037"]]
|
807
|
+
Completed 200 OK in 2ms (Views: 1.4ms | ActiveRecord: 0.0ms)
|
808
|
+
[1m[35m (0.0ms)[0m rollback transaction
|
809
|
+
[1m[36m (0.0ms)[0m [1mbegin transaction[0m
|
810
|
+
[1m[35mPhone Load (0.0ms)[0m SELECT "phones".* FROM "phones" WHERE "phones"."id" = ? LIMIT 1 [["id", 450723037]]
|
811
|
+
Processing by PhonesController#update as HTML
|
812
|
+
Parameters: {"phone"=>{"number"=>"972541234567"}, "id"=>"450723037"}
|
813
|
+
[1m[36mPhone Load (0.0ms)[0m [1mSELECT "phones".* FROM "phones" WHERE "phones"."id" = ? LIMIT 1[0m [["id", "450723037"]]
|
814
|
+
[1m[35m (0.0ms)[0m SAVEPOINT active_record_1
|
815
|
+
[1m[36m (0.0ms)[0m [1mRELEASE SAVEPOINT active_record_1[0m
|
816
|
+
Redirected to http://test.host/phones/450723037
|
817
|
+
Completed 302 Found in 3ms (ActiveRecord: 0.1ms)
|
818
|
+
[1m[35m (0.0ms)[0m rollback transaction
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: phonelib
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.3
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -9,11 +9,11 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2013-
|
12
|
+
date: 2013-07-11 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: rails
|
16
|
-
requirement: &
|
16
|
+
requirement: &15166640 !ruby/object:Gem::Requirement
|
17
17
|
none: false
|
18
18
|
requirements:
|
19
19
|
- - ! '>='
|
@@ -21,10 +21,10 @@ dependencies:
|
|
21
21
|
version: 3.1.0
|
22
22
|
type: :development
|
23
23
|
prerelease: false
|
24
|
-
version_requirements: *
|
24
|
+
version_requirements: *15166640
|
25
25
|
- !ruby/object:Gem::Dependency
|
26
26
|
name: sqlite3
|
27
|
-
requirement: &
|
27
|
+
requirement: &15166180 !ruby/object:Gem::Requirement
|
28
28
|
none: false
|
29
29
|
requirements:
|
30
30
|
- - ! '>='
|
@@ -32,10 +32,10 @@ dependencies:
|
|
32
32
|
version: '0'
|
33
33
|
type: :development
|
34
34
|
prerelease: false
|
35
|
-
version_requirements: *
|
35
|
+
version_requirements: *15166180
|
36
36
|
- !ruby/object:Gem::Dependency
|
37
37
|
name: nokogiri
|
38
|
-
requirement: &
|
38
|
+
requirement: &15165700 !ruby/object:Gem::Requirement
|
39
39
|
none: false
|
40
40
|
requirements:
|
41
41
|
- - ! '>='
|
@@ -43,10 +43,10 @@ dependencies:
|
|
43
43
|
version: '0'
|
44
44
|
type: :development
|
45
45
|
prerelease: false
|
46
|
-
version_requirements: *
|
46
|
+
version_requirements: *15165700
|
47
47
|
- !ruby/object:Gem::Dependency
|
48
48
|
name: pry
|
49
|
-
requirement: &
|
49
|
+
requirement: &15165240 !ruby/object:Gem::Requirement
|
50
50
|
none: false
|
51
51
|
requirements:
|
52
52
|
- - ! '>='
|
@@ -54,10 +54,10 @@ dependencies:
|
|
54
54
|
version: '0'
|
55
55
|
type: :development
|
56
56
|
prerelease: false
|
57
|
-
version_requirements: *
|
57
|
+
version_requirements: *15165240
|
58
58
|
- !ruby/object:Gem::Dependency
|
59
59
|
name: shoulda-context
|
60
|
-
requirement: &
|
60
|
+
requirement: &15164720 !ruby/object:Gem::Requirement
|
61
61
|
none: false
|
62
62
|
requirements:
|
63
63
|
- - ! '>='
|
@@ -65,7 +65,7 @@ dependencies:
|
|
65
65
|
version: '0'
|
66
66
|
type: :development
|
67
67
|
prerelease: false
|
68
|
-
version_requirements: *
|
68
|
+
version_requirements: *15164720
|
69
69
|
description: Google libphonenumber library was taken as a basis for this gem. Gem
|
70
70
|
uses its data file for validations and number formatting.
|
71
71
|
email:
|
@@ -151,7 +151,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
151
151
|
version: '0'
|
152
152
|
segments:
|
153
153
|
- 0
|
154
|
-
hash:
|
154
|
+
hash: 3908723268238217362
|
155
155
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
156
156
|
none: false
|
157
157
|
requirements:
|
@@ -160,7 +160,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
160
160
|
version: '0'
|
161
161
|
segments:
|
162
162
|
- 0
|
163
|
-
hash:
|
163
|
+
hash: 3908723268238217362
|
164
164
|
requirements: []
|
165
165
|
rubyforge_project:
|
166
166
|
rubygems_version: 1.8.17
|