Noah Petherbridge
a663462e27
Adds initial code for basically functional forums: * Forums landing page shows hard-coded list of Categories along with any forums in the DB that use those categories. * Admin: Create, Edit forums and view forums you own or have admin rights to modify. * Landing page forums list shows the title/description and dynamic count of number of Topics and total number of Posts in each forum. TODO: distinct count of Users who posted in each forum. * Board Index page shows list of Threads (posts) with a Replies count and Views count on each thread. * Thread view is basically an array of Comments. Users can post, edit and delete (their own) comments. Deleting the first comment removes the entire Thread - the thread points to a first Comment to provide its body. * Reply and Quote-Reply options working.
110 lines
2.0 KiB
Go
110 lines
2.0 KiB
Go
package config
|
|
|
|
// Various hard-coded enums such as choice of gender, sexuality, relationship status etc.
|
|
var (
|
|
MaritalStatus = []string{
|
|
"Single",
|
|
"Married",
|
|
"In a relationship",
|
|
"It's complicated",
|
|
"Divorced",
|
|
"Widowed",
|
|
"Widower",
|
|
}
|
|
|
|
RelationshipType = []string{
|
|
"Monogamous",
|
|
"Open",
|
|
}
|
|
|
|
Gender = []string{
|
|
"Man",
|
|
"Woman",
|
|
"Non-binary",
|
|
"Trans",
|
|
"Trans (FTM)",
|
|
"Trans (MTF)",
|
|
"Other",
|
|
}
|
|
|
|
Orientation = []string{
|
|
"Straight",
|
|
"Gay",
|
|
"Bisexual",
|
|
"Bicurious",
|
|
}
|
|
|
|
HereFor = []string{
|
|
"Dating",
|
|
"Relationship",
|
|
"Platonic friends",
|
|
"Networking",
|
|
"Casual acquaintances",
|
|
}
|
|
|
|
// Enums all wrapped up for template use.
|
|
ProfileEnums = map[string][]string{
|
|
"MaritalStatus": MaritalStatus,
|
|
"RelationshipType": RelationshipType,
|
|
"Gender": Gender,
|
|
"Orientation": Orientation,
|
|
"HereFor": HereFor,
|
|
}
|
|
|
|
// Input field names for profile fields.
|
|
ProfileFields = []string{
|
|
"gender",
|
|
"pronouns",
|
|
"city",
|
|
"job",
|
|
"orientation",
|
|
"marital_status",
|
|
"relationship_type",
|
|
"about_me",
|
|
"interests",
|
|
"music_movies",
|
|
}
|
|
|
|
// Choices for the Contact Us subject
|
|
ContactUsChoices = []ContactUs{
|
|
{
|
|
Header: "Website Feedback",
|
|
Options: []Option{
|
|
{"feedback", "Website feedback"},
|
|
{"feature", "Make a feature request"},
|
|
{"bug", "Report a bug or broken feature"},
|
|
{"other", "General/miscellaneous/other"},
|
|
},
|
|
},
|
|
{
|
|
Header: "Report a Problem",
|
|
Options: []Option{
|
|
{"report.user", "Report a problematic user"},
|
|
{"report.photo", "Report a problematic photo"},
|
|
{"report.message", "Report a direct message conversation"},
|
|
{"report.comment", "Report a forum post or comment"},
|
|
},
|
|
},
|
|
}
|
|
|
|
// Default forum categories for forum landing page.
|
|
ForumCategories = []string{
|
|
"Rules and Announcements",
|
|
"Nudists",
|
|
"Exhibitionists",
|
|
"Anything Goes",
|
|
}
|
|
)
|
|
|
|
// ContactUs choices for the subject drop-down.
|
|
type ContactUs struct {
|
|
Header string
|
|
Options []Option
|
|
}
|
|
|
|
// Option for select boxes.
|
|
type Option struct {
|
|
Value string
|
|
Label string
|
|
}
|