1
00:00:00,470 --> 00:00:07,190
All righty, now, let's actually add the members to our list here by entering something and clicking

2
00:00:07,190 --> 00:00:07,470
add.

3
00:00:07,760 --> 00:00:10,020
So let's implement the functionality for them.

4
00:00:10,340 --> 00:00:15,680
Therefore, we are going to mainly work in our members activity because that's where the magic happens.

5
00:00:15,920 --> 00:00:20,550
But of course, as we are doing stuff with our store, we're storing data.

6
00:00:20,990 --> 00:00:23,300
We also will have to look at that class as well.

7
00:00:23,660 --> 00:00:24,040
All right.

8
00:00:24,050 --> 00:00:31,070
So first of all, let's create a new variable, a global variable here at the very top, private late

9
00:00:31,070 --> 00:00:31,490
in it.

10
00:00:32,580 --> 00:00:36,180
VA and assigned members.

11
00:00:37,140 --> 00:00:39,510
List, which will be in the list.

12
00:00:40,630 --> 00:00:41,020
Of.

13
00:00:41,900 --> 00:00:45,590
Members, so, to be precise of users.

14
00:00:46,940 --> 00:00:48,620
Because a member is a user.

15
00:00:50,680 --> 00:00:58,060
OK, we have user already in this class, it's good to see then we need to initialize this variable

16
00:00:58,600 --> 00:01:02,410
and we have a function here, which is to set up members list.

17
00:01:02,500 --> 00:01:10,390
OK, so at this point, we can just use this list here, which is passed to this class to store it in

18
00:01:10,390 --> 00:01:12,700
our variable that we just created.

19
00:01:13,120 --> 00:01:19,480
OK, so now it will be available throughout the whole class and let's see where we call set up member

20
00:01:19,480 --> 00:01:19,960
list.

21
00:01:21,210 --> 00:01:27,120
We call it in here, so we go through the set up, then we show the progress dialogue, then we do the

22
00:01:27,120 --> 00:01:32,030
fire story glass and here we call it a silent members list detail.

23
00:01:32,340 --> 00:01:34,710
But inside of that, we actually.

24
00:01:35,650 --> 00:01:40,510
Called the set up members list, so we passed the list and then we do that.

25
00:01:41,050 --> 00:01:41,530
All right.

26
00:01:42,010 --> 00:01:44,200
OK, so this is what we do here.

27
00:01:44,800 --> 00:01:45,510
We sign it.

28
00:01:45,640 --> 00:01:50,140
The next step is that we want to get the member details.

29
00:01:50,380 --> 00:01:50,800
All right.

30
00:01:50,810 --> 00:01:52,540
So we set up the member list.

31
00:01:52,590 --> 00:01:55,360
Now it's time to get all of the member details.

32
00:01:55,660 --> 00:01:59,410
So let's create a new function fund member details.

33
00:02:00,680 --> 00:02:02,960
So we need to get the user.

34
00:02:04,900 --> 00:02:05,470
And then.

35
00:02:06,960 --> 00:02:14,010
We need to write the code to actually get the member details, OK, and whenever we want to get something

36
00:02:14,370 --> 00:02:17,070
from the database, we use our Firestar class.

37
00:02:17,460 --> 00:02:17,820
All right.

38
00:02:17,820 --> 00:02:22,410
So let's create a new function here, which I'm going to call get member details.

39
00:02:23,500 --> 00:02:27,040
Which needs an activity of type activity.

40
00:02:28,150 --> 00:02:31,600
Member activity and here.

41
00:02:34,060 --> 00:02:37,540
It needs the email of the user, which is going to be this string.

42
00:02:39,170 --> 00:02:46,790
All right, so this is the member activity and then the next step is to get that data from the database

43
00:02:46,790 --> 00:02:50,260
where the email is existing in the contacts.

44
00:02:50,270 --> 00:02:57,230
So we look at our fire story collection called Constance Users.

