@@ -36,79 +36,24 @@ module.exports = {
3636 res . redirect ( '/profile/profileview/' + req . user . Eid ) ;
3737 } ) ;
3838 } ,
39- upvote : function ( req , res ) {
40-
41- var p = 0 ;
42-
43- var check = 0 ;
44- var comment = ' ' ;
45- for ( var q = 0 ; q < proj . downvote . length ; q ++ ) {
46- if ( req . body . client == proj . downvote [ q ] ) {
47- comment = 'Cannot upvote and downvote a post ' ;
48- check = 1 ;
49- break ;
50- }
51-
52- }
53-
54- if ( check == 1 ) {
55- res . send ( { proj, comment } ) ;
56- }
57- else {
58- for ( var v = 0 ; v < proj . upvote . length ; v ++ ) {
59- if ( req . body . client == proj . upvote [ v ] ) {
60- p = 1 ;
61- proj . upvote . pop ( req . body . client ) ;
62- proj . save ( ) ;
63- console . log ( 'already present' ) ;
64- break ;
65- }
66- }
67-
68- if ( p == 0 ) {
69- proj . upvote . push ( req . body . client ) ;
70- proj . save ( ) ;
71- }
72-
73- res . send ( { comment, proj } ) ;
74- }
75- } ,
76- downvote : function ( req , res ) {
77- proj . findOne ( { proid : req . body . project } ) . then ( function ( proj ) {
78-
79- var p = 0 ;
80- var check = 0 ;
81- var comment = '' ;
82-
83- for ( var q = 0 ; q < proj . upvote . length ; q ++ ) {
84- if ( req . body . client == proj . upvote [ q ] ) {
85- comment = 'Cannot do upvote downvote at same post' ;
86- check = 1 ;
87- break ;
88- }
89- }
90-
91- if ( check == 1 ) {
92- res . send ( { comment, proj } ) ;
93- }
94- else {
95- for ( var v = 0 ; v < proj . downvote . length ; v ++ ) {
96- if ( req . body . client == proj . downvote [ v ] ) {
97- p = 1 ;
98- proj . downvote . pop ( req . body . client ) ;
99- proj . save ( ) ;
100- console . log ( 'already present' ) ;
101- break ;
102- }
39+ upDownVote : function ( req , res ) {
40+ proj . findOne ( { proid : req . body . project } ) . then ( ( pro ) => {
41+ if ( pro . upDownVote . get ( req . body . client ) ) {
42+ if ( pro . upDownVote . get ( req . body . client ) == '-1' ) {
43+ pro . upDownVote . set ( req . body . client , '+1' ) ;
44+ return pro . save ( ) ;
45+
46+ } else {
47+ pro . upDownVote . set ( req . body . client , '-1' ) ;
48+ return pro . save ( ) ;
49+
10350 }
104-
105- if ( p == 0 ) {
106- proj . downvote . push ( req . body . client ) ;
107- proj . save ( ) ;
108- }
109-
110- res . send ( { comment, proj } ) ;
51+ } else {
52+ pro . upDownVote . set ( req . body . client , req . body . vote ) ;
53+ return pro . save ( ) ;
11154 }
55+ } ) . catch ( ( err ) => {
56+ return err ;
11257 } ) ;
11358 } ,
11459 ch2 : function ( req , res ) {
0 commit comments