Commit 382d059c authored by Mathieu Giraud's avatar Mathieu Giraud

Merge branch 'fixDbUndefined' into 'dev'

Fix “db is undefined” lorsque la base de données n'est pas utilisée

Dans le cas où l’utilisation de la base de données est désactivée dans le fichier de configuration, une exception lancée dans `segmenter.js` est remontée dans la console JavaScript, ce qui facilite le développement. Ce commit implémente ce comportement (qui était donc absent) dans les fichiers :
* `builder.js` ;
* `graph.js` ;
* `list.js` ;
* `scatterPlot.js`.

Il permet également d’éviter une erreur JavaScript `this.db is undefined` si une erreur survient dans ces fichiers.

See merge request !1
parents 016e050e 4a015a9a
......@@ -47,7 +47,7 @@ Builder.prototype = {
else this.resizeGraph(50)
} catch (err) {
this.db.error(err.stack)
sendErrorToDb(err, this.db);
}
},
......@@ -57,7 +57,7 @@ Builder.prototype = {
this.build_info_container()
this.updateTagBox();
} catch(err) {
this.db.error(err.stack)
sendErrorToDb(err, this.db);
}
},
......@@ -595,7 +595,7 @@ Builder.prototype = {
this.initTag();
} catch(err) {
this.db.error(err.stack);
sendErrorToDb(err, this.db);
}
},
......
......@@ -210,7 +210,7 @@ Graph.prototype = {
this.build_menu()
.build_list();
} catch(err) {
this.db.error(err.stack);
sendErrorToDb(err, this.db);
}
return this
......
......@@ -115,7 +115,7 @@ List.prototype = {
document.body.appendChild(this.dataMenu);
} catch(err) {
this.db.error(err.stack);
sendErrorToDb(err, this.db);
}
},
......@@ -129,7 +129,7 @@ List.prototype = {
this.build_data_list()
this.resize();
} catch(err) {
this.db.error(err.stack);
sendErrorToDb(err, this.db);
}
},
......
......@@ -315,7 +315,7 @@ ScatterPlot.prototype = {
this.tsne_ready=false;
} catch(err) {
this.db.error(err.stack);
sendErrorToDb(err, this.db);
}
},
......@@ -1338,7 +1338,7 @@ ScatterPlot.prototype = {
.getTime() - startTime;
//console.log("update sp: " + elapsedTime + "ms");
} catch(err) {
this.db.error(err.stack);
sendErrorToDb(err, this.db);
}
},
......
......@@ -328,11 +328,7 @@ Segment.prototype = {
}
});
} catch(err) {
if (typeof this.db == 'undefined') {
throw err
} else {
this.db.error(err.stack);
}
sendErrorToDb(err, this.db);
}
},
......
......@@ -222,3 +222,17 @@ function nice_floor(x)
return x;
}
}
/**
* Sends error to the specified database reference.
* If database is undefined, throws the specified error.
* @param {Error} err - the error to send
* @param {Database} db - the database reference
*/
function sendErrorToDb(err, db) {
if (db) {
db.error(err.stack);
} else {
throw err;
}
}
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment