Overview ▹
Overview ▾
Package publish exposes the types and functions that can be used from a Go template, for publishing.
Index
Package files
type MemberFileInfo
type MemberFileInfo struct { FileName string FileDomID string FilePath string FileThumbnailURL string }
MemberFileInfo contains the file related data available for each member, if the member is the permanode for a file.
type Nav
type Nav struct { ParentPath string PrevPath string NextPath string }
Nav holds links to the previous, next, and parent elements, when displaying members.
type PageFile
type PageFile struct { FileName string Size int64 MIMEType string IsImage bool DownloadURL string ThumbnailURL string DomID string Nav func() *Nav }
PageFile contains the file related data available to the subject template, if the page describes some file contents.
type PageHeader
type PageHeader struct { Title string // Page title. CSSFiles []string // Available CSS files. JSDeps []string // Dependencies (for e.g closure) that can/should be included as javascript files. CamliClosure template.JS // Closure namespace defined in the provided js. e.g camlistore.GalleryPage from pics.js Subject blob.Ref // Subject of this page (i.e the object which is described and published). ViewerIsOwner bool // Whether the viewer of the page is also the owner of the displayed subject. (localhost check for now.) PublishedRoot blob.Ref // Root permanode for this publisher. On camliRoot, camliPath:somePath = publishedRoot // SubjectBasePath is the URL path up to the digest prefix of the // subject. e.g. "/pics/foo/-/h341b133369" or "/pics/foo/-" if the subject // is the published root itself. SubjectBasePath string // PathPrefix is the publisher app handler prefix on Perkeep, e.g. // "/pics/", or "/" if the request was not proxied through Perkeep. PathPrefix string Host string }
PageHeader contains the data available to the template, and relevant to the page header.
type PageMembers
type PageMembers struct { SubjectPath string // URL prefix path to the subject (i.e the permanode). ZipName string // Name of the downloadable zip file which contains all the members. Members []*search.DescribedBlob // List of the members. Description func(*search.DescribedBlob) string // Returns the description of the given member. Title func(*search.DescribedBlob) string // Returns the title for the given member. Path func(*search.DescribedBlob) string // Returns the url prefix path to the given the member. DomID func(*search.DescribedBlob) string // Returns the Dom ID of the given member. FileInfo func(*search.DescribedBlob) *MemberFileInfo // Returns some file info if the given member is a file permanode. }
PageMembers contains the data relevant to the members if the published subject is a permanode with members.
type SubjectPage
type SubjectPage struct { Header func() *PageHeader File func() *PageFile Members func() *PageMembers }
SubjectPage is the data structure used when serving a publishing template. It contains the functions that can be called from the template.