45
00:02:59,400 --> 00:03:05,070
But users and here we check where equal to.

46
00:03:07,500 --> 00:03:09,720
Constance thought email.

47
00:03:11,600 --> 00:03:13,190
So here it's email.

48
00:03:16,600 --> 00:03:17,050
Email.

49
00:03:19,210 --> 00:03:24,100
OK, so we need to create this new constant look at our constant.

50
00:03:25,130 --> 00:03:31,600
Because we are using something from the database again, right, so let's do it consed while.

51
00:03:32,920 --> 00:03:35,290
Email, which will be a string.

52
00:03:36,290 --> 00:03:38,060
Which I'm going to call email.

53
00:03:42,010 --> 00:03:49,750
So if we look at our users board here or the collection users, then every user is a document, right?

54
00:03:50,140 --> 00:03:54,690
And inside of that user, we have the email address.

55
00:03:54,760 --> 00:03:58,130
So this field email, and that is what we want to get now.

56
00:03:58,150 --> 00:04:03,880
So we want to check through all of the users if the email address that we just entered here.

57
00:04:05,740 --> 00:04:07,870
If that exists in the users.

58
00:04:08,880 --> 00:04:11,520
So check this field here.

59
00:04:13,680 --> 00:04:15,450
And once it has done that.

60
00:04:17,190 --> 00:04:25,320
We can get all of the data, and if that was successful, we will call the on success listener and here

61
00:04:25,320 --> 00:04:27,420
we get the document with all the results.

62
00:04:27,610 --> 00:04:31,200
So here document will contain all of the results here.

63
00:04:32,270 --> 00:04:41,240
And what we want to do with that is we want to check if the document has a size of more than one so

64
00:04:41,270 --> 00:04:44,270
or more than zero, actually, if at least one.

65
00:04:44,270 --> 00:04:44,620
Right.

66
00:04:44,630 --> 00:04:45,710
So documents.

67
00:04:47,340 --> 00:04:49,290
Size is greater than zero.

68
00:04:50,830 --> 00:04:54,590
Because only if there are any entries in there, we want to do anything right.

69
00:04:55,030 --> 00:05:00,190
So, first of all, what we are going to do is we're going to create a user out of that.

70
00:05:00,390 --> 00:05:01,660
We're going to say document.

71
00:05:04,020 --> 00:05:05,040
The documents.

72
00:05:06,270 --> 00:05:07,380
And position zero.

73
00:05:08,990 --> 00:05:09,440
To.

74
00:05:10,990 --> 00:05:11,710
Object.

75
00:05:14,270 --> 00:05:18,140
With user, colon, colon class, the Java.

76
00:05:20,520 --> 00:05:27,900
All right, so this is our user that we are creating inside of this document or from that document and

77
00:05:27,900 --> 00:05:28,230
then.

78
00:05:29,210 --> 00:05:36,920
We called the activity, thought no details where we then can pass in the user.

79
00:05:37,430 --> 00:05:40,040
Now, if we look at this activity, member details.

80
00:05:42,980 --> 00:05:46,740
Here, it requires a user, but so far doesn't do anything right.

81
00:05:46,760 --> 00:05:49,130
So we will still need to implement that.

82
00:05:49,640 --> 00:05:57,530
By the way, we need to add exclamation marks here so that the error disappears or the warning here.

83
00:05:59,440 --> 00:06:01,180
OK, and then here.

84
00:06:03,970 --> 00:06:08,500
What if there are no members found for the email address that the user entered?

85
00:06:09,100 --> 00:06:16,630
Well, first of all, we want to highlight the progress dialogue and then we want to do activity that

86
00:06:17,020 --> 00:06:19,360
show our snack bar.

87
00:06:20,950 --> 00:06:25,810
And here, just a text and you could use a warning.

88
00:06:26,910 --> 00:06:32,550
I think we don't have any strings prepared for that, so you could prepare a string for that most such

89
00:06:32,550 --> 00:06:33,480
member found.

