update about page and move stats into partial that is also displayed on about page. Fix Trello API issue on stats page
parent
574cb3d957
commit
91638ade81
|
@ -30,28 +30,29 @@ module.exports = {
|
|||
var date2 = new Date();
|
||||
var timeDiff = Math.abs(date2.getTime() - date1.getTime());
|
||||
var daysRunning = Math.ceil(timeDiff / (1000 * 3600 * 24));
|
||||
var nonprofitProjects = client.get('https://trello.com/1/boards/BA3xVpz9/cards?key=' + secrets.trello.key, function(data, response){return data.length;});
|
||||
User.count({}, function(err, users) { if (err) { debug('User err: ', err); next(err); }
|
||||
User.count({'points': {'$gt': 2}}, function(err, c2) { if (err) { debug('User err: ', err); next(err); }
|
||||
User.count({'points': {'$gt': 4}}, function(err, c4) { if (err) { debug('User err: ', err); next(err); }
|
||||
User.count({'points': {'$gt': 9}}, function(err, c9) { if (err) { debug('User err: ', err); next(err); }
|
||||
User.count({'points': {'$gt': 19}}, function(err, c19) { if (err) { debug('User err: ', err); next(err); }
|
||||
User.count({'points': {'$gt': 29}}, function(err, c29) { if (err) { debug('User err: ', err); next(err); }
|
||||
User.count({'points': {'$gt': 39}}, function(err, c39) { if (err) { debug('User err: ', err); next(err); }
|
||||
User.count({'points': {'$gt': 53}}, function(err, all) { if (err) { debug('User err: ', err); next(err); }
|
||||
res.render('resources/stats', {
|
||||
title: 'Free Code Camp Stats:',
|
||||
daysRunning: daysRunning,
|
||||
users: users,
|
||||
nonprofitProjects: nonprofitProjects, /* can't yet get this to work. Async issue?
|
||||
Hardcoded value for now and created a Trello card */
|
||||
c2: c2,
|
||||
c4: c4,
|
||||
c9: c9,
|
||||
c19: c19,
|
||||
c29: c29,
|
||||
c39: c39,
|
||||
all: all
|
||||
client.get('https://trello.com/1/boards/BA3xVpz9/cards?key=' + secrets.trello.key, function(trello, response) {
|
||||
var nonprofitProjects = (trello && trello.length) || 15;
|
||||
User.count({}, function(err, users) { if (err) { debug('User err: ', err); next(err); }
|
||||
User.count({'points': {'$gt': 2}}, function(err, c2) { if (err) { debug('User err: ', err); next(err); }
|
||||
User.count({'points': {'$gt': 4}}, function(err, c4) { if (err) { debug('User err: ', err); next(err); }
|
||||
User.count({'points': {'$gt': 9}}, function(err, c9) { if (err) { debug('User err: ', err); next(err); }
|
||||
User.count({'points': {'$gt': 19}}, function(err, c19) { if (err) { debug('User err: ', err); next(err); }
|
||||
User.count({'points': {'$gt': 29}}, function(err, c29) { if (err) { debug('User err: ', err); next(err); }
|
||||
User.count({'points': {'$gt': 39}}, function(err, c39) { if (err) { debug('User err: ', err); next(err); }
|
||||
User.count({'points': {'$gt': 53}}, function(err, all) { if (err) { debug('User err: ', err); next(err); }
|
||||
res.render('resources/stats', {
|
||||
title: 'Free Code Camp Stats:',
|
||||
daysRunning: daysRunning,
|
||||
users: users,
|
||||
nonprofitProjects: nonprofitProjects,
|
||||
c2: c2,
|
||||
c4: c4,
|
||||
c9: c9,
|
||||
c19: c19,
|
||||
c29: c29,
|
||||
c39: c39,
|
||||
all: all
|
||||
});
|
||||
});
|
||||
});
|
||||
});
|
||||
|
@ -131,8 +132,41 @@ module.exports = {
|
|||
},
|
||||
|
||||
about: function(req, res) {
|
||||
res.render('resources/about', {
|
||||
title: 'About Free Code Camp and Our Team of Volunteers'
|
||||
var date1 = new Date("10/15/2014");
|
||||
var date2 = new Date();
|
||||
var timeDiff = Math.abs(date2.getTime() - date1.getTime());
|
||||
var daysRunning = Math.ceil(timeDiff / (1000 * 3600 * 24));
|
||||
client.get('https://trello.com/1/boards/BA3xVpz9/cards?key=' + secrets.trello.key, function(trello, response) {
|
||||
var nonprofitProjects = trello.length || 15;
|
||||
User.count({}, function(err, users) { if (err) { debug('User err: ', err); next(err); }
|
||||
User.count({'points': {'$gt': 2}}, function(err, c2) { if (err) { debug('User err: ', err); next(err); }
|
||||
User.count({'points': {'$gt': 4}}, function(err, c4) { if (err) { debug('User err: ', err); next(err); }
|
||||
User.count({'points': {'$gt': 9}}, function(err, c9) { if (err) { debug('User err: ', err); next(err); }
|
||||
User.count({'points': {'$gt': 19}}, function(err, c19) { if (err) { debug('User err: ', err); next(err); }
|
||||
User.count({'points': {'$gt': 29}}, function(err, c29) { if (err) { debug('User err: ', err); next(err); }
|
||||
User.count({'points': {'$gt': 39}}, function(err, c39) { if (err) { debug('User err: ', err); next(err); }
|
||||
User.count({'points': {'$gt': 53}}, function(err, all) { if (err) { debug('User err: ', err); next(err); }
|
||||
res.render('resources/about', {
|
||||
title: 'About Free Code Camp and Our Team of Volunteers',
|
||||
daysRunning: daysRunning,
|
||||
users: users,
|
||||
nonprofitProjects: nonprofitProjects,
|
||||
c2: c2,
|
||||
c4: c4,
|
||||
c9: c9,
|
||||
c19: c19,
|
||||
c29: c29,
|
||||
c39: c39,
|
||||
all: all
|
||||
});
|
||||
});
|
||||
});
|
||||
});
|
||||
});
|
||||
});
|
||||
});
|
||||
});
|
||||
});
|
||||
});
|
||||
},
|
||||
|
||||
|
|
|
@ -37,5 +37,5 @@ block content
|
|||
br
|
||||
a.btn.nonprofit-cta.btn-success(href="/nonprofits") I'm with a nonprofit and want help coding something
|
||||
|
||||
include partials/about-us
|
||||
include partials/about
|
||||
include partials/faq
|
|
@ -6,7 +6,41 @@
|
|||
.masonry-row
|
||||
.masonry-block
|
||||
.masonry-relative
|
||||
blockquote.twitter-tweet(lang='en')
|
||||
blockquote.twitter-tweet(lang='en', data-cards="hidden")
|
||||
p
|
||||
| Getting back on track with
|
||||
a(href='https://twitter.com/FreeCodeCamp') @freecodecamp
|
||||
| and committing to a new career in 2015!
|
||||
| — Jen (@jenbestyoga)
|
||||
a(href='https://twitter.com/jenbestyoga/status/552261958221963264') January 6, 2015
|
||||
script(async='', src='//platform.twitter.com/widgets.js', charset='utf-8')
|
||||
.masonry-block
|
||||
.masonry-relative
|
||||
blockquote.twitter-tweet(lang='en', data-cards="hidden")
|
||||
p
|
||||
a(href='https://twitter.com/FreeCodeCamp') @FreeCodeCamp
|
||||
| I can't get enough of the free tutorials you're offering. Thanks for being awesome! Will be referring friends your way!
|
||||
| — Chris Pearson (@CPearsonnn)
|
||||
a(href='https://twitter.com/CPearsonnn/status/551513789401559042') January 3, 2015
|
||||
script(async='', src='//platform.twitter.com/widgets.js', charset='utf-8')
|
||||
.masonry-block
|
||||
.masonry-relative
|
||||
blockquote.twitter-tweet(lang='en', data-cards="hidden")
|
||||
p
|
||||
| Great way to start learning code, it's the future.
|
||||
a(href='http://t.co/pNwDAQ9xFe') http://t.co/pNwDAQ9xFe
|
||||
a(href='https://twitter.com/FreeCodeCamp') @FreeCodeCamp
|
||||
a(href='https://twitter.com/hashtag/Code?src=hash') #Code
|
||||
a(href='https://twitter.com/hashtag/html?src=hash') #html
|
||||
a(href='https://twitter.com/hashtag/css?src=hash') #css
|
||||
a(href='https://twitter.com/hashtag/jquery?src=hash') #jquery
|
||||
a(href='https://twitter.com/hashtag/javascript?src=hash') #javascript
|
||||
| — Adam (@savageEWOK87)
|
||||
a(href='https://twitter.com/savageEWOK87/status/549277640612278273') December 28, 2014
|
||||
script(async='', src='//platform.twitter.com/widgets.js', charset='utf-8')
|
||||
.masonry-block
|
||||
.masonry-relative
|
||||
blockquote.twitter-tweet(lang='en', data-cards="hidden")
|
||||
p
|
||||
| My boss was impressed by the troubleshooting I learned through
|
||||
a(href='https://twitter.com/FreeCodeCamp') @FreeCodeCamp
|
||||
|
@ -17,7 +51,7 @@
|
|||
script(async='', src='//platform.twitter.com/widgets.js', charset='utf-8')
|
||||
.masonry-block
|
||||
.masonry-relative
|
||||
blockquote.twitter-tweet(lang='en')
|
||||
blockquote.twitter-tweet(lang='en', data-cards="hidden")
|
||||
p
|
||||
a(href='https://twitter.com/DrivenByTatiana') @DrivenByTatiana
|
||||
a(href='https://twitter.com/FreeCodeCamp') @FreeCodeCamp
|
||||
|
@ -27,7 +61,7 @@
|
|||
script(async='', src='//platform.twitter.com/widgets.js', charset='utf-8')
|
||||
.masonry-block
|
||||
.masonry-relative
|
||||
blockquote.twitter-tweet(lang='en')
|
||||
blockquote.twitter-tweet(lang='en', data-cards="hidden")
|
||||
p
|
||||
| Discovered
|
||||
a(href='https://twitter.com/FreeCodeCamp') @FreeCodeCamp
|
||||
|
@ -39,7 +73,7 @@
|
|||
script(async='', src='//platform.twitter.com/widgets.js', charset='utf-8')
|
||||
.masonry-block
|
||||
.masonry-relative
|
||||
blockquote.twitter-tweet(lang='en')
|
||||
blockquote.twitter-tweet(lang='en', data-cards="hidden")
|
||||
p
|
||||
| For my friends who are learning to code,
|
||||
a(href='https://twitter.com/ossia') @ossia
|
||||
|
@ -53,7 +87,7 @@
|
|||
script(async='', src='//platform.twitter.com/widgets.js', charset='utf-8')
|
||||
.masonry-block
|
||||
.masonry-relative
|
||||
blockquote.twitter-tweet(lang='en')
|
||||
blockquote.twitter-tweet(lang='en', data-cards="hidden")
|
||||
p
|
||||
a(href='https://twitter.com/FreeCodeCamp') @FreeCodeCamp
|
||||
| is such a fantastic program! I love the idea of it. Perfect for someone like me
|
||||
|
@ -62,7 +96,7 @@
|
|||
script(async='', src='//platform.twitter.com/widgets.js', charset='utf-8')
|
||||
.masonry-block
|
||||
.masonry-relative
|
||||
blockquote.twitter-tweet(lang='en')
|
||||
blockquote.twitter-tweet(lang='en', data-cards="hidden")
|
||||
p
|
||||
| Just built my companies website
|
||||
a(href='http://t.co/AUkS27oTm5') http://t.co/AUkS27oTm5
|
||||
|
@ -73,7 +107,7 @@
|
|||
script(async='', src='//platform.twitter.com/widgets.js', charset='utf-8')
|
||||
.masonry-block
|
||||
.masonry-relative
|
||||
blockquote.twitter-tweet(lang='en')
|
||||
blockquote.twitter-tweet(lang='en', data-cards="hidden")
|
||||
p
|
||||
a(href='https://twitter.com/FreeCodeCamp') @FreeCodeCamp
|
||||
| I'll make time to be part of this!!!!
|
||||
|
@ -82,7 +116,7 @@
|
|||
script(async='', src='//platform.twitter.com/widgets.js', charset='utf-8')
|
||||
.masonry-block
|
||||
.masonry-relative
|
||||
blockquote.twitter-tweet(lang='en')
|
||||
blockquote.twitter-tweet(lang='en', data-cards="hidden")
|
||||
p
|
||||
a(href='https://twitter.com/FreeCodeCamp') @FreeCodeCamp
|
||||
| Great idea. Great vision.
|
||||
|
@ -91,7 +125,7 @@
|
|||
script(async='', src='//platform.twitter.com/widgets.js', charset='utf-8')
|
||||
.masonry-block
|
||||
.masonry-relative
|
||||
blockquote.twitter-tweet(lang='en')
|
||||
blockquote.twitter-tweet(lang='en', data-cards="hidden")
|
||||
p
|
||||
| Learn code for free! Your time, your pace! Sweet!
|
||||
a(href='http://t.co/y6IMdPDPnH') http://t.co/y6IMdPDPnH
|
||||
|
@ -104,7 +138,7 @@
|
|||
script(async='', src='//platform.twitter.com/widgets.js', charset='utf-8')
|
||||
.masonry-block
|
||||
.masonry-relative
|
||||
blockquote.twitter-tweet(lang='en')
|
||||
blockquote.twitter-tweet(lang='en', data-cards="hidden")
|
||||
p
|
||||
a(href='https://twitter.com/FreeCodeCamp') @FreeCodeCamp
|
||||
| is my new favorite online learning tool right now.
|
||||
|
@ -117,7 +151,7 @@
|
|||
script(async='', src='//platform.twitter.com/widgets.js', charset='utf-8')
|
||||
.masonry-block
|
||||
.masonry-relative
|
||||
blockquote.twitter-tweet(lang='en')
|
||||
blockquote.twitter-tweet(lang='en', data-cards="hidden")
|
||||
p
|
||||
| Started
|
||||
a(href='https://twitter.com/FreeCodeCamp') @FreeCodeCamp
|
||||
|
@ -131,7 +165,7 @@
|
|||
script(async='', src='//platform.twitter.com/widgets.js', charset='utf-8')
|
||||
.masonry-block
|
||||
.masonry-relative
|
||||
blockquote.twitter-tweet(lang='en')
|
||||
blockquote.twitter-tweet(lang='en', data-cards="hidden")
|
||||
p
|
||||
| I don't consider myself a teacher, but getting involved & collaborating through
|
||||
a(href='https://twitter.com/FreeCodeCamp') @FreeCodeCamp
|
||||
|
@ -141,7 +175,7 @@
|
|||
script(async='', src='//platform.twitter.com/widgets.js', charset='utf-8')
|
||||
.masonry-block
|
||||
.masonry-relative
|
||||
blockquote.twitter-tweet(lang='en')
|
||||
blockquote.twitter-tweet(lang='en', data-cards="hidden")
|
||||
p
|
||||
| A6 -
|
||||
a(href='http://t.co/M6Gyw8jszd') http://t.co/M6Gyw8jszd
|
||||
|
@ -153,7 +187,7 @@
|
|||
script(async='', src='//platform.twitter.com/widgets.js', charset='utf-8')
|
||||
.masonry-block
|
||||
.masonry-relative
|
||||
blockquote.twitter-tweet(lang='en')
|
||||
blockquote.twitter-tweet(lang='en', data-cards="hidden")
|
||||
p
|
||||
| I agree,
|
||||
a(href='https://twitter.com/LeifPixel') @LeifPixel
|
||||
|
@ -181,6 +215,18 @@
|
|||
}
|
||||
});
|
||||
#shuffle
|
||||
.col-xs-12.col-sm-4.col-md-3.team-member
|
||||
h3.negative-10.text-nowrap Ammar Shah
|
||||
h4.negative-10.text-nowrap Community Builder
|
||||
img.profile-image(src='https://s3.amazonaws.com/freecodecamp/ammar-shah.jpg' alt="Ammar Shah's picture")
|
||||
h4.text-nowrap Karachi, Pakistan
|
||||
p.negative-10 "I code whenever I'm not sleeping or in school. Making computers obey me is a dream come true."
|
||||
.col-xs-12.col-sm-4.col-md-3.team-member
|
||||
h3.negative-10.text-nowrap Branden Byers
|
||||
h4.negative-10.text-nowrap Community Builder
|
||||
img.profile-image(src='https://s3.amazonaws.com/freecodecamp/branden-byers.jpg' alt="Branden Byers picture")
|
||||
h4.text-nowrap Madison, Wisconsin
|
||||
p.negative-10 "I'm a massage therapist and Stay-at-home-dad. I learned Hypercard, then Rails, but now I feel at home with JavaScript."
|
||||
.col-xs-12.col-sm-4.col-md-3.team-member
|
||||
h3.negative-10.text-nowrap Michael Johnson
|
||||
h4.negative-10.text-nowrap Nonprofit Coordinator
|
|
@ -0,0 +1,68 @@
|
|||
.panel.panel-primary
|
||||
.panel-heading.landing-panel-heading.text-center Free Code Camp Stats
|
||||
.panel-body
|
||||
.landing-panel-body.text-center
|
||||
.row
|
||||
.col-xs-6.text-right
|
||||
h2 Days since we Launched:
|
||||
.col-xs-6.text-left
|
||||
h2
|
||||
= daysRunning
|
||||
.row
|
||||
.col-xs-6.text-right
|
||||
h2 Nonprofit Projects:
|
||||
.col-xs-6.text-left
|
||||
h2
|
||||
a(href="https://trello.com/b/BA3xVpz9/nonprofit-projects")=nonprofitProjects
|
||||
.row
|
||||
.col-xs-6.text-right
|
||||
h2 Total Code Campers:
|
||||
.col-xs-6.text-left
|
||||
h2
|
||||
= users
|
||||
.row
|
||||
.col-xs-6.text-right
|
||||
h2 Code Campers with at least...
|
||||
.col-xs-6
|
||||
.row
|
||||
.col-xs-6.text-right
|
||||
h2 2 Points:
|
||||
.col-xs-6.text-left
|
||||
h2
|
||||
= c2
|
||||
.row
|
||||
.col-xs-6.text-right
|
||||
h2 4 Points:
|
||||
.col-xs-6.text-left
|
||||
h2
|
||||
= c4
|
||||
.row
|
||||
.col-xs-6.text-right
|
||||
h2 9 Points:
|
||||
.col-xs-6.text-left
|
||||
h2
|
||||
= c9
|
||||
.row
|
||||
.col-xs-6.text-right
|
||||
h2 19 Points:
|
||||
.col-xs-6.text-left
|
||||
h2
|
||||
= c19
|
||||
.row
|
||||
.col-xs-6.text-right
|
||||
h2 29 Points:
|
||||
.col-xs-6.text-left
|
||||
h2
|
||||
= c29
|
||||
.row
|
||||
.col-xs-6.text-right
|
||||
h2 39 Points:
|
||||
.col-xs-6.text-left
|
||||
h2
|
||||
= c39
|
||||
.row
|
||||
.col-xs-6.text-right
|
||||
h2 All 54 Points:
|
||||
.col-xs-6.text-left
|
||||
h2
|
||||
= all
|
|
@ -1,4 +1,5 @@
|
|||
extends ../layout
|
||||
block content
|
||||
include ../partials/about-us
|
||||
include ../partials/stats
|
||||
include ../partials/about
|
||||
include ../partials/faq
|
|
@ -1,68 +1,3 @@
|
|||
extends ../layout
|
||||
block content
|
||||
.jumbotron.text-center
|
||||
h1.hug-top Free Code Camp Stats
|
||||
.row
|
||||
.col-xs-6.text-right
|
||||
h2 Days since we Launched:
|
||||
.col-xs-6.text-left
|
||||
h2
|
||||
= daysRunning
|
||||
.row
|
||||
.col-xs-6.text-right
|
||||
h2 Nonprofit Projects:
|
||||
.col-xs-6.text-left
|
||||
h2
|
||||
a(href="https://trello.com/b/BA3xVpz9/nonprofit-projects") 14
|
||||
.row
|
||||
.col-xs-6.text-right
|
||||
h2 Total Code Campers:
|
||||
.col-xs-6.text-left
|
||||
h2
|
||||
= users
|
||||
.row
|
||||
.col-xs-6.text-right
|
||||
h2 Code Campers with at least...
|
||||
.col-xs-6
|
||||
.row
|
||||
.col-xs-6.text-right
|
||||
h2 2 Points:
|
||||
.col-xs-6.text-left
|
||||
h2
|
||||
= c2
|
||||
.row
|
||||
.col-xs-6.text-right
|
||||
h2 4 Points:
|
||||
.col-xs-6.text-left
|
||||
h2
|
||||
= c4
|
||||
.row
|
||||
.col-xs-6.text-right
|
||||
h2 9 Points:
|
||||
.col-xs-6.text-left
|
||||
h2
|
||||
= c9
|
||||
.row
|
||||
.col-xs-6.text-right
|
||||
h2 19 Points:
|
||||
.col-xs-6.text-left
|
||||
h2
|
||||
= c19
|
||||
.row
|
||||
.col-xs-6.text-right
|
||||
h2 29 Points:
|
||||
.col-xs-6.text-left
|
||||
h2
|
||||
= c29
|
||||
.row
|
||||
.col-xs-6.text-right
|
||||
h2 39 Points:
|
||||
.col-xs-6.text-left
|
||||
h2
|
||||
= c39
|
||||
.row
|
||||
.col-xs-6.text-right
|
||||
h2 All 54 Points:
|
||||
.col-xs-6.text-left
|
||||
h2
|
||||
= all
|
||||
include ../partials/stats
|
Loading…
Reference in New Issue