SHOW:
|
|
- or go back to the newest paste.
1 | Parse.Cloud.job("sandBoxJob", function(request, status) { | |
2 | console.log('sandBoxJob cheaters started'); | |
3 | var _ = require('underscore.js'); | |
4 | ||
5 | var basic_account = 50; | |
6 | var hacked_account = 1000; | |
7 | ||
8 | var query = new Parse.Query("Wabito"); | |
9 | ||
10 | query.greaterThanOrEqualTo("account", hacked_account); | |
11 | ||
12 | query.find().then(function(items) { | |
13 | ||
14 | if (items.length>0){ | |
15 | console.log(':\'( '+items.length+' Cheaters founded'); | |
16 | } | |
17 | else { | |
18 | console.log(':) Cool! NO cheaters founded'); | |
19 | } | |
20 | ||
21 | _.each(items, function(item) { | |
22 | // backup cheaters in a separate class | |
23 | var CheaterClass = Parse.Object.extend('Cheater'); | |
24 | cheater = new CheaterClass(); | |
25 | cheater.set('his_objectId', item.id); | |
26 | cheater.set('name', item.get('name')); | |
27 | cheater.set('hacked_account', item.get('account')); | |
28 | ||
29 | /* | |
30 | var images = item.relation("images"); | |
31 | images.query().find({ | |
32 | success: function(image) { | |
33 | console.log('this image must be deleted '+JSON.stringify(image)); | |
34 | } | |
35 | }); | |
36 | */ | |
37 | var imgQuery = new Parse.Query("Image"); | |
38 | imgQuery.equalTo("userName", item.get('name')); | |
39 | imgQuery.find().then(function(image) { | |
40 | console.log('this image must be deleted '+JSON.stringify(image)); | |
41 | }); | |
42 | ||
43 | console.log('backuping ' + JSON.stringify(cheater)); | |
44 | cheater.save(null, { | |
45 | success : function() { | |
46 | console.log('After backuping, now resetting "'+ item.get('name')+ '" with hacked '+ item.get('account') + ' account'); | |
47 | item.set("account", basic_account); | |
48 | item.save(); | |
49 | console.log('New account for "' + item.get("name") + '" is ' + item.get('account')); | |
50 | } | |
51 | }); | |
52 | });//each | |
53 | });//find | |
54 | }); |