app.get('/edition/', function(req, res) { console.log(req.query); var today = new Date(); if (today.getDay() != 3) { console.log('204'); res.status(204); res.setHeader('Content-Type', 'text/html; charset=UTF-8'); res.end(); } else { if (req.query.cinema){ allocine.api('showtimelist', {theaters: req.query.cinema}, function(error, result) { if(error) { console.log('Error : '+ error); return; } res.setHeader('Content-Type', 'text/html; charset=UTF-8'); res.render('index.ejs', {item: result.feed.theaterShowtimes[0]}); }); } else { allocine.api('showtimelist', {theaters: 'C0159'}, function(error, result) { if(error) { console.log('Error : '+ error); return; } res.setHeader('Content-Type', 'text/html; charset=UTF-8'); res.render('index.ejs', {item: result.feed.theaterShowtimes[0]}); }); } } });
app.get('/sample/', function(req, res) { console.log(req.query); allocine.api('showtimelist', {theaters: 'C0159'}, function(error, result) { if(error) { console.log('Error : '+ error); return; } res.setHeader('Content-Type', 'text/html; charset=UTF-8'); res.render('index.ejs', {item: result.feed.theaterShowtimes[0]}); }); });
exports.search = function (req, res) { var movies = allocine.api('search', {q: req.body.query}, function(err, result) { console.dir(result.feed.movie[0].poster.href); res.render('movie_list', { 'movies': result.feed.movie }); }); };
function getSaisonDetails( saison, code, callback) { var masaison = null; if( saison == null || typeof saison === 'undefined' ) masaison = new Saison(); else masaison = saison; if( code != 0 ) { //masaison.code = code; allocine.api('season', {code: code}, function(error,result) { if( error ) { } else { if( typeof result !== 'undefined' && typeof result.season !== 'undefined') { if( typeof result.season.parentSeries !== 'undefined' && typeof result.season.parentSeries.code !== 'undefined' ) { masaison.codeSerie = result.season.parentSeries.code; } if( typeof result.season.seasonNumber !== 'undefined' ) { masaison.number = result.season.seasonNumber; } if( typeof result.season.episodeCount !== 'undefined' ) { masaison.episodeCount = result.season.episodeCount; } if( typeof result.season.episode !== 'undefined' ) { for (k = 0; k < result.season.episode.length ; k++) { var episodeSaison = new EpisodeSaison(); if( typeof result.season.episode[k] !== 'undefined' ) { if( typeof result.season.episode[k].code !== 'undefined' ) { episodeSaison.code = result.season.episode[k].code; } if( typeof result.season.episode[k].episodeNumberSeason !== 'undefined' ) { episodeSaison.number = result.season.episode[k].episodeNumberSeason; } if( typeof result.season.episode[k].synopsis !== 'undefined' ) { episodeSaison.synopsis = result.season.episode[k].synopsis; } if( typeof result.season.episode[k].synopsisShort !== 'undefined' ) { episodeSaison.synopsisShort = result.season.episode[k].synopsisShort; } if( typeof result.season.episode[k].title !== 'undefined' ) { episodeSaison.title = result.season.episode[k].title; } masaison.episodes[k] = episodeSaison; } } } } } callback(masaison); }); } else { callback(masaison); } }
var api = function(req, res, next) { if(req.query.allocine) { _allocine.api('search', {q: req.query.allocine, filter: 'photo'}, function(error, results) { if(error) res.send('Error' + results.feed.media); res.send(results.feed.media); }); } else if(req.query.cpasbien) { cpbapi.Search(req.query.cpasbien).then(function(result){ res.send(result); }); } else { res.send('Bad request'); } }
Movie.findOne({ allocineId: req.params.movieId }, function(err, movie) { if(movie)// si un film à été trouvé dans la base de données { res.render('movie', movie); } else { allocine.api('movie', {code: req.params.movieId}, function(err, result) { for(var name in result.movie){ console.log(name);} var posterUrl = (result.movie.poster)? result.movie.poster.href: false; var title = result.movie.originalTitle; var synopsis = result.movie.synopsis; res.render('movie', { title: title, synopsis: synopsis, posterUrl: posterUrl, comments: [ { text: 'premier commentaire' }, { text: '2eme commentaire' } ] }); var movie = new Movie( { allocineId: result.movie.code, title: title, synopsis: synopsis, posterUrl: posterUrl }) movie.save(function (err) { console.log('film sauvegardé'); }); }); } });
allocine.api('search', { q:movie.search, filter: movie.movieType, count: 5}, function(err, res) { if(err) console.log('error', 'Error Allocine call', err); if(err) return cb(null, movie); if(!_.isUndefined(res.feed)) { var infos = Object.byString(res.feed, movie.movieType); if(infos !== undefined) { //Index allocine info var index = false; var m_name = _s.slugify(movie.search); //Parse each infos founded, if title matchs, break var nb_resultats = infos.length, i = 0; //loop beginning with best match ! while(i < nb_resultats - 1 && index === false) { var e = infos[i], //slugifying names - matches are better e_title = _s.slugify(e.title), e_original = _s.slugify(e.originalTitle); if( ( e.title !== undefined && e_title.indexOf(m_name) !== -1 ) || ( e.originalTitle !== undefined && e_original.indexOf(m_name) !== -1 ) ) { index = i; } i++; } if(index === false) index = 0; movie.code = infos[index].code; //Searching for a specific code allocine.api(movie.movieType, {code: movie.code}, function(err, result) { var specific_infos = Object.byString(result, movie.movieType); if(specific_infos) { movie.title = specific_infos.title !== undefined ? specific_infos.title : specific_infos.originalTitle; movie.synopsis = specific_infos.synopsis ? _s.trim(specific_infos.synopsis.replace(/(<([^>]+)>)/ig, '')) : ''; movie.picture = specific_infos.poster !== undefined ? specific_infos.poster.href : null; movie.trailer = _.isEmpty(specific_infos.trailer) ? null : specific_infos.trailer.href; } else { infos = infos[index]; movie.title = infos.title !== undefined ? infos.title : infos.originalTitle; movie.picture = infos.poster !== undefined ? infos.poster.href : null; movie.synopsis = infos.link !== undefined && infos.link.href !== undefined ? '<a href="'+infos.link.href+'">Fiche allociné</a>' : null; } return cb(err, movie); }); } else { //Too long // var words = _s.words(movie.search), num_words = words.length; // if(num_words >= 3 && words[num_words - 1].length > 3) { // words.pop(); // movie.search = words.join(' '); // search(movie, cb); // } else { //No movie founded return cb(err, movie); //} } } else { return cb(err, movie); } });
function getMovie( code, callback) { var monfilm = new Film(); if( code != 0 ) { monfilm.code = code; allocine.api('movie', {code: code}, function(error,result) { if( error ) { } else { if( typeof result.movie.genre !== 'undefined' && result.movie.genre.length !== 0 ) { monfilm.genre = result.movie.genre[0].$; } if( typeof result.movie.nationality !== 'undefined' && result.movie.nationality.length !== 0 ) { monfilm.country = result.movie.nationality[0].$; } if( typeof result.movie.synopsis !== 'undefined' ) { monfilm.synopsis = result.movie.synopsis; } if( typeof result.movie.synopsisShort !== 'undefined' ) { monfilm.synopsisShort = result.movie.synopsisShort; } if( typeof result.movie.runtime !== 'undefined' ) { monfilm.runtime = result.movie.runtime; } /*var castingShort = ''; if( typeof result.movie.castingShort !== 'undefined' ) { castingShort = result.movie.castingShort; }*/ var castMember = new Array(); if( typeof result.movie.castMember !== 'undefined' && result.movie.castMember.length !== 0 ) { castMember = result.movie.castMember; } var maxdirectors = 2; var maxactors = 5 var nbdirectors = 0; var nbactors = 0; for (i = 0; i < castMember.length ; i++) { if( typeof castMember[i].activity.$ !== 'undefined' && (castMember[i].activity.$ === 'Réalisateur' || castMember[i].activity.$ === 'Réalisatrice' ) && nbdirectors < maxdirectors ) { nbdirectors++; if( monfilm.directors === '' ) { monfilm.directors = castMember[i].person.name; } else { monfilm.directors += ', ' + castMember[i].person.name; } } if( typeof castMember[i].activity.$ !== 'undefined' && (castMember[i].activity.$ === 'Acteur' || castMember[i].activity.$ === 'Actrice' ) && nbactors < maxactors ) { nbactors++; if( monfilm.actors === '' ) { if( typeof castMember[i].role !== 'undefined' ) monfilm.actors = castMember[i].person.name + " (" + castMember[i].role + ")"; else monfilm.actors = castMember[i].person.name; } else { if( typeof castMember[i].role !== 'undefined' ) monfilm.actors += ', ' + castMember[i].person.name + " (" + castMember[i].role + ")"; else monfilm.actors += ', ' + castMember[i].person.name; } } } var title = ''; if( typeof result.movie.title !== 'undefined' ) { title = result.movie.title; } else { if( typeof result.movie.originalTitle !== 'undefined' ) { title = result.movie.originalTitle; } } var productionYear = ''; if( typeof result.movie.productionYear !== 'undefined' ) { productionYear = result.movie.productionYear; } var href = 'http://fr.web.img4.acsta.net/r_160_240/b_1_d6d6d6/commons/emptymedia/empty_photo.jpg'; if( typeof result.movie.poster !== 'undefined' && typeof result.movie.poster.href !== 'undefined' ) { href = result.movie.poster.href; href = href.replace(/^(http:\/\/[^\/]*)(.*)$/g, "$1/r_160_240/b_1_d6d6d6$2"); } var link_href = ''; if( typeof result.movie.link[0] !== 'undefined' && typeof result.movie.link[0].href !== 'undefined' ) { link_href = result.movie.link[0].href; } monfilm.href = link_href; monfilm.imageWebpath = href; monfilm.title = title; monfilm.year = productionYear; } callback(monfilm); }); } else { callback(monfilm); } }
function getSerie( saison, code, saisonnumber, callback ) { //console.log('codeeeeeeeeee1 : ' + code); var masaison = null; if( saison == null || typeof saison === 'undefined' ) { //console.log('newwwwwwwwwwwwwwwww'); masaison = new Saison(); } else { masaison = saison; //console.log('old'); } if( code != 0 ) { allocine.api('tvseries', {code: code}, function(error,result) { if( error ) { } else { if( typeof result !== 'undefined' ) { var genre = ''; if( typeof result.tvseries.genre !== 'undefined' && result.tvseries.genre.length !== 0 ) genre = result.tvseries.genre[0].$; var nationality = ''; if( typeof result.tvseries.nationality !== 'undefined' && result.tvseries.nationality.length !== 0 ) nationality = result.tvseries.nationality[0].$; var title = ''; try{ title = result.tvseries.title; } catch(error) {title = '';} if( title === '' || typeof title === 'undefined') try { title = result.tvseries.originalTitle;} catch(error) {title = '';} var href = 'http://fr.web.img4.acsta.net/r_160_240/b_1_d6d6d6/commons/emptymedia/empty_photo.jpg'; if( typeof result.tvseries.poster !== 'undefined' && typeof result.tvseries.poster.href !== 'undefined' ) { href = result.tvseries.poster.href; href = href.replace(/^(http:\/\/[^\/]*)(.*)$/g, "$1/r_160_240/b_1_d6d6d6$2"); } var castMember = new Array(); if( typeof result.tvseries.castMember !== 'undefined' && result.tvseries.castMember.length !== 0 ) { castMember = result.tvseries.castMember; } var maxdirectors = 2; var maxactors = 5 var nbdirectors = 0; var nbactors = 0; for (i = 0; i < castMember.length ; i++) { if( typeof castMember[i].activity.$ !== 'undefined' && (castMember[i].activity.$ === 'Réalisateur' || castMember[i].activity.$ === 'Réalisatrice' ) && nbdirectors < maxdirectors ) { nbdirectors++; if( masaison.directors === '' ) { masaison.directors = castMember[i].person.name; } else { masaison.directors += ', ' + castMember[i].person.name; } } if( typeof castMember[i].activity.$ !== 'undefined' && (castMember[i].activity.$ === 'Acteur' || castMember[i].activity.$ === 'Actrice' ) && nbactors < maxactors ) { nbactors++; if( masaison.actors === '' ) { if( typeof castMember[i].role !== 'undefined' ) masaison.actors = castMember[i].person.name + " (" + castMember[i].role + ")"; else masaison.actors = castMember[i].person.name; } else { if( typeof castMember[i].role !== 'undefined' ) masaison.actors += ', ' + castMember[i].person.name + " (" + castMember[i].role + ")"; else masaison.actors += ', ' + castMember[i].person.name; } } } var link_href = ''; if( typeof result.tvseries.link[0] !== 'undefined' && typeof result.tvseries.link[0].href !== 'undefined' ) { link_href = result.tvseries.link[0].href; } masaison.href = link_href; masaison.imageWebpath = href; masaison.title = title; if( typeof result.tvseries.synopsis !== 'undefined' ) { masaison.synopsis = result.tvseries.synopsis; } if( typeof result.tvseries.synopsisShort !== 'undefined' ) { masaison.synopsisShort = result.tvseries.synopsisShort; } if( typeof result.tvseries.seasonCount !== 'undefined' ) { masaison.seasonCount = result.tvseries.seasonCount; } if( typeof result.tvseries.yearStart !== 'undefined' ) { masaison.year = result.tvseries.yearStart; } masaison.genre = genre; masaison.country = nationality; if( typeof result.tvseries.season !== 'undefined' ) { for (k = 0; k < result.tvseries.season.length ; k++) { if( typeof result.tvseries.season[k] !== 'undefined' && result.tvseries.season[k].seasonNumber == saisonnumber ) { masaison.code = result.tvseries.season[k].code; //console.log('!!!!!!!!!!!!! ' + masaison.code); break; } } } } } callback(masaison); }); } else { callback(masaison); } }
function (callback) { allocine.api('search', {q: filter, count: 4, filter: 'tvseries'}, function(err, object) { series = searchSeries(err,object, series); callback(null, callback); }); },
function(callback) { allocine.api('search', {q: filter, count: 4, filter: 'movie'}, function(err, object) { movies = searchMovies(err, object, movies); callback(null, callback); }); },