Merge pull request #2092 from nschonni/jshinting

Jshinting during CI build
This commit is contained in:
Régis Hanol 2014-03-10 09:51:11 +01:00
commit c5beb3852f
4 changed files with 36 additions and 30 deletions

15
.jshintignore Normal file
View File

@ -0,0 +1,15 @@
app/assets/javascripts/defer/html-sanitizer-bundle.js
app/assets/javascripts/locales/
lib/autospec/run-qunit.js
lib/headless-ember.js
lib/javascripts/locale/
lib/javascripts/messageformat.js
lib/javascripts/moment.js
lib/javascripts/moment_locale/
public/javascripts/
spec/phantom_js/smoke_test.js
test/javascripts/helpers/assertions.js
test/javascripts/helpers/parse_html.js
test/javascripts/helpers/qunit_helpers.js
test/javascripts/test_helper.js
vendor/

View File

@ -2,6 +2,9 @@ language: ruby
rvm:
- 2.0.0
- 2.1.1
before_install:
- npm i -g jshint
- jshint .
before_script:
- psql -c 'create database discourse_test;' -U postgres
- export DISCOURSE_HOSTNAME=www.example.com

View File

@ -1,40 +1,28 @@
// https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/Array/indexOf
if (!Array.prototype.indexOf) {
Array.prototype.indexOf = function(searchElement /*, fromIndex */) {
"use strict";
if (this === void 0 || this === null) {
throw new TypeError();
Array.prototype.indexOf = function (searchElement, fromIndex) {
if ( this === undefined || this === null ) {
throw new TypeError( '"this" is null or not defined' );
}
var t = Object(this);
var len = t.length >>> 0;
var length = this.length >>> 0; // Hack to convert object.length to a UInt32
if (len === 0) {
return -1;
fromIndex = +fromIndex || 0;
if (Math.abs(fromIndex) === Infinity) {
fromIndex = 0;
}
var n = 0;
if (arguments.length > 0) {
n = Number(arguments[1]);
if (n !== n) { // shortcut for verifying if it's NaN
n = 0;
} else if (n !== 0 && n !== (Infinity) && n !== -(Infinity)) {
n = (n > 0 || -1) * Math.floor(Math.abs(n));
if (fromIndex < 0) {
fromIndex += length;
if (fromIndex < 0) {
fromIndex = 0;
}
}
if (n >= len) {
return -1;
}
var k = n >= 0
? n
: Math.max(len - Math.abs(n), 0);
for (; k < len; k++) {
if (k in t && t[k] === searchElement) {
return k;
for (;fromIndex < length; fromIndex++) {
if (this[fromIndex] === searchElement) {
return fromIndex;
}
}

View File

@ -14,7 +14,7 @@ var Poll = Discourse.Model.extend({
options.push(Ember.Object.create({
option: option,
votes: json["options"][option],
checked: (option == selectedOption)
checked: (option === selectedOption)
}));
});
this.set('options', options);
@ -22,7 +22,7 @@ var Poll = Discourse.Model.extend({
saveVote: function(option) {
this.get('options').forEach(function(opt) {
opt.set('checked', opt.get('option') == option);
opt.set('checked', opt.get('option') === option);
});
return Discourse.ajax("/poll", {
@ -99,7 +99,7 @@ Discourse.PostView.reopen({
var view = initializePollView(this);
var pollContainer = $post.find(".poll-ui:first");
if (pollContainer.length == 0) {
if (pollContainer.length === 0) {
pollContainer = $post.find("ul:first");
}