Commit Graph

27 Commits

Author SHA1 Message Date
Toby Zerner
3880ce70f0 Add user activity system 2015-03-17 17:06:12 +10:30
Toby Zerner
edac830371 Add user profile side nav 2015-03-12 12:59:32 +10:30
Toby Zerner
2fc562e8d1 Implement user hover cards and basic profile pages 2015-03-12 10:40:03 +10:30
Toby Zerner
1d6616a419 Responsive design baby!
Mobile responsive design with a very native feel, all in pure CSS (no
templating differences between versions — even though some things are
in very different positions.)

I’ve been working on this whole thing in my head for a while now,
planning out how certain components will be laid out on the mobile
version, and how to reason about them in the templates so that a
substantially different layout can still be achieved by only using CSS.
Today I finally wrote the CSS and it’s come together pretty damn
perfectly.

Still to come:
- Swiping left or right on discussions to reveal controls
- Tablet version
2015-03-03 20:30:52 +10:30
Toby Zerner
195e0f1321 Fix alerts not dismissing 2015-02-26 13:28:44 +10:30
Toby Zerner
cfb89de251 Fix index result caching 2015-02-26 09:45:12 +10:30
Toby Zerner
9ea482254c Finish signup process, including state restoration 2015-02-25 15:34:02 +10:30
Toby Zerner
2c46888db5 Upgrade to L5 + huge refactor + more. closes #2
New stuff:
- Signup + email confirmation.
- Updated authentication strategy with remember cookies. closes #5
- New search system with some example gambits! This is cool - check out
the source. Fulltext drivers will be implemented as decorators
overriding the EloquentPostRepository’s findByContent method.
- Lay down the foundation for bootstrapping the Ember app.
- Update Web layer’s asset manager to properly publish CSS/JS files.
- Console commands to run installation migrations and seeds.

Refactoring:
- New structure: move models, repositories, commands, and events into
their own namespaces, rather than grouping by entity.
- All events are classes.
- Use L5 middleware and command bus implementations.
- Clearer use of repositories and the Active Record pattern.
Repositories are used only for retrieval of ActiveRecord objects, and
then save/delete operations are called directly on those ActiveRecords.
This way, we don’t over-abstract at the cost of Eloquent magic, but
testing is still easy.
- Refactor of Web layer so that it uses the Actions routing
architecture.
- “Actor” concept instead of depending on Laravel’s Auth.
- General cleanup!
2015-02-24 20:33:18 +10:30
Toby Zerner
011ae3603e Implement "renamed" posts
Record when the discussion was renamed, from what, and by whom.
Information is stored in the `content` field as a serialised JSON
object because proper polymorphism will be too difficult with Ember
Data and especially when extensions try to add new post types.
2015-02-13 10:23:38 +10:30
Toby Zerner
681de4244b Still show index pane when a discussion is created 2015-02-12 15:19:46 +10:30
Toby Zerner
c28307903b Upgrade to Ember 1.11-beta.1
HTMLBars goodness! Since there was some breakage and a lot of fiddling
around to get some things working, I took this opportunity to do a big
cleanup of the whole Ember app. I accidentally worked on some new
features too :3

Note that the app is still broken right now, pending on
https://github.com/emberjs/ember.js/issues/10401

Cleanup:
- Restructuring of components
- Consolidation of some stuff into mixins, cleanup of some APIs that
will be public
- Change all instances of .property() / .observes() / .on() to
Ember.computed() / Ember.observer() / Ember.on() respectively (I think
it is more readable)
- More comments
- Start conforming to a code style (2 spaces for indentation)

New features:
- Post hiding/restoring
- Mark individual discussions as read by clicking
- Clicking on a read discussion jumps to the end
- Mark all discussions as read
- Progressively mark the discussion as read as the page is scrolled
- Unordered list post formatting
- Post permalink popup

Demo once that Ember regression is fixed!
2015-02-10 18:05:40 +10:30
Toby Zerner
d45f2fd1ac Signup + modal refactoring 2015-02-08 15:59:39 +10:30
Toby Zerner
59964e3b22 Implement post editing 2015-02-08 15:55:33 +10:30
Toby Zerner
28d213d868 Implement discussion composition and creation 2015-02-06 14:07:15 +10:30
Toby Zerner
b4ea3af5b4 Make discussion in view when returning to index 2015-02-06 12:22:08 +10:30
Toby Zerner
3b375e9dc4 These are with the last commit 2015-02-06 10:34:12 +10:30
Toby Zerner
9ddc622929 Refactor index pane
So that it only loads when needed, and caches results so things are
nice and snappy
2015-02-06 10:32:45 +10:30
Toby Zerner
0365ae6c71 Load discussion and posts with one request
Speeds things up a heap.
Also fix a whole bunch of bugs with the post stream.
2015-02-06 10:30:38 +10:30
Toby Zerner
12b0418eb7 Improve post composer + replying
- Make it modular so that different entry points can show different
things and respond differently (reply, new discussion, edit post)
- Resizable
- Fullscreen
- Confirm on close
2015-02-02 16:57:59 +10:30
Toby Zerner
12622e6c28 Work on composer, early implementation of replying 2015-01-30 12:22:19 +10:30
Toby Zerner
c2feae406d Add ember-simple-auth, setup login
- Allow dropdown-buttons to render a partial
2015-01-30 12:21:18 +10:30
Toby Zerner
774b74dd0f Convert to int before checking start 2015-01-26 11:45:21 +10:30
Toby Zerner
df7da9338d Fix JSHint errors 2015-01-21 14:29:00 +10:30
Toby Zerner
74e80ea2df Implement redesign, refactor everything
- Write CSS for everything, update templates.
- Refactor discussion view. Stream is split into two components
(content and scrubber) which have their own responsibilities.
- Extract pane functionality into a mixin.
- Implement global “back button” system. You give a “paneable” target
to the application controller, the back button will modulate its
pane-related properties as necessary, and call an action when the
button is clicked.
- Extract welcome-hero into its own component.
- Lots of other general improvements/refactoring. The code is quite
well-commented so take a look!
2015-01-16 17:26:18 +10:30
Toby Zerner
690174297d Rejigging templates for redesign.
- Componentize more stuff, heading in the direction of Ember 2.0
- Start CSS from scratch
- Everything is broken atm!
2015-01-01 20:08:38 +10:30
Toby Zerner
1d8cda3c17 Get rid of some troublesome dependencies for now. 2014-12-20 21:06:15 +10:30
Toby Zerner
74db323f83 Hello world! 2014-12-20 16:56:46 +10:30