/[LeafOK_CVS]/lbbs/include/section_list_loader.h
ViewVC logotype

Contents of /lbbs/include/section_list_loader.h

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.20 - (show annotations)
Tue Nov 4 13:49:50 2025 UTC (4 months, 1 week ago) by sysadm
Branch: MAIN
Changes since 1.19: +9 -17 lines
Content type: text/x-chdr
Update file header information comments

1 /* SPDX-License-Identifier: GPL-3.0-or-later */
2 /*
3 * section_list_loader
4 * - load and query operations of section articles
5 *
6 * Copyright (C) 2004-2025 by Leaflet <leaflet@leafok.com>
7 */
8
9 #ifndef _SECTION_LIST_LOADER_H_
10 #define _SECTION_LIST_LOADER_H_
11
12 #include "menu.h"
13 #include "section_list.h"
14 #include <mysql/mysql.h>
15
16 #define ERR_UNKNOWN_SECTION -101
17 #define LOAD_ARTICLE_COUNT_LIMIT 1000
18
19 extern int section_list_loader_pid;
20 extern int last_article_op_log_mid;
21
22 extern int load_section_config_from_db(int update_gen_ex);
23
24 // Input global_lock = 0 : lock / unlock corresponding section per article
25 // 1 : lock / unlock all sections per invocation
26 // Return on success : count of appended articles (>= 0)
27 // failure : lock / unlock error (-1)
28 // : unknown section found (ERR_UNKNOWN_SECTION)
29 extern int append_articles_from_db(int32_t start_aid, int global_lock, int article_count_limit);
30
31 extern int set_last_article_op_log_from_db(void);
32
33 // Return on success : count of appended articles (>= 0)
34 // failure : lock / unlock error (-1)
35 // : unknown section found (ERR_UNKNOWN_SECTION)
36 extern int apply_article_op_log_from_db(int op_count_limit);
37
38 extern int section_list_loader_launch(void);
39
40 // Return on success : real page_id (>= 0)
41 // failure : error number (< 0)
42 extern int query_section_articles(SECTION_LIST *p_section, int page_id, ARTICLE *p_articles[],
43 int *p_article_count, int *p_page_count, int *p_ontop_start_offset);
44
45 // Input direction = 0 : locate p_article_cur
46 // -1 : p_article_cur->p_topic_prior
47 // 1 : p_article_cur->p_topic_next
48 // Return on success : found (1)
49 // : not found (0)
50 // failure : error number (< 0)
51 extern int locate_article_in_section(SECTION_LIST *p_section, const ARTICLE *p_article_cur, int direction, int step,
52 int *p_page_id, int *p_visible_offset, int *p_article_count);
53
54 extern int last_article_in_section(SECTION_LIST *p_section, const ARTICLE **pp_article);
55
56 // Return on success : found (1)
57 // : not found (0)
58 // failure : error number (< 0)
59 extern int scan_unread_article_in_section(SECTION_LIST *p_section, const ARTICLE *p_article_cur, const ARTICLE **pp_article_unread);
60
61 extern int scan_article_in_section_by_uid(SECTION_LIST *p_section, const ARTICLE *p_article_cur,
62 int direction, int32_t uid, const ARTICLE **pp_article);
63 extern int scan_article_in_section_by_username(SECTION_LIST *p_section, const ARTICLE *p_article_cur,
64 int direction, const char *username, const ARTICLE **pp_article);
65 extern int scan_article_in_section_by_title(SECTION_LIST *p_section, const ARTICLE *p_article_cur,
66 int direction, const char *title, const ARTICLE **pp_article);
67
68 extern int get_section_ex_menu_set(SECTION_LIST *p_section, MENU_SET *p_ex_menu_set);
69
70 #endif //_SECTION_LIST_LOADER_H_

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