This repository was archived by the owner on May 24, 2018. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 26
/
Copy pathclient.js
67 lines (66 loc) · 1.99 KB
/
client.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
/*
* Handle calls from the client
*/
Meteor.methods({
SQLinsert: function (tableName, args) {
var table = Devwik.SQL.tables[tableName];
if(table.view) {
var message = "Inserting into views is not supported:" + table.view.name;
console.log(message);
throw new Meteor.Error(message);
}
try {
var statement = squel.insert().into(tableName);
_.each(args, function(value, key) {
value = Devwik.SQL.escape(value);
statement.set(key, value);
});
console.log(statement.toString());
var id = Devwik.SQL.execStatement(statement.toString());
} catch (err) {
console.log("Caught error:" + err);
throw new Meteor.Error(err.message);
}
return(id.insertId);
},
SQLupdate: function (tableName, args, id) {
var table = Devwik.SQL.tables[tableName];
if(table.view) {
var message = "Updating views is not supported::" + table.view.name;
console.log(message);
throw new Meteor.Error(message);
}
try {
var statement = squel.update().table(tableName);
_.each(args, function(value, key) {
value = Devwik.SQL.escape(value);
statement.set(key, value);
});
statement.where(table.dbKey + ' = ' + id).toString();
console.log(statement.toString());
var ret = Devwik.SQL.execStatement(statement.toString());
} catch (err) {
console.log("Caught error:" + err);
throw new Meteor.Error(err.message);
}
return(ret);
},
SQLremove: function (tableName, id) {
var table = Devwik.SQL.tables[tableName];
if(table.view) {
var message = "Deleting from views is not supported::" + table.view.name;
console.log(message);
throw new Meteor.Error(message);
}
try {
id = Devwik.SQL.escape(id);
var statement = squel.remove().from(tableName).where(table.dbKey + ' = ' + id).toString();
console.log(statement);
var ret = Devwik.SQL.execStatement(statement);
} catch (err) {
console.log("Caught error:" + err);
throw new Meteor.Error(err.message);
}
return(ret);
}
});