added cmd_clvl and moved all the database request functions to DBHelper.c
[NeonServV5.git] / ChanUser.h
1 #ifndef _ChanUser_h
2 #define _ChanUser_h
3
4 #define CHANUSERFLAG_OPPED  0x01
5 #define CHANUSERFLAG_VOICED 0x02
6
7
8 #define DB_CHANUSER_SUSPENDED = 0x01
9 #define DB_CHANUSER_AUTOINVITE = 0x02
10 #define DB_CHANUSER_NOAUTOOP = 0x04
11
12 #define CHANUSERFLAG_OPPED_OR_VOICED (CHANUSERFLAG_OPPED | CHANUSERFLAG_VOICED)
13
14 struct ChanNode;
15 struct UserNode;
16
17 struct ChanUser {
18     unsigned char flags;
19     struct ChanNode *chan;
20     struct UserNode *user;
21     
22     struct ChanUser *next_user;
23     struct ChanUser *next_chan;
24 };
25
26 struct ChanUser* addChanUser(struct ChanNode *chan, struct UserNode *user);
27 int isUserOnChan(struct UserNode *user, struct ChanNode *chan);
28 struct ChanUser* getChanUser(struct UserNode *user, struct ChanNode *chan);
29 struct ChanUser* getChannelUsers(struct ChanNode *chan, struct ChanUser *last);
30 struct ChanUser* getUserChannels(struct UserNode *user, struct ChanUser *last);
31 void delChanUser(struct ChanUser *chanuser, int freeChanUser);
32 void removeChanUserFromLists(struct ChanUser *chanuser, int remove_from_userlist, int remove_from_channellist, int freeChanUser);
33
34 #endif