package event import ( zenaov1 "gno.land/p/zenao/zenao/v1" "gno.land/p/zenao/events" "gno.land/p/zenao/basedao" "gno.land/p/zenao/daokit" "gno.land/p/zenao/daocond" "gno.land/r/demo/profile" "gno.land/r/zenao/eventreg" "gno.land/r/zenao/social_feed" ) var ( DAO daokit.DAO localDAO daokit.DAO event *events.Event // XXX: needed for backward compatibility with frontend queries feedId string // XXX: workaround for "unexpected zero object id" issue ) func init() { // XXX: workaround for "unexpected zero object id" issue feedId = social_feed.NewFeed(cross, "main", false, feedAuth) } func init() { conf := events.Config{ Organizers: []string{"gno.land/r/zenao/users/u376"}, Gatekeepers: []string{}, Title: "Projection du documentaire Perchés", Description: "Perchés est une immersion dans le quotidien de jeunes adultes, affectés par un trouble de la santé mentale. Ensemble, ils ont décidé de créer La Maison Perchée, une association d'entraide animée par et pour des jeunes qui leur ressemblent. Un lieu unique en France où \"réapprendre à vivre, et non plus survivre\".\n\nAujourd'hui La Maison Perchée prend son envol et prend racine en Finistère !\n\nLe documentaire dure 52 minutes, à la suite desquelles le public pourra échanger avec Mathieu, Médiateur de Santé-Pair au CHU de Brest et Pair-aidant volontaire en santé mentale à La Maison Perchée", ImageURI: "ipfs://bafybeibj7vindeiaafue7lwygizhbkyzp6wqvje6xn74exytzq3rehz7dy", StartDate: 1761321600, EndDate: 1761328800, Capacity: 42, Discoverable: true, GetProfileString: profile.GetStringField, SetProfileString: profile.SetStringField, ZenaoAdminAddr: "g1djrkw9tf4px658j85cc6fhsvm50uf9s0g6kfsm", Location: &zenaov1.EventLocation{ Address: &zenaov1.AddressCustom{ Address: "Flux, 3 rue de Cosquer Quimper 29000", Timezone: "Europe/Paris", }, }, ParticipationPubkey: "", CrossFn: crossFn, SetImplemFn: setImplem, FeedId: feedId, PrivateVarName: "event", } event = events.NewEvent(&conf) eventreg.Register(cross, func() *zenaov1.EventInfo { return event.Info() }) } func Vote(_ realm, proposalID uint64, vote daocond.Vote) { localDAO.Vote(proposalID, vote) } func Execute(_ realm, proposalID uint64) { localDAO.Execute(proposalID) } func Render(path string) string { return localDAO.Render(path) } func feedAuth() (string, bool) { caller := event.DAOPrivate.CallerID() // XXX: this should be upgradable return caller, basedao.MustGetMembersViewExtension(localDAO).IsMember(caller) } func crossFn(_ realm, cb func()) { cb() } func setImplem(newLocalDAO daokit.DAO, newDAO daokit.DAO) { localDAO, DAO = newLocalDAO, newDAO }