mirror of
https://github.com/osmarks/mycorrhiza.git
synced 2024-12-12 05:20:26 +00:00
Views: Reimplement the topics sidebar
Instead of qtpl and l18n, I used html/template and some functions. This is experimental, but overall looks much more maintainable in the future. Thinking...
This commit is contained in:
parent
72e0f445fd
commit
1c955fd081
@ -5,23 +5,5 @@
|
|||||||
"empty_error_line_1": "Try finding a different entry that would help you.",
|
"empty_error_line_1": "Try finding a different entry that would help you.",
|
||||||
"empty_error_line_2a": "If you want to write this entry by yourself, consider",
|
"empty_error_line_2a": "If you want to write this entry by yourself, consider",
|
||||||
"empty_error_link": "contributing",
|
"empty_error_link": "contributing",
|
||||||
"empty_error_line_2b": "to Mycorrhiza Wiki directly.",
|
"empty_error_line_2b": "to Mycorrhiza Wiki directly."
|
||||||
|
|
||||||
"topics": "Help topics",
|
|
||||||
"main": "Main",
|
|
||||||
"hypha": "Hypha",
|
|
||||||
"media": "Media",
|
|
||||||
"mycomarkup": "Mycomarkup",
|
|
||||||
"interface": "Interface",
|
|
||||||
"prevnext": "Previous/next",
|
|
||||||
"top_bar": "Top bar",
|
|
||||||
"sibling_hyphae": "Sibling hyphae",
|
|
||||||
"special_pages": "Special pages",
|
|
||||||
"recent_changes": "Recent changes",
|
|
||||||
"feeds": "Feeds",
|
|
||||||
"configuration": "Configuration (for administrators)",
|
|
||||||
"lock": "Lock",
|
|
||||||
"whitelist": "Whitelist",
|
|
||||||
"telegram": "Telegram authorization",
|
|
||||||
"config_file": "Configuration file"
|
|
||||||
}
|
}
|
||||||
|
@ -5,23 +5,5 @@
|
|||||||
"empty_error_line_1": "Попробуйте поискать другую страницу, способную вам помочь.",
|
"empty_error_line_1": "Попробуйте поискать другую страницу, способную вам помочь.",
|
||||||
"empty_error_line_2a": "Если вы хотите написать эту страницу сами, будем рады вашим правкам в ",
|
"empty_error_line_2a": "Если вы хотите написать эту страницу сами, будем рады вашим правкам в ",
|
||||||
"empty_error_link": "репозитории",
|
"empty_error_link": "репозитории",
|
||||||
"empty_error_line_2b": "Микоризы.",
|
"empty_error_line_2b": "Микоризы."
|
||||||
|
|
||||||
"topics": "Темы справки",
|
|
||||||
"main": "Введение",
|
|
||||||
"hypha": "Гифа",
|
|
||||||
"media": "Медиа",
|
|
||||||
"mycomarkup": "Микоразметка",
|
|
||||||
"interface": "Интерфейс",
|
|
||||||
"prevnext": "Назад/далее",
|
|
||||||
"top_bar": "Верхняя панель",
|
|
||||||
"sibling_hyphae": "Гифы-сиблинги",
|
|
||||||
"special_pages": "Специальные страницы",
|
|
||||||
"recent_changes": "Недавние изменения",
|
|
||||||
"feeds": "Ленты",
|
|
||||||
"configuration": "Конфигурация (для администраторов)",
|
|
||||||
"lock": "Блокировка",
|
|
||||||
"whitelist": "Белый список",
|
|
||||||
"telegram": "Авторизация через Телеграм",
|
|
||||||
"config_file": "Файл конфигурации"
|
|
||||||
}
|
}
|
||||||
|
99
views/help.go
Normal file
99
views/help.go
Normal file
@ -0,0 +1,99 @@
|
|||||||
|
package views
|
||||||
|
|
||||||
|
import (
|
||||||
|
"fmt"
|
||||||
|
"github.com/bouncepaw/mycorrhiza/l18n"
|
||||||
|
"log"
|
||||||
|
"strings"
|
||||||
|
"text/template"
|
||||||
|
)
|
||||||
|
|
||||||
|
var helpTopicsL10n = map[string][]string{
|
||||||
|
"topics": {"Help topics", "Темы справки"},
|
||||||
|
"main": {"Main", "Введение"},
|
||||||
|
"hypha": {"Hypha", "Гифа"},
|
||||||
|
"media": {"Media", "Медиа"},
|
||||||
|
"mycomarkup": {"Mycomarkup", "Микоразметка"},
|
||||||
|
"interface": {"Interface", "Интерфейс"},
|
||||||
|
"prevnext": {"Previous/next", "Назад/далее"}, // пред след?
|
||||||
|
"top_bar": {"Top bar", "Верхняя панель"},
|
||||||
|
"sibling_hyphae": {"Sibling hyphae", "Гифы-сиблинги"},
|
||||||
|
"special_pages": {"Special pages", "Специальные страницы"},
|
||||||
|
"recent_changes": {"Recent changes", "Недавние изменения"}, // так ли? В медиавики свежие правки
|
||||||
|
"feeds": {"Feeds", "Ленты"},
|
||||||
|
"configuration": {"Configuration (for administrators)", "Конфигурация (для администраторов)"},
|
||||||
|
"config_file": {"Configuration file", "Файл конфигурации"},
|
||||||
|
"lock": {"Lock", "Блокировка"}, // Не Замок ли?
|
||||||
|
"whitelist": {"Whitelist", "Белый список"},
|
||||||
|
"telegram": {"Telegram authentication", "Вход через Телеграм"},
|
||||||
|
}
|
||||||
|
|
||||||
|
const helpTopicTemplate = `<aside class="help-topics layout-card">
|
||||||
|
<h2 class="layout-card__title">{{l "topics"}}</h2>
|
||||||
|
<ul class="help-topics__list">
|
||||||
|
<li>{{l "main" | a ""}}</li>
|
||||||
|
<li>{{l "hypha" | a "/hypha"}}
|
||||||
|
<ul>
|
||||||
|
{{l "media" | a "/media"}}
|
||||||
|
</ul>
|
||||||
|
</li>
|
||||||
|
<li>{{l "mycomarkup" | a "/mycomarkup"}}</li>
|
||||||
|
<li>{{l "interface"}}
|
||||||
|
<ul>
|
||||||
|
<li>{{l "prevnext" | a "/prevnext"}}</li>
|
||||||
|
<li>{{l "top_bar" | a "/top_bar"}}</li>
|
||||||
|
<li>{{l "sibling_hyphae" | a "/sibling_hyphae_section"}}</li>
|
||||||
|
</ul>
|
||||||
|
</li>
|
||||||
|
<li>{{l "special_pages"}}
|
||||||
|
<ul>
|
||||||
|
<li>{{l "recent_changes" | a "/recent_changes"}}</li>
|
||||||
|
<li>{{l "feeds" | a "/feeds"}}</li>
|
||||||
|
</ul>
|
||||||
|
</li>
|
||||||
|
<li>{{l "configuration"}}
|
||||||
|
<ul>
|
||||||
|
<li>{{l "config_file" | a "/config_file"}}</li>
|
||||||
|
<li>{{l "lock" | a "/lock"}}</li>
|
||||||
|
<li>{{l "whitelist" | a "/whitelist"}}</li>
|
||||||
|
<li>{{l "telegram" | a "/telegram"}}</li>
|
||||||
|
</ul>
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
</aside>`
|
||||||
|
|
||||||
|
// helpTopicsLinkWrapper wraps in <a>
|
||||||
|
func helpTopicsLinkWrapper(lang string) func(string, string) string {
|
||||||
|
return func(path, contents string) string {
|
||||||
|
return fmt.Sprintf(`<a href="/help/%s%s">%s</a>`, lang, path, contents)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
func helpTopicsLocalizedTopic(lang string) func(string) string {
|
||||||
|
pos := 0
|
||||||
|
if lang == "ru" {
|
||||||
|
pos = 1
|
||||||
|
}
|
||||||
|
return func(topic string) string {
|
||||||
|
return helpTopicsL10n[topic][pos]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
func helpTopicsHTML(lang string, lc *l18n.Localizer) string {
|
||||||
|
temp, err := template.
|
||||||
|
New("help topics").
|
||||||
|
Funcs(template.FuncMap{
|
||||||
|
"a": helpTopicsLinkWrapper(lang),
|
||||||
|
"l": helpTopicsLocalizedTopic(lc.Locale),
|
||||||
|
}).
|
||||||
|
Parse(helpTopicTemplate)
|
||||||
|
if err != nil {
|
||||||
|
log.Println(err)
|
||||||
|
return ""
|
||||||
|
}
|
||||||
|
|
||||||
|
// TODO: one day, it should write to a better place
|
||||||
|
var out strings.Builder
|
||||||
|
_ = temp.Execute(&out, nil) // Shall not fail!
|
||||||
|
return out.String()
|
||||||
|
}
|
@ -161,42 +161,6 @@ It outputs a poorly formatted JSON, but it works and is valid.
|
|||||||
<p>{%s lc.Get("help.empty_error_line_2a") %} <a class="wikilink wikilink_external wikilink_https" href="https://github.com/bouncepaw/mycorrhiza">{%s lc.Get("help.empty_error_link") %}</a> {%s lc.Get("help.empty_error_line_2b") %}</p>
|
<p>{%s lc.Get("help.empty_error_line_2a") %} <a class="wikilink wikilink_external wikilink_https" href="https://github.com/bouncepaw/mycorrhiza">{%s lc.Get("help.empty_error_link") %}</a> {%s lc.Get("help.empty_error_line_2b") %}</p>
|
||||||
{% endfunc %}
|
{% endfunc %}
|
||||||
|
|
||||||
{% func helpTopicsHTML(lang string, lc *l18n.Localizer) %}
|
|
||||||
<aside class="help-topics layout-card">
|
|
||||||
<h2 class="layout-card__title">{%s lc.GetWithLocale(lang, "help.topics") %}</h2>
|
|
||||||
<ul class="help-topics__list">
|
|
||||||
<li><a href="/help/{%s lang %}">{%s lc.GetWithLocale(lang, "help.main") %}</a></li>
|
|
||||||
<li><a href="/help/{%s lang %}/hypha">{%s lc.GetWithLocale(lang, "help.hypha") %}</a>
|
|
||||||
<ul>
|
|
||||||
<li><a href="/help/{%s lang %}/media">{%s lc.GetWithLocale(lang, "help.media") %}</a></li>
|
|
||||||
</ul>
|
|
||||||
</li>
|
|
||||||
<li><a href="/help/{%s lang %}/mycomarkup">{%s lc.GetWithLocale(lang, "help.mycomarkup") %}</a></li>
|
|
||||||
<li>{%s lc.GetWithLocale(lang, "help.interface") %}
|
|
||||||
<ul>
|
|
||||||
<li><a href="/help/{%s lang %}/prevnext">{%s lc.GetWithLocale(lang, "help.prevnext") %}</a></li>
|
|
||||||
<li><a href="/help/{%s lang %}/top_bar">{%s lc.GetWithLocale(lang, "help.top_bar") %}</a></li>
|
|
||||||
<li><a href="/help/{%s lang %}/sibling_hyphae_section">{%s lc.GetWithLocale(lang, "help.sibling_hyphae") %}</a></li>
|
|
||||||
</ul>
|
|
||||||
</li>
|
|
||||||
<li>{%s lc.GetWithLocale(lang, "help.special_pages") %}
|
|
||||||
<ul>
|
|
||||||
<li><a href="/help/{%s lang %}/recent_changes">{%s lc.GetWithLocale(lang, "help.recent_changes") %}</a></li>
|
|
||||||
<li><a href="/help/{%s lang %}/feeds">{%s lc.GetWithLocale(lang, "help.feeds") %}</a></li>
|
|
||||||
</ul>
|
|
||||||
</li>
|
|
||||||
<li>{%s lc.GetWithLocale(lang, "help.configuration") %}
|
|
||||||
<ul>
|
|
||||||
<li><a href="/help/{%s lang %}/config_file">{%s lc.GetWithLocale(lang, "help.config_file") %}</a></li>
|
|
||||||
<li><a href="/help/{%s lang %}/lock">{%s lc.GetWithLocale(lang, "help.lock") %}</a></li>
|
|
||||||
<li><a href="/help/{%s lang %}/whitelist">{%s lc.GetWithLocale(lang, "help.whitelist") %}</a></li>
|
|
||||||
<li><a href="/help/{%s lang %}/telegram">{%s lc.GetWithLocale(lang, "help.telegram") %}</a></li>
|
|
||||||
</ul>
|
|
||||||
</li>
|
|
||||||
</ul>
|
|
||||||
</aside>
|
|
||||||
{% endfunc %}
|
|
||||||
|
|
||||||
{% func helpTopicBadgeHTML(lang, topic string) %}
|
{% func helpTopicBadgeHTML(lang, topic string) %}
|
||||||
<a class="help-topic-badge" href="/help/en/{%s topic %}">?</a>
|
<a class="help-topic-badge" href="/help/en/{%s topic %}">?</a>
|
||||||
{% endfunc %}
|
{% endfunc %}
|
||||||
|
@ -604,244 +604,57 @@ func HelpEmptyErrorHTML(lc *l18n.Localizer) string {
|
|||||||
}
|
}
|
||||||
|
|
||||||
//line views/stuff.qtpl:164
|
//line views/stuff.qtpl:164
|
||||||
func streamhelpTopicsHTML(qw422016 *qt422016.Writer, lang string, lc *l18n.Localizer) {
|
func streamhelpTopicBadgeHTML(qw422016 *qt422016.Writer, lang, topic string) {
|
||||||
//line views/stuff.qtpl:164
|
//line views/stuff.qtpl:164
|
||||||
qw422016.N().S(`
|
qw422016.N().S(`
|
||||||
<aside class="help-topics layout-card">
|
|
||||||
<h2 class="layout-card__title">`)
|
|
||||||
//line views/stuff.qtpl:166
|
|
||||||
qw422016.E().S(lc.GetWithLocale(lang, "help.topics"))
|
|
||||||
//line views/stuff.qtpl:166
|
|
||||||
qw422016.N().S(`</h2>
|
|
||||||
<ul class="help-topics__list">
|
|
||||||
<li><a href="/help/`)
|
|
||||||
//line views/stuff.qtpl:168
|
|
||||||
qw422016.E().S(lang)
|
|
||||||
//line views/stuff.qtpl:168
|
|
||||||
qw422016.N().S(`">`)
|
|
||||||
//line views/stuff.qtpl:168
|
|
||||||
qw422016.E().S(lc.GetWithLocale(lang, "help.main"))
|
|
||||||
//line views/stuff.qtpl:168
|
|
||||||
qw422016.N().S(`</a></li>
|
|
||||||
<li><a href="/help/`)
|
|
||||||
//line views/stuff.qtpl:169
|
|
||||||
qw422016.E().S(lang)
|
|
||||||
//line views/stuff.qtpl:169
|
|
||||||
qw422016.N().S(`/hypha">`)
|
|
||||||
//line views/stuff.qtpl:169
|
|
||||||
qw422016.E().S(lc.GetWithLocale(lang, "help.hypha"))
|
|
||||||
//line views/stuff.qtpl:169
|
|
||||||
qw422016.N().S(`</a>
|
|
||||||
<ul>
|
|
||||||
<li><a href="/help/`)
|
|
||||||
//line views/stuff.qtpl:171
|
|
||||||
qw422016.E().S(lang)
|
|
||||||
//line views/stuff.qtpl:171
|
|
||||||
qw422016.N().S(`/media">`)
|
|
||||||
//line views/stuff.qtpl:171
|
|
||||||
qw422016.E().S(lc.GetWithLocale(lang, "help.media"))
|
|
||||||
//line views/stuff.qtpl:171
|
|
||||||
qw422016.N().S(`</a></li>
|
|
||||||
</ul>
|
|
||||||
</li>
|
|
||||||
<li><a href="/help/`)
|
|
||||||
//line views/stuff.qtpl:174
|
|
||||||
qw422016.E().S(lang)
|
|
||||||
//line views/stuff.qtpl:174
|
|
||||||
qw422016.N().S(`/mycomarkup">`)
|
|
||||||
//line views/stuff.qtpl:174
|
|
||||||
qw422016.E().S(lc.GetWithLocale(lang, "help.mycomarkup"))
|
|
||||||
//line views/stuff.qtpl:174
|
|
||||||
qw422016.N().S(`</a></li>
|
|
||||||
<li>`)
|
|
||||||
//line views/stuff.qtpl:175
|
|
||||||
qw422016.E().S(lc.GetWithLocale(lang, "help.interface"))
|
|
||||||
//line views/stuff.qtpl:175
|
|
||||||
qw422016.N().S(`
|
|
||||||
<ul>
|
|
||||||
<li><a href="/help/`)
|
|
||||||
//line views/stuff.qtpl:177
|
|
||||||
qw422016.E().S(lang)
|
|
||||||
//line views/stuff.qtpl:177
|
|
||||||
qw422016.N().S(`/prevnext">`)
|
|
||||||
//line views/stuff.qtpl:177
|
|
||||||
qw422016.E().S(lc.GetWithLocale(lang, "help.prevnext"))
|
|
||||||
//line views/stuff.qtpl:177
|
|
||||||
qw422016.N().S(`</a></li>
|
|
||||||
<li><a href="/help/`)
|
|
||||||
//line views/stuff.qtpl:178
|
|
||||||
qw422016.E().S(lang)
|
|
||||||
//line views/stuff.qtpl:178
|
|
||||||
qw422016.N().S(`/top_bar">`)
|
|
||||||
//line views/stuff.qtpl:178
|
|
||||||
qw422016.E().S(lc.GetWithLocale(lang, "help.top_bar"))
|
|
||||||
//line views/stuff.qtpl:178
|
|
||||||
qw422016.N().S(`</a></li>
|
|
||||||
<li><a href="/help/`)
|
|
||||||
//line views/stuff.qtpl:179
|
|
||||||
qw422016.E().S(lang)
|
|
||||||
//line views/stuff.qtpl:179
|
|
||||||
qw422016.N().S(`/sibling_hyphae_section">`)
|
|
||||||
//line views/stuff.qtpl:179
|
|
||||||
qw422016.E().S(lc.GetWithLocale(lang, "help.sibling_hyphae"))
|
|
||||||
//line views/stuff.qtpl:179
|
|
||||||
qw422016.N().S(`</a></li>
|
|
||||||
</ul>
|
|
||||||
</li>
|
|
||||||
<li>`)
|
|
||||||
//line views/stuff.qtpl:182
|
|
||||||
qw422016.E().S(lc.GetWithLocale(lang, "help.special_pages"))
|
|
||||||
//line views/stuff.qtpl:182
|
|
||||||
qw422016.N().S(`
|
|
||||||
<ul>
|
|
||||||
<li><a href="/help/`)
|
|
||||||
//line views/stuff.qtpl:184
|
|
||||||
qw422016.E().S(lang)
|
|
||||||
//line views/stuff.qtpl:184
|
|
||||||
qw422016.N().S(`/recent_changes">`)
|
|
||||||
//line views/stuff.qtpl:184
|
|
||||||
qw422016.E().S(lc.GetWithLocale(lang, "help.recent_changes"))
|
|
||||||
//line views/stuff.qtpl:184
|
|
||||||
qw422016.N().S(`</a></li>
|
|
||||||
<li><a href="/help/`)
|
|
||||||
//line views/stuff.qtpl:185
|
|
||||||
qw422016.E().S(lang)
|
|
||||||
//line views/stuff.qtpl:185
|
|
||||||
qw422016.N().S(`/feeds">`)
|
|
||||||
//line views/stuff.qtpl:185
|
|
||||||
qw422016.E().S(lc.GetWithLocale(lang, "help.feeds"))
|
|
||||||
//line views/stuff.qtpl:185
|
|
||||||
qw422016.N().S(`</a></li>
|
|
||||||
</ul>
|
|
||||||
</li>
|
|
||||||
<li>`)
|
|
||||||
//line views/stuff.qtpl:188
|
|
||||||
qw422016.E().S(lc.GetWithLocale(lang, "help.configuration"))
|
|
||||||
//line views/stuff.qtpl:188
|
|
||||||
qw422016.N().S(`
|
|
||||||
<ul>
|
|
||||||
<li><a href="/help/`)
|
|
||||||
//line views/stuff.qtpl:190
|
|
||||||
qw422016.E().S(lang)
|
|
||||||
//line views/stuff.qtpl:190
|
|
||||||
qw422016.N().S(`/config_file">`)
|
|
||||||
//line views/stuff.qtpl:190
|
|
||||||
qw422016.E().S(lc.GetWithLocale(lang, "help.config_file"))
|
|
||||||
//line views/stuff.qtpl:190
|
|
||||||
qw422016.N().S(`</a></li>
|
|
||||||
<li><a href="/help/`)
|
|
||||||
//line views/stuff.qtpl:191
|
|
||||||
qw422016.E().S(lang)
|
|
||||||
//line views/stuff.qtpl:191
|
|
||||||
qw422016.N().S(`/lock">`)
|
|
||||||
//line views/stuff.qtpl:191
|
|
||||||
qw422016.E().S(lc.GetWithLocale(lang, "help.lock"))
|
|
||||||
//line views/stuff.qtpl:191
|
|
||||||
qw422016.N().S(`</a></li>
|
|
||||||
<li><a href="/help/`)
|
|
||||||
//line views/stuff.qtpl:192
|
|
||||||
qw422016.E().S(lang)
|
|
||||||
//line views/stuff.qtpl:192
|
|
||||||
qw422016.N().S(`/whitelist">`)
|
|
||||||
//line views/stuff.qtpl:192
|
|
||||||
qw422016.E().S(lc.GetWithLocale(lang, "help.whitelist"))
|
|
||||||
//line views/stuff.qtpl:192
|
|
||||||
qw422016.N().S(`</a></li>
|
|
||||||
<li><a href="/help/`)
|
|
||||||
//line views/stuff.qtpl:193
|
|
||||||
qw422016.E().S(lang)
|
|
||||||
//line views/stuff.qtpl:193
|
|
||||||
qw422016.N().S(`/telegram">`)
|
|
||||||
//line views/stuff.qtpl:193
|
|
||||||
qw422016.E().S(lc.GetWithLocale(lang, "help.telegram"))
|
|
||||||
//line views/stuff.qtpl:193
|
|
||||||
qw422016.N().S(`</a></li>
|
|
||||||
</ul>
|
|
||||||
</li>
|
|
||||||
</ul>
|
|
||||||
</aside>
|
|
||||||
`)
|
|
||||||
//line views/stuff.qtpl:198
|
|
||||||
}
|
|
||||||
|
|
||||||
//line views/stuff.qtpl:198
|
|
||||||
func writehelpTopicsHTML(qq422016 qtio422016.Writer, lang string, lc *l18n.Localizer) {
|
|
||||||
//line views/stuff.qtpl:198
|
|
||||||
qw422016 := qt422016.AcquireWriter(qq422016)
|
|
||||||
//line views/stuff.qtpl:198
|
|
||||||
streamhelpTopicsHTML(qw422016, lang, lc)
|
|
||||||
//line views/stuff.qtpl:198
|
|
||||||
qt422016.ReleaseWriter(qw422016)
|
|
||||||
//line views/stuff.qtpl:198
|
|
||||||
}
|
|
||||||
|
|
||||||
//line views/stuff.qtpl:198
|
|
||||||
func helpTopicsHTML(lang string, lc *l18n.Localizer) string {
|
|
||||||
//line views/stuff.qtpl:198
|
|
||||||
qb422016 := qt422016.AcquireByteBuffer()
|
|
||||||
//line views/stuff.qtpl:198
|
|
||||||
writehelpTopicsHTML(qb422016, lang, lc)
|
|
||||||
//line views/stuff.qtpl:198
|
|
||||||
qs422016 := string(qb422016.B)
|
|
||||||
//line views/stuff.qtpl:198
|
|
||||||
qt422016.ReleaseByteBuffer(qb422016)
|
|
||||||
//line views/stuff.qtpl:198
|
|
||||||
return qs422016
|
|
||||||
//line views/stuff.qtpl:198
|
|
||||||
}
|
|
||||||
|
|
||||||
//line views/stuff.qtpl:200
|
|
||||||
func streamhelpTopicBadgeHTML(qw422016 *qt422016.Writer, lang, topic string) {
|
|
||||||
//line views/stuff.qtpl:200
|
|
||||||
qw422016.N().S(`
|
|
||||||
<a class="help-topic-badge" href="/help/en/`)
|
<a class="help-topic-badge" href="/help/en/`)
|
||||||
//line views/stuff.qtpl:201
|
//line views/stuff.qtpl:165
|
||||||
qw422016.E().S(topic)
|
qw422016.E().S(topic)
|
||||||
//line views/stuff.qtpl:201
|
//line views/stuff.qtpl:165
|
||||||
qw422016.N().S(`">?</a>
|
qw422016.N().S(`">?</a>
|
||||||
`)
|
`)
|
||||||
//line views/stuff.qtpl:202
|
//line views/stuff.qtpl:166
|
||||||
}
|
}
|
||||||
|
|
||||||
//line views/stuff.qtpl:202
|
//line views/stuff.qtpl:166
|
||||||
func writehelpTopicBadgeHTML(qq422016 qtio422016.Writer, lang, topic string) {
|
func writehelpTopicBadgeHTML(qq422016 qtio422016.Writer, lang, topic string) {
|
||||||
//line views/stuff.qtpl:202
|
//line views/stuff.qtpl:166
|
||||||
qw422016 := qt422016.AcquireWriter(qq422016)
|
qw422016 := qt422016.AcquireWriter(qq422016)
|
||||||
//line views/stuff.qtpl:202
|
//line views/stuff.qtpl:166
|
||||||
streamhelpTopicBadgeHTML(qw422016, lang, topic)
|
streamhelpTopicBadgeHTML(qw422016, lang, topic)
|
||||||
//line views/stuff.qtpl:202
|
//line views/stuff.qtpl:166
|
||||||
qt422016.ReleaseWriter(qw422016)
|
qt422016.ReleaseWriter(qw422016)
|
||||||
//line views/stuff.qtpl:202
|
//line views/stuff.qtpl:166
|
||||||
}
|
}
|
||||||
|
|
||||||
//line views/stuff.qtpl:202
|
//line views/stuff.qtpl:166
|
||||||
func helpTopicBadgeHTML(lang, topic string) string {
|
func helpTopicBadgeHTML(lang, topic string) string {
|
||||||
//line views/stuff.qtpl:202
|
//line views/stuff.qtpl:166
|
||||||
qb422016 := qt422016.AcquireByteBuffer()
|
qb422016 := qt422016.AcquireByteBuffer()
|
||||||
//line views/stuff.qtpl:202
|
//line views/stuff.qtpl:166
|
||||||
writehelpTopicBadgeHTML(qb422016, lang, topic)
|
writehelpTopicBadgeHTML(qb422016, lang, topic)
|
||||||
//line views/stuff.qtpl:202
|
//line views/stuff.qtpl:166
|
||||||
qs422016 := string(qb422016.B)
|
qs422016 := string(qb422016.B)
|
||||||
//line views/stuff.qtpl:202
|
//line views/stuff.qtpl:166
|
||||||
qt422016.ReleaseByteBuffer(qb422016)
|
qt422016.ReleaseByteBuffer(qb422016)
|
||||||
//line views/stuff.qtpl:202
|
//line views/stuff.qtpl:166
|
||||||
return qs422016
|
return qs422016
|
||||||
//line views/stuff.qtpl:202
|
//line views/stuff.qtpl:166
|
||||||
}
|
}
|
||||||
|
|
||||||
//line views/stuff.qtpl:204
|
//line views/stuff.qtpl:168
|
||||||
func StreamUserListHTML(qw422016 *qt422016.Writer, lc *l18n.Localizer) {
|
func StreamUserListHTML(qw422016 *qt422016.Writer, lc *l18n.Localizer) {
|
||||||
//line views/stuff.qtpl:204
|
//line views/stuff.qtpl:168
|
||||||
qw422016.N().S(`
|
qw422016.N().S(`
|
||||||
<div class="layout">
|
<div class="layout">
|
||||||
<main class="main-width user-list">
|
<main class="main-width user-list">
|
||||||
<h1>`)
|
<h1>`)
|
||||||
//line views/stuff.qtpl:207
|
//line views/stuff.qtpl:171
|
||||||
qw422016.E().S(lc.Get("ui.users_heading"))
|
qw422016.E().S(lc.Get("ui.users_heading"))
|
||||||
//line views/stuff.qtpl:207
|
//line views/stuff.qtpl:171
|
||||||
qw422016.N().S(`</h1>
|
qw422016.N().S(`</h1>
|
||||||
`)
|
`)
|
||||||
//line views/stuff.qtpl:209
|
//line views/stuff.qtpl:173
|
||||||
var (
|
var (
|
||||||
admins = make([]string, 0)
|
admins = make([]string, 0)
|
||||||
moderators = make([]string, 0)
|
moderators = make([]string, 0)
|
||||||
@ -861,149 +674,149 @@ func StreamUserListHTML(qw422016 *qt422016.Writer, lc *l18n.Localizer) {
|
|||||||
sort.Strings(moderators)
|
sort.Strings(moderators)
|
||||||
sort.Strings(editors)
|
sort.Strings(editors)
|
||||||
|
|
||||||
//line views/stuff.qtpl:227
|
//line views/stuff.qtpl:191
|
||||||
qw422016.N().S(`
|
qw422016.N().S(`
|
||||||
<section>
|
<section>
|
||||||
<h2>`)
|
<h2>`)
|
||||||
//line views/stuff.qtpl:229
|
//line views/stuff.qtpl:193
|
||||||
qw422016.E().S(lc.Get("ui.users_admins"))
|
qw422016.E().S(lc.Get("ui.users_admins"))
|
||||||
//line views/stuff.qtpl:229
|
//line views/stuff.qtpl:193
|
||||||
qw422016.N().S(`</h2>
|
qw422016.N().S(`</h2>
|
||||||
<ol>`)
|
<ol>`)
|
||||||
//line views/stuff.qtpl:230
|
//line views/stuff.qtpl:194
|
||||||
for _, name := range admins {
|
for _, name := range admins {
|
||||||
//line views/stuff.qtpl:230
|
//line views/stuff.qtpl:194
|
||||||
qw422016.N().S(`
|
qw422016.N().S(`
|
||||||
<li><a href="/hypha/`)
|
<li><a href="/hypha/`)
|
||||||
//line views/stuff.qtpl:231
|
//line views/stuff.qtpl:195
|
||||||
qw422016.E().S(cfg.UserHypha)
|
qw422016.E().S(cfg.UserHypha)
|
||||||
//line views/stuff.qtpl:231
|
//line views/stuff.qtpl:195
|
||||||
qw422016.N().S(`/`)
|
qw422016.N().S(`/`)
|
||||||
//line views/stuff.qtpl:231
|
//line views/stuff.qtpl:195
|
||||||
qw422016.E().S(name)
|
qw422016.E().S(name)
|
||||||
//line views/stuff.qtpl:231
|
//line views/stuff.qtpl:195
|
||||||
qw422016.N().S(`">`)
|
qw422016.N().S(`">`)
|
||||||
//line views/stuff.qtpl:231
|
//line views/stuff.qtpl:195
|
||||||
qw422016.E().S(name)
|
qw422016.E().S(name)
|
||||||
//line views/stuff.qtpl:231
|
//line views/stuff.qtpl:195
|
||||||
qw422016.N().S(`</a></li>
|
qw422016.N().S(`</a></li>
|
||||||
`)
|
`)
|
||||||
//line views/stuff.qtpl:232
|
//line views/stuff.qtpl:196
|
||||||
}
|
}
|
||||||
//line views/stuff.qtpl:232
|
//line views/stuff.qtpl:196
|
||||||
qw422016.N().S(`</ol>
|
qw422016.N().S(`</ol>
|
||||||
</section>
|
</section>
|
||||||
<section>
|
<section>
|
||||||
<h2>`)
|
<h2>`)
|
||||||
//line views/stuff.qtpl:235
|
//line views/stuff.qtpl:199
|
||||||
qw422016.E().S(lc.Get("ui.users_moderators"))
|
qw422016.E().S(lc.Get("ui.users_moderators"))
|
||||||
//line views/stuff.qtpl:235
|
//line views/stuff.qtpl:199
|
||||||
qw422016.N().S(`</h2>
|
qw422016.N().S(`</h2>
|
||||||
<ol>`)
|
<ol>`)
|
||||||
//line views/stuff.qtpl:236
|
//line views/stuff.qtpl:200
|
||||||
for _, name := range moderators {
|
for _, name := range moderators {
|
||||||
//line views/stuff.qtpl:236
|
//line views/stuff.qtpl:200
|
||||||
qw422016.N().S(`
|
qw422016.N().S(`
|
||||||
<li><a href="/hypha/`)
|
<li><a href="/hypha/`)
|
||||||
//line views/stuff.qtpl:237
|
//line views/stuff.qtpl:201
|
||||||
qw422016.E().S(cfg.UserHypha)
|
qw422016.E().S(cfg.UserHypha)
|
||||||
//line views/stuff.qtpl:237
|
//line views/stuff.qtpl:201
|
||||||
qw422016.N().S(`/`)
|
qw422016.N().S(`/`)
|
||||||
//line views/stuff.qtpl:237
|
//line views/stuff.qtpl:201
|
||||||
qw422016.E().S(name)
|
qw422016.E().S(name)
|
||||||
//line views/stuff.qtpl:237
|
//line views/stuff.qtpl:201
|
||||||
qw422016.N().S(`">`)
|
qw422016.N().S(`">`)
|
||||||
//line views/stuff.qtpl:237
|
//line views/stuff.qtpl:201
|
||||||
qw422016.E().S(name)
|
qw422016.E().S(name)
|
||||||
//line views/stuff.qtpl:237
|
//line views/stuff.qtpl:201
|
||||||
qw422016.N().S(`</a></li>
|
qw422016.N().S(`</a></li>
|
||||||
`)
|
`)
|
||||||
//line views/stuff.qtpl:238
|
//line views/stuff.qtpl:202
|
||||||
}
|
}
|
||||||
//line views/stuff.qtpl:238
|
//line views/stuff.qtpl:202
|
||||||
qw422016.N().S(`</ol>
|
qw422016.N().S(`</ol>
|
||||||
</section>
|
</section>
|
||||||
<section>
|
<section>
|
||||||
<h2>`)
|
<h2>`)
|
||||||
//line views/stuff.qtpl:241
|
//line views/stuff.qtpl:205
|
||||||
qw422016.E().S(lc.Get("ui.users_editors"))
|
qw422016.E().S(lc.Get("ui.users_editors"))
|
||||||
//line views/stuff.qtpl:241
|
//line views/stuff.qtpl:205
|
||||||
qw422016.N().S(`</h2>
|
qw422016.N().S(`</h2>
|
||||||
<ol>`)
|
<ol>`)
|
||||||
//line views/stuff.qtpl:242
|
//line views/stuff.qtpl:206
|
||||||
for _, name := range editors {
|
for _, name := range editors {
|
||||||
//line views/stuff.qtpl:242
|
//line views/stuff.qtpl:206
|
||||||
qw422016.N().S(`
|
qw422016.N().S(`
|
||||||
<li><a href="/hypha/`)
|
<li><a href="/hypha/`)
|
||||||
//line views/stuff.qtpl:243
|
//line views/stuff.qtpl:207
|
||||||
qw422016.E().S(cfg.UserHypha)
|
qw422016.E().S(cfg.UserHypha)
|
||||||
//line views/stuff.qtpl:243
|
//line views/stuff.qtpl:207
|
||||||
qw422016.N().S(`/`)
|
qw422016.N().S(`/`)
|
||||||
//line views/stuff.qtpl:243
|
//line views/stuff.qtpl:207
|
||||||
qw422016.E().S(name)
|
qw422016.E().S(name)
|
||||||
//line views/stuff.qtpl:243
|
//line views/stuff.qtpl:207
|
||||||
qw422016.N().S(`">`)
|
qw422016.N().S(`">`)
|
||||||
//line views/stuff.qtpl:243
|
//line views/stuff.qtpl:207
|
||||||
qw422016.E().S(name)
|
qw422016.E().S(name)
|
||||||
//line views/stuff.qtpl:243
|
//line views/stuff.qtpl:207
|
||||||
qw422016.N().S(`</a></li>
|
qw422016.N().S(`</a></li>
|
||||||
`)
|
`)
|
||||||
//line views/stuff.qtpl:244
|
//line views/stuff.qtpl:208
|
||||||
}
|
}
|
||||||
//line views/stuff.qtpl:244
|
//line views/stuff.qtpl:208
|
||||||
qw422016.N().S(`</ol>
|
qw422016.N().S(`</ol>
|
||||||
</section>
|
</section>
|
||||||
</main>
|
</main>
|
||||||
</div>
|
</div>
|
||||||
`)
|
`)
|
||||||
//line views/stuff.qtpl:248
|
//line views/stuff.qtpl:212
|
||||||
}
|
}
|
||||||
|
|
||||||
//line views/stuff.qtpl:248
|
//line views/stuff.qtpl:212
|
||||||
func WriteUserListHTML(qq422016 qtio422016.Writer, lc *l18n.Localizer) {
|
func WriteUserListHTML(qq422016 qtio422016.Writer, lc *l18n.Localizer) {
|
||||||
//line views/stuff.qtpl:248
|
//line views/stuff.qtpl:212
|
||||||
qw422016 := qt422016.AcquireWriter(qq422016)
|
qw422016 := qt422016.AcquireWriter(qq422016)
|
||||||
//line views/stuff.qtpl:248
|
//line views/stuff.qtpl:212
|
||||||
StreamUserListHTML(qw422016, lc)
|
StreamUserListHTML(qw422016, lc)
|
||||||
//line views/stuff.qtpl:248
|
//line views/stuff.qtpl:212
|
||||||
qt422016.ReleaseWriter(qw422016)
|
qt422016.ReleaseWriter(qw422016)
|
||||||
//line views/stuff.qtpl:248
|
//line views/stuff.qtpl:212
|
||||||
}
|
}
|
||||||
|
|
||||||
//line views/stuff.qtpl:248
|
//line views/stuff.qtpl:212
|
||||||
func UserListHTML(lc *l18n.Localizer) string {
|
func UserListHTML(lc *l18n.Localizer) string {
|
||||||
//line views/stuff.qtpl:248
|
//line views/stuff.qtpl:212
|
||||||
qb422016 := qt422016.AcquireByteBuffer()
|
qb422016 := qt422016.AcquireByteBuffer()
|
||||||
//line views/stuff.qtpl:248
|
//line views/stuff.qtpl:212
|
||||||
WriteUserListHTML(qb422016, lc)
|
WriteUserListHTML(qb422016, lc)
|
||||||
//line views/stuff.qtpl:248
|
//line views/stuff.qtpl:212
|
||||||
qs422016 := string(qb422016.B)
|
qs422016 := string(qb422016.B)
|
||||||
//line views/stuff.qtpl:248
|
//line views/stuff.qtpl:212
|
||||||
qt422016.ReleaseByteBuffer(qb422016)
|
qt422016.ReleaseByteBuffer(qb422016)
|
||||||
//line views/stuff.qtpl:248
|
//line views/stuff.qtpl:212
|
||||||
return qs422016
|
return qs422016
|
||||||
//line views/stuff.qtpl:248
|
//line views/stuff.qtpl:212
|
||||||
}
|
}
|
||||||
|
|
||||||
//line views/stuff.qtpl:250
|
//line views/stuff.qtpl:214
|
||||||
func StreamHyphaListHTML(qw422016 *qt422016.Writer, lc *l18n.Localizer) {
|
func StreamHyphaListHTML(qw422016 *qt422016.Writer, lc *l18n.Localizer) {
|
||||||
//line views/stuff.qtpl:250
|
//line views/stuff.qtpl:214
|
||||||
qw422016.N().S(`
|
qw422016.N().S(`
|
||||||
<div class="layout">
|
<div class="layout">
|
||||||
<main class="main-width">
|
<main class="main-width">
|
||||||
<h1>`)
|
<h1>`)
|
||||||
//line views/stuff.qtpl:253
|
//line views/stuff.qtpl:217
|
||||||
qw422016.E().S(lc.Get("ui.list_heading"))
|
qw422016.E().S(lc.Get("ui.list_heading"))
|
||||||
//line views/stuff.qtpl:253
|
//line views/stuff.qtpl:217
|
||||||
qw422016.N().S(`</h1>
|
qw422016.N().S(`</h1>
|
||||||
<p>`)
|
<p>`)
|
||||||
//line views/stuff.qtpl:254
|
//line views/stuff.qtpl:218
|
||||||
qw422016.E().S(lc.GetPlural("ui.list_desc", hyphae.Count()))
|
qw422016.E().S(lc.GetPlural("ui.list_desc", hyphae.Count()))
|
||||||
//line views/stuff.qtpl:254
|
//line views/stuff.qtpl:218
|
||||||
qw422016.N().S(`</p>
|
qw422016.N().S(`</p>
|
||||||
<ul class="hypha-list">
|
<ul class="hypha-list">
|
||||||
`)
|
`)
|
||||||
//line views/stuff.qtpl:257
|
//line views/stuff.qtpl:221
|
||||||
hyphaNames := make(chan string)
|
hyphaNames := make(chan string)
|
||||||
sortedHypha := hyphae.PathographicSort(hyphaNames)
|
sortedHypha := hyphae.PathographicSort(hyphaNames)
|
||||||
for hypha := range hyphae.YieldExistingHyphae() {
|
for hypha := range hyphae.YieldExistingHyphae() {
|
||||||
@ -1011,258 +824,258 @@ func StreamHyphaListHTML(qw422016 *qt422016.Writer, lc *l18n.Localizer) {
|
|||||||
}
|
}
|
||||||
close(hyphaNames)
|
close(hyphaNames)
|
||||||
|
|
||||||
//line views/stuff.qtpl:263
|
//line views/stuff.qtpl:227
|
||||||
qw422016.N().S(`
|
qw422016.N().S(`
|
||||||
`)
|
`)
|
||||||
//line views/stuff.qtpl:264
|
//line views/stuff.qtpl:228
|
||||||
for hyphaName := range sortedHypha {
|
for hyphaName := range sortedHypha {
|
||||||
//line views/stuff.qtpl:264
|
//line views/stuff.qtpl:228
|
||||||
qw422016.N().S(`
|
qw422016.N().S(`
|
||||||
`)
|
`)
|
||||||
//line views/stuff.qtpl:265
|
//line views/stuff.qtpl:229
|
||||||
h := hyphae.ByName(hyphaName)
|
h := hyphae.ByName(hyphaName)
|
||||||
|
|
||||||
//line views/stuff.qtpl:265
|
//line views/stuff.qtpl:229
|
||||||
qw422016.N().S(`
|
qw422016.N().S(`
|
||||||
<li class="hypha-list__entry">
|
<li class="hypha-list__entry">
|
||||||
<a class="hypha-list__link" href="/hypha/`)
|
<a class="hypha-list__link" href="/hypha/`)
|
||||||
//line views/stuff.qtpl:267
|
//line views/stuff.qtpl:231
|
||||||
qw422016.E().S(h.CanonicalName())
|
qw422016.E().S(h.CanonicalName())
|
||||||
//line views/stuff.qtpl:267
|
//line views/stuff.qtpl:231
|
||||||
qw422016.N().S(`">
|
qw422016.N().S(`">
|
||||||
`)
|
`)
|
||||||
//line views/stuff.qtpl:268
|
//line views/stuff.qtpl:232
|
||||||
qw422016.E().S(util.BeautifulName(h.CanonicalName()))
|
qw422016.E().S(util.BeautifulName(h.CanonicalName()))
|
||||||
//line views/stuff.qtpl:268
|
//line views/stuff.qtpl:232
|
||||||
qw422016.N().S(`
|
qw422016.N().S(`
|
||||||
</a>
|
</a>
|
||||||
`)
|
`)
|
||||||
//line views/stuff.qtpl:270
|
//line views/stuff.qtpl:234
|
||||||
switch h := h.(type) {
|
switch h := h.(type) {
|
||||||
//line views/stuff.qtpl:271
|
//line views/stuff.qtpl:235
|
||||||
case *hyphae.MediaHypha:
|
case *hyphae.MediaHypha:
|
||||||
//line views/stuff.qtpl:271
|
//line views/stuff.qtpl:235
|
||||||
qw422016.N().S(`
|
qw422016.N().S(`
|
||||||
<span class="hypha-list__amnt-type">
|
<span class="hypha-list__amnt-type">
|
||||||
`)
|
`)
|
||||||
//line views/stuff.qtpl:273
|
//line views/stuff.qtpl:237
|
||||||
qw422016.E().S(filepath.Ext(h.MediaFilePath())[1:])
|
qw422016.E().S(filepath.Ext(h.MediaFilePath())[1:])
|
||||||
//line views/stuff.qtpl:273
|
//line views/stuff.qtpl:237
|
||||||
qw422016.N().S(`
|
qw422016.N().S(`
|
||||||
</span>
|
</span>
|
||||||
`)
|
`)
|
||||||
//line views/stuff.qtpl:275
|
//line views/stuff.qtpl:239
|
||||||
}
|
}
|
||||||
//line views/stuff.qtpl:275
|
//line views/stuff.qtpl:239
|
||||||
qw422016.N().S(`
|
qw422016.N().S(`
|
||||||
</li>
|
</li>
|
||||||
`)
|
`)
|
||||||
//line views/stuff.qtpl:277
|
//line views/stuff.qtpl:241
|
||||||
}
|
}
|
||||||
//line views/stuff.qtpl:277
|
//line views/stuff.qtpl:241
|
||||||
qw422016.N().S(`
|
qw422016.N().S(`
|
||||||
</ul>
|
</ul>
|
||||||
</main>
|
</main>
|
||||||
</div>
|
</div>
|
||||||
`)
|
`)
|
||||||
//line views/stuff.qtpl:281
|
//line views/stuff.qtpl:245
|
||||||
}
|
}
|
||||||
|
|
||||||
//line views/stuff.qtpl:281
|
//line views/stuff.qtpl:245
|
||||||
func WriteHyphaListHTML(qq422016 qtio422016.Writer, lc *l18n.Localizer) {
|
func WriteHyphaListHTML(qq422016 qtio422016.Writer, lc *l18n.Localizer) {
|
||||||
//line views/stuff.qtpl:281
|
//line views/stuff.qtpl:245
|
||||||
qw422016 := qt422016.AcquireWriter(qq422016)
|
qw422016 := qt422016.AcquireWriter(qq422016)
|
||||||
//line views/stuff.qtpl:281
|
//line views/stuff.qtpl:245
|
||||||
StreamHyphaListHTML(qw422016, lc)
|
StreamHyphaListHTML(qw422016, lc)
|
||||||
//line views/stuff.qtpl:281
|
//line views/stuff.qtpl:245
|
||||||
qt422016.ReleaseWriter(qw422016)
|
qt422016.ReleaseWriter(qw422016)
|
||||||
//line views/stuff.qtpl:281
|
//line views/stuff.qtpl:245
|
||||||
}
|
}
|
||||||
|
|
||||||
//line views/stuff.qtpl:281
|
//line views/stuff.qtpl:245
|
||||||
func HyphaListHTML(lc *l18n.Localizer) string {
|
func HyphaListHTML(lc *l18n.Localizer) string {
|
||||||
//line views/stuff.qtpl:281
|
//line views/stuff.qtpl:245
|
||||||
qb422016 := qt422016.AcquireByteBuffer()
|
qb422016 := qt422016.AcquireByteBuffer()
|
||||||
//line views/stuff.qtpl:281
|
//line views/stuff.qtpl:245
|
||||||
WriteHyphaListHTML(qb422016, lc)
|
WriteHyphaListHTML(qb422016, lc)
|
||||||
//line views/stuff.qtpl:281
|
//line views/stuff.qtpl:245
|
||||||
qs422016 := string(qb422016.B)
|
qs422016 := string(qb422016.B)
|
||||||
//line views/stuff.qtpl:281
|
//line views/stuff.qtpl:245
|
||||||
qt422016.ReleaseByteBuffer(qb422016)
|
qt422016.ReleaseByteBuffer(qb422016)
|
||||||
//line views/stuff.qtpl:281
|
//line views/stuff.qtpl:245
|
||||||
return qs422016
|
return qs422016
|
||||||
//line views/stuff.qtpl:281
|
//line views/stuff.qtpl:245
|
||||||
}
|
}
|
||||||
|
|
||||||
//line views/stuff.qtpl:283
|
//line views/stuff.qtpl:247
|
||||||
func StreamAboutHTML(qw422016 *qt422016.Writer, lc *l18n.Localizer) {
|
func StreamAboutHTML(qw422016 *qt422016.Writer, lc *l18n.Localizer) {
|
||||||
//line views/stuff.qtpl:283
|
//line views/stuff.qtpl:247
|
||||||
qw422016.N().S(`
|
qw422016.N().S(`
|
||||||
<div class="layout">
|
<div class="layout">
|
||||||
<main class="main-width">
|
<main class="main-width">
|
||||||
<section>
|
<section>
|
||||||
<h1>`)
|
<h1>`)
|
||||||
//line views/stuff.qtpl:287
|
//line views/stuff.qtpl:251
|
||||||
qw422016.E().S(lc.Get("ui.about_title", &l18n.Replacements{"name": cfg.WikiName}))
|
qw422016.E().S(lc.Get("ui.about_title", &l18n.Replacements{"name": cfg.WikiName}))
|
||||||
//line views/stuff.qtpl:287
|
//line views/stuff.qtpl:251
|
||||||
qw422016.N().S(`</h1>
|
qw422016.N().S(`</h1>
|
||||||
<ul>
|
<ul>
|
||||||
<li><b>`)
|
<li><b>`)
|
||||||
//line views/stuff.qtpl:289
|
//line views/stuff.qtpl:253
|
||||||
qw422016.N().S(lc.Get("ui.about_version", &l18n.Replacements{"pre": "<a href=\"https://mycorrhiza.wiki\">", "post": "</a>"}))
|
qw422016.N().S(lc.Get("ui.about_version", &l18n.Replacements{"pre": "<a href=\"https://mycorrhiza.wiki\">", "post": "</a>"}))
|
||||||
//line views/stuff.qtpl:289
|
//line views/stuff.qtpl:253
|
||||||
qw422016.N().S(`</b> 1.8.2</li>
|
qw422016.N().S(`</b> 1.8.2</li>
|
||||||
`)
|
`)
|
||||||
//line views/stuff.qtpl:290
|
//line views/stuff.qtpl:254
|
||||||
if cfg.UseAuth {
|
if cfg.UseAuth {
|
||||||
//line views/stuff.qtpl:290
|
//line views/stuff.qtpl:254
|
||||||
qw422016.N().S(` <li><b>`)
|
qw422016.N().S(` <li><b>`)
|
||||||
//line views/stuff.qtpl:291
|
//line views/stuff.qtpl:255
|
||||||
qw422016.E().S(lc.Get("ui.about_usercount"))
|
qw422016.E().S(lc.Get("ui.about_usercount"))
|
||||||
//line views/stuff.qtpl:291
|
//line views/stuff.qtpl:255
|
||||||
qw422016.N().S(`</b> `)
|
qw422016.N().S(`</b> `)
|
||||||
//line views/stuff.qtpl:291
|
//line views/stuff.qtpl:255
|
||||||
qw422016.N().DUL(user.Count())
|
qw422016.N().DUL(user.Count())
|
||||||
//line views/stuff.qtpl:291
|
//line views/stuff.qtpl:255
|
||||||
qw422016.N().S(`</li>
|
qw422016.N().S(`</li>
|
||||||
<li><b>`)
|
<li><b>`)
|
||||||
//line views/stuff.qtpl:292
|
//line views/stuff.qtpl:256
|
||||||
qw422016.E().S(lc.Get("ui.about_homepage"))
|
qw422016.E().S(lc.Get("ui.about_homepage"))
|
||||||
//line views/stuff.qtpl:292
|
//line views/stuff.qtpl:256
|
||||||
qw422016.N().S(`</b> <a href="/">`)
|
qw422016.N().S(`</b> <a href="/">`)
|
||||||
//line views/stuff.qtpl:292
|
//line views/stuff.qtpl:256
|
||||||
qw422016.E().S(cfg.HomeHypha)
|
qw422016.E().S(cfg.HomeHypha)
|
||||||
//line views/stuff.qtpl:292
|
//line views/stuff.qtpl:256
|
||||||
qw422016.N().S(`</a></li>
|
qw422016.N().S(`</a></li>
|
||||||
<li><b>`)
|
<li><b>`)
|
||||||
//line views/stuff.qtpl:293
|
//line views/stuff.qtpl:257
|
||||||
qw422016.E().S(lc.Get("ui.about_admins"))
|
qw422016.E().S(lc.Get("ui.about_admins"))
|
||||||
//line views/stuff.qtpl:293
|
//line views/stuff.qtpl:257
|
||||||
qw422016.N().S(`</b>`)
|
qw422016.N().S(`</b>`)
|
||||||
//line views/stuff.qtpl:293
|
//line views/stuff.qtpl:257
|
||||||
for i, username := range user.ListUsersWithGroup("admin") {
|
for i, username := range user.ListUsersWithGroup("admin") {
|
||||||
//line views/stuff.qtpl:294
|
//line views/stuff.qtpl:258
|
||||||
if i > 0 {
|
if i > 0 {
|
||||||
//line views/stuff.qtpl:294
|
//line views/stuff.qtpl:258
|
||||||
qw422016.N().S(`<span aria-hidden="true">, </span>
|
qw422016.N().S(`<span aria-hidden="true">, </span>
|
||||||
`)
|
`)
|
||||||
//line views/stuff.qtpl:295
|
//line views/stuff.qtpl:259
|
||||||
}
|
}
|
||||||
//line views/stuff.qtpl:295
|
//line views/stuff.qtpl:259
|
||||||
qw422016.N().S(` <a href="/hypha/`)
|
qw422016.N().S(` <a href="/hypha/`)
|
||||||
//line views/stuff.qtpl:296
|
//line views/stuff.qtpl:260
|
||||||
qw422016.E().S(cfg.UserHypha)
|
qw422016.E().S(cfg.UserHypha)
|
||||||
//line views/stuff.qtpl:296
|
//line views/stuff.qtpl:260
|
||||||
qw422016.N().S(`/`)
|
qw422016.N().S(`/`)
|
||||||
//line views/stuff.qtpl:296
|
//line views/stuff.qtpl:260
|
||||||
qw422016.E().S(username)
|
qw422016.E().S(username)
|
||||||
//line views/stuff.qtpl:296
|
//line views/stuff.qtpl:260
|
||||||
qw422016.N().S(`">`)
|
qw422016.N().S(`">`)
|
||||||
//line views/stuff.qtpl:296
|
//line views/stuff.qtpl:260
|
||||||
qw422016.E().S(username)
|
qw422016.E().S(username)
|
||||||
//line views/stuff.qtpl:296
|
//line views/stuff.qtpl:260
|
||||||
qw422016.N().S(`</a>`)
|
qw422016.N().S(`</a>`)
|
||||||
//line views/stuff.qtpl:296
|
//line views/stuff.qtpl:260
|
||||||
}
|
}
|
||||||
//line views/stuff.qtpl:296
|
//line views/stuff.qtpl:260
|
||||||
qw422016.N().S(`</li>
|
qw422016.N().S(`</li>
|
||||||
`)
|
`)
|
||||||
//line views/stuff.qtpl:297
|
//line views/stuff.qtpl:261
|
||||||
} else {
|
} else {
|
||||||
//line views/stuff.qtpl:297
|
//line views/stuff.qtpl:261
|
||||||
qw422016.N().S(` <li>`)
|
qw422016.N().S(` <li>`)
|
||||||
//line views/stuff.qtpl:298
|
//line views/stuff.qtpl:262
|
||||||
qw422016.E().S(lc.Get("ui.about_noauth"))
|
qw422016.E().S(lc.Get("ui.about_noauth"))
|
||||||
//line views/stuff.qtpl:298
|
//line views/stuff.qtpl:262
|
||||||
qw422016.N().S(`</li>
|
qw422016.N().S(`</li>
|
||||||
`)
|
`)
|
||||||
//line views/stuff.qtpl:299
|
//line views/stuff.qtpl:263
|
||||||
}
|
}
|
||||||
//line views/stuff.qtpl:299
|
//line views/stuff.qtpl:263
|
||||||
qw422016.N().S(` </ul>
|
qw422016.N().S(` </ul>
|
||||||
<p>`)
|
<p>`)
|
||||||
//line views/stuff.qtpl:301
|
//line views/stuff.qtpl:265
|
||||||
qw422016.N().S(lc.Get("ui.about_hyphae", &l18n.Replacements{"link": "<a href=\"/list\">/list</a>"}))
|
qw422016.N().S(lc.Get("ui.about_hyphae", &l18n.Replacements{"link": "<a href=\"/list\">/list</a>"}))
|
||||||
//line views/stuff.qtpl:301
|
//line views/stuff.qtpl:265
|
||||||
qw422016.N().S(`</p>
|
qw422016.N().S(`</p>
|
||||||
</section>
|
</section>
|
||||||
</main>
|
</main>
|
||||||
</div>
|
</div>
|
||||||
`)
|
`)
|
||||||
//line views/stuff.qtpl:305
|
//line views/stuff.qtpl:269
|
||||||
}
|
}
|
||||||
|
|
||||||
//line views/stuff.qtpl:305
|
//line views/stuff.qtpl:269
|
||||||
func WriteAboutHTML(qq422016 qtio422016.Writer, lc *l18n.Localizer) {
|
func WriteAboutHTML(qq422016 qtio422016.Writer, lc *l18n.Localizer) {
|
||||||
//line views/stuff.qtpl:305
|
//line views/stuff.qtpl:269
|
||||||
qw422016 := qt422016.AcquireWriter(qq422016)
|
qw422016 := qt422016.AcquireWriter(qq422016)
|
||||||
//line views/stuff.qtpl:305
|
//line views/stuff.qtpl:269
|
||||||
StreamAboutHTML(qw422016, lc)
|
StreamAboutHTML(qw422016, lc)
|
||||||
//line views/stuff.qtpl:305
|
//line views/stuff.qtpl:269
|
||||||
qt422016.ReleaseWriter(qw422016)
|
qt422016.ReleaseWriter(qw422016)
|
||||||
//line views/stuff.qtpl:305
|
//line views/stuff.qtpl:269
|
||||||
}
|
}
|
||||||
|
|
||||||
//line views/stuff.qtpl:305
|
//line views/stuff.qtpl:269
|
||||||
func AboutHTML(lc *l18n.Localizer) string {
|
func AboutHTML(lc *l18n.Localizer) string {
|
||||||
//line views/stuff.qtpl:305
|
//line views/stuff.qtpl:269
|
||||||
qb422016 := qt422016.AcquireByteBuffer()
|
qb422016 := qt422016.AcquireByteBuffer()
|
||||||
//line views/stuff.qtpl:305
|
//line views/stuff.qtpl:269
|
||||||
WriteAboutHTML(qb422016, lc)
|
WriteAboutHTML(qb422016, lc)
|
||||||
//line views/stuff.qtpl:305
|
//line views/stuff.qtpl:269
|
||||||
qs422016 := string(qb422016.B)
|
qs422016 := string(qb422016.B)
|
||||||
//line views/stuff.qtpl:305
|
//line views/stuff.qtpl:269
|
||||||
qt422016.ReleaseByteBuffer(qb422016)
|
qt422016.ReleaseByteBuffer(qb422016)
|
||||||
//line views/stuff.qtpl:305
|
//line views/stuff.qtpl:269
|
||||||
return qs422016
|
return qs422016
|
||||||
//line views/stuff.qtpl:305
|
//line views/stuff.qtpl:269
|
||||||
}
|
}
|
||||||
|
|
||||||
//line views/stuff.qtpl:307
|
//line views/stuff.qtpl:271
|
||||||
func StreamCommonScripts(qw422016 *qt422016.Writer) {
|
func StreamCommonScripts(qw422016 *qt422016.Writer) {
|
||||||
//line views/stuff.qtpl:307
|
//line views/stuff.qtpl:271
|
||||||
qw422016.N().S(`
|
qw422016.N().S(`
|
||||||
`)
|
`)
|
||||||
//line views/stuff.qtpl:308
|
//line views/stuff.qtpl:272
|
||||||
for _, scriptPath := range cfg.CommonScripts {
|
for _, scriptPath := range cfg.CommonScripts {
|
||||||
//line views/stuff.qtpl:308
|
//line views/stuff.qtpl:272
|
||||||
qw422016.N().S(`
|
qw422016.N().S(`
|
||||||
<script src="`)
|
<script src="`)
|
||||||
//line views/stuff.qtpl:309
|
//line views/stuff.qtpl:273
|
||||||
qw422016.E().S(scriptPath)
|
qw422016.E().S(scriptPath)
|
||||||
//line views/stuff.qtpl:309
|
//line views/stuff.qtpl:273
|
||||||
qw422016.N().S(`"></script>
|
qw422016.N().S(`"></script>
|
||||||
`)
|
`)
|
||||||
//line views/stuff.qtpl:310
|
//line views/stuff.qtpl:274
|
||||||
}
|
}
|
||||||
//line views/stuff.qtpl:310
|
//line views/stuff.qtpl:274
|
||||||
qw422016.N().S(`
|
qw422016.N().S(`
|
||||||
`)
|
`)
|
||||||
//line views/stuff.qtpl:311
|
//line views/stuff.qtpl:275
|
||||||
}
|
}
|
||||||
|
|
||||||
//line views/stuff.qtpl:311
|
//line views/stuff.qtpl:275
|
||||||
func WriteCommonScripts(qq422016 qtio422016.Writer) {
|
func WriteCommonScripts(qq422016 qtio422016.Writer) {
|
||||||
//line views/stuff.qtpl:311
|
//line views/stuff.qtpl:275
|
||||||
qw422016 := qt422016.AcquireWriter(qq422016)
|
qw422016 := qt422016.AcquireWriter(qq422016)
|
||||||
//line views/stuff.qtpl:311
|
//line views/stuff.qtpl:275
|
||||||
StreamCommonScripts(qw422016)
|
StreamCommonScripts(qw422016)
|
||||||
//line views/stuff.qtpl:311
|
//line views/stuff.qtpl:275
|
||||||
qt422016.ReleaseWriter(qw422016)
|
qt422016.ReleaseWriter(qw422016)
|
||||||
//line views/stuff.qtpl:311
|
//line views/stuff.qtpl:275
|
||||||
}
|
}
|
||||||
|
|
||||||
//line views/stuff.qtpl:311
|
//line views/stuff.qtpl:275
|
||||||
func CommonScripts() string {
|
func CommonScripts() string {
|
||||||
//line views/stuff.qtpl:311
|
//line views/stuff.qtpl:275
|
||||||
qb422016 := qt422016.AcquireByteBuffer()
|
qb422016 := qt422016.AcquireByteBuffer()
|
||||||
//line views/stuff.qtpl:311
|
//line views/stuff.qtpl:275
|
||||||
WriteCommonScripts(qb422016)
|
WriteCommonScripts(qb422016)
|
||||||
//line views/stuff.qtpl:311
|
//line views/stuff.qtpl:275
|
||||||
qs422016 := string(qb422016.B)
|
qs422016 := string(qb422016.B)
|
||||||
//line views/stuff.qtpl:311
|
//line views/stuff.qtpl:275
|
||||||
qt422016.ReleaseByteBuffer(qb422016)
|
qt422016.ReleaseByteBuffer(qb422016)
|
||||||
//line views/stuff.qtpl:311
|
//line views/stuff.qtpl:275
|
||||||
return qs422016
|
return qs422016
|
||||||
//line views/stuff.qtpl:311
|
//line views/stuff.qtpl:275
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user