Mercurial > gemma
view pkg/common/attributes.go @ 1903:7247ac316cb7 dev-pdf-generation
client: pdf-gen: improve layout and ui
* Remove download or display options, because they are not working anyway.
* Add page info and about box.
* Use a fixed generic logo text image and a placer holder text for the
disclaimer.
* Add string to translation files.
* Adjust scale bar layout.
author | Bernhard Reiter <bernhard@intevation.de> |
---|---|
date | Fri, 18 Jan 2019 16:52:20 +0100 |
parents | 49e047c2106e |
children | 8eeb0b5eb340 |
line wrap: on
line source
// This is Free Software under GNU Affero General Public License v >= 3.0 // without warranty, see README.md and license for details. // // SPDX-License-Identifier: AGPL-3.0-or-later // License-Filename: LICENSES/AGPL-3.0.txt // // Copyright (C) 2018 by via donau // – Österreichische Wasserstraßen-Gesellschaft mbH // Software engineering by Intevation GmbH // // Author(s): // * Sascha L. Teichmann <sascha.teichmann@intevation.de> package common import ( "log" "strconv" "strings" "time" ) // Attributes is a map of optional key/value attributes // of a configuration. type Attributes map[string]string // Get fetches a value for given key out of the configuration. // If the key was not found the bool component of the return value // return false. func (ca Attributes) Get(key string) (string, bool) { if ca == nil { return "", false } value, found := ca[key] return value, found } // Bool returns a bool value for a given key. func (ca Attributes) Bool(key string) bool { s, found := ca.Get(key) return found && strings.ToLower(s) == "true" } // Time gives a time.Time for a given key. func (ca Attributes) Time(key string) (time.Time, bool) { s, found := ca.Get(key) if !found { return time.Time{}, false } t, err := time.Parse("2006-01-02T15:04:05", s) if err != nil { log.Printf("error: %v\n", err) return time.Time{}, false } return t, true } func (ca Attributes) Int(key string) (int, bool) { s, found := ca.Get(key) if !found { return 0, false } i, err := strconv.Atoi(s) if err != nil { log.Printf("error: %v\n", err) return 0, false } return i, true }