diff --git a/public/src/admin/general/dashboard.js b/public/src/admin/general/dashboard.js index 6fa7084319..8595ac3b81 100644 --- a/public/src/admin/general/dashboard.js +++ b/public/src/admin/general/dashboard.js @@ -8,6 +8,7 @@ define('admin/general/dashboard', ['semver'], function(semver) { graphs: false }, isMobile = false, + isPrerelease = /^v?\d+\.\d+\.\d+-.+$/, graphData = { rooms: {}, traffic: {} @@ -46,20 +47,28 @@ define('admin/general/dashboard', ['semver'], function(semver) { a = a.name.replace(/^v/, ''); b = b.name.replace(/^v/, ''); return semver.lt(a, b) ? 1 : -1; + }).filter(function(version) { + return !isPrerelease.test(version.name); // filter out automated prerelease versions }); var version = $('#version').html(), latestVersion = releases[0].name.slice(1), checkEl = $('.version-check'); - checkEl.html($('.version-check').html().replace('', 'v' + latestVersion)); // Alter box colour accordingly if (semver.eq(latestVersion, version)) { checkEl.removeClass('alert-info').addClass('alert-success'); checkEl.append('

You are up-to-date

'); } else if (semver.gt(latestVersion, version)) { - checkEl.removeClass('alert-info').addClass('alert-danger'); - checkEl.append('

A new version (v' + latestVersion + ') has been released. Consider upgrading your NodeBB.

'); + checkEl.removeClass('alert-info').addClass('alert-warning'); + if (!isPrerelease.test(version)) { + checkEl.append('

A new version (v' + latestVersion + ') has been released. Consider upgrading your NodeBB.

'); + } else { + checkEl.append('

This is an outdated pre-release version of NodeBB. A new version (v' + latestVersion + ') has been released. Consider upgrading your NodeBB.

'); + } + } else if (isPrerelease.test(version)) { + checkEl.removeClass('alert-info').addClass('alert-info'); + checkEl.append('

This is a pre-release version of NodeBB. Unintended bugs may occur. .

'); } });