Commit graph

244 commits

Author SHA1 Message Date
Luke Barnard
2bc8d6d3a4 Use less confusing values on radio buttons 2018-03-29 17:25:06 +01:00
Luke Barnard
e9193ff0b6
Merge branch 'develop' into luke/feature-group-set-joinable 2018-03-29 17:01:19 +01:00
Luke Barnard
f42cdf6a4c Add radio button for setting group is_joinable
which dictates whether the group can be joined without invitation.
2018-03-29 16:57:07 +01:00
Luke Barnard
1226ad3330
Merge pull request #1815 from matrix-org/luke/feature-group-join
Join this community button
2018-03-29 15:44:46 +01:00
Luke Barnard
c4322892de Reword group setting delay 2018-03-29 14:33:54 +01:00
Luke Barnard
385211528d Implement "Join this community" button
for groups that have truthy summary.profile.is_joinable.
2018-03-29 12:39:09 +01:00
Luke Barnard
b80568b1c5 Wrap GeminiScrollbar in a component, enabled forceGemini
Fixes https://github.com/vector-im/riot-web/issues/6294
2018-03-27 13:04:26 +01:00
Luke Barnard
bc5699b3d7 Add change delay warning in GroupView settings 2018-03-14 18:17:15 +00:00
Luke Barnard
4037a22492 Fix bug where avatar change not reflected in LLP
Fixes vector-im/riot-web#6189
2018-03-01 14:40:03 +00:00
Michael Telatynski
1bc9d344ae
Merge branch 'develop' of github.com:matrix-org/matrix-react-sdk into t3chguy/nvl/rich_quoting
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>