90
00:06:35,180 --> 00:06:40,430
It's going to be the snake that I want to display, so Chautara snack bar is the function that we created

91
00:06:40,430 --> 00:06:42,030
ourselves in the base activity.

92
00:06:42,050 --> 00:06:47,210
Maybe you remember just 20 years ago or so, but we created the snack bar.

93
00:06:48,330 --> 00:06:54,750
A function which displays an error or snack bar, which has a red color and then displays the text that

94
00:06:54,750 --> 00:06:56,610
we pass in as the message.

95
00:06:58,130 --> 00:07:04,000
All right, so now you might wonder why we only add the positions zero here?

96
00:07:04,460 --> 00:07:09,890
Well, because the email address is going to be unique, so no one will have to work.

97
00:07:09,920 --> 00:07:11,760
One e-mail address cannot have two accounts.

98
00:07:12,380 --> 00:07:15,360
OK, at least by design, it shouldn't happen.

99
00:07:15,380 --> 00:07:21,320
Of course, we can trick the system, but users will not create or not be able to create an account

100
00:07:21,320 --> 00:07:25,520
with a user name or actually an email address that already exists.

101
00:07:25,710 --> 00:07:30,890
OK, so that's what we don't have to take care of here because we can just take the first entry that

102
00:07:30,890 --> 00:07:33,730
is found and that will be the only entry that there is.

103
00:07:34,220 --> 00:07:37,100
That's why it's fine to use the approach that we do here.

104
00:07:38,090 --> 00:07:44,870
OK, so that is what should happen if we were successful now, if we weren't successful, let's just

105
00:07:44,870 --> 00:07:48,650
add an unfair your in here, which is just going to say.

106
00:07:49,920 --> 00:07:53,790
Well, first of all, it's going to hide the progress dialogue, and that is going to say Erra while

107
00:07:53,790 --> 00:07:58,250
getting user details, OK, we're just going to have a little log entry.

108
00:07:58,260 --> 00:08:03,960
Of course, you could also display that to the user by showing an arrow snack bar or something like

109
00:08:03,960 --> 00:08:04,260
that.

110
00:08:04,680 --> 00:08:07,130
But I think for now, this is going to be fine.

111
00:08:08,310 --> 00:08:16,380
OK, now, in our member activity or no activity here, we, of course, still need to implement that

112
00:08:16,380 --> 00:08:17,010
functionality.

113
00:08:17,190 --> 00:08:21,960
But at the same time, we have this add button that we click or can click on.

114
00:08:21,960 --> 00:08:25,470
You can see here to do implement adding member logic.

115
00:08:25,830 --> 00:08:27,810
So that is exactly what we just implemented.

116
00:08:27,810 --> 00:08:28,060
Right.

117
00:08:28,380 --> 00:08:30,430
So let's add that line here.

118
00:08:31,080 --> 00:08:36,900
So first of all, I will show the progress dialogue here, which is just going to say, please wait.

119
00:08:37,380 --> 00:08:46,110
So here this is our strength that we prepared and then I want to use fire store class dots, get member

120
00:08:46,110 --> 00:08:46,740
details.

121
00:08:47,770 --> 00:08:52,600
And here we need to pass in the activity so this and the email.

122
00:08:52,690 --> 00:08:53,540
Well, guess what?

123
00:08:53,590 --> 00:09:00,130
We prepared the email already, and that is the email that the user prepared or entered into the edited

124
00:09:00,130 --> 00:09:01,730
text, email search member.

125
00:09:01,750 --> 00:09:04,210
So into that had a text field here.

126
00:09:06,510 --> 00:09:14,310
OK, now if we look at our get no details now it is called right and we also call member details, but

127
00:09:14,310 --> 00:09:16,180
no details is an empty function.

128
00:09:16,590 --> 00:09:21,090
So at this point, we get the user that will be added to the.

129
00:09:22,650 --> 00:09:28,530
Members, and we can now go ahead and add that to our more details.

