Skip to content

Commit

Permalink
Initial commit
Browse files Browse the repository at this point in the history
  • Loading branch information
Thomas Fritz committed Sep 24, 2014
0 parents commit 971def4
Show file tree
Hide file tree
Showing 401 changed files with 11,547 additions and 0 deletions.
10 changes: 10 additions & 0 deletions .editorconfig
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
# editorconfig.org
root = true

[*]
indent_style = space
indent_size = 2
end_of_line = lf
charset = utf-8
trim_trailing_whitespace = true
insert_final_newline = true
118 changes: 118 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,118 @@
################################################
############### .gitignore ##################
################################################
#
# This file is only relevant if you are using git.
#
# Files which match the splat patterns below will
# be ignored by git. This keeps random crap and
# and sensitive credentials from being uploaded to
# your repository. It allows you to configure your
# app for your machine without accidentally
# committing settings which will smash the local
# settings of other developers on your team.
#
# Some reasonable defaults are included below,
# but, of course, you should modify/extend/prune
# to fit your needs!
################################################




################################################
# Local Configuration
#
# Explicitly ignore files which contain:
#
# 1. Sensitive information you'd rather not push to
# your git repository.
# e.g., your personal API keys or passwords.
#
# 2. Environment-specific configuration
# Basically, anything that would be annoying
# to have to change every time you do a
# `git pull`
# e.g., your local development database, or
# the S3 bucket you're using for file uploads
# development.
#
################################################

config/local.js





################################################
# Dependencies
#
# When releasing a production app, you may
# consider including your node_modules and
# bower_components directory in your git repo,
# but during development, its best to exclude it,
# since different developers may be working on
# different kernels, where dependencies would
# need to be recompiled anyway.
#
# More on that here about node_modules dir:
# http://www.futurealoof.com/posts/nodemodules-in-git.html
# (credit Mikeal Rogers, @mikeal)
#
# About bower_components dir, you can see this:
# http://addyosmani.com/blog/checking-in-front-end-dependencies/
# (credit Addy Osmani, @addyosmani)
#
################################################

node_modules
bower_components




################################################
# Sails.js / Waterline / Grunt
#
# Files generated by Sails and Grunt, or related
# tasks and adapters.
################################################
.tmp
dump.rdb





################################################
# Node.js / NPM
#
# Common files generated by Node, NPM, and the
# related ecosystem.
################################################
lib-cov
*.seed
*.log
*.out
*.pid
npm-debug.log





################################################
# Miscellaneous
#
# Common files generated by text editors,
# operating systems, file systems, etc.
################################################

*~
*#
.DS_STORE
.netbeans
nbproject
.idea
.node_history
5 changes: 5 additions & 0 deletions .sailsrc
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
{
"generators": {
"modules": {}
}
}
81 changes: 81 additions & 0 deletions Gruntfile.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,81 @@
/**
* Gruntfile
*
* This Node script is executed when you run `grunt` or `sails lift`.
* It's purpose is to load the Grunt tasks in your project's `tasks`
* folder, and allow you to add and remove tasks as you see fit.
* For more information on how this works, check out the `README.md`
* file that was generated in your `tasks` folder.
*
* WARNING:
* Unless you know what you're doing, you shouldn't change this file.
* Check out the `tasks` directory instead.
*/