# Conflicts:
#	src/components/views/messages/TextualBody.js
2018-01-10 11:54:58 +00:00
Aidan Gauland
35780f5ae0 Remove use of deprecated React.PropTypes
Replace all uses of React.PropTypes with PropTypes and importing PropTypes from
'prop-types'.
2017-12-26 14:03:18 +13:00
Michael Telatynski
5c229b9ef8
DRY matrix.to link generation so it is all changeable in one class
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-12-12 23:33:40 +00:00
Luke Barnard
7ec4010881 Make GroupStore use MatrixClientPeg
To avoid weirdness with using a cached matrix client
2017-11-28 11:54:05 +00:00
Luke Barnard
1a3ad5a342 Allow guests to view individual groups
For homeservers that still disallow guests (running synapse without https://github.com/matrix-org/synapse/pull/2715), start ILAG.
2017-11-28 11:52:46 +00:00
lukebarnard
9ed9422af8 Move group publication toggles to UserSettings 2017-11-27 17:24:42 +00:00
Stefan Parviainen
df6d5cc2b4 Pass plain components, rather than functions returning them 2017-11-14 20:09:52 +01:00
Stefan Parviainen
3afbaf61e7 Refactor i18n stuff a bit 2017-11-13 20:19:33 +01:00
Luke Barnard
266a504981 Use the same MatrixClient for the duration of GroupView lifecycle
Using the pegged matrix client would lead to trying to call removeListener on `null` when GroupView is unmounted during logout.
2017-11-10 10:49:14 +00:00
Luke Barnard
120e7b821f
Merge pull request #1585 from matrix-org/luke/groups-inviter-profile
Use the getProfileInfo API for group inviter profile
2017-11-08 10:24:00 +00:00
Luke Barnard
10778e075e Merge branch 'develop' into luke/groups-inviter-profile 2017-11-08 10:10:43 +00:00
Luke Barnard
4bb083d959 Style 2017-11-08 10:08:04 +00:00
Luke Barnard
f53f9ed8ca inviterProfile = null initially 2017-11-08 10:07:43 +00:00
Luke Barnard
4c47f75918
Merge pull request #1587 from matrix-org/luke/groups-add-rooms-with-visibility
Add checkbox to GroupAddressPicker for determining visibility of group rooms
2017-11-08 10:04:41 +00:00
Luke Barnard
8fbe50a1cf
Merge pull request #1580 from matrix-org/luke/groups-new-group-settings
Improve group creation UX
2017-11-07 18:55:34 +00:00
Luke Barnard
d777e370f2
Merge pull request #1583 from matrix-org/luke/groups-disable-rooms-whilst-editing
Disable RoomDetailList in GroupView when editing
2017-11-07 18:53:04 +00:00
Luke Barnard
edc744067f Add checkbox to GroupAddressPicker for determining visibility of group rooms 2017-11-07 18:51:41 +00:00
Luke Barnard
80d4873542 Disable RoomDetailList in GroupView when editing
Otherwise the rooms can be clicked on.
2017-11-07 16:54:28 +00:00
Luke Barnard
ed709f52d1 Use the getProfileInfo API for group inviter profile 2017-11-07 16:42:43 +00:00
Luke Barnard
ddc1ff2f23 Name things in a sane way 2017-11-07 15:13:26 +00:00
Luke Barnard
62305a1ccd Implement tooltip for group rooms 2017-11-07 14:07:31 +00:00
Luke Barnard
9019fee49e Adjust long desc placeholder text 2017-11-07 10:48:56 +00:00
Luke Barnard
956c5ff343 Use a constant for easy reading of long desc placeholder 2017-11-06 18:52:55 +00:00
Luke Barnard
477051cfa6 Add placeholder for when a long desc hasn't been set
this is only visible to group admins.
2017-11-06 18:35:52 +00:00
Luke Barnard
137f1311b3 Add useful placeholder for the long description textarea 2017-11-06 18:35:23 +00:00
Luke Barnard
36cd22663a Open group settings when the group is created 2017-11-06 18:02:50 +00:00
Luke Barnard
16dca08b77 Use constants instead of string literals 2017-10-31 16:13:13 +00:00
Luke Barnard
5bfed67463 Merge branch 'luke/groups-expose-ready-state' of github.com:matrix-org/matrix-react-sdk into luke/groups-expose-ready-state 2017-10-31 14:25:10 +00:00
Luke Barnard
d6cbc44e0f If groupRoomsLoading, replace RoomDetailList entirely with Spinner 2017-10-31 14:21:00 +00:00
Luke Barnard
45e15fd865
Merge branch 'develop' into luke/groups-expose-ready-state 2017-10-31 11:50:12 +00:00
Luke Barnard
775468e71a Display whether the group summary/room list is loading
This uses a `ready` flag assigned to each fetching API used by the GroupServer. I've avoided making this generic for now for want of not doing so early.
2017-10-31 11:42:09 +00:00
Luke Barnard
20bf69c3c2 Prevent non-members from opening group settings 2017-10-31 10:54:44 +00:00
Luke Barnard
14d600a69f Fix initial in GroupAvatar in GroupView 2017-10-30 15:04:12 +00:00
Luke Barnard
e094c32c62 Simplify GroupStore listener registration 2017-10-27 11:38:10 +01:00
Luke Barnard
9643784f85 Only show group settings cog to members
Non-members have no settings to change.
2017-10-26 14:31:27 +01:00
Luke Barnard
39fa866d68 Merge pull request #1535 from matrix-org/luke/fix-interactable-greyed-ui
Swap from `ui_opacity` to `panel_disabled`
2017-10-25 15:47:18 +01:00
Luke Barnard
37b55984ec Fix group Leave button tooltip 2017-10-25 12:09:13 +01:00
Luke Barnard
2f8f2ce76e Swap from ui_opacity to panel_disabled
to simplify the process of disabling panels in the UI.
2017-10-25 11:23:51 +01:00
Luke Barnard
459ffc47d6 Prevent editing of UI requiring user privilege if user unprivileged 2017-10-24 15:25:35 +01:00
Luke Barnard
e89371fb1c Add click-to-open-settings functionality to GroupAvatar 2017-10-23 14:54:57 +01:00
Luke Barnard
a85a011db9 Fix faulty translation in GroupView 2017-10-19 18:06:32 +01:00
Luke Barnard
2be0ebdd1d More Groups->Communities 2017-10-19 15:01:16 +01:00
Luke Barnard
bafa2c6be0 Fix typo 2017-10-19 12:03:59 +01:00
Luke Barnard
c3f143acc3 Merge branch 'develop' into luke/groups-are-communities 2017-10-19 11:31:00 +01:00
Matthew Hodgson
7fe8c9cb01 fix lint 2017-10-19 01:48:49 +02:00
Matthew Hodgson
1087b36597 fix editing visuals on groupview header 2017-10-18 17:49:49 +01:00
Luke Barnard
a40704f085 Merge branch 'develop' into luke/groups-are-communities 2017-10-18 15:57:37 +01:00
Luke Barnard
677c8e95ee Merge branch 'develop' into luke/groups-move-buttons 2017-10-18 10:31:54 +02:00
Luke Barnard
df9e037bfc Default values when GETing instead of when POSTing 2017-10-17 18:11:00 +01:00
Luke Barnard
3bbff627fc Fix bug preventing partial group profile
When updating the group profile, send empty strings instead of `null` as synapse does not expect `null`.
2017-10-17 17:26:34 +01:00
Luke Barnard
49b7525a67 Actually move the buttons in GroupView
- The "Leave" button is now in the top-right
 - The "Publish" button is not a checkbox
2017-10-17 16:10:34 +01:00
Luke Barnard
0415869b8c Add useful functions to GroupView to inspect user flags 2017-10-17 16:08:19 +01:00
Luke Barnard
626f007f4e Move membership section above long description textarea 2017-10-17 12:00:31 +01:00
Luke Barnard
7df3335570 Only show membership settings when editing 2017-10-17 11:59:52 +01:00
Luke Barnard
495465e865 Put invite accept/decline buttons in correct div to align them to the right 2017-10-17 11:59:16 +01:00
Luke Barnard
eaa5dd5f22 Groups -> Communities in the UI
Translation files still need updating, and this would be much simpler with a script that could automate the tedium
2017-10-16 13:18:39 +01:00
Luke Barnard
3468abc975 Use GeminiScrollbar instead of ScrollPanel 2017-10-13 17:49:52 +01:00
Luke Barnard
aaf32ac9a0 Lint 2017-10-13 16:57:52 +01:00
Luke Barnard
77418f535e Modify GroupView UI
- Remove featured users/rooms
 - Add "Rooms" section to show all rooms in the group in a room-directory-esque list. This has a "+" button in "edit" mode.
 - Make the group view body scrollable
2017-10-13 16:46:33 +01:00
Luke Barnard
4017fa7f1d Factor-out GroupStore and create GroupStoreCache
In order to provide feedback when adding a room to a group, the group summarry store needs to be extended to store the list of rooms in a group. This commit is the first step required.

The next step is to get the GroupRoomList listening to updates from GroupStore and expose the list of rooms from GroupStore.

(We're running out of words to describe the hierachy of things that store things)
2017-10-04 16:56:35 +01:00
Luke Barnard
6b9a2909df Add rule to enforce spacing in curly brackets in JSX children
This required an updated in version of eslint-plugin-react to 7.4.0.
2017-09-28 11:21:06 +01:00
Luke Barnard
f3b6b2cc06 Fix GroupView summary rooms displaying without avatars
- GroupView can now render with rooms in the summary that do not have an avatar
 - RoomAvatar no longer has a redundant fallback avatar (this is handled by BaseAvatar)
 - RoomAvatar was delinted
2017-09-27 16:18:15 +01:00
Luke Barnard
d52355f80e Implement adding rooms to a group (or group summary) by room ID 2017-09-27 15:30:58 +01:00
Luke Barnard
6bc9b32ab7 Fix ability to feature self in a group summary
By default the AddressPicker would omit the currently logged-in user. This adds a property to override that to allow "self" to be picked.
2017-09-27 11:04:41 +01:00
Luke Barnard
1ca9102442 Fix spinner appearing above RP header
By wrapping the spinner in the mx_MemberList class. Also, use mx_RoomHeader_cancelButton for group settings cancel
2017-09-27 10:36:44 +01:00
David Baker
8d0983ab02 Fix group membership publicity
* Read the new flag in the summary API (the one we were reading
   was actually whether the group server listed you as a member to
   non-members).
 * Remove call to now-dead _loadGroupFromServer andf use the store
   instead
2017-09-26 14:46:57 +01:00
David Baker
af2df77b8e Merge pull request #1418 from matrix-org/luke/groups-summary-store
Create GroupSummaryStore for storing group summary stuff
2017-09-25 14:59:32 +01:00
Luke Barnard
83e6218930 Remove listeners from group summary store on unmount 2017-09-25 14:49:12 +01:00
Luke Barnard
8e7d58797d _loadGroupFromServer -> _initGroupSummaryStore 2017-09-25 14:48:49 +01:00
David Baker
1a82f121c0 lint 2017-09-25 13:17:07 +01:00
Luke Barnard
b8dca58f4f Pass matrixClient as an argument to GSS constructor 2017-09-25 10:02:13 +01:00
David Baker
af73f1c3bb Add status & toggle for publicity
This doesn't work at the moment because it looks like it's broken
in synapse as per https://github.com/matrix-org/sytest/pull/391

But if it did work, the client side code might look something
like this.
2017-09-22 19:27:02 +01:00
Luke Barnard
791bc5e7ac Create GroupSummaryStore for storing group summary stuff
- Acts as a layer between GroupView and the group APIs that modify the summary individually. This allows for abstraction of getting the new summary once a successful API hit has been done.
 - The plan is to also control the avatar, topic, body of the summary via the same class
2017-09-22 18:52:06 +01:00
Luke Barnard
4c1a85cb71 Merge pull request #1415 from matrix-org/luke/groups-remove-featured-rooms-and-users
Implement removal function of features users/rooms
2017-09-22 16:32:40 +01:00
Luke Barnard
3f9d20de97 Implement removal function of features users/rooms
With the appeareance of a "X" in the top right of each featured item when editing.

NB: No reloading of summary is done after adding/removing a user/room. The plan is to better than threading a callback all the way down.
2017-09-22 15:56:35 +01:00
Luke Barnard
c19ee66565 Merge pull request #1408 from matrix-org/luke/groups-membership-section-redesign
Redesign membership section in GroupView
2017-09-21 17:49:47 +01:00
Luke Barnard
3351770b54 Fix dodgy merge 2017-09-21 17:26:16 +01:00
Luke Barnard
d75efb83f1 Merge branch 'develop' into luke/groups-membership-section-redesign 2017-09-21 17:25:12 +01:00
Luke Barnard
cf23ac5931 Merge branch 'develop' into luke/groups-add-feature-rooms 2017-09-21 17:20:12 +01:00
David Baker
3c2e6fdf9e Honour the is_privileged flag in GroupView 2017-09-21 16:55:56 +01:00
Luke Barnard
5f840a3031 Implement adding rooms to the group summary
This includes making UserPickerDialog more generic such that it can also pick rooms from groups.
2017-09-21 16:53:10 +01:00
Luke Barnard
16f5a667c6 Redesign membership section in GroupView 2017-09-21 15:03:30 +01:00
Luke Barnard
3f0e596e97 Only show "Add" button when editing the group 2017-09-21 12:44:17 +01:00
Luke Barnard
4d9c43b3c8 Display dialog when errors occur whilst featuring users 2017-09-21 12:34:16 +01:00
Luke Barnard
03ddb63507 Remove redundant slice 2017-09-21 10:34:11 +01:00
Luke Barnard
5471431ee5 Disable "Add a Room" button for when we have a room picker 2017-09-20 17:02:20 +01:00
Luke Barnard
adf0a79585 Implement avatar, displayname for featured users
Profile data has been added to the API response for users in the group summary
2017-09-20 16:54:12 +01:00
Luke Barnard
1c1bf82c2a Add users to group summary using new API 2017-09-20 16:32:02 +01:00
Luke Barnard
44c38652ab Implement UserPickerDialog for adding users
Also, use AccessibleButtons.
2017-09-20 15:44:42 +01:00
Luke Barnard
1c6cecbd43 Add "Add a User/Room" buttons and always display default lists 2017-09-20 14:41:29 +01:00
David Baker
299db845ff PR feedback 2017-08-25 12:10:13 +01:00
David Baker
ac64e9b705 Lint 2017-08-21 19:34:07 +01:00
David Baker
e77ea352e4 Support full group membership cycle
Apart from knocking, ie. Invite / accept / reject / leave
2017-08-21 19:18:32 +01:00
David Baker
a15c2100d1 Sort out right panel callapsing on GroupView 2017-08-15 13:12:39 +01:00
Michael Telatynski
56ea528f43
don't track error messages .2
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-08-10 15:17:52 +01:00
Michael Telatynski
bf98c0da7c
un-i18n Modal Analytics
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-07-27 17:19:18 +01:00
David Baker
f9cff50ef5 _loadGroupFromServer doesn't return a promise 2017-07-21 14:41:29 +01:00
David Baker
d48924e768 Lint 2017-07-21 14:30:09 +01:00
David Baker
be7228996a This should be null rather than false 2017-07-21 14:18:28 +01:00
David Baker
4eda2ab083 Swap classes instead of using 0 height elements 2017-07-21 14:13:57 +01:00
David Baker
f2afd852d8 Make group editing work 2017-07-21 14:03:10 +01:00
David Baker
571fada77e Make group profile editing mostly work
apart from avatars
2017-07-21 11:12:15 +01:00
David Baker
859239f881 Lint / comment out line correctly 2017-07-17 18:13:20 +01:00
David Baker
6f65128928 Disable edit button again
until we have an API to edit group profile info
2017-07-17 17:18:46 +01:00
David Baker
1cd79fc918 Rename group settings to 'Edit Group' 2017-07-17 17:17:18 +01:00
David Baker
a32113ad97 Add onChange handlers & tabIndexes 2017-07-17 14:40:38 +01:00
David Baker
f6f80bf9ce Remove now unused 'edit' block
And add some css classes
2017-07-14 17:22:17 +01:00
David Baker
381f685013 Start on editing groups 2017-07-13 18:41:51 +01:00
David Baker
ff3c21ef10 Lint, including putting key in right place 2017-07-11 15:16:58 +01:00
David Baker
8690ed2181 Make the category functions React components 2017-07-11 14:28:44 +01:00
David Baker
222ca054c5 Use PropTypes.shape to define our required inputs 2017-07-11 13:41:00 +01:00
David Baker
925d5bd480 Add featured users to Group View 2017-07-10 19:32:02 +01:00
David Baker
0e67a9158c hide settings button until it's wired up 2017-07-10 15:32:57 +01:00
David Baker
048912a241 Remove commented ordering code
No lomger needed now roosm come down in order
2017-07-10 15:17:58 +01:00
David Baker
49ca29e422 Lint 2017-07-10 14:07:16 +01:00
David Baker
696c72be2b Merge remote-tracking branch 'origin/develop' into dbkr/groups_better_groupview 2017-07-10 14:03:30 +01:00
David Baker
1e713557bb PR feedback 2017-07-07 18:34:40 +01:00
David Baker
681fd512d7 Lint 2017-07-07 13:46:05 +01:00
David Baker
c21f90338d Merge remote-tracking branch 'origin/develop' into dbkr/groups_better_groupview 2017-07-07 12:02:15 +01:00
David Baker
45986306cc Merge remote-tracking branch 'origin/develop' into dbkr/my_groups 2017-07-07 10:32:37 +01:00
David Baker
1deb406294 Fix race 2017-07-07 10:12:06 +01:00
David Baker
fa37d03db6 Improve the Group View page
Show the rooms in the group in thir various categories, etc
2017-07-06 19:13:14 +01:00
David Baker
84e13d5437 Add GroupAvatar to handle fallback images etc.
And a few misc tidyups
2017-06-29 17:51:38 +01:00
David Baker
d6ecec1987 Behave better on rooms with no avatar / name
Also add translation strings
2017-06-29 17:17:43 +01:00
David Baker
aa7a113324 More PR feedback 2017-06-27 13:41:43 +01:00
David Baker
6c9716637e Fix linting errors 2017-06-27 13:13:00 +01:00
David Baker
2aeaaf26ca remove inline css 2017-06-27 11:52:23 +01:00
David Baker
971f7ad045 Fix avatars 2017-06-27 10:32:21 +01:00
David Baker
867b47f4a2 PR feedback: remove phases 2017-06-27 10:28:46 +01:00
David Baker
f0aaca0a31 Fix some PR feedback 2017-06-27 10:05:05 +01:00
David Baker
c033d5defd Missing React import 2017-06-27 09:58:29 +01:00
David Baker
812b3643de Add message for HSes that don't support groups
Also add an unrelated missed translation
2017-06-26 17:47:17 +01:00
David Baker
a26498bc6c Make 'group not found' work 2017-06-26 17:38:10 +01:00
David Baker
2efa099de2 Use function from HTMLUtils for sanitizing
Encapsulates things a little nicer
2017-06-23 17:02:54 +01:00
Erik Johnston
998a55a590 Add basic group view 2017-06-05 17:10:08 +01:00