diff --git a/core/main/client/browser.js b/core/main/client/browser.js index 22c17d90b..af4e0a7dd 100644 --- a/core/main/client/browser.js +++ b/core/main/client/browser.js @@ -322,7 +322,15 @@ beef.browser = { * @example: beef.browser.isFF28() */ isFF28: function () { - return !!window.devicePixelRatio && !!window.history.replaceState && typeof navigator.mozGetUserMedia != "undefined" && (typeof window.crypto != "undefined" && typeof window.crypto.getRandomValues != "undefined") && typeof Math.hypot == 'function' && window.navigator.userAgent.match(/Firefox\/28./) != null; + return !!window.devicePixelRatio && !!window.history.replaceState && typeof navigator.mozGetUserMedia != "undefined" && (typeof window.crypto != "undefined" && typeof window.crypto.getRandomValues != "undefined") && typeof Math.hypot == 'function' && typeof String.prototype.codePointAt !== 'function' && window.navigator.userAgent.match(/Firefox\/28./) != null; + }, + + /** + * Returns true if FF29 + * @example: beef.browser.isFF29() + */ + isFF29: function () { + return !!window.devicePixelRatio && !!window.history.replaceState && typeof navigator.mozGetUserMedia != "undefined" && (typeof window.crypto != "undefined" && typeof window.crypto.getRandomValues != "undefined") && typeof Math.hypot == 'function' && typeof String.prototype.codePointAt === 'function' && window.navigator.userAgent.match(/Firefox\/29./) != null; }, /** @@ -330,7 +338,7 @@ beef.browser = { * @example: beef.browser.isFF() */ isFF: function () { - return this.isFF2() || this.isFF3() || this.isFF3_5() || this.isFF3_6() || this.isFF4() || this.isFF5() || this.isFF6() || this.isFF7() || this.isFF8() || this.isFF9() || this.isFF10() || this.isFF11() || this.isFF12() || this.isFF13() || this.isFF14() || this.isFF15() || this.isFF16() || this.isFF17() || this.isFF18() || this.isFF19() || this.isFF20() || this.isFF21() || this.isFF22() || this.isFF23() || this.isFF24() || this.isFF25() || this.isFF26() || this.isFF27() || this.isFF28(); + return this.isFF2() || this.isFF3() || this.isFF3_5() || this.isFF3_6() || this.isFF4() || this.isFF5() || this.isFF6() || this.isFF7() || this.isFF8() || this.isFF9() || this.isFF10() || this.isFF11() || this.isFF12() || this.isFF13() || this.isFF14() || this.isFF15() || this.isFF16() || this.isFF17() || this.isFF18() || this.isFF19() || this.isFF20() || this.isFF21() || this.isFF22() || this.isFF23() || this.isFF24() || this.isFF25() || this.isFF26() || this.isFF27() || this.isFF28() || this.isFF29(); }, /** @@ -911,8 +919,9 @@ beef.browser = { FF24: this.isFF24(), // Firefox 24 FF25: this.isFF25(), // Firefox 25 FF26: this.isFF26(), // Firefox 26 - FF26: this.isFF27(), // Firefox 27 - FF26: this.isFF28(), // Firefox 28 + FF27: this.isFF27(), // Firefox 27 + FF28: this.isFF28(), // Firefox 28 + FF29: this.isFF29(), // Firefox 29 FF: this.isFF(), // Firefox any version IE6: this.isIE6(), // Internet Explorer 6 @@ -1261,6 +1270,10 @@ beef.browser = { return '28' } ; // Firefox 28 + if (this.isFF29()) { + return '29' + } + ; // Firefox 29 if (this.isIE6()) { return '6'