130
00:09:29,580 --> 00:09:32,910
Assigned to add and user.

131
00:09:34,580 --> 00:09:41,800
Thought ID, so now we add the user ID to the assigned to, which is this array list of strings, so

132
00:09:42,160 --> 00:09:46,810
the board is assigned to multiple users now or at least one more user.

133
00:09:49,280 --> 00:09:58,190
OK, now, going back to our activity here, our members activity created this variable, right, this,

134
00:09:58,490 --> 00:10:03,620
um, assigned members list, but we didn't add anything to it.

135
00:10:03,770 --> 00:10:07,400
So so far, we just set up the members list with the existing list.

136
00:10:07,820 --> 00:10:14,540
But now we also at one point need to add a new member to this list when we have actually finished this

137
00:10:14,540 --> 00:10:17,090
approach or for this finished this step.

138
00:10:17,360 --> 00:10:23,750
So let's go ahead and create a new function which will take care of the member assign.

139
00:10:24,930 --> 00:10:26,960
Success call.

140
00:10:27,240 --> 00:10:34,950
So here we get a user object and then first of all, we want to highlight the progress dialogue because

141
00:10:35,160 --> 00:10:41,130
just before we call this function, we will display the progress dialogue and then we want to make sure

142
00:10:41,130 --> 00:10:46,140
that the user that is part of this function is added to the assigned members list.

143
00:10:47,640 --> 00:10:51,090
And then we can call our set up member.

144
00:10:52,010 --> 00:10:54,040
List with the.

145
00:10:55,500 --> 00:11:02,250
Latest members list, okay, so this should be called once we assigned a new member.

146
00:11:02,280 --> 00:11:06,240
So once we have added a new member, we click on ADD.

147
00:11:06,730 --> 00:11:09,800
But if we do that, our UI doesn't set up once again.

148
00:11:09,810 --> 00:11:12,720
So it's not going to be updated, but we want that to happen.

149
00:11:12,720 --> 00:11:12,940
Right.

150
00:11:12,960 --> 00:11:15,960
So we want to see that we have a new member in there.

151
00:11:16,440 --> 00:11:20,370
And that is exactly what this set up members list does.

152
00:11:20,370 --> 00:11:20,640
Right.

153
00:11:20,940 --> 00:11:24,120
So if we look at it, it sets up the whole.

154
00:11:25,920 --> 00:11:32,010
Of you and the adapter and everything, so this is the function that takes care of displaying things,

155
00:11:32,010 --> 00:11:38,170
pretty much the case to populate all of our elements, our UI elements with the data.

156
00:11:38,970 --> 00:11:40,170
That's why we need to call it.

157
00:11:40,380 --> 00:11:42,480
But in order to call it, we need to give it a list.

158
00:11:42,870 --> 00:11:46,430
And in order to give it the list that is updated, we, of course, need to update the list.

159
00:11:47,070 --> 00:11:52,380
And that is what we have done at the point when we call this member assigned success, because it will

160
00:11:52,380 --> 00:11:56,460
only be called once the assigning of a member was successful.

161
00:11:58,350 --> 00:12:04,500
Now, if we look at our fire story here, here we are just getting the numbers so we get all of the

162
00:12:04,500 --> 00:12:06,390
membered births that we have.

163
00:12:06,390 --> 00:12:13,410
So we have this add on success listener where we check whether the email exists and so forth.

164
00:12:13,740 --> 00:12:22,110
OK, but at this point we don't add any new members, so we don't have any new members that are assigned

165
00:12:22,110 --> 00:12:22,670
to the board.

166
00:12:23,130 --> 00:12:25,080
So that is what we will need to create here.

167
00:12:25,090 --> 00:12:27,600
So assign member to board.

168
00:12:28,680 --> 00:12:33,480
OK, so here we need to pass in the negativity, which will be our members activity, because guess

169
00:12:33,480 --> 00:12:38,850
what, when we assign a member and that was successful, we, of course, want to call this function

