cjb / codex-blackboard Goto Github PK
View Code? Open in Web Editor NEWMeteor app for coordinating solving for our MIT Mystery Hunt team
License: GNU Affero General Public License v3.0
Meteor app for coordinating solving for our MIT Mystery Hunt team
License: GNU Affero General Public License v3.0
Let the user resize the amount of space given to the spreadsheet.
Maybe a way to pop up a modal dialog that makes a sound effect and gets everyone's attention? (Like "The hunt has started!", for one.)
It sounds like alertify already offers this, I'm just proposing it being part of the admin interface.
git grep 'puzzles-link'
Should be straightforward.
Both chat and puzzle data.
See 2011-data/README for more info.
Need to implement in model, then add buttons to HTML/CSS (next to the 'add tag' buttons?), then hook everything up.
need to implement the method in the model (probably changing its signature to something more appropriate) and then hook up the client buttons.
Unclear why.
Ask him for the code he showed during the meetup. It would be helpful to have an idea of server load during the hunt.
this is a ui issue
just add a 'target=_new' (i think that's right) when we mark up chat urls
If there's too much content in a message, automatically add a 'more...' link and elide most of it. This protects the chat room from accidental huge pastes.
Hook Template.render instead of the funky setTimeout stuff that's currently going on.
Seems fairly linear; it's extremely snappy within a minute of the page loading, kind of sluggish after five minutes, and so slow that there's no animation anymore after around ten minutes.
Pointer doesn't change to the "hand" cursor over it if your screen's narrow.
If load becomes a problem, we might want to replace all the fine-grained subscriptions with a single subscription to all-puzzles and all-rounds. Add code to control this with a Meteor.setting. ie
SUB_ALL = Meteor.setting....
Meteor.subscribe 'puzzle-by-id' unless SUB_ALL
We should use a pattern to allow override of the various constants in Meteor.settings.
Ie,
GDRIVE_HOST = Meteor.settings?.gdrive_host or 'http://hydro.laptop.org:5000'
(Note the use of ?. which hopefully means this works even in Meteor 0.5.2 ?)
Shift-return or paste in the new message box should turn it into a text box. When displaying messages, replace \n with <br> (I'm pretty sure this second part is already done).
Try naming a new puzzle (or round) "Scott's Test Puzzle", for instance. You get back:
{ statusCode: 200,
content: '{"exception": "<HttpError 400 when requesting https://www.googleapis.com/drive/v2/files?q=title%3D%27Codex%3A+Scott%27s+Third+Test+Puzzle%27&alt=json returned \\"Invalid Value\\">", "error": "Error duplicate checking: Codex: Scott\'s Third Test Puzzle"}',
headers:
{ 'content-type': 'text/html; charset=utf-8',
'content-length': '250',
server: 'Werkzeug/0.8.3 Python/2.7.3',
date: 'Fri, 11 Jan 2013 22:44:39 GMT' },
data: null,
error: null }
Looks like we're not properly escaping our puzzle names?
sez cody
I'm not hearing it again, although Seth is. Maybe increase the tolerance in time delta.
At the moment it performs the commands, but doesn't tell you it's done so.
There's a node.js htpasswd package we could use (assuming we don't use apache), but it's not necessarily trivial to import a node.js package into Meteor.
Use smaller gravatars and smaller intra-chat spacing to fit more text on-screen.
Seems to be an issue because the size of the page changes between the time that 'scroll-to-bottom' is called and when the image finished loading.
Probably need an onload handler on the image to take care of this. Adding images to the Meteor.preserve() list might also help (but it also might leak, check this).
...otherwise the spreadsheet can't be embedded
Requires a collection storing (nick, room_name, timestamp) tuples.
Requires port forwarding 80 to an unpriviledged port (3000?) and "deberg_: you can set ROOT_URL when you run the bundle to whatever you need."
Chat log at top, google drive at bottom, links to full-screen these?
seth suggested this. would require using an enumeration for the status field.
Perhaps better: allow hiding solved puzzles.
Right now, they've got the puzzles in there already, it would be nice to have solutions in there as well
Right now you have to do "/msg codexbot codexbot ..." which is just redundant.
(Use private message for codexbot's help command.)
This may be something like the 'WIKI' keyword in chat, used in the past.
Maybe a small button with a popover somewhere?
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.