tree checksum vpatch file split hunks
all signers: lobbes bvt diana_coman asciilifeform
antecedents: searchpg_oldlinks.kv
press order:
patch:
(18 . 3)(18 . 4)
5 641046 search_all_chans asciilifeform "Button to search in all logged chans"
6 641484 navbar_date_auto asciilifeform "Automatically skip empty days in navbar. Handle 'dawn of time' case."
7 641773 searchpg_oldlinks asciilifeform "Paginated search; automatic replacement of ancient logger link targets; fix for unicode barf in eat_dump.py."
8 641794 aug2020_errata asciilifeform "Stylistic fixes for previous patch."
- 496CD713B60FFCC7F21BE04CBBCF6A1316787F72B4E111CC2DD503E20CF73BF66EB739EAB8349CAA58DB3832413F01C17155CD4D64DE735A3721610F6205DD78(159 . 11)(159 . 19)
13 (1) Automatically skip empty days in date navigation bar. At the same time, handle empty days correctly when these are requested.
14 (2) Handle 'dawn of time' case for any given channel, to avoid infinite loop insanity from search engines.
15
16 ####################
17 Aug. 2020 Update :
18 ####################
19 #####################
20 Aug. 2020 Update #1 :
21 #####################
22
23 (1) Implemented fetch-by-channel-and-index (i.e. /ilog/chan/lineindex links).
24 (2) Automatically adjust link targets of #ba and 'btcbase' log citations to point to this logger, using the syntax in (1). Original text of link is preserved. Dates are handled correctly.
25 (3) Search results now properly paginated, with working 'back' and 'forward' buttons.
26 (4) Fixed ancient unicode bug in eat_dump.py.
27
28 #####################
29 Aug. 2020 Update #2 :
30 #####################
31
32 (1) Additional 'back' and 'forward' buttons at the bottom of search result pages.
33 (2) Fix era1/2 link diddler regexps to handle all (AFAIK) known variants correctly.
34
- C9984744C90B16EDBB46D64DE35F29247076166350A48239295A72270097CB3FD557B38D252B458174361022324D7A0C0714AABC70E68AA375924F62F19497EC(248 . 7)(248 . 7)- EDC98BFF7FE4F217B1A45A90926BA3ABBBD416C50463D9A162886CBFF07402F55E8CEA5486E212014E2FBB23BACE0701F72011452D55A8D12322FFCE2EA0E875
39 stdlinks_re = re.compile('(http[^ \[\]]+)')
40
41 # For era 1 ('bitcoin-assets') links :
42 era1_re = re.compile('(<a href="http[^ \[\]]\/\/log\d*\.bitcoin-assets\.com\/\?date=\d+-\d+-\d+#)(\d+)')
43 era1_re = re.compile('(<a href="http[^ \[\]]\/\/log\d*\.bitcoin-assets\.com\/+\?date=\d+-\d+-\d+#)(\d+)')
44
45 # For era 2 ('btcbase') links :
46 era2_re = re.compile('(<a href="http[^ \[\]]\/\/btcbase\.org\/log\/\d+-\d+-\d+#)(\d+)')
(269 . 13)(269 . 11)
48 # For ancient logs strictly: substitute orig. link with our logger :
49 if l['era'] < 3:
50 payload = re.sub(era1_re,
51 r'<a href="/ilog/{0}/\2'.format(l['chan']),
52 payload)
53 r'<a href="/ilog/trilema/\2', payload)
54
55 # Adjust era 2 links in all cases:
56 payload = re.sub(era2_re,
57 r'<a href="/ilog/{0}/\2'.format(l['chan']),
58 payload)
59 r'<a href="/ilog/trilema/\2', payload)
60
61 # If this is a search result, illuminate the matched strings:
62 if highlights != []:
(589 . 7)(587 . 6)
64 # Ending index of search results
65 eres = offset + min(nres, Max_Search_Results)
66
67 # No paging support just yet:
68 return render_template('searchres.html',
69 query = query,
70 hquery = html_escape(query),
(1 . 7)(1 . 7)
75 {% extends "layout.html" %}
76
77 {% block title %}
78 Results {{ sres }} ... {{ eres }} for {{ query }} in {{ legend }}
79 Results {{ sres + 1 }} ... {{ eres }} for '{{ hquery }}'...
80 {% endblock %}
81
82 {% block body %}
(22 . 4)(22 . 15)
84 {{ format_logline(l, tokens, [], showchan) | safe }}
85 {% endfor %}
86
87 <hr>
88
89 <div id="navbarblock">
90 <div align="center"><span>
91 {% if back %}<a href="/log-search?q={{ query }}&chan={{ chan }}&after={{ sres - psize }}">←</a> | {% endif %}{% if forw %}
92 <a href="/log-search?q={{ query }}&chan={{ chan }}&after={{ eres }}">→</a>
93 {% endif %}
94 </span></div>
95 </div>
96 <div style="clear: both;"></div>
97
98 {% endblock %}