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/u16"}, Gatekeepers: []string{"gno.land/r/zenao/users/u26"}, Title: "#DANCERS CLUB 🪩", Description: "🥷 Samouraï Coop présente Dancers Club, un nouveau rendez-vous parisien pour toutes les personnes amatrices de danse. Une soirée ouverte à toutes et tous, où musique et partage se rencontrent dans un cadre intimiste au TDTF, en plein cœur de Paris.\n\n📆 Au programme :\n\n19h – 21h : Rencontre autour de la danse – échanges et discussions\n21h – 02h : Dancefloor libre avec DJ, mixant Disco, HipHop, House et Afro, pour faire danser chacun·e, de la personne danseuse confirmée au·à la simple curieux·se\nDancers Club est avant tout un moment de partage et de convivialité, parfait pour rencontrer la communauté et danser toute la soirée dans un lieu sûr et chaleureux.\n\n📍 Lieux : TDTF - 43, Rue Cavendish, 75019 Paris - M5 Laumière \n🎟️ Tarif : Gratuit – réservation sur Zenao : https://zenao.io/event/62\n\n⛩️ Samouraï Coop \nSite officiel : https://www.samourai.world/ \nInstagram : https://www.instagram.com/samourai.tv \nFacebook : https://www.facebook.com/samouraicoop \nYouTube: https://www.youtube.com/channel/UC0gExSSzyU8gTqUjoYerI8A \nBoutique : https://samourai.fun/", ImageURI: "ipfs://bafybeibewqds5q2q4by4uao6vre3fcxkircu7okcso7duksdplrlgozcfy", StartDate: 1763748000, EndDate: 1763773200, Capacity: 100, Discoverable: true, GetProfileString: profile.GetStringField, SetProfileString: profile.SetStringField, ZenaoAdminAddr: "g1djrkw9tf4px658j85cc6fhsvm50uf9s0g6kfsm", Location: &zenaov1.EventLocation{ Address: &zenaov1.AddressCustom{ Address: "43 Rue Cavendish, 75019 Paris, France", 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 }