| ︙ | | | ︙ | |
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
|
** submenu elements. The header generation is deferred until this point
** so that we know that all style_submenu_element() and similar have
** been received.
**
** * Finalizes the page content.
**
** * Appends the footer.
**
** The zPageType argument is a class name inserted in the <div> that
** surrounds the page content. CSS can use this to have different styles
** according to the page type.
*/
void style_finish_page(const char* zPageType){
const char *zFooter;
const char *zAd = 0;
unsigned int mAdFlags = 0;
if( !headerHasBeenGenerated ) return;
/* Go back and put the submenu at the top of the page. We delay the
|
<
<
<
<
|
|
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
|
** submenu elements. The header generation is deferred until this point
** so that we know that all style_submenu_element() and similar have
** been received.
**
** * Finalizes the page content.
**
** * Appends the footer.
*/
void style_finish_page(){
const char *zFooter;
const char *zAd = 0;
unsigned int mAdFlags = 0;
if( !headerHasBeenGenerated ) return;
/* Go back and put the submenu at the top of the page. We delay the
|
| ︙ | | | ︙ | |
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
|
@ </div>
}else if( zAd ){
@ <div class="adunit_banner">
cgi_append_content(zAd, -1);
@ </div>
}
@ <div class="content %s(zPageType)"><span id="debugMsg"></span>
cgi_destination(CGI_BODY);
if( sideboxUsed ){
@ <div class="endContent"></div>
}
@ </div>
|
|
|
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
|
@ </div>
}else if( zAd ){
@ <div class="adunit_banner">
cgi_append_content(zAd, -1);
@ </div>
}
@ <div class="content"><span id="debugMsg"></span>
cgi_destination(CGI_BODY);
if( sideboxUsed ){
@ <div class="endContent"></div>
}
@ </div>
|
| ︙ | | | ︙ | |
1241
1242
1243
1244
1245
1246
1247
1248
1249
1250
1251
1252
1253
1254
1255
1256
1257
1258
1259
|
@ <hr />
@ <pre>
@ %h(blob_str(&g.httpHeader))
@ </pre>
}
}
if( zErr && zErr[0] ){
style_finish_page("error");
cgi_reply();
fossil_exit(1);
}else{
style_finish_page("test");
}
}
/*
** Generate a Not Yet Implemented error page.
*/
void webpage_not_yet_implemented(void){
|
|
|
|
1237
1238
1239
1240
1241
1242
1243
1244
1245
1246
1247
1248
1249
1250
1251
1252
1253
1254
1255
|
@ <hr />
@ <pre>
@ %h(blob_str(&g.httpHeader))
@ </pre>
}
}
if( zErr && zErr[0] ){
style_finish_page();
cgi_reply();
fossil_exit(1);
}else{
style_finish_page();
}
}
/*
** Generate a Not Yet Implemented error page.
*/
void webpage_not_yet_implemented(void){
|
| ︙ | | | ︙ | |
1282
1283
1284
1285
1286
1287
1288
1289
1290
1291
1292
1293
1294
1295
1296
|
}else{
zMsg = "Not Found";
}
style_set_current_feature("enotfound");
style_header("Not Found");
@ <p>%h(zMsg)</p>
cgi_set_status(404, "Not Found");
style_finish_page("enotfound");
}
#if INTERFACE
# define webpage_assert(T) if(!(T)){webpage_assert_page(__FILE__,__LINE__,#T);}
#endif
/*
|
|
|
1278
1279
1280
1281
1282
1283
1284
1285
1286
1287
1288
1289
1290
1291
1292
|
}else{
zMsg = "Not Found";
}
style_set_current_feature("enotfound");
style_header("Not Found");
@ <p>%h(zMsg)</p>
cgi_set_status(404, "Not Found");
style_finish_page();
}
#if INTERFACE
# define webpage_assert(T) if(!(T)){webpage_assert_page(__FILE__,__LINE__,#T);}
#endif
/*
|
| ︙ | | | ︙ | |