2
.import QtQuick.LocalStorage 2.0 as Sql
4
function getDatabase() {
5
return Sql.LocalStorage.openDatabaseSync("MiniMakerFF_1", "1.0", "minimakerff", 1000000);
8
// Create special table for DB version number
9
function createDBVersionTable()
11
var db = getDatabase();
14
tx.executeSql('CREATE TABLE IF NOT EXISTS dbversion' +
15
'(dbversionvalue REAL)');
20
// Check if DB value exist
21
function checkIfDBVersionExist(db_version)
23
var db = getDatabase();
27
var rs = tx.executeSql('SELECT * FROM dbversion WHERE dbversionvalue = ?',
29
if (rs.rows.length > 0 ) {
40
function checkIfDBVersionTableExists()
42
var db = getDatabase();
46
var rs = tx.executeSql('SELECT name FROM sqlite_master WHERE name="dbversion" AND type="table"');
47
if (rs.rows.length > 0 ) {
58
// Save DB version to DB
59
function saveDBVersion(db_version)
61
var db = getDatabase();
65
var rs = tx.executeSql('INSERT INTO dbversion VALUES(?)',
67
if (rs.rowsAffected > 0) {
68
result = "DB version saved as: " + db_version;
70
result = "Error with saving DB version: " + db_version;
78
function updateDBVersion(db_version)
80
var db = getDatabase();
84
var rs = tx.executeSql('UPDATE dbversion '+
85
'SET dbversionvalue = ? ',
87
if (rs.rowsAffected > 0) {
88
result = "DB version saved as: " + db_version;
90
result = "Error with saving DB version: " + db_version;
97
// Check if snaps table already exists
98
function checkIfSnapsTableExists()
100
var db = getDatabase();
104
var rs = tx.executeSql('SELECT name FROM sqlite_master WHERE name="snaps" AND type="table"');
105
if (rs.rows.length > 0 ) {
106
result = "table_exist";
109
result = "table_not_exist";
116
// Add column to a table for rotation
117
function addRotationColumnToTable(){
118
var db = getDatabase();
121
tx.executeSql('ALTER TABLE snaps ADD COLUMN imgRotation REAL')
126
// Create backgrounds table
127
function createBacksTable() {
128
var db = getDatabase();
131
tx.executeSql('CREATE TABLE IF NOT EXISTS backs' +
139
function saveBacks(tstamp, bUrl) {
140
var db = getDatabase();
144
var rs = tx.executeSql('INSERT INTO backs VALUES(?, ?)',
151
function getBacks(backlistmodel) {
152
var db = getDatabase();
155
var rs = tx.executeSql('SELECT * FROM backs');
159
for(var i = rs.rows.length - 1; i >= 0 ; i--) {
160
tstamp = rs.rows.item(i).tStamp;
161
bUrl = rs.rows.item(i).backUrl;
162
backlistmodel.append({"backtimestamp": tstamp, "back_source": bUrl});
168
// Delete backgrounds
169
function deleteBacks(backtstamp) {
170
var db = getDatabase();
174
var rs = tx.executeSql('DELETE FROM backs WHERE tStamp = ?',[backtstamp]);
179
// Create snaps table
180
function createSnapsTable() {
181
var db = getDatabase();
184
tx.executeSql('CREATE TABLE IF NOT EXISTS snaps' +
190
'imgMirror BOOLEAN,' +
198
function saveSnaps(tstamp, iUrl, iX, iY, iS, iM, iW, iR) {
199
var db = getDatabase();
203
var rs = tx.executeSql('INSERT INTO snaps VALUES(?, ?, ?, ?, ?, ?, ?, ?)',
204
[tstamp, iUrl, iX, iY, iS, iM, iW, iR]);
210
function getSnaps(snaptstamp) {
211
var db = getDatabase();
214
var rs = tx.executeSql('SELECT * FROM snaps WHERE tStamp = ?',[snaptstamp]);
222
for(var i = 0; i < rs.rows.length; i++) {
223
iUrl = rs.rows.item(i).imgUrl;
224
iX = rs.rows.item(i).imgX;
225
iY = rs.rows.item(i).imgY;
226
iS = rs.rows.item(i).imgScale;
227
iM = rs.rows.item(i).imgMirror;
228
iW = rs.rows.item(i).imgWidth;
229
iR = rs.rows.item(i).imgRotation;
230
recreateElementObjects(iUrl, iX, iY, iS, iM, iW, iR)
237
function deleteSnaps(snaptstamp) {
238
var db = getDatabase();
242
var rs = tx.executeSql('DELETE FROM snaps WHERE tStamp = ?',[snaptstamp]);