Documentation ¶
Overview ¶
Fournit un service global de gestion de fichiers.
Index ¶
- Constants
- func Attachment(c echo.Context, filename string, doc []byte, asAttachment bool) error
- func CompressJPEG(content []byte) ([]byte, error)
- func CompressPdf(fileContent []byte) ([]byte, error)
- func ComputeMiniature(filename string, doc io.Reader, miniature io.Writer) error
- func ComputeMiniature2(pdfBytes []byte) (miniature []byte, err error)
- func LoadDocsAndAdd(tx rd.DB, idsDocs rd.Ids, archive *cd.ArchiveZip, prefixes map[int64]string) error
- func ReceiveUpload(fileHeader *multipart.FileHeader, maxSize int64) (filename string, content []byte, err error)
- func ReceiveUploadWithMeta(c echo.Context, maxSize int64, meta interface{}) (filename string, content []byte, err error)
- func SaveDocument(tx *sql.Tx, idDocument int64, fileContent []byte, filename string, ...) (rd.Document, error)
- type ContrainteDocuments
- type Controller
- type MetaDoc
- type ParamsNewDocument
- type PublicContrainte
- type PublicDocument
- func CreeDocumentEquipier(p logs.Encrypteur, db *sql.DB, host string, idEquipier int64, ...) (PublicDocument, error)
- func CreeDocumentPersonne(p logs.Encrypteur, db *sql.DB, host string, idPersonne int64, ...) (PublicDocument, error)
- func PublieDocument(p logs.Encrypteur, host string, doc rd.Document) (PublicDocument, error)
Constants ¶
const ( EndPointDocument = "/document" EndPointMiniature = "/miniature" DocumentAbsolu = "abs" // document présent dans la base de données DocumentRelatif = "rel" // document généré dynamiquement )
const ( ListeVetements categorieDocument = iota ListeParticipants )
const ( MINIATURE_WIDTH = 200 // in pixels MINIATURE_HEIGHT = 300 // in pixels )
Variables ¶
This section is empty.
Functions ¶
func Attachment ¶
func CompressJPEG ¶
func CompressPdf ¶
essaie de convertir en jpg, de compresser le caller doit vérifier si la conversion est intéressante
func ComputeMiniature ¶
ComputeMiniature écrit réduit le document entrant à une image png. Les formats supportés sont .pdf, .png, .jpg, .jpeg Le format .pdf requiert l'utilisation de Ghostscript.
func ComputeMiniature2 ¶
ComputeMiniature2 est un raccourci (voir ComputeMiniature)
func LoadDocsAndAdd ¶
func LoadDocsAndAdd(tx rd.DB, idsDocs rd.Ids, archive *cd.ArchiveZip, prefixes map[int64]string) error
LoadDocsAndAdd charge les documents et les ajoute à l'archive, sans la fermer. `prefixes` peut contenir un label à ajouter au nom du document
func ReceiveUpload ¶
Types ¶
type ContrainteDocuments ¶
type ContrainteDocuments struct { Contrainte PublicContrainte `json:"contrainte"` Docs []PublicDocument `json:"docs"` }
ContrainteDocuments associe une contrainte de document aux documents la remplissant
type Controller ¶
type Controller struct {
shared.Controller
}
func (Controller) HandleDelete ¶
func (ct Controller) HandleDelete(c echo.Context) error
HandleDelete supprime un document déjà référencé La sécurité est assurée par le cryptage des Ids.
func (Controller) HandleUpload ¶
func (ct Controller) HandleUpload(c echo.Context) error
HandleUpload enregistre le contenu d'un document déjà référencé La sécurité est assurée par le cryptage des Ids.
func (Controller) SertDocument ¶
func (ct Controller) SertDocument(c echo.Context) (err error)
SertDocument peut recevoir deux types pour `crypted-id`:
- l'id d'un document déjà généré
- le chemin vers un document d'un camp
func (Controller) SertMiniature ¶
func (ct Controller) SertMiniature(c echo.Context) (err error)
SertMiniature peut recevoir deux types pour `crypted-id`:
- l'id d'un document déjà généré
- le chemin vers un document d'un camp
type MetaDoc ¶
type MetaDoc struct { IdCamp int64 Categorie categorieDocument }
MetaDoc permet de retrouver le document à télécharger/miniaturiser à partir d'un lien crypté
func (MetaDoc) Share ¶
func (m MetaDoc) Share(p logs.Encrypteur, host string) (doc PublicDocument, err error)
Share renvoie créé les liens de partage
type ParamsNewDocument ¶
type PublicContrainte ¶
type PublicContrainte struct { IdCrypted string `json:"id_crypted"` Document PublicDocument `json:"document"` // optionnel Nom rd.String `json:"nom"` Description rd.String `json:"description"` MaxDocs int `json:"max_docs"` JoursValide int `json:"jours_valide"` }
PublicContrainte expose de façon sécurisée une contrainte sur le frontend
func PublieContrainte ¶
func PublieContrainte(p logs.Encrypteur, db rd.DB, host string, contrainte rd.Contrainte) (out PublicContrainte, err error)
PublieContrainte charge un éventuel document à remplir, et le publie, et crypte les ids.
type PublicDocument ¶
type PublicDocument struct { IdCrypted string `json:"id_crypted,omitempty"` NomClient rd.String `json:"nom_client,omitempty"` Taille rd.Taille `json:"taille,omitempty"` DateHeureModif rd.Time `json:"date_heure_modif,omitempty"` UrlMiniature string `json:"url_miniature,omitempty"` UrlDownload string `json:"url_download,omitempty"` }
func CreeDocumentEquipier ¶
func CreeDocumentEquipier(p logs.Encrypteur, db *sql.DB, host string, idEquipier int64, params ParamsNewDocument) (PublicDocument, error)
CreeDocumentEquipier les metas donnés d'un document répondant à la contrainte donnée pour l'équipier donné, et upload le contenu
func CreeDocumentPersonne ¶
func CreeDocumentPersonne(p logs.Encrypteur, db *sql.DB, host string, idPersonne int64, params ParamsNewDocument) (PublicDocument, error)
CreeDocumentPersonne les metas donnés d'un document répondant à la contrainte donnée pour la personne donnée, et upload le contenu
func PublieDocument ¶
func PublieDocument(p logs.Encrypteur, host string, doc rd.Document) (PublicDocument, error)