446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
|
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
|
-
+
|
}
/*
** WEBPAGE: setup_skin_admin
**
** Administrative actions on skins. For administrators only.
*/
void setup_skin_admin(void){
void setup_skin_admin_page(void){
const char *z;
char *zName;
char *zErr = 0;
const char *zCurrent = 0; /* Current skin */
int i; /* Loop counter */
Stmt q;
int seenCurrent = 0;
|
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
|
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
|
-
+
|
**
** Edit aspects of a skin determined by the w= query parameter.
** Requires Admin or Setup privileges.
**
** w=NUM -- 0=CSS, 1=footer, 2=header, 3=details, 4=js
** sk=NUM -- the draft skin number
*/
void setup_skinedit(void){
void setup_skinedit_page(void){
static const struct sSkinAddr {
const char *zFile;
const char *zTitle;
const char *zSubmenu;
} aSkinAttr[] = {
/* 0 */ { "css", "CSS", "CSS", },
/* 1 */ { "footer", "Page Footer", "Footer", },
|
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
|
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
|
-
+
|
}
/*
** WEBPAGE: setup_skin
**
** Generate a page showing the steps needed to customize a skin.
*/
void setup_skin(void){
void setup_skin_page(void){
int i; /* Loop counter */
int iSkin; /* Which draft skin is being edited */
int isSetup; /* True for an administrator */
int isEditor; /* Others authorized to make edits */
char *zAllowedEditors; /* Who may edit the draft skin */
char *zBase; /* Base URL for draft under test */
static const char *const azTestPages[] = {
|