-
Notifications
You must be signed in to change notification settings - Fork 0
/
Channel.cpp
60 lines (51 loc) · 1.54 KB
/
Channel.cpp
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
#include "Channel.hpp"
#include <iostream>
using std::string;
Channel::Channel(string name): _name(name),
_key(""),
_topic(""),
_users(),
_modes(),
_userCount(0){}
Channel::Channel(): _name(""),
_key(""),
_topic(""),
_users(),
_modes(),
_userCount(0){}
Channel::~Channel(){}
void Channel::addUser(User const *uptr)
{
// showUsers(); // REMINDER: remove before submitting
_users.insert(std::pair<User const *, Privileges>(uptr, VOICE_PRIO));
_userCount = _users.size();
// showUsers(); // REMINDER: remove before submitting
}
void Channel::removeUser(User const *uptr)
{
// std::cout << "Show users before removing: " << uptr->getNick() << std::endl; // REMINDER: remove before submitting
// showUsers(); // REMINDER: remove before submitting
_users.erase(uptr);
_userCount = _users.size();
// std::cout << "Show users after removing: " << uptr->getNick() << std::endl; // REMINDER: remove before submitting
// showUsers(); // REMINDER: remove before submitting
}
void Channel::showUsers()
{
for (std::map<const User *, Privileges>::iterator it = _users.begin(); it != _users.end(); it++)
{
std::cout << "User: '" << it->first->getNick() << "'" << "[ " << it->second << " ]" << std::endl;
}
}
string Channel::getActiveModes(void)
{
return ("n None");
}
void Channel::updatePrivileges(User const *uptr, Privileges priv)
{
// std::cout << std::endl << std::endl;
// showUsers();
_users.at(uptr) = priv;
// showUsers();
// std::cout << std::endl << std::endl;
}