NodeBB could not reach the package manager, proceed with installation of latest version?
In the event that NodeBB cannot boot properly:
' + '$ ./nodebb reset plugin="' + pluginID + '"' +
'Continue installation of latest version of this plugin?
', function(confirm) { - if (confirm) { - callback(); - } + callback(confirm); }); } @@ -176,15 +184,14 @@ define('admin/extend/plugins', function() { Plugins.toggleInstall = function(pluginID, version, callback) { var btn = $('li[data-plugin-id="' + pluginID + '"] button[data-action="toggleInstall"]'); var activateBtn = btn.siblings('[data-action="toggleActive"]'); - btn.html(btn.html() + 'ing') - .attr('disabled', true) - .find('i').attr('class', 'fa fa-refresh fa-spin'); + btn.find('i').attr('class', 'fa fa-refresh fa-spin'); socket.emit('admin.plugins.toggleInstall', { id: pluginID, version: version }, function(err, pluginData) { if (err) { + btn.removeAttr('disabled'); return app.alertError(err.message); } diff --git a/public/src/admin/general/homepage.js b/public/src/admin/general/homepage.js new file mode 100644 index 0000000000..96a6aac0eb --- /dev/null +++ b/public/src/admin/general/homepage.js @@ -0,0 +1,23 @@ +"use strict"; +/*global define*/ + +define('admin/general/homepage', ['admin/settings'], function(Settings) { + + function toggleCustomRoute() { + if ($('[data-field="homePageRoute"]').val()) { + $('#homePageCustom').hide(); + }else{ + $('#homePageCustom').show(); + } + } + + var Homepage = {}; + + Homepage.init = function() { + $('[data-field="homePageRoute"]').on('change', toggleCustomRoute); + + toggleCustomRoute(); + }; + + return Homepage; +}); diff --git a/public/src/admin/manage/category.js b/public/src/admin/manage/category.js index 25832bcac6..c16809e44f 100644 --- a/public/src/admin/manage/category.js +++ b/public/src/admin/manage/category.js @@ -234,6 +234,14 @@ define('admin/manage/category', [ Category.launchParentSelector = function() { socket.emit('categories.get', function(err, categories) { + if (err) { + return app.alertError(err.message); + } + + categories = categories.filter(function(category) { + return category && parseInt(category.cid, 10) !== parseInt(ajaxify.data.category.cid, 10); + }); + templates.parse('partials/category_list', { categories: categories }, function(html) { diff --git a/public/src/admin/manage/flags.js b/public/src/admin/manage/flags.js index 880094af20..5cbf55f7f1 100644 --- a/public/src/admin/manage/flags.js +++ b/public/src/admin/manage/flags.js @@ -2,15 +2,15 @@ /*global define, socket, app, admin, utils, bootbox, RELATIVE_PATH*/ define('admin/manage/flags', [ - 'forum/infinitescroll', - 'admin/modules/selectable', + 'forum/infinitescroll', + 'admin/modules/selectable', 'autocomplete' ], function(infinitescroll, selectable, autocomplete) { var Flags = {}; Flags.init = function() { - $('.post-container .content img').addClass('img-responsive'); + $('.post-container .content img:not(.not-responsive)').addClass('img-responsive'); var params = utils.params(); $('#flag-sort-by').val(params.sortBy); @@ -91,7 +91,7 @@ define('admin/manage/flags', [ infinitescroll.parseAndTranslate('admin/manage/flags', 'posts', {posts: data.posts}, function(html) { $('[data-next]').attr('data-next', data.next); $('.post-container').append(html); - html.find('img').addClass('img-responsive'); + html.find('img:not(.not-responsive)').addClass('img-responsive'); done(); }); } else { diff --git a/public/src/admin/manage/tags.js b/public/src/admin/manage/tags.js index 95133f9836..d85df5c266 100644 --- a/public/src/admin/manage/tags.js +++ b/public/src/admin/manage/tags.js @@ -10,7 +10,6 @@ define('admin/manage/tags', [ timeoutId = 0; Tags.init = function() { - handleColorPickers(); selectable.enable('.tag-management', '.tag-row'); handleSearch(); @@ -53,7 +52,7 @@ define('admin/manage/tags', [ var firstTag = $(tagsToModify[0]), title = tagsToModify.length > 1 ? 'Editing multiple tags' : 'Editing ' + firstTag.find('.tag-item').text() + ' tag'; - bootbox.dialog({ + var modal = bootbox.dialog({ title: title, message: firstTag.find('.tag-modal').html(), buttons: { @@ -79,9 +78,7 @@ define('admin/manage/tags', [ } }); - setTimeout(function() { - handleColorPickers(); - }, 500); + handleColorPickers(modal); }); } @@ -110,21 +107,13 @@ define('admin/manage/tags', [ }); } - function handleColorPickers() { + function handleColorPickers(modal) { function enableColorPicker(idx, inputEl) { - var $inputEl = $(inputEl), - previewEl = $inputEl.parents('.tag-row').find('.tag-item'); - - colorpicker.enable($inputEl, function(hsb, hex) { - if ($inputEl.attr('data-name') === 'bgColor') { - previewEl.css('background-color', '#' + hex); - } else if ($inputEl.attr('data-name') === 'color') { - previewEl.css('color', '#' + hex); - } - }); + var $inputEl = $(inputEl); + colorpicker.enable($inputEl); } - $('[data-name="bgColor"], [data-name="color"]').each(enableColorPicker); + modal.find('[data-name="bgColor"], [data-name="color"]').each(enableColorPicker); } function save(tag) { diff --git a/public/src/ajaxify.js b/public/src/ajaxify.js index 4412d185b1..d1d7ecb4be 100644 --- a/public/src/ajaxify.js +++ b/public/src/ajaxify.js @@ -110,20 +110,21 @@ $(document).ready(function() { textStatus = err.textStatus; if (data) { - data.responseJSON.config = config; var status = parseInt(data.status, 10); if (status === 403 || status === 404 || status === 500 || status === 502 || status === 503) { if (status === 502) { status = 500; } - + if (data.responseJSON) { + data.responseJSON.config = config; + } $('#footer, #content').removeClass('hide').addClass('ajaxifying'); return renderTemplate(url, status.toString(), data.responseJSON, callback); } else if (status === 401) { app.alertError('[[global:please_log_in]]'); app.previousUrl = url; return ajaxify.go('login'); - } else if (status === 302) { + } else if (status === 302 || status === 308) { if (data.responseJSON.external) { window.location.href = data.responseJSON.external; } else if (typeof data.responseJSON === 'string') { diff --git a/public/src/app.js b/public/src/app.js index a55dc9d2ab..282e76718f 100644 --- a/public/src/app.js +++ b/public/src/app.js @@ -146,19 +146,19 @@ app.cacheBuster = null; var modal = $(dialog.apply(this, arguments)[0]); translate(modal); return modal; - } + }; bootbox.prompt = function() { var modal = $(prompt.apply(this, arguments)[0]); translate(modal); return modal; - } + }; bootbox.confirm = function() { var modal = $(confirm.apply(this, arguments)[0]); translate(modal); return modal; - } + }; } function overrideTimeago() { @@ -434,11 +434,15 @@ app.cacheBuster = null; searchFields = $("#search-fields"), searchInput = $('#search-fields input'); + $('#search-form .advanced-search-link').on('mousedown', function() { + ajaxify.go('/search'); + }); + $('#search-form').on('submit', dismissSearch); searchInput.on('blur', dismissSearch); function dismissSearch(){ - searchFields.hide(); + searchFields.addClass('hide'); searchButton.show(); } @@ -469,7 +473,7 @@ app.cacheBuster = null; }; app.prepareSearch = function() { - $("#search-fields").removeClass('hide').show(); + $("#search-fields").removeClass('hide'); $("#search-button").hide(); $('#search-fields input').focus(); }; @@ -481,7 +485,7 @@ app.cacheBuster = null; if(err) { return app.alertError(err.message); } - $('[component="user/status"]') + $('[data-uid="' + app.user.uid + '"] [component="user/status"], [component="header/profilelink"] [component="user/status"]') .removeClass('away online dnd offline') .addClass(status); @@ -563,14 +567,9 @@ app.cacheBuster = null; app.showEmailConfirmWarning(); socket.removeAllListeners('event:nodebb.ready'); - socket.on('event:nodebb.ready', function(cacheBusters) { - if ( - !app.cacheBusters || - app.cacheBusters.general !== cacheBusters.general || - app.cacheBusters.css !== cacheBusters.css || - app.cacheBusters.js !== cacheBusters.js - ) { - app.cacheBusters = cacheBusters; + socket.on('event:nodebb.ready', function(data) { + if (!app.cacheBusters || app.cacheBusters['cache-buster'] !== data['cache-buster']) { + app.cacheBusters = data; app.alert({ alert_id: 'forum_updated', diff --git a/public/src/client/account/edit.js b/public/src/client/account/edit.js index c3de1ec9bf..886069a40c 100644 --- a/public/src/client/account/edit.js +++ b/public/src/client/account/edit.js @@ -153,7 +153,7 @@ define('forum/account/edit', ['forum/account/header', 'uploader', 'translator'], function handleAccountDelete() { $('#deleteAccountBtn').on('click', function() { translator.translate('[[user:delete_account_confirm]]', function(translated) { - bootbox.confirm(translated + '', function(confirm) { + var modal = bootbox.confirm(translated + '', function(confirm) { if (!confirm) { return; } @@ -169,6 +169,10 @@ define('forum/account/edit', ['forum/account/header', 'uploader', 'translator'], }); } }); + + modal.on('shown.bs.modal', function() { + modal.find('input').focus(); + }); }); return false; }); @@ -182,8 +186,16 @@ define('forum/account/edit', ['forum/account/header', 'uploader', 'translator'], $('#user-uploaded-picture').attr('src', urlOnServer); updateHeader(urlOnServer); uploadedPicture = urlOnServer; + $('#removeUploadedPictureBtn').removeClass('hide'); } + function onRemoveComplete(urlOnServer) { + $('#user-current-picture').attr('src', urlOnServer); + $('#user-uploaded-picture').attr('src', ''); + updateHeader(urlOnServer); + uploadedPicture = ''; + $('#removeUploadedPictureBtn').addClass('hide'); + } $('#upload-picture-modal').on('hide', function() { $('#userPhotoInput').val(''); @@ -222,6 +234,16 @@ define('forum/account/edit', ['forum/account/header', 'uploader', 'translator'], }); return false; }); + + $('#removeUploadedPictureBtn').on('click', function() { + socket.emit('user.removeUploadedPicture', {uid: ajaxify.data.theirid}, function(err, imageUrlOnServer) { + if (err) { + return app.alertError(err.message); + } + onRemoveComplete(imageUrlOnServer); + $('#change-picture-modal').modal('hide'); + }); + }) } function handleEmailConfirm() { diff --git a/public/src/client/account/favourites.js b/public/src/client/account/favourites.js index fd5931cc49..9d732418c4 100644 --- a/public/src/client/account/favourites.js +++ b/public/src/client/account/favourites.js @@ -8,7 +8,7 @@ define('forum/account/favourites', ['forum/account/header', 'forum/account/posts Favourites.init = function() { header.init(); - $('[component="post/content"] img').addClass('img-responsive'); + $('[component="post/content"] img:not(.not-responsive)').addClass('img-responsive'); posts.handleInfiniteScroll('posts.loadMoreFavourites', 'account/favourites'); }; diff --git a/public/src/client/account/header.js b/public/src/client/account/header.js index 511f3be5a9..226f6ac3de 100644 --- a/public/src/client/account/header.js +++ b/public/src/client/account/header.js @@ -19,7 +19,7 @@ define('forum/account/header', function() { $('.account-sub-links li').removeClass('active').each(function() { var href = $(this).find('a').attr('href'); - if (href === window.location.pathname) { + if (decodeURIComponent(href) === decodeURIComponent(window.location.pathname)) { $(this).addClass('active'); return false; } diff --git a/public/src/client/account/posts.js b/public/src/client/account/posts.js index 94dac96323..b5b04056e8 100644 --- a/public/src/client/account/posts.js +++ b/public/src/client/account/posts.js @@ -9,7 +9,7 @@ define('forum/account/posts', ['forum/account/header', 'forum/infinitescroll'], AccountPosts.init = function() { header.init(); - $('[component="post/content"] img').addClass('img-responsive'); + $('[component="post/content"] img:not(.not-responsive)').addClass('img-responsive'); AccountPosts.handleInfiniteScroll('posts.loadMoreUserPosts', 'account/posts'); }; @@ -43,7 +43,7 @@ define('forum/account/posts', ['forum/account/header', 'forum/infinitescroll'], function onPostsLoaded(posts, callback) { infinitescroll.parseAndTranslate(template, 'posts', {posts: posts}, function(html) { $('[component="posts"]').append(html); - html.find('img').addClass('img-responsive'); + html.find('img:not(.not-responsive)').addClass('img-responsive'); html.find('.timeago').timeago(); app.createUserTooltips(); utils.makeNumbersHumanReadable(html.find('.human-readable-number')); diff --git a/public/src/client/account/profile.js b/public/src/client/account/profile.js index 5e72605017..5a7756cc93 100644 --- a/public/src/client/account/profile.js +++ b/public/src/client/account/profile.js @@ -44,7 +44,7 @@ define('forum/account/profile', ['forum/account/header', 'forum/infinitescroll', }; function processPage() { - $('[component="posts"] img, [component="aboutme"] img').addClass('img-responsive'); + $('[component="posts"] img:not(.not-responsive), [component="aboutme"] img:not(.not-responsive)').addClass('img-responsive'); } function updateButtons() { @@ -154,6 +154,7 @@ define('forum/account/profile', ['forum/account/header', 'forum/infinitescroll', if (err) { return app.alertError(err.message); } + app.alertSuccess('[[user:account-deleted]]'); history.back(); }); }); diff --git a/public/src/client/account/settings.js b/public/src/client/account/settings.js index 23afc2f5c0..bf535d8ec0 100644 --- a/public/src/client/account/settings.js +++ b/public/src/client/account/settings.js @@ -45,7 +45,7 @@ define('forum/account/settings', ['forum/account/header'], function(header) { config[key] = newSettings[key]; } } - app.exposeConfigToTemplates(); + if (requireReload && parseInt(app.user.uid, 10) === parseInt(ajaxify.data.theirid, 10)) { app.alert({ id: 'setting-change', diff --git a/public/src/client/categories.js b/public/src/client/categories.js index 33db4ef784..32f6af67c3 100644 --- a/public/src/client/categories.js +++ b/public/src/client/categories.js @@ -62,7 +62,7 @@ define('forum/categories', ['components', 'translator'], function(components, tr templates.parse('categories', 'posts', {categories: {posts: posts}}, function(html) { translator.translate(html, function(translatedHTML) { translatedHTML = $(translatedHTML); - translatedHTML.find('img').addClass('img-responsive'); + translatedHTML.find('img:not(.not-responsive)').addClass('img-responsive'); translatedHTML.find('.timeago').timeago(); callback(translatedHTML); }); diff --git a/public/src/client/chats.js b/public/src/client/chats.js index b5413a6de6..8611d36f32 100644 --- a/public/src/client/chats.js +++ b/public/src/client/chats.js @@ -46,6 +46,7 @@ define('forum/chats', ['components', 'string', 'sounds', 'forum/infinitescroll', inputEl.on('keypress', function(e) { if(e.which === 13 && !e.shiftKey) { Chats.sendMessage(Chats.getRecipientUid(), inputEl); + return false; } }); @@ -130,7 +131,7 @@ define('forum/chats', ['components', 'string', 'sounds', 'forum/infinitescroll', chatContainer = $('.chat-content'); newMessage.appendTo(chatContainer); newMessage.find('.timeago').timeago(); - newMessage.find('img:not(".chat-user-image")').addClass('img-responsive'); + newMessage.find('img:not(.not-responsive)').addClass('img-responsive'); Chats.scrollToBottom($('.expanded-chat .chat-content')); } @@ -184,25 +185,30 @@ define('forum/chats', ['components', 'string', 'sounds', 'forum/infinitescroll', }; Chats.sendMessage = function(toUid, inputEl) { - var msg = S(inputEl.val()).stripTags().s; - if (msg.length) { - msg = msg +'\n'; - socket.emit('modules.chats.send', { - touid:toUid, - message:msg - }, function(err) { - if (err) { - if (err.message === '[[error:email-not-confirmed-chat]]') { - return app.showEmailConfirmWarning(err); - } - return app.alertError(err.message); - } - - inputEl.val(''); - sounds.play('chat-outgoing'); - Chats.notifyTyping(toUid, false); - }); + var msg = inputEl.val(); + if (msg.length > config.maximumChatMessageLength) { + return app.alertError('[[error:chat-message-too-long]]'); } + + if (!msg.length) { + return; + } + + inputEl.val(''); + socket.emit('modules.chats.send', { + touid: toUid, + message: msg + }, function(err) { + if (err) { + if (err.message === '[[error:email-not-confirmed-chat]]') { + return app.showEmailConfirmWarning(err); + } + return app.alertError(err.message); + } + + sounds.play('chat-outgoing'); + Chats.notifyTyping(toUid, false); + }); }; Chats.scrollToBottom = function(containerEl) { diff --git a/public/src/client/groups/details.js b/public/src/client/groups/details.js index ae6c46e03c..f5fb69e401 100644 --- a/public/src/client/groups/details.js +++ b/public/src/client/groups/details.js @@ -24,7 +24,7 @@ define('forum/groups/details', ['iconSelect', 'components', 'forum/infinitescrol handleMemberInfiniteScroll(); handleMemberInvitations(); - components.get('groups/activity').find('.content img').addClass('img-responsive'); + components.get('groups/activity').find('.content img:not(.not-responsive)').addClass('img-responsive'); detailsPage.on('click', '[data-action]', function() { var btnEl = $(this), diff --git a/public/src/client/reset.js b/public/src/client/reset.js index fcf4098b68..ef6856555a 100644 --- a/public/src/client/reset.js +++ b/public/src/client/reset.js @@ -16,13 +16,13 @@ define('forum/reset', function() { return app.alertError(err.message); } - errorEl.addClass('hide').hide(); - successEl.removeClass('hide').show(); + errorEl.addClass('hide'); + successEl.removeClass('hide'); inputEl.val(''); }); } else { - successEl.addClass('hide').hide(); - errorEl.removeClass('hide').show(); + successEl.addClass('hide'); + errorEl.removeClass('hide'); } return false; }); diff --git a/public/src/client/reset_code.js b/public/src/client/reset_code.js index abbc4582db..678edf987a 100644 --- a/public/src/client/reset_code.js +++ b/public/src/client/reset_code.js @@ -13,7 +13,7 @@ define('forum/reset_code', function() { noticeEl = $('#notice'); resetEl.on('click', function() { - if (password.val().length < 6) { + if (password.val().length < config.minimumPasswordLength) { app.alertError('[[reset_password:password_too_short]]'); } else if (password.val() !== repeat.val()) { app.alertError('[[reset_password:passwords_do_not_match]]'); diff --git a/public/src/client/search.js b/public/src/client/search.js index 5633884ff5..adee1adaee 100644 --- a/public/src/client/search.js +++ b/public/src/client/search.js @@ -80,9 +80,11 @@ define('forum/search', ['search', 'autocomplete'], function(searchModule, autoco $('#posted-by-user').val(params.by); } - if (params.categories) { - $('#posted-in-categories').val(params.categories); - } + loadCategories(function() { + if (params.categories) { + $('#posted-in-categories').val(params.categories); + } + }); if (params.searchChildren) { $('#search-children').prop('checked', true); @@ -112,6 +114,38 @@ define('forum/search', ['search', 'autocomplete'], function(searchModule, autoco } } + function loadCategories(callback) { + var listEl = $('#posted-in-categories'); + + socket.emit('categories.getCategoriesByPrivilege', 'read', function(err, categories) { + if (err) { + return app.alertError(err.message); + } + + categories = categories.filter(function(category) { + return !category.link && !parseInt(category.parentCid, 10); + }); + + categories.forEach(function(category) { + recursive(category, listEl, ''); + }); + listEl.attr('size', listEl.find('option').length); + callback(); + }); + } + + function recursive(category, listEl, level) { + if (category.link) { + return; + } + var bullet = level ? '• ' : ''; + $('').appendTo(listEl); + + category.children.forEach(function(child) { + recursive(child, listEl, ' ' + level); + }); + } + function highlightMatches(searchQuery) { if (!searchQuery) { return; @@ -125,12 +159,12 @@ define('forum/search', ['search', 'autocomplete'], function(searchModule, autoco var result = $(this); var text = result.html().replace(regex, '$1'); - result.html(text).find('img').addClass('img-responsive').each(function() { + result.html(text).find('img:not(.not-responsive)').addClass('img-responsive').each(function() { $(this).attr('src', $(this).attr('src').replace(/([\s\S]*?)<\/strong>/gi, '$1')); }); result.find('a').each(function() { - $(this).attr('href', $(this).attr('href').replace(/([\s\S]*?)<\/strong>/gi, '$1')); + $(this).attr('href', $(this).attr('href').replace(/([\s\S]*?)<\/strong>/gi, '$1')); }); }); } catch(e) { diff --git a/public/src/client/topic/events.js b/public/src/client/topic/events.js index 2d62781ee6..99564cd50c 100644 --- a/public/src/client/topic/events.js +++ b/public/src/client/topic/events.js @@ -82,12 +82,14 @@ define('forum/topic/events', [ } function onTopicPurged(data) { - ajaxify.go('category/' + ajaxify.data.cid); + if (ajaxify.data.category && ajaxify.data.category.slug) { + ajaxify.go('category/' + ajaxify.data.category.slug, null, true); + } } function onTopicMoved(data) { - if (data && data.tid > 0) { - ajaxify.go('topic/' + data.tid); + if (data && data.slug) { + ajaxify.go('topic/' + data.slug, null, true); } } @@ -110,7 +112,7 @@ define('forum/topic/events', [ editedPostEl.fadeOut(250, function() { editedPostEl.html(data.post.content); - editedPostEl.find('img').addClass('img-responsive'); + editedPostEl.find('img:not(.not-responsive)').addClass('img-responsive'); app.replaceSelfLinks(editedPostEl.find('a')); editedPostEl.fadeIn(250); }); diff --git a/public/src/client/topic/move.js b/public/src/client/topic/move.js index 648f9f3b27..4c932d8a9b 100644 --- a/public/src/client/topic/move.js +++ b/public/src/client/topic/move.js @@ -18,7 +18,7 @@ define('forum/topic/move', function() { Move.moveAll = tids ? false : true; modal.on('shown.bs.modal', onMoveModalShown); - $('#move-confirm').hide(); + $('#move-confirm').addClass('hide'); if (Move.moveAll || (tids && tids.length > 1)) { modal.find('.modal-header h3').translateText('[[topic:move_topics]]'); @@ -52,7 +52,7 @@ define('forum/topic/move', function() { function selectCategory(category) { modal.find('#confirm-category-name').html(category.html()); - $('#move-confirm').show(); + $('#move-confirm').removeClass('hide'); targetCid = category.attr('data-cid'); targetCategoryLabel = category.html(); diff --git a/public/src/client/topic/posts.js b/public/src/client/topic/posts.js index 6532ae648c..dc9825f1dc 100644 --- a/public/src/client/topic/posts.js +++ b/public/src/client/topic/posts.js @@ -18,6 +18,10 @@ define('forum/topic/posts', [ return; } + if (!data || !data.posts || !data.posts.length) { + return; + } + if (config.usePagination) { return onNewPostPagination(data); } @@ -32,12 +36,20 @@ define('forum/topic/posts', [ if (html) { html.addClass('new'); } + scrollToPostIfSelf(data.posts[0]); }); }; + function scrollToPostIfSelf(post) { + var isSelfPost = parseInt(post.uid, 10) === parseInt(app.user.uid, 10); + if (isSelfPost) { + navigator.scrollBottom(post.index); + } + } + function onNewPostPagination(data) { function scrollToPost() { - navigator.scrollBottom(data.posts[0].index); + scrollToPostIfSelf(data.posts[0]); } var posts = data.posts; diff --git a/public/src/client/topic/threadTools.js b/public/src/client/topic/threadTools.js index 95d1e61adb..82ee651ef9 100644 --- a/public/src/client/topic/threadTools.js +++ b/public/src/client/topic/threadTools.js @@ -94,9 +94,15 @@ define('forum/topic/threadTools', ['forum/topic/fork', 'forum/topic/move', 'comp function topicCommand(command, tid) { translator.translate('[[topic:thread_tools.' + command + '_confirm]]', function(msg) { bootbox.confirm(msg, function(confirm) { - if (confirm) { - socket.emit('topics.' + command, {tids: [tid], cid: ajaxify.data.cid}); + if (!confirm) { + return; } + + socket.emit('topics.' + command, {tids: [tid], cid: ajaxify.data.cid}, function(err) { + if (err) { + app.alertError(err.message); + } + }); }); }); } diff --git a/public/src/installer/install.js b/public/src/installer/install.js index 15b3514f03..56645f0301 100644 --- a/public/src/installer/install.js +++ b/public/src/installer/install.js @@ -75,7 +75,7 @@ $('document').ready(function() { } function validateConfirmPassword(field) { - if ($('[name="admin:password"]').val() !== $('[name="admin:password:confirm"]').val()) { + if ($('[name="admin:password"]').val() !== $('[name="admin:passwordConfirm"]').val()) { parent.addClass('error'); help.html('Passwords do not match.'); } else { @@ -101,7 +101,7 @@ $('document').ready(function() { return validateUsername(field); case 'admin:password': return validatePassword(field); - case 'admin:password:confirm': + case 'admin:passwordConfirm': return validateConfirmPassword(field); case 'admin:email': return validateEmail(field); diff --git a/public/src/modules/chat.js b/public/src/modules/chat.js index 4c934b19b8..89fede22aa 100644 --- a/public/src/modules/chat.js +++ b/public/src/modules/chat.js @@ -152,8 +152,7 @@ define('chat', ['components', 'taskbar', 'string', 'sounds', 'forum/chats', 'tra return; } - for(var x = 0; x