add jobs page
This commit is contained in:
16
app.js
16
app.js
@@ -160,7 +160,9 @@ var trusted = [
|
||||
'*.ytimg.com',
|
||||
'*.bitly.com',
|
||||
'http://cdn.inspectlet.com/',
|
||||
'http://hn.inspectlet.com/'
|
||||
'http://hn.inspectlet.com/',
|
||||
'*.simplyhired.com',
|
||||
'*.simply-partner.com'
|
||||
];
|
||||
|
||||
app.use(helmet.csp({
|
||||
@@ -325,10 +327,14 @@ app.get(
|
||||
nonprofitController.returnIndividualNonprofit
|
||||
);
|
||||
|
||||
app.post(
|
||||
'/update-progress',
|
||||
passportConf.isAuthenticated,
|
||||
userController.updateProgress
|
||||
app.get(
|
||||
'/jobs',
|
||||
resourcesController.jobs
|
||||
);
|
||||
|
||||
app.get(
|
||||
'/jobs-form',
|
||||
resourcesController.jobsForm
|
||||
);
|
||||
|
||||
app.get('/privacy', function(req, res) {
|
||||
|
@@ -157,6 +157,18 @@ module.exports = {
|
||||
}
|
||||
},
|
||||
|
||||
jobs: function jobs(req, res) {
|
||||
res.render('resources/jobs', {
|
||||
title: 'Job Board for Front End Developer and Full Stack JavaScript Developer Jobs'
|
||||
});
|
||||
},
|
||||
|
||||
jobsForm: function jobsForm(req, res) {
|
||||
res.render('resources/jobs-form', {
|
||||
title: 'Employer Partnership Form for Job Postings, Recruitment and Corporate Sponsorships'
|
||||
});
|
||||
},
|
||||
|
||||
nonprofits: function nonprofits(req, res) {
|
||||
res.render('resources/nonprofits', {
|
||||
title: 'A guide to our Nonprofit Projects'
|
||||
@@ -165,7 +177,7 @@ module.exports = {
|
||||
|
||||
nonprofitsForm: function nonprofitsForm(req, res) {
|
||||
res.render('resources/nonprofits-form', {
|
||||
title: 'A guide to our Nonprofit Projects'
|
||||
title: 'Nonprofit Projects Proposal Form'
|
||||
});
|
||||
},
|
||||
|
||||
@@ -177,7 +189,7 @@ module.exports = {
|
||||
|
||||
agileProjectManagersForm: function agileProjectManagersForm(req, res) {
|
||||
res.render('resources/pmi-acp-agile-project-managers-form', {
|
||||
title: 'Get Agile Project Management Experience for the PMI-ACP'
|
||||
title: 'Agile Project Management Program Application Form'
|
||||
});
|
||||
},
|
||||
|
||||
|
@@ -19,9 +19,10 @@ function hotRank(timeValue, rank) {
|
||||
* Ranking...
|
||||
* f(ts, 1, rank) = log(10)z + (ts)/45000;
|
||||
*/
|
||||
var time48Hours = 172800000;
|
||||
var hotness;
|
||||
var z = Math.log(rank) / Math.log(10);
|
||||
hotness = z + (timeValue / 115200000);
|
||||
hotness = z + (timeValue / time48Hours);
|
||||
return hotness;
|
||||
|
||||
}
|
||||
|
11
public/css/main.css
Normal file
11
public/css/main.css
Normal file
File diff suppressed because one or more lines are too long
@@ -10,8 +10,6 @@
|
||||
],
|
||||
"whatDoesNonprofitDo": "We help the many less-fortunate Jewish families in our community, by providing them with nutritious food and energy to grow, learn, work, and give them hope for a better and brighter future.",
|
||||
"websiteLink": "http://chasdeikaduri.org/",
|
||||
"stakeholderName": "Jonathan Tebeka",
|
||||
"stakeholderEmail": "jonathan@chasdeikaduri.org",
|
||||
"name": "Chasdei Kaduri",
|
||||
"endUser": "Clients, donors, and admin.",
|
||||
"approvedDeliverables": [
|
||||
@@ -25,7 +23,9 @@
|
||||
"logoUrl": "https://trello-attachments.s3.amazonaws.com/54c7e02f2c173c37015b2f36/604x309/00580a0567a4b3afda29d52b09e7e829/rQQ6zwq31Uya8ie9QHC-MlvfXxqftm9UPPe524JUhmwSEaZjQ7oL7U1tVoHLUj-gVUwM-7uzBGFsAXD_A_cx_JyAZP4Td-GMBJ-AebJNRAQP0m0v253eKMkURp63aG4%3Ds0-d-e1-ft.png",
|
||||
"imageUrl": "http://chasdeikaduri.org/images/523455_516325865106850_1885515210_n.jpg",
|
||||
"estimatedHours": 200,
|
||||
"currentStatus": "started"
|
||||
"interestedCampers": [],
|
||||
"confirmedCampers": [],
|
||||
"currentStatus": "completed"
|
||||
},
|
||||
{
|
||||
"id": "bd7158d8c464cbafaeb4bdef",
|
||||
@@ -34,8 +34,6 @@
|
||||
],
|
||||
"whatDoesNonprofitDo": "We connect simple technology with last mile communities to reduce poverty.",
|
||||
"websiteLink": "http://kopernik.info/",
|
||||
"stakeholderName": "Amber Gregory",
|
||||
"stakeholderEmail": "amber.gregory@kopernik.info",
|
||||
"name": "Kopernik",
|
||||
"endUser": "Women in rural Indonesia.",
|
||||
"approvedDeliverables": [
|
||||
@@ -54,8 +52,6 @@
|
||||
],
|
||||
"whatDoesNonprofitDo": "We distribute biodegradable toothbrushes globally to children in need.",
|
||||
"websiteLink": "http://www.operationbrush.org/",
|
||||
"stakeholderName": "Dane Jonas",
|
||||
"stakeholderEmail": "DaneJonas@operationbrush.org",
|
||||
"name": "Operation Brush",
|
||||
"endUser": "Donors",
|
||||
"approvedDeliverables": [
|
||||
@@ -65,7 +61,9 @@
|
||||
"logoUrl": "https://trello-attachments.s3.amazonaws.com/54d9810307b159a4d9027aa2/54d981bfe5eb145560fbb769/x/cf7f318bfe4aee631b0d0eeef272225c/logo.png",
|
||||
"imageUrl": "http://www.operationbrush.org/images/temp/hands1.png",
|
||||
"estimatedHours": 100,
|
||||
"currentStatus": "started"
|
||||
"interestedCampers": [],
|
||||
"confirmedCampers": [],
|
||||
"currentStatus": "completed"
|
||||
},
|
||||
{
|
||||
"id": "bd1325d8c464cbafaeb5bdef",
|
||||
@@ -74,10 +72,8 @@
|
||||
],
|
||||
"whatDoesNonprofitDo": "We are the largest roller derby league in the world with around 250 adults and 150 junior skater members plus 500+ volunteers.",
|
||||
"websiteLink": "http://www.rosecityrollers.com/about/our-charities/",
|
||||
"stakeholderName": "Charity Kuahiwinui",
|
||||
"stakeholderEmail": "insurance@rosecityrollers.com",
|
||||
"name": "Rose City Rollers",
|
||||
"endUser": "Administrators, Coaches, and Volunteers",
|
||||
"endUser": "Roller derby administrators, coaches, and volunteers",
|
||||
"approvedDeliverables": [
|
||||
"community"
|
||||
],
|
||||
@@ -92,10 +88,8 @@
|
||||
"requestedDeliverables": [
|
||||
"website"
|
||||
],
|
||||
"whatDoesNonprofitDo": "Save a Child's Heart provides urgently needed pediatric heart surgery and follow-up care for indigent children from developing countries",
|
||||
"whatDoesNonprofitDo": "We provide urgently needed pediatric heart surgery and follow-up care for indigent children from developing countries",
|
||||
"websiteLink": "http://www.saveachildsheart.com/global/young-leadership-program/",
|
||||
"stakeholderName": "Shier Ziser",
|
||||
"stakeholderEmail": "Shier_z@hotmail.com",
|
||||
"name": "Save a Child's Heart",
|
||||
"endUser": "Donors",
|
||||
"approvedDeliverables": [
|
||||
@@ -112,10 +106,8 @@
|
||||
"requestedDeliverables": [
|
||||
"website"
|
||||
],
|
||||
"whatDoesNonprofitDo": "Savvy Cyber Kids enables youth to be empowered with technology by providing age appropriate resources and education.",
|
||||
"whatDoesNonprofitDo": "We empower youth with technology by providing age appropriate resources and education.",
|
||||
"websiteLink": "http://savvycyberkids.org/",
|
||||
"stakeholderName": "Ben Halpert",
|
||||
"stakeholderEmail": "info@savvycyberkids.org ",
|
||||
"name": "Savvy Cyber Kids",
|
||||
"endUser": "Donors",
|
||||
"approvedDeliverables": [
|
||||
@@ -132,10 +124,8 @@
|
||||
"requestedDeliverables": [
|
||||
"other"
|
||||
],
|
||||
"whatDoesNonprofitDo": "Transcendent Pathways",
|
||||
"whatDoesNonprofitDo": "We bring a new edge to arts and medicine in the Bay Area through powerful live performances of new music to those who feel marginalized by their affliction.",
|
||||
"websiteLink": "http://transcendentpathways.org/",
|
||||
"stakeholderName": "Mark Ackerley",
|
||||
"stakeholderEmail": "mackerley.music@gmail.com",
|
||||
"name": "Transcendent Pathways",
|
||||
"endUser": "Medical Facilities, Musicians",
|
||||
"approvedDeliverables": [
|
||||
@@ -152,19 +142,82 @@
|
||||
"requestedDeliverables": [
|
||||
"other"
|
||||
],
|
||||
"whatDoesNonprofitDo": "Timeraiser is a volunteer matching fair, a silent art auction, and a night out on the town. The big Timeraiser twist is rather than bid money on artwork, participants bid volunteer hours. ",
|
||||
"whatDoesNonprofitDo": "We have provide volunteer matching fairs and silent art auctions at events across Canada. Rather than bid money on artwork, participants bid volunteer hours.",
|
||||
"websiteLink": "http://www.timeraiser.ca/",
|
||||
"stakeholderName": "Stephanie McAllister",
|
||||
"stakeholderEmail": "stephanie@timeraiser.ca",
|
||||
"name": "Timeraiser",
|
||||
"endUser": "Eventgoers",
|
||||
"endUser": "Working professionals who want to donate their time and expertise",
|
||||
"approvedDeliverables": [
|
||||
"other"
|
||||
],
|
||||
"projectDescription": "Campers will build a mobile responsive web form to allow Timeraiser eventgoers to select which nonprofit organizations they're interested in volunteering with. System will have Salesforce integration and reporting capabilities.",
|
||||
"logoUrl": "http://www.timeraiser.ca/uploads/5/6/1/4/5614163/1277176.png?480",
|
||||
"imageUrl": "http://www.timeraiser.ca/uploads/5/6/1/4/5614163/______________4571248_orig.png",
|
||||
"currentStatus": "started",
|
||||
"interestedCampers": [],
|
||||
"confirmedCampers": [],
|
||||
"estimatedHours": 100,
|
||||
"currentStatus": "completed"
|
||||
},
|
||||
{
|
||||
"id": "bd1325d8c464cbafaeb7bdef",
|
||||
"requestedDeliverables": [
|
||||
"website",
|
||||
"inventory",
|
||||
"form"
|
||||
],
|
||||
"whatDoesNonprofitDo": "We focus on raising funds to assist injured homeless animals.",
|
||||
"websiteLink": "http://www.peoplesavinganimals.org/",
|
||||
"name": "People Saving Animals",
|
||||
"endUser": "Animal shelters in Central America and people adopting pets",
|
||||
"approvedDeliverables": [
|
||||
"website",
|
||||
"inventory",
|
||||
"form"
|
||||
],
|
||||
"projectDescription": "Campers will build an adoption database and all related web interfaces and forms to allow animal shelters to easily post animals, photos, and relevant medical information. They'll make it easy for locals to browse these animals and adopt them. Once completed, this project will be translated into Spanish.",
|
||||
"logoUrl": "https://scontent-sjc2-1.xx.fbcdn.net/hphotos-xfa1/v/t1.0-9/59709_501505959886494_1605714757_n.jpg?oh=e12c08c046d824765a02242b7c8c3bb5&oe=560CFA6A",
|
||||
"imageUrl": "https://scontent-sjc2-1.xx.fbcdn.net/hphotos-xta1/t31.0-8/11270516_844556088914811_757350153964826829_o.jpg",
|
||||
"estimatedHours": 300,
|
||||
"currentStatus": "started"
|
||||
},
|
||||
{
|
||||
"id": "bd1325d8c464cbafaeb6bdef",
|
||||
"requestedDeliverables": [
|
||||
"inventory",
|
||||
"form",
|
||||
"other"
|
||||
],
|
||||
"whatDoesNonprofitDo": "We preserve Florida's health by regulating septic contractors and reviewing logs of sewage collection and disposal.",
|
||||
"websiteLink": "http://www.floridahealth.gov/",
|
||||
"name": "Florida Department of Health",
|
||||
"endUser": "Government workers and independent contractors who must comply with regulations.",
|
||||
"approvedDeliverables": [
|
||||
"inventory",
|
||||
"form",
|
||||
"other"
|
||||
],
|
||||
"projectDescription": "Campers will build mobile responsive web forms to allow contractors to seamlessly log the chain of custody for potentially hazardous sewage. They'll also build a government-facing database that allows for easy monitoring and reporting of activity.",
|
||||
"logoUrl": "http://www.floridahealth.gov/_new/_files/images/DOH_logo.png",
|
||||
"imageUrl": "http://www.dep.state.fl.us/central/Home/Watershed/Home.jpg",
|
||||
"estimatedHours": 200,
|
||||
"currentStatus": "started"
|
||||
},
|
||||
{
|
||||
"id": "bd1325d8c464cbafaeb6bdef",
|
||||
"requestedDeliverables": [
|
||||
"website"
|
||||
],
|
||||
"whatDoesNonprofitDo": "We strengthen the value of songwriting and independent music in Columbus, Ohio.",
|
||||
"websiteLink": "http://columbussongwritersassociation.com",
|
||||
"name": "Columbus Songwriters Association",
|
||||
"endUser": "Songwriters and their audiences in the Columbus, Ohio community.",
|
||||
"approvedDeliverables": [
|
||||
"website"
|
||||
],
|
||||
"projectDescription": "Build mobile responsive website that allows users to see browse our partners, their photos and information, and connect with them.",
|
||||
"logoUrl": "https://columbussongwritersassociation.files.wordpress.com/2014/06/csa-logo.jpeg?w=705&h=435&crop=1",
|
||||
"imageUrl": "https://columbussongwritersassociation.files.wordpress.com/2015/03/10502364_918551148225410_5082247612691070613_n.jpg?w=705&h=344&crop=1",
|
||||
"estimatedHours": 100,
|
||||
"currentStatus": "completed"
|
||||
}
|
||||
]
|
||||
|
@@ -10,7 +10,7 @@ block content
|
||||
.spacer
|
||||
.row
|
||||
.col-xs-12.col-sm-3
|
||||
img.img-responsive(src=nonprofit.logoUrl)
|
||||
img.img-responsive.img-center(src=nonprofit.logoUrl)
|
||||
.col-xs-12.col-sm-9
|
||||
h2.negative-15= nonprofit.name
|
||||
h3.negative-15= nonprofit.whatDoesNonprofitDo
|
||||
|
@@ -61,21 +61,14 @@ block content
|
||||
.text-center
|
||||
a.btn.btn-primary.btn-big.btn-block.disabled(href='/nonprofits/interested-in-nonprofit/#{dashedName}') I'm interested in building this project *
|
||||
p * Complete all our Bonfires, Ziplines, and Basejumps to unlock this.
|
||||
#showAllButton.btn.btn-info.btn-big.btn-block Show all Nonprofit Projects
|
||||
a.btn.btn-info.btn-big.btn-block(href='/nonprofits/directory') Show all Nonprofit Projects
|
||||
if (buttonActive)
|
||||
.col-xs-12.col-sm-8.col-sm-offset-2
|
||||
.text-center
|
||||
a.btn.btn-primary.btn-big.btn-block(href='/nonprofits/interested-in-nonprofit/#{dashedName}') I'm interested in building this project
|
||||
#showAllButton.btn.btn-info.btn-big.btn-block Show all Nonprofit Projects
|
||||
a.btn.btn-info.btn-big.btn-block(href='/nonprofits/directory') Show all Nonprofit Projects
|
||||
.row
|
||||
.col-xs-12.text-center
|
||||
if !user
|
||||
a.btn.btn-cta.signup-btn.btn-primary(href="/login") Start learning to code (it's free)
|
||||
.spacer
|
||||
#show-all-dialog.modal(tabindex='-1')
|
||||
.modal-dialog.animated.fadeInUp.fast-animation
|
||||
.modal-content
|
||||
.modal-header.all-list-header Nonprofit Projects
|
||||
a.close.closing-x(href='#', data-dismiss='modal', aria-hidden='true') ×
|
||||
.modal-body
|
||||
include ../partials/nonprofits
|
||||
.spacer
|
||||
|
@@ -15,7 +15,7 @@ nav.navbar.navbar-default.navbar-fixed-top.nav-height
|
||||
|
||||
if user
|
||||
li
|
||||
a(href='/challenges') Next Challenge
|
||||
a(href='/challenges') Learn
|
||||
li
|
||||
a(href='/map') Map
|
||||
if (user && user.sentSlackInvite)
|
||||
@@ -27,7 +27,9 @@ nav.navbar.navbar-default.navbar-fixed-top.nav-height
|
||||
li
|
||||
a(href='/news') News
|
||||
li
|
||||
a(href='/field-guide') Field Guide
|
||||
a(href='/field-guide') Guide
|
||||
li.hidden-xs.hidden-sm
|
||||
a(href='/jobs') Jobs
|
||||
if !user
|
||||
li      
|
||||
li
|
||||
|
28
views/resources/jobs-form.jade
Normal file
28
views/resources/jobs-form.jade
Normal file
@@ -0,0 +1,28 @@
|
||||
html.
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
|
||||
<html>
|
||||
<head>
|
||||
<!--Add the title of your typeform below-->
|
||||
<title>nonprofit-projects</title>
|
||||
<!--CSS styles that ensure your typeform takes up all the available screen space (DO NOT EDIT!)-->
|
||||
<style type="text/css">
|
||||
html{
|
||||
margin: 0;
|
||||
height: 100%;
|
||||
overflow: hidden;
|
||||
}
|
||||
iframe{
|
||||
position: absolute;
|
||||
left:0;
|
||||
right:0;
|
||||
bottom:0;
|
||||
top:0;
|
||||
border:0;
|
||||
}
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
<iframe id="typeform-full" width="100%" height="100%" frameborder="0" src="https://freecodecamp.typeform.com/to/Wkfsts"></iframe>
|
||||
<script type="text/javascript" src="https://s3-eu-west-1.amazonaws.com/share.typeform.com/embed.js"></script>
|
||||
</body>
|
||||
</html>
|
16
views/resources/jobs.jade
Normal file
16
views/resources/jobs.jade
Normal file
@@ -0,0 +1,16 @@
|
||||
extends ../layout-wide
|
||||
block content
|
||||
.row
|
||||
.col-xs-12.col-sm-8.col-sm-offset-2.text-center
|
||||
h2 We want all our campers to get awesome software engineer jobs (
|
||||
a(href='https://www.linkedin.com/groups?viewMembers=&gid=6966827&sik=1432338555021' target='_blank') and many already have
|
||||
| ).
|
||||
h3.hidden-xs.hidden-sm This is a small sampling of the 1,000s of junior software engineer jobs. Learn about the  
|
||||
a(href='http://blog.freecodecamp.com/2014/10/the-real-reason-to-learn-mean-stack.html') the job market in aggregate
|
||||
| .
|
||||
.spacer
|
||||
a.btn.btn-primary.btn-big(href='/jobs-form') My organization is hiring software engineers
|
||||
.spacer
|
||||
.embed-responsive.embed-responsive-4by3.hidden-xs.hidden-sm
|
||||
iframe.embed-responsive-item(src="http://freecodecamp.simply-partner.com" scrolling="no")
|
||||
.spacer
|
61
views/resources/test.css
Normal file
61
views/resources/test.css
Normal file
@@ -0,0 +1,61 @@
|
||||
.themeCustom a.link:link, .themeCustom a.link:visited, .themeCustom a:link, .themeCustom a:visited {
|
||||
color: #0066cc;
|
||||
}
|
||||
|
||||
.themeCustom .sh_header_search .well {
|
||||
background: #dedede;
|
||||
}
|
||||
|
||||
.themeCustom .sh_header_search .header_wrapper {
|
||||
border-bottom-color: #cccccc;
|
||||
}
|
||||
|
||||
.themeCustom .column-left {
|
||||
background-color: #dedede;
|
||||
}
|
||||
|
||||
.themeCustom .column-left .filters .handle {
|
||||
background-color: #dedede;
|
||||
}
|
||||
|
||||
.themeCustom .column-left .filters .handle:hover {
|
||||
background-color: #cccccc;
|
||||
}
|
||||
|
||||
.themeCustom .column-left .recent_searches, .themeCustom .column-left .search_tools, .themeCustom .column-left .search_links, .themeCustom .column-left .sort_jobs {
|
||||
border-top-color: #dedede;
|
||||
}
|
||||
|
||||
.themeCustom #search_title .text-highlight {
|
||||
color: #444444;
|
||||
}
|
||||
|
||||
.themeCustom .inline-filters {
|
||||
background: #dedede;
|
||||
}
|
||||
|
||||
.themeCustom input[type=radio]:checked + label > span, .themeCustom .sort_jobs input[type=radio]:checked + label > span, .themeCustom .social-network-logins input[type=radio]:checked + label > span {
|
||||
background-color: #444444;
|
||||
border-color: #444444;
|
||||
}
|
||||
|
||||
.themeCustom .filters .filter ul li a, .themeCustom #c_expired a, .themeCustom .result a, .themeCustom .expand_search a, .themeCustom .simplyhired-intl a, .themeCustom .filters .filter ul li a:visited, .themeCustom #c_expired a:visited, .themeCustom .result a:visited, .themeCustom .expand_search a:visited, .themeCustom .simplyhired-intl a:visited, .themeCustom .job h2 {
|
||||
color: #0066cc;}
|
||||
|
||||
.sh.theme-base .btn-sh2 {
|
||||
background-color: #999999;
|
||||
}
|
||||
|
||||
.sh.theme-base .sh_header_search .skin-search-promo .btn-large{
|
||||
background-color: #999999;
|
||||
background-image: none;
|
||||
}
|
||||
|
||||
.sh .job .new {
|
||||
background-color: #999999;
|
||||
background-image: none;
|
||||
}
|
||||
|
||||
.sh .job .partner-exclusive {
|
||||
background-color: #F15A22;
|
||||
}
|
Reference in New Issue
Block a user