summary refs log tree commit diff
path: root/webclient/components (follow)
Commit message (Expand)AuthorAgeFilesLines
* Move webclient to a python module so that it can be installedMark Haines2014-11-0412-3166/+0
* Merge pull request #11 from matrix-org/webclient-room-data-restructureKegsay2014-11-046-422/+464
|\
| * SYWEB-116: Implement historical display name support.Kegan Dougal2014-11-042-2/+4
| * Rejig display names when paginating to lie less.Kegan Dougal2014-11-042-5/+15
| * Rejig order of checks/state updates/message insertions for m.room.member. Mar...Kegan Dougal2014-11-031-26/+23
| * Fix off-by-one bug when displaying display names / avatar urls when paginating.Kegan Dougal2014-11-031-0/+7
| * Reference the room_member key on messages which adjusts for current vs old_ro...Kegan Dougal2014-11-031-6/+16
| * Variable renaming, general cleanup. Don't feed state events from /initialSync...Kegan Dougal2014-11-031-33/+28
| * Fix bug which prevented room name invites appearing correctly.Kegan Dougal2014-11-032-85/+46
| * Fix bug which prevented the number of users being visible on the recents view.Kegan Dougal2014-11-031-2/+1
| * Remove events.rooms[room_id] entirely from event-handler-service.Kegan Dougal2014-11-032-229/+57
| * Make recents[controller/filter/html] use modelService.Kegan Dougal2014-11-032-13/+43
| * Make call stuff use modelService.Kegan Dougal2014-11-031-2/+2
| * Keep matrixService stateless and make matrixFilter use modelService.Kegan Dougal2014-11-034-49/+47
| * Prevent EventStreamService from knowing too much about the EventHandlerServic...Kegan Dougal2014-11-032-21/+20
| * Replace lots of .events.rooms[room_id] with .roomKegan Dougal2014-10-312-1/+7
| * room.html now displays messages from model-service. Add debugging fields. Hoo...Kegan Dougal2014-10-312-7/+18
| * Hook into more of event-handler-service and mimic its functions for now.Kegan Dougal2014-10-312-68/+130
| * Parse /initialSync data and populate the new data structures.Kegan Dougal2014-10-312-4/+33
| * Added model-service.js to store model data.Kegan Dougal2014-10-312-2/+100
* | SYWEB-136: Send m.images according to the spec.Kegan Dougal2014-11-042-4/+6
|/
* Factor out notification logic.Kegan Dougal2014-10-312-18/+29
* Add notification-service.js to handle binging/notifications. Shift logic to t...Kegan Dougal2014-10-312-68/+94
* SYWEB-63: Fix desktop notification message when notifying for an image.Kegan Dougal2014-10-311-0/+3
* SYWEB-12: Store unknown state events so they are displayed in the Room Info d...Kegan Dougal2014-10-301-0/+7
* SYWEB-112: Use the right user ID when determining invites for display on the ...Kegan Dougal2014-10-301-2/+9
* SYWEB-48: Better regex for binging on usernames.Kegan Dougal2014-10-291-1/+28
* SYWEB-98: Handle incoming m.room.redaction events.Kegan Dougal2014-10-291-0/+39
* SYWEB-98: Add redactEvent matrix API call.Kegan Dougal2014-10-291-0/+8
* Implement SYWEB-58: Clicking a notification now takes you to that room.Kegan Dougal2014-10-291-0/+6
* Fix SYWEB-110 : Prevent room ID leaking by looking for an m.room.nameKegan Dougal2014-10-271-1/+11
* HandleRoomMember: handle correctly prev_contentgiomfo2014-10-271-1/+1
* switch from the deprecated msg.content.prev to msg.prev_content.membership, a...Matthew Hodgson2014-10-241-1/+1
* more timestamp fixesMatthew Hodgson2014-10-171-2/+2
* Remove org.matrix.custom.text.html event type and replace it with 'format' an...Kegan Dougal2014-10-151-1/+0
* Add support for org.matrix.custom.text.htmlKegan Dougal2014-10-151-0/+1
* Merge branch 'turn' into developDavid Baker2014-09-252-3/+59
|\
| * Add stun server fallback and I-told-you-so message if we get no TURN server a...David Baker2014-09-251-17/+33
| * Refresh turn server before the ttl runs out. Support firefox.David Baker2014-09-241-14/+23
| * The REST API spec only alows for returning a single server so name theDavid Baker2014-09-241-1/+1
| * Hopefully implement turn in the web client (probably wrong for Firefox becaus...David Baker2014-09-242-3/+34
* | getUserDisplayName: Disambiguate users who have the same displayname in the r...Emmanuel ROHEE2014-09-251-0/+15
* | Fixed getUserDisplayname when the user has a null displaynameEmmanuel ROHEE2014-09-241-1/+1
* | Fixed SYWEB-74: Emote desktop notifications sometimes lack a name: "undefined...Emmanuel ROHEE2014-09-241-32/+49
* | SYWEB-27: Public rooms with 2 users must not considered as 1:1 chat room and ...Emmanuel ROHEE2014-09-241-2/+9
* | Added hasOwnProperty tests when required to be robust to random properties ad...Emmanuel ROHEE2014-09-242-1/+6
* | State data now provides up-to-date users displaynames. So use it first.Emmanuel ROHEE2014-09-242-50/+36
* | fix yet more room id leak disastersMatthew Hodgson2014-09-231-5/+12
* | manu: what's going on here?Matthew Hodgson2014-09-231-3/+4
* | use all new /rooms/<room id>/state to actually gather the state for rooms whe...Matthew Hodgson2014-09-231-1/+7
* | patch over another scenario whe we leak room IDs. i have *zero* idea why or ...Matthew Hodgson2014-09-231-1/+1
* | fix a case of rampaging SYWEB-78Matthew Hodgson2014-09-231-0/+5
* | remove old commented-out codeMatthew Hodgson2014-09-231-2/+1
* | fix one cause of SYWEB-53Matthew Hodgson2014-09-231-7/+4
|/
* fix NPEMatthew Hodgson2014-09-231-2/+1
* Show display name changes in the message list.Kegan Dougal2014-09-221-5/+23
* Merge branch 'master' of github.com:matrix-org/synapse into developErik Johnston2014-09-221-1/+1
|\
| * Fix undefined variable errorDavid Baker2014-09-191-1/+1
* | Propagate failure reason to the other party.David Baker2014-09-222-7/+8
* | Better logging of ICE candidates and fail the call when ICE fails.David Baker2014-09-221-2/+5
* | go back to the original behaviour of only notifying if we think the app is ba...Matthew Hodgson2014-09-201-8/+14
* | remove insanely busy logging which is killing CPUMatthew Hodgson2014-09-201-2/+6
* | Notify a callee that their browser doesn't support VoIP too.David Baker2014-09-192-1/+13
* | Join rooms if we're not already in them when accepting a call coming from tha...David Baker2014-09-191-0/+15
* | Merge branch 'videocalls' into developDavid Baker2014-09-191-12/+94
|\ \
| * | Prettier and stabler video with basic support for viewing mode. For now, tran...David Baker2014-09-181-3/+19
| * | WIP video chat layoutDavid Baker2014-09-181-0/+2
| * | Video calling (in a tiny box at the moment)David Baker2014-09-171-11/+75
* | | SYWEB-13 SYWEB-14: disabled "Call" button if the browser does not support all...Emmanuel ROHEE2014-09-191-0/+5
* | | SYWEB-13: disabled "Send image" button if the browser does not support HTML5 ...Emmanuel ROHEE2014-09-191-6/+16
* | | A kind of the typo in the fix of SYWEB-44Emmanuel ROHEE2014-09-191-2/+2
* | | Room id leaks: log them when then happens. Plus log the conditions that made ...Emmanuel ROHEE2014-09-191-0/+4
* | | Fixed SYWEB-16: When sending an invite over federation, the remote user sees ...Emmanuel ROHEE2014-09-191-22/+38
| |/ |/|
* | Oops. Removed dev logsEmmanuel ROHEE2014-09-181-1/+0
* | SYWEB-14: BF: rooms invitations were not visible in recents after launching/r...Emmanuel ROHEE2014-09-182-3/+18
* | undefined is empty. Fixed bug where empty bingWords with old accounts which h...Kegan Dougal2014-09-181-1/+1
* | SYWEB-40: Only local rooms are shown in the recents list.Emmanuel ROHEE2014-09-181-7/+0
* | Reverted patches done for SYWEB-40Emmanuel ROHEE2014-09-181-8/+2
* | Patch for SYWEB-40 : isStateEvent is not being set correctly, and really shou...Kegan Dougal2014-09-181-2/+8
* | unbreak calls in firefoxDavid Baker2014-09-181-1/+1
* | Create room entries for public rooms too so their public state is transferred...Kegan Dougal2014-09-171-0/+1
* | webclient SYWEB-3 : Public rooms are bold. Can't think of a nicer way which d...Kegan Dougal2014-09-172-0/+13
* | SYWEB-22: Format emote('/me') messages correctly in desktop notificationEmmanuel ROHEE2014-09-171-1/+7
* | SYWEB-15: Always show the room alias as well as its name in the UIEmmanuel ROHEE2014-09-171-54/+56
* | Bugfix when content isn't a string.Kegan Dougal2014-09-161-1/+1
* | Don't bing for sent messages. Handle cases where the member is unknown rather...Kegan Dougal2014-09-161-3/+8
* | Added basic RegExp support.Kegan Dougal2014-09-161-4/+2
* | Bing on all the things if there are 0 bing words.Kegan Dougal2014-09-161-0/+6
* | hidden/minimise/focus disaster disclaimer with the TODOKegan Dougal2014-09-161-0/+4
* | Added utility function containsBingWord and hook up some css to it.Kegan Dougal2014-09-161-30/+41
* | Added bing detection logic. Persist the display name of the user in localstor...Kegan Dougal2014-09-161-2/+35
* | Move the notification logic out of an individual room controller and into the...Kegan Dougal2014-09-161-1/+19
|/
* Time out calls from both ends properly.David Baker2014-09-162-8/+20
* WEB-29: Improve room page content loadingEmmanuel ROHEE2014-09-162-7/+25
* Use event age to recognise which calls are current and which aren't and hence...David Baker2014-09-162-15/+73
* Merge remote-tracking branch 'origin/develop' into webclient_data_centralisationEmmanuel ROHEE2014-09-161-23/+140
|\
| * Be consistent when associating keys with login types for registration/login.Kegan Dougal2014-09-151-1/+1
| * Make captcha work again with the new registration logic.Kegan Dougal2014-09-151-1/+21
| * Updated webclient to support the new registration logic.Kegan Dougal2014-09-151-23/+120
* | Filter room where the user has been bannedEmmanuel ROHEE2014-09-151-0/+16
* | Recents must not show temporary fake messagesEmmanuel ROHEE2014-09-151-0/+24
* | Recents uses data directly from $rootscope.eventsEmmanuel ROHEE2014-09-151-8/+35
|/
* BF: presence and eventMap were not reset at logout.Emmanuel ROHEE2014-09-151-10/+14
* Send multiple candidates at once instead of all individually. Changes spec to...David Baker2014-09-122-9/+58
* Clean data when user logs outEmmanuel ROHEE2014-09-121-6/+18
* Retry sending events that fail to send.David Baker2014-09-121-11/+28
* Always pick the incoming call if we've not yet sent out our invite, otherwise...David Baker2014-09-122-5/+14
* Remove the local AV stream from ourselves when handing it off to a new call o...David Baker2014-09-121-0/+6
* Added edition of room nameEmmanuel ROHEE2014-09-121-0/+7
* Show room name updates in room history and recents.Emmanuel ROHEE2014-09-122-38/+42
* BF: temp workaround while /initialSync on a particular room is not availableEmmanuel ROHEE2014-09-121-0/+5
* few fixes for errors in glare conditions. still seem to end up with no audio ...David Baker2014-09-111-4/+3
* Put back the line that adds the stream to the invite, otherwise caller->calle...David Baker2014-09-111-0/+1
* Fix bug where web client wold break trying to add the earliest token without ...David Baker2014-09-111-12/+1
* start towards glare support (currently not much better but no worse than befo...David Baker2014-09-112-57/+106
* Show room topic change in the chat history and in the recentsEmmanuel ROHEE2014-09-111-4/+21
* getRoomEventIndex: improved speed for what it is usedEmmanuel ROHEE2014-09-111-3/+4
* Merge remote-tracking branch 'origin/develop' into webclient_initialSyncEmmanuel ROHEE2014-09-101-5/+9
|\
| * Less buggy rejection of calls when busyDavid Baker2014-09-101-5/+9
* | Reenabled transparent echo message. It turns to opaque without flickering now.Emmanuel ROHEE2014-09-101-2/+32
* | Member event: store use the the latest oneEmmanuel ROHEE2014-09-101-2/+7
* | Removed wrong comments about recents-controller.js: it uses $rootScope.rooms ...Emmanuel ROHEE2014-09-101-3/+2
* | dedup events: state events conflict with messages events. Do not consider the...Emmanuel ROHEE2014-09-101-7/+9
* | Reenabled handle of room states events in initialSync but do not add them to ...Emmanuel ROHEE2014-09-102-13/+13
* | Presence events do not have event id. Do not discard themEmmanuel ROHEE2014-09-101-2/+2
* | Improved requests: pagination is done from the data received in initialSyncEmmanuel ROHEE2014-09-102-6/+31
|/
* Hangup call if user denies media access.David Baker2014-09-091-0/+2
* Don't try setting up the call if the user has canceled it before allowing per...David Baker2014-09-091-0/+4
* Don't break if you press the hangup button before allowing media permission.David Baker2014-09-091-1/+1
* Don't play an engaged tone if we hang up locally.David Baker2014-09-091-3/+8
* make calls work in FirefoxDavid Baker2014-09-091-8/+21
* Show call invites in the message tableDavid Baker2014-09-091-0/+3
* Add ability to set topic by double-clicking on the topic text then hitting en...Kegan Dougal2014-09-082-0/+20
* Fixed bug which displayed an older room topic because it was being returned f...Kegan Dougal2014-09-081-1/+13
* Display the room topic in the room, underneath the name of the room.Kegan Dougal2014-09-081-0/+11
* Added big massive TODOs on a huge design problem with initial syncKegan Dougal2014-09-081-0/+2
* matrixService.rooms must be renamed matrixService.initialSync nowEmmanuel ROHEE2014-09-082-3/+4
* App startup improvements:Emmanuel ROHEE2014-09-082-6/+6
* add sounds to the calling interfaceDavid Baker2014-09-081-12/+34
* fix desktop notifs, which were broken in eab463fdMatthew Hodgson2014-09-081-1/+1
* disable broken event dup suppression, and fix echo for /meMatthew Hodgson2014-09-081-2/+9
* Set the room_alias field when we encounter a new one, rather than only from l...Kegan Dougal2014-09-081-2/+1
* dedup all eventsMatthew Hodgson2014-09-061-31/+42
* handle m.room.aliases for id<->alias mapping; remove local_storage map; stop ...Matthew Hodgson2014-09-063-3/+40
* Added captcha support on both the HS and web client.Kegan Dougal2014-09-051-4/+21
|\
| * Added a captcha config to the HS, to enable registration captcha checking and...Kegan Dougal2014-09-051-1/+0
| * Modified matrixService.register to specify if captcha results should be sent ...Kegan Dougal2014-09-051-4/+22
* | Better call bar (visually: still lacks ring[back] tones).David Baker2014-09-062-2/+12
|/
* Created kick & unban methods in matrixService. Made some factorisation.Emmanuel ROHEE2014-09-051-11/+21
* BF: Make /unban work againEmmanuel ROHEE2014-09-051-1/+1
* Fixed empty display name (content.displayname in a room member can be null)Emmanuel ROHEE2014-09-051-1/+3
* Revert "Fixed empty display name (content.displayname in a room member can be...Emmanuel ROHEE2014-09-051-6/+0
* Fixed empty display name (content.displayname in a room member can be null)Emmanuel ROHEE2014-09-051-0/+6
* switch IRC-style command parser to use regexps rather than split(" ") so that...Matthew Hodgson2014-09-041-3/+8
* BF: presence PUT requests stopped to work with old "state" param yesterday ev...Emmanuel ROHEE2014-09-041-1/+1
* Added mUserDisplayName, a filter to resolve a user display name from a user_idEmmanuel ROHEE2014-09-041-0/+33
* Moved mRoomName filter into matrix-filter.js, a place for all generic filters...Emmanuel ROHEE2014-09-041-0/+100
* Merge branch 'develop' of github.com:matrix-org/synapse into developDavid Baker2014-09-039-17/+86
|\
| * Fix ban pathErik Johnston2014-09-031-1/+1
| * Fix a few cases where we used user_id instead of state_keyErik Johnston2014-09-031-1/+1
| * Use /rooms/$room_id/state/m.room.member/$user_id to change the membership of ...Emmanuel ROHEE2014-09-031-1/+13
| * fix the copyright holder from matrix.org to OpenMarket Ltd, as matrix.org has...Matthew Hodgson2014-09-039-9/+9
| * Add support for room namesErik Johnston2014-09-031-1/+14
| * Do not define power level limits in setUserPowerLevel. Update the function to...Emmanuel ROHEE2014-09-031-34/+2
| * Added /deop $user_idEmmanuel ROHEE2014-09-031-2/+27
| * BF: Do not be polluted by ops events that come when paginating backEmmanuel ROHEE2014-09-031-2/+5
| * Added /op $user_id $powerLevelEmmanuel ROHEE2014-09-032-6/+42
| * Added /ban commandEmmanuel ROHEE2014-09-031-1/+13
* | Make registering and logging in with a threepid work in the webclient.David Baker2014-09-031-4/+10
|/
* Handle "m.room.create" in order to inform controllers about new roomsEmmanuel ROHEE2014-09-021-2/+14
* Represent user power level in a room by a red bar at the bottom of his avatar...Emmanuel ROHEE2014-09-022-0/+42
* change the world: make the default matrix API URL prefix /_matrix rather than...Matthew Hodgson2014-08-312-7/+7
* nasty big monolithic commit of a whole bunch of UI/UX improvements:Matthew Hodgson2014-08-311-5/+9
* Give basic feedback on the state of VoIP calls in the UI.David Baker2014-08-291-1/+2
* better support for call hangupsDavid Baker2014-08-291-16/+16
* The away state is unavailable not offlineEmmanuel ROHEE2014-08-291-7/+7
* Oops, forgot a s/sendObject/sendEvent/ - make messages work again!David Baker2014-08-291-1/+1
* Don't break if the call ends before it connectsDavid Baker2014-08-291-12/+20
* Change call signalling messages to be their own types of room events rather t...David Baker2014-08-294-17/+26
* Merge branch 'voip' into developDavid Baker2014-08-293-1/+332
|\
| * More basic functionality for voip calls (like hanging up)David Baker2014-08-292-4/+68
| * First basic working VoIP call supportDavid Baker2014-08-282-15/+134
| * WIP voip support on web clientDavid Baker2014-08-273-1/+149
* | Added a timeout(40s) to $http stream requests (/events) in order to be notifi...Emmanuel ROHEE2014-08-292-10/+27
* | Renamed matrixService.assignRoomAliases into getRoomAliasAndDisplayNameEmmanuel ROHEE2014-08-291-26/+30
* | Added waitForInitialSyncCompletion so that clients can know when they can acc...Emmanuel ROHEE2014-08-282-9/+24
* | BF: Made member events parsing work (handleEvents expects an array of events)Emmanuel ROHEE2014-08-281-8/+4
|/
* Moved assignRoomAliases into a central piece: matrixService for nowEmmanuel ROHEE2014-08-271-0/+34
* Support limit and feedback param of initialSyncEmmanuel ROHEE2014-08-271-2/+11
* Renamed /ds to /directoryKegan Dougal2014-08-271-1/+1
* Renamed /public/rooms to /publicRoomsKegan Dougal2014-08-271-1/+1
* fix joining rooms on webclientDavid Baker2014-08-271-1/+2
* Renamed /rooms to /createRoom. Removed ability to PUT raw room IDs, and remov...Kegan Dougal2014-08-271-1/+1
* Removed MessageRestServlet, use RoomSendEventRestServlet instead. Updated cmd...Kegan Dougal2014-08-261-6/+5
* Renaming: /im/sync >> /initialSync. /rooms/$roomid/members/list >> /rooms/$ro...Kegan Dougal2014-08-261-3/+3
* Determine and send user presence stateEmmanuel ROHEE2014-08-262-0/+130
* webclient: Updated to use /rooms/$roomid/[invite|join|leave]Kegan Dougal2014-08-261-7/+11
* Adjusted webclient to use new state paths. Updated membership msg template to...Kegan Dougal2014-08-262-39/+12
* Merge branch 'develop' of github.com:matrix-org/synapse into release-v0.0.1Erik Johnston2014-08-221-5/+13
|\
| * Update web client to use new IS API.David Baker2014-08-221-5/+13
* | Keep track of people's presence and query that when we update the members list.Erik Johnston2014-08-221-0/+3
* | Reinitialize room when creating a RoomController so that we start off with a ...Erik Johnston2014-08-221-1/+11
* | Make the content repo work with in daemon mode. Return the full url on upload...Erik Johnston2014-08-221-1/+1
* | resizeImage: generate an image in the format of the original image. (Tested w...Emmanuel ROHEE2014-08-221-1/+3
* | Safari needs the img.onload event before actually working on the imgEmmanuel ROHEE2014-08-222-27/+39
* | actually display room metadata based on m.room.membe eventsMatthew Hodgson2014-08-211-0/+11
* | Only start event streaming after having set up the controllers.Erik Johnston2014-08-211-0/+10
* | Change webclient to always hit the im sync api before streaming so we get cur...Erik Johnston2014-08-211-6/+35
|/
* Generate thumbnail client side and send its URL and info with the image messa...Emmanuel ROHEE2014-08-212-6/+137
* Made uploadContent compatible for sending Blob objectsEmmanuel ROHEE2014-08-211-4/+22
* Added resizeImage()Emmanuel ROHEE2014-08-211-1/+86
* Send images with their imageInfo (size, mymetype, width & height)Emmanuel ROHEE2014-08-203-4/+57
* Merge branch 'master' of github.com:matrix-org/synapse into sql_refactorErik Johnston2014-08-191-3/+1
|\
| * Cleaned dead codeEmmanuel ROHEE2014-08-191-3/+1
* | Merge branch 'master' of github.com:matrix-org/synapse into sql_refactorErik Johnston2014-08-193-19/+44
|\|
| * Change mouse cursor to pointer on elements user can click onEmmanuel ROHEE2014-08-191-1/+4
| * Implemented GETs for the ContentRepoResource. It all actually appears to be w...Kegan Dougal2014-08-181-2/+3
| * Auth content uploads. Added a mapping function from request > filename. Added...Kegan Dougal2014-08-182-18/+29
| * Support room alias in rooms URL (ex: http://127.0.0.1:8000/#/room/#public:loc...Emmanuel ROHEE2014-08-181-0/+10
* | Change the way pagination works to support out of order events.Erik Johnston2014-08-192-3/+2
|/
* Increase /events timeout to 30 secs. We don't need it so low anymore to get a...Kegan Dougal2014-08-181-1/+1
* Do not start the event stream if the user is not logged in (=if he does not h...Emmanuel ROHEE2014-08-181-5/+14
* When new invites come down, update the My Rooms list. Added hacks to make the...Kegan Dougal2014-08-151-8/+11
* Remove old polling stuff from RoomController. Added service comments. Do not ...Kegan Dougal2014-08-152-4/+17
* Event streaming now happens on an app level, rather than a per-room level. Ma...Kegan Dougal2014-08-151-5/+57
* Store messages in $rootScope so they can be accessed from multiple controller...Kegan Dougal2014-08-151-2/+24
* Added event handler service which.. handles events. More specifically, it $br...Kegan Dougal2014-08-152-4/+100
* Added event stream service which neatly blobs together requests / state for t...Kegan Dougal2014-08-152-0/+78
* Create a temporary upload service server side (by hacking demos/webserver.py)...Emmanuel ROHEE2014-08-141-0/+47
* webclient: You can now paginate in rooms. Defaults to 10 messages, with a but...Kegan Dougal2014-08-141-0/+11
* Move the unknown token broadcast to the interceptor. Return the $http promise...Kegan Dougal2014-08-141-20/+1
* Detect when the user access token is no more valid and log the user out in th...Emmanuel ROHEE2014-08-141-2/+12
* Created m-file-input. A directive to open a file selection dialog on whatever...Emmanuel ROHEE2014-08-141-0/+43
* Room: Added a text input to type an image URL in order to send an image messageEmmanuel ROHEE2014-08-131-0/+11
* add in copyrights to everything, not just the synapse subdir, and add a copyr...Matthew Hodgson2014-08-131-0/+16
* Fix the 'Go to room' button to use the correct room alias apiErik Johnston2014-08-121-0/+9
* Reference Matrix Home Servermatrix.org2014-08-121-0/+307