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.
