Skip to content

Commit

Permalink
stickers zomg
Browse files Browse the repository at this point in the history
  • Loading branch information
chee committed Nov 29, 2013
1 parent 073db21 commit 5547758
Show file tree
Hide file tree
Showing 15 changed files with 1,218 additions and 7 deletions.
2 changes: 2 additions & 0 deletions .dir-locals.el
@@ -0,0 +1,2 @@
((nil . ((indent-tabs-mode . t)
(tab-width . 4))))
112 changes: 112 additions & 0 deletions app.js
@@ -0,0 +1,112 @@
/**
* Module dependencies.
*/

var express = require('express');
var routes = require('./routes');
var user = require('./routes/user');
var http = require('http');
var path = require('path');
var fs = require('fs');
var app = express();
var websockServer = require('websocket').server;

// all environments
app.set('port', process.env.PORT || 48813);
app.set('views', path.join(__dirname, 'views'));
app.set('view engine', 'hjs');
app.use(express.favicon());
app.use(express.logger('dev'));
app.use(express.json());
app.use(express.urlencoded());
app.use(express.methodOverride());
app.use(app.router);
app.use(require('stylus').middleware(path.join(__dirname, 'public')));
app.use(express.static(path.join(__dirname, 'public')));

// development only
if ('development' == app.get('env')) {
app.use(express.errorHandler());
}

app.get('/', routes.index);
app.get('/users', user.list);

var web = http.createServer(app).listen(app.get('port'), function(){
console.log('Express server listening on port ' + app.get('port'));
});

// websocks
var socket = new websockServer({
httpServer: web,
autoAcceptConnections: false
});

function originIsAllowed(origin) {
console.log(origin);
return 'lol';
}

connections = [];