170
00:12:38,850 --> 00:12:44,910
that we just prepared this member assigned success function so we can see we're constantly moving back

171
00:12:44,910 --> 00:12:52,080
and forth between the master class and the different activities so that the activities are not dependent

172
00:12:53,010 --> 00:12:56,550
on fire or stored or fire based to work.

173
00:12:56,970 --> 00:13:03,240
But they're just dependent on the data, because if you look at it, our members activity doesn't care

174
00:13:03,390 --> 00:13:07,860
where the user comes from, whether it comes from Firebase, whether it comes from a local database,

175
00:13:07,860 --> 00:13:13,590
whether it comes from an external file, whatever, just needs to get a user with the right format.

176
00:13:14,130 --> 00:13:16,530
And that is how our whole app is designed.

177
00:13:17,160 --> 00:13:17,580
All right.

178
00:13:17,580 --> 00:13:24,450
So now if we assign a member to board what we will need as the member and we need the board, OK, we

179
00:13:24,450 --> 00:13:31,020
have the activity already in which we want to run the call of the function, but we also need to have

180
00:13:31,020 --> 00:13:34,440
the board and we also need to have the member, which is a user.

181
00:13:35,400 --> 00:13:37,590
OK, so the user is of type user.

182
00:13:38,810 --> 00:13:46,640
And then in here, we can now finally do the magic that actually adds something to the firestorm.

183
00:13:47,570 --> 00:13:55,880
Now, you remember maybe that if you want to make updates, that we needed to make a hash map out of

184
00:13:55,890 --> 00:13:57,890
the board, OK?

185
00:13:59,410 --> 00:14:05,020
So here, for example, when we updated the user profile data, we needed the user hash map.

186
00:14:05,820 --> 00:14:13,120
OK, so this is what we passed into the update function and then add updates to this.

187
00:14:13,150 --> 00:14:20,560
He also, as you can see, we used a hash map of strings and any and then we could updated with the

188
00:14:20,590 --> 00:14:21,190
hash map.

189
00:14:21,700 --> 00:14:28,030
And that is going to be very similar to what we are going to do in our assigned member to board, because

190
00:14:28,030 --> 00:14:35,550
here we, first of all, need to have the hash map of the board pretty much OK.

191
00:14:41,150 --> 00:14:43,160
Of the assigned to.

192
00:14:45,090 --> 00:14:55,890
OK, so Vul assigned to Hashmat, so I'm going to call that one and it will be a Hashmat of string and

193
00:14:55,890 --> 00:14:56,250
any.

194
00:15:00,510 --> 00:15:10,500
And then we can go ahead and say at the position of constant thought assigned to I want to assign the

195
00:15:10,500 --> 00:15:11,430
board that.

196
00:15:12,660 --> 00:15:13,420
Assigned to.

197
00:15:16,170 --> 00:15:21,990
So the board first, we always download the board, right, so we download the board from the database,

198
00:15:21,990 --> 00:15:24,030
then we add stuff to the board.

199
00:15:24,030 --> 00:15:31,770
For example, we add new cards or lists or we add lists with cards, and then we also add new members,

200
00:15:31,800 --> 00:15:33,270
which means new users.

201
00:15:33,780 --> 00:15:37,860
And then at one point we need to update the board and that's what we do here.

202
00:15:38,250 --> 00:15:43,490
So after we assigned a member to a board, we also want to update it in the database.

203
00:15:43,770 --> 00:15:48,330
So what we do is we, first of all, create this assigned to Hashmat.

204
00:15:49,550 --> 00:15:55,070
Which is basically inside of our board, if you look at it, this is assigned to variable.

205
00:15:56,810 --> 00:16:05,300
And you can see here, it's just assigned to one person, so we have an entry and then we have the value

206
00:16:05,300 --> 00:16:05,630
for it.

207
00:16:05,630 --> 00:16:07,310
So key and value.

