htmx integration
This commit is contained in:
86
main.go
86
main.go
@@ -128,6 +128,7 @@ type Keyword struct {
|
||||
type DataPort struct {
|
||||
Contacts []Contact
|
||||
Keywords []Keyword
|
||||
/*Links []ContactKeywordLink*/
|
||||
}
|
||||
|
||||
/* ################################################################## */
|
||||
@@ -144,33 +145,39 @@ func (s *Server) privateHello(w http.ResponseWriter, r *http.Request) {
|
||||
}
|
||||
|
||||
func GetDataReturnDataPort(QueryContact, QueryKeyword string) DataPort {
|
||||
rows, err := DB.Query(QueryContact)
|
||||
if err != nil {
|
||||
fmt.Println("a", err)
|
||||
}
|
||||
var contList []Contact
|
||||
for rows.Next() {
|
||||
var c Contact
|
||||
err = rows.Scan(&c.Id, &c.OwnerId, &c.AdUserId, &c.DisplayName, &c.Phone, &c.Mobile, &c.Homeoffice, &c.Email, &c.Room, &c.DepartmentId, &c.LocationId)
|
||||
var keywordList []Keyword
|
||||
|
||||
if QueryContact != "" {
|
||||
rowsContact, err := DB.Query(QueryContact)
|
||||
if err != nil {
|
||||
fmt.Println("b", err)
|
||||
fmt.Println("a", err)
|
||||
}
|
||||
for rowsContact.Next() {
|
||||
var c Contact
|
||||
err = rowsContact.Scan(&c.Id, &c.OwnerId, &c.AdUserId, &c.DisplayName, &c.Phone, &c.Mobile, &c.Homeoffice, &c.Email, &c.Room, &c.DepartmentId, &c.LocationId)
|
||||
if err != nil {
|
||||
fmt.Println("b", err)
|
||||
}
|
||||
contList = append(contList, c)
|
||||
}
|
||||
contList = append(contList, c)
|
||||
}
|
||||
|
||||
rows1, err := DB.Query(QueryKeyword)
|
||||
if err != nil {
|
||||
fmt.Println("c", err)
|
||||
}
|
||||
var keywordList []Keyword
|
||||
for rows1.Next() {
|
||||
var c0 Keyword
|
||||
err = rows1.Scan(&c0.Id, &c0.Owner, &c0.Name)
|
||||
if QueryKeyword != "" {
|
||||
rowsKeyword, err := DB.Query(QueryKeyword)
|
||||
if err != nil {
|
||||
fmt.Println("d", err)
|
||||
fmt.Println("c", err)
|
||||
}
|
||||
for rowsKeyword.Next() {
|
||||
var c0 Keyword
|
||||
err = rowsKeyword.Scan(&c0.Id, &c0.Owner, &c0.Name)
|
||||
if err != nil {
|
||||
fmt.Println("d", err)
|
||||
}
|
||||
keywordList = append(keywordList, c0)
|
||||
}
|
||||
keywordList = append(keywordList, c0)
|
||||
}
|
||||
|
||||
return DataPort{Contacts: contList, Keywords: keywordList}
|
||||
}
|
||||
|
||||
@@ -283,44 +290,39 @@ func main() {
|
||||
tplFull.ExecuteTemplate(w, "layout", nil)
|
||||
})*/
|
||||
|
||||
mux.HandleFunc("/htmx/kontakt", func(w http.ResponseWriter, r *http.Request) {
|
||||
mux.HandleFunc("/htmx/contact", func(w http.ResponseWriter, r *http.Request) {
|
||||
if err := r.ParseForm(); err != nil {
|
||||
http.Error(w, "bad request", http.StatusBadRequest)
|
||||
return
|
||||
}
|
||||
sparam := strings.TrimSpace(r.Form.Get("search"))
|
||||
|
||||
fmt.Println("All_OK", sparam)
|
||||
sqlq := "SELECT * FROM contact c WHERE c.contact_displayname LIKE '%" + sparam + "%' OR c.contact_phone LIKE '%" + sparam + "%' OR c.contact_mobile LIKE '%" + sparam + "%' OR c.contact_homeoffice LIKE '%" + sparam + "%';"
|
||||
|
||||
rows, err := db.Query(sqlq)
|
||||
if err != nil {
|
||||
w.WriteHeader(http.StatusInternalServerError)
|
||||
}
|
||||
|
||||
var contList []Contact
|
||||
|
||||
for rows.Next() {
|
||||
var c Contact
|
||||
err = rows.Scan(&c.Id)
|
||||
contList = append(contList, c)
|
||||
}
|
||||
|
||||
tplKontakt.ExecuteTemplate(w, "kontakt", contList)
|
||||
D := GetDataReturnDataPort(sqlq, "")
|
||||
tplKontakt.ExecuteTemplate(w, "kontakt", D)
|
||||
})
|
||||
|
||||
mux.HandleFunc("/htmx/kontaktbyschlagwort", func(w http.ResponseWriter, r *http.Request) {
|
||||
tplKontakt.ExecuteTemplate(w, "kontakt", nil)
|
||||
})
|
||||
|
||||
mux.HandleFunc("/htmx/amt", func(w http.ResponseWriter, r *http.Request) {
|
||||
mux.HandleFunc("/htmx/department", func(w http.ResponseWriter, r *http.Request) {
|
||||
if err := r.ParseForm(); err != nil {
|
||||
http.Error(w, "bad request", http.StatusBadRequest)
|
||||
return
|
||||
}
|
||||
sparam := strings.TrimSpace(r.Form.Get("search"))
|
||||
fmt.Println("Department_OK", sparam)
|
||||
sqlq := "SELECT c.* FROM contact c JOIN department d ON c.contact_department_id = d.department_id WHERE d.department_name LIKE '%" + sparam + "%';"
|
||||
D := GetDataReturnDataPort(sqlq, "")
|
||||
tplKontakt.ExecuteTemplate(w, "kontakt", D)
|
||||
})
|
||||
|
||||
mux.HandleFunc("/htmx/room", func(w http.ResponseWriter, r *http.Request) {
|
||||
tplKontakt.ExecuteTemplate(w, "kontakt", nil)
|
||||
})
|
||||
|
||||
mux.HandleFunc("/htmx/raum", func(w http.ResponseWriter, r *http.Request) {
|
||||
tplKontakt.ExecuteTemplate(w, "kontakt", nil)
|
||||
})
|
||||
|
||||
mux.HandleFunc("/htmx/gebaeude", func(w http.ResponseWriter, r *http.Request) {
|
||||
mux.HandleFunc("/htmx/location", func(w http.ResponseWriter, r *http.Request) {
|
||||
tplKontakt.ExecuteTemplate(w, "kontakt", nil)
|
||||
})
|
||||
|
||||
|
Reference in New Issue
Block a user