mirror of
https://gitlab.dit.htwk-leipzig.de/htwk-software/htwkalender.git
synced 2025-08-03 10:19:14 +02:00
feat:#65 updated backend deps
This commit is contained in:
@@ -19,7 +19,7 @@ package db
|
||||
import (
|
||||
"fmt"
|
||||
"github.com/google/uuid"
|
||||
"github.com/pocketbase/pocketbase/daos"
|
||||
"github.com/pocketbase/pocketbase/core"
|
||||
"github.com/pocketbase/pocketbase/tools/types"
|
||||
"htwkalender/data-manager/model"
|
||||
"log/slog"
|
||||
@@ -36,7 +36,7 @@ func SaveSeminarGroupEvents(seminarGroup model.SeminarGroup, app *pocketbase.Poc
|
||||
// check if event is already in database and add to toBeSavedEvents if not
|
||||
for _, event := range seminarGroup.Events {
|
||||
event = event.SetCourse(seminarGroup.Course)
|
||||
existsInDatabase, err := findEventByDayWeekStartEndNameCourse(event, seminarGroup.Course, app.Dao())
|
||||
existsInDatabase, err := findEventByDayWeekStartEndNameCourse(event, seminarGroup.Course, app)
|
||||
alreadyAddedToSave := toBeSavedEvents.Contains(event)
|
||||
|
||||
if err != nil {
|
||||
@@ -52,7 +52,7 @@ func SaveSeminarGroupEvents(seminarGroup model.SeminarGroup, app *pocketbase.Poc
|
||||
for _, event := range toBeSavedEvents {
|
||||
event.MarkAsNew()
|
||||
// auto mapping for event fields to record fields
|
||||
err := app.Dao().Save(&event)
|
||||
err := app.Save(&event)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
} else {
|
||||
@@ -63,13 +63,13 @@ func SaveSeminarGroupEvents(seminarGroup model.SeminarGroup, app *pocketbase.Poc
|
||||
return savedRecords, nil
|
||||
}
|
||||
|
||||
func SaveEvents(events []model.Event, txDao *daos.Dao) ([]model.Event, error) {
|
||||
func SaveEvents(events []model.Event, base *pocketbase.PocketBase) ([]model.Event, error) {
|
||||
var toBeSavedEvents model.Events
|
||||
var savedRecords model.Events
|
||||
|
||||
// check if event is already in database and add to toBeSavedEvents if not
|
||||
for _, event := range events {
|
||||
existsInDatabase, err := findEventByDayWeekStartEndNameCourse(event, event.Course, txDao)
|
||||
existsInDatabase, err := findEventByDayWeekStartEndNameCourse(event, event.Course, base)
|
||||
alreadyAddedToSave := toBeSavedEvents.Contains(event)
|
||||
|
||||
if err != nil {
|
||||
@@ -84,7 +84,7 @@ func SaveEvents(events []model.Event, txDao *daos.Dao) ([]model.Event, error) {
|
||||
for _, event := range toBeSavedEvents {
|
||||
event.MarkAsNew()
|
||||
// auto mapping for event fields to record fields
|
||||
err := txDao.Save(&event)
|
||||
err := base.Save(&event)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
} else {
|
||||
@@ -95,11 +95,11 @@ func SaveEvents(events []model.Event, txDao *daos.Dao) ([]model.Event, error) {
|
||||
}
|
||||
|
||||
// check if event is already in database and return true if it is and false if it's not
|
||||
func findEventByDayWeekStartEndNameCourse(event model.Event, course string, dao *daos.Dao) (bool, error) {
|
||||
func findEventByDayWeekStartEndNameCourse(event model.Event, course string, base *pocketbase.PocketBase) (bool, error) {
|
||||
|
||||
var dbEvent model.Event
|
||||
|
||||
err := dao.DB().Select("*").From("events").
|
||||
err := base.DB().Select("*").From("events").
|
||||
Where(dbx.NewExp(
|
||||
"Day = {:day} AND "+
|
||||
"Week = {:week} AND "+
|
||||
@@ -191,7 +191,7 @@ func GetPlanForModules(app *pocketbase.PocketBase, modules []string) (model.Even
|
||||
|
||||
var selectedModulesQuery = buildIcalQueryForModules(moduleBatch)
|
||||
// get all events from event records in the events collection
|
||||
err := app.Dao().DB().Select("*").From("events").Where(selectedModulesQuery).OrderBy("start").All(&events)
|
||||
err := app.DB().Select("*").From("events").Where(selectedModulesQuery).OrderBy("start").All(&events)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
@@ -204,20 +204,7 @@ func GetAllEventsForCourse(app *pocketbase.PocketBase, course string) (model.Eve
|
||||
var events model.Events
|
||||
|
||||
// get all events from event records in the events collection
|
||||
err := app.Dao().DB().Select("*").From("events").Where(dbx.NewExp("course = {:course}", dbx.Params{"course": course})).All(&events)
|
||||
if err != nil {
|
||||
slog.Error("Error while getting events from database: ", "error", err)
|
||||
return nil, fmt.Errorf("error while getting events from database for course %s", course)
|
||||
}
|
||||
|
||||
return events, nil
|
||||
}
|
||||
|
||||
func GetAllEventsForCourseAndSemester(app *pocketbase.PocketBase, course string, semester string) (model.Events, error) {
|
||||
var events model.Events
|
||||
|
||||
// get all events from event records in the events collection
|
||||
err := app.Dao().DB().Select("*").From("events").Where(dbx.NewExp("course = {:course} AND semester = {:semester}", dbx.Params{"course": course, "semester": semester})).All(&events)
|
||||
err := app.DB().Select("*").From("events").Where(dbx.NewExp("course = {:course}", dbx.Params{"course": course})).All(&events)
|
||||
if err != nil {
|
||||
slog.Error("Error while getting events from database: ", "error", err)
|
||||
return nil, fmt.Errorf("error while getting events from database for course %s", course)
|
||||
@@ -230,7 +217,7 @@ func GetAllModulesForCourse(app *pocketbase.PocketBase, course string, semester
|
||||
var events model.Events
|
||||
|
||||
// get all events from event records in the events collection
|
||||
err := app.Dao().DB().Select("*").From("events").Where(dbx.NewExp("course = {:course} AND semester = {:semester}", dbx.Params{"course": course, "semester": semester})).GroupBy("Name").Distinct(true).All(&events)
|
||||
err := app.DB().Select("*").From("events").Where(dbx.NewExp("course = {:course} AND semester = {:semester}", dbx.Params{"course": course, "semester": semester})).GroupBy("Name").Distinct(true).All(&events)
|
||||
if err != nil {
|
||||
slog.Error("Error while getting events from database: ", "error", err)
|
||||
return nil, fmt.Errorf("error while getting events from database for course %s and semester %s", course, semester)
|
||||
@@ -242,7 +229,7 @@ func GetAllModulesForCourse(app *pocketbase.PocketBase, course string, semester
|
||||
func GetAllModulesDistinctByNameAndCourse(app *pocketbase.PocketBase) ([]model.ModuleDTO, error) {
|
||||
var modules []model.ModuleDTO
|
||||
|
||||
err := app.Dao().DB().Select("Name", "EventType", "Prof", "course", "semester", "uuid").From("events").GroupBy("Name", "Course").Distinct(true).All(&modules)
|
||||
err := app.DB().Select("Name", "EventType", "Prof", "course", "semester", "uuid").From("events").GroupBy("Name", "Course").Distinct(true).All(&modules)
|
||||
if err != nil {
|
||||
slog.Error("Error while getting events from database: ", "error", err)
|
||||
return nil, fmt.Errorf("error while getting events distinct by name and course from data")
|
||||
@@ -251,8 +238,8 @@ func GetAllModulesDistinctByNameAndCourse(app *pocketbase.PocketBase) ([]model.M
|
||||
return modules, nil
|
||||
}
|
||||
|
||||
func DeleteAllEventsByCourse(dao *daos.Dao, course string, semester string) error {
|
||||
_, err := dao.DB().Delete("events", dbx.NewExp("course = {:course} AND semester = {:semester}", dbx.Params{"course": course, "semester": semester})).Execute()
|
||||
func DeleteAllEventsByCourse(base *pocketbase.PocketBase, course string, semester string) error {
|
||||
_, err := base.DB().Delete("events", dbx.NewExp("course = {:course} AND semester = {:semester}", dbx.Params{"course": course, "semester": semester})).Execute()
|
||||
|
||||
if err != nil {
|
||||
return err
|
||||
@@ -260,8 +247,8 @@ func DeleteAllEventsByCourse(dao *daos.Dao, course string, semester string) erro
|
||||
return nil
|
||||
}
|
||||
|
||||
func DeleteAllEventsRatherThenCourse(dao *daos.Dao, course string, semester string) error {
|
||||
_, err := dao.DB().Delete("events", dbx.NewExp("course != {:course} AND semester = {:semester}", dbx.Params{"course": course, "semester": semester})).Execute()
|
||||
func DeleteAllEventsRatherThenCourse(app core.App, course string, semester string) error {
|
||||
_, err := app.DB().Delete("events", dbx.NewExp("course != {:course} AND semester = {:semester}", dbx.Params{"course": course, "semester": semester})).Execute()
|
||||
|
||||
if err != nil {
|
||||
return err
|
||||
@@ -269,9 +256,9 @@ func DeleteAllEventsRatherThenCourse(dao *daos.Dao, course string, semester stri
|
||||
return nil
|
||||
}
|
||||
|
||||
func DeleteAllEvents(app *pocketbase.PocketBase) error {
|
||||
func DeleteAllEvents(app core.App) error {
|
||||
|
||||
_, err := app.Dao().DB().Delete("events", dbx.NewExp("1=1")).Execute()
|
||||
_, err := app.DB().Delete("events", dbx.NewExp("1=1")).Execute()
|
||||
|
||||
if err != nil {
|
||||
return err
|
||||
@@ -283,7 +270,7 @@ func DeleteAllEvents(app *pocketbase.PocketBase) error {
|
||||
func FindModuleByUUID(app *pocketbase.PocketBase, uuid string) (model.Module, error) {
|
||||
var module model.Module
|
||||
|
||||
err := app.Dao().DB().Select("*").From("events").Where(dbx.NewExp("uuid = {:uuid}", dbx.Params{"uuid": uuid})).One(&module)
|
||||
err := app.DB().Select("*").From("events").Where(dbx.NewExp("uuid = {:uuid}", dbx.Params{"uuid": uuid})).One(&module)
|
||||
if err != nil {
|
||||
return model.Module{}, err
|
||||
}
|
||||
@@ -294,7 +281,7 @@ func FindModuleByUUID(app *pocketbase.PocketBase, uuid string) (model.Module, er
|
||||
func FindAllEventsByModule(app *pocketbase.PocketBase, module model.Module) (model.Events, error) {
|
||||
var events model.Events
|
||||
|
||||
err := app.Dao().DB().Select("*").From("events").Where(dbx.NewExp("Name = {:moduleName} AND course = {:course}", dbx.Params{"moduleName": module.Name, "course": module.Course})).All(&events)
|
||||
err := app.DB().Select("*").From("events").Where(dbx.NewExp("Name = {:moduleName} AND course = {:course}", dbx.Params{"moduleName": module.Name, "course": module.Course})).All(&events)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
@@ -305,7 +292,7 @@ func FindAllEventsByModule(app *pocketbase.PocketBase, module model.Module) (mod
|
||||
func GetAllModulesByNameAndDateRange(app *pocketbase.PocketBase, name string, startDate time.Time, endDate time.Time) (model.Events, error) {
|
||||
var events model.Events
|
||||
|
||||
err := app.Dao().DB().Select("*").From("events").Where(dbx.NewExp("Name = {:name} AND Start >= {:startDate} AND End <= {:endDate}", dbx.Params{"name": name, "startDate": startDate, "endDate": endDate})).All(&events)
|
||||
err := app.DB().Select("*").From("events").Where(dbx.NewExp("Name = {:name} AND Start >= {:startDate} AND End <= {:endDate}", dbx.Params{"name": name, "startDate": startDate, "endDate": endDate})).All(&events)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
@@ -355,7 +342,7 @@ func GetEventsThatCollideWithTimeRange(app *pocketbase.PocketBase, from time.Tim
|
||||
func GetEventsThatStartBeforeAndEndAfter(app *pocketbase.PocketBase, from types.DateTime, to types.DateTime) (model.Events, error) {
|
||||
var events model.Events
|
||||
|
||||
err := app.Dao().DB().Select("*").From("events").Where(dbx.NewExp("Start <= {:startDate} AND End >= {:endDate} AND Start <= {:endDate} AND End >= {:startDate}", dbx.Params{"startDate": from, "endDate": to})).Distinct(true).All(&events)
|
||||
err := app.DB().Select("*").From("events").Where(dbx.NewExp("Start <= {:startDate} AND End >= {:endDate} AND Start <= {:endDate} AND End >= {:startDate}", dbx.Params{"startDate": from, "endDate": to})).Distinct(true).All(&events)
|
||||
|
||||
if err != nil {
|
||||
return nil, err
|
||||
@@ -367,7 +354,7 @@ func GetEventsThatStartBeforeAndEndAfter(app *pocketbase.PocketBase, from types.
|
||||
func GetEventsThatStartAfterAndEndBefore(app *pocketbase.PocketBase, from types.DateTime, to types.DateTime) (model.Events, error) {
|
||||
var events model.Events
|
||||
|
||||
err := app.Dao().DB().Select("*").From("events").Where(dbx.NewExp("Start >= {:startDate} AND End <= {:endDate} AND Start <= {:endDate} AND End >= {:startDate}", dbx.Params{"startDate": from, "endDate": to})).All(&events)
|
||||
err := app.DB().Select("*").From("events").Where(dbx.NewExp("Start >= {:startDate} AND End <= {:endDate} AND Start <= {:endDate} AND End >= {:startDate}", dbx.Params{"startDate": from, "endDate": to})).All(&events)
|
||||
|
||||
if err != nil {
|
||||
return nil, err
|
||||
@@ -379,7 +366,7 @@ func GetEventsThatStartAfterAndEndBefore(app *pocketbase.PocketBase, from types.
|
||||
func GetEventsThatStartBeforeAndEndBefore(app *pocketbase.PocketBase, from types.DateTime, to types.DateTime) (model.Events, error) {
|
||||
var events model.Events
|
||||
|
||||
err := app.Dao().DB().Select("*").From("events").Where(dbx.NewExp("Start <= {:startDate} AND End <= {:endDate} AND Start <= {:endDate} AND End >= {:startDate}", dbx.Params{"startDate": from, "endDate": to})).All(&events)
|
||||
err := app.DB().Select("*").From("events").Where(dbx.NewExp("Start <= {:startDate} AND End <= {:endDate} AND Start <= {:endDate} AND End >= {:startDate}", dbx.Params{"startDate": from, "endDate": to})).All(&events)
|
||||
|
||||
if err != nil {
|
||||
return nil, err
|
||||
@@ -391,7 +378,7 @@ func GetEventsThatStartBeforeAndEndBefore(app *pocketbase.PocketBase, from types
|
||||
func GetAllEventTypes(app *pocketbase.PocketBase) ([]model.EventType, error) {
|
||||
var eventTypes []model.EventType
|
||||
|
||||
err := app.Dao().DB().Select("EventType").From("events").GroupBy("EventType").Distinct(true).All(&eventTypes)
|
||||
err := app.DB().Select("EventType").From("events").GroupBy("EventType").Distinct(true).All(&eventTypes)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
@@ -401,7 +388,7 @@ func GetAllEventTypes(app *pocketbase.PocketBase) ([]model.EventType, error) {
|
||||
|
||||
func GetEventsThatStartAfterAndEndAfter(app *pocketbase.PocketBase, from types.DateTime, to types.DateTime) (model.Events, error) {
|
||||
var events model.Events
|
||||
err := app.Dao().DB().Select("*").From("events").Where(dbx.NewExp("Start >= {:startDate} AND End >= {:endDate} AND Start <= {:endDate} AND End >= {:startDate}", dbx.Params{"startDate": from, "endDate": to})).All(&events)
|
||||
err := app.DB().Select("*").From("events").Where(dbx.NewExp("Start >= {:startDate} AND End >= {:endDate} AND Start <= {:endDate} AND End >= {:startDate}", dbx.Params{"startDate": from, "endDate": to})).All(&events)
|
||||
|
||||
if err != nil {
|
||||
return nil, err
|
||||
@@ -412,7 +399,7 @@ func GetEventsThatStartAfterAndEndAfter(app *pocketbase.PocketBase, from types.D
|
||||
|
||||
func DeleteEvents(list model.Events, app *pocketbase.PocketBase) error {
|
||||
for _, event := range list {
|
||||
err := app.Dao().Delete(&event)
|
||||
err := app.Delete(&event)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
|
@@ -20,16 +20,15 @@ import (
|
||||
"errors"
|
||||
"github.com/pocketbase/dbx"
|
||||
"github.com/pocketbase/pocketbase"
|
||||
"github.com/pocketbase/pocketbase/daos"
|
||||
"github.com/pocketbase/pocketbase/models"
|
||||
"github.com/pocketbase/pocketbase/core"
|
||||
"htwkalender/data-manager/model"
|
||||
"time"
|
||||
)
|
||||
|
||||
func SaveFeed(feed model.Feed, collection *models.Collection, app *pocketbase.PocketBase) (*models.Record, error) {
|
||||
record := models.NewRecord(collection)
|
||||
func SaveFeed(feed model.Feed, collection *core.Collection, app *pocketbase.PocketBase) (*core.Record, error) {
|
||||
record := core.NewRecord(collection)
|
||||
record.Set("modules", feed.Modules)
|
||||
err := app.Dao().SaveRecord(record)
|
||||
err := app.Save(record)
|
||||
|
||||
if err != nil {
|
||||
return nil, err
|
||||
@@ -39,7 +38,7 @@ func SaveFeed(feed model.Feed, collection *models.Collection, app *pocketbase.Po
|
||||
|
||||
func FindFeedByToken(app *pocketbase.PocketBase, token string) (*model.Feed, error) {
|
||||
|
||||
record, err := app.Dao().FindRecordById("feeds", token)
|
||||
record, err := app.FindRecordById("feeds", token)
|
||||
|
||||
if err != nil {
|
||||
return nil, err
|
||||
@@ -53,15 +52,15 @@ func FindFeedByToken(app *pocketbase.PocketBase, token string) (*model.Feed, err
|
||||
//update retrieved time if the is not marked as deleted
|
||||
if !record.GetBool("deleted") {
|
||||
record.Set("retrieved", time.Now())
|
||||
err = app.Dao().SaveRecord(record)
|
||||
err = app.Save(record)
|
||||
}
|
||||
|
||||
return &feed, err
|
||||
}
|
||||
|
||||
func DeleteFeed(db *daos.Dao, feedId string) error {
|
||||
func DeleteFeed(base *pocketbase.PocketBase, feedId string) error {
|
||||
|
||||
sqlResult, err := db.DB().Delete("feeds", dbx.NewExp("id = {:id}", dbx.Params{"id": feedId})).Execute()
|
||||
sqlResult, err := base.DB().Delete("feeds", dbx.NewExp("id = {:id}", dbx.Params{"id": feedId})).Execute()
|
||||
var deletedRows int64
|
||||
if sqlResult != nil {
|
||||
deletedRows, _ = sqlResult.RowsAffected()
|
||||
@@ -78,19 +77,19 @@ func DeleteFeed(db *daos.Dao, feedId string) error {
|
||||
}
|
||||
}
|
||||
|
||||
func GetAllFeeds(db *daos.Dao) ([]model.Feed, error) {
|
||||
func GetAllFeeds(base *pocketbase.PocketBase) ([]model.Feed, error) {
|
||||
var feeds []model.Feed
|
||||
err := db.DB().Select("*").From("feeds").All(&feeds)
|
||||
err := base.DB().Select("*").From("feeds").All(&feeds)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
return feeds, nil
|
||||
}
|
||||
|
||||
func MarkForDelete(db *daos.Dao, token string) error {
|
||||
func MarkForDelete(base *pocketbase.PocketBase, token string) error {
|
||||
// get record from db
|
||||
feed := model.Feed{}
|
||||
err := db.DB().Select("*").From("feeds").Where(dbx.NewExp("id = {:id}", dbx.Params{"id": token})).One(&feed)
|
||||
err := base.DB().Select("*").From("feeds").Where(dbx.NewExp("id = {:id}", dbx.Params{"id": token})).One(&feed)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
@@ -99,7 +98,7 @@ func MarkForDelete(db *daos.Dao, token string) error {
|
||||
feed.Modules = "[\n {\n \"uuid\": \"\",\n \"name\": \"Deleted\",\n \"course\": \"\",\n \"userDefinedName\": \"Deleted\",\n \"reminder\": false\n }\n]"
|
||||
|
||||
// save record
|
||||
err = db.Save(&feed)
|
||||
err = base.Save(&feed)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
|
@@ -18,10 +18,10 @@ package db
|
||||
|
||||
import (
|
||||
"github.com/pocketbase/pocketbase"
|
||||
"github.com/pocketbase/pocketbase/models"
|
||||
"github.com/pocketbase/pocketbase/core"
|
||||
)
|
||||
|
||||
func FindCollection(app *pocketbase.PocketBase, collectionName string) (*models.Collection, error) {
|
||||
collection, dbError := app.Dao().FindCollectionByNameOrId(collectionName)
|
||||
func FindCollection(app *pocketbase.PocketBase, collectionName string) (*core.Collection, error) {
|
||||
collection, dbError := app.FindCollectionByNameOrId(collectionName)
|
||||
return collection, dbError
|
||||
}
|
||||
|
@@ -19,7 +19,7 @@ package db
|
||||
import (
|
||||
"github.com/pocketbase/dbx"
|
||||
"github.com/pocketbase/pocketbase"
|
||||
"github.com/pocketbase/pocketbase/models"
|
||||
"github.com/pocketbase/pocketbase/core"
|
||||
"htwkalender/data-manager/model"
|
||||
"log/slog"
|
||||
)
|
||||
@@ -32,7 +32,7 @@ type SeminarGroup struct {
|
||||
Faculty string `db:"faculty" json:"faculty"`
|
||||
FacultyId string `db:"facultyId" json:"facultyId"`
|
||||
Semester string `db:"semester" json:"semester"`
|
||||
models.BaseModel
|
||||
core.BaseModel
|
||||
}
|
||||
|
||||
func (s *SeminarGroup) TableName() string {
|
||||
@@ -69,7 +69,7 @@ type SeminarGroups []*SeminarGroup
|
||||
func SaveGroups(seminarGroups SeminarGroups, app *pocketbase.PocketBase) (SeminarGroups, error) {
|
||||
|
||||
// delete all groups from the database
|
||||
execute, err := app.Dao().DB().Delete("groups", dbx.NewExp("1 = 1")).Execute()
|
||||
execute, err := app.DB().Delete("groups", dbx.NewExp("1 = 1")).Execute()
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
@@ -77,7 +77,7 @@ func SaveGroups(seminarGroups SeminarGroups, app *pocketbase.PocketBase) (Semina
|
||||
|
||||
savedGroups := SeminarGroups{}
|
||||
for _, group := range seminarGroups {
|
||||
saveErr := app.Dao().Save(group)
|
||||
saveErr := app.Save(group)
|
||||
if saveErr != nil {
|
||||
return nil, saveErr
|
||||
}
|
||||
@@ -95,7 +95,7 @@ func GetAllCourses(app *pocketbase.PocketBase) []string {
|
||||
}
|
||||
|
||||
// get all rooms from event records in the events collection
|
||||
err := app.Dao().DB().Select("course").From("groups").All(&courses)
|
||||
err := app.DB().Select("course").From("groups").All(&courses)
|
||||
if err != nil {
|
||||
slog.Error("Error while getting groups from database: ", "error", err)
|
||||
return []string{}
|
||||
@@ -115,7 +115,7 @@ func GetAllCoursesForSemester(app *pocketbase.PocketBase, semester string) []mod
|
||||
var courses SeminarGroups
|
||||
|
||||
// get all courses for a specific semester
|
||||
err := app.Dao().DB().Select("*").From("groups").Where(dbx.NewExp("semester = {:semester}", dbx.Params{"semester": semester})).All(&courses)
|
||||
err := app.DB().Select("*").From("groups").Where(dbx.NewExp("semester = {:semester}", dbx.Params{"semester": semester})).All(&courses)
|
||||
if err != nil {
|
||||
slog.Error("Error while getting groups from database: ", "error", err)
|
||||
return nil
|
||||
@@ -132,7 +132,7 @@ func GetAllCoursesForSemesterWithEvents(app *pocketbase.PocketBase, semester str
|
||||
}
|
||||
|
||||
// get all courses from events distinct for a specific semester
|
||||
err := app.Dao().DB().Select("course").From("events").Where(dbx.NewExp("semester = {:semester}", dbx.Params{"semester": semester})).Distinct(true).All(&courses)
|
||||
err := app.DB().Select("course").From("events").Where(dbx.NewExp("semester = {:semester}", dbx.Params{"semester": semester})).Distinct(true).All(&courses)
|
||||
if err != nil {
|
||||
slog.Error("Error while getting groups from database: ", "error", err)
|
||||
return nil, err
|
||||
@@ -146,17 +146,3 @@ func GetAllCoursesForSemesterWithEvents(app *pocketbase.PocketBase, semester str
|
||||
|
||||
return courseArray, nil
|
||||
}
|
||||
|
||||
func FindCourseByCourseName(app *pocketbase.PocketBase, courseName string) (model.SeminarGroup, error) {
|
||||
|
||||
var course SeminarGroup
|
||||
|
||||
// get the course by its name
|
||||
err := app.Dao().DB().Select("*").From("groups").Where(dbx.NewExp("course = {:course}", dbx.Params{"course": courseName})).One(&course)
|
||||
if err != nil {
|
||||
slog.Error("Error while getting group from database: ", "error", err)
|
||||
return model.SeminarGroup{}, err
|
||||
}
|
||||
|
||||
return course.toSeminarGroupModel(), nil
|
||||
}
|
||||
|
Reference in New Issue
Block a user