I've got following code:
function generateId() {
var id = Math.floor(Math.random()*1000);
var lastId = this.getLastAdvertId();
var self = this;
var promise = when.promise(function(resolve, reject) {
if(id === lastId) self.generateAdvertId();
if(lastId !== null){
self.compareImages(id, lastId).then(function(result){
if(result) self.generateAdvertId();
else{
self.setLastAdvertId(id);
resolve(id);
}
});
}
self.setLastAdvertId(id);
resolve(id);
});
return promise;
}
This code 'works' the issue I've got is in that part:
if(lastId !== null){
self.compareImages(id, lastId).then(function(result){
if(result) self.generateAdvertId();
else{
self.setLastAdvertId(id);
resolve(id);
}
});
}
when both images are the same result is true, but there isn't generated new Id but returned one that was generated. What may i doing wrong there?