diff --git a/config.xml b/config.xml index b3b74fd62aa4cb16287b43e9a35060d4100007cc..44b218da3c7a0ac5a329c367a6c731fa946c09ef 100644 --- a/config.xml +++ b/config.xml @@ -1,5 +1,5 @@ <?xml version="1.0" encoding="UTF-8" standalone="yes"?> -<widget id="com.dimago.betskills" version="2.0.6" xmlns="http://www.w3.org/ns/widgets" xmlns:cdv="http://cordova.apache.org/ns/1.0"> +<widget id="com.Dimago.Betskills" version="2.0.6" xmlns="http://www.w3.org/ns/widgets" xmlns:cdv="http://cordova.apache.org/ns/1.0"> <name>Betskills</name> <description> Betskills app to see predictions of football and tennis games. @@ -21,6 +21,7 @@ <preference name="xwalkCommandLine" value="--disable-pull-to-refresh-effect"/> <preference name="xwalkMode" value="embedded"/> <preference name="xwalkMultipleApk" value="true"/> + <preference name="Orientation" value="portrait"/> <feature name="StatusBar"> <param name="ios-package" onload="true" value="CDVStatusBar"/> </feature> @@ -43,16 +44,6 @@ <access origin="cdvfile://*"/> <allow-intent href="cdvfile://*"/> <preference name="iosPersistentFileLocation" value="Library"/> - <splash height="1136" src="resources/ios/splash/Default-568h@2x~iphone.png" width="640"/> - <splash height="1334" src="resources/ios/splash/Default-667h.png" width="750"/> - <splash height="2208" src="resources/ios/splash/Default-736h.png" width="1242"/> - <splash height="1242" src="resources/ios/splash/Default-Landscape-736h.png" width="2208"/> - <splash height="1536" src="resources/ios/splash/Default-Landscape@2x~ipad.png" width="2048"/> - <splash height="768" src="resources/ios/splash/Default-Landscape~ipad.png" width="1024"/> - <splash height="2048" src="resources/ios/splash/Default-Portrait@2x~ipad.png" width="1536"/> - <splash height="1024" src="resources/ios/splash/Default-Portrait~ipad.png" width="768"/> - <splash height="960" src="resources/ios/splash/Default@2x~iphone.png" width="640"/> - <splash height="480" src="resources/ios/splash/Default~iphone.png" width="320"/> <icon src="resources/ios/icon/icon.png" width="57" height="57"/> <icon src="resources/ios/icon/icon@2x.png" width="114" height="114"/> <icon src="resources/ios/icon/icon-40.png" width="40" height="40"/> @@ -71,6 +62,14 @@ <icon src="resources/ios/icon/icon-small.png" width="29" height="29"/> <icon src="resources/ios/icon/icon-small@2x.png" width="58" height="58"/> <icon src="resources/ios/icon/icon-small@3x.png" width="87" height="87"/> + <splash src="resources/ios/splash/Default-568h@2x~iphone.png" width="640" height="1136"/> + <splash src="resources/ios/splash/Default-667h.png" width="750" height="1334"/> + <splash src="resources/ios/splash/Default-736h.png" width="1242" height="2208"/> + <splash src="resources/ios/splash/Default-Portrait@2x~ipad.png" width="1536" height="2048"/> + <splash src="resources/ios/splash/Default-Portrait@~ipadpro.png" width="2048" height="2732"/> + <splash src="resources/ios/splash/Default-Portrait~ipad.png" width="768" height="1024"/> + <splash src="resources/ios/splash/Default@2x~iphone.png" width="640" height="960"/> + <splash src="resources/ios/splash/Default~iphone.png" width="320" height="480"/> </platform> <platform name="android"> <preference name="android-minSdkVersion" value="23"/> @@ -79,18 +78,6 @@ <preference name="SplashShowOnlyFirstTime" value="false"/> <preference name="AndroidPersistentFileLocation" value="Compatibility"/> <preference name="android-build-tool" value="gradle"/> - <splash density="land-ldpi" src="resources/android/splash/drawable-land-ldpi-screen.png"/> - <splash density="land-mdpi" src="resources/android/splash/drawable-land-mdpi-screen.png"/> - <splash density="land-hdpi" src="resources/android/splash/drawable-land-hdpi-screen.png"/> - <splash density="land-xhdpi" src="resources/android/splash/drawable-land-xhdpi-screen.png"/> - <splash density="land-xxhdpi" src="resources/android/splash/drawable-land-xxhdpi-screen.png"/> - <splash density="land-xxxhdpi" src="resources/android/splash/drawable-land-xxxhdpi-screen.png"/> - <splash density="port-ldpi" src="resources/android/splash/drawable-port-ldpi-screen.png"/> - <splash density="port-mdpi" src="resources/android/splash/drawable-port-mdpi-screen.png"/> - <splash density="port-hdpi" src="resources/android/splash/drawable-port-hdpi-screen.png"/> - <splash density="port-xhdpi" src="resources/android/splash/drawable-port-xhdpi-screen.png"/> - <splash density="port-xxhdpi" src="resources/android/splash/drawable-port-xxhdpi-screen.png"/> - <splash density="port-xxxhdpi" src="resources/android/splash/drawable-port-xxxhdpi-screen.png"/> <access origin="cdvfile://*"/> <allow-intent href="cdvfile://*"/> <icon src="resources/android/icon/drawable-ldpi-icon.png" density="ldpi"/> @@ -99,6 +86,12 @@ <icon src="resources/android/icon/drawable-xhdpi-icon.png" density="xhdpi"/> <icon src="resources/android/icon/drawable-xxhdpi-icon.png" density="xxhdpi"/> <icon src="resources/android/icon/drawable-xxxhdpi-icon.png" density="xxxhdpi"/> + <splash src="resources/android/splash/drawable-port-ldpi-screen.png" density="port-ldpi"/> + <splash src="resources/android/splash/drawable-port-mdpi-screen.png" density="port-mdpi"/> + <splash src="resources/android/splash/drawable-port-hdpi-screen.png" density="port-hdpi"/> + <splash src="resources/android/splash/drawable-port-xhdpi-screen.png" density="port-xhdpi"/> + <splash src="resources/android/splash/drawable-port-xxhdpi-screen.png" density="port-xxhdpi"/> + <splash src="resources/android/splash/drawable-port-xxxhdpi-screen.png" density="port-xxxhdpi"/> </platform> <icon src="resources/android/icon/drawable-xhdpi-icon.png"/> </widget> diff --git a/deploy-ios-dev.sh b/deploy-ios-dev.sh index 64260c03038b0ec20f5eccc15756f57507e2534c..10295e6b8a2cad225137b1ca84d981813362e32f 100644 --- a/deploy-ios-dev.sh +++ b/deploy-ios-dev.sh @@ -1,12 +1,10 @@ #!/bin/bash -echo "Removing Android platform" -ionic platform remove android -echo "Reinstalling Android platform" -ionic platform add android +echo "Removing iOS platform" +ionic platform remove ios +echo "Reinstalling iOS platform" +ionic platform add ios echo "Build with Gulp" gulp build -echo "Remove old APK file" -rm platforms/android/build/outputs/apk/android-debug.apk -echo "Run on Android device" -ionic run android +echo "Run on iOS device" +ionic build ios --release diff --git a/resources/splash.png b/resources/splash.png index 102b4e3a874a0fdcf21c657a630a13d75619f8d4..28e16688c7ab8198199d97311004d0ed84a6bfa7 100644 Binary files a/resources/splash.png and b/resources/splash.png differ diff --git a/scss/header-bar.scss b/scss/header-bar.scss index a7c36bd673c2017d573fafc85027eaf5ffe91e2c..b89ca65b92ee3b3ec38ed5209e4ff61db55c809b 100644 --- a/scss/header-bar.scss +++ b/scss/header-bar.scss @@ -1,10 +1,15 @@ .info-icon { width: auto; - max-height: 30px; - margin-top: 2px; + max-height: 23px; + margin-top: 3px; margin-right: 20px; } +.infobulle { + max-height: 27px; + margin-top: 2px; +} + ion-header-bar.bar.bar-header { text-transform: uppercase; background-color: $bar-background-color; @@ -13,6 +18,7 @@ ion-header-bar.bar.bar-header { div { font-size: 35px !important; font-family: "OspDin"; + margin-top: 2px; } } diff --git a/scss/info.scss b/scss/info.scss index 928f057b5efe5c50037b5d1e379fded5d9c0bd2d..4668c12246173b10db6153416c0eb66974a254be 100644 --- a/scss/info.scss +++ b/scss/info.scss @@ -15,7 +15,8 @@ img { width: auto; - height: 60%; + height: 60px; + margin-top: 6px; } p { @@ -34,3 +35,7 @@ padding: 0 10px; } } + +.info-section { + margin-bottom: 10px; +} diff --git a/scss/pack.scss b/scss/pack.scss index cfa683430d1deac7f1dfd2dcb7e71773f52e58cf..3ce8dea104c79f9e2b67ae2e2bc92af15e48c52b 100644 --- a/scss/pack.scss +++ b/scss/pack.scss @@ -50,15 +50,15 @@ .title { color: $whiteColor; font-family: "OspDin"; - font-size: 35px; - padding-bottom: 8px; + font-size: 36px; + padding-bottom: 7px; } .subtitle { font-family: "SF-UI-Display"; font-weight: 700; color: $whiteColor; - font-size: 10px; + font-size: 11px; margin: -4px; &-upper { @@ -70,7 +70,6 @@ } .locked { - opacity: 0.7; .lock { position: absolute; diff --git a/scss/prediction.scss b/scss/prediction.scss index 52011b3cd49cb7af6a51615d8eb1ddd592f50f9a..efccbcf1c9aad75ca77d548a3d40097fc951f0e7 100644 --- a/scss/prediction.scss +++ b/scss/prediction.scss @@ -41,7 +41,7 @@ .percent { font-family: "Impact"; - font-size: 28px; + font-size: 26px; } } @@ -57,11 +57,17 @@ .title { font-family: 'OspDin'; font-size: 22px; + display: flex; + justify-content: center; + align-content: center; + align-items: center; .date { font-family: "SF-UI-Display"; font-weight: 100; font-size: 14px; + margin-top: 3px; + padding-left: 5px; } } } @@ -113,6 +119,7 @@ font-family: "SF-UI-Display"; padding: 1px 5px; border-radius: 5px; + font-weight: 700; } } } @@ -130,6 +137,7 @@ padding: 1px 5px; border-radius: 5px; margin: 0 1px; + font-weight: 700; } } } diff --git a/scss/unlock.scss b/scss/unlock.scss index 5b9dd6c981da95b2e1b59fbd77e707422a086f15..bbb3fab3a64d6035d2bccdec7b56a54ca06ad4d0 100644 --- a/scss/unlock.scss +++ b/scss/unlock.scss @@ -1,15 +1,19 @@ .unlock { display: none; position: absolute; - bottom: 0px; - background-color: $greenColor; + bottom: 0; + background-color: #15AC72; width: 100%; text-align: center; - z-index: 1; + z-index: 7; padding: 20px; + height: 100px; &.active { - display: block; + display: flex; + justify-content: center; + align-items: center; + align-content: center; } .content { @@ -23,9 +27,10 @@ color: $whiteColor; font-family: "OspDin"; font-size: 20px; + box-shadow: 0px 2px 1px black; span { - padding-left: 50px; + padding-left: 25px; } } } diff --git a/www/img/lock.png b/www/img/lock.png index be31a8743346087a0cf104bf0a49f053a25eb599..13f13b33e0452bf2565a54e91363de7ec2099f42 100644 Binary files a/www/img/lock.png and b/www/img/lock.png differ diff --git a/www/js/app.js b/www/js/app.js index 55c53af6ecf1e6f392bea6bc3f225895ee0fe974..8f8281624cddd6203020ef3e5e3cc8f4102d8eba 100644 --- a/www/js/app.js +++ b/www/js/app.js @@ -17,14 +17,14 @@ "how_to_use_3": "When a 2 green ticks are displayed, it means that our prediction was accurate (the final score matches with the highest percentage.", "how_to_use_4": "When a orange tick is displayed, it means that our prediction was accurate in double chance (the final score matches with the 2 highest percentages).", "how_to_use_5": "When a red cross is displayed, it means the final score matches with the lowest percentage.", - "facebook_link": "https://facebook.com/betskillsuk", + "facebook_link": "fb://page/1964315240459744", "twitter_link": "https://twitter.com/betskills", - "instagram_link": "https://instagram.com/betskills", + "instagram_link": "instagram://user?username=betskills", "daily_predictions": "Daily Predictions", "all_predictions": "All the predictions", "unlock": "Unlock", "predictions": "Predictions", - "games": "Game(s)", + "games": "Games", "currency": "£", "purchase_payment_error": "An error occured during the payment, please try again.", "purchase_internal_error": "An internal error occured, please contact the team to solve this issue.", @@ -45,14 +45,14 @@ "how_to_use_3": "Lorsque qu’une rencontre est marquée de 2 ticks verts, cela signifie que notre prédiction est validée (le score finale concorde avec le pourcentage le plus élevé).", "how_to_use_4": "Lorsqu’une rencontre est marquée d’un tick orange, cela signifie que notre prédiction est validée en double chance (le score finale concorde avec le 2ème pourcentage le plus élevé).", "how_to_use_5": "Lorsqu’une rencontre est marquée d’une croix rouge, cela signifie que le score concorde avec le pourcentage le plus faible.", - "facebook_link": "https://facebook.com/betskillsfrance", + "facebook_link": "fb://page/1757105857849857", "twitter_link": "https://twitter.com/betskills_fr", - "instagram_link": "https://instagram.com/betskills_fr", + "instagram_link": "instagram://user?username=betskills_fr", "daily_predictions": "Prédictions gratuites", "all_predictions": "Toutes les prédictions", "unlock": "Dévérouiller", "predictions": "Prédictions", - "games": "Match(s)", + "games": "Matchs", "currency": "€", "purchase_payment_error": "Une erreur est survenue lors du paiement, veuillez réessayer.", "purchase_internal_error": "Une erreur interne est survenue, veuillez contacter l'équipe Betskills pour résoudre le problème.", @@ -78,6 +78,18 @@ }); ionic.Platform.ready(function () { + + var applaunchCount = window.localStorage.getItem('launchCount'); + + //Check if it already exists or not + + if(applaunchCount){ + + }else{ + window.localStorage.setItem('launchCount',1); + window.facebookConnectPlugin.logEvent('fb_mobile_first_app_launch'); + } + if (ionic.Platform.isIOS()) { window.FirebasePlugin.grantPermission(); } @@ -148,6 +160,12 @@ $httpProvider.defaults.headers.post = {}; $httpProvider.defaults.headers.put = {}; $httpProvider.defaults.headers.patch = {}; - }); + }) + .config([ + '$compileProvider', + function($compileProvider) { + $compileProvider.aHrefSanitizationWhitelist(/^\s*(https?|ftp|mailto|chrome-extension|instagram|fb):/); + } + ]); })(angular); diff --git a/www/js/modules/purchase/service.js b/www/js/modules/purchase/service.js index 5fee12d561ec4e4aad3f49022cd4c9692c89122e..25bbd7f63ea4d02be7e99fcba5d3440f2d059093 100644 --- a/www/js/modules/purchase/service.js +++ b/www/js/modules/purchase/service.js @@ -25,6 +25,7 @@ uuid: uuid, leagues: leagues }; + window.facebookConnectPlugin.logEvent('buy_'+purchaseId); self.savePurchase(transactionData); }) .catch(function (err) { diff --git a/www/js/pages/football/template.html b/www/js/pages/football/template.html index f06d442dc7522fcef9723110efbbaca956d63a28..65134c1fb9971f2ceca1915982a92d1379f84b6f 100644 --- a/www/js/pages/football/template.html +++ b/www/js/pages/football/template.html @@ -1,6 +1,6 @@ <ion-view cache-view="true" title="Football"> <ion-nav-buttons side="right"> - <img ui-sref="info" class="info-icon" src="img/info.png" alt="info"> + <img ui-sref="info" class="info-icon infobulle" src="img/info.png" alt="info"> </ion-nav-buttons> <ion-content class="has-header"> <div ng-include src="'partials/sport-index.html'"></div> diff --git a/www/js/pages/info/template.html b/www/js/pages/info/template.html index ffba6d95c8c88e49b51f93e149892f4271ce695e..a31971f7a6721bcfb3500b5dc0aabb0be509740b 100644 --- a/www/js/pages/info/template.html +++ b/www/js/pages/info/template.html @@ -21,7 +21,7 @@ <p>Twitter</p> </a> </div> - <h3 class="title-section" translate="info_title_2"></h3> + <h3 class="title-section info-section" translate="info_title_2"></h3> <p class="content" translate="who_we_are_1"></p> <p class="content" translate="who_we_are_2"></p> <p class="content" translate="who_we_are_3"></p> diff --git a/www/js/pages/tennis/template.html b/www/js/pages/tennis/template.html index 20b227c0844876fd51b9b14c7db53e8b65bf85c5..d6c5bca4c1f20744daf864d7410a492caea48005 100644 --- a/www/js/pages/tennis/template.html +++ b/www/js/pages/tennis/template.html @@ -1,6 +1,6 @@ <ion-view cache-view="true" title="Tennis"> <ion-nav-buttons side="right"> - <img ui-sref="info" class="info-icon" src="img/info.png" alt="info"> + <img ui-sref="info" class="info-icon infobulle" src="img/info.png" alt="info"> </ion-nav-buttons> <ion-content class="has-header"> <div ng-include src="'partials/sport-index.html'"></div> diff --git a/www/partials/sport-index.html b/www/partials/sport-index.html index 7c7f4f26e9b4d268af79117ab7e4f713913995ea..b98c7b448340c942eb8c0f72baebb8c0dba15d9a 100644 --- a/www/partials/sport-index.html +++ b/www/partials/sport-index.html @@ -35,3 +35,4 @@ {{"unlock" | translate}} {{predictionsNumber}} {{"predictions" | translate}} <span>{{price}}</span> </div> </div> +