From 4b6cb490b7b14272ce7d4440b844340c7d914774 Mon Sep 17 00:00:00 2001 From: Quincy Larson Date: Wed, 2 Sep 2015 17:37:23 -0700 Subject: [PATCH 01/10] update meta tags --- server/views/partials/meta.jade | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/server/views/partials/meta.jade b/server/views/partials/meta.jade index 0909425c80..0f7e10a45b 100644 --- a/server/views/partials/meta.jade +++ b/server/views/partials/meta.jade @@ -3,27 +3,27 @@ meta(charset='utf-8') meta(http-equiv='X-UA-Compatible', content='IE=edge') meta(name='viewport', content='width=device-width, initial-scale=1.0') meta(name='csrf-token', content=_csrf) -meta(name='keywords', content='learn to code, learn how to code, code, coding, software engineer, software developer, mean stack, pair programming, node.js, angular.js, express.js, mongoDB, coding bootcamp') -meta(property="og:title", content="Learn to code") +meta(name='keywords', content='learn to code, learn to program, learn programming, learn javascript, learn coding, code, coding, programming, software engineer, software developer, mean stack, web development, development, engineering, learn node.js, learn angular.js, learn express.js, learn mongoDB, coding bootcamp, javascript, open source') +meta(property="og:title", content="Learn to code and help nonprofits") meta(property="og:site_name", content="Free Code Camp") meta(name='twitter:widgets:csp', content='on') meta(name='p:domain_verify', content='d0bc047a482c03c24f1168004c2a216a') meta(property="og:url", content="http://www.freecodecamp.com") -meta(property="og:description", content="Learn to code by helping nonprofits. Build your full stack web development portfolio today.") +meta(property="og:description", content="Learn to code and help nonprofits. Build your full stack web development portfolio today.") meta(property="og:image", content="https://s3.amazonaws.com/freecodecamp/curriculum-diagram-full.jpg") meta(property="og:type", content="article") meta(property="article:publisher", content="https://www.facebook.com/freecodecamp") meta(property="article:section", content="Responsive") link(rel="publisher", href="https://plus.google.com/+Freecodecamp") link(rel="author", href="https://plus.google.com/+Freecodecamp") -meta(name="description", content="Learn to code by helping nonprofits. Build your full stack web development portfolio today.") +meta(name="description", content="Learn to code and help nonprofits. Build your full stack web development portfolio today.") meta(name="twitter:creator", content="@freecodecamp") meta(name="twitter:url", content="http://www.freecodecamp.com") meta(name="twitter:site", content="@freecodecamp") meta(name="twitter:card", content="summary_large_image") meta(name="twitter:image:src", content="https://s3.amazonaws.com/freecodecamp/curriculum-diagram-full.jpg") -meta(name="twitter:title", content="Learn to code by helping nonprofits") -meta(name="twitter:description", content="We're a community where you learn to code by helping nonprofits. Build your full stack JavaScript Portfolio today.") +meta(name="twitter:title", content="Learn to code and help nonprofits") +meta(name="twitter:description", content="We're an open source community of busy people who learn to code and help nonprofits. Build your full stack web development portfolio today.") meta(content="a40ee5d5dba3bb091ad783ebd2b1383f", name="p:domain_verify") meta(name="msapplication-TileColor", content="#FFFFFF") meta(name="msapplication-TileImage", content="/") From 30aafd418511ce68603f5695e1a34ce601ac686d Mon Sep 17 00:00:00 2001 From: Quincy Larson Date: Wed, 2 Sep 2015 17:42:18 -0700 Subject: [PATCH 02/10] update meta and other references to new short tagline --- README.md | 2 +- server/boot/home.js | 2 +- server/views/home.jade | 2 +- server/views/partials/meta.jade | 10 +++++----- server/views/resources/get-started.jade | 2 +- 5 files changed, 9 insertions(+), 9 deletions(-) diff --git a/README.md b/README.md index dba5013540..633a4dc42e 100644 --- a/README.md +++ b/README.md @@ -7,7 +7,7 @@ Welcome to Free Code Camp's open source codebase! ======================= -Free Code Camp is an open-source community of busy people who learn to code, then build projects for nonprofits. +Free Code Camp is an open-source community of busy people who learn to code and build projects for nonprofits. Our campers (students) start by working through our free, self-paced, browser-based curriculum. Next, they build several practice projects. Finally, we pair two campers together with a stakeholder from a nonprofit organization, and help them build the solution the nonprofit has requested. diff --git a/server/boot/home.js b/server/boot/home.js index 177a2eff2b..d6855a9914 100644 --- a/server/boot/home.js +++ b/server/boot/home.js @@ -1,7 +1,7 @@ import { defaultProfileImage } from '../../common/utils/constantStrings.json'; const message = - 'Learn to Code JavaScript and get a Coding Job by Helping Nonprofits'; + 'Learn to Code and Build Projects for Nonprofits'; module.exports = function(app) { var router = app.loopback.Router(); diff --git a/server/views/home.jade b/server/views/home.jade index f08d7528ca..6609c9a8c7 100644 --- a/server/views/home.jade +++ b/server/views/home.jade @@ -3,7 +3,7 @@ block content .jumbotron .text-center h1.hug-top Code with Us - h2 Let's learn to code by building projects for nonprofits + h2 Let's learn to code and build projects for nonprofits .row .col-xs-12.col-sm-12.col-md-3 h3.nowrap Get Connected diff --git a/server/views/partials/meta.jade b/server/views/partials/meta.jade index 0f7e10a45b..f2eac8de86 100644 --- a/server/views/partials/meta.jade +++ b/server/views/partials/meta.jade @@ -4,26 +4,26 @@ meta(http-equiv='X-UA-Compatible', content='IE=edge') meta(name='viewport', content='width=device-width, initial-scale=1.0') meta(name='csrf-token', content=_csrf) meta(name='keywords', content='learn to code, learn to program, learn programming, learn javascript, learn coding, code, coding, programming, software engineer, software developer, mean stack, web development, development, engineering, learn node.js, learn angular.js, learn express.js, learn mongoDB, coding bootcamp, javascript, open source') -meta(property="og:title", content="Learn to code and help nonprofits") +meta(property="og:title", content="Learn to code and build projects for nonprofits") meta(property="og:site_name", content="Free Code Camp") meta(name='twitter:widgets:csp', content='on') meta(name='p:domain_verify', content='d0bc047a482c03c24f1168004c2a216a') meta(property="og:url", content="http://www.freecodecamp.com") -meta(property="og:description", content="Learn to code and help nonprofits. Build your full stack web development portfolio today.") +meta(property="og:description", content="Learn to code and build projects for nonprofits. Build your full stack web development portfolio today.") meta(property="og:image", content="https://s3.amazonaws.com/freecodecamp/curriculum-diagram-full.jpg") meta(property="og:type", content="article") meta(property="article:publisher", content="https://www.facebook.com/freecodecamp") meta(property="article:section", content="Responsive") link(rel="publisher", href="https://plus.google.com/+Freecodecamp") link(rel="author", href="https://plus.google.com/+Freecodecamp") -meta(name="description", content="Learn to code and help nonprofits. Build your full stack web development portfolio today.") +meta(name="description", content="Learn to code and build projects for nonprofits. Build your full stack web development portfolio today.") meta(name="twitter:creator", content="@freecodecamp") meta(name="twitter:url", content="http://www.freecodecamp.com") meta(name="twitter:site", content="@freecodecamp") meta(name="twitter:card", content="summary_large_image") meta(name="twitter:image:src", content="https://s3.amazonaws.com/freecodecamp/curriculum-diagram-full.jpg") -meta(name="twitter:title", content="Learn to code and help nonprofits") -meta(name="twitter:description", content="We're an open source community of busy people who learn to code and help nonprofits. Build your full stack web development portfolio today.") +meta(name="twitter:title", content="Learn to code and build projects for nonprofits") +meta(name="twitter:description", content="We're an open source community of busy people who learn to code and build projects for nonprofits. Build your full stack web development portfolio today.") meta(content="a40ee5d5dba3bb091ad783ebd2b1383f", name="p:domain_verify") meta(name="msapplication-TileColor", content="#FFFFFF") meta(name="msapplication-TileImage", content="/") diff --git a/server/views/resources/get-started.jade b/server/views/resources/get-started.jade index 3ed054dd82..a28ad66358 100644 --- a/server/views/resources/get-started.jade +++ b/server/views/resources/get-started.jade @@ -8,7 +8,7 @@ block content .thumbnail img.gif-block.img-center.img-responsive.thumbnail(src='http://i.imgur.com/RlEk2IF.jpg' alt="a picture of Free Code Camp's 4 benefits: Get connected, Learn JavaScript, Build your Portfolio, Help nonprofits") .caption - p.large-p Welcome to Free Code Camp. We're an open source community of busy people who learn to code, then practice by building projects for nonprofits. + p.large-p Welcome to Free Code Camp. We're an open source community of busy people who learn to code and build projects for nonprofits. .big-spacer .thumbnail From 57e1fbf7819dddf91bead616561f2367991fe164 Mon Sep 17 00:00:00 2001 From: Quincy Larson Date: Thu, 3 Sep 2015 18:35:42 -0700 Subject: [PATCH 03/10] update copy in views --- README.md | 2 +- server/views/home.jade | 18 ++++++++---------- server/views/resources/get-started.jade | 4 ++-- 3 files changed, 11 insertions(+), 13 deletions(-) diff --git a/README.md b/README.md index 633a4dc42e..e0810ae265 100644 --- a/README.md +++ b/README.md @@ -24,7 +24,7 @@ This code is running live at [FreeCodeCamp.com](http://www.FreeCodeCamp.com). We Wiki ------------ -We would love your help expanding our [wiki](https://github.com/freecodecamp/freecodecamp/wiki) with more information about learning to code and getting a coding job. +We would love your help expanding our [wiki](https://github.com/freecodecamp/freecodecamp/wiki). Our goal is to become a great resource for people learning to code, building local coding communities, and applying for coding jobs. Contributing ------------ diff --git a/server/views/home.jade b/server/views/home.jade index 6609c9a8c7..9b8b65fa06 100644 --- a/server/views/home.jade +++ b/server/views/home.jade @@ -8,7 +8,7 @@ block content .col-xs-12.col-sm-12.col-md-3 h3.nowrap Get Connected img.img-responsive.landing-icon.img-center(src= 'https://s3.amazonaws.com/freecodecamp/landingIcons_connect.svg.gz', alt='Get great references and connections to start your software engineer career') - p.landing-p Join a community of busy, motivated professionals. + p.landing-p Join a community of busy, motivated people. .col-xs-12.col-sm-12.col-md-3 h3.nowrap Learn JavaScript img.img-responsive.landing-icon.img-center(src= 'https://s3.amazonaws.com/freecodecamp/landingIcons_learn.svg.gz', alt='Learn to code and learn full stack JavaScript') @@ -77,18 +77,16 @@ block content br br .big-break - h2 Why you should join our community right now: + h2 Why you should join our open source community right now: h3.col-xs-offset-0.col-sm-offset-1 ul.text-left - li.ion-code   We're thousands of professionals. We all learn to code together. - li.ion-code   We're building projects for dozens of nonprofits. - li.ion-code   Our community is 100% free and open source. - li.ion-code   You'll learn Full Stack JavaScript and become a Software Engineer. - li.ion-code   You'll work through our focused, interactive courses and tutorials. + li.ion-code   You'll get help in real time from our community chat rooms. + li.ion-code   You'll meet up with other coders in your city. li.ion-code   You'll learn to code at your own pace, in your browser or on your phone. - li.ion-code   You'll become qualified for thousands of jobs currently going unfilled. - li.ion-code   You can get help in real time from our community chat rooms. - li.ion-code   We all share one common goal: to boost our careers with code. + li.ion-code   You'll work through our focused, interactive courses and tutorials. + li.ion-code   You'll learn state-of-the-art full stack JavaScript technologies. + li.ion-code   You'll build projects that help nonprofits carry out their missions more effectively. + li.ion-code   You'll assemble a portfolio of real apps used by real people. .big-break .row .col-xs-12.col-sm-8.col-sm-offset-2 diff --git a/server/views/resources/get-started.jade b/server/views/resources/get-started.jade index a28ad66358..a3d19984f8 100644 --- a/server/views/resources/get-started.jade +++ b/server/views/resources/get-started.jade @@ -20,7 +20,7 @@ block content .thumbnail img.gif-block.img-center.img-responsive(src='http://i.imgur.com/D7Y5luw.jpg' alt='A graph of the rate of job growth against growth in computer science degree graduates. There are 1.4 million jobs and only 400 million people to fill them.') .caption - p.large-p If you can finish Free Code Camp, you will be able to get a coding job. There are thousands of coding jobs currently going unfilled, and the demand for coders grows every year. + p.large-p There are thousands of coding jobs currently going unfilled, and the demand for coders grows every year. If you want a coding job, we can help prepare you to get one. .big-spacer .thumbnail @@ -32,7 +32,7 @@ block content .thumbnail img.gif-block.img-center.img-responsive(src='http://i.imgur.com/yXyxbDd.jpg' alt='a screen shot of our nonprofit project directory.') .caption - p.large-p During the last 800 hours, you'll build several real-life projects for nonprofits. By the time you finish, you'll have a job-winning portfolio of real apps that people use every day. + p.large-p During the last 800 hours, you'll build several real-life projects for nonprofits. By the time you finish, you'll have a portfolio of real apps that people use every day. .big-spacer .thumbnail From 4c22d061dfc7d13dad498c570cc4288340a00e2c Mon Sep 17 00:00:00 2001 From: Quincy Larson Date: Fri, 4 Sep 2015 18:36:28 -0700 Subject: [PATCH 04/10] start working on fb-share --- client/less/main.less | 7 ++++++ server/views/challengeMap/show.jade | 33 +++++++++++++++++++++++++++++ 2 files changed, 40 insertions(+) diff --git a/client/less/main.less b/client/less/main.less index 814e99cb54..3e50cb6c8a 100644 --- a/client/less/main.less +++ b/client/less/main.less @@ -1021,6 +1021,13 @@ iframe.iphone { margin-left: 20px; } +.code-editor-announcement { + font-size: 44px; + font-family: "Ubuntu Mono" !important; + font-weight: 300; + line-height: 11.2px; +} + hr { -moz-border-bottom-colors: none; -moz-border-image: none; diff --git a/server/views/challengeMap/show.jade b/server/views/challengeMap/show.jade index 2da375366b..1b216ccbd4 100644 --- a/server/views/challengeMap/show.jade +++ b/server/views/challengeMap/show.jade @@ -1,5 +1,38 @@ extends ../layout block content + .jumbotron + h1.text-center Help us spread the word + .spacer + .col-xs-12.col-sm-10.col-sm-offset-1.col-md-8.col-md-offset-2 + .code-editor-announcement + textarea#codeEditor + script(type='text/javascript', src='/js/lib/codemirror/lib/codemirror.js') + link(rel='stylesheet', href='/js/lib/codemirror/lib/codemirror.css') + link(rel="stylesheet", href="//fonts.googleapis.com/css?family=Ubuntu+Mono") + link(rel='stylesheet', href='/js/lib/codemirror/theme/monokai.css') + script(type='text/javascript', src='/js/lib/codemirror/addon/edit/closebrackets.js') + script(type='text/javascript', src='/js/lib/codemirror/addon/edit/matchbrackets.js') + script(type='text/javascript', src='/js/lib/codemirror/addon/lint/lint.js') + script(type='text/javascript', src='/js/lib/codemirror/addon/lint/javascript-lint.js') + script(type='text/javascript', src='/js/lib/codemirror/mode/javascript/javascript.js') + script. + var editor = CodeMirror.fromTextArea(document.getElementById('codeEditor'), { + lineNumbers: false, + theme: 'monokai', + runnable: true, + matchBrackets: true, + autoCloseBrackets: true, + scrollbarStyle: 'null', + lineWrapping: true, + gutters: ['CodeMirror-lint-markers'], + mode: "javascript" + }); + editor.setValue("addCampers = function() {\n\teventsInYourCity++;\n\thelpfulCampersInChat++;\n\topenSourceContributors++;\n}"); + var resetEditor = function resetEditor() {}; + .spacer + .row + .col-xs-12 + a.btn.btn-cta.signup-btn.btn-block(href="https://www.facebook.com/sharer/sharer.php?u=http://freecodecamp.com" target='_blank') Share us on Facebook (only takes 2 clicks) .panel.panel-info .panel-heading.text-center h1 Challenge Map From 2896cee8f50b42dd8454dbdb58bc9db430927a21 Mon Sep 17 00:00:00 2001 From: Quincy Larson Date: Wed, 9 Sep 2015 00:10:36 -0700 Subject: [PATCH 05/10] simplify fb-share call to action and minimize sizze --- client/less/main.less | 4 ++-- server/views/challengeMap/show.jade | 37 ++++------------------------- 2 files changed, 7 insertions(+), 34 deletions(-) diff --git a/client/less/main.less b/client/less/main.less index 3e50cb6c8a..90fe6fc8db 100644 --- a/client/less/main.less +++ b/client/less/main.less @@ -1022,8 +1022,8 @@ iframe.iphone { } .code-editor-announcement { - font-size: 44px; - font-family: "Ubuntu Mono" !important; + font-size: 12px; + font-family: Ubuntu Mono !important; font-weight: 300; line-height: 11.2px; } diff --git a/server/views/challengeMap/show.jade b/server/views/challengeMap/show.jade index 1b216ccbd4..fc984e1c23 100644 --- a/server/views/challengeMap/show.jade +++ b/server/views/challengeMap/show.jade @@ -1,38 +1,11 @@ extends ../layout block content - .jumbotron - h1.text-center Help us spread the word - .spacer - .col-xs-12.col-sm-10.col-sm-offset-1.col-md-8.col-md-offset-2 - .code-editor-announcement - textarea#codeEditor - script(type='text/javascript', src='/js/lib/codemirror/lib/codemirror.js') - link(rel='stylesheet', href='/js/lib/codemirror/lib/codemirror.css') - link(rel="stylesheet", href="//fonts.googleapis.com/css?family=Ubuntu+Mono") - link(rel='stylesheet', href='/js/lib/codemirror/theme/monokai.css') - script(type='text/javascript', src='/js/lib/codemirror/addon/edit/closebrackets.js') - script(type='text/javascript', src='/js/lib/codemirror/addon/edit/matchbrackets.js') - script(type='text/javascript', src='/js/lib/codemirror/addon/lint/lint.js') - script(type='text/javascript', src='/js/lib/codemirror/addon/lint/javascript-lint.js') - script(type='text/javascript', src='/js/lib/codemirror/mode/javascript/javascript.js') - script. - var editor = CodeMirror.fromTextArea(document.getElementById('codeEditor'), { - lineNumbers: false, - theme: 'monokai', - runnable: true, - matchBrackets: true, - autoCloseBrackets: true, - scrollbarStyle: 'null', - lineWrapping: true, - gutters: ['CodeMirror-lint-markers'], - mode: "javascript" - }); - editor.setValue("addCampers = function() {\n\teventsInYourCity++;\n\thelpfulCampersInChat++;\n\topenSourceContributors++;\n}"); - var resetEditor = function resetEditor() {}; - .spacer + .panel + h3.text-center Your friends won't hear about our open source community unless you tell them. .row - .col-xs-12 - a.btn.btn-cta.signup-btn.btn-block(href="https://www.facebook.com/sharer/sharer.php?u=http://freecodecamp.com" target='_blank') Share us on Facebook (only takes 2 clicks) + .col-xs-12.col-sm-10.col-sm-offset-1.col-md-8.col-md-offset-2 + a.btn.btn-lg.btn-primary.btn-block(href="https://www.facebook.com/sharer/sharer.php?u=http://freecodecamp.com" target='_blank') Share our open source community on Facebook + .spacer .panel.panel-info .panel-heading.text-center h1 Challenge Map From ba8119b4dabbdd0dbd7b1289dce6a19422f18769 Mon Sep 17 00:00:00 2001 From: Quincy Larson Date: Wed, 9 Sep 2015 13:51:13 -0700 Subject: [PATCH 06/10] update fb share button and remove vestigial style from main.less --- client/less/main.less | 1287 ----------------------------------------- 1 file changed, 1287 deletions(-) delete mode 100644 client/less/main.less diff --git a/client/less/main.less b/client/less/main.less deleted file mode 100644 index 90fe6fc8db..0000000000 --- a/client/less/main.less +++ /dev/null @@ -1,1287 +0,0 @@ -@import "lib/bootstrap/bootstrap"; -@import "lib/bootstrap-social/bootstrap-social"; -@import "lib/ionicons/ionicons"; -@import "lib/animate.min.less"; -@import "lib/bootstrap/variables"; - -html,body,div,span,a,li,td,th { - font-family: 'Lato', sans-serif; - font-weight: 300; -} - -li, .wrappable { - white-space: pre; /* CSS 2.0 */ - white-space: pre-wrap; /* CSS 2.1 */ - white-space: pre-line; /* CSS 3.0 */ - white-space: -pre-wrap; /* Opera 4-6 */ - white-space: -o-pre-wrap; /* Opera 7 */ - white-space: -moz-pre-wrap; /* Mozilla */ - white-space: -hp-pre-wrap; /* HP Printers */ - word-wrap: break-word; /* IE 5+ */ -} - -pre.wrappable { - white-space: pre; /* CSS 2.0 */ - white-space: pre-wrap; /* CSS 2.1 */ - white-space: -pre-wrap; /* Opera 4-6 */ - white-space: -o-pre-wrap; /* Opera 7 */ - white-space: -moz-pre-wrap; /* Mozilla */ - white-space: -hp-pre-wrap; /* HP Printers */ - word-wrap: break-word; /* IE 5+ */ -} - -html { - position: relative; - min-height: 100%; - // hack to prevent horizontal overflow problem on showHTML view - overflow-x: hidden; -} - -input[type=checkbox] -{ - /* Double-sized Checkboxes */ - -ms-transform: scale(2); /* IE */ - -moz-transform: scale(2); /* FF */ - -webkit-transform: scale(2); /* Safari and Chrome */ - -o-transform: scale(2); /* Opera */ - padding: 10px; -} - -body.full-screen-body-background { - background-color: #eeeeee; -} - - -body.top-and-bottom-margins { - padding-top: 80px; - margin-bottom: 60px; -} - -body.no-top-and-bottom-margins { - margin: 70px 20px 50px 20px; -} - -h1, h2 { - font-weight: 400; -} - -.btn { - font-weight: 400; -} - -h1, h2, h3, h4, h5, h6, p, li { - padding-top: 5px; - padding-bottom: 5px; -} - -// Alerts -// ------------------------- - -.alert { - margin-top: 20px; -} - -// Thumbnails -// ------------------------- - -.thumbnail { - background-color: #EEEEEE; -// box-shadow: 0 0 5px #ccc, inset 0 0 0 #000; -} - -// Font Icons -// ------------------------- - -.fa, -[class^='ion-'] { - margin-right: 5px; -} - -.img-center { - margin: 0 auto; -} - -.three-by-three { - height: 100px; -} - -.darker-background { - background-color: #dedede; -} - -/**/ - -.btn-cta { - font-size: 40px; -} - -.nonprofit-cta { - font-size: 28px; -} - -.btn, .shadow { - white-space: normal; - -webkit-box-shadow: 2px 4px 1px rgba(0, 0, 0, 0.3); - -moz-box-shadow: 2px 4px 1px rgba(0, 0, 0, 0.3); - box-shadow: 2px 4px 1px rgba(0, 0, 0, 0.3); -} - -.btn, .shadow { - white-space: normal; - -webkit-box-shadow: 2px 4px 1px rgba(0, 0, 0, 0.3); - -moz-box-shadow: 2px 4px 1px rgba(0, 0, 0, 0.3); - box-shadow: 2px 4px 1px rgba(0, 0, 0, 0.3); -} - -.btn-nav { - margin-top: 10px; -} - -ul { - list-style: none; - word-wrap: break-word; -} - -.img-center { - margin:0 auto; -} - -.centered-iframe { - display:block; -} - -@media (min-width: 767px) { - .landing-panel-body { - padding-left: 40px; - padding-right: 40px; - } -} - -.landing-panel-heading { - font-size: 40px; -} - -.panel-heading { - font-size: 25px; -} - -.panel-heading > h1 { - font-size: 25px; - padding: 2px; - margin: 2px; -} - -.navbar-brand { - font-size: 26px; -} - -.five-pixel-break { - height: 5px; -} - -.fifteen-pixel-break { - height: 15px; -} - -.nav-height { - height: 50px; - border: none; -} - -.landing-icon { - height: 200px; - width: 200px; -} - -.completion-icon{ - font-size: 150px; -} - -.responsive-container { position: relative; padding-bottom: 56.25%; padding-top: 30px; height: 0; overflow: hidden; } -.responsive-container iframe { position: absolute; top: 0; left: 0; width: 100%; height: 100%; } - -.positive-10 { - margin-top: 10px; -} - -.positive-15-bottom { - margin-bottom: 15px; -} - -.positive-15 { - margin-top: 15px; -} - -.negative-45 { - margin-top: -45px; - margin-bottom: -45px; -} - -.negative-55 { - margin-top: -55px; - margin-bottom: -55px; -} - -.negative-10 { - margin-top: -10px; -} - -.negative-28 { - margin-top: -28px; -} - -.negative-35 { - margin-top: -35px; -} - -.negative-30 { - margin-top: -30px; -} - -.negative-5 { - margin-top: -5px; -} - -.negative-15 { - margin-top: -15px; -} - -.negative-20 { - margin-top: -20px; -} - -.negative-bottom-margin-30 { - margin-bottom: -30px; -} - -.large-p { - font-size: 24px; -} - -.large-li { - font-size: 24px; -} - -.capitalize { - text-transform: capitalize; -} - -.text-success { - color: @brand-success; -} - -.delay-1 { - -webkit-animation-delay: 1s; - animation-delay: 1s; -} - -.delay-2 { - -webkit-animation-delay: 2s; - animation-delay: 2s; -} - -.delay-4 { - -webkit-animation-delay: 4s; - animation-delay: 4s; -} - -.delay-10 { - -webkit-animation-delay: 10s; - animation-delay: 10s; -} - -.fast-animation { - -webkit-animation-duration: 0.5s; - animation-duration: 0.5s; -} - -.slow-animation { - -webkit-animation-duration: 1.5s; - animation-duration: 1.5s; -} - -.disabled { - pointer-events: none; - cursor: default; - color: graytext !important; -} - -.hidden-element { - display: none; -} - -.button-container { - height: 120px; -} - -.nav-logo { - height: 40px; - margin-top: -10px; - @media (max-width: 381px) { - height: 30px; - margin-top: -5px; - } -} - -.navbar-right { - @media (min-width: 767px) { - padding-right: 50px; - } - @media (max-width: 991px) and (min-width: 768px) { - position: absolute; - right:0; - margin-right: 10px; - white-space: nowrap; - } -} -.navbar { - white-space: nowrap; - border: none; - line-height: 1; - @media (min-width: 767px) { - padding-left: 30px; - padding-right: 30px; - } -} - -.thin-progress-bar { - height: 8px; - margin-top:3px; - margin-bottom:0px; - width: 60%; - margin-right: auto; - margin-left: auto; -} - -.panel-body { - margin-bottom: -6px; -} - -.strikethrough { - text-decoration: line-through; -} - -.btn-social { - width: 250px; - margin: auto; -} - -.btn-link-social { - max-width: 400px; - margin: auto; - margin-bottom: 10px; -} - -.navbar { - background-color: #4a2b0f; -} - -.navbar-nav > li > a { - color: #eee; - &:hover { - color: #4a2b0f; - } -} - -.hug-top { - margin-top: -35px; - margin-bottom: -10px; -} - -.nonprofit-landing { - font-size: 50px; -} - -.big-text { - font-size: 63px; -} - -.scroll-lock { - overflow: hidden; - height: 100%; -} - -.signup-btn.btn { - background-color: #ffac33; - background-image: linear-gradient(#ffcc4d, #ffac33); - -ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorstr=#ffcc4d, endColorstr=#ffac33, GradientType=0)"; - border-color: #f1a02a; - color: #292f33 !important; - text-shadow: 0 1px 0 rgba(255, 255, 255, 0.5); -} -.signup-btn:hover, .signup-btn:focus { - background-color: #e99110; - background-image: linear-gradient(#ffcc4d, #e99110); - -ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorstr=#ffcc4d, endColorstr=#e99110, GradientType=0)"; - border-color: #ec8b11; - color: #292f33 !important; -} -.signup-btn:active { - background-color: #f2a330; - background-image: none; - box-shadow: inset 0 1px 4px rgba(0, 0, 0, 0.3); -} -.profile-image { - border-radius: 5px; - width: 200px; - height: 200px; - padding-left: 5px; - padding-right: 5px; -} - -.team-member { - height: 420px; -} - -*, *:before, *:after {box-sizing: border-box !important;} - -.masonry-row { - -moz-column-width: 18em; - -webkit-column-width: 18em; - -moz-column-gap: 1em; - -webkit-column-gap:1em; -} - -.masonry-block { - display: inline-block; - padding: .25rem; - width: 100%; -} - -.masonry-relative { - position:relative; - display: block; -} - -.next-challenge-button { - max-width: 1500px; - margin:0 auto; -} - -.btn-big { - font-size: 30px; -} - -.big-text-field { - font-size: 30px; - height: 57px; -} - -.btn-responsive { - @media (max-width: 768px) { - font-size: 15px; - height: 26.5px; - padding-top: 1px; - } -} - -.field-responsive { - @media (max-width: 768px) { - font-size: 15px; - height: 26.5px; - } -} - -.table { - margin-left: -16px; -} - -thead { - font-size: 150%; -} - -.nowrap { - white-space: nowrap; -} - -.big-break { - margin-top: 50px; - margin-bottom: 50px; -} - -.profile-picture { - height: 50px; - width: 50px; -} - -.navbar-nav a { - color: #eee; - font-size: 20px; - margin-top: -5px; - margin-bottom: -5px; -} -.navbar-toggle { - color: #eee; -} - -.navbar-right { - background-color: #4a2b0f; - text-align: center; -} - -.signup-btn-nav { - margin-top:-2px !important; - padding-top: 10px !important; - padding-bottom: 10px !important; -} - -.nameline { - margin-top: -5px; - font-size: 40px; -} - -.public-profile-img { - height: 200px; - width: 200px; - border-radius: 5px; -} - -.ng-invalid.ng-dirty { - border-color: #FA787E; -} -.ng-valid.ng-dirty { - border-color: #78FA89; -} - -.desktop-narrow { - @media (min-width: 767px) { - marign: 0 auto; - width: 80%; - } -} - -.min650 { - min-height: 630px; -} - -.portfolio-image { - height: 225px; - width: 300px; - border-radius: 5px; -} - -.flat-top { - margin-top: -5px; -} - -.negative-bottom { - margin-bottom: -20px; -} - -.min-height-1000 { - min-height: 1000px; -} - -.points-on-top { - color: #eee; - font-size: 35px; - z-index: 2; - width: 60%; - margin: 0 auto; - position: relative; - top: 50%; - -webkit-transform: translateY(-50%); - transform: translateY(-50%); -} - -.landing-skill-icon { - color: #215f1e; - font-size: 150px; -} - -.black-text { - color: #333; - font-weight: 400; - font-size: 40px; -} - -.font-awesome-padding { - margin-top: 45px; - margin-bottom: 20px; -} - -.background-svg { - width: 220px; - height: 220px; - background-image: url("https://s3.amazonaws.com/freecodecamp/certificate-icon.svg"); - background-size: 120%; - background-repeat: no-repeat; - background-position: center; -} - -.testimonial-image { - border-radius: 5px; - height: 200px; - width: 200px; - color: #009900 -} - -.default-border-radius { - border-radius: 5px; -} - -.testimonial-copy { - font-size: 20px; - text-align: center; - @media (min-width: 991px) and (max-width: 1199px) { - height: 120px; - } - @media (min-width: 1200px) { - height: 90px; - } -} - -.hamburger-dropdown { - @media (max-width: 991px) { - margin-top: -5px !important; - } - @media (min-width: 768px) and (max-width: 991px) { - width: 105%; - } -} - -.challenge-list-header { - background-color: #215f1e; - color: #eee; - font-size: 36px; - text-align: center; - margin-bottom: -30px; - border-radius: 5px 5px 0px 0px; - padding-left: 50px; -} - -.all-list-header { - background-color: #4A2B0F; - color: #eee; - font-size: 36px; - text-align: center; - margin-bottom: -30px; - border-radius: 5px 5px 0px 0px; - padding-left: 50px; - -} - -.closing-x { - color: #eee; - font-size: 50px; - text-align: right; -} - -.fcc-footer { - width: 100%; - height: 50px; - text-align: center; - background-color: #4a2b0f; - padding: 12px; - bottom: 0; - left: 0; - position: absolute; - a { - font-size: 20px; - color: #eee; - margin-left: 0px; - margin-right: 0px; - padding-left: 10px; - padding-right: 10px; - padding-top: 14px; - padding-bottom: 12px; - &:hover { - color: #4a2b0f; - background-color: #eee; - text-decoration: none; - } - } -} - -.embed-responsive-twitch-chat { - padding-bottom: 117%; -} - -#directions { - text-align: left; - font-size: 15px; -} - -.jquery-exercises-well { - text-align: left; - height: 200px; -} - -#exercise-directory { - font-size: 20px; -} - -#current-exercise { - text-size: 250px; -} - -.bonfire-instructions { - margin-bottom: 5px; -} - -.graph-rect { - fill: #ddd !important -} - - -/** - * Bonfire styling - */ - -form.code span { - font-size: 18px; - font-family: "Ubuntu Mono"; - padding-bottom: 0px; - margin-bottom: 0px; - height: 100%; -} - -.CodeMirror-linenumber { - font-size: 18px; - font-family: "Ubuntu Mono"; -} - -#mainEditorPanel { - height: 100%; - width: 99%; -} - -.scroll-locker { - overflow-x: hidden; - overflow-y: auto; -} - -.big-error-icon { - font-size: 40px; - color: @brand-danger; -} - -.big-success-icon { - font-size: 40px; - color: @brand-primary; -} - -.test-output { - font-size: 15px; - font-family: "Ubuntu Mono"; -} - -#mainEditorPanel .panel-body { - padding-bottom: 0px; -} - -.panel-bonfire { - height: 100% -} - -div.CodeMirror-scroll { - padding-bottom: 30px; -} - -.test-vertical-center { - margin-top: 8px; -} - -.cm-s-monokai.CodeMirror { - border-radius: 5px; -} -.bonfire-flames { - margin-top: -20px; - margin-bottom: -2px; -} - -.bonfire-top { - margin-top: -30px; -} - -iframe.iphone { - border: none; - @media(min-width: 992px) { - width: 280px; - height: 500px; - position: absolute; - top: 70px; - right: 25px; - overflow-y: scroll; - } - @media(max-width: 991px) { - width: 100%; - border-radius: 5px; - overflow-y: visible; - height: 500px; - } -} - -.nonprofit-help-select-text-height { - font-size: 40px; - padding-top: 20px; -} - -// To adjust right margin, negative values bring the image closer to the edge of the screen -.iphone-position { - position: absolute; - top: -50px; - right: -205px; - z-index: -1; -} - -.courseware-height { - min-height: 650px; -} - -// This is used to give icons text for screen readers to read out, without needing the text to actually appear. -.icon-lock{ - font-size: 0px; -} - -.stats-text { - font-size: 26px; - line-height: 150%; -} - -.github-and-twitter-button-text { - padding-top: 10px; -} - -.gitter-imbed { - height: 100%; - margin-bottom: 50px; -} - -.btn-primary-ghost { - background: transparent; - color: @brand-primary; - - /* CSS Transition */ - -webkit-transition: background .2s ease-in-out, border .2s ease-in-out; - -moz-transition: background .2s ease-in-out, border .2s ease-in-out; - -ms-transition: background .2s ease-in-out, border .2s ease-in-out; - -o-transition: background .2s ease-in-out, border .2s ease-in-out; - transition: background .2s ease-in-out, border .2s ease-in-out; -} - -@media (max-width: 991px) { - .navbar-header { - float: none; - } - - .navbar-toggle { - display: block; - } - - .navbar-collapse.collapse { - display: none !important; - } - - .navbar-nav { - float: none !important; - margin: 7.5px -15px; - } - - .navbar-nav > li { - float: none; - } - - .navbar-nav > li > a { - padding-top: 10px; - padding-bottom: 10px; - } - - .navbar-text { - float: none; - margin: 15px 0; - } - - /* since 3.1.0 */ - .navbar-collapse.collapse.in { - display: block !important; - } - - .collapsing { - overflow: hidden !important; - } -} - -.hamburger { - width: 80px; - padding-left: 0px; - padding-right: 8px; - margin-left: 0px; - margin-right: 2px; - text-align:left; - font-size: 10px; -} - -.hamburger-text { - line-height: 0.75em; - margin-top: 10px; - font-size: 18px; -} - -.tight-h3 { - margin-top: -4px; - margin-bottom: -4px; -} - -.story-list { - padding-bottom: 30px; - margin-bottom: 30px; -} - -.big-ion-up-arrow { - font-size: 45px; - margin-top: -10px; - margin-bottom: -15px; - text-align: center; -} - -.big-ion-up-arrow #upvote, #reply-to-main-post { - cursor: pointer; -} - -.story-up-votes { - padding-top: 0px; - margin-left: -5px; - text-align: center; -} - -.img-story-post { - max-width: 110px; - max-height: 110px; -} - -.button-spacer { - padding: 5px 0 2px 0; -} - -.spacer { - padding: 15px 0 15px 0; -} - -.img-news { - width: 50px; - height: 50px; -} - -.url-preview { - max-width: 250px; - max-height: 250px; -} - -//.media ~ .media .media-body-wrapper:nth-child(odd) { -// background-color: #e5e5e5; -//} - -.news-box { - @media (min-width: 768px) { - margin-top: -40px; - } - @media (max-width: 767px) { - padding: 5px; - border-color: @brand-info; - border-width: 1px; - border-style: solid; - border-radius: 5px; - width: 100%; - float: left; - } -} - -.news-box-search { - @media (min-width: 768px) { - margin-top: -50px; - } - @media (max-width: 767px) { - padding: 5px; - border-color: @brand-info; - border-width: 1px; - border-style: solid; - border-radius: 5px; - width: 100%; - float: left; - } -} - -.story-headline { - font-size: 20px; - margin-left: 14px; - margin-top: -5px; -} - -.mobile-story-headline { - font-size: 20px; -} - -.story-byline { - margin-top: 5px; - font-size: 14px; -} - -.media-stories { - margin-left: 20px; -} - -.code-editor-announcement { - font-size: 12px; - font-family: Ubuntu Mono !important; - font-weight: 300; - line-height: 11.2px; -} - -hr { - -moz-border-bottom-colors: none; - -moz-border-image: none; - -moz-border-left-colors: none; - -moz-border-right-colors: none; - -moz-border-top-colors: none; - border-color: @gray; - border-style: solid none; - border-width: 1px 0; - margin: 18px 0; -} - -.big-spacer { - padding: 30px 0 30px 0; -} - -#reply-to-main-post, #upvote { - cursor: pointer; -} - -.btn-no-shadow { - -webkit-box-shadow: 0px 0px 0px rgba(0, 0, 0, 0); - -moz-box-shadow: 0px 0px 0px rgba(0, 0, 0, 0); - box-shadow: 0px 0px 0px rgba(0, 0, 0, 0); -} - -.dotted-underline { - border-bottom: dashed 1px @brand-success; -} - -.d3-centered { - width: 771px; - margin: 0 auto; -} - -.cal-heatmap-container { - background-color: #EEEEEE; -} - -.checkbox-table label { - margin-left: 10px; -} - -.interested-camper-image { - height: 50px; - width: 50px; - padding: 5px; -} - -.svg-challenge-map { - fill: #333; - height: 40px; -} - -.news-number { - font-size: 30px; - text-align: center; -} - -.mobile-story-image { - border-radius: 5px; - width: 100%; - @media (max-width: 768px) { - margin-right: 5px; - } -} - -.alert a { - text-decoration: underline; -} - -.step-text { - line-height: 120%; - padding-bottom: 10px; -} - -.faded { - opacity: 0.5; -} - -.same-line { - display: inline-block; -} - -.padded-ionic-icon { - padding-top: 5px; -} - -.checklist-element { - margin-left: -60px; - margin-right: -20px; -} - -.profile-social-icons { - margin-left: 8px; -} - -.border-radius-5 { - border-radius: 5px; -} - -.grayed-out-test-output { - color: @gray-light; -} - -@media only screen and (min-width: 993px) { - .iframe-scroll { - position: fixed !important; - margin-top: 75px; - z-index: 1; - } -} -@media only screen and (max-width: 992px) { - .iframe-scroll { - height: auto; - overflow: auto; - } -} - -// Calculator styles - -.initially-hidden { - display: none; -} - -.chart rect { - fill: steelblue; -} - -.chart text { - font-size: 14px; - text-anchor: end; -} - -.axis path, -.axis line { - fill: none; - stroke: #121401; - stroke-width: 2px; - shape-rendering: crispEdges; -} - -#submitButton { - font: normal normal normal 14px/1 FontAwesome !important; -} - -#testSuite > div >.row { - margin: 0!important; -} - -//uncomment this to see the dimensions of all elements outlined in red -//* { -// border-color: red; -// border-width: 1px; -// border-style: solid; -//} - -// source: https://github.com/jlong/css-spinners/blob/master/css/spinner/inner-circles.css -// license MIT -/* :not(:required) hides this rule from IE9 and below */ -.inner-circles-loader:not(:required) { - -moz-transform: translate3d(0, 0, 0); - -ms-transform: translate3d(0, 0, 0); - -webkit-transform: translate3d(0, 0, 0); - transform: translate3d(0, 0, 0); - position: relative; - display: inline-block; - width: 125px; - height: 125px; - background: rgba(25, 165, 152, 0.5); - border-radius: 50%; - overflow: hidden; - text-indent: -9999px; - margin-top: 10%; - /* Hides inner circles outside base circle at safari */ - -webkit-mask-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAIAAACQd1PeAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAA5JREFUeNpiYGBgAAgwAAAEAAGbA+oJAAAAAElFTkSuQmCC); -} -.inner-circles-loader:not(:required):before, .inner-circles-loader:not(:required):after { - content: ''; - position: absolute; - top: 0; - display: inline-block; - width: 125px; - height: 125px; - border-radius: 50%; -} -.inner-circles-loader:not(:required):before { - -moz-animation: inner-circles-loader 3s infinite; - -webkit-animation: inner-circles-loader 3s infinite; - animation: inner-circles-loader 3s infinite; - -moz-transform-origin: 0 50%; - -ms-transform-origin: 0 50%; - -webkit-transform-origin: 0 50%; - transform-origin: 0 50%; - left: 0; - background: #c7efcf; -} -.inner-circles-loader:not(:required):after { - -moz-animation: inner-circles-loader 3s 0.2s reverse infinite; - -webkit-animation: inner-circles-loader 3s 0.2s reverse infinite; - animation: inner-circles-loader 3s 0.2s reverse infinite; - -moz-transform-origin: 100% 50%; - -ms-transform-origin: 100% 50%; - -webkit-transform-origin: 100% 50%; - transform-origin: 100% 50%; - right: 0; - background: #eef5db; -} - -@-moz-keyframes inner-circles-loader { - 0% { - -moz-transform: rotate(0deg); - transform: rotate(0deg); - } - 50% { - -moz-transform: rotate(360deg); - transform: rotate(360deg); - } - 100% { - -moz-transform: rotate(0deg); - transform: rotate(0deg); - } -} -@-webkit-keyframes inner-circles-loader { - 0% { - -webkit-transform: rotate(0deg); - transform: rotate(0deg); - } - 50% { - -webkit-transform: rotate(360deg); - transform: rotate(360deg); - } - 100% { - -webkit-transform: rotate(0deg); - transform: rotate(0deg); - } -} -@keyframes inner-circles-loader { - 0% { - -moz-transform: rotate(0deg); - -ms-transform: rotate(0deg); - -webkit-transform: rotate(0deg); - transform: rotate(0deg); - } - 50% { - -moz-transform: rotate(360deg); - -ms-transform: rotate(360deg); - -webkit-transform: rotate(360deg); - transform: rotate(360deg); - } - 100% { - -moz-transform: rotate(0deg); - -ms-transform: rotate(0deg); - -webkit-transform: rotate(0deg); - transform: rotate(0deg); - } -} From ee9a2d681f3b1d2daa180885cfa3ad6d67fe84a4 Mon Sep 17 00:00:00 2001 From: Quincy Larson Date: Wed, 9 Sep 2015 19:51:24 -0700 Subject: [PATCH 07/10] make help, pair, bug buttons accessible to unauthenticated campers --- server/views/coursewares/showBonfire.jade | 8 +++- server/views/coursewares/showHTML.jade | 37 +++++++++---------- server/views/coursewares/showJS.jade | 7 +++- server/views/coursewares/showVideo.jade | 28 +++++++------- .../coursewares/showZiplineOrBasejump.jade | 29 ++++++++------- 5 files changed, 59 insertions(+), 50 deletions(-) diff --git a/server/views/coursewares/showBonfire.jade b/server/views/coursewares/showBonfire.jade index 4f8e996884..8f5552a4c2 100644 --- a/server/views/coursewares/showBonfire.jade +++ b/server/views/coursewares/showBonfire.jade @@ -82,7 +82,7 @@ block content alert(type='danger') span.ion-close-circled | Username not found - label.negative-10.btn.btn-primary.btn-block#submitButton + label.negative-10.btn.btn-primary.btn-block.btn-lg#submitButton i.fa.fa-play |   Run tests (ctrl + enter) .button-spacer @@ -99,8 +99,12 @@ block content label.btn.btn-success#trigger-issue-modal i.fa.fa-bug |   Bug + if (!user) + .button-spacer + a.btn.signup-btn.btn-block.btn-block(href='/login') Sign in so you can save your progress + script. + var userLoggedIn = false; .button-spacer - form.code .form-group.codeMirrorView textarea#codeOutput(style='display: none;') diff --git a/server/views/coursewares/showHTML.jade b/server/views/coursewares/showHTML.jade index 91496dfd20..62e6c0e424 100644 --- a/server/views/coursewares/showHTML.jade +++ b/server/views/coursewares/showHTML.jade @@ -30,24 +30,23 @@ block content for sentence in details p.wrappable.negative-10!= sentence .negative-bottom-margin-30 - label.negative-10.btn.btn-primary.btn-block#submitButton + label.negative-10.btn.btn-primary.btn-lg.btn-block#submitButton i.fa.fa-play |   Run tests (ctrl + enter) - if (user) - .button-spacer - .btn-group.input-group.btn-group-justified - label.btn.btn-success#trigger-reset-modal - i.fa.fa-refresh - |   Reset - label.btn.btn-success#trigger-help-modal - i.fa.fa-medkit - |   Help - label.btn.btn-success#trigger-issue-modal - i.fa.fa-bug - |   Bug - script. - var userLoggedIn = true; - else + .button-spacer + .btn-group.input-group.btn-group-justified + label.btn.btn-success#trigger-reset-modal + i.fa.fa-refresh + |   Reset + label.btn.btn-success#trigger-help-modal + i.fa.fa-medkit + |   Help + label.btn.btn-success#trigger-issue-modal + i.fa.fa-bug + |   Bug + script. + var userLoggedIn = true; + if (!user) .button-spacer a.btn.signup-btn.btn-block.btn-block(href='/login') Sign in so you can save your progress script. @@ -80,7 +79,7 @@ block content iframe.iphone.iframe-scroll#preview .spacer #complete-courseware-dialog.modal(tabindex='-1') - .modal-dialog.animated.zoomIn.fast-animation + .modal-dialog.animated.fadeIn.fast-animation .modal-content .modal-header.challenge-list-header = compliment @@ -92,7 +91,7 @@ block content span.completion-icon.ion-checkmark-circled.text-primary .spacer if(user) - #submit-challenge.animated.fadeIn.btn.btn-lg.btn-primary.btn-block Submit and go to my next challenge + #submit-challenge.btn.btn-lg.btn-primary.btn-block Submit and go to my next challenge else - a.animated.fadeIn.btn.btn-lg.btn-primary.btn-block(href='/challenges/next-challenge?id=' + challengeId) Go to my next challenge + a.btn.btn-lg.btn-primary.btn-block(href='/challenges/next-challenge?id=' + challengeId) Go to my next challenge include ../partials/challenge-modals diff --git a/server/views/coursewares/showJS.jade b/server/views/coursewares/showJS.jade index 27f2652cf9..46adc034f8 100644 --- a/server/views/coursewares/showJS.jade +++ b/server/views/coursewares/showJS.jade @@ -35,7 +35,7 @@ block content .form-group.text-center.negative-10 .col-xs-12 // extra field to distract password tools like lastpass from injecting css into our username field - label.negative-10.btn.btn-primary.btn-block#submitButton + label.negative-10.btn.btn-primary.btn-lg.btn-block#submitButton i.fa.fa-play |   Run tests (ctrl + enter) .button-spacer @@ -49,6 +49,11 @@ block content label.btn.btn-success#trigger-issue-modal i.fa.fa-bug |   Bug + if (!user) + .button-spacer + a.btn.signup-btn.btn-block.btn-block(href='/login') Sign in so you can save your progress + script. + var userLoggedIn = false; .button-spacer form.code .form-group.codeMirrorView diff --git a/server/views/coursewares/showVideo.jade b/server/views/coursewares/showVideo.jade index 8b4393f453..2f9591d037 100644 --- a/server/views/coursewares/showVideo.jade +++ b/server/views/coursewares/showVideo.jade @@ -15,22 +15,22 @@ block content .col-xs-12.col-sm-12.col-md-8 .embed-responsive.embed-responsive-16by9 iframe.embed-responsive-item(src='//player.vimeo.com/video/#{video}') - br + .spacer if (user) a.btn.btn-primary.btn-big.btn-block#completed-courseware-editorless I've completed this challenge (ctrl + enter) + else + a.btn.btn-big.btn-primary.btn-block(href='/challenges/next-challenge?id=' + challengeId) I've completed this challenge (ctrl + enter) script. var userLoggedIn = true; - .button-spacer - .btn-group.input-group.btn-group-justified - .btn.btn-success.btn-big#trigger-help-modal-modal - i.fa.fa-medkit - |   Get help - .btn.btn-success.btn-big#trigger-issue-modal - i.fa.fa-bug - |   Report a bug - .button-spacer - else - a.animated.fadeIn.btn.btn-big.btn-primary.btn-block(href='/challenges/next-challenge?id=' + challengeId) Go to my next challenge (ctrl + enter) + .button-spacer + .btn-group.input-group.btn-group-justified + .btn.btn-success.btn-big#trigger-help-modal + i.fa.fa-medkit + |   Get help + .btn.btn-success.btn-big#trigger-issue-modal + i.fa.fa-bug + |   Report a bug + if (!user) .button-spacer a.btn.btn-big.signup-btn.btn-block(href='/login') Sign in so you can save your progress script. @@ -66,7 +66,7 @@ block content .animated.zoomInDown.delay-half span.completion-icon.ion-checkmark-circled.text-primary if (user) - a.animated.fadeIn.btn.btn-lg.btn-primary.btn-block#next-courseware-button(name='_csrf', value=_csrf) Go to my next challenge + a.animated.fadeIn.btn.btn-lg.btn-primary.btn-block#next-courseware-button(name='_csrf', value=_csrf) Go to my next challenge (ctrl + enter) script. $('#complete-courseware-editorless-dialog').bind('keypress', modalControlEnterHandler); @@ -76,7 +76,7 @@ block content i.fa.fa-twitter   = phrase else - a.animated.fadeIn.btn.btn-lg.btn-primary.btn-block(href='/challenges/next-challenge?id=' + challengeId) Go to my next challenge + a.animated.fadeIn.btn.btn-lg.btn-primary.btn-block(href='/challenges/next-challenge?id=' + challengeId) Go to my next challenge (ctrl + enter) script. $('body').bind('keypress', controlEnterHandler); script. diff --git a/server/views/coursewares/showZiplineOrBasejump.jade b/server/views/coursewares/showZiplineOrBasejump.jade index e1e1e37a8f..9976f6c716 100644 --- a/server/views/coursewares/showZiplineOrBasejump.jade +++ b/server/views/coursewares/showZiplineOrBasejump.jade @@ -18,22 +18,23 @@ block content br if (user) a.btn.btn-primary.btn-big.btn-block#completed-zipline-or-basejump I've completed this challenge (ctrl + enter) - .button-spacer - .btn-group.input-group.btn-group-justified - .btn.btn-success.btn-big#trigger-help-modal - i.fa.fa-medkit - |   Help - .btn.btn-success.btn-big#trigger-pair-modal - i.fa.fa-user-plus - |   Pair - .btn.btn-success.btn-big#trigger-issue-modal - i.fa.fa-bug - |   Bug - .button-spacer script. var userLoggedIn = true; else - a.animated.fadeIn.btn.btn-big.btn-primary.btn-block(href='/challenges/next-challenge?id=' + challengeId) Go to my next challenge (ctrl + enter) + a.btn.btn-big.btn-primary.btn-block(href='/challenges/next-challenge?id=' + challengeId) Go to my next challenge (ctrl + enter) + .button-spacer + .btn-group.input-group.btn-group-justified + .btn.btn-success.btn-big#trigger-help-modal + i.fa.fa-medkit + |   Help + .btn.btn-success.btn-big#trigger-pair-modal + i.fa.fa-user-plus + |   Pair + .btn.btn-success.btn-big#trigger-issue-modal + i.fa.fa-bug + |   Bug + if (!user) + .button-spacer a.btn.btn-big.signup-btn.btn-block(href='/login') Sign in so you can save your progress script. var userLoggedIn = false; @@ -94,7 +95,7 @@ block content script. $('#complete-zipline-or-basejump-dialog').on('keypress', modalControlEnterHandler); else - a.animated.fadeIn.btn.btn-lg.btn-primary.btn-block(href='/challenges/next-challenge?id=' + challengeId) Go to my next challenge + a.btn.btn-lg.btn-primary.btn-block(href='/challenges/next-challenge?id=' + challengeId) Go to my next challenge script. $('body').on('keypress', controlEnterHandler); include ../partials/challenge-modals From f1b29a6fd1b99d0767660281179a4ed797b9c05a Mon Sep 17 00:00:00 2001 From: Berkeley Martinez Date: Wed, 9 Sep 2015 20:13:35 -0700 Subject: [PATCH 08/10] fix modal showing when challenge already completed This fix fixes a regression introduced in an earlier commit. Now, isInitRun is always set false on user involvement. This prevents the completion modal from poping up during challenges that have preview windows. --- client/commonFramework.js | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/client/commonFramework.js b/client/commonFramework.js index 2562410c0c..430473a9d2 100644 --- a/client/commonFramework.js +++ b/client/commonFramework.js @@ -244,6 +244,7 @@ editor.setOption('extraKeys', { } }, 'Ctrl-Enter': function() { + isInitRun = false; bonfireExecute(true); return false; } @@ -415,9 +416,6 @@ var testSuccess = function() { if (goodTests === tests.length) { return showCompletion(); } - - // test unsuccessful, make sure initRun is set to false - isInitRun = false; }; function showCompletion() { @@ -762,6 +760,7 @@ function bonfireExecute(shouldTest) { } $('#submitButton').on('click', function() { + isInitRun = false; bonfireExecute(true); }); From 1c7f798ceadd2f7dd93158c355d66b3e6f403739 Mon Sep 17 00:00:00 2001 From: Quincy Larson Date: Wed, 9 Sep 2015 20:22:14 -0700 Subject: [PATCH 09/10] Revert "update fb share button and remove vestigial style from main.less" This reverts commit ba8119b4dabbdd0dbd7b1289dce6a19422f18769. --- client/less/main.less | 1287 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 1287 insertions(+) create mode 100644 client/less/main.less diff --git a/client/less/main.less b/client/less/main.less new file mode 100644 index 0000000000..90fe6fc8db --- /dev/null +++ b/client/less/main.less @@ -0,0 +1,1287 @@ +@import "lib/bootstrap/bootstrap"; +@import "lib/bootstrap-social/bootstrap-social"; +@import "lib/ionicons/ionicons"; +@import "lib/animate.min.less"; +@import "lib/bootstrap/variables"; + +html,body,div,span,a,li,td,th { + font-family: 'Lato', sans-serif; + font-weight: 300; +} + +li, .wrappable { + white-space: pre; /* CSS 2.0 */ + white-space: pre-wrap; /* CSS 2.1 */ + white-space: pre-line; /* CSS 3.0 */ + white-space: -pre-wrap; /* Opera 4-6 */ + white-space: -o-pre-wrap; /* Opera 7 */ + white-space: -moz-pre-wrap; /* Mozilla */ + white-space: -hp-pre-wrap; /* HP Printers */ + word-wrap: break-word; /* IE 5+ */ +} + +pre.wrappable { + white-space: pre; /* CSS 2.0 */ + white-space: pre-wrap; /* CSS 2.1 */ + white-space: -pre-wrap; /* Opera 4-6 */ + white-space: -o-pre-wrap; /* Opera 7 */ + white-space: -moz-pre-wrap; /* Mozilla */ + white-space: -hp-pre-wrap; /* HP Printers */ + word-wrap: break-word; /* IE 5+ */ +} + +html { + position: relative; + min-height: 100%; + // hack to prevent horizontal overflow problem on showHTML view + overflow-x: hidden; +} + +input[type=checkbox] +{ + /* Double-sized Checkboxes */ + -ms-transform: scale(2); /* IE */ + -moz-transform: scale(2); /* FF */ + -webkit-transform: scale(2); /* Safari and Chrome */ + -o-transform: scale(2); /* Opera */ + padding: 10px; +} + +body.full-screen-body-background { + background-color: #eeeeee; +} + + +body.top-and-bottom-margins { + padding-top: 80px; + margin-bottom: 60px; +} + +body.no-top-and-bottom-margins { + margin: 70px 20px 50px 20px; +} + +h1, h2 { + font-weight: 400; +} + +.btn { + font-weight: 400; +} + +h1, h2, h3, h4, h5, h6, p, li { + padding-top: 5px; + padding-bottom: 5px; +} + +// Alerts +// ------------------------- + +.alert { + margin-top: 20px; +} + +// Thumbnails +// ------------------------- + +.thumbnail { + background-color: #EEEEEE; +// box-shadow: 0 0 5px #ccc, inset 0 0 0 #000; +} + +// Font Icons +// ------------------------- + +.fa, +[class^='ion-'] { + margin-right: 5px; +} + +.img-center { + margin: 0 auto; +} + +.three-by-three { + height: 100px; +} + +.darker-background { + background-color: #dedede; +} + +/**/ + +.btn-cta { + font-size: 40px; +} + +.nonprofit-cta { + font-size: 28px; +} + +.btn, .shadow { + white-space: normal; + -webkit-box-shadow: 2px 4px 1px rgba(0, 0, 0, 0.3); + -moz-box-shadow: 2px 4px 1px rgba(0, 0, 0, 0.3); + box-shadow: 2px 4px 1px rgba(0, 0, 0, 0.3); +} + +.btn, .shadow { + white-space: normal; + -webkit-box-shadow: 2px 4px 1px rgba(0, 0, 0, 0.3); + -moz-box-shadow: 2px 4px 1px rgba(0, 0, 0, 0.3); + box-shadow: 2px 4px 1px rgba(0, 0, 0, 0.3); +} + +.btn-nav { + margin-top: 10px; +} + +ul { + list-style: none; + word-wrap: break-word; +} + +.img-center { + margin:0 auto; +} + +.centered-iframe { + display:block; +} + +@media (min-width: 767px) { + .landing-panel-body { + padding-left: 40px; + padding-right: 40px; + } +} + +.landing-panel-heading { + font-size: 40px; +} + +.panel-heading { + font-size: 25px; +} + +.panel-heading > h1 { + font-size: 25px; + padding: 2px; + margin: 2px; +} + +.navbar-brand { + font-size: 26px; +} + +.five-pixel-break { + height: 5px; +} + +.fifteen-pixel-break { + height: 15px; +} + +.nav-height { + height: 50px; + border: none; +} + +.landing-icon { + height: 200px; + width: 200px; +} + +.completion-icon{ + font-size: 150px; +} + +.responsive-container { position: relative; padding-bottom: 56.25%; padding-top: 30px; height: 0; overflow: hidden; } +.responsive-container iframe { position: absolute; top: 0; left: 0; width: 100%; height: 100%; } + +.positive-10 { + margin-top: 10px; +} + +.positive-15-bottom { + margin-bottom: 15px; +} + +.positive-15 { + margin-top: 15px; +} + +.negative-45 { + margin-top: -45px; + margin-bottom: -45px; +} + +.negative-55 { + margin-top: -55px; + margin-bottom: -55px; +} + +.negative-10 { + margin-top: -10px; +} + +.negative-28 { + margin-top: -28px; +} + +.negative-35 { + margin-top: -35px; +} + +.negative-30 { + margin-top: -30px; +} + +.negative-5 { + margin-top: -5px; +} + +.negative-15 { + margin-top: -15px; +} + +.negative-20 { + margin-top: -20px; +} + +.negative-bottom-margin-30 { + margin-bottom: -30px; +} + +.large-p { + font-size: 24px; +} + +.large-li { + font-size: 24px; +} + +.capitalize { + text-transform: capitalize; +} + +.text-success { + color: @brand-success; +} + +.delay-1 { + -webkit-animation-delay: 1s; + animation-delay: 1s; +} + +.delay-2 { + -webkit-animation-delay: 2s; + animation-delay: 2s; +} + +.delay-4 { + -webkit-animation-delay: 4s; + animation-delay: 4s; +} + +.delay-10 { + -webkit-animation-delay: 10s; + animation-delay: 10s; +} + +.fast-animation { + -webkit-animation-duration: 0.5s; + animation-duration: 0.5s; +} + +.slow-animation { + -webkit-animation-duration: 1.5s; + animation-duration: 1.5s; +} + +.disabled { + pointer-events: none; + cursor: default; + color: graytext !important; +} + +.hidden-element { + display: none; +} + +.button-container { + height: 120px; +} + +.nav-logo { + height: 40px; + margin-top: -10px; + @media (max-width: 381px) { + height: 30px; + margin-top: -5px; + } +} + +.navbar-right { + @media (min-width: 767px) { + padding-right: 50px; + } + @media (max-width: 991px) and (min-width: 768px) { + position: absolute; + right:0; + margin-right: 10px; + white-space: nowrap; + } +} +.navbar { + white-space: nowrap; + border: none; + line-height: 1; + @media (min-width: 767px) { + padding-left: 30px; + padding-right: 30px; + } +} + +.thin-progress-bar { + height: 8px; + margin-top:3px; + margin-bottom:0px; + width: 60%; + margin-right: auto; + margin-left: auto; +} + +.panel-body { + margin-bottom: -6px; +} + +.strikethrough { + text-decoration: line-through; +} + +.btn-social { + width: 250px; + margin: auto; +} + +.btn-link-social { + max-width: 400px; + margin: auto; + margin-bottom: 10px; +} + +.navbar { + background-color: #4a2b0f; +} + +.navbar-nav > li > a { + color: #eee; + &:hover { + color: #4a2b0f; + } +} + +.hug-top { + margin-top: -35px; + margin-bottom: -10px; +} + +.nonprofit-landing { + font-size: 50px; +} + +.big-text { + font-size: 63px; +} + +.scroll-lock { + overflow: hidden; + height: 100%; +} + +.signup-btn.btn { + background-color: #ffac33; + background-image: linear-gradient(#ffcc4d, #ffac33); + -ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorstr=#ffcc4d, endColorstr=#ffac33, GradientType=0)"; + border-color: #f1a02a; + color: #292f33 !important; + text-shadow: 0 1px 0 rgba(255, 255, 255, 0.5); +} +.signup-btn:hover, .signup-btn:focus { + background-color: #e99110; + background-image: linear-gradient(#ffcc4d, #e99110); + -ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorstr=#ffcc4d, endColorstr=#e99110, GradientType=0)"; + border-color: #ec8b11; + color: #292f33 !important; +} +.signup-btn:active { + background-color: #f2a330; + background-image: none; + box-shadow: inset 0 1px 4px rgba(0, 0, 0, 0.3); +} +.profile-image { + border-radius: 5px; + width: 200px; + height: 200px; + padding-left: 5px; + padding-right: 5px; +} + +.team-member { + height: 420px; +} + +*, *:before, *:after {box-sizing: border-box !important;} + +.masonry-row { + -moz-column-width: 18em; + -webkit-column-width: 18em; + -moz-column-gap: 1em; + -webkit-column-gap:1em; +} + +.masonry-block { + display: inline-block; + padding: .25rem; + width: 100%; +} + +.masonry-relative { + position:relative; + display: block; +} + +.next-challenge-button { + max-width: 1500px; + margin:0 auto; +} + +.btn-big { + font-size: 30px; +} + +.big-text-field { + font-size: 30px; + height: 57px; +} + +.btn-responsive { + @media (max-width: 768px) { + font-size: 15px; + height: 26.5px; + padding-top: 1px; + } +} + +.field-responsive { + @media (max-width: 768px) { + font-size: 15px; + height: 26.5px; + } +} + +.table { + margin-left: -16px; +} + +thead { + font-size: 150%; +} + +.nowrap { + white-space: nowrap; +} + +.big-break { + margin-top: 50px; + margin-bottom: 50px; +} + +.profile-picture { + height: 50px; + width: 50px; +} + +.navbar-nav a { + color: #eee; + font-size: 20px; + margin-top: -5px; + margin-bottom: -5px; +} +.navbar-toggle { + color: #eee; +} + +.navbar-right { + background-color: #4a2b0f; + text-align: center; +} + +.signup-btn-nav { + margin-top:-2px !important; + padding-top: 10px !important; + padding-bottom: 10px !important; +} + +.nameline { + margin-top: -5px; + font-size: 40px; +} + +.public-profile-img { + height: 200px; + width: 200px; + border-radius: 5px; +} + +.ng-invalid.ng-dirty { + border-color: #FA787E; +} +.ng-valid.ng-dirty { + border-color: #78FA89; +} + +.desktop-narrow { + @media (min-width: 767px) { + marign: 0 auto; + width: 80%; + } +} + +.min650 { + min-height: 630px; +} + +.portfolio-image { + height: 225px; + width: 300px; + border-radius: 5px; +} + +.flat-top { + margin-top: -5px; +} + +.negative-bottom { + margin-bottom: -20px; +} + +.min-height-1000 { + min-height: 1000px; +} + +.points-on-top { + color: #eee; + font-size: 35px; + z-index: 2; + width: 60%; + margin: 0 auto; + position: relative; + top: 50%; + -webkit-transform: translateY(-50%); + transform: translateY(-50%); +} + +.landing-skill-icon { + color: #215f1e; + font-size: 150px; +} + +.black-text { + color: #333; + font-weight: 400; + font-size: 40px; +} + +.font-awesome-padding { + margin-top: 45px; + margin-bottom: 20px; +} + +.background-svg { + width: 220px; + height: 220px; + background-image: url("https://s3.amazonaws.com/freecodecamp/certificate-icon.svg"); + background-size: 120%; + background-repeat: no-repeat; + background-position: center; +} + +.testimonial-image { + border-radius: 5px; + height: 200px; + width: 200px; + color: #009900 +} + +.default-border-radius { + border-radius: 5px; +} + +.testimonial-copy { + font-size: 20px; + text-align: center; + @media (min-width: 991px) and (max-width: 1199px) { + height: 120px; + } + @media (min-width: 1200px) { + height: 90px; + } +} + +.hamburger-dropdown { + @media (max-width: 991px) { + margin-top: -5px !important; + } + @media (min-width: 768px) and (max-width: 991px) { + width: 105%; + } +} + +.challenge-list-header { + background-color: #215f1e; + color: #eee; + font-size: 36px; + text-align: center; + margin-bottom: -30px; + border-radius: 5px 5px 0px 0px; + padding-left: 50px; +} + +.all-list-header { + background-color: #4A2B0F; + color: #eee; + font-size: 36px; + text-align: center; + margin-bottom: -30px; + border-radius: 5px 5px 0px 0px; + padding-left: 50px; + +} + +.closing-x { + color: #eee; + font-size: 50px; + text-align: right; +} + +.fcc-footer { + width: 100%; + height: 50px; + text-align: center; + background-color: #4a2b0f; + padding: 12px; + bottom: 0; + left: 0; + position: absolute; + a { + font-size: 20px; + color: #eee; + margin-left: 0px; + margin-right: 0px; + padding-left: 10px; + padding-right: 10px; + padding-top: 14px; + padding-bottom: 12px; + &:hover { + color: #4a2b0f; + background-color: #eee; + text-decoration: none; + } + } +} + +.embed-responsive-twitch-chat { + padding-bottom: 117%; +} + +#directions { + text-align: left; + font-size: 15px; +} + +.jquery-exercises-well { + text-align: left; + height: 200px; +} + +#exercise-directory { + font-size: 20px; +} + +#current-exercise { + text-size: 250px; +} + +.bonfire-instructions { + margin-bottom: 5px; +} + +.graph-rect { + fill: #ddd !important +} + + +/** + * Bonfire styling + */ + +form.code span { + font-size: 18px; + font-family: "Ubuntu Mono"; + padding-bottom: 0px; + margin-bottom: 0px; + height: 100%; +} + +.CodeMirror-linenumber { + font-size: 18px; + font-family: "Ubuntu Mono"; +} + +#mainEditorPanel { + height: 100%; + width: 99%; +} + +.scroll-locker { + overflow-x: hidden; + overflow-y: auto; +} + +.big-error-icon { + font-size: 40px; + color: @brand-danger; +} + +.big-success-icon { + font-size: 40px; + color: @brand-primary; +} + +.test-output { + font-size: 15px; + font-family: "Ubuntu Mono"; +} + +#mainEditorPanel .panel-body { + padding-bottom: 0px; +} + +.panel-bonfire { + height: 100% +} + +div.CodeMirror-scroll { + padding-bottom: 30px; +} + +.test-vertical-center { + margin-top: 8px; +} + +.cm-s-monokai.CodeMirror { + border-radius: 5px; +} +.bonfire-flames { + margin-top: -20px; + margin-bottom: -2px; +} + +.bonfire-top { + margin-top: -30px; +} + +iframe.iphone { + border: none; + @media(min-width: 992px) { + width: 280px; + height: 500px; + position: absolute; + top: 70px; + right: 25px; + overflow-y: scroll; + } + @media(max-width: 991px) { + width: 100%; + border-radius: 5px; + overflow-y: visible; + height: 500px; + } +} + +.nonprofit-help-select-text-height { + font-size: 40px; + padding-top: 20px; +} + +// To adjust right margin, negative values bring the image closer to the edge of the screen +.iphone-position { + position: absolute; + top: -50px; + right: -205px; + z-index: -1; +} + +.courseware-height { + min-height: 650px; +} + +// This is used to give icons text for screen readers to read out, without needing the text to actually appear. +.icon-lock{ + font-size: 0px; +} + +.stats-text { + font-size: 26px; + line-height: 150%; +} + +.github-and-twitter-button-text { + padding-top: 10px; +} + +.gitter-imbed { + height: 100%; + margin-bottom: 50px; +} + +.btn-primary-ghost { + background: transparent; + color: @brand-primary; + + /* CSS Transition */ + -webkit-transition: background .2s ease-in-out, border .2s ease-in-out; + -moz-transition: background .2s ease-in-out, border .2s ease-in-out; + -ms-transition: background .2s ease-in-out, border .2s ease-in-out; + -o-transition: background .2s ease-in-out, border .2s ease-in-out; + transition: background .2s ease-in-out, border .2s ease-in-out; +} + +@media (max-width: 991px) { + .navbar-header { + float: none; + } + + .navbar-toggle { + display: block; + } + + .navbar-collapse.collapse { + display: none !important; + } + + .navbar-nav { + float: none !important; + margin: 7.5px -15px; + } + + .navbar-nav > li { + float: none; + } + + .navbar-nav > li > a { + padding-top: 10px; + padding-bottom: 10px; + } + + .navbar-text { + float: none; + margin: 15px 0; + } + + /* since 3.1.0 */ + .navbar-collapse.collapse.in { + display: block !important; + } + + .collapsing { + overflow: hidden !important; + } +} + +.hamburger { + width: 80px; + padding-left: 0px; + padding-right: 8px; + margin-left: 0px; + margin-right: 2px; + text-align:left; + font-size: 10px; +} + +.hamburger-text { + line-height: 0.75em; + margin-top: 10px; + font-size: 18px; +} + +.tight-h3 { + margin-top: -4px; + margin-bottom: -4px; +} + +.story-list { + padding-bottom: 30px; + margin-bottom: 30px; +} + +.big-ion-up-arrow { + font-size: 45px; + margin-top: -10px; + margin-bottom: -15px; + text-align: center; +} + +.big-ion-up-arrow #upvote, #reply-to-main-post { + cursor: pointer; +} + +.story-up-votes { + padding-top: 0px; + margin-left: -5px; + text-align: center; +} + +.img-story-post { + max-width: 110px; + max-height: 110px; +} + +.button-spacer { + padding: 5px 0 2px 0; +} + +.spacer { + padding: 15px 0 15px 0; +} + +.img-news { + width: 50px; + height: 50px; +} + +.url-preview { + max-width: 250px; + max-height: 250px; +} + +//.media ~ .media .media-body-wrapper:nth-child(odd) { +// background-color: #e5e5e5; +//} + +.news-box { + @media (min-width: 768px) { + margin-top: -40px; + } + @media (max-width: 767px) { + padding: 5px; + border-color: @brand-info; + border-width: 1px; + border-style: solid; + border-radius: 5px; + width: 100%; + float: left; + } +} + +.news-box-search { + @media (min-width: 768px) { + margin-top: -50px; + } + @media (max-width: 767px) { + padding: 5px; + border-color: @brand-info; + border-width: 1px; + border-style: solid; + border-radius: 5px; + width: 100%; + float: left; + } +} + +.story-headline { + font-size: 20px; + margin-left: 14px; + margin-top: -5px; +} + +.mobile-story-headline { + font-size: 20px; +} + +.story-byline { + margin-top: 5px; + font-size: 14px; +} + +.media-stories { + margin-left: 20px; +} + +.code-editor-announcement { + font-size: 12px; + font-family: Ubuntu Mono !important; + font-weight: 300; + line-height: 11.2px; +} + +hr { + -moz-border-bottom-colors: none; + -moz-border-image: none; + -moz-border-left-colors: none; + -moz-border-right-colors: none; + -moz-border-top-colors: none; + border-color: @gray; + border-style: solid none; + border-width: 1px 0; + margin: 18px 0; +} + +.big-spacer { + padding: 30px 0 30px 0; +} + +#reply-to-main-post, #upvote { + cursor: pointer; +} + +.btn-no-shadow { + -webkit-box-shadow: 0px 0px 0px rgba(0, 0, 0, 0); + -moz-box-shadow: 0px 0px 0px rgba(0, 0, 0, 0); + box-shadow: 0px 0px 0px rgba(0, 0, 0, 0); +} + +.dotted-underline { + border-bottom: dashed 1px @brand-success; +} + +.d3-centered { + width: 771px; + margin: 0 auto; +} + +.cal-heatmap-container { + background-color: #EEEEEE; +} + +.checkbox-table label { + margin-left: 10px; +} + +.interested-camper-image { + height: 50px; + width: 50px; + padding: 5px; +} + +.svg-challenge-map { + fill: #333; + height: 40px; +} + +.news-number { + font-size: 30px; + text-align: center; +} + +.mobile-story-image { + border-radius: 5px; + width: 100%; + @media (max-width: 768px) { + margin-right: 5px; + } +} + +.alert a { + text-decoration: underline; +} + +.step-text { + line-height: 120%; + padding-bottom: 10px; +} + +.faded { + opacity: 0.5; +} + +.same-line { + display: inline-block; +} + +.padded-ionic-icon { + padding-top: 5px; +} + +.checklist-element { + margin-left: -60px; + margin-right: -20px; +} + +.profile-social-icons { + margin-left: 8px; +} + +.border-radius-5 { + border-radius: 5px; +} + +.grayed-out-test-output { + color: @gray-light; +} + +@media only screen and (min-width: 993px) { + .iframe-scroll { + position: fixed !important; + margin-top: 75px; + z-index: 1; + } +} +@media only screen and (max-width: 992px) { + .iframe-scroll { + height: auto; + overflow: auto; + } +} + +// Calculator styles + +.initially-hidden { + display: none; +} + +.chart rect { + fill: steelblue; +} + +.chart text { + font-size: 14px; + text-anchor: end; +} + +.axis path, +.axis line { + fill: none; + stroke: #121401; + stroke-width: 2px; + shape-rendering: crispEdges; +} + +#submitButton { + font: normal normal normal 14px/1 FontAwesome !important; +} + +#testSuite > div >.row { + margin: 0!important; +} + +//uncomment this to see the dimensions of all elements outlined in red +//* { +// border-color: red; +// border-width: 1px; +// border-style: solid; +//} + +// source: https://github.com/jlong/css-spinners/blob/master/css/spinner/inner-circles.css +// license MIT +/* :not(:required) hides this rule from IE9 and below */ +.inner-circles-loader:not(:required) { + -moz-transform: translate3d(0, 0, 0); + -ms-transform: translate3d(0, 0, 0); + -webkit-transform: translate3d(0, 0, 0); + transform: translate3d(0, 0, 0); + position: relative; + display: inline-block; + width: 125px; + height: 125px; + background: rgba(25, 165, 152, 0.5); + border-radius: 50%; + overflow: hidden; + text-indent: -9999px; + margin-top: 10%; + /* Hides inner circles outside base circle at safari */ + -webkit-mask-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAIAAACQd1PeAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAA5JREFUeNpiYGBgAAgwAAAEAAGbA+oJAAAAAElFTkSuQmCC); +} +.inner-circles-loader:not(:required):before, .inner-circles-loader:not(:required):after { + content: ''; + position: absolute; + top: 0; + display: inline-block; + width: 125px; + height: 125px; + border-radius: 50%; +} +.inner-circles-loader:not(:required):before { + -moz-animation: inner-circles-loader 3s infinite; + -webkit-animation: inner-circles-loader 3s infinite; + animation: inner-circles-loader 3s infinite; + -moz-transform-origin: 0 50%; + -ms-transform-origin: 0 50%; + -webkit-transform-origin: 0 50%; + transform-origin: 0 50%; + left: 0; + background: #c7efcf; +} +.inner-circles-loader:not(:required):after { + -moz-animation: inner-circles-loader 3s 0.2s reverse infinite; + -webkit-animation: inner-circles-loader 3s 0.2s reverse infinite; + animation: inner-circles-loader 3s 0.2s reverse infinite; + -moz-transform-origin: 100% 50%; + -ms-transform-origin: 100% 50%; + -webkit-transform-origin: 100% 50%; + transform-origin: 100% 50%; + right: 0; + background: #eef5db; +} + +@-moz-keyframes inner-circles-loader { + 0% { + -moz-transform: rotate(0deg); + transform: rotate(0deg); + } + 50% { + -moz-transform: rotate(360deg); + transform: rotate(360deg); + } + 100% { + -moz-transform: rotate(0deg); + transform: rotate(0deg); + } +} +@-webkit-keyframes inner-circles-loader { + 0% { + -webkit-transform: rotate(0deg); + transform: rotate(0deg); + } + 50% { + -webkit-transform: rotate(360deg); + transform: rotate(360deg); + } + 100% { + -webkit-transform: rotate(0deg); + transform: rotate(0deg); + } +} +@keyframes inner-circles-loader { + 0% { + -moz-transform: rotate(0deg); + -ms-transform: rotate(0deg); + -webkit-transform: rotate(0deg); + transform: rotate(0deg); + } + 50% { + -moz-transform: rotate(360deg); + -ms-transform: rotate(360deg); + -webkit-transform: rotate(360deg); + transform: rotate(360deg); + } + 100% { + -moz-transform: rotate(0deg); + -ms-transform: rotate(0deg); + -webkit-transform: rotate(0deg); + transform: rotate(0deg); + } +} From ad26885a036129a2ef5f5165f061d4a250ca2af3 Mon Sep 17 00:00:00 2001 From: Quincy Larson Date: Wed, 9 Sep 2015 20:23:18 -0700 Subject: [PATCH 10/10] remove unnecessary css --- client/less/main.less | 7 ------- 1 file changed, 7 deletions(-) diff --git a/client/less/main.less b/client/less/main.less index 90fe6fc8db..814e99cb54 100644 --- a/client/less/main.less +++ b/client/less/main.less @@ -1021,13 +1021,6 @@ iframe.iphone { margin-left: 20px; } -.code-editor-announcement { - font-size: 12px; - font-family: Ubuntu Mono !important; - font-weight: 300; - line-height: 11.2px; -} - hr { -moz-border-bottom-colors: none; -moz-border-image: none;