208
00:16:08,940 --> 00:16:17,520
So now we can do the whole Firestone stuff, which means we can call fire store collection and then

209
00:16:17,520 --> 00:16:20,520
we want to update the constants that Borz.

210
00:16:22,750 --> 00:16:23,530
Documents.

211
00:16:25,400 --> 00:16:33,440
That has the board ID, so board document ID, because we, of course, only want to update the board

212
00:16:33,440 --> 00:16:42,900
that we currently are working on or that the what the user has entered a new entry for the members game.

213
00:16:43,490 --> 00:16:45,020
And then we want to update that.

214
00:16:45,230 --> 00:16:48,060
And if you want to update it, we need to give it a hash map.

215
00:16:48,080 --> 00:16:50,680
Could see it requires a map here.

216
00:16:51,200 --> 00:16:54,650
So one that has a string, any format.

217
00:16:55,380 --> 00:16:56,990
OK, so I'm going to assign it.

218
00:16:57,470 --> 00:17:00,710
We're going to posta assigned to Hashmat and then.

219
00:17:01,590 --> 00:17:08,640
If things went right, then we will see the Allen success listener and here I'm just in a call activity

220
00:17:08,640 --> 00:17:16,380
that member assign success and here we need to pass in the user and that is the user that we get when

221
00:17:16,380 --> 00:17:17,369
we call this function.

222
00:17:18,790 --> 00:17:23,380
And then if things went wrong, we're just going to add a little log entry.

223
00:17:23,680 --> 00:17:27,329
OK, so here the hard progress up will be called.

224
00:17:27,339 --> 00:17:32,890
So we don't dispute the progress dialogue and then we'll just display error while creating a board.

225
00:17:35,100 --> 00:17:41,100
OK, now dysfunction is prepared, but as you can see, it's great out yet, so it doesn't have the

226
00:17:41,100 --> 00:17:48,420
color that we need, which is this beautiful orange yellow color which indicates that this function

227
00:17:48,420 --> 00:17:48,890
is called.

228
00:17:49,230 --> 00:17:51,410
Now, where would it make sense to call this function?

229
00:17:52,020 --> 00:17:57,590
Well, in our members activity, we by the way, we can see that number of signs is now called.

230
00:17:57,960 --> 00:17:58,920
But here.

231
00:17:59,980 --> 00:18:07,390
We should do that when we called the member details function so here after we assigned.

232
00:18:08,800 --> 00:18:12,400
The user or added the new user to the assigned board.

233
00:18:13,630 --> 00:18:20,590
We can now call this assigned member to board function, which means that we, of course, need to use

234
00:18:20,740 --> 00:18:21,940
Firestar class.

235
00:18:24,820 --> 00:18:33,040
Not a sign member to board and here we need to assign the activity so we pass on the activity, then

236
00:18:33,040 --> 00:18:38,110
we need to pass in the board and that will be our end board details and we need to pass on the user,

237
00:18:38,110 --> 00:18:42,390
which will be our user that is passed to the member details.

238
00:18:42,670 --> 00:18:46,650
So we are constantly passing values from one function to another, as you can see.

239
00:18:47,050 --> 00:18:52,720
But overall, this allows us to be independent of using the surplus.

240
00:18:52,780 --> 00:18:57,010
So if we ever should replace that, it will still work.

241
00:18:57,190 --> 00:19:01,750
We, of course, need to make sure that we have the same function names in whatever other class we're

242
00:19:01,750 --> 00:19:05,700
using and that it requires the same type of data.

243
00:19:07,120 --> 00:19:12,970
At that point, we should be able to test it and it should run flawlessly on our application.

244
00:19:14,800 --> 00:19:16,780
Or better said on the emulator.

245
00:19:18,520 --> 00:19:20,840
OK, so that we are caught with image.

246
00:19:21,580 --> 00:19:23,230
Now let's go to our members.

247
00:19:25,430 --> 00:19:30,440
Now, let's add a member, but the thing is, in order to add a member, we first of all need to create

