JSON CLI matching PHP ExportPosts/ImportPosts ships as HasCommands, and Posts toolbar actions reuse that logic behind access_import_export. Co-authored-by: Cursor <cursoragent@cursor.com>
43 lines
1.6 KiB
Go
43 lines
1.6 KiB
Go
package controllers
|
|
|
|
import (
|
|
"git.golem15.com/golem15/summercms/modules/backpack"
|
|
"git.golem15.com/golem15/summercms/modules/cabana"
|
|
"git.golem15.com/golem15/summercms/modules/pact"
|
|
)
|
|
|
|
// AdminControllers is the plugin's admin controller list. app returns the
|
|
// booted application; it is asked on every call, so a controller never keeps
|
|
// a database handle of its own.
|
|
func AdminControllers(app func() *backpack.App) []pact.AdminController {
|
|
return []pact.AdminController{
|
|
postsAdminController{app: app},
|
|
categoriesAdminController{app: app},
|
|
tagsAdminController{app: app},
|
|
}
|
|
}
|
|
|
|
func init() {
|
|
var _ pact.AdminController = postsAdminController{}
|
|
var _ pact.AdminPermissioned = postsAdminController{}
|
|
var _ pact.AdminRecordSource = postsAdminController{}
|
|
var _ pact.ListExtendQuery = postsAdminController{}
|
|
var _ pact.FormExtendQuery = postsAdminController{}
|
|
var _ pact.ListRowStates = postsAdminController{}
|
|
var _ pact.FilterOptions = postsAdminController{}
|
|
var _ pact.FormBeforeCreate = postsAdminController{}
|
|
var _ pact.FormBeforeUpdate = postsAdminController{}
|
|
var _ pact.FormBeforeDelete = postsAdminController{}
|
|
var _ pact.HasAdminActions = postsAdminController{}
|
|
var _ cabana.FieldRelationProvider = postsAdminController{}
|
|
|
|
var _ pact.AdminController = categoriesAdminController{}
|
|
var _ pact.AdminPermissioned = categoriesAdminController{}
|
|
var _ pact.AdminRecordSource = categoriesAdminController{}
|
|
var _ cabana.FieldRelationProvider = categoriesAdminController{}
|
|
|
|
var _ pact.AdminController = tagsAdminController{}
|
|
var _ pact.AdminPermissioned = tagsAdminController{}
|
|
var _ pact.AdminRecordSource = tagsAdminController{}
|
|
}
|