View difference between Paste ID: Td8RBRqi and V10y9LfA
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
});