Many hyperlinks are disabled.
Use anonymous login
to enable hyperlinks.
Overview
Comment: | Make forum posts visible to object_description(). Add new diagnostics visible to users with the new "D" capability. |
---|---|
Downloads: | Tarball | ZIP archive |
Timelines: | family | ancestors | descendants | both | forum-v2 |
Files: | files | file ages | folders |
SHA3-256: |
2883fb80cf155f493a111d7e57b49636 |
User & Date: | drh 2018-07-25 13:48:20.166 |
Context
2018-07-25
| ||
15:02 | If the user has the 'D' capability and the "showqp" query parameter exists, then all query parameters are shown at the top of the webpage. Also, fix some issues with forum. ... (check-in: b48068de user: drh tags: forum-v2) | |
13:48 | Make forum posts visible to object_description(). Add new diagnostics visible to users with the new "D" capability. ... (check-in: 2883fb80 user: drh tags: forum-v2) | |
13:21 | Merge enhancements from trunk. ... (check-in: 94262a8c user: drh tags: forum-v2) | |
Changes
Changes to src/default_css.txt.
︙ | ︙ | |||
670 671 672 673 674 675 676 | div.forum_body p { margin-top: 0; } td.form_label { vertical-align: top; text-align: right; } | > > > > | 670 671 672 673 674 675 676 677 678 679 680 | div.forum_body p { margin-top: 0; } td.form_label { vertical-align: top; text-align: right; } .debug { background-color: #ffc; border: 2px solid #ff0; } |
Changes to src/forum.c.
︙ | ︙ | |||
53 54 55 56 57 58 59 | if( i>0 ){ @ <hr> } i++; if( pPost->zThreadTitle ){ @ <h1>%h(pPost->zThreadTitle)</h1> } | | | | > > > > | 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 | if( i>0 ){ @ <hr> } i++; if( pPost->zThreadTitle ){ @ <h1>%h(pPost->zThreadTitle)</h1> } @ <p>By %h(pPost->zUser) on %h(zDate) (%d(fpid)) if( fprev ){ @ edit of %d(fprev) } if( firt ){ @ reply to %d(firt) } if( g.perm.Debug ){ @ <span class="debug">\ @ <a href="%R/artifact/%h(zUuid)">raw artifact</a></span> } forum_render(pPost->zMimetype, pPost->zWiki); if( g.perm.WrForum ){ int sameUser = login_is_individual() && fossil_strcmp(pPost->zUser, g.zLogin)==0; int isPrivate = content_is_private(fpid); @ <p><form action="%R/forumedit" method="POST"> |
︙ | ︙ | |||
230 231 232 233 234 235 236 | mimetype_option_menu(zMimetype); @ <br><textarea name="content" class="wikiedit" cols="80" \ @ rows="25" wrap="virtual">%h(zContent)</textarea><br> } /* ** WEBPAGE: forumnew | < | < < | 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 | mimetype_option_menu(zMimetype); @ <br><textarea name="content" class="wikiedit" cols="80" \ @ rows="25" wrap="virtual">%h(zContent)</textarea><br> } /* ** WEBPAGE: forumnew ** ** Start a new forum thread. */ void forumnew_page(void){ const char *zTitle = PDT("title",""); const char *zMimetype = PD("mimetype","text/x-fossil-wiki"); const char *zContent = PDT("content",""); login_check_credentials(); if( !g.perm.WrForum ){ |
︙ | ︙ | |||
262 263 264 265 266 267 268 | forum_entry_widget(zTitle, zMimetype, zContent); @ <input type="submit" name="preview" value="Preview"> if( P("preview") ){ @ <input type="submit" name="submit" value="Submit"> }else{ @ <input type="submit" name="submit" value="Submit" disabled> } | | > | > | 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 | forum_entry_widget(zTitle, zMimetype, zContent); @ <input type="submit" name="preview" value="Preview"> if( P("preview") ){ @ <input type="submit" name="submit" value="Submit"> }else{ @ <input type="submit" name="submit" value="Submit" disabled> } if( g.perm.Debug ){ /* For the test-forumnew page add these extra debugging controls */ @ <div class="debug"> @ <label><input type="checkbox" name="dryrun" %s(PCK("dryrun"))> \ @ Dry run</label> @ <br><label><input type="checkbox" name="domod" %s(PCK("domod"))> \ @ Require moderator approval</label> @ </div> } @ </form> style_footer(); } /* ** WEBPAGE: forumreply |
︙ | ︙ | |||
358 359 360 361 362 363 364 | @ <form action="%R/forumedit" method="POST"> @ <input type="hidden" name="fpid" value="%h(P("fpid"))"> @ <input type="hidden" name="reply" value="1"> forum_entry_widget(0, zMimetype, zContent); @ <input type="submit" name="preview" value="Preview"> if( P("preview") ){ @ <input type="submit" name="submit" value="Submit"> | < < | > > > > > > > > | 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 | @ <form action="%R/forumedit" method="POST"> @ <input type="hidden" name="fpid" value="%h(P("fpid"))"> @ <input type="hidden" name="reply" value="1"> forum_entry_widget(0, zMimetype, zContent); @ <input type="submit" name="preview" value="Preview"> if( P("preview") ){ @ <input type="submit" name="submit" value="Submit"> } if( g.perm.Debug ){ /* For the test-forumnew page add these extra debugging controls */ @ <div class="debug"> @ <label><input type="checkbox" name="dryrun" %s(PCK("dryrun"))> \ @ Dry run</label> @ <br><label><input type="checkbox" name="domod" %s(PCK("domod"))> \ @ Require moderator approval</label> @ </div> } @ </form> } style_footer(); } |
Changes to src/info.c.
︙ | ︙ | |||
1229 1230 1231 1232 1233 1234 1235 1236 1237 1238 1239 1240 1241 1242 | #define OBJTYPE_WIKI 0x0004 #define OBJTYPE_TICKET 0x0008 #define OBJTYPE_ATTACHMENT 0x0010 #define OBJTYPE_EVENT 0x0020 #define OBJTYPE_TAG 0x0040 #define OBJTYPE_SYMLINK 0x0080 #define OBJTYPE_EXE 0x0100 /* ** Possible flags for the second parameter to ** object_description() */ #define OBJDESC_DETAIL 0x0001 /* more detail */ #endif | > | 1229 1230 1231 1232 1233 1234 1235 1236 1237 1238 1239 1240 1241 1242 1243 | #define OBJTYPE_WIKI 0x0004 #define OBJTYPE_TICKET 0x0008 #define OBJTYPE_ATTACHMENT 0x0010 #define OBJTYPE_EVENT 0x0020 #define OBJTYPE_TAG 0x0040 #define OBJTYPE_SYMLINK 0x0080 #define OBJTYPE_EXE 0x0100 #define OBJTYPE_FORUM 0x0200 /* ** Possible flags for the second parameter to ** object_description() */ #define OBJDESC_DETAIL 0x0001 /* more detail */ #endif |
︙ | ︙ | |||
1421 1422 1423 1424 1425 1426 1427 1428 1429 1430 1431 1432 1433 1434 | if( eventTagId != 0) { @ Instance of technote objType |= OBJTYPE_EVENT; hyperlink_to_event_tagid(db_column_int(&q, 5)); }else{ @ Attachment to technote } }else{ @ Tag referencing } if( zType[0]!='e' || eventTagId == 0){ hyperlink_to_uuid(zUuid); } @ - %!W(zCom) by | > > > | 1422 1423 1424 1425 1426 1427 1428 1429 1430 1431 1432 1433 1434 1435 1436 1437 1438 | if( eventTagId != 0) { @ Instance of technote objType |= OBJTYPE_EVENT; hyperlink_to_event_tagid(db_column_int(&q, 5)); }else{ @ Attachment to technote } }else if( zType[0]=='f' ){ objType |= OBJTYPE_FORUM; @ Forum post }else{ @ Tag referencing } if( zType[0]!='e' || eventTagId == 0){ hyperlink_to_uuid(zUuid); } @ - %!W(zCom) by |
︙ | ︙ |