From ff5f12cda8360e9c56fb8c8bd348c55425919b22 Mon Sep 17 00:00:00 2001 From: Michael Q Larson Date: Sat, 1 Nov 2014 18:07:59 -0700 Subject: [PATCH] update views and remove additional cruft --- app.js | 25 ++++++++----------------- controllers/challenges.js | 34 +++++++++++++++++----------------- public/css/styles.less | 12 ++++++++++++ public/js/main.js | 11 +++++++++++ views/partials/challenges.jade | 23 ++++++++++++++++++++++- views/partials/footer.jade | 10 ---------- 6 files changed, 70 insertions(+), 45 deletions(-) diff --git a/app.js b/app.js index 38385282fd..f4e568440c 100644 --- a/app.js +++ b/app.js @@ -26,8 +26,6 @@ var connectAssets = require('connect-assets'); */ var homeController = require('./controllers/home'); -var curriculumController = require('./controllers/curriculum'); -var coursesController = require('./controllers/courses') var challengesController = require('./controllers/challenges') var userController = require('./controllers/user'); var apiController = require('./controllers/api'); @@ -121,21 +119,14 @@ app.use(express.static(path.join(__dirname, 'public'), { maxAge: week })); */ app.get('/', homeController.index); -app.get('/curriculum', curriculumController.index); -app.get('/course/:id', coursesController.view); -app.get('/courses', coursesController.index); -app.get('/courses/codecademy-html-and-css-track', coursesController.codecademyHtmlAndCssTrack) -app.get('/courses/code-school-discover-devtools-course', coursesController.codeSchoolDiscoverDevtoolsCourse) -app.get('/courses/code-school-try-jquery-course', coursesController.codeSchoolTryJqueryCourse) -app.get('/courses/codecademy-javascript-track', coursesController.codecademyJavascriptTrack) -app.get('/courses/harvard-introduction-to-computer-science-cs50-course', coursesController.harvardIntroductionToComputerScienceCs50Course) -app.get('/courses/linux-command-line-tutorial', coursesController.linuxCommandLineTutorial) -app.get('/courses/code-school-try-git-course', coursesController.codeSchoolTryGitCourse) -app.get('/courses/code-school-real-time-with-node-js-course', coursesController.codeSchoolRealTimeWithNodeJsCourse) -app.get('/courses/code-school-shaping-up-with-angular-js-course', coursesController.codeSchoolShapingUpWithAngularJsCourse) -app.get('/courses/m101js-mongodb-for-node-js-developers-course', coursesController.m101jsMongoDBForNodeJsDevelopersCourse) -//app.get('/challenges/:id', challengesController.view); -//app.get('/challenges', challengesController.index); +app.get('/challenges/codecademy-html-and-css-track', challengesController.codecademyHtmlAndCssTrack) +app.get('/challenges/code-school-discover-devtools-course', challengesController.codeSchoolDiscoverDevtoolsCourse) +app.get('/challenges/code-school-try-jquery-course', challengesController.codeSchoolTryJqueryCourse) +app.get('/challenges/codecademy-javascript-track', challengesController.codecademyJavascriptTrack) +app.get('/challenges/harvard-introduction-to-computer-science-cs50-course', challengesController.harvardIntroductionToComputerScienceCs50Course) +app.get('/challenges/code-school-try-git-course', challengesController.codeSchoolTryGitCourse) +app.get('/challenges/code-school-real-time-with-node-js-course', challengesController.codeSchoolRealTimeWithNodeJsCourse) +app.get('/challenges/code-school-shaping-up-with-angular-js-course', challengesController.codeSchoolShapingUpWithAngularJsCourse) app.get('/challenges/create-and-deploy-a-website', challengesController.createAndDeployAWebsite) app.get('/challenges/add-dynamic-content-to-your-website', challengesController.addDynamicContentToYourWebsite) app.get('/challenges/experiment-with-html-and-css-in-codepen', challengesController.experimentWithHtmlAndCssInCodepen) diff --git a/controllers/challenges.js b/controllers/challenges.js index 6947da372c..26ede4ff68 100644 --- a/controllers/challenges.js +++ b/controllers/challenges.js @@ -26,8 +26,8 @@ exports.enterTheFreeCodeCampChatRoom = function(req, res) { name: 'Enter the Fre Code Camp Chat Room', video: "109134466", time: "5 minutes", - directions: ["Link up with the Free Code Camp community in our HipChat chat room.", "Just follow this link"], - links: ["https://www.hipchat.com/invite/178107/cc2f6ea4dfac9e48b9a88b305adae48a"], + directions: ["Link up with the Free Code Camp community in our HipChat chat room."], + links: ["https://www.hipchat.com/invite/178107/cc2f6ea4dfac9e48b9a88b305adae48a"] }); }; @@ -100,7 +100,7 @@ exports.experimentWithHtmlAndCssInCodepen = function(req, res) { "You'll learn bootstrap and see how you can build websites right in your browser with CodePen.", "Load the HealthCare.gov page in CodePen.", "Find some cat pictures online, copy their image URLs, and change the HealthCare.gov page to use these cat pictures instead of its normal images.", "HealthCare.gov uses a multi-column bootstrap layout. See if you can change the layout to be a single-column layout at all widths, not just mobile width. Hint: the \"row\" and \"col-\" classes control this. Check the Bootstrap documentation linked to above if you get stuck." ], - links: ["http://getbootstrap.com/", "http://www.usatoday.com/", "http://codepen.io/"], + links: ["http://getbootstrap.com/", "http://www.usatoday.com/", "http://codepen.io/"] }); }; @@ -122,7 +122,7 @@ exports.completeJqueryExercises = function(req, res) { links: ["http://jqexercise.droppages.com/"], time: "3 hours", directions: [ - "jQuery gives you an easy way to modify your HTML and CSS without reloading your page.", + "jQuery gives you an easy way to modify your HTML and CSS without reloading your page." ] }); }; @@ -172,8 +172,8 @@ exports.codecademyJavascriptTrack = function(req, res) { }; exports.getHelpTheHackerWayWithRsap = function(req, res) { - res.render('challenges/get-help-the-hacker-way-with-rsap', { - name: "Get Help the Hacker Way with RSAP', + res.render("challenges/get-help-the-hacker-way-with-rsap", { + name: "Get Help the Hacker Way with RSAP", links: ["http://webchat.freenode.net/", "http://stackoverflow.com/"], time: "30 minutes", directions: [ @@ -183,7 +183,7 @@ exports.getHelpTheHackerWayWithRsap = function(req, res) { exports.completeTheEasyAlgorithmScriptingChallengesOnCoderbyte = function(req, res) { res.render('challenges/complete-the-easy-algorthim-scripting-challenges-on-coderbyte', { - name: "Complete the Easy Algorithm Scripting Challenges on Coderbyte', + name: "Complete the Easy Algorithm Scripting Challenges on Coderbyte", links: [""], time: "15 hours", directions: [ @@ -206,7 +206,7 @@ exports.harvardIntroductionToComputerScienceCs50Course = function(req, res) { exports.completeTheMediumAlgorithmScriptingChallengesOnCoderbyte = function(req, res) { res.render('challenges/complete-the-medium-algorthim-scripting-challenges-on-coderbyte', { - name: "Complete the Medium Algorithm Scripting Challenges on Coderbyte', + name: "Complete the Medium Algorithm Scripting Challenges on Coderbyte", links: [""], time: "15 hours", directions: [ @@ -216,7 +216,7 @@ exports.completeTheMediumAlgorithmScriptingChallengesOnCoderbyte = function(req, exports.stanfordsRelationalDatabasesMiniCourse = function(req, res) { res.render('challenges/stanfords-relational-databases-mini-course', { - name: "Stanford's Relational Databases Mini-course', + name: "Stanford's Relational Databases Mini-course", links: [""], time: "10 hours", directions: [ @@ -226,7 +226,7 @@ exports.stanfordsRelationalDatabasesMiniCourse = function(req, res) { exports.stanfordsJsonMiniCourse = function(req, res) { res.render('challenges/stanfords-json-mini-course', { - name: "Stanford's JSON Mini-course', + name: "Stanford's JSON Mini-course", links: [""], time: "2 hours", directions: [ @@ -236,7 +236,7 @@ exports.stanfordsJsonMiniCourse = function(req, res) { exports.buildATextBasedAdventure = function(req, res) { res.render('challenges/build-a-text-based-adventure', { - name: "Build a Text-based Adventure', + name: "Build a Text-based Adventure", links: [""], time: "5 hours", directions: [ @@ -246,7 +246,7 @@ exports.buildATextBasedAdventure = function(req, res) { exports.completeTheHardAlgorithmScriptingChallengesOnCoderbyte = function(req, res) { res.render('challenges/complete-the-hard-algorthim-scripting-challenges-on-coderbyte', { - name: "Complete the Hard Algorithm Scripting Challenges on Coderbyte', + name: "Complete the Hard Algorithm Scripting Challenges on Coderbyte", links: [""], time: "15 hours", directions: [ @@ -256,7 +256,7 @@ exports.completeTheHardAlgorithmScriptingChallengesOnCoderbyte = function(req, r exports.stanfordsSqlMiniCourse = function(req, res) { res.render('challenges/stanfords-sql-mini-course', { - name: "Stanford's SQL Mini-course', + name: "Stanford's SQL Mini-course", links: [""], time: "10 hours", directions: [ @@ -266,7 +266,7 @@ exports.stanfordsSqlMiniCourse = function(req, res) { exports.buildAnInterviewQuestionMachine = function(req, res) { res.render('challenges/build-an-interview-question-machine', { - name: "Build an Interview Question Machine', + name: "Build an Interview Question Machine", links: [""], time: "5 hours", directions: [ @@ -384,7 +384,7 @@ exports.codeSchoolShapingUpWithAngularJsCourse = function(req, res) { }; exports.reverseEngineerSnapchat = function(req, res) { - res.render('challenges/reverseEngineerSnapchat', { + res.render('challenges/reverse-engineer-snapchat', { name: "Reverse Engineer Snapchat", links: [""], time: "50 hours", @@ -394,7 +394,7 @@ exports.reverseEngineerSnapchat = function(req, res) { }; exports.reverseEngineerReddit = function(req, res) { - res.render('challenges/reverseEngineerReddit', { + res.render('challenges/reverse-engineer-reddit', { name: "Reverse Engineer Reddit", links: [""], time: "50 hours", @@ -404,7 +404,7 @@ exports.reverseEngineerReddit = function(req, res) { }; exports.reverseEngineerPintrest = function(req, res) { - res.render('challenges/reverseEngineerPintrest', { + res.render('challenges/reverse-engineer-pintrest', { name: "Reverse Engineer Pintrest", links: [""], time: "50 hours", diff --git a/public/css/styles.less b/public/css/styles.less index 0bb1a98ed6..c62f13afd2 100644 --- a/public/css/styles.less +++ b/public/css/styles.less @@ -131,6 +131,10 @@ ul { font-size: 26px; } +.ten-pixel-break { + height: 10px; +} + .nav-height { height: 50px; } @@ -197,4 +201,12 @@ ul { pointer-events: none; cursor: default; color: graytext !important; +} + +.hidden-element { + display: none; +} + +.button-container { + height: 120px; } \ No newline at end of file diff --git a/public/js/main.js b/public/js/main.js index 077f8bcd2c..fb94cd549d 100644 --- a/public/js/main.js +++ b/public/js/main.js @@ -1,2 +1,13 @@ $(document).ready(function() { + $('.start-challenge').on("click", function() { + $(this).addClass('animated zoomOut'); + $('.completed-challenge').removeClass('hidden-element').addClass('animated zoomIn delay-1'); + $('.skip-challenge').removeClass('hidden-element').addClass('animated zoomIn delay-1'); + }); + $('.completed-challenge').on("click", function() { + $('#complete-dialog').modal('show'); + }); + $('.skip-challenge').on("click", function() { + $('#skip-dialog').modal('show'); + }); }); \ No newline at end of file diff --git a/views/partials/challenges.jade b/views/partials/challenges.jade index 16b0dc3b65..db947c18f4 100644 --- a/views/partials/challenges.jade +++ b/views/partials/challenges.jade @@ -20,9 +20,23 @@ a.disabled(href="#") Customize Bootstrap with Bootswatch li a.disabled(href="#") Inject Life with CSS Transformations + li + a(href="/challenges/codecademy-html-and-css-track") Codecademy's HTML & CSS track + li + a(href="/challenges/code-school-discover-devtools-course") Code School's Discover DevTools + li + a(href="/challenges/code-school-try-jquery-course") Code School's Try jQuery li JavaScript and Computer Science: ol + li + a(href="/challenges/codecademy-javascript-track") Codecademy's JavaScript track + li + a(href="/challenges/harvard-introduction-to-computer-science-cs50-course") Harvard's CS50: Introduction to Computer Science + li + a(href="/challenges/linux-command-line-tutorial") Linux Command Line tutorial + li + a(href="/challenges/code-school-try-git-course") Code School's Try Git li a.disabled(href="#") Get Help The Hacker Way with RSAP li @@ -31,6 +45,7 @@ a.disabled(href="#") Build a Text-based Adventure li a.disabled(href="#") Build an Interview Question Machine + li Full Stack JavaScript Development: ol li @@ -52,4 +67,10 @@ li a.disabled(href="#") Help a Nonprofit: Solo Project li - a.disabled(href="#") Crack the Coding Interview \ No newline at end of file + a.disabled(href="#") Crack the Coding Interview + li + a(href="/challenges/code-school-real-time-with-node-js-course") Code School's Real-time web with Node.JS + li + a(href="/challenges/code-school-shaping-up-with-angular-js-course") Code School's Shaping up with Angular.JS + li + a(href="/challenges/m101js-mongodb-for-node-js-developers-course") MongoDB University's MongoDB for Node.js Developers \ No newline at end of file diff --git a/views/partials/footer.jade b/views/partials/footer.jade index e3a2e893b5..e69de29bb2 100644 --- a/views/partials/footer.jade +++ b/views/partials/footer.jade @@ -1,10 +0,0 @@ -.container - .row - .col-xs-12.col-sm-12.col-md-8 - a.btn.btn-success.btn-large.btn-block(href='https://www.hipchat.com/invite/178107/cc2f6ea4dfac9e48b9a88b305adae48a') Meet a new friend to pair program with in the Free Code Camp Chatroom - .visible-xs - br - br - br - .col-xs-12.col-sm-12.col-md-4 - a.btn.btn-primary.btn-large.btn-block(href='http://twitter.com/intent/user?screen_name=FreeCodeCamp') Follow the discussion on Twitter \ No newline at end of file