doxygen comments
[aspt.git] / main.cc
1 /*******************************************************************
2 Jan Cermak | johniez | aspt.johniez.com
3 Creative Commons 2.5 Attribution-NonCommercial-NoDerivs 2.5 license
4 http://creativecommons.org/licenses/by-nc-nd/2.5/legalcode
5 *******************************************************************/
6
7 #include "main.h"
8
9 void parse(const QString &data);
10
11 int playerCnt;          ///< number of players parsed
12 Player pls[45];         ///< parsed players array
13 int staffCnt;           ///< number of staff parsed
14 StaffMemberStruct staff[7];             ///< parsed staff array
15 StadiumStruct stadium;          ///< parsed stadium
16 ClubStruct club;                ///< parsed club
17 int dataParsed[20][4];
18 int globSlot, curSlot, curSeason;
19
20 /**
21  * \brief Function parsing input XML.
22  *
23  * Parse players, staff, stadium etc. info from soccerproject XML.
24  * \param[in] data path to input xml.
25  */
26 void parse(const QString &data) {
27         QDomDocument doc("spdt");
28         QFile file( data );
29         file.open( QIODevice::ReadOnly );
30         doc.setContent( &file );
31         file.close();
32         
33         playerCnt = 0;
34         staffCnt = 0;
35         
36         QDomElement root = doc.documentElement();
37         if( root.tagName() == "SoccerProject" ) {
38                 QDomNode n = root.firstChild();
39                 
40                 while( !n.isNull() ) {
41                         QDomElement e = n.toElement();
42                         if( !e.isNull() ) {
43                                 if( e.tagName() == "GlobalInfo" ) {
44                                         QDomNode ID = e.firstChild();
45                                         while( !ID.isNull() ) {
46                                                 QDomElement IDD = ID.toElement();
47                                                 if(IDD.tagName() == "cur_globalslot" ) {
48                                                         QDomElement pl = IDD.toElement();
49                                                         globSlot = pl.text().toInt();
50                                                 }
51                                                 if(IDD.tagName() == "cur_slot" ) {
52                                                         QDomElement pl = IDD.toElement();
53                                                         curSlot = pl.text().toInt();
54                                                 }
55                                                 if(IDD.tagName() == "cur_season" ) {
56                                                         QDomElement pl = IDD.toElement();
57                                                         curSeason = pl.text().toInt();
58                                                 }
59                                                 ID = ID.nextSibling();
60                                         }
61                                 }
62                                 if( e.tagName() == "Club" ) {
63                                         QDomNode ID = e.firstChild();
64                                         while( !ID.isNull() ) {
65                                                 QDomElement IDD = ID.toElement();
66                                                 if(IDD.tagName() == "name" ) {
67                                                         QDomElement pl = IDD.toElement();
68                                                         club.name = pl.text();
69                                                 }
70                                                 if(IDD.tagName() == "budg" ) {
71                                                         QDomElement pl = IDD.toElement();
72                                                         club.budget = pl.text();
73                                                 }
74                                                 if(IDD.tagName() == "rat" ) {
75                                                         QDomElement pl = IDD.toElement();
76                                                         club.rat = pl.text();
77                                                 }
78                                                 if(IDD.tagName() == "incup" ) {
79                                                         QDomElement pl = IDD.toElement();
80                                                         club.incup = pl.text().toInt();
81                                                 }
82                                                 if(IDD.tagName() == "fndd" ) {
83                                                         QDomElement pl = IDD.toElement();
84                                                         club.fndd = pl.text();
85                                                 }
86                                                 if(IDD.tagName() == "spirit" ) {
87                                                         QDomElement pl = IDD.toElement();
88                                                         club.spirit = pl.text();
89                                                 }
90                                                 if(IDD.tagName() == "curpos" ) {
91                                                         QDomElement pl = IDD.toElement();
92                                                         club.curpos = pl.text();
93                                                 }
94                                                 if(IDD.tagName() == "curdiv" ) {
95                                                         QDomElement pl = IDD.toElement();
96                                                         club.curdiv = pl.text();
97                                                 }
98                                                 if(IDD.tagName() == "totgmade" ) {
99                                                         QDomElement pl = IDD.toElement();
100                                                         club.totgmade = pl.text();
101                                                 }
102                                                 if(IDD.tagName() == "totgrecv" ) {
103                                                         QDomElement pl = IDD.toElement();
104                                                         club.totgrecv = pl.text();
105                                                 }
106                                                 if(IDD.tagName() == "curgmade" ) {
107                                                         QDomElement pl = IDD.toElement();
108                                                         club.curgmade = pl.text();
109                                                 }
110                                                 if(IDD.tagName() == "curgrecv" ) {
111                                                         QDomElement pl = IDD.toElement();
112                                                         club.curgrecv = pl.text();
113                                                 }
114                                                 if(IDD.tagName() == "curlgmade" ) {
115                                                         QDomElement pl = IDD.toElement();
116                                                         club.curlgmade = pl.text();
117                                                 }
118                                                 if(IDD.tagName() == "curlgrecv" ) {
119                                                         QDomElement pl = IDD.toElement();
120                                                         club.curlgrecv = pl.text();
121                                                 }
122                                                 if(IDD.tagName() == "tothgames" ) {
123                                                         QDomElement pl = IDD.toElement();
124                                                         club.tothgames = pl.text();
125                                                 }
126                                                 if(IDD.tagName() == "totwins" ) {
127                                                         QDomElement pl = IDD.toElement();
128                                                         club.totwins = pl.text();
129                                                 }
130                                                 if(IDD.tagName() == "totdraws" ) {
131                                                         QDomElement pl = IDD.toElement();
132                                                         club.totdraws = pl.text();
133                                                 }
134                                                 if(IDD.tagName() == "totlosts" ) {
135                                                         QDomElement pl = IDD.toElement();
136                                                         club.totlosts = pl.text();
137                                                 }
138                                                 if(IDD.tagName() == "curhgames" ) {
139                                                         QDomElement pl = IDD.toElement();
140                                                         club.curhgames = pl.text();
141                                                 }
142                                                 if(IDD.tagName() == "curwins" ) {
143                                                         QDomElement pl = IDD.toElement();
144                                                         club.curwins = pl.text();
145                                                 }
146                                                 if(IDD.tagName() == "curdraws" ) {
147                                                         QDomElement pl = IDD.toElement();
148                                                         club.curdraws = pl.text();
149                                                 }
150                                                 if(IDD.tagName() == "curlosts" ) {
151                                                         QDomElement pl = IDD.toElement();
152                                                         club.curlosts = pl.text();
153                                                 }
154                                                 if(IDD.tagName() == "curlwins" ) {
155                                                         QDomElement pl = IDD.toElement();
156                                                         club.curlwins = pl.text();
157                                                 }
158                                                 if(IDD.tagName() == "curldraws" ) {
159                                                         QDomElement pl = IDD.toElement();
160                                                         club.curldraws = pl.text();
161                                                 }
162                                                 if(IDD.tagName() == "curllosts" ) {
163                                                         QDomElement pl = IDD.toElement();
164                                                         club.curllosts = pl.text();
165                                                 }
166                                                 if(IDD.tagName() == "totmaxatt" ) {
167                                                         QDomElement pl = IDD.toElement();
168                                                         club.totmaxatt = pl.text();
169                                                 }
170                                                 if(IDD.tagName() == "curmaxatt" ) {
171                                                         QDomElement pl = IDD.toElement();
172                                                         club.curmaxatt = pl.text();
173                                                 }
174                                                 if(IDD.tagName() == "totavgatt" ) {
175                                                         QDomElement pl = IDD.toElement();
176                                                         club.totavgatt = pl.text();
177                                                 }
178                                                 if(IDD.tagName() == "curavgatt" ) {
179                                                         QDomElement pl = IDD.toElement();
180                                                         club.curavgatt = pl.text();
181                                                 }
182                                                 if(IDD.tagName() == "form" ) {
183                                                         QDomElement pl = IDD.toElement();
184                                                         club.form = pl.text();
185                                                 }
186                                                 if(IDD.tagName() == "for_a" ) {
187                                                         QDomElement pl = IDD.toElement();
188                                                         club.for_a = pl.text();
189                                                 }
190                                                 if(IDD.tagName() == "tactic_a" ) {
191                                                         QDomElement pl = IDD.toElement();
192                                                         club.tactic_a = pl.text();
193                                                 }
194                                                 if(IDD.tagName() == "attstyle_a" ) {
195                                                         QDomElement pl = IDD.toElement();
196                                                         club.attstyle_a = pl.text();
197                                                 }
198                                                 if(IDD.tagName() == "agr_a" ) {
199                                                         QDomElement pl = IDD.toElement();
200                                                         club.agr_a = pl.text();
201                                                 }
202                                                 if(IDD.tagName() == "cap_a" ) {
203                                                         QDomElement pl = IDD.toElement();
204                                                         club.cap_a = pl.text();
205                                                 }
206                                                 ID = ID.nextSibling();
207                                         }
208                                 }
209                                 if( e.tagName() == "Stadium" ) {
210                                         QDomNode ID = e.firstChild();
211                                         while( !ID.isNull() ) {
212                                                 QDomElement IDD = ID.toElement();
213                                                 if(IDD.tagName() == "stadiumID" ) {
214                                                         QDomElement pl = IDD.toElement();
215                                                         stadium.id = pl.text();
216                                                 }
217                                                 if(IDD.tagName() == "name" ) {
218                                                         QDomElement pl = IDD.toElement();
219                                                         stadium.name = pl.text();
220                                                 }
221                                                 if(IDD.tagName() == "field_status" ) {
222                                                         QDomElement pl = IDD.toElement();
223                                                         stadium.field_status = pl.text();
224                                                 }
225                                                 if(IDD.tagName() == "price_league" ) {
226                                                         QDomElement pl = IDD.toElement();
227                                                         stadium.priceLeague = pl.text();
228                                                 }
229                                                 if(IDD.tagName() == "price_cup" ) {
230                                                         QDomElement pl = IDD.toElement();
231                                                         stadium.priceCup = pl.text();
232                                                 }
233                                                 if(IDD.tagName() == "price_friendly" ) {
234                                                         QDomElement pl = IDD.toElement();
235                                                         stadium.priceFriendly = pl.text();
236                                                 }
237                                                 if(IDD.tagName() == "price_friendlycup" ) {
238                                                         QDomElement pl = IDD.toElement();
239                                                         stadium.priceFriendlyCup = pl.text();
240                                                 }
241                                                 if(IDD.tagName() == "fanpot" ) {
242                                                         QDomElement pl = IDD.toElement();
243                                                         stadium.fans = pl.text();
244                                                 }
245                                                 if(IDD.tagName() == "fansatis" ) {
246                                                         QDomElement pl = IDD.toElement();
247                                                         stadium.fanSatis = pl.text();
248                                                 }
249                                                 if(IDD.tagName() == "cap_n" ) {
250                                                         QDomElement pl = IDD.toElement();
251                                                         stadium.cap_n = pl.text();
252                                                 }
253                                                 if(IDD.tagName() == "cap_e" ) {
254                                                         QDomElement pl = IDD.toElement();
255                                                         stadium.cap_e = pl.text();
256                                                 }
257                                                 if(IDD.tagName() == "cap_w" ) {
258                                                         QDomElement pl = IDD.toElement();
259                                                         stadium.cap_w = pl.text();
260                                                 }
261                                                 if(IDD.tagName() == "cap_s" ) {
262                                                         QDomElement pl = IDD.toElement();
263                                                         stadium.cap_s = pl.text();
264                                                 }
265                                                 if(IDD.tagName() == "lights_ne" ) {
266                                                         QDomElement pl = IDD.toElement();
267                                                         stadium.lights_ne = pl.text();
268                                                 }
269                                                 if(IDD.tagName() == "lights_se" ) {
270                                                         QDomElement pl = IDD.toElement();
271                                                         stadium.lights_se = pl.text();
272                                                 }
273                                                 if(IDD.tagName() == "lights_nw" ) {
274                                                         QDomElement pl = IDD.toElement();
275                                                         stadium.lights_nw = pl.text();
276                                                 }
277                                                 if(IDD.tagName() == "lights_sw" ) {
278                                                         QDomElement pl = IDD.toElement();
279                                                         stadium.lights_sw = pl.text();
280                                                 }
281                                                 if(IDD.tagName() == "sb1" ) {
282                                                         QDomElement pl = IDD.toElement();
283                                                         stadium.sb1 = pl.text();
284                                                 }
285                                                 if(IDD.tagName() == "sb2" ) {
286                                                         QDomElement pl = IDD.toElement();
287                                                         stadium.sb2 = pl.text();
288                                                 }
289                                                 if(IDD.tagName() == "field" ) {
290                                                         QDomElement pl = IDD.toElement();
291                                                         stadium.field = pl.text();
292                                                 }
293                                                 if(IDD.tagName() == "parking" ) {
294                                                         QDomElement pl = IDD.toElement();
295                                                         stadium.parking = pl.text();
296                                                 }
297                                                 if(IDD.tagName() == "wc" ) {
298                                                         QDomElement pl = IDD.toElement();
299                                                         stadium.wc = pl.text();
300                                                 }
301                                                 if(IDD.tagName() == "kantine" ) {
302                                                         QDomElement pl = IDD.toElement();
303                                                         stadium.bar = pl.text();
304                                                 }
305                                                 if(IDD.tagName() == "youth_centre" ) {
306                                                         QDomElement pl = IDD.toElement();
307                                                         stadium.youth_center = pl.text();
308                                                 }
309                                                 if(IDD.tagName() == "ds_n" ) {
310                                                         QDomElement pl = IDD.toElement();
311                                                         stadium.ds_n = pl.text();
312                                                 }
313                                                 if(IDD.tagName() == "ds_e" ) {
314                                                         QDomElement pl = IDD.toElement();
315                                                         stadium.ds_e = pl.text();
316                                                 }
317                                                 if(IDD.tagName() == "ds_w" ) {
318                                                         QDomElement pl = IDD.toElement();
319                                                         stadium.ds_w = pl.text();
320                                                 }
321                                                 if(IDD.tagName() == "ds_sn" ) {
322                                                         QDomElement pl = IDD.toElement();
323                                                         stadium.ds_s = pl.text();
324                                                 }
325                                                 if(IDD.tagName() == "ds_lights_ne" ) {
326                                                         QDomElement pl = IDD.toElement();
327                                                         stadium.ds_lights_ne = pl.text();
328                                                 }
329                                                 if(IDD.tagName() == "ds_lights_se" ) {
330                                                         QDomElement pl = IDD.toElement();
331                                                         stadium.ds_lights_se = pl.text();
332                                                 }
333                                                 if(IDD.tagName() == "ds_lights_nw" ) {
334                                                         QDomElement pl = IDD.toElement();
335                                                         stadium.ds_lights_nw = pl.text();
336                                                 }
337                                                 if(IDD.tagName() == "ds_lights_sw" ) {
338                                                         QDomElement pl = IDD.toElement();
339                                                         stadium.ds_lights_sw = pl.text();
340                                                 }
341                                                 if(IDD.tagName() == "ds_sb1" ) {
342                                                         QDomElement pl = IDD.toElement();
343                                                         stadium.ds_sb1 = pl.text();
344                                                 }
345                                                 if(IDD.tagName() == "ds_sb2" ) {
346                                                         QDomElement pl = IDD.toElement();
347                                                         stadium.ds_sb2 = pl.text();
348                                                 }
349                                                 if(IDD.tagName() == "ds_bar" ) {
350                                                         QDomElement pl = IDD.toElement();
351                                                         stadium.ds_bar = pl.text();
352                                                 }
353                                                 if(IDD.tagName() == "ds_wc" ) {
354                                                         QDomElement pl = IDD.toElement();
355                                                         stadium.ds_wc = pl.text();
356                                                 }
357                                                 if(IDD.tagName() == "ds_park" ) {
358                                                         QDomElement pl = IDD.toElement();
359                                                         stadium.ds_park = pl.text();
360                                                 }
361                                                 if(IDD.tagName() == "ds_field" ) {
362                                                         QDomElement pl = IDD.toElement();
363                                                         stadium.ds_field = pl.text();
364                                                 }
365                                                 if(IDD.tagName() == "park_fu" ) {
366                                                         QDomElement pl = IDD.toElement();
367                                                         stadium.park_fu = pl.text().toInt();
368                                                 }
369                                                 if(IDD.tagName() == "wc_fu" ) {
370                                                         QDomElement pl = IDD.toElement();
371                                                         stadium.wc_fu = pl.text().toInt();
372                                                 }
373                                                 if(IDD.tagName() == "bar_fu" ) {
374                                                         QDomElement pl = IDD.toElement();
375                                                         stadium.bar_fu = pl.text().toInt();
376                                                 }
377                                                 if(IDD.tagName() == "sb_fu" ) {
378                                                         QDomElement pl = IDD.toElement();
379                                                         stadium.sb_fu = pl.text().toInt();
380                                                 }
381                                                 if(IDD.tagName() == "lights_fu" ) {
382                                                         QDomElement pl = IDD.toElement();
383                                                         stadium.lights_fu = pl.text().toInt();
384                                                 }
385                                                 ID = ID.nextSibling();
386                                         }
387                                 }
388                                 if( e.tagName() == "StaffMembers" ) {
389                                         QDomNode p = e.firstChild();
390                                         int curStaff = 0;
391                                         while( !p.isNull() ) {
392                                                 QDomElement pp = p.toElement();
393                                                 if( pp.tagName() == "Staff" ) {
394                                                         QDomNode ID = pp.firstChild();
395                                                         while( !ID.isNull() ) {
396                                                                 QDomElement IDD = ID.toElement();
397                                                                 if(IDD.tagName() == "staffID" ) {
398                                                                         QDomElement pl = IDD.toElement();
399                                                                         staff[curStaff].id = pl.text();
400                                                                 }
401                                                                 if(IDD.tagName() == "role" ) {
402                                                                         QDomElement pl = IDD.toElement();
403                                                                         staff[curStaff].role = pl.text();
404                                                                 }
405                                                                 if(IDD.tagName() == "name" ) {
406                                                                         QDomElement pl = IDD.toElement();
407                                                                         staff[curStaff].name = pl.text();
408                                                                 }
409                                                                 if(IDD.tagName() == "wage" ) {
410                                                                         QDomElement pl = IDD.toElement();
411                                                                         staff[curStaff].wage = pl.text();
412                                                                 }
413                                                                 if(IDD.tagName() == "contr" ) {
414                                                                         QDomElement pl = IDD.toElement();
415                                                                         staff[curStaff].contr = pl.text();
416                                                                 }
417                                                                 if(IDD.tagName() == "age" ) {
418                                                                         QDomElement pl = IDD.toElement();
419                                                                         staff[curStaff].age = pl.text();
420                                                                 }
421                                                                 if(IDD.tagName() == "bd" ) {
422                                                                         QDomElement pl = IDD.toElement();
423                                                                         staff[curStaff].birth = pl.text();
424                                                                 }
425                                                                 if(IDD.tagName() == "inservice" ) {
426                                                                         QDomElement pl = IDD.toElement();
427                                                                         staff[curStaff].inservice = pl.text();
428                                                                 }
429                                                                 if(IDD.tagName() == "course_slot" ) {
430                                                                         QDomElement pl = IDD.toElement();
431                                                                         staff[curStaff].course = pl.text();
432                                                                 }
433                                                                 if(IDD.tagName() == "rat" ) {
434                                                                         QDomElement pl = IDD.toElement();
435                                                                         staff[curStaff].rating = pl.text();
436                                                                 }
437                                                                 ID = ID.nextSibling();
438                                                         }
439                                                 }
440                                                 p = p.nextSibling();
441                                                 curStaff++;
442                                                 staffCnt++;
443                                         }
444                                 }
445                                 if( e.tagName() == "Players" ) {
446                                         QDomNode p = e.firstChild();
447                                         int curPlayer = 0;
448                                         while( !p.isNull() ) {
449                                                 QDomElement pp = p.toElement();
450                                                 if( pp.tagName() == "Player" ) {
451                                                         QDomNode ID = pp.firstChild();
452                                                         while( !ID.isNull() ) {
453                                                                 QDomElement IDD = ID.toElement();
454                                                                 if(IDD.tagName() == "id" ) {
455                                                                         QDomElement pl = IDD.toElement();
456                                                                         pls[curPlayer].id = pl.text();
457                                                                 }
458                                                                 if(IDD.tagName() == "fn" ) {
459                                                                         QDomElement pl = IDD.toElement();
460                                                                         pls[curPlayer].fname = pl.text();
461                                                                 }
462                                                                 if(IDD.tagName() == "ln" ) {
463                                                                         QDomElement pl = IDD.toElement();
464                                                                         pls[curPlayer].lname = pl.text();
465                                                                 }
466                                                                 if(IDD.tagName() == "pos" ) {
467                                                                         QDomElement pl = IDD.toElement();
468                                                                         switch(pl.text().toInt()) {
469                                                                                 case 0: pls[curPlayer].position = "GK"; break;
470                                                                                 case 1: pls[curPlayer].position = "LB"; break;
471                                                                                 case 2: pls[curPlayer].position = "CB"; break;
472                                                                                 case 3: pls[curPlayer].position = "SW"; break;
473                                                                                 case 4: pls[curPlayer].position = "RB"; break;
474                                                                                 case 5: pls[curPlayer].position = "LM"; break;
475                                                                                 case 6: pls[curPlayer].position = "CM"; break;
476                                                                                 case 7: pls[curPlayer].position = "RM"; break;
477                                                                                 case 8: pls[curPlayer].position = "LF"; break;
478                                                                                 case 9: pls[curPlayer].position = "CF"; break;
479                                                                                 case 10: pls[curPlayer].position = "RF"; break;
480                                                                                 case 11: pls[curPlayer].position = "SB1"; break;
481                                                                                 case 12: pls[curPlayer].position = "SB2"; break;
482                                                                                 case 13: pls[curPlayer].position = "SB3"; break;
483                                                                                 case 14: pls[curPlayer].position = "SB4"; break;
484                                                                                 case 15: pls[curPlayer].position = "SB5"; break;
485                                                                                 case 16: pls[curPlayer].position = "--"; break;
486                                                                         }
487                                                                 }
488                                                                 if(IDD.tagName() == "rat" ) {
489                                                                         QDomElement pl = IDD.toElement();
490                                                                         pls[curPlayer].rating = pl.text();
491                                                                 }
492                                                                 if(IDD.tagName() == "mor" ) {
493                                                                         QDomElement pl = IDD.toElement();
494                                                                         pls[curPlayer].morale = pl.text();
495                                                                 }
496                                                                 if(IDD.tagName() == "agr" ) {
497                                                                         QDomElement pl = IDD.toElement();
498                                                                         pls[curPlayer].aggresion = pl.text();
499                                                                 }
500                                                                 if(IDD.tagName() == "fit" ) {
501                                                                         QDomElement pl = IDD.toElement();
502                                                                         pls[curPlayer].fitness = pl.text();
503                                                                 }
504                                                                 if(IDD.tagName() == "exp" ) {
505                                                                         QDomElement pl = IDD.toElement();
506                                                                         pls[curPlayer].experience = pl.text();
507                                                                 }
508                                                                 if(IDD.tagName() == "con" ) {
509                                                                         QDomElement pl = IDD.toElement();
510                                                                         pls[curPlayer].condition = pl.text();
511                                                                 }
512                                                                 if(IDD.tagName() == "sp" ) {
513                                                                         QDomElement pl = IDD.toElement();
514                                                                         pls[curPlayer].speed = pl.text();
515                                                                 }
516                                                                 if(IDD.tagName() == "bc" ) {
517                                                                         QDomElement pl = IDD.toElement();
518                                                                         pls[curPlayer].ballCntrl = pl.text();
519                                                                 }
520                                                                 if(IDD.tagName() == "sk1" ) {
521                                                                         QDomElement pl = IDD.toElement();
522                                                                         pls[curPlayer].skill[0] = pl.text();
523                                                                 }
524                                                                 if(IDD.tagName() == "sk2" ) {
525                                                                         QDomElement pl = IDD.toElement();
526                                                                         pls[curPlayer].skill[1] = pl.text();
527                                                                 }
528                                                                 if(IDD.tagName() == "sk3" ) {
529                                                                         QDomElement pl = IDD.toElement();
530                                                                         pls[curPlayer].skill[2] = pl.text();
531                                                                 }
532                                                                 if(IDD.tagName() == "sk4" ) {
533                                                                         QDomElement pl = IDD.toElement();
534                                                                         pls[curPlayer].skill[3] = pl.text();
535                                                                 }
536                                                                 if(IDD.tagName() == "ssk1" ) {
537                                                                         QDomElement pl = IDD.toElement();
538                                                                         pls[curPlayer].specSkill[0] = pl.text();
539                                                                 }
540                                                                 if(IDD.tagName() == "ssk2" ) {
541                                                                         QDomElement pl = IDD.toElement();
542                                                                         pls[curPlayer].specSkill[1] = pl.text();
543                                                                 }
544                                                                 if(IDD.tagName() == "nr" ) {
545                                                                         QDomElement pl = IDD.toElement();
546                                                                         pls[curPlayer].number = pl.text();
547                                                                 }
548                                                                 if(IDD.tagName() == "bd" ) {
549                                                                         QDomElement pl = IDD.toElement();
550                                                                         pls[curPlayer].birth = pl.text();
551                                                                 }
552                                                                 if(IDD.tagName() == "age" ) {
553                                                                         QDomElement pl = IDD.toElement();
554                                                                         pls[curPlayer].age = pl.text();
555                                                                 }
556                                                                 if(IDD.tagName() == "h" ) {
557                                                                         QDomElement pl = IDD.toElement();
558                                                                         pls[curPlayer].height = pl.text();
559                                                                 }
560                                                                 if(IDD.tagName() == "w" ) {
561                                                                         QDomElement pl = IDD.toElement();
562                                                                         pls[curPlayer].weight = pl.text();
563                                                                 }
564                                                                 if(IDD.tagName() == "f" ) {
565                                                                         QDomElement pl = IDD.toElement();
566                                                                         pls[curPlayer].foot = pl.text();
567                                                                 }
568                                                                 if(IDD.tagName() == "injured" ) {
569                                                                         QDomElement pl = IDD.toElement();
570                                                                         pls[curPlayer].injured = pl.text();
571                                                                 }
572                                                                 if(IDD.tagName() == "injury" ) {
573                                                                         QDomElement pl = IDD.toElement();
574                                                                         pls[curPlayer].injury = pl.text();
575                                                                 }
576                                                                 if(IDD.tagName() == "l_sus" ) {
577                                                                         QDomElement pl = IDD.toElement();
578                                                                         pls[curPlayer].leagueSusp = pl.text();
579                                                                 }
580                                                                 if(IDD.tagName() == "c_sus" ) {
581                                                                         QDomElement pl = IDD.toElement();
582                                                                         pls[curPlayer].cupSusp = pl.text();
583                                                                 }
584                                                                 if(IDD.tagName() == "contr" ) {
585                                                                         QDomElement pl = IDD.toElement();
586                                                                         pls[curPlayer].contract = pl.text();
587                                                                 }
588                                                                 if(IDD.tagName() == "wage" ) {
589                                                                         QDomElement pl = IDD.toElement();
590                                                                         pls[curPlayer].wage = pl.text();
591                                                                 }
592                                                                 if(IDD.tagName() == "house" ) {
593                                                                         QDomElement pl = IDD.toElement();
594                                                                         pls[curPlayer].house = pl.text();
595                                                                 }
596                                                                 if(IDD.tagName() == "car" ) {
597                                                                         QDomElement pl = IDD.toElement();
598                                                                         pls[curPlayer].car = pl.text();
599                                                                 }
600                                                                 if(IDD.tagName() == "s_bonus" ) {
601                                                                         QDomElement pl = IDD.toElement();
602                                                                         pls[curPlayer].signBonus = pl.text();
603                                                                 }
604                                                                 if(IDD.tagName() == "w_bonus" ) {
605                                                                         QDomElement pl = IDD.toElement();
606                                                                         pls[curPlayer].winBonus = pl.text();
607                                                                 }
608                                                                 if(IDD.tagName() == "t_games" ) {
609                                                                         QDomElement pl = IDD.toElement();
610                                                                         pls[curPlayer].totalGames = pl.text();
611                                                                 }
612                                                                 if(IDD.tagName() == "t_g_l" ) {
613                                                                         QDomElement pl = IDD.toElement();
614                                                                         pls[curPlayer].leagueGoals = pl.text();
615                                                                 }
616                                                                 if(IDD.tagName() == "t_g_c" ) {
617                                                                         QDomElement pl = IDD.toElement();
618                                                                         pls[curPlayer].cupGoals = pl.text();
619                                                                 }
620                                                                 if(IDD.tagName() == "t_y_l" ) {
621                                                                         QDomElement pl = IDD.toElement();
622                                                                         pls[curPlayer].leagueCardsY = pl.text();
623                                                                 }
624                                                                 if(IDD.tagName() == "t_y_c" ) {
625                                                                         QDomElement pl = IDD.toElement();
626                                                                         pls[curPlayer].cupCardsY = pl.text();
627                                                                 }
628                                                                 if(IDD.tagName() == "t_r_l" ) {
629                                                                         QDomElement pl = IDD.toElement();
630                                                                         pls[curPlayer].leagueCardsR = pl.text();
631                                                                 }
632                                                                 if(IDD.tagName() == "t_r_c" ) {
633                                                                         QDomElement pl = IDD.toElement();
634                                                                         pls[curPlayer].cupCardsR = pl.text();
635                                                                 }
636                                                                 if(IDD.tagName() == "t_g_f" ) {
637                                                                         QDomElement pl = IDD.toElement();
638                                                                         pls[curPlayer].friendlyGoals = pl.text();
639                                                                 }
640                                                                 if(IDD.tagName() == "t_y_f" ) {
641                                                                         QDomElement pl = IDD.toElement();
642                                                                         pls[curPlayer].friendlyCardsY = pl.text();
643                                                                 }
644                                                                 if(IDD.tagName() == "t_r_f" ) {
645                                                                         QDomElement pl = IDD.toElement();
646                                                                         pls[curPlayer].friendlyCardsR = pl.text();
647                                                                 }
648                                                                 if(IDD.tagName() == "t_bles" ) {
649                                                                         QDomElement pl = IDD.toElement();
650                                                                         pls[curPlayer].totalInjuries = pl.text();
651                                                                 }
652                                                                 if(IDD.tagName() == "c_games" ) {
653                                                                         QDomElement pl = IDD.toElement();
654                                                                         pls[curPlayer].curGames = pl.text();
655                                                                 }
656                                                                 if(IDD.tagName() == "c_g_l" ) {
657                                                                         QDomElement pl = IDD.toElement();
658                                                                         pls[curPlayer].curLeagueGoals = pl.text();
659                                                                 }
660                                                                 if(IDD.tagName() == "c_g_c" ) {
661                                                                         QDomElement pl = IDD.toElement();
662                                                                         pls[curPlayer].curCupGoals = pl.text();
663                                                                 }
664                                                                 if(IDD.tagName() == "c_y_l" ) {
665                                                                         QDomElement pl = IDD.toElement();
666                                                                         pls[curPlayer].curLeagueCardsY = pl.text();
667                                                                 }
668                                                                 if(IDD.tagName() == "c_y_c" ) {
669                                                                         QDomElement pl = IDD.toElement();
670                                                                         pls[curPlayer].curCupCardsY = pl.text();
671                                                                 }
672                                                                 if(IDD.tagName() == "c_r_l" ) {
673                                                                         QDomElement pl = IDD.toElement();
674                                                                         pls[curPlayer].curLeagueCardsR = pl.text();
675                                                                 }
676                                                                 if(IDD.tagName() == "c_r_c" ) {
677                                                                         QDomElement pl = IDD.toElement();
678                                                                         pls[curPlayer].curCupCardsR = pl.text();
679                                                                 }
680                                                                 if(IDD.tagName() == "c_g_f" ) {
681                                                                         QDomElement pl = IDD.toElement();
682                                                                         pls[curPlayer].curFriendlyGoals = pl.text();
683                                                                 }
684                                                                 if(IDD.tagName() == "c_y_f" ) {
685                                                                         QDomElement pl = IDD.toElement();
686                                                                         pls[curPlayer].curFriendlyCardsY = pl.text();
687                                                                 }
688                                                                 if(IDD.tagName() == "c_r_f" ) {
689                                                                         QDomElement pl = IDD.toElement();
690                                                                         pls[curPlayer].curFriendlyCardsR = pl.text();
691                                                                 }
692                                                                 if(IDD.tagName() == "c_inj" ) {
693                                                                         QDomElement pl = IDD.toElement();
694                                                                         pls[curPlayer].curInjuries = pl.text();
695                                                                 }
696                                                                 if(IDD.tagName() == "b_rat" ) {
697                                                                         QDomElement pl = IDD.toElement();
698                                                                         pls[curPlayer].bestRate = pl.text();
699                                                                 }
700                                                                 if(IDD.tagName() == "form" ) {
701                                                                         QDomElement pl = IDD.toElement();
702                                                                         pls[curPlayer].form = pl.text();
703                                                                 }
704                                                                 if(IDD.tagName() == "nick" ) {
705                                                                         QDomElement pl = IDD.toElement();
706                                                                         pls[curPlayer].nick = pl.text();
707                                                                 }
708                                                                 if(IDD.tagName() == "ctr" ) {
709                                                                         QDomElement pl = IDD.toElement();
710                                                                         pls[curPlayer].country = pl.text();
711                                                                 }
712                                                                 ID = ID.nextSibling();
713                                                         }
714                                                 }
715                                                 p = p.nextSibling();
716                                                 curPlayer++;
717                                                 playerCnt++;
718                                         }
719                                 }
720                         }
721                         n = n.nextSibling();
722                 }
723         }
724 }
725
726 /**
727  * \brief Function partially parsing input XML.
728  *
729  * Parse only information about current season.
730  * Used to assigning season to input xml on the fly.
731  * \param[in] data path to input xml.
732  */
733 void quickparse(const QString &data) {
734         QDomDocument doc("spdt");
735         QFile file( data );
736         file.open( QIODevice::ReadOnly );
737         doc.setContent( &file );
738         file.close();
739                 
740         QDomElement root = doc.documentElement();
741         if( root.tagName() == "SoccerProject" ) {
742                 QDomNode n = root.firstChild();
743                 
744                 while( !n.isNull() ) {
745                         QDomElement e = n.toElement();
746                         if( !e.isNull() ) {
747                                 if( e.tagName() == "GlobalInfo" ) {
748                                         QDomNode ID = e.firstChild();
749                                         while( !ID.isNull() ) {
750                                                 QDomElement IDD = ID.toElement();
751                                                 if(IDD.tagName() == "cur_globalslot" ) {
752                                                         QDomElement pl = IDD.toElement();
753                                                         globSlot = pl.text().toInt();
754                                                 } else if(IDD.tagName() == "cur_slot" ) {
755                                                         QDomElement pl = IDD.toElement();
756                                                         curSlot = pl.text().toInt();
757                                                 } else if(IDD.tagName() == "cur_season" ) {
758                                                         QDomElement pl = IDD.toElement();
759                                                         curSeason = pl.text().toInt();
760                                                 }
761                                                 ID = ID.nextSibling();
762                                         }
763                                 }
764                         }
765                         n = n.nextSibling();
766                 }
767         }
768 }
769
770 int main(int argc, char **argv) {
771         QSettings settings("config/global.ini", QSettings::IniFormat);
772         QString lang = settings.value("lang", "en").toString();
773         
774         QApplication app(argc, argv);
775         QPixmap pixmap(453,300);
776         QByteArray bArray;
777         QFile PixmapFile("./img/splash.jpg");
778         if(!PixmapFile.open(QIODevice::ReadOnly))
779         {
780                 qDebug("Error loading Pixmap");
781                 return false;
782         }
783
784         bArray=PixmapFile.readAll().toBase64();
785
786         if(!pixmap.loadFromData( bArray.fromBase64(bArray)))
787         {
788                 qDebug()<<"Error pixmap processing";
789                 return 0;
790         }
791
792         QSplashScreen splash(pixmap);
793         splash.show();
794         splash.showMessage("[0.2.7]     please wait parsing data files..", Qt::AlignBottom | Qt::AlignCenter, Qt::white);
795         QTranslator translator;
796         translator.load("lang/tran_"+lang);
797         app.installTranslator(&translator);
798         MainWindow win;
799         win.show();
800         splash.finish(&win);
801         return app.exec();
802 }
803