Styles und Buys verbessert
This commit is contained in:
@@ -1,154 +0,0 @@
|
||||
// Ionic Starter App
|
||||
|
||||
// angular.module is a global place for creating, registering and retrieving Angular modules
|
||||
// 'starter' is the name of this angular module example (also set in a <body> attribute in index.html)
|
||||
// the 2nd parameter is an array of 'requires'
|
||||
// 'starter.services' is found in services.js
|
||||
// 'starter.controllers' is found in controllers.js
|
||||
var db;
|
||||
|
||||
angular.module('starter', ['ionic', 'ngCordova', 'ionic-modal-select', 'starter.controllers', 'starter.services'])
|
||||
|
||||
.run(function($ionicPlatform, $window, $ionicHistory, $database, $ionicPopup, $state, $localstorage, $rootScope) {
|
||||
$ionicPlatform.ready(function() {
|
||||
// Hide the accessory bar by default (remove this to show the accessory bar above the keyboard
|
||||
// for form inputs)
|
||||
|
||||
|
||||
|
||||
$rootScope.storeinit=99;
|
||||
$rootScope.flatrate=0;
|
||||
|
||||
$ionicPlatform.registerBackButtonAction(function(event) {
|
||||
|
||||
// Handle Android back button to avoid the application exits accidentaly
|
||||
if ($state.current.name=="tab.dash") {
|
||||
$ionicPopup.confirm({
|
||||
title: 'System-Hinweis',
|
||||
template: 'Möchten Sie die App beenden?'
|
||||
}).then(function(res) {
|
||||
if (res) {
|
||||
ionic.Platform.exitApp();
|
||||
}
|
||||
});
|
||||
} else {
|
||||
$ionicHistory.clearCache();
|
||||
$ionicHistory.nextViewOptions({
|
||||
historyRoot: true
|
||||
});
|
||||
$state.go('tab.dash');
|
||||
}
|
||||
}, 100);
|
||||
|
||||
|
||||
if (window.cordova && window.cordova.plugins && window.cordova.plugins.Keyboard) {
|
||||
cordova.plugins.Keyboard.hideKeyboardAccessoryBar(true);
|
||||
cordova.plugins.Keyboard.disableScroll(true);
|
||||
|
||||
}
|
||||
|
||||
// Mandatory for InAppBrowser plugin
|
||||
if(window.cordova){
|
||||
window.open = cordova.InAppBrowser.open;
|
||||
}
|
||||
// Copy the populated database to mobile device destination
|
||||
//if (window.sqlitePlugin && window.cordova) {
|
||||
if (window.sqlitePlugin && window.cordova) {
|
||||
window.plugins.sqlDB.copy("raataar_wrk.db", function (e) {
|
||||
console.log(e);
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
|
||||
/*
|
||||
* Google-Stroe Initialisieren START
|
||||
*/
|
||||
function StoreInitsuccessHandler (result) {
|
||||
$rootScope.storeinit=1;
|
||||
inappbilling.getPurchases(purchasessuccess, purchasesfail)
|
||||
}
|
||||
|
||||
function StoreIniterrorHandler (error) {
|
||||
$rootScope.storeinit=0;
|
||||
}
|
||||
|
||||
|
||||
if((window.device && device.platform == "Android") && typeof inappbilling !== "undefined") {
|
||||
inappbilling.init(StoreInitsuccessHandler, StoreIniterrorHandler, {showLog:true});
|
||||
}
|
||||
|
||||
//FlateRate gekauft?
|
||||
function purchasessuccess (result) {
|
||||
var p = result[0];
|
||||
|
||||
if(p['productId'] == 'rosenflatrate') {
|
||||
$rootScope.flatrate=1;
|
||||
}
|
||||
}
|
||||
|
||||
function purchasesfail (error) {
|
||||
alert("ERROR: \r\n"+error );
|
||||
}
|
||||
|
||||
/*
|
||||
* Google-Stroe Initialisieren ENDE
|
||||
*/
|
||||
|
||||
|
||||
|
||||
|
||||
// Initialize database through $database service
|
||||
db = $database.initDB();
|
||||
|
||||
if (window.StatusBar) {
|
||||
// org.apache.cordova.statusbar required
|
||||
StatusBar.styleDefault();
|
||||
}
|
||||
|
||||
|
||||
});
|
||||
})
|
||||
|
||||
.config(function($stateProvider, $urlRouterProvider, $ionicConfigProvider) {
|
||||
|
||||
// Ionic uses AngularUI Router which uses the concept of states
|
||||
// Learn more here: https://github.com/angular-ui/ui-router
|
||||
// Set up the various states which the app can be in.
|
||||
// Each state's controller can be found in controllers.js
|
||||
$stateProvider
|
||||
|
||||
// setup an abstract state for the tabs directive
|
||||
.state('tab', {
|
||||
url: '/tab',
|
||||
abstract: true,
|
||||
templateUrl: 'templates/tabs.html'
|
||||
})
|
||||
|
||||
// Each tab has its own nav history stack:
|
||||
|
||||
.state('tab.dash', {
|
||||
url: '/dash',
|
||||
views: {
|
||||
'tab-dash': {
|
||||
templateUrl: 'templates/tab-dash.html',
|
||||
controller: 'DashCtrl'
|
||||
}
|
||||
}
|
||||
})
|
||||
|
||||
|
||||
.state('tab.buys', {
|
||||
url: '/buys',
|
||||
views: {
|
||||
'tab-buys': {
|
||||
templateUrl: 'templates/tab-buys.html',
|
||||
controller: 'BuysCtrl'
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
// if none of the above states are matched, use this as the fallback
|
||||
$urlRouterProvider.otherwise('/tab/dash');
|
||||
$ionicConfigProvider.tabs.position('bottom');
|
||||
});
|
||||
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@@ -1,109 +0,0 @@
|
||||
angular.module('starter.services', [])
|
||||
|
||||
.factory('$localstorage', ['$window', function($window) {
|
||||
return {
|
||||
set: function(key, value) {
|
||||
$window.localStorage[key] = value;
|
||||
},
|
||||
get: function(key, defaultValue) {
|
||||
return $window.localStorage[key] || defaultValue;
|
||||
},
|
||||
setObject: function(key, value) {
|
||||
$window.localStorage[key] = angular.toJson(value);
|
||||
},
|
||||
getObject: function(key) {
|
||||
return JSON.parse($window.localStorage[key] || '[]');
|
||||
},
|
||||
destroy: function(key) {
|
||||
$window.localStorage.removeItem(key);
|
||||
},
|
||||
log: function(key, defaultValue) {
|
||||
console.log($window.localStorage[key] || defaultValue);
|
||||
},
|
||||
logObject: function(key) {
|
||||
console.log(JSON.stringify($window.localStorage[key] || '{}'));
|
||||
}
|
||||
};
|
||||
}])
|
||||
|
||||
.factory('$database',['$cordovaSQLite', function($cordovaSQLite) {
|
||||
var self = this;
|
||||
self.db = null;
|
||||
var query;
|
||||
|
||||
//this updateTable function is for ilustrative use here, it can be changed to manage all queries indeed.
|
||||
updateTable=function (table, column, value, condition) {
|
||||
if(!condition){
|
||||
query = "UPDATE " + table + " SET " + column + " = " + value;
|
||||
} else{
|
||||
query = "UPDATE " + table + " SET " + column + " = " + value + " WHERE " + condition;
|
||||
}
|
||||
return $cordovaSQLite.execute(self.db,query,[]).
|
||||
then(function(result) {
|
||||
console.log(query);
|
||||
query=null;
|
||||
return result;
|
||||
},function(error) {
|
||||
console.error(error);
|
||||
query=null;
|
||||
return error;
|
||||
});
|
||||
};
|
||||
|
||||
return {
|
||||
initDB: function() {
|
||||
if(window.cordova){
|
||||
//self.db = sqlitePlugin.openDatabase({name: "data.db", location: 2, createFromLocation: 1});
|
||||
self.db = $cordovaSQLite.openDB("raataar_wrk.db");
|
||||
} else {
|
||||
self.db = window.openDatabase('raataar_wrk.db','1','my',800*1024); // only available when WebSQL is available in Browser
|
||||
}
|
||||
console.log('Database opened');
|
||||
return self.db;
|
||||
},
|
||||
setBuys: function(itemName,itemBild,itemBildtext,itemKaufdatum,itemappimgpath,itemappimgpublicpath) {
|
||||
query="INSERT INTO buys (Name, Bild, Bildtext, Kaufdatum, appimgpath, appimgpublicpath) VALUES (?,?,?,?,?,?);";
|
||||
return $cordovaSQLite.execute(self.db,query,[itemName,itemBild,itemBildtext,itemKaufdatum,itemappimgpath,itemappimgpublicpath]).
|
||||
then(function(result) {
|
||||
console.log("Gespeichert");
|
||||
query=null;
|
||||
}, function(error) {
|
||||
console.error(error);
|
||||
});
|
||||
},
|
||||
deleteBuy: function(id) {
|
||||
query="DELETE FROM buys WHERE ID = ?;";
|
||||
return $cordovaSQLite.execute(self.db,query,[id]).
|
||||
then(function(result) {
|
||||
console.log("Gelöscht");
|
||||
query=null;
|
||||
}, function(error) {
|
||||
console.error(error);
|
||||
});
|
||||
},
|
||||
getAllBuys: function(){
|
||||
var ArrayQ=[];
|
||||
query="SELECT * FROM buys order by id DESC";
|
||||
return $cordovaSQLite.execute(self.db,query).
|
||||
then(function(result) {
|
||||
for(j=0;j<result.rows.length;j++){
|
||||
var List={};
|
||||
//console.log(result.rows.item(j));
|
||||
List.id=result.rows.item(j).id;
|
||||
List.name=result.rows.item(j).Name;
|
||||
List.bild=result.rows.item(j).Bild;
|
||||
List.bildtext=result.rows.item(j).Bildtext;
|
||||
List.kaufdatum=result.rows.item(j).Kaufdatum;
|
||||
List.appimgpath=result.rows.item(j).appimgpath;
|
||||
List.appimgpublicpath=result.rows.item(j).appimgpublicpath;
|
||||
ArrayQ.push(List);
|
||||
}
|
||||
//console.log(ArrayQ);
|
||||
return ArrayQ;
|
||||
},function(e){
|
||||
console.error(error);
|
||||
return error;
|
||||
});
|
||||
}
|
||||
};
|
||||
}]);
|
||||
Reference in New Issue
Block a user