Andrea Fazzi пре 5 година
родитељ
комит
2dc011d191
3 измењених фајлова са 20 додато и 19 уклоњено
  1. 15 16
      orm/group.go
  2. 1 1
      templates/classes_add_update.html.tpl
  3. 4 2
      templates/groups.html.tpl

+ 15 - 16
orm/group.go

@@ -2,7 +2,6 @@ package orm
 
 import (
 	"fmt"
-	"log"
 	"net/http"
 
 	"github.com/jinzhu/gorm"
@@ -14,7 +13,7 @@ type Group struct {
 
 	Name string
 
-	Search string
+	Query string
 
 	TeacherIDs []uint `schema:"teacher_ids" gorm:"-"`
 
@@ -37,7 +36,7 @@ func (g *Group) GetID() uint { return g.ID }
 
 func GetGroupsAll(args map[string]string) (interface{}, error) {
 	var groups []*Group
-	if err := DB().Debug().Preload("Teachers").Order("name").Find(&groups).Error; err != nil {
+	if err := DB().Preload("Teachers").Order("name").Find(&groups).Error; err != nil {
 		return nil, err
 	}
 
@@ -105,8 +104,6 @@ func UpdateGroup(args map[string]string, r *http.Request) (IDer, error) {
 	if err != nil {
 		return nil, err
 	}
-
-	log.Println("Before decoding...", group.(*Group).TeacherIDs)
 	err = renderer.Decode(group, r)
 	if err != nil {
 		return nil, err
@@ -115,20 +112,11 @@ func UpdateGroup(args map[string]string, r *http.Request) (IDer, error) {
 	if err := DB().Where(group.(*Group).TeacherIDs).Find(&group.(*Group).Teachers).Error; err != nil {
 		return nil, err
 	}
-	log.Println("After decoding...", group.(*Group).TeacherIDs)
 	_, err = SaveGroup(group)
 	if err != nil {
 		return nil, err
 	}
-
-	log.Println("After decoding...", group.(*Group).TeacherIDs)
-	// _, err = SaveGroup(group)
-	// if err != nil {
-	// 	return nil, err
-
-	// }
-
-	if err := DB().Debug().Model(group).Association("Teachers").Replace(group.(*Group).Teachers).Error; err != nil {
+	if err := DB().Model(group).Association("Teachers").Replace(group.(*Group).Teachers).Error; err != nil {
 		return nil, err
 	}
 
@@ -147,7 +135,14 @@ func SaveGroup(group interface{}) (interface{}, error) {
 }
 
 func DeleteGroup(args map[string]string, r *http.Request) (IDer, error) {
-	return nil, nil
+	group, err := GetGroup(args)
+	if err != nil {
+		return nil, err
+	}
+	if err := DB().Debug().Unscoped().Delete(group.(*Group)).Error; err != nil {
+		return nil, err
+	}
+	return group.(*Group), nil
 }
 
 func AddGroup(args map[string]string, r *http.Request) (IDer, error) {
@@ -181,3 +176,7 @@ func CreateGroup(group *Group) (*Group, error) {
 	}
 	return group, nil
 }
+
+func (group *Group) RestAPIPath() string {
+	return "groupes"
+}

+ 1 - 1
templates/classes_add_update.html.tpl

@@ -5,7 +5,7 @@
   {{if .Options.Get "update"}}
   <nav aria-label="breadcrumb">
     <ol class="breadcrumb">
-      <li class="breadcrumb-item"><a href="/classes">Classi</a></li>
+      <li class="breadcrumb-item"><a href="/classes?{{query "tpl_layout" "base" "tpl_content" "teachers"}}">Classi</a></li>
       <li class="breadcrumb-item"><a href="/classes/{{.Data.Class.ID}}?{{query "tpl_layout" "base" "tpl_content" "classes"}}">{{.Data.Class.Name}}</a></li>
       <li class="breadcrumb-item active"><a href="#">Aggiorna la classe</a></li>
     </ol>

+ 4 - 2
templates/groups.html.tpl

@@ -27,10 +27,12 @@
   <div class="list-group" id="myUL">
     {{range $group := .Data}}
     <a class="list-group-item list-group-item-action" href="/groups/{{$group.ID}}?{{query "tpl_layout" "base" "tpl_content" "groups_show"}}">
-      <span class="glyphicon glyphicon-briefcase"></span>
+      <span class="fa fa-users"></span>
       {{$group.Name}}
       <div class="text-right">
-	<small>optional tag goes here</small>
+ 	{{range $teacher := $group.Teachers}}
+	<small>{{$teacher.Surname}}</small>
+	{{end}}
       </div>
     </a>
     {{end}}