@@ -362,7 +362,9 @@ function postTopic(aUser, aCategory, aTopic, aContent, aIssue, aCallback) {
362362 var params = { sort : { } } ;
363363 params . sort . duplicateId = - 1 ;
364364
365- if ( ! urlTopic ) { aCallback ( null ) ; }
365+ if ( ! urlTopic ) {
366+ aCallback ( null ) ;
367+ }
366368
367369 Discussion . findOne ( { path : path } , null , params , function ( aErr , aDiscussion ) {
368370 var newDiscussion = null ;
@@ -414,8 +416,9 @@ exports.createTopic = function (aReq, aRes, aNext) {
414416 var content = aReq . body [ 'comment-content' ] ;
415417
416418 var category = _ . findWhere ( categories , { slug : categorySlug } ) ;
417- if ( ! category )
419+ if ( ! category ) {
418420 return aNext ( ) ;
421+ }
419422
420423 //
421424 var options = { } ;
@@ -428,7 +431,14 @@ exports.createTopic = function (aReq, aRes, aNext) {
428431 if ( ! category . canUserPostTopic ( authedUser ) ) {
429432 return statusCodePage ( aReq , aRes , aNext , {
430433 statusCode : 403 ,
431- statusMessage : 'You cannot post a topic to this category' ,
434+ statusMessage : 'You cannot post a topic to this category'
435+ } ) ;
436+ }
437+
438+ if ( ( ! topic || ! topic . trim ( ) ) || ( ! content || ! content . trim ( ) ) ) {
439+ return statusCodePage ( aReq , aRes , aNext , {
440+ statusCode : 403 ,
441+ statusMessage : 'You cannot post an empty discussion topic to this category'
432442 } ) ;
433443 }
434444
@@ -447,14 +457,25 @@ exports.createComment = function (aReq, aRes, aNext) {
447457 var authedUser = aReq . session . user ;
448458 var content = aReq . body [ 'comment-content' ] ;
449459
450- if ( ! authedUser ) { return aNext ( ) ; }
460+ if ( ! authedUser ) {
461+ return aNext ( ) ;
462+ }
451463
452- findDiscussion ( category , topic , function ( discussion ) {
453- if ( ! discussion ) { return aNext ( ) ; }
464+ findDiscussion ( category , topic , function ( aDiscussion ) {
465+ if ( ! aDiscussion ) {
466+ return aNext ( ) ;
467+ }
468+
469+ if ( ! content || ! content . trim ( ) ) {
470+ return statusCodePage ( aReq , aRes , aNext , {
471+ statusCode : 403 ,
472+ statusMessage : 'You cannot post an empty comment to this discussion'
473+ } ) ;
474+ }
454475
455- postComment ( authedUser , discussion , content , false , function ( err , discussion ) {
456- aRes . redirect ( encodeURI ( discussion . path
457- + ( discussion . duplicateId ? '_' + discussion . duplicateId : '' ) ) ) ;
476+ postComment ( authedUser , aDiscussion , content , false , function ( aErr , aDiscussion ) {
477+ aRes . redirect ( encodeURI ( aDiscussion . path
478+ + ( aDiscussion . duplicateId ? '_' + aDiscussion . duplicateId : '' ) ) ) ;
458479 } ) ;
459480 } ) ;
460481} ;
0 commit comments