Ejemplo n.º 1
0
func keywordsToSet(img *model.Image, file_kwds []string,
	oldex map[string][]string) ([]string, bool) {
	// log.Printf("%s file: %s\n", img.Name(), strings.Join(file_kwds, ", "))
	// log.Printf("%s db  : %s\n", img.Name(), strings.Join(img.Keywords(), ", "))
	present := make(map[string]bool)
	var kwds []string
	var k string
	for _, k = range img.Keywords() {
		kwds = appendIfNew(kwds, k, present)
	}
	for _, k = range file_kwds {
		kwds = appendIfNew(kwds, k, present)
	}
	old_kwds, has_old := oldex[img.Name()]
	if has_old {
		for _, k = range old_kwds {
			kwds = appendIfNew(kwds, k, present)
		}
	}
	return kwds, len(kwds) != len(file_kwds)
}