Affichage du code PML – 'pml/main.pml' :
1 <pml>
2 <link #rel=icon #href=favicon.ico #type=image/x-icon>
3 <title PyMyAdmin – <@home>>
4 <link #rel=stylesheet #href=scripts/base.css #type=text/css>
5 <link #rel=stylesheet #href=themes/<%theme>/css/style.css #type=text/css>
6 §inputlang <input #type=hidden #value=<lang> #name=lang>
7 §inputtheme <input #type=hidden #name=theme #value=<%theme>>
8 §inputsession <input #type=hidden #name=@pyma_session #value=<%@py_session>>
9 §inputpage <input #type=hidden #name=@pyma_page #value=page_<*>>
10 §imgtheme <img #src=themes/<%theme>/img/<*>.png>
11 §tabselected <div.menuitemsel <img #src=themes/<%theme>/img/<*ico>.png> <*lib> >
12 §tabbutton <div.menuitem <img #src=themes/<%theme>/img/<*ico>.png> <button.onglien #type=submit #value=page_<*pg> #name=@pyma_page <*lib>>>
13 §null <span.null NULL>
14 §øns <span.ns >
15 §øcr <§ <span.cr ↵><br>>
16 §øtb <span.tb →>
17
18 §%@pyma_database <>
19 §%@pyma_table <>
20 §%@pyma_action <>
21 §%@pyma_page <>
22 §%@pyma_err <<py login('<%@pyma_session>','<%timeout>','<%ip>','<%@pyma_user>','<%@pyma_pw>')>>
23 <incl %@pyma_err>
24 <form #id=reply #method=post #action=login.pml?lang=<lang>
25 ———›<input #type=hidden #name=db #value=>
26 ———›<input #type=hidden #name=table #value=>
27 ———›<input #type=hidden #name=token #value=>
28 ———›<input #type=hidden #name=@pyma_user #value=<%@pyma_user>>
29 ———›<input #type=hidden #name=@pyma_pw #value=<%@pyma_pw>>
30 ———›<input #type=hidden #name=@pyma_err #value=<%@pyma_err>>
31 ———›<inputtheme>
32 ———›>
33 <script '''document.forms['reply'].submit();'''>
34
35 <excl %@pyma_err>
36 §%@py_session <<py session()>>
37 §%@py_user <<py user()>>
38
39 <script theme = '<%theme>' ; '''
40 ———›var roll_down = 'themes/'+theme+'/img/b_plus.png' ;
41 ———›var roll_up = 'themes/'+theme+'/img/b_minus.png' ;
42 ———›/* menu principal déroulant */
43 ———›function showbases(nn,tot) {
44 ———›———›for (i = 1; i <= tot; i++) {
45 ———›———›———›if (i==nn) {
46 ———›———›———›———›disp = document.getElementById("zbase"+nn).style.display;
47 ———›———›———›———›if (disp=='none') {
48 ———›———›———›———›———›document.getElementById("zbase"+nn).style.display='block';
49 ———›———›———›———›———›document.getElementById("xbase"+nn).innerHTML = '<img src="'+roll_up+'" />';
50 ———›———›———›———›} else {
51 ———›———›———›———›———›document.getElementById("zbase"+nn).style.display='none';
52 ———›———›———›———›———›document.getElementById("xbase"+nn).innerHTML = '<img src="'+roll_down+'" />';
53 ———›———›———›———›}
54 ———›———›———›} else {
55 ———›———›———›———›document.getElementById("zbase"+i).style.display='none';
56 ———›———›———›———›document.getElementById("xbase"+i).innerHTML = '<img src="'+roll_down+'" />';
57 ———›———›———›}
58 ———›———›}
59 ———›}'''>
60 <div #style=display:block;width:100vw;height:100vh:overflow-y:hidden
61 ———›# Colonne de gauche, liste des tables
62 ———›<div #style=display:table-cell;margin-left:10px;margin-right:10px
63 ———›———›<div.listebases<dir> #style=text-align:center
64 ———›———›———›<p.centre <img #pymyadmin.svg #width=140px>>
65 ———›———›———›#boutons
66 ———›———›———›<div #style=display:inline-block
67 ———›———›———›———›<div #style=display:table-cell
68 ———›———›———›———›———›<form #method=post #action=main.pml
69 ———›———›———›———›———›———›<input #type=image #src=themes/<%theme>/img/b_home.png #title=<@home> #alt=<@home>>
70 ———›———›———›———›———›———›<inputlang><inputtheme><inputsession>
71 ———›———›———›———›———›———›>
72 ———›———›———›———›———›>
73 ———›———›———›———›<div #style=display:table-cell
74 ———›———›———›———›———›<form #method=post #action=login.pml
75 ———›———›———›———›———›———›<input #type=image #src=themes/<%theme>/img/s_logout.png #title=<@logout> #alt=<@logout>>
76 ———›———›———›———›———›———›<inputlang><inputtheme><inputsession>
77 ———›———›———›———›———›———›>
78 ———›———›———›———›———›>
79 ———›———›———›———›>
80 ———›———›———›<hr>
81 ———›———›———›# Liste des bases et tables
82 ———›———›———›<py show_bases('<%@pyma_database>')>
83 ———›———›———›>
84 ———›———›>
85 ———›# Affichage principal
86 ———›<div #style=display:table-cell;vertical-align:top;margin:0px;width:100%
87 ———›———›<div.fondbase #style=width:auto;overflow:auto;height:100vh;padding-left:10px;padding-right:10px;
88
89 ———›———›———›#Haut de page
90 ———›———›———›#------------
91 ———›———›———›<div.gauche<dir> #style=margin-top:10px;margin-bottom:10px
92 ———›———›———›———›<div #style=display:inline-block
93 ———›———›———›———›———›<form #method=post #action=main.pml
94 ———›———›———›———›———›———›<imgtheme s_host> <button.lien #type=submit #name=pyma_home #value=<@home> <@Server><@:> <b <py environ('HTTP_HOST')>>>
95 ———›———›———›———›———›———›<inputlang><inputtheme><inputsession>
96 ———›———›———›———›———›———›>
97 ———›———›———›———›———›>
98 ———›———›———›———›<incl %@pyma_database>
99 ———›———›———›———›<div #style=display:inline-block
100 ———›———›———›———›———›<form #method=post #action=main.pml
101 ———›———›———›———›———›———›– <imgtheme s_db> <button.lien #type=submit #name=@pyma_database #value=<%@pyma_database> <@Database><@:> <b <%@pyma_database>>>
102 ———›———›———›———›———›———›<input #type=hidden #name=@pyma_page #value=page_dbprops>
103 ———›———›———›———›———›———›<inputlang><inputtheme><inputsession>
104 ———›———›———›———›———›———›>
105 ———›———›———›———›———›>
106 ———›———›———›———›<incl %@pyma_table>
107 ———›———›———›———›<div #style=display:inline-block
108 ———›———›———›———›———›<form #method=post #action=main.pml
109 ———›———›———›———›———›———›– <imgtheme s_tbl> <button.lien #type=submit #name=@pyma_table #value=<%@pyma_table> <@Table><@:> <b <%@pyma_table>>>
110 ———›———›———›———›———›———›<input #type=hidden #name=@pyma_database #value=<%@pyma_database>>
111 ———›———›———›———›———›———›<input #type=hidden #name=@pyma_page #value=page_browse>
112 ———›———›———›———›———›———›<inputlang><inputtheme><inputsession>
113 ———›———›———›———›———›———›>
114 ———›———›———›———›———›>
115 ———›———›———›———›<incl>
116 ———›———›———›———›>
117
118 ———›———›———›# Onglets
119 ———›———›———›#--------
120 ———›———›———›<form #method=post #action=main.pml
121 ———›———›———›———›# Groupe Généralités
122 ———›———›———›———›<excl %@pyma_database>
123 ———›———›———›———›<div.menutabs
124 ———›———›———›———›———›<incl %@pyma_page=page_db <tabselected #ico=s_db #lib=<@Databases>>>
125 ———›———›———›———›———›<excl %@pyma_page=page_db <tabbutton #ico=s_db #pg=db #lib=<@Databases>>>
126 ———›———›———›———›———›<incl %@pyma_page=page_sql <tabselected #ico=b_sql #lib=<@SQL>>>
127 ———›———›———›———›———›<excl %@pyma_page=page_sql <tabbutton #ico=b_sql #pg=sql #lib=<@SQL>>>
128 ———›———›———›———›———›<incl %@pyma_page=page_status <tabselected #ico=s_status #lib=<@State> >>
129 ———›———›———›———›———›<excl %@pyma_page=page_status <tabbutton #ico=s_status #pg=status #lib=<@State>>>
130 ———›———›———›———›———›<incl %@pyma_page=page_rights <tabselected #ico=s_rights #lib=<@User_accounts>>>
131 ———›———›———›———›———›<excl %@pyma_page=page_rights <tabbutton #ico=s_rights #pg=rights #lib=<@User_accounts>>>
132 ———›———›———›———›———›<incl %@pyma_page=page_export <tabselected #ico=b_export #lib=<@Export>>>
133 ———›———›———›———›———›<excl %@pyma_page=page_export <tabbutton #ico=b_export #pg=export #lib=<@Export>>>
134 ———›———›———›———›———›<incl %@pyma_page=page_import <tabselected #ico=b_import #lib=<@Import>>>
135 ———›———›———›———›———›<excl %@pyma_page=page_import <tabbutton #ico=b_import #pg=import #lib=<@Import>>>
136 ———›———›———›———›———›<incl %@pyma_page=page_ops <tabselected #ico=b_tblops #lib=<@Parameters>>>
137 ———›———›———›———›———›<excl %@pyma_page=page_ops <tabbutton #ico=b_tblops #pg=ops #lib=<@Parameters>>>
138 ———›———›———›———›———›<incl %@pyma_page=page_replication <tabselected #ico=s_replication #lib=<@Replication>>>
139 ———›———›———›———›———›<excl %@pyma_page=page_replication <tabbutton #ico=s_replication #pg=replication #lib=<@Replication>>>
140 ———›———›———›———›———›<incl %@pyma_page=page_vars <tabselected #ico=s_vars #lib=<@Variables>>>
141 ———›———›———›———›———›<excl %@pyma_page=page_vars <tabbutton #ico=s_vars #pg=vars #lib=<@Variables>>>
142 ———›———›———›———›———›<incl %@pyma_page=page_asci <tabselected #ico=s_asci #lib=<@Charsets>>>
143 ———›———›———›———›———›<excl %@pyma_page=page_asci <tabbutton #ico=s_asci #pg=asci #lib=<@Charsets>>>
144 ———›———›———›———›———›<incl %@pyma_page=page_engine <tabselected #ico=b_engine #lib=<@Engines>>>
145 ———›———›———›———›———›<excl %@pyma_page=page_engine <tabbutton #ico=b_engine #pg=engine #lib=<@Engines>>>
146 ———›———›———›———›———›>
147 ———›———›———›———›# groupe Base de données
148 ———›———›———›———›<incl %@pyma_database %@pyma_table->
149 ———›———›———›———›<div.menutabs
150 ———›———›———›———›———›<incl %@pyma_page=page_dbprops <tabselected #ico=b_props #lib=<@Structure>>>
151 ———›———›———›———›———›<excl %@pyma_page=page_dbprops <tabbutton #ico=b_props #pg=dbprops #lib=<@Structure>>>
152 ———›———›———›———›———›<incl %@pyma_page=page_dbsql <tabselected #ico=b_sql #lib=<@SQL>>>
153 ———›———›———›———›———›<excl %@pyma_page=page_dbsql <tabbutton #ico=b_sql #pg=dbsql #lib=<@SQL>>>
154 ———›———›———›———›———›<incl %@pyma_page=page_dbsearch <tabselected #ico=b_search #lib=<@Search>>>
155 ———›———›———›———›———›<excl %@pyma_page=page_dbsearch <tabbutton #ico=b_search #pg=dbsearch #lib=<@Search>>>
156 ———›———›———›———›———›<incl %@pyma_page=page_db <tabselected #ico=s_db #lib=<@Query>>>
157 ———›———›———›———›———›<excl %@pyma_page=page_db <tabbutton #ico=s_db #pg=db #lib=<@Query>>>
158 ———›———›———›———›———›<incl %@pyma_page=page_dbexport <tabselected #ico=b_export #lib=<@Export>>>
159 ———›———›———›———›———›<excl %@pyma_page=page_dbexport <tabbutton #ico=b_export #pg=dbexport #lib=<@Export>>>
160 ———›———›———›———›———›<incl %@pyma_page=page_dbimport <tabselected #ico=b_import #lib=<@Import>>>
161 ———›———›———›———›———›<excl %@pyma_page=page_dbimport <tabbutton #ico=b_import #pg=dbimport #lib=<@Import>>>
162 ———›———›———›———›———›<incl %@pyma_page=page_dbops <tabselected #ico=b_tblops #lib=<@Operations>>>
163 ———›———›———›———›———›<excl %@pyma_page=page_dbops <tabbutton #ico=b_tblops #pg=dbops #lib=<@Operations>>>
164 ———›———›———›———›———›<incl %@pyma_page=page_dbrights <tabselected #ico=s_rights #lib=<@Privileges>>>
165 ———›———›———›———›———›<excl %@pyma_page=page_dbrights <tabbutton #ico=s_rights #pg=dbrights #lib=<@Privileges>>>
166 ———›———›———›———›———›<incl %@pyma_page=page_routines <tabselected #ico=b_routines #lib=<@Routines>>>
167 ———›———›———›———›———›<excl %@pyma_page=page_routines <tabbutton #ico=b_routines #pg=routines #lib=<@Routines>>>
168 ———›———›———›———›———›<incl %@pyma_page=page_events <tabselected #ico=b_events #lib=<@Events>>>
169 ———›———›———›———›———›<excl %@pyma_page=page_events <tabbutton #ico=b_events #pg=events #lib=<@Events>>>
170 ———›———›———›———›———›<incl %@pyma_page=page_dbtriggers <tabselected #ico=b_triggers #lib=<@Triggers>>>
171 ———›———›———›———›———›<excl %@pyma_page=page_dbtriggers <tabbutton #ico=b_triggers #pg=dbtriggers #lib=<@Triggers>>>
172 ———›———›———›———›———›<incl %@pyma_page=page_dbeye <tabselected #ico=eye #lib=<@Tracking>>>
173 ———›———›———›———›———›<excl %@pyma_page=page_dbeye <tabbutton #ico=eye #pg=dbeye #lib=<@Tracking>>>
174 ———›———›———›———›———›<incl %@pyma_page=page_relations <tabselected #ico=b_relations #lib=<@Designer>>>
175 ———›———›———›———›———›<excl %@pyma_page=page_relations <tabbutton #ico=b_relations #pg=dbrelations #lib=<@Designer>>>
176 ———›———›———›———›———›<incl %@pyma_page=page_centralColumns <tabselected #ico=centralColumns #lib=<@Central_columns>>>
177 ———›———›———›———›———›<excl %@pyma_page=page_centralColumns <tabbutton #ico=centralColumns #pg=centralColumns #lib=<@Central_columns>>>
178 ———›———›———›———›———›<input #type=hidden #name=@pyma_database #value=<%@pyma_database>>
179 ———›———›———›———›———›>
180 ———›———›———›———›# Groupe Table
181 ———›———›———›———›<incl %@pyma_table>
182 ———›———›———›———›<div.menutabs
183 ———›———›———›———›———›<incl %@pyma_page=page_browse <tabselected #ico=b_browse #lib=<@Browse>>>
184 ———›———›———›———›———›<excl %@pyma_page=page_browse <tabbutton #ico=b_browse #pg=browse #lib=<@Browse>>>
185 ———›———›———›———›———›<incl %@pyma_page=page_tbprops <tabselected #ico=b_props #lib=<@Structure>>>
186 ———›———›———›———›———›<excl %@pyma_page=page_tbprops <tabbutton #ico=b_props #pg=tbprops #lib=<@Structure>>>
187 ———›———›———›———›———›<incl %@pyma_page=page_tbsql <tabselected #ico=b_sql #lib=<@SQL>>>
188 ———›———›———›———›———›<excl %@pyma_page=page_tbsql <tabbutton #ico=b_sql #pg=tbsql #lib=<@SQL>>>
189 ———›———›———›———›———›<incl %@pyma_page=page_tbsearch <tabselected #ico=b_search #lib=<@Search>>>
190 ———›———›———›———›———›<excl %@pyma_page=page_tbsearch <tabbutton #ico=b_search #pg=tbsearch #lib=<@Search>>>
191 ———›———›———›———›———›<incl %@pyma_page=page_insrow <tabselected #ico=b_insrow #lib=<@Insert>>>
192 ———›———›———›———›———›<excl %@pyma_page=page_insrow <tabbutton #ico=b_insrow #pg=insrow #lib=<@Insert>>>
193 ———›———›———›———›———›<incl %@pyma_page=page_tblexport <tabselected #ico=b_tblexport #lib=<@Export>>>
194 ———›———›———›———›———›<excl %@pyma_page=page_tblexport <tabbutton #ico=b_tblexport #pg=tblexport #lib=<@Export>>>
195 ———›———›———›———›———›<incl %@pyma_page=page_tblimport <tabselected #ico=b_tblimport #lib=<@Import>>>
196 ———›———›———›———›———›<excl %@pyma_page=page_tblimport <tabbutton #ico=b_tblimport #pg=tblimport #lib=<@Import>>>
197 ———›———›———›———›———›<incl %@pyma_page=page_tbrights <tabselected #ico=s_rights #lib=<@Privileges>>>
198 ———›———›———›———›———›<excl %@pyma_page=page_tbrights <tabbutton #ico=s_rights #pg=tbrights #lib=<@Privileges>>>
199 ———›———›———›———›———›<incl %@pyma_page=page_tblops <tabselected #ico=b_tblops #lib=<@Operations>>>
200 ———›———›———›———›———›<excl %@pyma_page=page_tblops <tabbutton #ico=b_tblops #pg=tblops #lib=<@Operations>>>
201 ———›———›———›———›———›<incl %@pyma_page=page_tbeye <tabselected #ico=eye #lib=<@Tracking>>>
202 ———›———›———›———›———›<excl %@pyma_page=page_tbeye <tabbutton #ico=eye #pg=tbeye #lib=<@Tracking>>>
203 ———›———›———›———›———›<incl %@pyma_page=page_tbtriggers <tabselected #ico=b_triggers #lib=<@Triggers>>>
204 ———›———›———›———›———›<excl %@pyma_page=page_tbtriggers <tabbutton #ico=b_triggers #pg=tbtriggers #lib=<@Triggers>>>
205 ———›———›———›———›———›<input #type=hidden #name=@pyma_database #value=<%@pyma_database>>
206 ———›———›———›———›———›<input #type=hidden #name=@pyma_table #value=<%@pyma_table>>
207 ———›———›———›———›———›>
208 ———›———›———›———›<incl>
209 ———›———›———›———›<inputlang><inputtheme><inputsession>
210 ———›———›———›———›>
211
212 ———›———›———›# Groupe Généralités
213 ———›———›———›#-------------------
214 ———›———›———›# Page d’accueil
215 ———›———›———›<incl %@pyma_database- %@pyma_page->
216 ———›———›———›<div #style=display:block >
217 ———›———›———›<div #style=display:table-cell;vertical-align:top;width:65vw
218 ———›———›———›———›<div.homeblock<dir>+group
219 ———›———›———›———›———›<h2.gauche<dir> <@General_settings>>
220 ———›———›———›———›———›<form #method=post #action=main.pml
221 ———›———›———›———›———›———›<ul.gauche<dir> #style=list-style-type:none
222 ———›———›———›———›———›———›———›<li <imgtheme s_passwd> <@Change_password><@:>>
223 ———›———›———›———›———›———›———›<li <imgtheme s_asci> <@Server_collation><@:>
224 ———›———›———›———›———›———›———›———›<select
225 ———›———›———›———›———›———›———›———›———›<py show_collation()>
226 ———›———›———›———›———›———›———›———›———›>
227 ———›———›———›———›———›———›———›———›>
228 ———›———›———›———›———›———›———›>
229 ———›———›———›———›———›———›>
230 ———›———›———›———›———›>
231 ———›———›———›———›<div.homeblock<dir>+group
232 ———›———›———›———›———›<h2.gauche<dir> <@Appearance_settings>>
233 ———›———›———›———›———›<form #method=post #action=main.pml
234 ———›———›———›———›———›———›<ul.gauche<dir> #style=list-style-type:none
235 ———›———›———›———›———›———›———›<li <imgtheme s_lang> <@language> – <i Language><@:>
236 ———›———›———›———›———›———›———›———›<select #name=lang #onchange=this.form.submit()
237 ———›———›———›———›———›———›———›———›———›<py select_lang('<lang>')>
238 ———›———›———›———›———›———›———›———›———›>
239 ———›———›———›———›———›———›———›———›>
240 ———›———›———›———›———›———›———›<li <imgtheme s_theme> <@theme><@:>
241 ———›———›———›———›———›———›———›———›<select #name=theme #onchange=this.form.submit()
242 ———›———›———›———›———›———›———›———›———›<py select_theme('<%theme>')>
243 ———›———›———›———›———›———›———›———›———›>
244 ———›———›———›———›———›———›———›———›>
245 ———›———›———›———›———›———›———›>
246 ———›———›———›———›———›———›<inputtheme><inputsession>
247 ———›———›———›———›———›———›>
248 ———›———›———›———›———›>
249 ———›———›———›———›>
250 ———›———›———›<div #style=display:table-cell;vertical-align:top;width:10px >
251 ———›———›———›<div #style=display:table-cell;vertical-align:top;width:35vw
252 ———›———›———›———›<div.homeblock<dir>+group
253 ———›———›———›———›———›<h2.gauche<dir> <@Database_server>>
254 ———›———›———›———›———›<ul.gauche<dir>
255 ———›———›———›———›———›———›<li <@Server><@:> <b <py environ('HTTP_HOST')>>>
256 ———›———›———›———›———›———›<li <@Server_version><@:> <b <py dbenviron('version')> – <py dbenviron('version_comment')>>>
257 ———›———›———›———›———›———›<li <@user><@:> <b <%@py_user>@localhost>>
258 ———›———›———›———›———›———›<li <@Server_charset><@:> <b <py show_collation_connection()>>>
259 ———›———›———›———›———›———›>
260 ———›———›———›———›———›>
261 ———›———›———›———›<div.homeblock<dir>+group
262 ———›———›———›———›———›<h2.gauche<dir> <@Web_server>>
263 ———›———›———›———›———›<ul.gauche<dir>
264 ———›———›———›———›———›———›<li <py environ('SERVER_SOFTWARE')>>
265 ———›———›———›———›———›———›<li <@Operating_system><@:> <b <py plateforme()>>>
266 ———›———›———›———›———›———›<li <@Python_version><@:> <b <py pyversion()>>>
267 ———›———›———›———›———›———›>
268 ———›———›———›———›———›>
269 ———›———›———›———›<div.homeblock<dir>+group
270 ———›———›———›———›———›<h2.gauche<dir> pyMyAdmin>
271 ———›———›———›———›———›<ul.gauche<dir>
272 ———›———›———›———›———›———›<li <@copyleft>>
273 ———›———›———›———›———›———›>
274 ———›———›———›———›———›<p.droite<dir> <img #pymyadmin_logo.svg #height=100px> >
275 ———›———›———›———›———›>
276 ———›———›———›———›>
277
278 ———›———›———›# Groupe Base de données
279 ———›———›———›#-----------------------
280 ———›———›———›<incl %@pyma_page=page_dbprops>
281 ———›———›———›<table
282 ———›———›———›———›<tr.h+centre <th ><th <@Table> ><th <@Action> ><th <@Rows> ><th <@Type> ><th <@Collation> ><th <@Size> ><th <@Overhead> >>
283 ———›———›———›———›<py database_props('<%@pyma_database>')>
284 ———›———›———›———›>
285
286 ———›———›———›# Groupe Table
287 ———›———›———›#-------------
288 ———›———›———›<incl %@pyma_page=page_browse>
289 ———›———›———›<table
290 ———›———›———›———›<py table_liste('<%@pyma_database>','<%@pyma_table>')>
291 ———›———›———›———›>
292
293 ———›———›———›<else>
294 ———›———›———›<p.centre <img #themes/atwork.png>>
295 ———›———›———›<h2.centre <@Forthcoming>>
296 ———›———›———›<incl>
297 ———›———›———›<hr>
298 ———›———›———›>
299 ———›———›>
300 ———›>
301
© 2017 Jean-Luc-Blary