Flatratekaufprozess vollständig abgeschlossen.

This commit is contained in:
Carsten Hilmer 2016-02-03 09:17:44 +01:00
parent cfb60396ea
commit e6a9f2e68f
26 changed files with 273 additions and 80 deletions

View File

@ -31,8 +31,8 @@
<file leaf-file-name="AndroidManifest.xml" pinned="false" current-in-tab="false"> <file leaf-file-name="AndroidManifest.xml" pinned="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/AndroidManifest.xml"> <entry file="file://$PROJECT_DIR$/AndroidManifest.xml">
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state vertical-scroll-proportion="0.0"> <state vertical-scroll-proportion="-10.88">
<caret line="2" column="67" selection-start-line="2" selection-start-column="67" selection-end-line="2" selection-end-column="67" /> <caret line="16" column="0" selection-start-line="16" selection-start-column="0" selection-end-line="16" selection-end-column="0" />
<folding /> <folding />
</state> </state>
</provider> </provider>
@ -41,9 +41,10 @@
<file leaf-file-name="InAppBrowser.java" pinned="false" current-in-tab="true"> <file leaf-file-name="InAppBrowser.java" pinned="false" current-in-tab="true">
<entry file="file://$PROJECT_DIR$/src/org/apache/cordova/inappbrowser/InAppBrowser.java"> <entry file="file://$PROJECT_DIR$/src/org/apache/cordova/inappbrowser/InAppBrowser.java">
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state vertical-scroll-proportion="0.36452243"> <state vertical-scroll-proportion="0.51182795">
<caret line="70" column="37" selection-start-line="70" selection-start-column="37" selection-end-line="70" selection-end-column="37" /> <caret line="79" column="28" selection-start-line="79" selection-start-column="28" selection-end-line="79" selection-end-column="28" />
<folding> <folding>
<element signature="e#0#38645#0" expanded="false" />
<element signature="imports" expanded="false" /> <element signature="imports" expanded="false" />
<element signature="e#14236#14253#0" expanded="false" /> <element signature="e#14236#14253#0" expanded="false" />
</folding> </folding>
@ -51,11 +52,21 @@
</provider> </provider>
</entry> </entry>
</file> </file>
<file leaf-file-name="app.js" pinned="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/assets/www/js/app.js">
<provider selected="true" editor-type-id="text-editor">
<state vertical-scroll-proportion="0.0">
<caret line="90" column="34" selection-start-line="90" selection-start-column="34" selection-end-line="90" selection-end-column="34" />
<folding />
</state>
</provider>
</entry>
</file>
<file leaf-file-name="controllers.js" pinned="false" current-in-tab="false"> <file leaf-file-name="controllers.js" pinned="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/assets/www/js/controllers.js"> <entry file="file://$PROJECT_DIR$/assets/www/js/controllers.js">
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state vertical-scroll-proportion="0.0"> <state vertical-scroll-proportion="0.0">
<caret line="360" column="27" selection-start-line="360" selection-start-column="27" selection-end-line="360" selection-end-column="27" /> <caret line="390" column="0" selection-start-line="390" selection-start-column="0" selection-end-line="390" selection-end-column="0" />
<folding /> <folding />
</state> </state>
</provider> </provider>
@ -65,7 +76,7 @@
<entry file="file://$PROJECT_DIR$/assets/www/templates/tab-dash.html"> <entry file="file://$PROJECT_DIR$/assets/www/templates/tab-dash.html">
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state vertical-scroll-proportion="0.0"> <state vertical-scroll-proportion="0.0">
<caret line="0" column="0" selection-start-line="0" selection-start-column="0" selection-end-line="0" selection-end-column="0" /> <caret line="5" column="0" selection-start-line="5" selection-start-column="0" selection-end-line="5" selection-end-column="0" />
<folding /> <folding />
</state> </state>
</provider> </provider>
@ -1253,7 +1264,7 @@
</option> </option>
<option name="modificationStamps"> <option name="modificationStamps">
<map> <map>
<entry key="$PROJECT_DIR$" value="5817673031156" /> <entry key="$PROJECT_DIR$" value="5817794082175" />
</map> </map>
</option> </option>
<option name="projectBuildClasspath"> <option name="projectBuildClasspath">
@ -1623,6 +1634,7 @@
<option name="CHANGED_PATHS"> <option name="CHANGED_PATHS">
<list> <list>
<option value="$PROJECT_DIR$/assets/www/js/controllers.js" /> <option value="$PROJECT_DIR$/assets/www/js/controllers.js" />
<option value="$PROJECT_DIR$/assets/www/js/app.js" />
<option value="$PROJECT_DIR$/AndroidManifest.xml" /> <option value="$PROJECT_DIR$/AndroidManifest.xml" />
</list> </list>
</option> </option>
@ -1634,7 +1646,7 @@
<option name="x" value="-8" /> <option name="x" value="-8" />
<option name="y" value="-8" /> <option name="y" value="-8" />
<option name="width" value="1696" /> <option name="width" value="1696" />
<option name="height" value="962" /> <option name="height" value="922" />
</component> </component>
<component name="ProjectLevelVcsManager" settingsEditedManually="false"> <component name="ProjectLevelVcsManager" settingsEditedManually="false">
<OptionsSetting value="true" id="Add" /> <OptionsSetting value="true" id="Add" />
@ -1668,6 +1680,46 @@
<option name="myItemType" value="com.android.tools.idea.navigator.nodes.AndroidViewProjectNode" /> <option name="myItemType" value="com.android.tools.idea.navigator.nodes.AndroidViewProjectNode" />
</PATH_ELEMENT> </PATH_ELEMENT>
</PATH> </PATH>
<PATH>
<PATH_ELEMENT>
<option name="myItemId" value="android" />
<option name="myItemType" value="com.android.tools.idea.navigator.nodes.AndroidViewProjectNode" />
</PATH_ELEMENT>
<PATH_ELEMENT>
<option name="myItemId" value="android" />
<option name="myItemType" value="com.android.tools.idea.navigator.nodes.AndroidModuleNode" />
</PATH_ELEMENT>
<PATH_ELEMENT>
<option name="myItemId" value="assets" />
<option name="myItemType" value="com.android.tools.idea.navigator.nodes.AndroidSourceTypeNode" />
</PATH_ELEMENT>
<PATH_ELEMENT>
<option name="myItemId" value="www" />
<option name="myItemType" value="com.android.tools.idea.navigator.nodes.AndroidPsiDirectoryNode" />
</PATH_ELEMENT>
</PATH>
<PATH>
<PATH_ELEMENT>
<option name="myItemId" value="android" />
<option name="myItemType" value="com.android.tools.idea.navigator.nodes.AndroidViewProjectNode" />
</PATH_ELEMENT>
<PATH_ELEMENT>
<option name="myItemId" value="android" />
<option name="myItemType" value="com.android.tools.idea.navigator.nodes.AndroidModuleNode" />
</PATH_ELEMENT>
<PATH_ELEMENT>
<option name="myItemId" value="assets" />
<option name="myItemType" value="com.android.tools.idea.navigator.nodes.AndroidSourceTypeNode" />
</PATH_ELEMENT>
<PATH_ELEMENT>
<option name="myItemId" value="www" />
<option name="myItemType" value="com.android.tools.idea.navigator.nodes.AndroidPsiDirectoryNode" />
</PATH_ELEMENT>
<PATH_ELEMENT>
<option name="myItemId" value="js" />
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
</PATH_ELEMENT>
</PATH>
<PATH> <PATH>
<PATH_ELEMENT> <PATH_ELEMENT>
<option name="myItemId" value="android" /> <option name="myItemId" value="android" />
@ -1840,11 +1892,11 @@
<servers /> <servers />
</component> </component>
<component name="ToolWindowManager"> <component name="ToolWindowManager">
<frame x="-8" y="-8" width="1696" height="962" extended-state="0" /> <frame x="-8" y="-8" width="1696" height="922" extended-state="6" />
<editor active="true" /> <editor active="true" />
<layout> <layout>
<window_info id="TODO" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="6" side_tool="false" content_ui="tabs" /> <window_info id="TODO" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="6" side_tool="false" content_ui="tabs" />
<window_info id="Messages" active="true" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="true" weight="0.3287841" sideWeight="0.5" order="7" side_tool="false" content_ui="tabs" /> <window_info id="Messages" active="true" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="true" weight="0.35639685" sideWeight="0.5" order="7" side_tool="false" content_ui="tabs" />
<window_info id="Build Variants" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="2" side_tool="true" content_ui="tabs" /> <window_info id="Build Variants" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="2" side_tool="true" content_ui="tabs" />
<window_info id="Palette&#9;" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="2" side_tool="false" content_ui="tabs" /> <window_info id="Palette&#9;" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="2" side_tool="false" content_ui="tabs" />
<window_info id="Event Log" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="7" side_tool="true" content_ui="tabs" /> <window_info id="Event Log" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="7" side_tool="true" content_ui="tabs" />
@ -1892,6 +1944,7 @@
<state vertical-scroll-proportion="0.0"> <state vertical-scroll-proportion="0.0">
<caret line="11" column="65" selection-start-line="11" selection-start-column="65" selection-end-line="11" selection-end-column="65" /> <caret line="11" column="65" selection-start-line="11" selection-start-column="65" selection-end-line="11" selection-end-column="65" />
<folding> <folding>
<element signature="e#0#38645#0" expanded="false" />
<element signature="imports" expanded="false" /> <element signature="imports" expanded="false" />
<element signature="e#14236#14253#0" expanded="false" /> <element signature="e#14236#14253#0" expanded="false" />
</folding> </folding>
@ -1917,7 +1970,7 @@
<entry file="file://$PROJECT_DIR$/assets/www/templates/tab-dash.html"> <entry file="file://$PROJECT_DIR$/assets/www/templates/tab-dash.html">
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state vertical-scroll-proportion="0.0"> <state vertical-scroll-proportion="0.0">
<caret line="0" column="0" selection-start-line="0" selection-start-column="0" selection-end-line="0" selection-end-column="0" /> <caret line="5" column="0" selection-start-line="5" selection-start-column="0" selection-end-line="5" selection-end-column="0" />
<folding /> <folding />
</state> </state>
</provider> </provider>
@ -1925,24 +1978,33 @@
<entry file="file://$PROJECT_DIR$/assets/www/js/controllers.js"> <entry file="file://$PROJECT_DIR$/assets/www/js/controllers.js">
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state vertical-scroll-proportion="0.0"> <state vertical-scroll-proportion="0.0">
<caret line="360" column="27" selection-start-line="360" selection-start-column="27" selection-end-line="360" selection-end-column="27" /> <caret line="390" column="0" selection-start-line="390" selection-start-column="0" selection-end-line="390" selection-end-column="0" />
<folding /> <folding />
</state> </state>
</provider> </provider>
</entry> </entry>
<entry file="file://$PROJECT_DIR$/AndroidManifest.xml"> <entry file="file://$PROJECT_DIR$/AndroidManifest.xml">
<provider selected="true" editor-type-id="text-editor">
<state vertical-scroll-proportion="-10.88">
<caret line="16" column="0" selection-start-line="16" selection-start-column="0" selection-end-line="16" selection-end-column="0" />
<folding />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/assets/www/js/app.js">
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state vertical-scroll-proportion="0.0"> <state vertical-scroll-proportion="0.0">
<caret line="2" column="67" selection-start-line="2" selection-start-column="67" selection-end-line="2" selection-end-column="67" /> <caret line="90" column="34" selection-start-line="90" selection-start-column="34" selection-end-line="90" selection-end-column="34" />
<folding /> <folding />
</state> </state>
</provider> </provider>
</entry> </entry>
<entry file="file://$PROJECT_DIR$/src/org/apache/cordova/inappbrowser/InAppBrowser.java"> <entry file="file://$PROJECT_DIR$/src/org/apache/cordova/inappbrowser/InAppBrowser.java">
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state vertical-scroll-proportion="0.36452243"> <state vertical-scroll-proportion="0.51182795">
<caret line="70" column="37" selection-start-line="70" selection-start-column="37" selection-end-line="70" selection-end-column="37" /> <caret line="79" column="28" selection-start-line="79" selection-start-column="28" selection-end-line="79" selection-end-column="28" />
<folding> <folding>
<element signature="e#0#38645#0" expanded="false" />
<element signature="imports" expanded="false" /> <element signature="imports" expanded="false" />
<element signature="e#14236#14253#0" expanded="false" /> <element signature="e#14236#14253#0" expanded="false" />
</folding> </folding>

