@@ -510,10 +510,12 @@
510 510 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
search_title_sqlfunc, 0, 0);
511 511 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
sqlite3_create_function(db, "body", 3, SQLITE_UTF8, 0,
512 512 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
search_body_sqlfunc, 0, 0);
513 513 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
sqlite3_create_function(db, "urlencode", 1, SQLITE_UTF8, 0,
514 514 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
search_urlencode_sqlfunc, 0, 0);
515 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ sqlite3_create_function(db, "diff", 1, SQLITE_UTF8, 0,
516 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ diff_sqlfunc, 0, 0);
515 517 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
516 518 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
517 519 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
/*
518 520 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
** Testing the search function.
519 521 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
**
@@ -600,11 +602,12 @@
600 602 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
/* What to search for */
601 603 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
#define SRCH_CKIN 0x0001 /* Search over check-in comments */
602 604 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
#define SRCH_DOC 0x0002 /* Search over embedded documents */
603 605 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
#define SRCH_TKT 0x0004 /* Search over tickets */
604 606 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
#define SRCH_WIKI 0x0008 /* Search over wiki */
605 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- #define SRCH_ALL 0x000f /* Search over everything */
607 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ #define SRCH_DIFF 0x0010 /* Search check-in diffs */
608 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ #define SRCH_ALL 0x001f /* Search over everything */
606 609 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
#endif
607 610 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
608 611 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
/*
609 612 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
** Remove bits from srchFlags which are disallowed by either the
610 613 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
** current server configuration or by user permissions.
@@ -615,13 +618,14 @@
615 618 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
static const struct { unsigned m; const char *zKey; } aSetng[] = {
616 619 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{ SRCH_CKIN, "search-ci" },
617 620 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{ SRCH_DOC, "search-doc" },
618 621 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{ SRCH_TKT, "search-tkt" },
619 622 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{ SRCH_WIKI, "search-wiki" },
623 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ { SRCH_DIFF, "search-diff" },
620 624 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
};
621 625 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
int i;
622 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- if( g.perm.Read==0 ) srchFlags &= ~(SRCH_CKIN|SRCH_DOC);
626 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ if( g.perm.Read==0 ) srchFlags &= ~(SRCH_CKIN|SRCH_DOC|SRCH_DIFF);
623 627 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
if( g.perm.RdTkt==0 ) srchFlags &= ~(SRCH_TKT);
624 628 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
if( g.perm.RdWiki==0 ) srchFlags &= ~(SRCH_WIKI);
625 629 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
for(i=0; i<ArraySize(aSetng); i++){
626 630 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
unsigned int m = aSetng[i].m;
627 631 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
if( (srchFlags & m)==0 ) continue;
@@ -841,10 +845,11 @@
841 845 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
static const struct { unsigned m; char c; } aMask[] = {
842 846 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{ SRCH_CKIN, 'c' },
843 847 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{ SRCH_DOC, 'd' },
844 848 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{ SRCH_TKT, 't' },
845 849 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{ SRCH_WIKI, 'w' },
850 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ { SRCH_DIFF, 'x' },
846 851 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
};
847 852 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
int i;
848 853 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
for(i=0; i<ArraySize(aMask); i++){
849 854 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
if( srchFlags & aMask[i].m ){
850 855 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
blob_appendf(&sql, "%sftsdocs.type='%c'", zSep, aMask[i].c);
@@ -988,10 +993,11 @@
988 993 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
switch( srchFlags ){
989 994 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
case SRCH_CKIN: zType = " Check-ins"; zClass = "Ckin"; break;
990 995 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
case SRCH_DOC: zType = " Docs"; zClass = "Doc"; break;
991 996 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
case SRCH_TKT: zType = " Tickets"; zClass = "Tkt"; break;
992 997 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
case SRCH_WIKI: zType = " Wiki"; zClass = "Wiki"; break;
998 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ case SRCH_DIFF: zType = " Diffs"; zClass = "Diff"; break;
993 999 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
994 1000 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
if( srchFlags==0 ){
995 1001 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
zDisable1 = " disabled";
996 1002 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
zDisable2 = " disabled";
997 1003 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
zPattern = "";
@@ -1012,10 +1018,11 @@
1012 1018 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{ "all", "All", SRCH_ALL },
1013 1019 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{ "c", "Check-ins", SRCH_CKIN },
1014 1020 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{ "d", "Docs", SRCH_DOC },
1015 1021 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{ "t", "Tickets", SRCH_TKT },
1016 1022 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{ "w", "Wiki", SRCH_WIKI },
1023 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ { "z", "Diff", SRCH_DIFF },
1017 1024 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
};
1018 1025 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
const char *zY = PD("y","all");
1019 1026 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
unsigned newFlags = srchFlags;
1020 1027 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
int i;
1021 1028 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
@ <select size='1' name='y'>
@@ -1063,10 +1070,11 @@
1063 1070 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
** y=TYPE What to search.
1064 1071 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
** c -> check-ins
1065 1072 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
** d -> documentation
1066 1073 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
** t -> tickets
1067 1074 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
** w -> wiki
1075 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ ** x -> diff
1068 1076 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
** all -> everything
1069 1077 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
*/
1070 1078 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
void search_page(void){
1071 1079 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
login_check_credentials();
1072 1080 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
style_header("Search");
@@ -1169,10 +1177,11 @@
1169 1177 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
**
1170 1178 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
** cType: d Embedded documentation
1171 1179 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
** w Wiki page
1172 1180 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
** c Check-in comment
1173 1181 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
** t Ticket text
1182 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ ** x Check-in diffs
1174 1183 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
**
1175 1184 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
** rid The RID of an artifact that defines the object
1176 1185 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
** being searched.
1177 1186 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
**
1178 1187 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
** zName Name of the object being searched.
@@ -1182,10 +1191,11 @@
1182 1191 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
int rid, /* BLOB.RID or TAG.TAGID value for document */
1183 1192 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
const char *zName, /* Auxiliary information */
1184 1193 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
Blob *pOut /* OUT: Initialize to the search text */
1185 1194 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
){
1186 1195 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
blob_init(pOut, 0, 0);
1196 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ /* printf("stext(%c%d)\n", cType, rid); fflush(stdout); */
1187 1197 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
switch( cType ){
1188 1198 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
case 'd': { /* Documents */
1189 1199 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
Blob doc;
1190 1200 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
content_get(rid, &doc);
1191 1201 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
blob_to_utf8_no_bom(&doc, 0);
@@ -1201,10 +1211,14 @@
1201 1211 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
get_stext_by_mimetype(&wiki, wiki_filter_mimetypes(pWiki->zMimetype),
1202 1212 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
pOut);
1203 1213 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
blob_reset(&wiki);
1204 1214 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
manifest_destroy(pWiki);
1205 1215 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
break;
1216 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ }
1217 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ case 'x': { /* Check-in diff */
1218 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ diff_for_search(rid, pOut);
1219 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ break;
1206 1220 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
1207 1221 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
case 'c': { /* Check-in Comments */
1208 1222 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
static Stmt q;
1209 1223 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
static int isPlainText = -1;
1210 1224 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
db_static_prepare(&q,
@@ -1411,10 +1425,14 @@
1411 1425 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
search_sql_setup(g.db);
1412 1426 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
db_multi_exec(
1413 1427 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
"INSERT OR IGNORE INTO ftsdocs(type,rid,idxed)"
1414 1428 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
" SELECT 'c', objid, 0 FROM event WHERE type='ci';"
1415 1429 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
);
1430 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ db_multi_exec(
1431 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ "INSERT OR IGNORE INTO ftsdocs(type,rid,idxed)"
1432 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ " SELECT 'x', objid, 0 FROM event WHERE type='ci';"
1433 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ );
1416 1434 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
db_multi_exec(
1417 1435 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
"WITH latest_wiki(rid,name,mtime) AS ("
1418 1436 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
" SELECT tagxref.rid, substr(tag.tagname,6), max(tagxref.mtime)"
1419 1437 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
" FROM tag, tagxref"
1420 1438 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
" WHERE tag.tagname GLOB 'wiki-*'"
@@ -1545,10 +1563,32 @@
1545 1563 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
" WHERE ftsdocs.type='c' AND NOT ftsdocs.idxed"
1546 1564 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
" AND event.objid=ftsdocs.rid"
1547 1565 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
" AND blob.rid=ftsdocs.rid"
1548 1566 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
);
1549 1567 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
1568 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+
1569 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ /*
1570 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ ** Deal with all of the unindexed 'x' terms in FTSDOCS
1571 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ */
1572 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ static void search_update_diff_index(void){
1573 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ db_multi_exec(
1574 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ "INSERT INTO ftsidx(docid,title,body)"
1575 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ " SELECT rowid, '', body('x',rid,NULL) FROM ftsdocs"
1576 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ " WHERE type='x' AND NOT idxed;"
1577 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ );
1578 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ db_multi_exec(
1579 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ "REPLACE INTO ftsdocs(rowid,idxed,type,rid,name,label,url,mtime)"
1580 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ " SELECT ftsdocs.rowid, 1, 'x', ftsdocs.rid, NULL,"
1581 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ " printf('Check-in [%%.16s] on %%s',blob.uuid,datetime(event.mtime)),"
1582 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ " printf('/info/%%.20s',blob.uuid),"
1583 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ " event.mtime"
1584 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ " FROM ftsdocs, event, blob"
1585 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ " WHERE ftsdocs.type='x' AND NOT ftsdocs.idxed"
1586 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ " AND event.objid=ftsdocs.rid"
1587 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ " AND blob.rid=ftsdocs.rid"
1588 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ );
1589 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ }
1550 1590 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
1551 1591 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
/*
1552 1592 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
** Deal with all of the unindexed 't' terms in FTSDOCS
1553 1593 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
*/
1554 1594 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
static void search_update_ticket_index(void){
@@ -1604,10 +1644,13 @@
1604 1644 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
search_sql_setup(g.db);
1605 1645 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
if( srchFlags & (SRCH_CKIN|SRCH_DOC) ){
1606 1646 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
search_update_doc_index();
1607 1647 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
search_update_checkin_index();
1608 1648 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
1649 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ if( srchFlags & SRCH_DIFF ){
1650 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ search_update_diff_index();
1651 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ }
1609 1652 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
if( srchFlags & SRCH_TKT ){
1610 1653 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
search_update_ticket_index();
1611 1654 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
1612 1655 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
if( srchFlags & SRCH_WIKI ){
1613 1656 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
search_update_wiki_index();
@@ -1637,14 +1680,14 @@
1637 1680 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
** reindex Rebuild the search index. This is a no-op if
1638 1681 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
** index search is disabled
1639 1682 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
**
1640 1683 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
** index (on|off) Turn the search index on or off
1641 1684 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
**
1642 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- ** enable cdtw Enable various kinds of search. c=Check-ins,
1643 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- ** d=Documents, t=Tickets, w=Wiki.
1685 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ ** enable cdtwx Enable various kinds of search. c=Check-ins,
1686 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ ** d=Documents, t=Tickets, w=Wiki, x=Diffs.
1644 1687 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
**
1645 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- ** disable cdtw Disable various kinds of search
1688 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ ** disable cdtwx Disable various kinds of search
1646 1689 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
**
1647 1690 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
** stemmer (on|off) Turn the Porter stemmer on or off for indexed
1648 1691 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
** search. (Unindexed search is never stemmed.)
1649 1692 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
**
1650 1693 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
** The current search settings are displayed after any changes are applied.
@@ -1657,14 +1700,15 @@
1657 1700 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{ 3, "disable" },
1658 1701 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{ 4, "enable" },
1659 1702 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{ 5, "stemmer" },
1660 1703 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
};
1661 1704 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
static const struct { char *zSetting; char *zName; char *zSw; } aSetng[] = {
1662 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- { "search-ckin", "check-in search:", "c" },
1663 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- { "search-doc", "document search:", "d" },
1664 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- { "search-tkt", "ticket search:", "t" },
1665 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- { "search-wiki", "wiki search:", "w" },
1705 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ { "search-ckin", "check-in comment search:", "c" },
1706 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ { "search-diff", "check-in diff search:", "x" },
1707 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ { "search-doc", "document search:", "d" },
1708 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ { "search-tkt", "ticket search:", "t" },
1709 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ { "search-wiki", "wiki search:", "w" },
1666 1710 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
};
1667 1711 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
char *zSubCmd = 0;
1668 1712 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
int i, j, n;
1669 1713 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
int iCmd = 0;
1670 1714 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
int iAction = 0;
@@ -1683,10 +1727,12 @@
1683 1727 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
zSubCmd, blob_str(&all));
1684 1728 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
return;
1685 1729 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
1686 1730 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
iCmd = aCmd[i].iCmd;
1687 1731 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
1732 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ login_set_capabilities("s",0);
1733 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ g.zTop = "";
1688 1734 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
if( iCmd==1 ){
1689 1735 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
if( search_index_exists() ) iAction = 2;
1690 1736 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
1691 1737 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
if( iCmd==2 ){
1692 1738 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
if( g.argc<3 ) usage("index (on|off)");
@@ -1719,19 +1765,19 @@
1719 1765 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
search_rebuild_index();
1720 1766 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
1721 1767 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
1722 1768 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
/* Always show the status before ending */
1723 1769 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
for(i=0; i<ArraySize(aSetng); i++){
1724 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- fossil_print("%-16s %s\n", aSetng[i].zName,
1770 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ fossil_print("%-25s %s\n", aSetng[i].zName,
1725 1771 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
db_get_boolean(aSetng[i].zSetting,0) ? "on" : "off");
1726 1772 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
1727 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- fossil_print("%-16s %s\n", "Porter stemmer:",
1773 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ fossil_print("%-25s %s\n", "Porter stemmer:",
1728 1774 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
db_get_boolean("search-stemmer",0) ? "on" : "off");
1729 1775 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
if( search_index_exists() ){
1730 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- fossil_print("%-16s enabled\n", "full-text index:");
1731 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- fossil_print("%-16s %d\n", "documents:",
1776 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ fossil_print("%-25s enabled\n", "full-text index:");
1777 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ fossil_print("%-25s %d\n", "documents:",
1732 1778 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
db_int(0, "SELECT count(*) FROM ftsdocs"));
1733 1779 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}else{
1734 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- fossil_print("%-16s disabled\n", "full-text index:");
1780 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ fossil_print("%-25s disabled\n", "full-text index:");
1735 1781 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
1736 1782 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
db_end_transaction(0);
1737 1783 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
1738 1784 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!