| 50 |
{ |
{ |
| 51 |
int sid; |
int sid; |
| 52 |
int s_priv; |
int s_priv; |
| 53 |
|
int is_favor; |
| 54 |
} s_priv_list[BBS_max_section]; |
} s_priv_list[BBS_max_section]; |
| 55 |
int s_count; |
int s_count; |
| 56 |
}; |
}; |
| 76 |
return ((p_priv->level >= level) ? 1 : 0); |
return ((p_priv->level >= level) ? 1 : 0); |
| 77 |
} |
} |
| 78 |
|
|
| 79 |
extern int setpriv(BBS_user_priv *p_priv, int sid, int priv); |
extern int setpriv(BBS_user_priv *p_priv, int sid, int priv, int is_favor); |
| 80 |
|
|
| 81 |
extern int getpriv(BBS_user_priv *p_priv, int sid); |
extern int getpriv(BBS_user_priv *p_priv, int sid, int *p_is_favor); |
| 82 |
|
|
| 83 |
inline int checkpriv(BBS_user_priv *p_priv, int sid, int priv) |
inline int checkpriv(BBS_user_priv *p_priv, int sid, int priv) |
| 84 |
{ |
{ |
| 85 |
return (((getpriv(p_priv, sid) & priv)) == priv ? 1 : 0); |
int is_favor = 0; |
| 86 |
|
return (((getpriv(p_priv, sid, &is_favor) & priv)) == priv ? 1 : 0); |
| 87 |
|
} |
| 88 |
|
|
| 89 |
|
inline int is_favor(BBS_user_priv *p_priv, int sid) |
| 90 |
|
{ |
| 91 |
|
int is_favor = 0; |
| 92 |
|
getpriv(p_priv, sid, &is_favor); |
| 93 |
|
return is_favor; |
| 94 |
} |
} |
| 95 |
|
|
| 96 |
extern int load_priv(MYSQL *db, BBS_user_priv *p_priv, long int uid); |
extern int load_priv(MYSQL *db, BBS_user_priv *p_priv, long int uid); |