View File

@ -78,16 +78,13 @@ angular.module('starter', ['ionic', 'ngCordova', 'starter.controllers', 'starter
inappbilling.init(StoreInitsuccessHandler, StoreIniterrorHandler, {showLog:true}); inappbilling.init(StoreInitsuccessHandler, StoreIniterrorHandler, {showLog:true});
} }
//FlateRate gekauft?
function purchasessuccess (result) { function purchasessuccess (result) {
var strResult = ""; var p = result[0];
if(typeof result === 'object') {
strResult = JSON.stringify(result);
} else {
strResult = result;
}
alert("SUCCESS: \r\n"+strResult ); if(p['productId'] == 'rosenflatrate') {
$rootScope.flatrate=1;
}
} }
function purchasesfail (error) { function purchasesfail (error) {

View File

@ -63,6 +63,15 @@ $scope.show = function() {
}; };
$scope.resetflat = function() {
inappbilling.consumePurchase(function(result) {}, function(result) {}, 'rosenflatrate');
$rootScope.flatrate=0;
$scope.showflatrate = true;
$timeout(getProducts, 1000);
};
/* /*
* Produkt-Details abrufen START * Produkt-Details abrufen START
*/ */
@ -73,7 +82,7 @@ $scope.show = function() {
function successProducts (result) { function successProducts (result) {
//alert(JSON.stringify(result)); //alert(JSON.stringify(result));
$scope.showrosen = false;
$scope.producitems = [ $scope.producitems = [
angular.fromJson(result[0]), angular.fromJson(result[0]),
angular.fromJson(result[1]), angular.fromJson(result[1]),
@ -112,15 +121,26 @@ $scope.show = function() {
$scope.flateraterosenpreiscurrency=$scope.producitems[2].price_currency_code; $scope.flateraterosenpreiscurrency=$scope.producitems[2].price_currency_code;
$scope.flateraterosenpreistag="Preis: " + $scope.flateraterosenpreis + " " + $scope.flateraterosenpreiscurrency + " (inkl. MwSt.)"; $scope.flateraterosenpreistag="Preis: " + $scope.flateraterosenpreis + " " + $scope.flateraterosenpreiscurrency + " (inkl. MwSt.)";
if($rootScope.flatrate==1) {
$scope.showflatrate = false;
$scope.rosen1preistag="kostenlos - Flaterate";
$scope.rosen3preistag="kostenlos - Flaterate";
$scope.rosen9preistag="kostenlos - Flaterate";
}
$scope.showrosen = true; $scope.showrosen = true;
$timeout(function(){ $timeout(function(){
$scope.showrosen = true; $scope.showrosen = true;
}, 500); }, 400);
} }
function errorProducts (result) { function errorProducts (result) {
/*
var strResult = ""; var strResult = "";
if(typeof result === 'object') { if(typeof result === 'object') {
strResult = JSON.stringify(result); strResult = JSON.stringify(result);
@ -128,6 +148,7 @@ $scope.show = function() {
strResult = result; strResult = result;
} }
alert(strResult); alert(strResult);
*/
} }
@ -145,13 +166,22 @@ $scope.show = function() {
if((window.device && device.platform == "Android") && typeof inappbilling !== "undefined") { if((window.device && device.platform == "Android") && typeof inappbilling !== "undefined") {
if ($rootScope.storeinit==1 && $rootScope.flatrate==0){ if ($rootScope.storeinit==1){
if ($scope.preis=='rosenflatrate'){
inappbilling.buy(successBuyOnceHandler, errorBuyHandler, $scope.preis); if ($rootScope.flatrate==1){
$timeout(successConsumeHandler, 200);
} }
else{ else{
inappbilling.buy(successBuyHandler, errorBuyHandler, $scope.preis);
if ($scope.preis=='rosenflatrate'){
inappbilling.buy(successBuyOnceHandler, errorBuyHandler, $scope.preis);
}
else{
inappbilling.buy(successBuyHandler, errorBuyHandler, $scope.preis);
}
} }
} }
@ -182,7 +212,7 @@ $scope.show = function() {
} }
/* /*
* Prüfen ob Kuf schonmal durchgeführt wurde, aber noch nicht konsumiert * Prüfen ob Kauf schonmal durchgeführt wurde, aber noch nicht konsumiert
*/ */
returnBool=strResult.indexOf("Item Already Owned") != -1; returnBool=strResult.indexOf("Item Already Owned") != -1;
if (returnBool==true){ if (returnBool==true){
@ -225,6 +255,8 @@ $scope.show = function() {
$scope.rosen3preistag="kostenlos - Flaterate"; $scope.rosen3preistag="kostenlos - Flaterate";
$scope.rosen9preistag="kostenlos - Flaterate"; $scope.rosen9preistag="kostenlos - Flaterate";
$timeout(getProducts, 300);
} }
/* /*

View File

@ -54,6 +54,10 @@
<div class="col col-50"><button class="button button-full button-small icon-left ion-social-euro button-custom" ng-disabled="!$parent.preis || !$parent.freitext || !$parent.name" ng-click="buyRose()">Jetzt Kaufen</button></div> <div class="col col-50"><button class="button button-full button-small icon-left ion-social-euro button-custom" ng-disabled="!$parent.preis || !$parent.freitext || !$parent.name" ng-click="buyRose()">Jetzt Kaufen</button></div>
</div> </div>
<div class="row">
<div class="col col-50"><button class="button button-full button-small icon-left ion-image button-custom" ng-click="resetflat()">Reset Flatrate</button></div>
</div>
</div> </div>
</div> </div>

View File

@ -78,16 +78,13 @@ angular.module('starter', ['ionic', 'ngCordova', 'starter.controllers', 'starter
inappbilling.init(StoreInitsuccessHandler, StoreIniterrorHandler, {showLog:true}); inappbilling.init(StoreInitsuccessHandler, StoreIniterrorHandler, {showLog:true});
} }
//FlateRate gekauft?
function purchasessuccess (result) { function purchasessuccess (result) {
var strResult = ""; var p = result[0];
if(typeof result === 'object') {
strResult = JSON.stringify(result);
} else {
strResult = result;
}
alert("SUCCESS: \r\n"+strResult ); if(p['productId'] == 'rosenflatrate') {
$rootScope.flatrate=1;
}
} }
function purchasesfail (error) { function purchasesfail (error) {

View File

@ -63,6 +63,15 @@ $scope.show = function() {
}; };
$scope.resetflat = function() {
inappbilling.consumePurchase(function(result) {}, function(result) {}, 'rosenflatrate');
$rootScope.flatrate=0;
$scope.showflatrate = true;
$timeout(getProducts, 1000);
};
/* /*
* Produkt-Details abrufen START * Produkt-Details abrufen START
*/ */
@ -73,7 +82,7 @@ $scope.show = function() {
function successProducts (result) { function successProducts (result) {
//alert(JSON.stringify(result)); //alert(JSON.stringify(result));
$scope.showrosen = false;
$scope.producitems = [ $scope.producitems = [
angular.fromJson(result[0]), angular.fromJson(result[0]),
angular.fromJson(result[1]), angular.fromJson(result[1]),
@ -112,15 +121,26 @@ $scope.show = function() {
$scope.flateraterosenpreiscurrency=$scope.producitems[2].price_currency_code; $scope.flateraterosenpreiscurrency=$scope.producitems[2].price_currency_code;
$scope.flateraterosenpreistag="Preis: " + $scope.flateraterosenpreis + " " + $scope.flateraterosenpreiscurrency + " (inkl. MwSt.)"; $scope.flateraterosenpreistag="Preis: " + $scope.flateraterosenpreis + " " + $scope.flateraterosenpreiscurrency + " (inkl. MwSt.)";
if($rootScope.flatrate==1) {
$scope.showflatrate = false;
$scope.rosen1preistag="kostenlos - Flaterate";
$scope.rosen3preistag="kostenlos - Flaterate";
$scope.rosen9preistag="kostenlos - Flaterate";
}
$scope.showrosen = true; $scope.showrosen = true;
$timeout(function(){ $timeout(function(){
$scope.showrosen = true; $scope.showrosen = true;
}, 500); }, 400);
} }
function errorProducts (result) { function errorProducts (result) {
/*
var strResult = ""; var strResult = "";
if(typeof result === 'object') { if(typeof result === 'object') {
strResult = JSON.stringify(result); strResult = JSON.stringify(result);
@ -128,6 +148,7 @@ $scope.show = function() {
strResult = result; strResult = result;
} }
alert(strResult); alert(strResult);
*/
} }
@ -145,13 +166,22 @@ $scope.show = function() {
if((window.device && device.platform == "Android") && typeof inappbilling !== "undefined") { if((window.device && device.platform == "Android") && typeof inappbilling !== "undefined") {
if ($rootScope.storeinit==1 && $rootScope.flatrate==0){ if ($rootScope.storeinit==1){
if ($scope.preis=='rosenflatrate'){
inappbilling.buy(successBuyOnceHandler, errorBuyHandler, $scope.preis); if ($rootScope.flatrate==1){
$timeout(successConsumeHandler, 200);
} }
else{ else{
inappbilling.buy(successBuyHandler, errorBuyHandler, $scope.preis);
if ($scope.preis=='rosenflatrate'){
inappbilling.buy(successBuyOnceHandler, errorBuyHandler, $scope.preis);
}
else{
inappbilling.buy(successBuyHandler, errorBuyHandler, $scope.preis);
}
} }
} }
@ -182,7 +212,7 @@ $scope.show = function() {
} }
/* /*
* Prüfen ob Kuf schonmal durchgeführt wurde, aber noch nicht konsumiert * Prüfen ob Kauf schonmal durchgeführt wurde, aber noch nicht konsumiert
*/ */
returnBool=strResult.indexOf("Item Already Owned") != -1; returnBool=strResult.indexOf("Item Already Owned") != -1;
if (returnBool==true){ if (returnBool==true){
@ -225,6 +255,8 @@ $scope.show = function() {
$scope.rosen3preistag="kostenlos - Flaterate"; $scope.rosen3preistag="kostenlos - Flaterate";
$scope.rosen9preistag="kostenlos - Flaterate"; $scope.rosen9preistag="kostenlos - Flaterate";
$timeout(getProducts, 300);
} }
/* /*

View File

@ -54,6 +54,10 @@
<div class="col col-50"><button class="button button-full button-small icon-left ion-social-euro button-custom" ng-disabled="!$parent.preis || !$parent.freitext || !$parent.name" ng-click="buyRose()">Jetzt Kaufen</button></div> <div class="col col-50"><button class="button button-full button-small icon-left ion-social-euro button-custom" ng-disabled="!$parent.preis || !$parent.freitext || !$parent.name" ng-click="buyRose()">Jetzt Kaufen</button></div>
</div> </div>
<div class="row">
<div class="col col-50"><button class="button button-full button-small icon-left ion-image button-custom" ng-click="resetflat()">Reset Flatrate</button></div>
</div>
</div> </div>
</div> </div>

View File

@ -78,16 +78,13 @@ angular.module('starter', ['ionic', 'ngCordova', 'starter.controllers', 'starter
inappbilling.init(StoreInitsuccessHandler, StoreIniterrorHandler, {showLog:true}); inappbilling.init(StoreInitsuccessHandler, StoreIniterrorHandler, {showLog:true});
} }
//FlateRate gekauft?
function purchasessuccess (result) { function purchasessuccess (result) {
var strResult = ""; var p = result[0];
if(typeof result === 'object') {
strResult = JSON.stringify(result);
} else {
strResult = result;
}
alert("SUCCESS: \r\n"+strResult ); if(p['productId'] == 'rosenflatrate') {
$rootScope.flatrate=1;
}
} }
function purchasesfail (error) { function purchasesfail (error) {

View File

@ -63,6 +63,14 @@ $scope.show = function() {
}; };
$scope.resetflat = function() {
inappbilling.consumePurchase(function(result) {}, function(result) {}, 'rosenflatrate');
$rootScope.flatrate=0;
$timeout(getProducts, 1000);
};
/* /*
* Produkt-Details abrufen START * Produkt-Details abrufen START
*/ */
@ -73,7 +81,7 @@ $scope.show = function() {
function successProducts (result) { function successProducts (result) {
//alert(JSON.stringify(result)); //alert(JSON.stringify(result));
$scope.showrosen = false;
$scope.producitems = [ $scope.producitems = [
angular.fromJson(result[0]), angular.fromJson(result[0]),
angular.fromJson(result[1]), angular.fromJson(result[1]),
@ -112,15 +120,26 @@ $scope.show = function() {
$scope.flateraterosenpreiscurrency=$scope.producitems[2].price_currency_code; $scope.flateraterosenpreiscurrency=$scope.producitems[2].price_currency_code;
$scope.flateraterosenpreistag="Preis: " + $scope.flateraterosenpreis + " " + $scope.flateraterosenpreiscurrency + " (inkl. MwSt.)"; $scope.flateraterosenpreistag="Preis: " + $scope.flateraterosenpreis + " " + $scope.flateraterosenpreiscurrency + " (inkl. MwSt.)";
if($rootScope.flatrate==1) {
$scope.showflatrate = false;
$scope.rosen1preistag="kostenlos - Flaterate";
$scope.rosen3preistag="kostenlos - Flaterate";
$scope.rosen9preistag="kostenlos - Flaterate";
}
$scope.showrosen = true; $scope.showrosen = true;
$timeout(function(){ $timeout(function(){
$scope.showrosen = true; $scope.showrosen = true;
}, 500); }, 400);
} }
function errorProducts (result) { function errorProducts (result) {
/*
var strResult = ""; var strResult = "";
if(typeof result === 'object') { if(typeof result === 'object') {
strResult = JSON.stringify(result); strResult = JSON.stringify(result);
@ -128,6 +147,7 @@ $scope.show = function() {
strResult = result; strResult = result;
} }
alert(strResult); alert(strResult);
*/
} }
@ -145,13 +165,22 @@ $scope.show = function() {
if((window.device && device.platform == "Android") && typeof inappbilling !== "undefined") { if((window.device && device.platform == "Android") && typeof inappbilling !== "undefined") {
if ($rootScope.storeinit==1 && $rootScope.flatrate==0){ if ($rootScope.storeinit==1){
if ($scope.preis=='rosenflatrate'){
inappbilling.buy(successBuyOnceHandler, errorBuyHandler, $scope.preis); if ($rootScope.flatrate==1){
$timeout(successConsumeHandler, 200);
} }
else{ else{
inappbilling.buy(successBuyHandler, errorBuyHandler, $scope.preis);
if ($scope.preis=='rosenflatrate'){
inappbilling.buy(successBuyOnceHandler, errorBuyHandler, $scope.preis);
}
else{
inappbilling.buy(successBuyHandler, errorBuyHandler, $scope.preis);
}
} }
} }
@ -182,7 +211,7 @@ $scope.show = function() {
} }
/* /*
* Prüfen ob Kuf schonmal durchgeführt wurde, aber noch nicht konsumiert * Prüfen ob Kauf schonmal durchgeführt wurde, aber noch nicht konsumiert
*/ */
returnBool=strResult.indexOf("Item Already Owned") != -1; returnBool=strResult.indexOf("Item Already Owned") != -1;
if (returnBool==true){ if (returnBool==true){
@ -225,6 +254,8 @@ $scope.show = function() {
$scope.rosen3preistag="kostenlos - Flaterate"; $scope.rosen3preistag="kostenlos - Flaterate";
$scope.rosen9preistag="kostenlos - Flaterate"; $scope.rosen9preistag="kostenlos - Flaterate";
$timeout(getProducts, 300);
} }
/* /*

View File

@ -54,6 +54,10 @@
<div class="col col-50"><button class="button button-full button-small icon-left ion-social-euro button-custom" ng-disabled="!$parent.preis || !$parent.freitext || !$parent.name" ng-click="buyRose()">Jetzt Kaufen</button></div> <div class="col col-50"><button class="button button-full button-small icon-left ion-social-euro button-custom" ng-disabled="!$parent.preis || !$parent.freitext || !$parent.name" ng-click="buyRose()">Jetzt Kaufen</button></div>
</div> </div>
<div class="row">
<div class="col col-50"><button class="button button-full button-small icon-left ion-image button-custom" ng-click="resetflat()">Reset Flatrate</button></div>
</div>
</div> </div>
</div> </div>

View File

@ -18,7 +18,7 @@ document.getElementById(id+'Link').style.display = 'none';
<body> <body>
<h1>Lint Report</h1> <h1>Lint Report</h1>
<div class="titleSeparator"></div> <div class="titleSeparator"></div>
Check performed at Tue Feb 02 16:22:42 CET 2016.<br/> Check performed at Wed Feb 03 09:11:41 CET 2016.<br/>
6 errors and 0 warnings found:<br/><br/> 6 errors and 0 warnings found:<br/><br/>
<table class="overview"> <table class="overview">
<tr><td></td><td class="categoryColumn"><a href="#Correctness">Correctness</a> <tr><td></td><td class="categoryColumn"><a href="#Correctness">Correctness</a>

View File

@ -78,16 +78,13 @@ angular.module('starter', ['ionic', 'ngCordova', 'starter.controllers', 'starter
inappbilling.init(StoreInitsuccessHandler, StoreIniterrorHandler, {showLog:true}); inappbilling.init(StoreInitsuccessHandler, StoreIniterrorHandler, {showLog:true});
} }
//FlateRate gekauft?
function purchasessuccess (result) { function purchasessuccess (result) {
var strResult = ""; var p = result[0];
if(typeof result === 'object') {
strResult = JSON.stringify(result);
} else {
strResult = result;
}
alert("SUCCESS: \r\n"+strResult ); if(p['productId'] == 'rosenflatrate') {
$rootScope.flatrate=1;
}
} }
function purchasesfail (error) { function purchasesfail (error) {

View File

@ -63,6 +63,15 @@ $scope.show = function() {
}; };
$scope.resetflat = function() {
inappbilling.consumePurchase(function(result) {}, function(result) {}, 'rosenflatrate');
$rootScope.flatrate=0;
$scope.showflatrate = true;
$timeout(getProducts, 1000);
};
/* /*
* Produkt-Details abrufen START * Produkt-Details abrufen START
*/ */
@ -73,7 +82,7 @@ $scope.show = function() {
function successProducts (result) { function successProducts (result) {
//alert(JSON.stringify(result)); //alert(JSON.stringify(result));
$scope.showrosen = false;
$scope.producitems = [ $scope.producitems = [
angular.fromJson(result[0]), angular.fromJson(result[0]),
angular.fromJson(result[1]), angular.fromJson(result[1]),
@ -112,15 +121,26 @@ $scope.show = function() {
$scope.flateraterosenpreiscurrency=$scope.producitems[2].price_currency_code; $scope.flateraterosenpreiscurrency=$scope.producitems[2].price_currency_code;
$scope.flateraterosenpreistag="Preis: " + $scope.flateraterosenpreis + " " + $scope.flateraterosenpreiscurrency + " (inkl. MwSt.)"; $scope.flateraterosenpreistag="Preis: " + $scope.flateraterosenpreis + " " + $scope.flateraterosenpreiscurrency + " (inkl. MwSt.)";
if($rootScope.flatrate==1) {
$scope.showflatrate = false;
$scope.rosen1preistag="kostenlos - Flaterate";
$scope.rosen3preistag="kostenlos - Flaterate";
$scope.rosen9preistag="kostenlos - Flaterate";
}
$scope.showrosen = true; $scope.showrosen = true;
$timeout(function(){ $timeout(function(){
$scope.showrosen = true; $scope.showrosen = true;
}, 500); }, 400);
} }
function errorProducts (result) { function errorProducts (result) {
/*
var strResult = ""; var strResult = "";
if(typeof result === 'object') { if(typeof result === 'object') {
strResult = JSON.stringify(result); strResult = JSON.stringify(result);
@ -128,6 +148,7 @@ $scope.show = function() {
strResult = result; strResult = result;
} }
alert(strResult); alert(strResult);
*/
} }
@ -145,13 +166,22 @@ $scope.show = function() {
if((window.device && device.platform == "Android") && typeof inappbilling !== "undefined") { if((window.device && device.platform == "Android") && typeof inappbilling !== "undefined") {
if ($rootScope.storeinit==1 && $rootScope.flatrate==0){ if ($rootScope.storeinit==1){
if ($scope.preis=='rosenflatrate'){
inappbilling.buy(successBuyOnceHandler, errorBuyHandler, $scope.preis); if ($rootScope.flatrate==1){
$timeout(successConsumeHandler, 200);
} }
else{ else{
inappbilling.buy(successBuyHandler, errorBuyHandler, $scope.preis);
if ($scope.preis=='rosenflatrate'){
inappbilling.buy(successBuyOnceHandler, errorBuyHandler, $scope.preis);
}
else{
inappbilling.buy(successBuyHandler, errorBuyHandler, $scope.preis);
}
} }
} }
@ -182,7 +212,7 @@ $scope.show = function() {
} }
/* /*
* Prüfen ob Kuf schonmal durchgeführt wurde, aber noch nicht konsumiert * Prüfen ob Kauf schonmal durchgeführt wurde, aber noch nicht konsumiert
*/ */
returnBool=strResult.indexOf("Item Already Owned") != -1; returnBool=strResult.indexOf("Item Already Owned") != -1;
if (returnBool==true){ if (returnBool==true){
@ -225,6 +255,8 @@ $scope.show = function() {
$scope.rosen3preistag="kostenlos - Flaterate"; $scope.rosen3preistag="kostenlos - Flaterate";
$scope.rosen9preistag="kostenlos - Flaterate"; $scope.rosen9preistag="kostenlos - Flaterate";
$timeout(getProducts, 300);
} }
/* /*

View File

@ -54,6 +54,10 @@
<div class="col col-50"><button class="button button-full button-small icon-left ion-social-euro button-custom" ng-disabled="!$parent.preis || !$parent.freitext || !$parent.name" ng-click="buyRose()">Jetzt Kaufen</button></div> <div class="col col-50"><button class="button button-full button-small icon-left ion-social-euro button-custom" ng-disabled="!$parent.preis || !$parent.freitext || !$parent.name" ng-click="buyRose()">Jetzt Kaufen</button></div>
</div> </div>
<div class="row">
<div class="col col-50"><button class="button button-full button-small icon-left ion-image button-custom" ng-click="resetflat()">Reset Flatrate</button></div>
</div>
</div> </div>
</div> </div>