\r\n -> \n
[gnokii.git] / Docs / en_US / gsm / compare / index.htm
1 <HTML>
2 <HEAD>
3    <META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=ISO-8859-2">
4    <meta name="Description" content="Comparing phones">
5    <meta name="language" content="pl">
6    <meta name="revisit-after" content="15 days">
7    <meta name="Robots" content="all">
8    <meta name="KeyWords" content="3210, GSM, DCS, NCDS, MBUS, M2BUS, FBUS, Nokia, 5110, 5130, 6110, 6130, 6150, 9110, 7110, FAQ, Marcin, Wi±cek, Wiacek, Marcin Wi±cek, Marcin Wiacek">
9    <meta name="Author" content="Marcin Wi±cek">
10    <title>Compare your phone</title>
11    <link rel="stylesheet" href="../../styl.css" type="text/css">
12 </head>
13
14 <script language=javascript>
15
16 var numer=0;
17 var initialized=false; //if variables were correctly initialized
18
19 //THESE CAN BE CHANGED
20 var howmanyparameters=28;
21 var howmanyphones=9;
22
23 //init table
24 function minitialize(ilosc)
25 {
26   for (i=0;i<ilosc;++i) this[i]=0;
27   this.length=ilosc;
28   return this;
29 }
30
31 function f(mydata) {
32   this.data=mydata;
33   return this;
34 }
35
36 //adds phone info
37 function nphone(mydata)
38 {
39   if (numer<howmanyphones)
40   {
41     phonetable[numer]=new f(mydata);
42     numer++;
43   } else
44   {
45     alert("Too many nphone");
46   }
47 }
48
49 var phonetable=new minitialize(howmanyphones);
50 var checkboxstate=new minitialize(howmanyparameters*howmanyphones);
51
52 //THESE CAN BE CHANGED
53 nphone("Model,Cellular system,Internal phonebook,SMS memory,WAP,Operator logo,Caller groups,Startup logo,Picture images,Ringtones,Calendar,Connection,Data calls,Voice tags,Display,Time&Date,SIM Application Toolkit,Games,DMCP/TTML,Profiles,SMS features,Battery,Vibra,EFR,Call registry,ALS,Calculator,size");
54 nphone("Nokia 2110i (NHE-4),GSM 900,125+10 (notepad),5,-,-,-,-,-,8,-,MBUS,9600,-,5 lines,countdown counter,-,-,-,-,reports,Ni-Cd 400/standard NiMH 550/vibra NiMH 550/Ni-Cd 1100/Ni-MH 1500,Battery,-,10 dialled/10 received/10 missed,-,-,?");
55 nphone("Nokia 3110 (NHE-8),GSM 900,-,-,-,-,-,-,-,25,-,FBUS/MBUS,9600,-,4 lines/13 chars,-,-,-,-,1+1,reports,Li-Ion 400 (146 g)/standard 550 NiMH (187 g)/vibra 550 NiMH (187 g)/Li-Ion 1500 (203 g),Battery,-,5 dialled/5 received/5 missed,-,-,?");
56 nphone("Nokia 3210 (NSE-8/9),GSM 900/1800,-,-,-,1 (72x14),ringtone to each name,animated/static (84x48),4 (72x28),38+2(composer),-,FBUS/MBUS,-,-,84x48,time/date/alarm,yes,Snake/Logic/Memory/React/Rotation,-,1+5,reports+T9+sets,Ni-MH 1250 (151 g),Phone,yes,8 dialled(time/date)/8 received(time/date)/8 missed(time/date),yes,yes,?");
57 nphone("Nokia 3310 (NHM-5),GSM 900/1800,-,8 templates(70 chars)/8 smileys(7 chars),-,1 (72x14),ringtone to each name,animated/static (84x48),8+6 screen savers (72x28),35+7(composer),10 reminders (36 chars),FBUS/MBUS,-,8,84x48,time/date/alarm/stopwatch/countdown counter,yes,Snake II/Space Impact/Bantumi/Pairs II,-,6,reports+unicode+linked+T9+sets+chat+multiple send,standard Ni-MH 900/Li-Ion 850,Phone,yes,?,yes,yes,113x48x22mm");
58 nphone("Nokia 3330 (NHM-6),GSM 900/1800,100,8 templates(70 chars)/8 smileys(7 chars),1.1 (CSD/2.5kb deck),1 (72x14),ringtone to each name,animated/static (84x48),8+6 screen savers (72x28/animated),35+7(composer),10 reminders (36 chars),FBUS/MBUS,-,8,84x48,time/date/alarm/stopwatch/countdown counter,yes,Snake II/Space Impact/Bantumi/Pairs II/Bumper+downloaed via WAP,-,6,reports+unicode+linked+T9+sets+chat+multiple send,standard Ni-MH 900/Li-Ion 850,Phone,yes,?,yes,yes,113x48x22mm");
59 nphone("Nokia 5110 (NSE-1),GSM 900,-,-,-,1 (72x14),-,-,-,30,-,FBUS/MBUS,9600,-,84x48,time/hidden date/alarm,-,Snake/Logic/Memory,-,1+5,reports+sets,Li-Ion 900 (154g)/Li-Ion 1000/standard NiMH 900 (170g)/vibra NiMH 900 (179 g)/Li-Ion 1500 (165 g),Battery,yes,8 dialled(time/date hidden)/5 received(time/date hidden)/5 missed(time/date hidden),yes,yes,?");
60 nphone("Nokia 6150 (NSM-1),GSM 900/1800,150,-,-,1 (72x14),5,static (84x48),-,35+1,max. 1297 chars and 50 entries,FBUS/MBUS/Irda,14400,-,84x48,time/date/alarm,yes,Snake (2 players)/Logic/Memory,yes,6,reports+sets,standard Li-Ion 900/Li-Ion 1000/NiMH 900/vibra NiMH 900/Li-Ion 1500,Battery,yes,10 dialled(time/date) 10 received(time/date) 10 missed(time/date),yes,yes,?");
61 nphone("Nokia 6210 (NPE-3),EGSM 900/1800,500 with 3 numbers and 1 text (max. under one name: 5 numbers and 2 texts),150 or 50 picture images/templates,1.1 (CDS/SMS/1.3kb deck/50kb cache),1 (72x28),5,static (96x60),50,35+5,220,FBUS/MBUS/Irda/Bluetooth,9.600/14.400 single slot or HSCSD (2+2/3+1/non transparent) via IrDA or cable,10,96x60,time/date/alarm,yes,Snake II (2 players)/Opposite/Pairs II,-,6,reports+sets+multiple send+T9,Li-Polymer 800 (100g)/Bluetooth Li-Ion 810 (120g)/standard Li-Ion 900 (144g)/Li-Ion 1050 (111g),Phone,yes,? dialled(time/date) ? received(time/date) ? missed(time/date),yes,yes,129.5x47.3x18.8mm(standard battery)");
62
63 function ret_value(data,number) {
64
65   var ret_previous=0,ret_thisone=0;
66
67   for (var i=0;i<number+1;i++) {
68     var zx=data.indexOf(",",ret_thisone);
69     if (zx==-1) zx=data.length;
70     ret_previous=ret_thisone;
71     ret_thisone=zx+1;
72   }
73   
74   return data.substring(ret_previous,ret_thisone-1);
75 }
76
77
78 function new_state() {
79   this.checked=true;
80   this.tresc='';
81   this.num=0;
82   return this;
83 }
84
85 function change_state(i) {
86   if (checkboxstate[i].checked==true) 
87     checkboxstate[i].checked=false;
88   else
89     checkboxstate[i].checked=true;
90   return true;
91 }
92
93 //draws form
94 function myform() {
95   var num=0;
96
97   if (top.initialized==false) {
98
99     for (i=0;i<top.checkboxstate.length;i++)
100       top.checkboxstate[i]=new top.new_state();
101
102     top.initialized=true;
103
104     for (j=0;j<top.howmanyparameters;j++) {
105       for (i=0;i<top.numer;i++) {
106         var mystring=top.ret_value(top.phonetable[i].data,j);
107
108         for (z=0;z<i;z++) {
109           if (mystring==top.ret_value(top.phonetable[z].data,j)) {
110             mystring='';
111             break;
112           }
113         }
114
115         if (mystring!='') {
116           top.checkboxstate[num].tresc=mystring;
117           top.checkboxstate[num].num=i;
118           num++;
119         }
120       }
121     }
122
123     top.checkboxstate.length=num;
124   }
125
126   num=0;
127
128   top.frames[1].document.open();
129   top.frames[1].document.write("<link rel=stylesheet href=../../styl.css type=text/css>");
130   top.frames[1].document.write("<a NAME=Top></a>");
131   top.frames[1].document.write("<center><font color=#1F409F size=+2 class=tytul>Compare your phone</font></center>");
132   top.frames[1].document.write("<p><hr size=2 noshade width=60% align=center style='color:#004080'>");
133   top.frames[1].document.write("<font class=font>PL: Ta strona pozwala porownywac rozne modele telefonow (jezeli bedzie nia zainteresowanie, dodam kolejne). Bedzie dostepna wylacznie po angielsku");
134   top.frames[1].document.write("<p>This is simple script for comparing info about phones");
135   top.frames[1].document.write("<p>If checkbox name is written in bold, it's category name. If it's ");
136   top.frames[1].document.write("not selected, this category will be not displayed.");
137   top.frames[1].document.write("<p>You can also mark, what parameters from each category MUST be available ");
138   top.frames[1].document.write("in phone description to see this description (the choice is valid even, if category will be not visible).");
139   top.frames[1].document.write("<p>Tested for Internet Explorer 5 (don't use Refresh or Back from menu here) and Netscape 4");
140   top.frames[1].document.write("<FORM NAME=one>");
141   for (j=0;j<top.checkboxstate.length;j++) {
142     top.frames[1].document.write("<INPUT TYPE=CHECKBOX NAME=",num," ");
143     if (top.checkboxstate[j].checked) top.frames[1].document.write("CHECKED ");
144     if (top.checkboxstate[j].num==0)
145       top.frames[1].document.write("OnClick=top.change_state(",j,")><b>",top.checkboxstate[j].tresc,"</b></INPUT>");
146     else
147       top.frames[1].document.write("OnClick=top.change_state(",j,")>",top.checkboxstate[j].tresc,"</INPUT>");
148     top.frames[1].document.write("<br>");
149   }
150   top.frames[1].document.write("<INPUT TYPE=BUTTON OnClick=top.mytable() VALUE='>> Display'></FORM></font>");
151   top.frames[1].document.write("<p><a class=shref href=#Top><small><em>Back to the top</em></small></a><br>");
152   top.frames[1].document.write("<hr size=2 noshade width=60% align=center style=color:#004080>");
153   top.frames[1].document.write("<br><p align=RIGHT><font class='autor' size='1'><a class=autoremail href='mailto:Marcin Wi±cek<Marcin-Wiacek@topnet.pl>'>Marcin Wi±cek</a> (<a class=autoremail href=http://marcin-wiacek.topnet.pl>WWW</a>)");
154   top.frames[1].document.close();
155 }
156
157 //draws table with info
158 function mytable() {
159   top.frames[1].document.open();
160   top.frames[1].document.write("<link rel=stylesheet href=../../styl.css type=text/css>");
161   top.frames[1].document.write("<a NAME=Top></a>");
162   top.frames[1].document.write("<center><font color=#1F409F size=+2 class=tytul>Compare phones</font></center>");
163   top.frames[1].document.write("<p><hr size=2 noshade width=60% align=center style='color:#004080'><p>");
164   top.frames[1].document.write("<table border=1 cellspacing=0>");
165   for (var i=0;i<top.numer;i++) {
166     var mytext="<tr>";
167     var q=0;
168     for (j=0;j<top.howmanyparameters;j++) {
169       var zwr=top.ret_value(phonetable[i].data,j);
170       var w=q+1;
171       while (true) {
172         if (w>top.checkboxstate.length) break;
173         if (top.checkboxstate[w].num==0) break;
174         if (top.checkboxstate[w].tresc==zwr) {
175           if (top.checkboxstate[w].checked==false) mytext="";
176           break;
177         }
178         w++;
179       }
180       if (mytext=="") break;
181       if (top.checkboxstate[q].checked) {
182         mytext=mytext+"<td align=center>";
183         if(i==0) mytext=mytext+"<font class=font><b>";
184         mytext=mytext+zwr;
185         if(i==0) mytext=mytext+"</b></font>";
186         mytext=mytext+"</td>";
187       }
188       q++;
189       while (top.checkboxstate[q].num!=0 && q<top.checkboxstate.length) {
190         q++;
191       }
192     }
193     if (mytext!="") top.frames[1].document.write(mytext+"</tr>");  
194   }
195   top.frames[1].document.write("</table>");
196   top.frames[1].document.write("<FORM NAME=two>");
197   top.frames[1].document.write("<INPUT NAME=222 TYPE=BUTTON OnClick=top.myform() VALUE='<< Back to parameters'></FORM>");  
198   top.frames[1].document.write("<p><a class=shref href=#Top><small><em>Back to the top</em></small></a><br>");
199   top.frames[1].document.write("<hr size=2 noshade width=60% align=center style=color:#004080>");
200   top.frames[1].document.write("<br><p align=RIGHT><font class='autor' size='1'><a class=autoremail href='mailto:Marcin Wi±cek<Marcin-Wiacek@topnet.pl>'>Marcin Wi±cek</a> (<a class=autoremail href=http://marcin-wiacek.topnet.pl>WWW</a>)");
201   top.frames[1].document.close();
202 }
203
204 document.write("<frameset cols=0,* border=0 frameborder=no>");
205 document.write("<frame noresize src=null.htm><frame src=1.htm></frameset>");
206 </script>
207 <noscript>
208 Required WWW browser with Java Script !
209 </noscript>
210 </html>