PRE联系人的一个BUG,哪位高手可以解决?( e0 @1 Y% \5 }0 ?
: @0 ` _0 a1 s
“严格的说,对北美用户来说不算BUG。但是国内用问题就出来了,在联系人里如果号码的后7位相同,PRE会判断为同一个号码,在拨打电话选择时只会显示其中一个。进去编辑联系人时其实里面不同的电话号码都有。比如某联系人三个手机号码18901234567和13301234567,13901234567,搜索联系人和拨打时只会显示其中一个,PRE认为都是一样的。另外,不同联系人号码如果后7位相同,PRE会把两个联系人link到一起,要在联系人里选择delete一个profile才能把两人分开”。( E; Q7 E& j5 U
3 E( }- g# h: \: `: U
为此,有解决的办法:6 B7 d3 e) y" C( [' {% m
解决alee2000提出的PRE联系人的一个BUG方法【已更新附件】5 |0 a& ^; o- J) z
2 }3 q4 a+ k& f8 c5 \ r/ ^+ ? [根据yourcc大侠所附文件phonenumber-model.js替换后,联系人无法编辑。联系人项下无电话等选项,编辑按键按下亦无反应。
; J4 M! y: _9 p; b不知是操作问题还是附件的文件phonenumber-model.js有问题?烦请哪位大侠查看一下phonenumber-model.js文件?
' G" {( ^7 i. N+ x8 |0 T% |
& B" s' ~$ C/ q$ }我用VI查看替换后phonenumber-model.js的命令符如下,不知有否错误?- /* Copyright 2009 Palm, Inc. All rights reserved. */
( z& u, c4 K9 V* |% U, p
6 w5 [: x) F% d9 T, X3 Y K- var PhoneNumber = Class.create({
( q9 h7 Z+ b l - initialize: function(number) {7 _) c3 |6 s2 B2 ~1 f! A, H) b
- if (number) {
) F I P# }& J- I% x* B2 f - this.value = number;
: f& v6 q+ U+ _! M* h+ A - this.displayValue = PhoneNumber.format(number);
( {8 D3 y- q9 c; K7 L: a - }1 o* L0 _1 W: k7 R4 p) U4 t3 s0 n
- this.size = "unassigned";! b U. R+ f9 ?$ X T
- },1 w3 h( ]( B0 q+ e% d4 k
- + b U* p7 N* W
- isPhoneNumber: true,/ f4 [/ {# \ m. {: @
- getHashKey: function(){
P' U; v0 Q% { - return PhoneNumber.getHashKey(this)+ c; n1 M) H- e
- },
# |$ o6 d. ~, n% A4 ^7 H - ! U$ b* W, ~* P# i6 @1 O g0 Y. Z% e3 o
- getRating: function(contact) {
* ], d: A) ]2 K( C7 l3 H - var rating = PhoneNumber.strip(this.value).length;6 z% x' N% A, ?4 U
- return rating;0 d. U2 I- I2 v7 c. T
- }
# a w% y" E6 w! H- n! _
9 s9 X* D* v8 q. U9 w- });
) j+ d% P% H0 w- A, _1 g
8 Y R* H8 z+ z- PhoneNumber.strip = function(numberStr) {6 `5 G1 b* @: _( u
- if(typeof numberStr === 'number'), w" ]# C& |" p% R |: U; L8 V
- numberStr = "" + numberStr;
\' v, [8 U* x7 R& F$ d - return numberStr.replace(/[^A-Za-z0-9+*#]+/g, "");9 y; P4 U3 J; ?. S5 c! ]; N$ m
- }
q1 g6 k& f& s. R
# [% N# q' V8 T0 a) M" R& p2 V, V- // US phone number formatter0 s# E4 o. z; G3 v
- PhoneNumber.format = function(numberStr) {
. m2 X9 U- [& {) G! i" f! A) D - return numberStr;3 ~% e' d2 B1 S4 @6 X q
- }
, D( u# P! @+ \% e: T" [, X - // var prev = PhoneNumber.strip(numberStr); k! L$ \8 c0 V3 w
- // if(prev.length < 7) return numberStr;
! L1 h$ t3 x0 c; u* Y9 b - // return Mojo.Format.formatPhoneNumber(prev);" @0 N2 M# H. H, G/ M
- return PhoneNumber.strip(numberStr);3 j8 s% l5 z7 J/ {
- }6 t$ b% l/ y* O8 ~
+ e" |, x0 _; t! `- PhoneNumber.getHashKey = function(phoneNumber) {
$ D0 F4 K! w6 R2 j - var stripped = PhoneNumber.strip(phoneNumber.value);- t: U6 p0 S* d- m
- if (stripped.length > 10) {) H1 `' U' v$ X) s2 v
- stripped = stripped.slice(stripped.length - 10);" \; E5 ]7 `5 T* _ C
- }
# z9 g. G+ A% W4 k3 x& y - return stripped;& W! `0 D" N9 _0 i
- }
6 ^- f0 f% s X2 e, b+ A% ?
' t2 h" o& k2 U& A- PhoneNumber.HOME = 0;
. ^( x% L8 a# T! v* n& Q2 I - PhoneNumber.WORK = 1;: r+ i' s3 }7 G o4 |8 c2 W' _/ C& i$ ?
- PhoneNumber.OTHER = 2;! N5 w; l7 q. Y! q2 e. @
- PhoneNumber.MOBILE = 3;
" T) C5 w# |9 `/ e: F7 c - PhoneNumber.PAGER = 4;' A* Q, l/ G: [5 ~5 t* G7 Y! J
- PhoneNumber.PERSONAL_FAX= 5;% ^& R. F* b: V7 d% E( G4 \
- PhoneNumber.FAX = 6;6 ]; N ~! c7 p
- 3 x- h) ]" g R' R
- PhoneNumber.popupLabels = [
+ g8 l a2 o/ \, Q$ w/ h - {value:3, label:$L("Mobile"), command:3},
3 Z1 G: b( G4 C9 A - {value:0, label:$L("Home"), command:0},7 V% o% b& r$ ~" R) K3 `9 l. ]/ j
- {value:1, label:$L("Work"), command:1},) x, v8 @6 {6 R
- {value:6, label:$L("Fax"), command:6},; w6 r5 O9 [$ z! y9 [7 S
- {value:2, label:$L("Other"), command:2}' Q/ i+ @ V" Q$ j' s
- ]
" m, @7 x' a |0 x n* i* |
! y' l+ U5 u& D/ W+ F- PhoneNumber.labels = {
9 }0 q: ^8 {; w) F. k - 3:$L('Mobile'),
& S1 x# W* i6 c2 d6 R4 R - 0:$L('Home'),
, e' L; x1 G. e7 d1 Q3 p - 1:$L('Work'),, p, P; b/ x2 A3 Y3 y
- 7:$L('Main'),, P* }; W3 d; `3 C* P
- 6:$L('Fax'),9 `9 ?, U. \. f/ t" e
- 5:$L('Fax'),0 m; y3 w6 b; Y2 U& Y$ E
- 4:$L('Pager'),
2 i- h# k3 j" O - 2:$L('Other')) x ]: A) q6 ]4 f
- };
复制代码
$ `: @- ?' Y& ]# k9 |+ t! ~[ 本帖最后由 xmyzl 于 2009-8-1 18:46 编辑 ] |