Commit graph

  • 88f7482b92 Perform the 'REST'-level tests of Presence against the real Presence handler as well, mocking out the datastore beneath it Paul "LeoNerd" Evans 2014-08-18 16:52:29 +0100
  • 83f031207e Implement and test presence dropping of remote users Paul "LeoNerd" Evans 2014-08-18 16:43:18 +0100
  • 6fafa878f6 Deny __iter__ on UserID/RoomID/RoomName instances as it's a subtle bug that will bite you Paul "LeoNerd" Evans 2014-08-18 16:07:14 +0100
  • bb793019a5 Rename MockHttpServer to MockHttpResource as it stands for one server resource rather than an entire server Paul "LeoNerd" Evans 2014-08-18 14:03:07 +0100
  • f48792eec4 Reduce the amount of incredibly spammy stack traces. Expected errors (e.g. SynapseErrors) shouldn't have their full trace logged every time. Don't send responses to disconnected requests. Kegan Dougal 2014-08-19 10:55:44 +0100
  • 509ce6c137 Change mouse cursor to pointer on elements user can click on Emmanuel ROHEE 2014-08-19 11:37:07 +0200
  • ff21d4d93b Merge remote-tracking branch 'origin/master' into user_page Emmanuel ROHEE 2014-08-19 09:44:50 +0200
  • d7a4f2ed7f Fill user page with avatar, display name and matrix id Emmanuel ROHEE 2014-08-19 09:37:10 +0200
  • 38f5c1c378 Made small avatar image center Emmanuel ROHEE 2014-08-19 09:24:35 +0200
  • f144f8cc56 Use $location.url to open the user profile page. The user page URL is then the one expected: http://127.0.0.1:8000/#/user/@Manu:localhost:8080 insteaf of http://127.0.0.1:8000/#/user/@Manu:localhost:8080#public:localhost:8080 Emmanuel ROHEE 2014-08-19 09:06:21 +0200
  • c3f1548bb4 Added link to user profile pages Emmanuel ROHEE 2014-08-19 08:58:53 +0200
  • cdc5ffe2a2 show private room_ids rather than nulls in notifs if there is no room_alias Matthew Hodgson 2014-08-18 17:14:43 +0100
  • e37b040bc3 Small amounts of cleanup and bonus round comments. Kegan Dougal 2014-08-18 17:22:31 +0100
  • 58548ab557 Implemented GETs for the ContentRepoResource. It all actually appears to be working. Kegan Dougal 2014-08-18 17:18:39 +0100
  • 590ab24c85 hs: Make the uploads directory if it doesn't exist. Namespace uploads by the base64 encoded user id of the uploader. Make a reasonable attempt to retry clashing upload paths. Try to guess a sensible file extension depending on the content type. Kegan Dougal 2014-08-18 16:18:11 +0100
  • 35da1bf4a3 Auth content uploads. Added a mapping function from request > filename. Added exception handling for content uploads. webclient: Only prefix the client API path on doRequest, not doBaseRequest (this would've broken the identity server auth too). Added matrixService.uploadContent. May not require mFileUpload anymore. Kegan Dougal 2014-08-18 15:50:55 +0100
  • a18b1a649c Added /matrix/content path, HS resource_for_content_repo attribute and FileUploadResource. Added stub methods. Kegan Dougal 2014-08-18 15:01:08 +0100
  • ecfdf23250 Created boilerplate for user profile page Emmanuel ROHEE 2014-08-18 18:05:42 +0200
  • 301e55d11d In members list, on avatar mouseover, show a tooltip with the user matrix id Emmanuel ROHEE 2014-08-18 17:49:50 +0200
  • f8693c6b48 Join room: open the room URL with the room alias in it Emmanuel ROHEE 2014-08-18 17:41:23 +0200
  • 43772d0b15 Support urlencoded room aliases in room URL Emmanuel ROHEE 2014-08-18 17:40:05 +0200
  • 1422a22970 Fix typos in SQL and where we still had rowid's (which no longer exist) Erik Johnston 2014-08-18 16:25:18 +0100
  • 4eb8f84aa8 Make snapshot_all_rooms return results in the correct form, including start and end tokens. Erik Johnston 2014-08-18 16:20:21 +0100
  • cebceb7b9d If possible, use href with room alias in rooms list Emmanuel ROHEE 2014-08-18 17:14:57 +0200
  • e5257b21b3 Support room alias in rooms URL (ex: http://127.0.0.1:8000/#/room/#public:localhost:8080) Emmanuel ROHEE 2014-08-18 17:11:08 +0200
  • 709a92cee8 SQL doesn't allow AUTOINCREMENT on non PRIMARY KEY columns. Erik Johnston 2014-08-18 16:00:46 +0100
  • b4a1f2ccb5 Merge branch 'master' of github.com:matrix-org/synapse into sql_refactor Erik Johnston 2014-08-18 15:53:40 +0100
  • fc26275bb3 Add two different columns for ordering the events table, one which can be used for pagination and one which can be as tokens for notifying clients. Also add a 'processed' field which is currently always set to True Erik Johnston 2014-08-18 15:50:41 +0100
  • b37ced8f63 Update the default longpoll timeout time. Kegan Dougal 2014-08-18 14:30:07 +0100
  • c12f55aa3b Increase /events timeout to 30 secs. We don't need it so low anymore to get around request suppression when changing rooms, since there is just a single event stream now. Kegan Dougal 2014-08-18 14:25:20 +0100
  • faf25e3a83 Allow room presence visibility between users who share a room Paul "LeoNerd" Evans 2014-08-18 13:41:43 +0100
  • 7d324612ec Precent lack of presence visiblity from causing room /members/list to fail Paul "LeoNerd" Evans 2014-08-18 13:17:35 +0100
  • 1c2caacd67 Merge branch 'master' of github.com:matrix-org/synapse into sql_refactor Erik Johnston 2014-08-18 11:14:57 +0100
  • 663a259d64 Change the MemoryDataStore to implement new storage api Erik Johnston 2014-08-18 11:08:03 +0100
  • 291010f100 Not all event streams returns SynapseEvents Erik Johnston 2014-08-18 11:06:59 +0100
  • 2f91d16033 We don't need to do a json.loads here Erik Johnston 2014-08-18 11:00:22 +0100
  • 1a1e0384ef Ensure we have a 'membership' key in RoomMemberEvents Erik Johnston 2014-08-18 10:59:57 +0100
  • bc2512fa95 Don't bother generating png's Erik Johnston 2014-08-18 10:59:34 +0100
  • dccb2f57be Disable the ability to GET individualy messages. We need to think about the correct API to do this, as the current one doesn't make much sense. Erik Johnston 2014-08-18 10:59:04 +0100
  • f65176564f webclient: Tweak namespace of auto-complete directive. ng- should really only be used for official ng directives. Kegan Dougal 2014-08-18 09:59:47 +0100
  • 71584930cb Disabled image upload UIs Emmanuel ROHEE 2014-08-18 10:54:43 +0200
  • 0b5674ccc5 Do not start the event stream if the user is not logged in (=if he does not has an access token yet) Add isUserLoggedIn to check this. Emmanuel ROHEE 2014-08-18 10:44:29 +0200
  • d5bebc9eaa Added another button to upload and send an image. The text input and its send button for sending an image URL will be removed once we have a true upload image service Emmanuel ROHEE 2014-08-14 18:53:05 +0200
  • 39ff6c840f make my emotes white again Matthew Hodgson 2014-08-18 01:30:58 +0100
  • 62b67879cd make text font sizes consistent add a gap between bubble-blocks from different users make sent-text lighter than received-text wrap the memberslist text more sensibly fix height of bubbles to match that of avatars (32px) Matthew Hodgson 2014-08-17 23:49:34 +0100
  • 60245c4f90 implement html5 notifications. (have to be explicitly requested under Config) Matthew Hodgson 2014-08-17 03:48:28 +0100
  • 48f4497fe9 unbreak login sequence (which spuriously required a sydent server to be specified, which login.html was no longer doing...) Matthew Hodgson 2014-08-17 03:47:58 +0100
  • 1c202f9f7a oops, debugging crept in Matthew Hodgson 2014-08-17 03:00:08 +0100
  • a56a346343 dial down logging Matthew Hodgson 2014-08-17 02:58:01 +0100
  • 00c0737b0e - use css3 to make avatars always the right aspect ratio - implement slightly overengineered tab/shift-tab autocomplete function Matthew Hodgson 2014-08-17 02:56:34 +0100
  • 831c218a93 autohyperlink messages using linky Matthew Hodgson 2014-08-16 22:21:52 +0100
  • 54c47f962b use minified angular by default Matthew Hodgson 2014-08-16 22:09:42 +0100
  • 1c36118d98 minified angularjs stuff to speed things up Matthew Hodgson 2014-08-16 22:07:47 +0100
  • 8c69eff14c improve infinite scrolling so it keeps paginating until you have a scrollbar (if it can) Matthew Hodgson 2014-08-16 22:05:31 +0100
  • f1d140eea8 remove log spam Matthew Hodgson 2014-08-16 22:02:52 +0100
  • fe25e65f3f disambiguate identical displaynames Matthew Hodgson 2014-08-16 20:48:05 +0100
  • e4770bb039 make presence timestamps less verbose Matthew Hodgson 2014-08-16 13:30:34 +0100
  • dc6212b6fb roll back b602834 as it made a bizarre subset of avatars go awol Matthew Hodgson 2014-08-16 13:28:04 +0100
  • ce4ca473cb order the members list by most recently active Matthew Hodgson 2014-08-16 13:22:47 +0100
  • b60283473a don't hammer a new hit for every displayname and avatar_url when we already have them in the members list... Matthew Hodgson 2014-08-16 13:22:18 +0100
  • 98ed3d0222 improve comment Matthew Hodgson 2014-08-16 01:52:03 +0100
  • 00e8be516a merge weirdness Matthew Hodgson 2014-08-16 01:48:44 +0100
  • fc846aa771 emergency bodges to turn off presence ACLs in order to make matrix.org:8080 actually work Matthew Hodgson 2014-08-16 01:47:17 +0100
  • 0f9b633af7 retcols is mandatory. i have no idea how this could ever have worked? Matthew Hodgson 2014-08-16 01:46:35 +0100
  • 207ef144c5 display mtime_age in webclient Matthew Hodgson 2014-08-16 01:07:23 +0100
  • 4068339770 slightly hacky but more functional infinite scrolling Matthew Hodgson 2014-08-16 00:14:47 +0100
  • 9f7c5f161c switch some elements from being styled by class to styled by id Matthew Hodgson 2014-08-15 23:24:42 +0100
  • 60a9f27edb Formatting Kegan Dougal 2014-08-15 17:58:51 +0100
  • 7f5c7ddea9 Merge branch 'master' of github.com:matrix-org/synapse into sql_refactor Erik Johnston 2014-08-15 17:50:27 +0100
  • 0e6a2f87f9 Get presence for members when you enter a room (it was coming down but wasn't being stored in the right place) Kegan Dougal 2014-08-15 17:47:45 +0100
  • f5fca6f787 Fix some of the tests to reflect changes in the storage layer. Erik Johnston 2014-08-15 17:42:21 +0100
  • 5b817ecd44 Added infinite scrolling. It's sliiiightly buggy in that it jumps down the list a bit, but it is overall working pretty well. Added ng-infinite-scroll-matrix.js and jquery-1.8.3 as deps. Kegan Dougal 2014-08-15 17:42:02 +0100
  • 02e45da895 When new invites come down, update the My Rooms list. Added hacks to make the display name a bit nicer (/im/sync needs to return room aliases / membership events better) Kegan Dougal 2014-08-15 15:40:37 +0100
  • 1731781145 Document that /rooms/:room_id/members/list yields profile and presence information about room members Paul "LeoNerd" Evans 2014-08-15 17:24:02 +0100
  • 9c41f635a9 When starting to poll for presence, also include members of all shared rooms Paul "LeoNerd" Evans 2014-08-15 17:12:07 +0100
  • 40c020ad13 Merge branch 'master' of github.com:matrix-org/synapse into sql_refactor Erik Johnston 2014-08-15 16:48:16 +0100
  • ec1fd20e59 Also include users' presence when responding to /rooms/:room_id/members/list Paul "LeoNerd" Evans 2014-08-15 16:47:50 +0100
  • 0e938b1ff7 Rename method name to not clash with other ones in storage. Erik Johnston 2014-08-15 16:47:48 +0100
  • 6efc688917 Fix typo of key name Erik Johnston 2014-08-15 16:47:09 +0100
  • 506711749f We no longer need to special case room config events. Erik Johnston 2014-08-15 16:45:16 +0100
  • a17b371384 Merge branch 'master' of github.com:matrix-org/synapse into sql_refactor Erik Johnston 2014-08-15 16:21:13 +0100
  • d260a42ca2 PEP8 cleanups Erik Johnston 2014-08-15 16:17:36 +0100
  • 8fa3cc37f9 Comment. Erik Johnston 2014-08-15 16:11:25 +0100
  • 19946509a4 Support generic events. Erik Johnston 2014-08-15 16:06:08 +0100
  • cd2967d271 Fix bug when generating a key when get_room_events_stream returned zero rows Erik Johnston 2014-08-15 16:05:46 +0100
  • 86be66c34e Actually use MAX_STREAM_SIZE constant. Erik Johnston 2014-08-15 16:04:54 +0100
  • 8d1f763209 Fix pagination to work with new db schema Erik Johnston 2014-08-15 15:53:06 +0100
  • 3c532314ec Fix imsync's SELECT query to only find the rooms I'm actually joined in, not every room I have ever joined Paul "LeoNerd" Evans 2014-08-15 15:44:53 +0100
  • 01f089d9fb Correctly return new token when returning events. Serialize events correctly. Erik Johnston 2014-08-15 15:28:54 +0100
  • 5c88e57555 Create a room-nuking script as it's useful for emergency debugging Paul "LeoNerd" Evans 2014-08-15 15:06:36 +0100
  • 5ac87292c4 Remove old polling stuff from RoomController. Added service comments. Do not start the event stream on startup unless you have credentials. Kegan Dougal 2014-08-15 14:06:48 +0100
  • 7ddb7a5cbb Event streaming now happens on an app level, rather than a per-room level. Make eventStreamService manage it's own repolling provided no one calls stop() on it. Couple the stream with eventHandlerService so any controller can just blithely call eventStreamService.resume() and expect to 'get stuff' without having to handle promises (though resume() still returns a promise for that request and proxies it through $q). Kill and reset the stream if you logout. Kegan Dougal 2014-08-15 13:43:07 +0100
  • c51cf4efca Store messages in $rootScope so they can be accessed from multiple controllers without duplicated storage for each. This also gives updates. Kegan Dougal 2014-08-15 12:51:20 +0100
  • 5dbceaf5a4 Added event handler service which.. handles events. More specifically, it $broadcasts events depending on their type, and does processing on events (shuffling keys, adding events to $rootScope so displays will automatically update, sending delivery receipts, and so on). Some of this logic was previously contained in the RoomController, which fails the moment you add >1 room into the mix, hence requiring a Service to handle events, rather than having each individual controller maintain their part of the world. Kegan Dougal 2014-08-15 11:31:13 +0100
  • 8bf3994c2e Added event stream service which neatly blobs together requests / state for the event stream. This depends on matrix service to do the actual hit. Currently this has exactly the same behaviour as before. Kegan Dougal 2014-08-15 10:20:14 +0100
  • 114984a236 Start chagning the events stream to work with the new DB schema Erik Johnston 2014-08-15 13:58:28 +0100
  • d72f897f07 Merge branch 'master' of github.com:matrix-org/synapse into sql_refactor Erik Johnston 2014-08-15 11:50:14 +0100
  • c5f2da5875 Add a check to make sure that during state conflict res we only request a PDU we don't have. Erik Johnston 2014-08-15 11:47:01 +0100
  • 1a26905cc9 Fix pontenial bug in state resolution handler that compared dicts rather than their id's Erik Johnston 2014-08-15 11:41:11 +0100
  • 33d62c2c66 Remember to reflect membership LEAVE events to the leaving member so they know it happened Paul "LeoNerd" Evans 2014-08-15 11:40:58 +0100