diff --git a/Gruntfile.js b/Gruntfile.js index 4e9e3aee..a4a45072 100644 --- a/Gruntfile.js +++ b/Gruntfile.js @@ -228,6 +228,9 @@ module.exports = function(grunt) { */ grunt.registerTask('build-js', function() { + // JSHint validation + grunt.task.run('jshint'); + // Run r.js optimization grunt.task.run('requirejs'); diff --git a/public/cache.manifest b/public/cache.manifest index 0ef56d89..b28f399d 100644 --- a/public/cache.manifest +++ b/public/cache.manifest @@ -1,5 +1,5 @@ CACHE MANIFEST -#Date Sun Nov 03 2013 22:25:18 +#Date Thu Nov 07 2013 23:09:02 CACHE: res/worker.js diff --git a/public/res/classes/AsyncTask.js b/public/res/classes/AsyncTask.js index 0a9d8ed8..3ed03f92 100644 --- a/public/res/classes/AsyncTask.js +++ b/public/res/classes/AsyncTask.js @@ -3,7 +3,6 @@ define([ "constants", "utils", "eventMgr", - "config" ], function(_, constants, utils, eventMgr) { var taskQueue = []; diff --git a/public/res/classes/FolderDescriptor.js b/public/res/classes/FolderDescriptor.js index b5b53075..42de9345 100644 --- a/public/res/classes/FolderDescriptor.js +++ b/public/res/classes/FolderDescriptor.js @@ -5,7 +5,7 @@ define([ "fileSystem" ], function(_, utils, storage, fileSystem) { - function FolderDescriptor(folderIndex, name, fileList) { + function FolderDescriptor(folderIndex, name) { this.folderIndex = folderIndex; this._name = name || storage[folderIndex + ".name"]; // Retrieve file list from storage diff --git a/public/res/config.js b/public/res/constants.js similarity index 96% rename from public/res/config.js rename to public/res/constants.js index 52c7f5b8..6ad98878 100644 --- a/public/res/config.js +++ b/public/res/constants.js @@ -29,11 +29,11 @@ define([], function() { // Use by Google's client.js window.delayedFunction = undefined; - function runDelayedFunction() { + window.runDelayedFunction = function() { if(window.delayedFunction !== undefined) { window.delayedFunction(); } - } + }; // Site dependent constants.BASE_URL = "http://localhost/"; diff --git a/public/res/core.js b/public/res/core.js index e30067df..4846f6bf 100644 --- a/public/res/core.js +++ b/public/res/core.js @@ -1,3 +1,4 @@ +/*globals Markdown, requirejs */ define([ "jquery", "underscore", @@ -15,7 +16,6 @@ define([ "text!html/settingsTemplateTooltip.html", "text!html/settingsUserCustomExtensionTooltip.html", "storage", - "config", "uilayout", 'pagedown-ace', 'libs/ace_mode', @@ -29,7 +29,7 @@ define([ var core = {}; // Used for periodic tasks - var intervalId = undefined; + var intervalId; // Used to detect user activity var isUserReal = false; @@ -54,7 +54,7 @@ define([ } // Used to only have 1 window of the application in the same browser - var windowId = undefined; + var windowId; function checkWindowUnique() { if(isUserReal === false || windowUnique === false) { return; @@ -106,13 +106,13 @@ define([ } // Load settings in settings dialog - var $themeInputElt = undefined; + var $themeInputElt; function loadSettings() { // Layout orientation utils.setInputRadio("radio-layout-orientation", settings.layoutOrientation); // Theme - utils.setInputValue($themeInputElt, theme); + utils.setInputValue($themeInputElt, window.theme); $themeInputElt.change(); // Lazy rendering utils.setInputChecked("#input-settings-lazy-rendering", settings.lazyRendering); @@ -190,9 +190,9 @@ define([ } // Set the panels visibility - var layout = undefined; - var $menuPanelElt = undefined; - var $documentPanelElt = undefined; + var layout; + var $menuPanelElt; + var $documentPanelElt; function setPanelVisibility(forceHide) { if(forceHide === true || layout.state.north.isClosed) { $menuPanelElt.hide(); @@ -205,7 +205,7 @@ define([ } // Set the preview button visibility - var $previewButtonsElt = undefined; + var $previewButtonsElt; function setPreviewButtonsVisibility(forceHide) { if(forceHide === true || layout.state.east.isClosed) { $previewButtonsElt.hide(); @@ -216,7 +216,7 @@ define([ } // Create ACE editor - var aceEditor = undefined; + var aceEditor; function createAceEditor() { aceEditor = ace.edit("wmd-input"); aceEditor.setOption("spellcheck", true); @@ -277,8 +277,9 @@ define([ } self.currentLine = currentLine; - if(startLine <= endLine) + if(startLine <= endLine) { self.fireUpdateEvent(startLine, endLine); + } } self.$worker = function() { self.lines.splice(0, self.lines.length); @@ -294,7 +295,7 @@ define([ } // Create the layout - var $editorButtonsElt = undefined; + var $editorButtonsElt; function createLayout() { var layoutGlobalConfig = { closable: true, @@ -384,7 +385,7 @@ define([ var $resizerDecorator = $('