socket.on('request', function(request) {
if (!originIsAllowed(request.origin)) {
request.reject();
console.log('hello, i rejected' + request.origin);
return;
}

var connection = (function() {
try {
return request.accept('wow', request.origin);
} catch (error) {
return;
}
}());

if (!connection) return;
console.log('i accept', request.origin);
connections.push(connection);
connection.on('close', function() {
connections.forEach(function (cached, index) {
if (cached == connection) {
delete connections[index];
}
});
});

connection.on('message', function (message) {
message = (function() {
try {
return JSON.parse(message.utf8Data);
} catch (error) {
return;
}
}());

if (!message) return;
connections.forEach(function(cached) {
cached.send(JSON.stringify(message));
});

fs.readFile('data/icons.json', function (up, buffer) {
if (up) throw up;
try {
var stickers = JSON.parse(buffer.toString());

stickers.forEach(function (sticker, index) {
if (sticker.id == message.id) {
stickers[index] = message;
}
});

fs.writeFile('data/icons.json', JSON.stringify(stickers), function (error) {
if (error) console.error(error);
});

} catch (tantrum) {
throw tantrum;
}
});
});
});
1 change: 1 addition & 0 deletions data/icons.json
@@ -0,0 +1 @@
[{"id":"🌀","background":"#ffffff","foreground":"#000000"},{"id":"🌁","background":"#ffffff","foreground":"#000000"},{"id":"🌂","background":"#ffffff","foreground":"#000000"},{"id":"🌃","background":"#ffffff","foreground":"#000000"},{"id":"🌄","background":"#ffffff","foreground":"#000000"},{"id":"🌅","background":"#ffffff","foreground":"#000000"},{"id":"🌆","background":"#ffffff","foreground":"#000000"},{"id":"🌇","background":"#ffffff","foreground":"#000000"},{"id":"🌈","background":"#ffffff","foreground":"#000000"},{"id":"🌉","background":"#ffffff","foreground":"#000000"},{"id":"🌊","background":"#ffffff","foreground":"#000000"},{"id":"🌋","background":"#ffffff","foreground":"#000000"},{"id":"🌌","background":"#ffffff","foreground":"#000000"},{"id":"🌏","background":"#ffffff","foreground":"#000000"},{"id":"🌑","background":"#ffffff","foreground":"#000000"},{"id":"🌓","background":"#ffffff","foreground":"#000000"},{"id":"🌔","background":"#ffffff","foreground":"#000000"},{"id":"🌕","background":"#ffffff","foreground":"#000000"},{"id":"🌙","background":"#ffffff","foreground":"#000000"},{"id":"🌛","background":"#ffffff","foreground":"#000000"},{"id":"🌟","background":"#ffffff","foreground":"#000000"},{"id":"🌠","background":"#ffffff","foreground":"#000000"},{"id":"🌰","foreground":"#000000","background":"#f8fefb"},{"id":"🌱","foreground":"#000000","background":"#f4fffc"},{"id":"🌴","background":"#ffffff","foreground":"#000000"},{"id":"🌵","background":"#ffffff","foreground":"#000000"},{"id":"🌷","background":"#ffffff","foreground":"#000000"},{"id":"🌸","background":"#ffffff","foreground":"#000000"},{"id":"🌹","background":"#ffffff","foreground":"#000000"},{"id":"🌺","background":"#ffffff","foreground":"#000000"},{"id":"🌻","background":"#ffffff","foreground":"#000000"},{"id":"🌼","background":"#ffffff","foreground":"#000000"},{"id":"🌽","foreground":"#000000","background":"#ffffff"},{"id":"🌾","background":"#ffffff","foreground":"#000000"},{"id":"🌿","background":"#ffffff","foreground":"#000000"},{"id":"🍀","background":"#ffffff","foreground":"#000000"},{"id":"🍁","background":"#ffffff","foreground":"#000000"},{"id":"🍂","background":"#ffffff","foreground":"#000000"},{"id":"🍃","background":"#ffffff","foreground":"#000000"},{"id":"🍄","background":"#ffffff","foreground":"#000000"},{"id":"🍅","background":"#ffffff","foreground":"#000000"},{"id":"🍆","background":"#ffffff","foreground":"#000000"},{"id":"🍇","background":"#ffffff","foreground":"#000000"},{"id":"🍈","background":"#ffffff","foreground":"#000000"},{"id":"🍉","background":"#ffffff","foreground":"#000000"},{"id":"🍊","background":"#ffffff","foreground":"#000000"},{"id":"🍌","background":"#ffffff","foreground":"#000000"},{"id":"🍍","background":"#ffffff","foreground":"#000000"},{"id":"🍎","background":"#ffffff","foreground":"#000000"},{"id":"🍏","background":"#ffffff","foreground":"#000000"},{"id":"🍑","background":"#ffffff","foreground":"#000000"},{"id":"🍒","background":"#ffffff","foreground":"#000000"},{"id":"🍓","background":"#ffffff","foreground":"#000000"},{"id":"🍔","background":"#ffffff","foreground":"#000000"},{"id":"🍕","background":"#ffffff","foreground":"#000000"},{"id":"🍖","background":"#ffffff","foreground":"#000000"},{"id":"🍗","background":"#ffffff","foreground":"#000000"},{"id":"🍘","background":"#ffffff","foreground":"#000000"},{"id":"🍙","background":"#ffffff","foreground":"#000000"},{"id":"🍚","background":"#ffffff","foreground":"#000000"},{"id":"🍛","background":"#ffffff","foreground":"#000000"},{"id":"🍜","background":"#ffffff","foreground":"#000000"},{"id":"🍝","background":"#ffffff","foreground":"#000000"},{"id":"🍞","background":"#ffffff","foreground":"#000000"},{"id":"🍟","background":"#ffffff","foreground":"#000000"},{"id":"🍠","background":"#ffffff","foreground":"#000000"},{"id":"🍡","background":"#ffffff","foreground":"#000000"},{"id":"🍢","background":"#ffffff","foreground":"#000000"},{"id":"🍣","background":"#ffffff","foreground":"#000000"},{"id":"🍤","background":"#ffffff","foreground":"#000000"},{"id":"🍥","background":"#ffffff","foreground":"#000000"},{"id":"🍦","background":"#ffffff","foreground":"#000000"},{"id":"🍧","background":"#ffffff","foreground":"#000000"},{"id":"🍨","background":"#ffffff","foreground":"#000000"},{"id":"🍩","background":"#ffffff","foreground":"#000000"},{"id":"🍪","background":"#ffffff","foreground":"#000000"},{"id":"🍫","background":"#ffffff","foreground":"#000000"},{"id":"🍬","background":"#ffffff","foreground":"#000000"},{"id":"🍭","background":"#ffffff","foreground":"#000000"},{"id":"🍮","background":"#ffffff","foreground":"#000000"},{"id":"🍯","background":"#ffffff","foreground":"#000000"},{"id":"🍰","background":"#ffffff","foreground":"#000000"},{"id":"🍱","background":"#ffffff","foreground":"#000000"},{"id":"🍲","background":"#ffffff","foreground":"#000000"},{"id":"🍳","background":"#ffffff","foreground":"#000000"},{"id":"🍴","background":"#ffffff","foreground":"#000000"},{"id":"🍵","background":"#ffffff","foreground":"#000000"},{"id":"🍶","background":"#ffffff","foreground":"#000000"},{"id":"🍷","background":"#ffffff","foreground":"#000000"},{"id":"🍸","background":"#ffffff","foreground":"#000000"},{"id":"🍹","background":"#ffffff","foreground":"#000000"},{"id":"🍺","background":"#ffffff","foreground":"#000000"},{"id":"🍻","background":"#ffffff","foreground":"#000000"},{"id":"🎀","background":"#ffffff","foreground":"#000000"},{"id":"🎁","background":"#ffffff","foreground":"#000000"},{"id":"🎂","background":"#ffffff","foreground":"#000000"},{"id":"🎃","background":"#ffffff","foreground":"#000000"},{"id":"🎄","background":"#ffffff","foreground":"#000000"},{"id":"🎅","background":"#ffffff","foreground":"#000000"},{"id":"🎆","background":"#ffffff","foreground":"#000000"},{"id":"🎇","background":"#ffffff","foreground":"#000000"},{"id":"🎈","background":"#ffffff","foreground":"#000000"},{"id":"🎉","background":"#ffffff","foreground":"#000000"},{"id":"🎊","background":"#ffffff","foreground":"#000000"},{"id":"🎋","background":"#ffffff","foreground":"#000000"},{"id":"🎌","background":"#ffffff","foreground":"#000000"},{"id":"🎍","background":"#ffffff","foreground":"#000000"},{"id":"🎎","background":"#ffffff","foreground":"#000000"},{"id":"🎏","background":"#ffffff","foreground":"#000000"},{"id":"🎐","background":"#ffffff","foreground":"#000000"},{"id":"🎑","background":"#ffffff","foreground":"#000000"},{"id":"🎒","background":"#ffffff","foreground":"#000000"},{"id":"🎓","background":"#ffffff","foreground":"#000000"},{"id":"🎠","background":"#ffffff","foreground":"#000000"},{"id":"🎡","background":"#ffffff","foreground":"#000000"},{"id":"🎢","background":"#ffffff","foreground":"#000000"},{"id":"🎣","background":"#ffffff","foreground":"#000000"},{"id":"🎤","background":"#ffffff","foreground":"#000000"},{"id":"🎥","background":"#ffffff","foreground":"#000000"},{"id":"🎦","background":"#ffffff","foreground":"#000000"},{"id":"🎧","background":"#ffffff","foreground":"#000000"},{"id":"🎨","background":"#ffffff","foreground":"#000000"},{"id":"🎩","background":"#ffffff","foreground":"#000000"},{"id":"🎪","background":"#ffffff","foreground":"#000000"},{"id":"🎫","background":"#ffffff","foreground":"#000000"},{"id":"🎬","background":"#ffffff","foreground":"#000000"},{"id":"🎭","background":"#ffffff","foreground":"#000000"},{"id":"🎮","background":"#ffffff","foreground":"#000000"},{"id":"🎯","background":"#ffffff","foreground":"#000000"},{"id":"🎰","background":"#ffffff","foreground":"#000000"},{"id":"🎱","background":"#ffffff","foreground":"#000000"},{"id":"🎲","background":"#ffffff","foreground":"#000000"},{"id":"🎳","background":"#ffffff","foreground":"#000000"},{"id":"🎴","background":"#ffffff","foreground":"#000000"},{"id":"🎵","background":"#ffffff","foreground":"#000000"},{"id":"🎶","background":"#ffffff","foreground":"#000000"},{"id":"🎷","background":"#ffffff","foreground":"#000000"},{"id":"🎸","background":"#ffffff","foreground":"#000000"},{"id":"🎹","background":"#ffffff","foreground":"#000000"},{"id":"🎺","background":"#ffffff","foreground":"#000000"},{"id":"🎻","background":"#ffffff","foreground":"#000000"},{"id":"🎼","background":"#ffffff","foreground":"#000000"},{"id":"🎽","background":"#ffffff","foreground":"#000000"},{"id":"🎾","background":"#ffffff","foreground":"#000000"},{"id":"🎿","background":"#ffffff","foreground":"#000000"},{"id":"🏀","background":"#ffffff","foreground":"#000000"},{"id":"🏁","background":"#ffffff","foreground":"#000000"},{"id":"🏂","background":"#ffffff","foreground":"#000000"},{"id":"🏃","background":"#ffffff","foreground":"#000000"},{"id":"🏄","background":"#ffffff","foreground":"#000000"},{"id":"🏆","background":"#ffffff","foreground":"#000000"},{"id":"🏈","background":"#ffffff","foreground":"#000000"},{"id":"🏊","background":"#ffffff","foreground":"#000000"},{"id":"🏠","background":"#ffffff","foreground":"#000000"},{"id":"🏡","background":"#ffffff","foreground":"#000000"},{"id":"🏢","background":"#ffffff","foreground":"#000000"},{"id":"🏣","background":"#ffffff","foreground":"#000000"},{"id":"🏥","background":"#ffffff","foreground":"#000000"},{"id":"🏦","background":"#ffffff","foreground":"#000000"},{"id":"🏧","background":"#ffffff","foreground":"#000000"},{"id":"🏨","background":"#ffffff","foreground":"#000000"},{"id":"🏩","background":"#ffffff","foreground":"#000000"},{"id":"🏪","background":"#ffffff","foreground":"#000000"},{"id":"🏫","background":"#ffffff","foreground":"#000000"},{"id":"🏬","background":"#ffffff","foreground":"#000000"},{"id":"🏭","background":"#ffffff","foreground":"#000000"},{"id":"🏮","background":"#ffffff","foreground":"#000000"},{"id":"🏯","background":"#ffffff","foreground":"#000000"},{"id":"🍯","background":"#ffffff","foreground":"#000000"},{"id":"👯","background":"#ffffff","foreground":"#000000"},{"id":"💏","background":"#ffffff","foreground":"#000000"}]
19 changes: 12 additions & 7 deletions package.json
@@ -1,9 +1,14 @@
{
"name": "stickers",
"description": "just some good clean fun",
"version": "0.0.0",
"private": true,
"dependencies": {
"express": "3.4.4"
}
"name": "application-name",
"version": "0.0.1",
"private": true,
"scripts": {
"start": "node app.js"
},
"dependencies": {
"express": "3.4.4",
"hjs": "*",
"stylus": "*",
"websocket": "~1.0.8"
}
}
12 changes: 12 additions & 0 deletions public/components/icon_editor.hjs
@@ -0,0 +1,12 @@
<div id="sticker-editor">
<div class="sticker-editor__content">
<figure class="sticker-editor__sticker">
</figure>
<aside class="sticker-editor__editor">
<h3 class="sticker-editor__h3">Foreground</h3>
<input type="color" class="sticker-editor__color js-color--foreground">
<h3 class="sticker-editor__h3">Background</h3>
<input type="color" class="sticker-editor__color js-color--background">
</aside>
</div>
</div>
Empty file added public/index.html
Empty file.

0 comments on commit 5547758

Please sign in to comment.