* Add user-session awareness
- only show remix button if user is logged in (TBD: probably will want to hide if project creator == user)
* decorate text with @mentions and #hashtags
* Add studios, loves, favs
* In-place editing of title and description if current user is author and project shared (with validation)
* checkbox needed a default value
* general-error is passed a ref by formsy - cannot be stateless function
* add missing `label` prop to input field
* add missing proptypes to phoneinput.
- Moved preview state into redux
- Gets remix credit if the project is a remix
- Shows up to 5 remixes (direct children?)
- handles empty remixes result (it’s not an array)
- Added Column component - based on Grid, but doesn’t use frameless to set width.
- allows trailing ‘/‘ on the URL
- cleaned up conditional content
Setting onClick to onNextStep directly caused click event data to be passed in handleAdvanceStep, which then merged it with the formData state in student registration. This caused issues.
See this StackOverflow answer: https://stackoverflow.com/a/18853002/4633828
This isn't a perfect fix - we have to set `color` explicitly, rather
than use `inherit`, because we want the text color to be the same when
the select element is focused. That means both `color` and
`text-shadow`'s color have to be explicitly set to the same thing
(otherwise they might not match). Yay, hacks!
..since it's the only property which actually animates. (The background
image also changes on hover/focus, but that isn't visually effected by
transition, so we ignore it.)
This is for the next commit. Without this, the focus ring slowly
disappears, and the text slowly becomes the color it's meant to be;
neither of those are good.
This incorporates a fallback image into the thumbnail component for all of project, studio and avatar thumbnails using the `onerror` property of img elements (which is supported across all browsers).
/cc @thisandagain @rschamp