248
00:19:30,440 --> 00:19:31,010
a new member.

249
00:19:31,610 --> 00:19:33,310
OK, so let's do it this way.

250
00:19:33,350 --> 00:19:34,130
Let's sign out.

251
00:19:35,060 --> 00:19:42,710
Let's sign up with the new user and I'm going to call this one Bart, and he will be called or his email

252
00:19:42,710 --> 00:19:49,040
will be barred at Gmail dot com and he will have a secure password.

253
00:19:49,100 --> 00:19:50,210
So now let's sign up.

254
00:19:54,160 --> 00:20:00,820
OK, now could, of course, signing the user directly, so that is something that you can to yourself,

255
00:20:00,830 --> 00:20:06,600
it's very easy actually to just directly log in the user instead of sending him back here.

256
00:20:07,120 --> 00:20:12,960
So Bart at Gmail dot com password is secure.

257
00:20:13,660 --> 00:20:14,470
Let's sign them.

258
00:20:15,730 --> 00:20:16,210
Now.

259
00:20:17,650 --> 00:20:18,820
Let's create a new board.

260
00:20:21,420 --> 00:20:23,460
I'm going to call this deadeye.

261
00:20:24,840 --> 00:20:26,340
Or that his tasks.

262
00:20:27,920 --> 00:20:29,840
And here we can select Haoma.

263
00:20:36,140 --> 00:20:38,330
OK, so let's create this board.

264
00:20:41,720 --> 00:20:43,890
OK, created by Bart, very good.

265
00:20:44,390 --> 00:20:45,860
Now let's check this board out.

266
00:20:46,020 --> 00:20:47,830
Let's create a list here.

267
00:20:49,090 --> 00:20:49,600
So.

268
00:20:50,700 --> 00:20:53,910
Today, they said that should finish today.

269
00:20:55,000 --> 00:20:57,730
And then eat a donut.

270
00:20:59,510 --> 00:21:00,080
All right.

271
00:21:00,350 --> 00:21:04,950
The least healthy thing that you can eat, but now we can see that it's there.

272
00:21:05,420 --> 00:21:09,290
Now, let's add a member we can see in members only Bartis there.

273
00:21:09,890 --> 00:21:15,080
Now, let's add Dennis at Gmail dot com, because that's the email address that I had for Holmer.

274
00:21:15,470 --> 00:21:17,090
And you can see now Holmer is here.

275
00:21:18,050 --> 00:21:19,760
So that works perfectly.

276
00:21:20,030 --> 00:21:21,020
Now let's go.

277
00:21:23,200 --> 00:21:25,810
I do the final test, let's log in.

278
00:21:26,840 --> 00:21:32,720
As Homer So let's sign out first and signing as Homer.

279
00:21:41,110 --> 00:21:49,420
And we can see that his tasks are there so that we are we can now create tasks which are or boards pretty

280
00:21:49,420 --> 00:21:56,470
much, which are linked to multiple users so multiple users can use sports and they can inform each

281
00:21:56,470 --> 00:21:59,990
other about sports or they can just add other people to the boards.

282
00:22:00,040 --> 00:22:03,710
Of course, he can only add people of which they know the email address.

283
00:22:03,730 --> 00:22:07,630
So this is something that you definitely have to take into consideration.

284
00:22:08,380 --> 00:22:08,820
All right.

285
00:22:09,100 --> 00:22:10,460
So that is it for this video.

286
00:22:10,510 --> 00:22:17,890
It was a longer one, but we had to add a lot of functionality and a lot of stuff that has to be done

287
00:22:17,890 --> 00:22:20,530
when working with Firestorm, as you know.

288
00:22:20,860 --> 00:22:25,340
And yeah, now we have a pretty cool feature added to the app.

289
00:22:25,660 --> 00:22:27,610
Of course, there are still other features to come.

290
00:22:27,620 --> 00:22:28,960
So see you in the next video.

