/[LeafOK_CVS]/lbbs/src/user_list.c
ViewVC logotype

Diff of /lbbs/src/user_list.c

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

Revision 1.6 by sysadm, Wed Oct 22 04:48:53 2025 UTC Revision 1.7 by sysadm, Wed Oct 22 05:50:13 2025 UTC
# Line 71  const USER_ACTION_MAP user_action_map[] Line 71  const USER_ACTION_MAP user_action_map[]
71                  {"BBS_NET", "站点穿梭"},                  {"BBS_NET", "站点穿梭"},
72                  {"CHICKEN", "电子小鸡"},                  {"CHICKEN", "电子小鸡"},
73                  {"EDIT_ARTICLE", "修改文章"},                  {"EDIT_ARTICLE", "修改文章"},
74                    {"LOGIN", "进入大厅"},
75                  {"MENU", "菜单选择"},                  {"MENU", "菜单选择"},
76                  {"POST_ARTICLE", "撰写文章"},                  {"POST_ARTICLE", "撰写文章"},
77                  {"REPLY_ARTICLE", "回复文章"},                  {"REPLY_ARTICLE", "回复文章"},
78                  {"USER_LIST", "查花名册"},                  {"USER_LIST", "查花名册"},
79                  {"USER_ONLINE", "环顾四周"},                  {"USER_ONLINE", "环顾四周"},
80                  {"VIEW_ARTICLE", "阅读文章"},                  {"VIEW_ARTICLE", "阅读文章"},
81                  {"VIEW_FILE", "查看文档"}};                  {"VIEW_FILE", "查看文档"},
82                    {"WWW", "Web浏览"}};
83    
84  const int user_action_map_size = 11;  const int user_action_map_size = sizeof(user_action_map) / sizeof(USER_ACTION_MAP);
85    
86  static int user_list_try_rd_lock(int semid, int wait_sec);  static int user_list_try_rd_lock(int semid, int wait_sec);
87  static int user_list_try_rw_lock(int semid, int wait_sec);  static int user_list_try_rw_lock(int semid, int wait_sec);
# Line 205  int user_online_list_load(MYSQL *db, USE Line 207  int user_online_list_load(MYSQL *db, USE
207                  strncpy(p_list->users[i].session_id, row[0], sizeof(p_list->users[i].session_id) - 1);                  strncpy(p_list->users[i].session_id, row[0], sizeof(p_list->users[i].session_id) - 1);
208    
209                  p_list->users[i].session_id[sizeof(p_list->users[i].session_id) - 1] = '\0';                  p_list->users[i].session_id[sizeof(p_list->users[i].session_id) - 1] = '\0';
210                  if (query_user_info(atoi(row[1]), &(p_list->users[i].user_info)) <= 0)                  if ((ret = query_user_info(atoi(row[1]), &(p_list->users[i].user_info))) < 0)
211                  {                  {
212                          log_error("query_user_info(%d) error\n", atoi(row[1]));                          log_error("query_user_info(%d) error\n", atoi(row[1]));
213                          continue;                          continue;
214                  }                  }
215                    else if (ret == 0) // Guest
216                    {
217                            p_list->users[i].user_info.uid = 0;
218                            strncpy(p_list->users[i].user_info.username, "guest", sizeof(p_list->users[i].user_info.username) - 1);
219                            p_list->users[i].user_info.username[sizeof(p_list->users[i].user_info.username) - 1] = '\0';
220                            strncpy(p_list->users[i].user_info.nickname, "Guest", sizeof(p_list->users[i].user_info.nickname) - 1);
221                            p_list->users[i].user_info.nickname[sizeof(p_list->users[i].user_info.nickname) - 1] = '\0';
222                            p_list->users[i].user_info.gender = 'M';
223                            p_list->users[i].user_info.gender_pub = 0;
224                            p_list->users[i].user_info.life = 150;
225                            p_list->users[i].user_info.exp = 0;
226                            p_list->users[i].user_info.signup_dt = 0;
227                            p_list->users[i].user_info.last_login_dt = 0;
228                            p_list->users[i].user_info.birthday = 0;
229                    }
230    
231                  strncpy(p_list->users[i].ip, row[2], sizeof(p_list->users[i].ip) - 1);                  strncpy(p_list->users[i].ip, row[2], sizeof(p_list->users[i].ip) - 1);
232                  p_list->users[i].ip[sizeof(p_list->users[i].ip) - 1] = '\0';                  p_list->users[i].ip[sizeof(p_list->users[i].ip) - 1] = '\0';
# Line 219  int user_online_list_load(MYSQL *db, USE Line 236  int user_online_list_load(MYSQL *db, USE
236                  p_list->users[i].current_action_title = NULL;                  p_list->users[i].current_action_title = NULL;
237                  if (p_list->users[i].current_action[0] == '\0')                  if (p_list->users[i].current_action[0] == '\0')
238                  {                  {
239                          p_list->users[i].current_action_title = "Web浏览";                          p_list->users[i].current_action_title = "";
240                  }                  }
241                  else if (trie_dict_get(p_trie_action_dict, p_list->users[i].current_action, (int64_t *)(&(p_list->users[i].current_action_title))) < 0)                  else if (trie_dict_get(p_trie_action_dict, p_list->users[i].current_action, (int64_t *)(&(p_list->users[i].current_action_title))) < 0)
242                  {                  {


Legend:
Removed lines/characters  
Changed lines/characters
  Added lines/characters

webmaster@leafok.com
ViewVC Help
Powered by ViewVC 1.3.0-beta1