From 25a5793f2fd7c1374468f06158824603125c6738 Mon Sep 17 00:00:00 2001 From: "Hilmer, Carsten" Date: Wed, 7 Sep 2016 21:12:57 +0200 Subject: [PATCH] Datenbank erweitert, typenen und attacken --- package.json | 5 +- www/css/custom_style.css | 345 +++++++++++++++++- www/pokedex.db | Bin 135168 -> 69632 bytes .../pokemonliste/html/pokemon-detail.html | 79 ++-- www/templates/pokemonliste/js/controllers.js | 179 +-------- www/templates/pokemonliste/js/services.js | 131 +++++-- 6 files changed, 491 insertions(+), 248 deletions(-) diff --git a/package.json b/package.json index 4a77628..accdff5 100644 --- a/package.json +++ b/package.json @@ -48,9 +48,6 @@ ], "cordovaPlatforms": [ "ios", - { - "platform": "android", - "locator": "./engine/cordova-android-c0.6.1/" - } + "android" ] } diff --git a/www/css/custom_style.css b/www/css/custom_style.css index 17e34a5..a03dd67 100644 --- a/www/css/custom_style.css +++ b/www/css/custom_style.css @@ -348,4 +348,347 @@ md-input-container { height: 32px; width: 32px; border-radius: 50%; -} \ No newline at end of file +} + + +.pokemontyp1sm { + display: inline-block; + padding: 0 25px; + height: 16px; + font-size: 10px; + line-height: 16px; + border-radius: 5px; + background-color: #D50000; + color: white; +} + +.pokemontyp1sm img { + float: left; + margin: 0 10px 0 -25px; + height: 16px; + width: 16px; + border-radius: 50%; +} + +.pokemontyp2sm { + display: inline-block; + padding: 0 25px; + height: 16px; + font-size: 10px; + line-height: 16px; + border-radius: 5px; + background-color: #C51162; + color: white; +} + +.pokemontyp2sm img { + float: left; + margin: 0 10px 0 -25px; + height: 16px; + width: 16px; + border-radius: 50%; +} + +.pokemontyp3sm { + display: inline-block; + padding: 0 25px; + height: 16px; + font-size: 10px; + line-height: 16px; + border-radius: 5px; + background-color: #AA00FF; + color: white; +} + +.pokemontyp3sm img { + float: left; + margin: 0 10px 0 -25px; + height: 16px; + width: 16px; + border-radius: 50%; +} + +.pokemontyp4sm { + display: inline-block; + padding: 0 25px; + height: 16px; + font-size: 10px; + line-height: 16px; + border-radius: 5px; + background-color: #6200EA; + color: white; +} + +.pokemontyp4sm img { + float: left; + margin: 0 10px 0 -25px; + height: 16px; + width: 16px; + border-radius: 50%; +} + +.pokemontyp5sm { + display: inline-block; + padding: 0 25px; + height: 16px; + font-size: 10px; + line-height: 16px; + border-radius: 5px; + background-color: #304FFE; + color: white; +} + +.pokemontyp5sm img { + float: left; + margin: 0 10px 0 -25px; + height: 16px; + width: 16px; + border-radius: 50%; +} + +.pokemontyp6sm { + display: inline-block; + padding: 0 25px; + height: 16px; + font-size: 10px; + line-height: 16px; + border-radius: 5px; + background-color: #2962FF; + color: white; +} + +.pokemontyp6sm img { + float: left; + margin: 0 10px 0 -25px; + height: 16px; + width: 16px; + border-radius: 50%; +} + +.pokemontyp7sm { + display: inline-block; + padding: 0 25px; + height: 16px; + font-size: 10px; + line-height: 16px; + border-radius: 5px; + background-color: #0091EA; + color: white; +} + +.pokemontyp7sm img { + float: left; + margin: 0 10px 0 -25px; + height: 16px; + width: 16px; + border-radius: 50%; +} + +.pokemontyp8sm { + display: inline-block; + padding: 0 25px; + height: 16px; + font-size: 10px; + line-height: 16px; + border-radius: 5px; + background-color: #00B8D4; + color: white; +} + +.pokemontyp8sm img { + float: left; + margin: 0 10px 0 -25px; + height: 16px; + width: 16px; + border-radius: 50%; +} + +.pokemontyp9sm { + display: inline-block; + padding: 0 25px; + height: 16px; + font-size: 10px; + line-height: 16px; + border-radius: 5px; + background-color: #00BFA5; + color: white; +} + +.pokemontyp9sm img { + float: left; + margin: 0 10px 0 -25px; + height: 16px; + width: 16px; + border-radius: 50%; +} + +.pokemontyp10sm { + display: inline-block; + padding: 0 25px; + height: 16px; + font-size: 10px; + line-height: 16px; + border-radius: 5px; + background-color: #1B5E20; + color: white; +} + +.pokemontyp10sm img { + float: left; + margin: 0 10px 0 -25px; + height: 16px; + width: 16px; + border-radius: 50%; +} + +.pokemontyp11sm { + display: inline-block; + padding: 0 25px; + height: 16px; + font-size: 10px; + line-height: 16px; + border-radius: 5px; + background-color: #33691E; + color: white; +} + +.pokemontyp11sm img { + float: left; + margin: 0 10px 0 -25px; + height: 16px; + width: 16px; + border-radius: 50%; +} + +.pokemontyp12sm { + display: inline-block; + padding: 0 25px; + height: 16px; + font-size: 10px; + line-height: 16px; + border-radius: 5px; + background-color: #827717; + color: white; +} + +.pokemontyp12sm img { + float: left; + margin: 0 10px 0 -25px; + height: 16px; + width: 16px; + border-radius: 50%; +} + +.pokemontyp13sm { + display: inline-block; + padding: 0 25px; + height: 16px; + font-size: 10px; + line-height: 16px; + border-radius: 5px; + background-color: #F57F17; + color: white; +} + +.pokemontyp13sm img { + float: left; + margin: 0 10px 0 -25px; + height: 16px; + width: 16px; + border-radius: 50%; +} + +.pokemontyp14sm { + display: inline-block; + padding: 0 25px; + height: 16px; + font-size: 10px; + line-height: 16px; + border-radius: 5px; + background-color: #FF6F00; + color: white; +} + +.pokemontyp14sm img { + float: left; + margin: 0 10px 0 -25px; + height: 16px; + width: 16px; + border-radius: 50%; +} + +.pokemontyp15sm { + display: inline-block; + padding: 0 25px; + height: 16px; + font-size: 10px; + line-height: 16px; + border-radius: 5px; + background-color: #E65100; + color: white; +} + +.pokemontyp15sm img { + float: left; + margin: 0 10px 0 -25px; + height: 16px; + width: 16px; + border-radius: 50%; +} + +.pokemontyp16sm { + display: inline-block; + padding: 0 25px; + height: 16px; + font-size: 10px; + line-height: 16px; + border-radius: 5px; + background-color: #BF360C; + color: white; +} + +.pokemontyp16sm img { + float: left; + margin: 0 10px 0 -25px; + height: 16px; + width: 16px; + border-radius: 50%; +} + +.pokemontyp17sm { + display: inline-block; + padding: 0 25px; + height: 16px; + font-size: 10px; + line-height: 16px; + border-radius: 5px; + background-color: #3E2723; + color: white; +} + +.pokemontyp17sm img { + float: left; + margin: 0 10px 0 -25px; + height: 16px; + width: 16px; + border-radius: 50%; +} + +.pokemontyp18sm { + display: inline-block; + padding: 0 25px; + height: 16px; + font-size: 10px; + line-height: 16px; + border-radius: 5px; + background-color: #212121; + color: white; +} + +.pokemontyp18sm img { + float: left; + margin: 0 10px 0 -25px; + height: 16px; + width: 16px; + border-radius: 50%; +} diff --git a/www/pokedex.db b/www/pokedex.db index 1846d0f7384c4f35834baa86ddbcbb03c2b22c48..349d138b531dc65d797c87b0420aec13c278283a 100644 GIT binary patch literal 69632 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

QS1o?46P-tLt{n;ccODPt7V9 z#1ksdOr=;>mTh)NQcbC8lPG=64KRItPGIioxuqOTW|nPkJQUatn|1-#hyvK83u6}- z*KH65BJu5@2`BMZ>!BFx9LiUU(z3O~?tmdF%qQp%m9)b!$#oKU9e^v#Yl@Y4yB+kH z-6$z^Ic(An&=nk1t;F5!ut^)nY6C5TwGHH8e2<4(b_WCoHEQDTaVr4#5}@X<6$6(G zN@>+eJl+nRvIv|G(7+aE7oW$Slka+$-#J$1^Ultx0&I;XuzYKgla5-=r{}Y)1 zKf#~nyZnFWf6@Ptf6(9I`?l|MzU#g|?|*y0?0v#}!Mn%vBhMds-s3srX>)(e{aN<| z?zr3T`U}^mT{&0O`CrbLoga3>P|xv(<7LM)jv2=;`w#5DZ-3N2X1~?;BikR_p0SPE zI;`Kd{+@Nkdc^W$%kNm$Ehpe`f>#=r0B+*fR290RRS!G6@N|s(z=$+kDJyl&1iHFX(75`M`dPOQowwuED zSD{l{^{A!Ue=_@^lFvCpUN1b!T9@ER75b*80Y0~qu=d31T)C_`+Pq>k(p2Jb75byz zEcE=3k4mdB$Fc?5JOB}!AjvB9#9DIz8@=3nhJfOErDW@Xo(RJ+_&A;zWvS_S6}lm` z2VA9{y9ly6A{AEwTC}AED`2)k_f|RLYF&eP44$0O3>`b5Jw#GXo*sP^LWVYo)5`Yf zWUf%k7418qWRd3fbM%ph{Ev)Di_m(kB!8kwfA7PPzrKY&Ob#89mt6$V+`hsp0g#?V zDo34y@dh-HfR7+zO(wz*H6R|Eh5;o+OM3@FM4J%e1|YOPrxki*QYw^lD@w`dA&}-q z5MMWp=>2;gJ{h&Rl9O$|Hm4YYxDcVmh2$E6;rh^e_u6z>E*9o1ctr^UiYYL5!vN~` zZos@1&xLF-%o8D+h_q;ue9%DY<{kvpe6Enw&6xtD6#(j;nna<>v@Amyf|VW-kG4eG zDng=cfOKnR0IkYJZL!B3*ITN2snK5=kqV0tgB)$pNX6zhakPj5p3PQWoB@EGmvE31 zDJ|kU(62imHQ6anxfO-O#$6>*G4oLK30>jO5q4$9X6Az5!=9cra ztO1$>Lo{cUMQ0!fOY)10k{g}^VHl%_X{(E=rJ7$_cUqb$N{bL56n99Yzzi8%#Qtex zD$>9gVQdeFOy_X-4M)HpZG|zm0H|(l?TMfkCNM;&+YFVE0i{pU2udC$=Pb=ic^9?@ z!6Hlx7ODA$(#>B`@?{0Xbc<%l$Q&+R-L!CS1VRP8r3uj@4a0F-tccA5rhfW9J5rQp zXVWl(>JhRAhR5Khzlvh0BV@qZ#h-HNcStRG8V| zr}VXnLT=6Ph6b2!4iV|Aq%@=hlWmr(Lo&paBJXrN(h)TsRnw+RM^^x<4c)Y*qbr&G zssfV|9+nEAwpzjOGvNBt(S76cY$Y!(^G;}!k$4Mu{XbY6z19xRDCQz%5)AB{ z;r?cZirmvssC&*qwz4oP~kQtgXj`4Vi$%^8`eyoq*1t zR$wt7mR_8xn3|%+kmw9Rw05N}z03fl0xJuoKqjExX#kNnqBq8A7-!3cGOT96z$(@J zK#5HOKwr!xj!nThsUX8vh^rlZ6IIwRY<`}k&H<`^G5DN@%H zmi=zB9^3+b@+_eDL9>E!8!>!#1iDIroUrGI1x~!+u)Y20Flf*xgoLEw8E7xcnq-5h zl8mTH+VduP20;2`kbur$5G-{9iVPUdfX9X~PE<{7`+tk@CT`8V_Tz1A*vu4TfHA-rU<@z@ z7z2y}#sFi0F~AsL3@`>518)NZ{m+*SAM?tQMWx+Kp@&!;>ud0zAU(93yu zc*EW^@VEYJ-silZ^M1wqP47>9ZePfk@=f}de2@8F@O{zuitlyb8~!$bkN>3qqJP!@ zwEt87m;A5!f5>zE4nEAE;qT|y_~-b~@n7M;$^Rta4uk@!z+_-4@L1r5z!w9r1YQrk zA+!lS!b#zxuqr$)d`fspcun}>+du#_!5Cl+Fa{U{jDfd?fvb*g&f@aGKbHr8*S@(N z{Xf<0_5b6q;p^9%e%@sIRXbI`{THU+2KvEie0ku~3t}_XZ}@HeG|KmbjqeS;*!55& z?uw9qeruzR=uXcluM*of9_3|N? zrXN#Zce#+8Dt99fRqjDvs@#iwRJjlNsd7K!sd63#sPX_3sB!_dQRQu@oholf9aMP- z>ZHm$Q5RL-g}SNoZiJ|Ego0Fg5bdDKcc7hA`A&2TRelTFMV0SDw^HS|qTN*aZnTFg z--Gs2<$F&}~%tZRmEY{C0E)RelFLNR=N%JydxQIz*Kp zLU&T-ccQzf^1IMss{AlILX{suN2&6osFy15MPaHuj6|wjL=mbyf}&J;6ve3W7>ZNn zag?CS6DUcQCsB$jPoXqbo<_&0@?+>YRel_upvq66KB~MA-A$F>jrytbesq#5KZ!C_ zc?Jzo5=y3>v1&htXN8oXr2n+%ItM7u;WT zzXEFjZ+O}~J+KCF(X;A#`Yl=s_&on7{CD^_0v&9uZy;z9f8I`1`kJSjMz61{ed30mcAhfHCmSV*rg%$15Xflqw%ZV^sMV8mG#~ z(F9dKfhMW)Npy}XKZmBM@+mY;l~1D?s(c2Wr^?Tx3sm_9bPrX254uQ|UqqLv@=NG4 zRel-WOO@Y??xV`@LszKsE9fd!eidD#%CDjOsq*`gM3qZumMWh`b5!{pny1R=kxZ4# zXn`tUK#NrQB3h!#mr#x>&!GpX@(0i|Rlbb!RCyk)P~|JAK$RDeLX|6Ml`3CF*QxUB zs7RF;QHd%qp)yroMir{Of*z#GA4E5(@*8N4DqlnERQWpEpvpJULsa=gNTteE^e|Qa zFnWY4e*`^Bl|LG+a^0M@ZlzDZ`m9&&+f>l_qq@}z+ zScL^kTFM84Ramm5rF<}0g+)tR%7=ngShl34JR7XS!X+)`xnLERE@>$r4pw3Dl9uw3 zU=@}xX(=BKR$&2?mh!P+6_zk*DIX73VG)y-@`+#-mN985&)1#**UrxWd*_XVm`98O z#sFi0F~AsL3@`>51B?O20AqkLz!>;>7-%Es{|W5;KX(3K(?^J~^Z(fSf8-NP+4+C^ zhb^=7|KP)P^~2fN`G3p!bOn62EIa?tV1k|hhd)tU`><+u{$Jhk%k2EWTC`y2|FQG` zww_JS&i`ZQ|J9zL?EF7={vSL4uf++5?EJsFu@yW24^}{X+4+C${J+|1J>;`*+4+C$ z{J+8?JO6KGaqD!0o&VR!NFO`@uW9#(o&U$q|JxcjV(k1scK+Yb^RfZMG6om}i~+^~ gV}LQh7+?%A1{ed30mi^hF~H9MW9R?9RpOV literal 135168 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 diff --git a/www/templates/pokemonliste/html/pokemon-detail.html b/www/templates/pokemonliste/html/pokemon-detail.html index 7cf7958..d8c6132 100644 --- a/www/templates/pokemonliste/html/pokemon-detail.html +++ b/www/templates/pokemonliste/html/pokemon-detail.html @@ -26,7 +26,7 @@

- Richtig geiles Pokemon. + {{pokemon.pokemontext}}

@@ -69,63 +69,36 @@
Schwächen
-
+ +
-
-
-
- PokemonTyp - {{ pokemon.pokemonweakaString }} -
-
-
-
- PokemonTyp - {{ pokemon.pokemonweakbString }} -
-
-
+
+
+ PokemonTyp + {{ pokemonschwaeche.pokemontyptext1 }} +
+ {{ pokemonschwaeche.pokemontyp1 }} +
-
-
-
- PokemonTyp - {{ pokemon.pokemonweakcString }} -
-
-
-
- PokemonTyp - {{ pokemon.pokemonweakdString }} -
-
-
+
+
+ PokemonTyp + {{ pokemonschwaeche.pokemontyptext2 }} +
+ {{ pokemonschwaeche.pokemontyp2 }} +
-
-
-
- PokemonTyp - {{ pokemon.pokemonweakeString }} -
-
-
-
- PokemonTyp - {{ pokemon.pokemonweakfString }} -
-
-
+
+
+ PokemonTyp + {{ pokemonschwaeche.pokemontyptext3 }} +
+ {{ pokemonschwaeche.pokemontyp3 }} +
-
-
-
- PokemonTyp - {{ pokemon.pokemonweakgString }} -
-
-
+
-
+
diff --git a/www/templates/pokemonliste/js/controllers.js b/www/templates/pokemonliste/js/controllers.js index d1ee016..54f4069 100644 --- a/www/templates/pokemonliste/js/controllers.js +++ b/www/templates/pokemonliste/js/controllers.js @@ -67,14 +67,6 @@ appControllers.controller('pokemonListCtrl', function ($scope, $stateParams,$fil $scope.pokemons = pokedexDB.all(); };//End getPokemonList. - // updatePokemon is for update pokemons. - // By sending pokemon to pokedexDB.update(pokemon) service. - // Parameter : - // pokemon = pokemon that user select from view. - $scope.updatePokemon = function (pokemon) { - pokedexDB.update(pokemon); - };// End updatePokemon. - // navigateTo is for navigate to other page // by using targetPage to be the destination page // and sending objectData to the destination page. @@ -89,195 +81,48 @@ appControllers.controller('pokemonListCtrl', function ($scope, $stateParams,$fil },400); };// End navigateTo. - // callTo is for using mobile calling. - // Parameter : - // number = number that going to call. - $scope.callTo = function (number) { - window.open("tel:" + number); - }// End callTo. - - $scope.initialForm(); });// End of Pokemon List Page Controller. // Controller of pokemon Detail Page. -appControllers.controller('pokemonDetailCtrl', function ($mdBottomSheet, $mdToast, $scope, $stateParams, $filter, $mdDialog, $ionicHistory, pokedexDB) { +appControllers.controller('pokemonDetailCtrl', function ($mdBottomSheet, $mdToast, $scope, $stateParams, $filter, $mdDialog, $ionicHistory,$timeout, pokedexDB) { // initialForm is the first activity in the controller. // It will initial all variable data and let the function works when page load. $scope.initialForm = function () { - // $scope.disableSaveBtn is the variable for setting disable or enable the save button. - $scope.disableSaveBtn = false; - + $scope.pokemonschwaechenliste = []; // $scope.pokemon is the variable that store pokemon detail data that receive form pokemon list page. // Parameter : - // $stateParams.actionDelete(bool) = status that pass from pokemon list page. // $stateParams.pokemondetail(object) = pokemon that user select from pokemon list page. $scope.pokemon = $scope.getPokemonData($stateParams.pokemondetail); - + //$scope.actionDelete is the variable for allow or not allow to delete data. // It will allow to delete data when have data in the database. - $scope.actionDelete = $stateParams.actionDelete; + $timeout(function () { + $scope.getTypenEffekt($scope.pokemon.pokedexid); + }, 1000); + }; //End initialForm. // getPokemonData is for get pokemon detail data. $scope.getPokemonData = function (pokemonDetail) { - // tempPokemon is temporary pokemon data detail. - var tempPokemon = { - id: null, - pokedexid: '', - pokedexidString: '', - pokemonname: '', - pokemontypa: '', - pokemontypb: '', - pokemontypaString: '', - pokemontypbString: '', - pokemonimage: '' - } - // If actionDelete is true pokemon Detail Page will show pokemon detail that receive form pokemon list page. - // else it will show pokemon for user to add new data. - //return (actionDelete ? angular.copy(pokemonDetail) : tempPokemon); return (pokemonDetail); - };//End get pokemon detail data. - // savePokemon is for save pokemon. - // Parameter : - // pokemon(object) = pokemon object that presenting on the view. - // $event(object) = position of control that user tap. - $scope.saveContract = function (pokemon, $event) { - //$mdBottomSheet.hide() use for hide bottom sheet. - $mdBottomSheet.hide(); - //mdDialog.show use for show alert box for Confirm to save data. - $mdDialog.show({ - controller: 'DialogController', - templateUrl: 'confirm-dialog.html', - targetEvent: $event, - locals: { - displayOption: { - title: "Confirm to save data?", - content: "Data will save to SQLite.", - ok: "Confirm", - cancel: "Close" - } - } - }).then(function () { - // For confirm button to save data. - try { - // To update data by calling pokedexDB.update(pokemon) service. - if ($scope.actionDelete) { - if ($scope.pokemon.id == null) { - $scope.pokemon.id = $scope.pokemonList[$scope.pokemonList.length - 1].id; - } - pokedexDB.update(pokemon); - } // End update data. - - // To add new data by calling pokedexDB.add(pokemon) service. - else { - pokedexDB.add(pokemon); - $scope.pokemonList = pokedexDB.all(); - $scope.actionDelete = true; - }// End add new data. - - // Showing toast for save data is success. - $mdToast.show({ - controller: 'toastController', - templateUrl: 'toast.html', - hideDelay: 400, - position: 'top', - locals: { - displayOption: { - title: "Data Saved !" - } - } - });//End showing toast. - } - catch (e) { - // Showing toast for unable to save data. - $mdToast.show({ - controller: 'toastController', - templateUrl: 'toast.html', - hideDelay: 800, - position: 'top', - locals: { - displayOption: { - title: window.globalVariable.message.errorMessage - } - } - });//End showing toast. - } - }, function () { - // For cancel button to save data. - });// End alert box. - };// End save pokemon. - - // deletePokemon is for remove pokemon. - // Parameter : - // pokemon(object) = pokemon object that presenting on the view. - // $event(object) = position of control that user tap. - $scope.deletePokemon= function (pokemon, $event) { - //$mdBottomSheet.hide() use for hide bottom sheet. - $mdBottomSheet.hide(); - //mdDialog.show use for show alert box for Confirm to delete data. - $mdDialog.show({ - controller: 'DialogController', - templateUrl: 'confirm-dialog.html', - targetEvent: $event, - locals: { - displayOption: { - title: "Confirm to remove data?", - content: "Data will remove form SQLite.", - ok: "Confirm", - cancel: "Close" - } - } - }).then(function () { - // For confirm button to remove data. - try { - // Remove contract by calling pokedexDB.remove(contract)service. - if ($scope.pokemon.id == null) { - $scope.pokemon.id = $scope.pokemonList[$scope.pokemonList.length - 1].id; - } - pokedexDB.remove(pokemon); - $ionicHistory.goBack(); - }// End remove contract. - catch (e) { - // Showing toast for unable to remove data. - $mdToast.show({ - controller: 'toastController', - templateUrl: 'toast.html', - hideDelay: 800, - position: 'top', - locals: { - displayOption: { - title: window.globalVariable.message.errorMessage - } - } - });// End showing toast. - } - }, function () { - // For cancel button to remove data. - });// End alert box. - };// End remove contract. - - // validateRequiredField is for validate the required field. - // Parameter : - // form(object) = contract object that presenting on the view. - $scope.validateRequiredField = function (form) { - return !( (form.firstName.$error.required == undefined) - && (form.lastName.$error.required == undefined) - && (form.telephone.$error.required == undefined)); - };// End validate the required field. + // getPokemonList is for get all pokemons. + // By calling pokedexDB.all() service. + $scope.getTypenEffekt = function (pokedexid) { + $scope.pokemonschwaechenliste = pokedexDB.getTypenEffekte(pokedexid); + };//End getPokemonList. // showListBottomSheet is for showing the bottom sheet. // Parameter : // $event(object) = position of control that user tap. // contractForm(object) = contract object that presenting on the view. $scope.showListBottomSheet = function ($event, contractForm) { - $scope.disableSaveBtn = $scope.validateRequiredField(contractForm); $mdBottomSheet.show({ templateUrl: 'contract-actions-template', targetEvent: $event, diff --git a/www/templates/pokemonliste/js/services.js b/www/templates/pokemonliste/js/services.js index 37cf29a..094eff4 100644 --- a/www/templates/pokemonliste/js/services.js +++ b/www/templates/pokemonliste/js/services.js @@ -38,6 +38,8 @@ appServices.factory('pokedexDB', function ($cordovaSQLite) // pokemonList variable use to store data from sqlite query var pokemonList = []; var pokemontypen = []; + var pokemoneffektlist = []; + return { // Select all data from sqlite all: function () @@ -89,31 +91,14 @@ appServices.factory('pokedexDB', function ($cordovaSQLite) pokemontypb : res.rows.item(i).POKEMONTYPB , pokemontypaString : pokemontypen[res.rows.item(i).POKEMONTYPA] , pokemontypbString : pokemontypen[res.rows.item(i).POKEMONTYPB] , - pokemonweaka : res.rows.item(i).POKEMONWEAKA , - pokemonweakb : res.rows.item(i).POKEMONWEAKB , - pokemonweakc : res.rows.item(i).POKEMONWEAKC , - pokemonweakd : res.rows.item(i).POKEMONWEAKD , - pokemonweake : res.rows.item(i).POKEMONWEAKE , - pokemonweakf : res.rows.item(i).POKEMONWEAKF , - pokemonweakg : res.rows.item(i).POKEMONWEAKG , - pokemonweakaString : pokemontypen[res.rows.item(i).POKEMONWEAKA] , - pokemonweakbString : pokemontypen[res.rows.item(i).POKEMONWEAKB] , - pokemonweakcString : pokemontypen[res.rows.item(i).POKEMONWEAKC] , - pokemonweakdString : pokemontypen[res.rows.item(i).POKEMONWEAKD] , - pokemonweakeString : pokemontypen[res.rows.item(i).POKEMONWEAKE] , - pokemonweakfString : pokemontypen[res.rows.item(i).POKEMONWEAKF] , - pokemonweakgString : pokemontypen[res.rows.item(i).POKEMONWEAKG] , - pokemonmaxa : res.rows.item(i).POKEMONMAXA , - pokemonmaxb : res.rows.item(i).POKEMONMAXB , - pokemonmaxc : res.rows.item(i).POKEMONMAXC , - pokemonmaxd : res.rows.item(i).POKEMONMAXD , - pokemonmaxe : res.rows.item(i).POKEMONMAXE , - pokemonmaxf : res.rows.item(i).POKEMONMAXF , - pokemonmaxg : res.rows.item(i).POKEMONMAXG , + pokemonfangchance : res.rows.item(i).POKEMONFANGCHANCE , + pokemonfluchtchance : res.rows.item(i).POKEMONFLUCHTCHANCE , + pokemoneidistanz : res.rows.item(i).POKEMONEIDISTANZ , + pokemonentwicklungtext : res.rows.item(i).POKEMONENTWICKLUNGTEXT , + pokemonentwicklung : res.rows.item(i).POKEMONENTWICKLUNG , + pokemonentwicklungkosten : res.rows.item(i).POKEMONENTWICKLUNGKOSTEN , pokemontext : res.rows.item(i).POKEMONTEXT , pokemonnote : res.rows.item(i).POKEMONNOTE , - pokemonentwa : res.rows.item(i).POKEMONENTWA , - pokemonentwb : res.rows.item(i).POKEMONENTWB , pokemonimage : res.rows.item(i).POKEMONIMAGE }; pokemonList.push(dataItem); @@ -123,6 +108,106 @@ appServices.factory('pokedexDB', function ($cordovaSQLite) return pokemonList; },// End select all data. + getTypenEffekte: function (pokedexid) + { + + pokemoneffektlist = []; + + var query = "SELECT * FROM tblPokemonTypenEffekt WHERE POKEDEXID= ?"; + // Execute query statement from query variable. + $cordovaSQLite.execute(db, query,[pokedexid]).then(function (res) + { + if (res.rows.length > 0) + { + for (var i = 0; i < res.rows.length; i++) + { + var dataItem1 = { + pokemontyp1 : res.rows.item(i).POKEMONTYP8 , + pokemontypid1 : 8, + pokemontyptext1 : pokemontypen[8] , + pokemontyp2 : res.rows.item(i).POKEMONTYP15 , + pokemontypid2 : 15, + pokemontyptext2 : pokemontypen[15] , + pokemontyp3 : res.rows.item(i).POKEMONTYP14 , + pokemontypid3 : 14, + pokemontyptext3 : pokemontypen[14] + }; + + var dataItem2 = { + pokemontyp1 : res.rows.item(i).POKEMONTYP7 , + pokemontypid1 : 7, + pokemontyptext1 : pokemontypen[7] , + pokemontyp2 : res.rows.item(i).POKEMONTYP9 , + pokemontypid2 : 9, + pokemontyptext2 : pokemontypen[9] , + pokemontyp3 : res.rows.item(i).POKEMONTYP2 , + pokemontypid3 : 2, + pokemontyptext3 : pokemontypen[2] + }; + + var dataItem3 = { + pokemontyp1 : res.rows.item(i).POKEMONTYP18 , + pokemontypid1 : 18, + pokemontyptext1 : pokemontypen[18] , + pokemontyp2 : res.rows.item(i).POKEMONTYP13 , + pokemontypid2 : 13, + pokemontyptext2 : pokemontypen[13] , + pokemontyp3 : res.rows.item(i).POKEMONTYP12 , + pokemontypid3 : 12, + pokemontyptext3 : pokemontypen[12] + }; + + var dataItem4 = { + pokemontyp1 : res.rows.item(i).POKEMONTYP6 , + pokemontypid1 : 6, + pokemontyptext1 : pokemontypen[6] , + pokemontyp2 : res.rows.item(i).POKEMONTYP10 , + pokemontypid2 : 10, + pokemontyptext2 : pokemontypen[10] , + pokemontyp3 : res.rows.item(i).POKEMONTYP4 , + pokemontypid3 : 4, + pokemontyptext3 : pokemontypen[4] + }; + + + var dataItem5 = { + pokemontyp1 : res.rows.item(i).POKEMONTYP5 , + pokemontypid1 : 5, + pokemontyptext1 : pokemontypen[5] , + pokemontyp2 : res.rows.item(i).POKEMONTYP1 , + pokemontypid2 : 1, + pokemontyptext2 : pokemontypen[1] , + pokemontyp3 : res.rows.item(i).POKEMONTYP11 , + pokemontypid3 : 11, + pokemontyptext3 : pokemontypen[11] + }; + + + var dataItem6 = { + pokemontyp1 : res.rows.item(i).POKEMONTYP17 , + pokemontypid1 : 17, + pokemontyptext1 : pokemontypen[17] , + pokemontyp2 : res.rows.item(i).POKEMONTYP16 , + pokemontypid2 : 16, + pokemontyptext2 : pokemontypen[16] , + pokemontyp3 : res.rows.item(i).POKEMONTYP3 , + pokemontypid3 : 3, + pokemontyptext3 : pokemontypen[3] + }; + + console.debug(dataItem1); + pokemoneffektlist.push(dataItem1); + pokemoneffektlist.push(dataItem2); + pokemoneffektlist.push(dataItem3); + pokemoneffektlist.push(dataItem4); + pokemoneffektlist.push(dataItem5); + pokemoneffektlist.push(dataItem6); + } + } + }); + return pokemoneffektlist; + }, + // To add data to sqlite. // It will receive newContract from controller then insert it into sqlite. add: function (newContract)