@@ -84,11 +84,11 @@
84 84 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
setup_menu_entry("Header", "setup_header",
85 85 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
"Edit HTML text inserted at the top of every page");
86 86 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
setup_menu_entry("Footer", "setup_footer",
87 87 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
"Edit HTML text inserted at the bottom of every page");
88 88 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
setup_menu_entry("Logo", "setup_logo",
89 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- "Change the logo image for the server");
89 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ "Change the logo and background images for the server");
90 90 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
setup_menu_entry("Shunned", "shun",
91 91 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
"Show artifacts that are shunned by this repository");
92 92 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
setup_menu_entry("Log", "rcvfromlist",
93 93 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
"A record of received artifacts and their sources");
94 94 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
setup_menu_entry("User-Log", "access_log",
@@ -1319,69 +1319,123 @@
1319 1319 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
1320 1320 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
/*
1321 1321 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
** WEBPAGE: setup_logo
1322 1322 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
*/
1323 1323 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
void setup_logo(void){
1324 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- const char *zMime = db_get("logo-mimetype","image/gif");
1325 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- const char *aImg = P("im");
1326 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- int szImg = atoi(PD("im:bytes","0"));
1327 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- if( szImg>0 ){
1328 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- zMime = PD("im:mimetype","image/gif");
1324 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ const char *zLogoMime = db_get("logo-mimetype","image/gif");
1325 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ const char *aLogoImg = P("logoim");
1326 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ int szLogoImg = atoi(PD("logoim:bytes","0"));
1327 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ const char *zBgMime = db_get("background-mimetype","image/gif");
1328 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ const char *aBgImg = P("bgim");
1329 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ int szBgImg = atoi(PD("bgim:bytes","0"));
1330 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ if( szLogoImg>0 ){
1331 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ zLogoMime = PD("logoim:mimetype","image/gif");
1332 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ }
1333 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ if( szBgImg>0 ){
1334 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ zBgMime = PD("bgim:mimetype","image/gif");
1329 1335 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
1330 1336 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
login_check_credentials();
1331 1337 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
if( !g.perm.Setup ){
1332 1338 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
login_needed();
1333 1339 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
1334 1340 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
db_begin_transaction();
1335 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- if( P("set")!=0 && zMime && zMime[0] && szImg>0 ){
1341 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ if( P("setlogo")!=0 && zLogoMime && zLogoMime[0] && szLogoImg>0 ){
1336 1342 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
Blob img;
1337 1343 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
Stmt ins;
1338 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- blob_init(&img, aImg, szImg);
1344 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ blob_init(&img, aLogoImg, szLogoImg);
1339 1345 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
db_prepare(&ins,
1340 1346 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
"REPLACE INTO config(name,value,mtime)"
1341 1347 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
" VALUES('logo-image',:bytes,now())"
1342 1348 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
);
1343 1349 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
db_bind_blob(&ins, ":bytes", &img);
1344 1350 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
db_step(&ins);
1345 1351 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
db_finalize(&ins);
1346 1352 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
db_multi_exec(
1347 1353 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
"REPLACE INTO config(name,value,mtime) VALUES('logo-mimetype',%Q,now())",
1348 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- zMime
1354 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ zLogoMime
1355 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ );
1356 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ db_end_transaction(0);
1357 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ cgi_redirect("setup_logo");
1358 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ }else if( P("clrlogo")!=0 ){
1359 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ db_multi_exec(
1360 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ "DELETE FROM config WHERE name IN "
1361 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ "('logo-image','logo-mimetype')"
1362 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ );
1363 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ db_end_transaction(0);
1364 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ cgi_redirect("setup_logo");
1365 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ }else if( P("setbg")!=0 && zBgMime && zBgMime[0] && szBgImg>0 ){
1366 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ Blob img;
1367 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ Stmt ins;
1368 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ blob_init(&img, aBgImg, szBgImg);
1369 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ db_prepare(&ins,
1370 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ "REPLACE INTO config(name,value,mtime)"
1371 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ " VALUES('background-image',:bytes,now())"
1372 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ );
1373 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ db_bind_blob(&ins, ":bytes", &img);
1374 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ db_step(&ins);
1375 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ db_finalize(&ins);
1376 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ db_multi_exec(
1377 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ "REPLACE INTO config(name,value,mtime)"
1378 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ " VALUES('background-mimetype',%Q,now())",
1379 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ zBgMime
1349 1380 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
);
1350 1381 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
db_end_transaction(0);
1351 1382 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
cgi_redirect("setup_logo");
1352 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- }else if( P("clr")!=0 ){
1383 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ }else if( P("clrbg")!=0 ){
1353 1384 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
db_multi_exec(
1354 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- "DELETE FROM config WHERE name GLOB 'logo-*'"
1385 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ "DELETE FROM config WHERE name IN "
1386 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ "('background-image','background-mimetype')"
1355 1387 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
);
1356 1388 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
db_end_transaction(0);
1357 1389 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
cgi_redirect("setup_logo");
1358 1390 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
1359 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- style_header("Edit Project Logo");
1360 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- @ <p>The current project logo has a MIME-Type of <b>%h(zMime)</b> and looks
1361 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- @ like this:</p>
1362 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- @ <blockquote><p><img src="%s(g.zTop)/logo" alt="logo" /></p></blockquote>
1391 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ style_header("Edit Project Logo And Background");
1392 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ @ <p>The current project logo has a MIME-Type of <b>%h(zLogoMime)</b>
1393 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ @ and looks like this:</p>
1394 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ @ <blockquote><p><img src="%s(g.zTop)/logo" alt="logo" border="1" />
1395 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ @ </p></blockquote>
1363 1396 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
@
1397 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ @ <form action="%s(g.zTop)/setup_logo" method="post"
1398 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ @ enctype="multipart/form-data"><div>
1364 1399 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
@ <p>The logo is accessible to all users at this URL:
1365 1400 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
@ <a href="%s(g.zBaseURL)/logo">%s(g.zBaseURL)/logo</a>.
1366 1401 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
@ The logo may or may not appear on each
1367 1402 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
@ page depending on the <a href="setup_editcss">CSS</a> and
1368 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- @ <a href="setup_header">header setup</a>.</p>
1403 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ @ <a href="setup_header">header setup</a>.
1404 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ @ To change the logo image, use the following form:</p>
1405 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ login_insert_csrf_secret();
1406 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ @ Logo Image file:
1407 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ @ <input type="file" name="logoim" size="60" accept="image/*" />
1408 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ @ <p align="center">
1409 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ @ <input type="submit" name="setlogo" value="Change Logo" />
1410 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ @ <input type="submit" name="clrlogo" value="Revert To Default" /></p>
1411 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ @ </div></form>
1412 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ @ <hr />
1413 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ @
1414 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ @ <p>The current background image has a MIME-Type of <b>%h(zBgMime)</b>
1415 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ @ and looks like this:</p>
1416 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ @ <blockquote><p><img src="%s(g.zTop)/background" alt="background" border=1 />
1417 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ @ </p></blockquote>
1369 1418 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
@
1370 1419 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
@ <form action="%s(g.zTop)/setup_logo" method="post"
1371 1420 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
@ enctype="multipart/form-data"><div>
1372 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- @ <p>To set a new logo image, select a file to use as the logo using
1373 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- @ the entry box below and then press the "Change Logo" button.</p>
1421 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ @ <p>The background image is accessible to all users at this URL:
1422 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ @ <a href="%s(g.zBaseURL)/background">%s(g.zBaseURL)/background</a>.
1423 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ @ The background image may or may not appear on each
1424 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ @ page depending on the <a href="setup_editcss">CSS</a> and
1425 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ @ <a href="setup_header">header setup</a>.
1426 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ @ To change the background image, use the following form:</p>
1374 1427 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
login_insert_csrf_secret();
1375 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- @ Logo Image file:
1376 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- @ <input type="file" name="im" size="60" accept="image/*" /><br />
1377 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- @ <input type="submit" name="set" value="Change Logo" />
1378 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- @ <input type="submit" name="clr" value="Revert To Default" />
1428 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ @ Background image file:
1429 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ @ <input type="file" name="bgim" size="60" accept="image/*" />
1430 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ @ <p align="center">
1431 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ @ <input type="submit" name="setbg" value="Change Background" />
1432 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ @ <input type="submit" name="clrbg" value="Revert To Default" /></p>
1379 1433 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
@ </div></form>
1434 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ @ <hr />
1380 1435 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
@
1381 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- @ <p><span class="note">Note:</span> Your browser has probably cached the
1382 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- @ logo image, so you will probably need to press the Reload button on your
1383 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- @ browser after changing the logo to provoke your browser to reload the new
1384 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- @ logo image. </p>
1436 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ @ <p><span class="note">Note:</span> Your browser has probably cached these
1437 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ @ images, so you may need to press the Reload button before changes will
1438 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ @ take effect. </p>
1385 1439 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
style_footer();
1386 1440 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
db_end_transaction(0);
1387 1441 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
1388 1442 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!