adding works list and plumbing

legacy_v1
mwinter 3 years ago
parent ff248d6a92
commit 9259436903

@ -855,23 +855,32 @@ function populatePublications() {
function populateAbout() {
var head = $('<h4>').append($('<div>').css('width', '50px').css('min-width', '50px').append('CV'));
var cvHead = $('<h4>').append($('<div>').css('width', '50px').css('min-width', '50px').append('CV'));
//var documentButton = $("<button id=cv_button data-iframe='true' data-src='/cv'>").attr({title: "CV"}).addClass('score_icon');
var documentButton = $("<button id=cv_button>").attr({title: "CV"}).addClass('score_icon');
var cvButton = $("<button id=cv_button>").attr({title: "CV"}).addClass('score_icon');
documentButton.click(function() {
var wlHead = $('<h4>').append($('<div>').css('width', '300px').css('min-width', '300px').append('Works List with Presentation History'));
var wlButton = $("<button id=cv_button>").attr({title: "Works List with Presentation History"}).addClass('score_icon');
cvButton.click(function() {
window.open('/cv');
});
wlButton.click(function() {
window.open('/works_list');
});
/*
documentButton.lightGallery({
cvButton.lightGallery({
selector: 'this',
width: '90%',
galleryId: 'cv'
});
*/
head.append(documentButton).insertBefore('#mc_embed_signup');
cvHead.append(cvButton).insertBefore('#mc_embed_signup');
wlHead.append(wlButton).insertBefore('#mc_embed_signup');
$('#my_image').html("");
$('#my_image').append("<ul id='myimagegallerylist'>");

@ -107,6 +107,14 @@ a {
margin-bottom: 5px;
}
.work-info {
margin-left: -30px;
}
.venue-info {
margin-left: 15px;
}
.education-gpa {
padding-left: 2px;
}

@ -26,6 +26,25 @@ router.get('/cv', function(req, res, next) {
var pubs = bibtexParse.toJSON(pubdata);
var dict = items[0]
dict.publications = pubs;
db.collection('talks').aggregate(
[
{'$sort' : {'date' : -1}},
{'$group': {_id: { $substr: ['$date',0,4] }, talks: { $push: "$$ROOT" }}},
{'$sort' : {'_id' : -1}}]).toArray(function (err, talks) {
dict.talks = talks;
res.render('cv.template', {resume: dict, css: css});
});
});
});
/* GET works_list. */
router.get('/works_list', function(req, res, next) {
var css = fs.readFileSync( path.join(__dirname, '../public/stylesheets/resume_style.css'), 'utf8');
var db = req.db;
db.collection('resume').find().toArray(function (err, items) {
var dict = items[0];
db.collection('works').find({}, function(err, works) {
@ -81,19 +100,10 @@ router.get('/cv', function(req, res, next) {
{'$sort' : {'date' : -1}},
{'$group': {_id: { $year: "$date" }, works: { $push: "$$ROOT" }}},
{'$sort' : {'_id' : -1}}]).toArray(function (err, worksCV) {
db.collection('talks').aggregate(
[
{'$sort' : {'date' : -1}},
{'$group': {_id: { $substr: ['$date',0,4] }, talks: { $push: "$$ROOT" }}},
{'$sort' : {'_id' : -1}}]).toArray(function (err, talks) {
dict.works = worksCV;
dict.talks = talks;
console.log('talks: ' + talks);
console.log('works: ' + worksCV);
res.render('cv.template', {resume: dict, css: css});
res.render('workslist.template', {resume: dict, css: css});
db.collection('works').update({}, {$unset: {'events':1}}, {multi: true});
});
});
return; // All done!
}
@ -145,10 +155,10 @@ router.get('/cv', function(req, res, next) {
works.next(processWork);
});
});
});
});
//handle code releases
router.get('/code_releases/*.zip', function(req, res) {
//handle code releases
router.get('/code_releases/*.zip', function(req, res) {
var db = req.db;
var splitreq = req.url.split('/');
var filename = splitreq.pop();
@ -161,16 +171,16 @@ router.get('/cv', function(req, res, next) {
console.log(file.redirect);
res.redirect(file.redirect);
});
});
});
/* redirect catch */
router.get('/redirect=*', function(req, res, next) {
/* redirect catch */
router.get('/redirect=*', function(req, res, next) {
var link = req.url.split('=').pop();
request(link).pipe(res);
});
});
router.get('/*/*', function(req, res) {
router.get('/*/*', function(req, res) {
var db = req.db;
var splitreq = req.url.split('/');
var filename = splitreq.pop();
@ -195,77 +205,77 @@ router.get('/cv', function(req, res, next) {
console.log('done!');
});
});
});
});
/*
router.get('/album_art/*', function(req, res) {
res.render('file');
});
/*
router.get('/album_art/*', function(req, res) {
res.render('file');
});
router.get('/pubs/*', function(req, res) {
res.render('file');
});
*/
router.get('/pubs/*', function(req, res) {
res.render('file');
});
*/
//legacy file handler
//legacy file handler
/*
router.get('/*.*', function(req, res) {
var file = req.url.split('/').pop()
request("http://legacy.unboundedpress.org/"+file).pipe(res);
});
router.get('/*.*', function(req, res) {
var file = req.url.split('/').pop()
request("http://legacy.unboundedpress.org/"+file).pipe(res);
});
*/
/* catch all*/
router.get('/*', function(req, res, next) {
/* catch all*/
router.get('/*', function(req, res, next) {
res.render('index', { title: 'Michael Winter' });
});
});
Handlebars.registerHelper("prettifyDayDate", function(resumeDate) {
Handlebars.registerHelper("prettifyDayDate", function(resumeDate) {
if (!resumeDate) {
return 'present';
}
var newDate = Moment(resumeDate).format('MM.DD.YYYY');
//console.log('newDate: ' + newDate);
return newDate;
});
});
Handlebars.registerHelper("prettifyMonthDate", function(resumeDate) {
Handlebars.registerHelper("prettifyMonthDate", function(resumeDate) {
if (!resumeDate) {
return 'present';
}
var newDate = Moment(resumeDate).format('MMM YYYY');
//console.log('newDate: ' + newDate);
return newDate;
});
});
Handlebars.registerHelper("prettifyYearDate", function(resumeDate) {
Handlebars.registerHelper("prettifyYearDate", function(resumeDate) {
if (!resumeDate) {
return 'present';
}
var newDate = Moment(resumeDate).format('YYYY');
//console.log('newDate: ' + newDate);
return newDate;
});
});
Handlebars.registerHelper('toLowerCase', function(str) {
Handlebars.registerHelper('toLowerCase', function(str) {
return str.toLowerCase();
});
});
Handlebars.registerHelper('toArray', function(val) {
Handlebars.registerHelper('toArray', function(val) {
if (typeof val === 'string') {
return [val]
} else {
return val
}
});
});
Handlebars.registerHelper('unless_blank', function(item, block) {
Handlebars.registerHelper('unless_blank', function(item, block) {
return (item && item.replace(/\s/g,"").length) ? block.fn(this) : block.inverse(this);
});
});
Handlebars.registerHelper('equal', function(lvalue, rvalue, options) {
Handlebars.registerHelper('equal', function(lvalue, rvalue, options) {
if (arguments.length < 3)
throw new Error("Handlebars Helper equal needs 2 parameters");
if( lvalue!=rvalue ) {
@ -273,6 +283,6 @@ router.get('/cv', function(req, res, next) {
} else {
return options.fn(this);
}
});
});
module.exports = router;
module.exports = router;

Loading…
Cancel
Save