OSDN Git Service

ba9309e5d2cda5d1b6d7478f42626e421313faa9
[hmh/wiki.git] / lib-wikifunc.ml
1 (defun-wiki-inline2 page (text page target name1 value1 name2 value2)
2         (set-wikivar 'text 'page 'target)
3         (motor-raw "[[link:../../wiki.hml/[[Proj]]/[[page]]")
4         (if name1
5                 (progn  (setvar 'wiki_name1 name1
6                                 'wiki_value1 value1)
7                         (motor-raw "?[[name1]]=[[value1]]")))
8         (if name2
9                 (progn  (setvar 'wiki_name2 name2
10                                 'wiki_value2 value2)
11                         (motor-raw "&[[name2]]=[[value2]]")))
12         (if (not-emptyp target)
13                         (motor-raw ":[[target]]"))
14         (if text
15                         (motor-raw " [[text]]]]")
16                 (motor-raw " [[page]]]]")))
17
18 (defun-wiki-inline2 proj (text proj page target name1 value1 name2 value2)
19         (setvar 'wiki_text text
20                 'wiki_proj proj
21                 'wiki_page page
22                 'wiki_target target)
23         (motor-raw "[[link:../../wiki.hml/[[proj]]/[[page]]")
24         (if name1
25                 (progn  (setvar 'wiki_name1 name1
26                                 'wiki_value1 value1)
27                         (motor-raw "?[[name1]]=[[value1]]")))
28         (if name2
29                 (progn  (setvar 'wiki_name2 name2
30                                 'wiki_value2 value2)
31                         (motor-raw "&[[name2]]=[[value2]]")))
32         (if (not-emptyp target)
33                         (motor-raw ":[[target]]"))
34         (if text
35                         (motor-raw " [[text]]]]")
36                 (motor-raw "]]")))
37
38 (defun-wiki-inline2 imagefile (alt name)
39         (setvar 'wiki_alt alt
40                 'wiki_name name)
41         (motor-raw "[[image:../../file.hml?Proj=[[Proj]]&Filename=[[name]]:class=frame [[alt]]]]")
42 )
43
44 (defun-wiki-inline2 filelink (text name target)
45         (setvar 'wiki_text text
46                         'wiki_name name
47                         'wiki_target target)
48         (cond (
49                         (emptyp target)
50                         (if (not-emptyp text)
51                                         (motor-raw "[[link:../../file.hml?Proj=[[Proj]]&Filename=[[name]] [[text]]]]")
52                                 (motor-raw "[[link:../../file.hml?Proj=[[Proj]]&Filename=[[name]]]]")
53                         )
54                 )
55                 (       1
56                         (if (not-emptyp text)
57                                         (motor-raw "[[link:../../file.hml?Proj=[[Proj]]&Filename=[[name]]:[[target]] [[text]]]]")
58                                 (motor-raw "[[link:../../file.hml?Proj=[[Proj]]&Filename=[[name]]:[[target]]]]")
59                         )
60                 )
61         )
62 )
63
64 (defun-wiki-link ShowLogin ()
65         (motor-raw "showLogin();")
66 )
67
68 (defun-wiki-link GotoPage (page)
69         (if page
70                         (motor-raw (concat "gotoPage('" (js page) "');"))
71                 (motor-raw "gotoPage(Page);")
72         )
73 )
74
75 (defun-wiki-link EditPage (page)
76         (if page
77                         (motor-raw (concat "gotoPage('" (js page) "',{'Edit':'1'});"))
78                 (motor-raw "gotoPage(Page,{'Edit':'1'});")
79         )
80 )
81
82 (defun-wiki-link NewPageForm ()
83         (motor-raw "gotoPage($F($(this)['Page']),{'Edit':'1'});return false;")
84 )
85
86 (defun-wiki-link Logout ()
87         (motor-raw "opLogout();")
88 )
89
90 (defun-wiki-link SubmitForm (page)
91         (motor-raw (concat "SubmitForm(this,'" (js page) "');return false;"))
92 )
93
94 (defun-wiki-command PageIndex (vpage vtitle)
95         ($sqlite3 'database
96                 (wiki-page-index nil (wikivar vpage) (wikivar vtitle))
97         )
98 )
99
100 (defun-wiki-command PageIndexCategory (cat vpage vtitle)
101         ($sqlite3 'database
102                 (wiki-page-index cat (wikivar vpage) (wikivar vtitle))
103         )
104 )
105
106 (defun-wiki-command PageIndexSpecial (vpage vtitle)
107         ($sqlite3 'database
108                 (wiki-page-index-special (wikivar vpage) (wikivar vtitle))
109         )
110 )
111
112 (defun-wiki-command CategoryIndex (vname)
113         ($sqlite3 'database
114                 (wiki-category-index (wikivar vname))
115         )
116 )
117
118 (defun-wiki-command AddCategory (cat)
119         (if Writer
120                         ($sqlite3 'database
121                                 (wiki-add-category cat)
122                         )
123         )
124 )
125
126 (defun-wiki-command DelCategory (cat)
127         (if Writer
128                 ($sqlite3 'database
129                         (wiki-delete-category cat)
130                 )
131         )
132 )
133
134 (defun-wiki-command WikiSearch (key vpage vtitle vsp)
135         (wiki-search key (wikivar vpage) (wikivar vtitle) (wikivar vsp))
136 )