3
0

Include only enabled triggers/scripts

This commit is contained in:
Denis Arh 2019-07-31 16:54:18 +02:00
parent 94e2acfc17
commit c0552d3e6a
3 changed files with 15 additions and 1 deletions

View File

@ -93,6 +93,10 @@ func (r trigger) Find(filter types.TriggerFilter) (set types.TriggerSet, f types
query = query.Where("name like ?", q)
}
if f.EnabledOnly {
query = query.Where("enabled")
}
if f.Count, err = r.count(query); err != nil || f.Count == 0 {
return
}

View File

@ -339,6 +339,9 @@ func (svc record) DeleteByID(namespaceID, recordID uint64) (err error) {
return errors.Wrap(err, "unable to delete record")
}
// loadCombo Loads everything we need for record manipulation
//
// Loads namespace, module, record and set of triggers.
func (svc record) loadCombo(namespaceID, moduleID, recordID uint64) (ns *types.Namespace, m *types.Module, r *types.Record, tt types.TriggerSet, err error) {
if namespaceID == 0 {
err = ErrNamespaceRequired
@ -361,8 +364,14 @@ func (svc record) loadCombo(namespaceID, moduleID, recordID uint64) (ns *types.N
}
tt, _, err = svc.tRepo.Find(types.TriggerFilter{
// Make sure we stay in the same namespace
NamespaceID: ns.ID,
ModuleID: m.ID,
// Triggered scripts are always module-bound
ModuleID: m.ID,
// We are only interested in enabled scripts
EnabledOnly: true,
})
return

View File

@ -38,6 +38,7 @@ type (
TriggerFilter struct {
NamespaceID uint64 `json:"namespaceID,string"`
Query string `json:"query"`
EnabledOnly bool `json:"-"`
Page uint `json:"page"`
PerPage uint `json:"perPage"`
// Sort string `json:"sort"`