package notifyrender import ( "bytes" "html/template" "rocketgit.ru/rsmon/worker/app/models" ) var ( // DownOneSubject provides functionality. DownOneSubject *template.Template // DownOneBody provides functionality. DownOneBody *template.Template // DownOneHTML provides functionality. DownOneHTML *template.Template ) func init() { DownOneSubject = template.Must(template.New("down_one_subject").Parse(`Не доступен {{.Monitor.GetLabel}}`)) // DownOneBody provides functionality. DownOneBody = template.Must(template.New("down_one_body").Parse(`Монитор {{.Monitor.GetLabel}} не доступен :warning: Проверки: {{.ChecksDown}}. Ошибка: {{.Reason}} Начало события: {{.StartTime.Format "02.01.2006 15:04:05"}} Недоступные проверки: {{range .Checks}} {{.Kind}} - {{if .Name}}{{.Name}}{{else}}Нет имени{{end}} - {{if .URL}}{{.URL}}{{else}}URL не указан{{end}} {{if .Error}}({{.Error}}){{end}} {{end}}`)) DownOneHTML = template.Must(template.New("down_one_html").Parse(`

Монитор {{.Monitor.GetLabel}} не доступен

Проверки: {{.ChecksDown}}.
Ошибка:
{{.Reason}}
Начало события: {{.StartTime.Format "02.01.2006 15:04:05"}}
Недоступные проверки:
{{range .Checks}}
{{.Kind}} - {{if .Name}}{{.Name}}{{else}}Нет имени{{end}} - {{if .URL}}{{.URL}}{{else}}URL не указан{{end}} {{if .Error}}({{.Error}}){{end}}
{{end}}`)) } // TextDownOne provides functionality. func TextDownOne(event *models.Event) (bytes.Buffer, bytes.Buffer, bytes.Buffer, bytes.Buffer) { return executeTemplates(event, DownOneSubject, DownOneBody, DownOneHTML, " :warning:") }