module.exports = function(grunt) {


// Load the include-all library in order to require all of our grunt
// configurations and task registrations dynamically.
var includeAll;
try {
includeAll = require('include-all');
} catch (e0) {
try {
includeAll = require('sails/node_modules/include-all');
}
catch(e1) {
console.error('Could not find `include-all` module.');
console.error('Skipping grunt tasks...');
console.error('To fix this, please run:');
console.error('npm install include-all --save`');
console.error();

grunt.registerTask('default', []);
return;
}
}


/**
* Loads Grunt configuration modules from the specified
* relative path. These modules should export a function
* that, when run, should either load/configure or register
* a Grunt task.
*/
function loadTasks(relPath) {
return includeAll({
dirname: require('path').resolve(__dirname, relPath),
filter: /(.+)\.js$/
}) || {};
}

/**
* Invokes the function from a Grunt configuration module with
* a single argument - the `grunt` object.
*/
function invokeConfigFn(tasks) {
for (var taskName in tasks) {
if (tasks.hasOwnProperty(taskName)) {
tasks[taskName](grunt);
}
}
}




// Load task functions
var taskConfigurations = loadTasks('./tasks/config'),
registerDefinitions = loadTasks('./tasks/register');

// (ensure that a default task exists)
if (!registerDefinitions.default) {
registerDefinitions.default = function (grunt) { grunt.registerTask('default', []); };
}

// Run task functions to configure Grunt.
invokeConfigFn(taskConfigurations);
invokeConfigFn(registerDefinitions);

};
21 changes: 21 additions & 0 deletions LICENSE
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
The MIT License (MIT)

Copyright (c) 2014 forty-two.io

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
3 changes: 3 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
# viennajs.org

a [Sails](http://sailsjs.org) application
35 changes: 35 additions & 0 deletions api/controllers/EventsController.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
module.exports.show = function (req, res) {
"use strict";

var err = HelperService.handleErr;
var eventId = req.params.id;

MeetupService.getEvent(eventId, function (error, event) {
if (error) throw err("Error retrieving event", error);
var event = event.results.pop();
var eventMeta = event.meta;
eventId = req.params.id;

MeetupService.getRSVPs(eventId, function (error, rsvps) {
if (error) throw err("Error retrieving rsvps for event: '" + eventId + "'", error);
var rsvps = rsvps.results;
var rsvpsMeta = rsvps.meta;
var locals = {
event: event,
eventMeta: eventMeta,
rsvps: rsvps,
rsvpsMeta: rsvpsMeta
};

eventId = req.params.id;
MeetupService.getEventComments(eventId, function (error, comments) {
if (error) throw err("Error retrieving comments for event '" + eventId + "'", error);
locals.comments = comments.results;
res.view(locals);
});

});

});

};
19 changes: 19 additions & 0 deletions api/controllers/IndexController.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
/**
* TestController
*
* @description :: Server-side logic for managing tests
* @help :: See http://links.sailsjs.org/docs/controllers
*/


/**
* `IndexController.index()`
*/
module.exports.get = function (req, res) {
"use strict";
MeetupService.getEvents(function (error, events) {
if (error) throw error;
return res.view({events: events.results, meta: events.meta});
});
}

56 changes: 56 additions & 0 deletions api/controllers/OAuthController.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,56 @@
/**
* OAuthController
*
* @description :: Server-side logic for managing Oauths
* @help :: See http://links.sailsjs.org/docs/controllers
*/
var util = require('util')

module.exports = {

/**
* `OAuthController.login()`
*/
login: function (req, res) {
OAuthioService.auth(req.body.code, req.query.provider, req.session, function (error, user) {
if (error) {
sails.log.error(error);
return res.send(400, "An error occured");
}
User.findOrCreate({ id : user.id }, user, function (error, user) {
if (error) {
sails.log.error(error);
return res.send(400, "An error occured");
}
req.session.user = user;
return res.json(user);
})
})
},


/**
* `OAuthController.logout()`
*/
logout: function (req, res) {
if (req.session) {
req.session.destroy(function (error) {
if (error) res.serverError()
return res.redirect("/");
});
} else {
res.redirect("/");
}
},


/**
* `OAuthController.stateToken()`
*/
stateToken: function (req, res) {
var token = OAuthioService.stateToken(req.session)
res.json({
token: token
});
}
};
Empty file added api/models/.gitkeep
Empty file.
Empty file added api/models/Event.js
Empty file.
Loading

0 comments on commit 971def4

Please sign in to comment.