From: Elliot Smith Date: Fri, 13 May 2016 16:02:58 +0000 (+0100) Subject: toaster: fix progress bar in MySQL environment X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=7ac374adf1cc70173ff6cc492bc078bba1cf500b;p=thirdparty%2Fopenembedded%2Fopenembedded-core-contrib.git toaster: fix progress bar in MySQL environment When using MySQL, the project builds info delivered by MySQL differs from that delivered by SQLite: the former returns text values from the enumeration for Build outcomes, while the latter returns the integer value. This causes the progress bar JS to break, as it is expecting outcome strings. Modify the recent_build() method to include an outcomeText property for each Build object, then use this in the conditionals in the progress bar JS. [YOCTO #9498] Signed-off-by: Elliot Smith Signed-off-by: Michael Wood Signed-off-by: Richard Purdie --- diff --git a/lib/toaster/orm/models.py b/lib/toaster/orm/models.py index 2669606e2ee..88967a23f57 100644 --- a/lib/toaster/orm/models.py +++ b/lib/toaster/orm/models.py @@ -416,6 +416,7 @@ class Build(models.Model): # to show build progress in mrb_section.html for build in recent_builds: build.percentDone = build.completeper() + build.outcomeText = build.get_outcome_text() return recent_builds diff --git a/lib/toaster/toastergui/static/js/mrbsection.js b/lib/toaster/toastergui/static/js/mrbsection.js index 09117e1daf3..9a76ee64070 100644 --- a/lib/toaster/toastergui/static/js/mrbsection.js +++ b/lib/toaster/toastergui/static/js/mrbsection.js @@ -57,12 +57,12 @@ function mrbSectionInit(ctx){ for (var i in prjInfo.builds){ var build = prjInfo.builds[i]; - if (build.outcome === "In Progress" || + if (build.outcomeText === "In Progress" || $(".progress .bar").length > 0){ /* Update the build progress */ var percentDone; - if (build.outcome !== "In Progress"){ + if (build.outcomeText !== "In Progress"){ /* We have to ignore the value when it's Succeeded because it * goes back to 0 */