Merge branch 'master' of github.com:designcreateplay/NodeBB

v1.18.x
Julian Lam 12 years ago
commit 3caf8b4a67

@ -372,18 +372,14 @@ var socket,
var html = templates.prepare(templates['topic'].blocks['posts']).parse(data); var html = templates.prepare(templates['topic'].blocks['posts']).parse(data);
translator.translate(html, function(translatedHTML) { translator.translate(html, function(translatedHTML) {
var uniqueid = new Date().getTime(), $(translatedHTML).appendTo("#post-container")
tempContainer = jQuery('<div id="' + uniqueid + '"></div>') .hide()
.appendTo("#post-container") .fadeIn('slow');
.hide()
.append(translatedHTML)
.fadeIn('slow');
for (var x = 0, numPosts = data.posts.length; x < numPosts; x++) { for (var x = 0, numPosts = data.posts.length; x < numPosts; x++) {
socket.emit('api:post.privileges', data.posts[x].pid); socket.emit('api:post.privileges', data.posts[x].pid);
} }
tempContainer.replaceWith(tempContainer.contents());
app.infiniteLoaderActive = false; app.infiniteLoaderActive = false;
app.populate_online_users(); app.populate_online_users();

@ -45,10 +45,12 @@ define(function() {
errorEl.html(errorText).removeClass('hide'); errorEl.html(errorText).removeClass('hide');
} else { } else {
createModal.modal('hide');
errorEl.addClass('hide'); errorEl.addClass('hide');
createNameEl.val(''); createNameEl.val('');
ajaxify.go('admin/groups'); createModal.on('hidden.bs.modal', function() {
ajaxify.go('admin/groups');
});
createModal.modal('hide');
} }
}); });
}); });

@ -36,7 +36,7 @@
<br/> <br/>
<span class="account-bio-label">website</span> <span class="account-bio-label">website</span>
<span><a href="{website}">{website}</a></span> <span><a href="{website}">{websiteName}</a></span>
<br/> <br/>
<span class="account-bio-label">location</span> <span class="account-bio-label">location</span>

@ -116,7 +116,13 @@
</ul> </ul>
<ul id="logged-out-menu" class="nav navbar-nav navbar-right"> <ul id="logged-out-menu" class="nav navbar-nav navbar-right">
<li> <li class="visible-lg visible-md visible-sm">
<a href="/register">Register</a>
</li>
<li class="visible-lg visible-md visible-sm">
<a href="/login">Login</a>
</li>
<li class="visible-xs">
<a class="dropdown-toggle" data-toggle="dropdown" href="#" id="loggedout_dropdown"><i class="icon-signin"></i></a> <a class="dropdown-toggle" data-toggle="dropdown" href="#" id="loggedout_dropdown"><i class="icon-signin"></i></a>
<ul class="dropdown-menu" aria-labelledby="loggedout_dropdown"> <ul class="dropdown-menu" aria-labelledby="loggedout_dropdown">
<li> <li>

@ -1,7 +1,6 @@
<ol class="breadcrumb"> <ol class="breadcrumb">
<li><a href="/">Home</a></li> <li><a href="/">Home</a></li>
<li class="active">{category_name}</li> <li class="active">Recent</li>
<div id="category_active_users"></div>
</ol> </ol>
<ul class="nav nav-pills"> <ul class="nav nav-pills">
@ -21,7 +20,7 @@
</div> </div>
<div class="category row"> <div class="category row">
<div class="{topic_row_size}"> <div class="col-md-12">
<ul id="topics-container"> <ul id="topics-container">
<!-- BEGIN topics --> <!-- BEGIN topics -->
<li class="category-item {topics.deleted-class}"> <li class="category-item {topics.deleted-class}">

@ -543,6 +543,8 @@ var user = require('./../user.js'),
else else
data.emailClass = "hide"; data.emailClass = "hide";
data.websiteName = data.website.replace('http://', '').replace('https://', '');
data.show_banned = data.banned === '1' ? '' : 'hide'; data.show_banned = data.banned === '1' ? '' : 'hide';
data.uid = uid; data.uid = uid;

@ -226,12 +226,7 @@ var RDB = require('./redis.js'),
} }
var latestTopics = { var latestTopics = {
'category_name': 'Recent',
'show_sidebar': 'hidden',
'show_topic_button': 'hidden',
'no_topics_message': 'hidden', 'no_topics_message': 'hidden',
'topic_row_size': 'col-md-12',
'category_id': false,
'topics': [] 'topics': []
}; };

@ -4,6 +4,8 @@ var bcrypt = require('bcrypt'),
nconf = require('nconf'), nconf = require('nconf'),
winston = require('winston'), winston = require('winston'),
userSearch = require('reds').createSearch('nodebbusersearch'), userSearch = require('reds').createSearch('nodebbusersearch'),
check = require('validator').check,
sanitize = require('validator').sanitize,
utils = require('./../public/src/utils'), utils = require('./../public/src/utils'),
RDB = require('./redis'), RDB = require('./redis'),
@ -13,6 +15,7 @@ var bcrypt = require('bcrypt'),
notifications = require('./notifications'), notifications = require('./notifications'),
topics = require('./topics'); topics = require('./topics');
(function(User) { (function(User) {
'use strict'; 'use strict';
User.create = function(username, password, email, callback) { User.create = function(username, password, email, callback) {
@ -244,6 +247,9 @@ var bcrypt = require('bcrypt'),
function updateField(field, next) { function updateField(field, next) {
if (data[field] !== undefined && typeof data[field] === 'string') { if (data[field] !== undefined && typeof data[field] === 'string') {
data[field] = data[field].trim();
data[field] = sanitize(data[field]).escape();
if (field === 'email') { if (field === 'email') {
var gravatarpicture = User.createGravatarURLFromEmail(data[field]); var gravatarpicture = User.createGravatarURLFromEmail(data[field]);
User.setUserField(uid, 'gravatarpicture', gravatarpicture); User.setUserField(uid, 'gravatarpicture', gravatarpicture);
@ -265,6 +271,10 @@ var bcrypt = require('bcrypt'),
return; return;
} else if (field === 'signature') { } else if (field === 'signature') {
data[field] = utils.strip_tags(data[field]); data[field] = utils.strip_tags(data[field]);
} else if (field === 'website') {
if(data[field].substr(0, 7) !== 'http://' && data[field].substr(0, 8) !== 'https://') {
data[field] = 'http://' + data[field];
}
} }
User.setUserField(uid, field, data[field]); User.setUserField(uid, field, data[field]);

Loading…
Cancel
Save