Documentation
¶
Index ¶
- type AddFeaturedProjectParams
- type AddGalleryMediaParams
- type AddProjectTagParams
- type BatchCreateMediaRelationsParams
- type Blog
- type BlogTag
- type CheckProjectSlugExistsParams
- type CheckTagSlugExistsParams
- type CommitSessionParams
- type CreateMediaParams
- type CreateMediaRelationParams
- type CreateProjectParams
- type CreateSessionParams
- type CreateTagParams
- type CreateUserParams
- type DBTX
- type DeleteAllMediaRelationsForEntityParams
- type DeleteGalleryMediaForEntityParams
- type DeleteMediaRelationParams
- type FindOrCreateTagParams
- type GetDeletedMediaParams
- type GetFeaturedMediaForEntityParams
- type GetFeaturedProjectsRow
- type GetGalleryMediaForEntityParams
- type GetMediaForEntityParams
- type GetMediaStatsRow
- type GetMediaUsageByEntityRow
- type GetMostUsedTagsRow
- type GetProjectsByStatusParams
- type GetProjectsByTagParams
- type ListMediaByTypeParams
- type ListMediaByUploaderParams
- type ListMediaParams
- type ListProjectsParams
- type ListPublishedProjectsParams
- type ListTagsParams
- type ListUsersParams
- type Media
- type MediaRelation
- type Page
- type PageFeaturedProject
- type Project
- type ProjectTag
- type Queries
- func (q *Queries) AddFeaturedProject(ctx context.Context, arg AddFeaturedProjectParams) (PageFeaturedProject, error)
- func (q *Queries) AddGalleryMedia(ctx context.Context, arg AddGalleryMediaParams) error
- func (q *Queries) AddProjectTag(ctx context.Context, arg AddProjectTagParams) (ProjectTag, error)
- func (q *Queries) BatchCreateMediaRelations(ctx context.Context, arg []BatchCreateMediaRelationsParams) (int64, error)
- func (q *Queries) CheckEmailExists(ctx context.Context, email string) (bool, error)
- func (q *Queries) CheckProjectSlugExists(ctx context.Context, arg CheckProjectSlugExistsParams) (bool, error)
- func (q *Queries) CheckTagSlugExists(ctx context.Context, arg CheckTagSlugExistsParams) (bool, error)
- func (q *Queries) ClearFeaturedProjects(ctx context.Context, pageID pgtype.UUID) error
- func (q *Queries) ClearProjectTags(ctx context.Context, projectID pgtype.UUID) error
- func (q *Queries) CommitSession(ctx context.Context, arg CommitSessionParams) error
- func (q *Queries) CountFeaturedProjects(ctx context.Context, pageID pgtype.UUID) (int64, error)
- func (q *Queries) CountMedia(ctx context.Context) (int64, error)
- func (q *Queries) CountMediaByType(ctx context.Context, mimeTypePattern string) (int64, error)
- func (q *Queries) CountProjectGalleryImages(ctx context.Context, projectID pgtype.UUID) (int64, error)
- func (q *Queries) CountProjectTags(ctx context.Context, projectID pgtype.UUID) (int64, error)
- func (q *Queries) CountProjects(ctx context.Context) (int64, error)
- func (q *Queries) CountPublishedProjects(ctx context.Context) (int64, error)
- func (q *Queries) CountTags(ctx context.Context) (int64, error)
- func (q *Queries) CountUsers(ctx context.Context) (int64, error)
- func (q *Queries) CreateMedia(ctx context.Context, arg CreateMediaParams) (Media, error)
- func (q *Queries) CreateMediaRelation(ctx context.Context, arg CreateMediaRelationParams) (MediaRelation, error)
- func (q *Queries) CreateProject(ctx context.Context, arg CreateProjectParams) (Project, error)
- func (q *Queries) CreateSession(ctx context.Context, arg CreateSessionParams) error
- func (q *Queries) CreateTag(ctx context.Context, arg CreateTagParams) (Tag, error)
- func (q *Queries) CreateUser(ctx context.Context, arg CreateUserParams) (User, error)
- func (q *Queries) DeleteAllMediaRelationsForEntity(ctx context.Context, arg DeleteAllMediaRelationsForEntityParams) error
- func (q *Queries) DeleteExpiredSessions(ctx context.Context) error
- func (q *Queries) DeleteGalleryMediaForEntity(ctx context.Context, arg DeleteGalleryMediaForEntityParams) error
- func (q *Queries) DeleteMediaRelation(ctx context.Context, arg DeleteMediaRelationParams) error
- func (q *Queries) DeleteSession(ctx context.Context, token string) error
- func (q *Queries) DeleteTag(ctx context.Context, id pgtype.UUID) error
- func (q *Queries) FindOrCreateTag(ctx context.Context, arg FindOrCreateTagParams) (Tag, error)
- func (q *Queries) GetDeletedMedia(ctx context.Context, arg GetDeletedMediaParams) ([]Media, error)
- func (q *Queries) GetFeaturedMediaForEntity(ctx context.Context, arg GetFeaturedMediaForEntityParams) (Media, error)
- func (q *Queries) GetFeaturedProjects(ctx context.Context, pageID pgtype.UUID) ([]GetFeaturedProjectsRow, error)
- func (q *Queries) GetGalleryMediaForEntity(ctx context.Context, arg GetGalleryMediaForEntityParams) ([]Media, error)
- func (q *Queries) GetMediaByFilename(ctx context.Context, filename string) (Media, error)
- func (q *Queries) GetMediaByID(ctx context.Context, id pgtype.UUID) (Media, error)
- func (q *Queries) GetMediaForEntity(ctx context.Context, arg GetMediaForEntityParams) ([]Media, error)
- func (q *Queries) GetMediaStats(ctx context.Context) (GetMediaStatsRow, error)
- func (q *Queries) GetMediaUsageByEntity(ctx context.Context, limitVal int32) ([]GetMediaUsageByEntityRow, error)
- func (q *Queries) GetMostUsedTags(ctx context.Context, limitVal int32) ([]GetMostUsedTagsRow, error)
- func (q *Queries) GetOrphanedMedia(ctx context.Context) ([]Media, error)
- func (q *Queries) GetPageBySlug(ctx context.Context, slug string) (Page, error)
- func (q *Queries) GetPageByType(ctx context.Context, pageType string) (Page, error)
- func (q *Queries) GetProjectByID(ctx context.Context, id pgtype.UUID) (Project, error)
- func (q *Queries) GetProjectBySlug(ctx context.Context, slug string) (Project, error)
- func (q *Queries) GetProjectFeaturedImage(ctx context.Context, featuredImageID pgtype.UUID) (Media, error)
- func (q *Queries) GetProjectGallery(ctx context.Context, projectID pgtype.UUID) ([]Media, error)
- func (q *Queries) GetProjectIDBySlug(ctx context.Context, slug string) (pgtype.UUID, error)
- func (q *Queries) GetProjectTags(ctx context.Context, projectID pgtype.UUID) ([]Tag, error)
- func (q *Queries) GetProjectsByStatus(ctx context.Context, arg GetProjectsByStatusParams) ([]Project, error)
- func (q *Queries) GetProjectsByTag(ctx context.Context, arg GetProjectsByTagParams) ([]Project, error)
- func (q *Queries) GetProjectsByYear(ctx context.Context, projectYear pgtype.Int4) ([]Project, error)
- func (q *Queries) GetRecentProjects(ctx context.Context, limitVal int32) ([]Project, error)
- func (q *Queries) GetSession(ctx context.Context, token string) ([]byte, error)
- func (q *Queries) GetTagByID(ctx context.Context, id pgtype.UUID) (Tag, error)
- func (q *Queries) GetTagBySlug(ctx context.Context, slug string) (Tag, error)
- func (q *Queries) GetTagIDBySlug(ctx context.Context, slug string) (pgtype.UUID, error)
- func (q *Queries) GetTagUsageCount(ctx context.Context, tagID pgtype.UUID) (int64, error)
- func (q *Queries) GetTagsByIDs(ctx context.Context, tagIds []pgtype.UUID) ([]Tag, error)
- func (q *Queries) GetUnusedTags(ctx context.Context) ([]Tag, error)
- func (q *Queries) GetUserByEmail(ctx context.Context, email string) (User, error)
- func (q *Queries) GetUserByID(ctx context.Context, id pgtype.UUID) (User, error)
- func (q *Queries) HardDeleteMedia(ctx context.Context, id pgtype.UUID) error
- func (q *Queries) HardDeleteProject(ctx context.Context, id pgtype.UUID) error
- func (q *Queries) HardDeleteUser(ctx context.Context, id pgtype.UUID) error
- func (q *Queries) ListAllTags(ctx context.Context) ([]Tag, error)
- func (q *Queries) ListMedia(ctx context.Context, arg ListMediaParams) ([]Media, error)
- func (q *Queries) ListMediaByType(ctx context.Context, arg ListMediaByTypeParams) ([]Media, error)
- func (q *Queries) ListMediaByUploader(ctx context.Context, arg ListMediaByUploaderParams) ([]Media, error)
- func (q *Queries) ListPages(ctx context.Context) ([]Page, error)
- func (q *Queries) ListProjects(ctx context.Context, arg ListProjectsParams) ([]Project, error)
- func (q *Queries) ListPublishedProjects(ctx context.Context, arg ListPublishedProjectsParams) ([]Project, error)
- func (q *Queries) ListTags(ctx context.Context, arg ListTagsParams) ([]Tag, error)
- func (q *Queries) ListUsers(ctx context.Context, arg ListUsersParams) ([]User, error)
- func (q *Queries) PublishProject(ctx context.Context, id pgtype.UUID) (Project, error)
- func (q *Queries) PurgeOldDeletedMedia(ctx context.Context) error
- func (q *Queries) RemoveFeaturedProject(ctx context.Context, arg RemoveFeaturedProjectParams) error
- func (q *Queries) RemoveProjectTag(ctx context.Context, arg RemoveProjectTagParams) error
- func (q *Queries) ReorderGalleryMedia(ctx context.Context, arg ReorderGalleryMediaParams) error
- func (q *Queries) RestoreMedia(ctx context.Context, id pgtype.UUID) error
- func (q *Queries) RestoreProject(ctx context.Context, id pgtype.UUID) error
- func (q *Queries) SearchProjects(ctx context.Context, arg SearchProjectsParams) ([]Project, error)
- func (q *Queries) SearchTags(ctx context.Context, arg SearchTagsParams) ([]Tag, error)
- func (q *Queries) SoftDeleteMedia(ctx context.Context, id pgtype.UUID) error
- func (q *Queries) SoftDeleteProject(ctx context.Context, id pgtype.UUID) error
- func (q *Queries) UnpublishProject(ctx context.Context, id pgtype.UUID) (Project, error)
- func (q *Queries) UpdateMedia(ctx context.Context, arg UpdateMediaParams) (Media, error)
- func (q *Queries) UpdateMediaAltText(ctx context.Context, arg UpdateMediaAltTextParams) (Media, error)
- func (q *Queries) UpdatePage(ctx context.Context, arg UpdatePageParams) (Page, error)
- func (q *Queries) UpdateProject(ctx context.Context, arg UpdateProjectParams) (Project, error)
- func (q *Queries) UpdateSession(ctx context.Context, arg UpdateSessionParams) error
- func (q *Queries) UpdateTag(ctx context.Context, arg UpdateTagParams) (Tag, error)
- func (q *Queries) UpdateUser(ctx context.Context, arg UpdateUserParams) (User, error)
- func (q *Queries) WithTx(tx pgx.Tx) *Queries
- type RemoveFeaturedProjectParams
- type RemoveProjectTagParams
- type ReorderGalleryMediaParams
- type SearchProjectsParams
- type SearchTagsParams
- type Session
- type Tag
- type UpdateMediaAltTextParams
- type UpdateMediaParams
- type UpdatePageParams
- type UpdateProjectParams
- type UpdateSessionParams
- type UpdateTagParams
- type UpdateUserParams
- type User
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type AddGalleryMediaParams ¶
type AddProjectTagParams ¶
type Blog ¶
type Blog struct {
ID pgtype.UUID
Title string
Slug string
Excerpt pgtype.Text
Status pgtype.Text
ReadingTime pgtype.Int4
IsFeatured pgtype.Bool
CategoryID pgtype.UUID
FeaturedImageID pgtype.UUID
AuthorID pgtype.UUID
CreatedAt time.Time
UpdatedAt time.Time
PublishedAt *time.Time
DeletedAt *time.Time
}
type CommitSessionParams ¶
type CreateMediaParams ¶
type CreateMediaParams struct {
ID pgtype.UUID
Filename string
OriginalFilename string
MimeType string
FileSize int64
Width pgtype.Int4
Height pgtype.Int4
Duration pgtype.Int4
StorageType string
S3Bucket pgtype.Text
S3Region pgtype.Text
OriginalKey pgtype.Text
LargeKey pgtype.Text
MediumKey pgtype.Text
ThumbnailKey pgtype.Text
AltText pgtype.Text
UploadedBy pgtype.UUID
}
type CreateProjectParams ¶
type CreateSessionParams ¶
type CreateUserParams ¶
type DBTX ¶
type DBTX interface {
Exec(context.Context, string, ...interface{}) (pgconn.CommandTag, error)
Query(context.Context, string, ...interface{}) (pgx.Rows, error)
QueryRow(context.Context, string, ...interface{}) pgx.Row
CopyFrom(ctx context.Context, tableName pgx.Identifier, columnNames []string, rowSrc pgx.CopyFromSource) (int64, error)
}
type FindOrCreateTagParams ¶
type GetDeletedMediaParams ¶
type GetFeaturedProjectsRow ¶
type GetMediaForEntityParams ¶
type GetMediaStatsRow ¶
type GetMostUsedTagsRow ¶
type GetProjectsByTagParams ¶
type ListMediaByTypeParams ¶
type ListMediaParams ¶
type ListProjectsParams ¶
type ListTagsParams ¶
type ListUsersParams ¶
type Media ¶
type Media struct {
ID pgtype.UUID
// Generated filename format: YYYYMMDD-<uuid>.ext
Filename string
OriginalFilename string
MimeType string
FileSize int64
Width pgtype.Int4
Height pgtype.Int4
// Video duration in seconds (NULL for images)
Duration pgtype.Int4
StorageType string
S3Bucket pgtype.Text
S3Region pgtype.Text
// S3 key pattern: media/original/<year>/<filename>
OriginalKey pgtype.Text
// S3 key for large version (1920px width)
LargeKey pgtype.Text
// S3 key for medium version (1024px width)
MediumKey pgtype.Text
// S3 key for thumbnail (300px width) or video thumbnail from FFmpeg
ThumbnailKey pgtype.Text
AltText pgtype.Text
UploadedBy pgtype.UUID
CreatedAt time.Time
UpdatedAt time.Time
DeletedAt *time.Time
}
Stores all media files (images, videos) with S3 keys for different sizes
type MediaRelation ¶
type MediaRelation struct {
ID pgtype.UUID
MediaID pgtype.UUID
EntityType string
EntityID pgtype.UUID
// Type: gallery (gallery images), featured (hero/featured image), content (inline content)
RelationType string
// Display order for gallery images (0-based index)
SortOrder pgtype.Int4
CreatedAt time.Time
}
Polymorphic relationship between media and entities (projects, blogs, pages)
type Page ¶
type Page struct {
ID pgtype.UUID
Title string
Slug string
PageType string
HeroMediaID pgtype.UUID
Header pgtype.Text
SubHeader pgtype.Text
Content pgtype.Text
ContentImageID pgtype.UUID
CtaText pgtype.Text
CtaLink pgtype.Text
Email pgtype.Text
SocialLinks []byte
CreatedAt time.Time
UpdatedAt time.Time
DeletedAt *time.Time
}
type PageFeaturedProject ¶
type Project ¶
type Project struct {
ID pgtype.UUID
Title string
Slug string
Description pgtype.Text
ProjectDate pgtype.Date
Status pgtype.Text
ClientName pgtype.Text
ProjectYear pgtype.Int4
ProjectUrl pgtype.Text
ProjectStatus pgtype.Text
FeaturedImageID pgtype.UUID
AuthorID pgtype.UUID
CreatedAt time.Time
UpdatedAt time.Time
PublishedAt *time.Time
DeletedAt *time.Time
}
type ProjectTag ¶
type Queries ¶
type Queries struct {
// contains filtered or unexported fields
}
func (*Queries) AddFeaturedProject ¶
func (q *Queries) AddFeaturedProject(ctx context.Context, arg AddFeaturedProjectParams) (PageFeaturedProject, error)
Featured Projects for About Page
func (*Queries) AddGalleryMedia ¶
func (q *Queries) AddGalleryMedia(ctx context.Context, arg AddGalleryMediaParams) error
func (*Queries) AddProjectTag ¶
func (q *Queries) AddProjectTag(ctx context.Context, arg AddProjectTagParams) (ProjectTag, error)
Project Tags Operations
func (*Queries) BatchCreateMediaRelations ¶
func (q *Queries) BatchCreateMediaRelations(ctx context.Context, arg []BatchCreateMediaRelationsParams) (int64, error)
Batch operations
func (*Queries) CheckEmailExists ¶
func (*Queries) CheckProjectSlugExists ¶
func (*Queries) CheckTagSlugExists ¶
func (*Queries) ClearFeaturedProjects ¶
func (*Queries) ClearProjectTags ¶
func (*Queries) CommitSession ¶
func (q *Queries) CommitSession(ctx context.Context, arg CommitSessionParams) error
func (*Queries) CountFeaturedProjects ¶
func (*Queries) CountMediaByType ¶
func (*Queries) CountProjectGalleryImages ¶
func (*Queries) CountProjectTags ¶
func (*Queries) CountPublishedProjects ¶
func (*Queries) CreateMedia ¶
sql/queries/media.sql
func (*Queries) CreateMediaRelation ¶
func (q *Queries) CreateMediaRelation(ctx context.Context, arg CreateMediaRelationParams) (MediaRelation, error)
Media Relations Queries
func (*Queries) CreateProject ¶
Projects CRUD Operations
func (*Queries) CreateSession ¶
func (q *Queries) CreateSession(ctx context.Context, arg CreateSessionParams) error
sql/queries/sessions.sql
func (*Queries) CreateUser ¶
func (*Queries) DeleteAllMediaRelationsForEntity ¶
func (q *Queries) DeleteAllMediaRelationsForEntity(ctx context.Context, arg DeleteAllMediaRelationsForEntityParams) error
func (*Queries) DeleteExpiredSessions ¶
func (*Queries) DeleteGalleryMediaForEntity ¶
func (q *Queries) DeleteGalleryMediaForEntity(ctx context.Context, arg DeleteGalleryMediaForEntityParams) error
func (*Queries) DeleteMediaRelation ¶
func (q *Queries) DeleteMediaRelation(ctx context.Context, arg DeleteMediaRelationParams) error
func (*Queries) DeleteSession ¶
func (*Queries) FindOrCreateTag ¶
func (*Queries) GetDeletedMedia ¶
func (*Queries) GetFeaturedMediaForEntity ¶
func (*Queries) GetFeaturedProjects ¶
func (*Queries) GetGalleryMediaForEntity ¶
func (*Queries) GetMediaByFilename ¶
func (*Queries) GetMediaByID ¶
func (*Queries) GetMediaForEntity ¶
func (*Queries) GetMediaStats ¶
func (q *Queries) GetMediaStats(ctx context.Context) (GetMediaStatsRow, error)
Media Statistics
func (*Queries) GetMediaUsageByEntity ¶
func (*Queries) GetMostUsedTags ¶
func (*Queries) GetOrphanedMedia ¶
func (*Queries) GetPageBySlug ¶
Basic page queries
func (*Queries) GetPageByType ¶
func (*Queries) GetProjectByID ¶
func (*Queries) GetProjectBySlug ¶
func (*Queries) GetProjectFeaturedImage ¶
func (*Queries) GetProjectGallery ¶
Project Gallery Operations (via media_relations)
func (*Queries) GetProjectIDBySlug ¶
func (*Queries) GetProjectTags ¶
func (*Queries) GetProjectsByStatus ¶
func (*Queries) GetProjectsByTag ¶
func (*Queries) GetProjectsByYear ¶
func (*Queries) GetRecentProjects ¶
func (*Queries) GetSession ¶
func (*Queries) GetTagByID ¶
func (*Queries) GetTagBySlug ¶
func (*Queries) GetTagIDBySlug ¶
func (*Queries) GetTagUsageCount ¶
Tag Usage Statistics
func (*Queries) GetTagsByIDs ¶
Batch Operations
func (*Queries) GetUserByEmail ¶
func (*Queries) GetUserByID ¶
func (*Queries) HardDeleteMedia ¶
func (*Queries) HardDeleteProject ¶
func (*Queries) HardDeleteUser ¶
func (*Queries) ListMediaByType ¶
func (*Queries) ListMediaByUploader ¶
func (*Queries) ListProjects ¶
func (*Queries) ListPublishedProjects ¶
func (*Queries) PublishProject ¶
func (*Queries) PurgeOldDeletedMedia ¶
func (*Queries) RemoveFeaturedProject ¶
func (q *Queries) RemoveFeaturedProject(ctx context.Context, arg RemoveFeaturedProjectParams) error
func (*Queries) RemoveProjectTag ¶
func (q *Queries) RemoveProjectTag(ctx context.Context, arg RemoveProjectTagParams) error
func (*Queries) ReorderGalleryMedia ¶
func (q *Queries) ReorderGalleryMedia(ctx context.Context, arg ReorderGalleryMediaParams) error
func (*Queries) RestoreMedia ¶
func (*Queries) RestoreProject ¶
func (*Queries) SearchProjects ¶
Search and Filter Operations
func (*Queries) SearchTags ¶
func (*Queries) SoftDeleteMedia ¶
func (*Queries) SoftDeleteProject ¶
func (*Queries) UnpublishProject ¶
func (*Queries) UpdateMedia ¶
func (*Queries) UpdateMediaAltText ¶
func (*Queries) UpdatePage ¶
func (*Queries) UpdateProject ¶
func (*Queries) UpdateSession ¶
func (q *Queries) UpdateSession(ctx context.Context, arg UpdateSessionParams) error
func (*Queries) UpdateUser ¶
type RemoveProjectTagParams ¶
type SearchProjectsParams ¶
type SearchTagsParams ¶
type UpdatePageParams ¶
type UpdateProjectParams ¶
type UpdateSessionParams ¶
type UpdateTagParams ¶
type UpdateUserParams ¶
Click to show internal directories.
Click to hide internal directories.