forked from tildetown/town
		
	more 2025 updates
This commit is contained in:
		
							parent
							
								
									556a0e6201
								
							
						
					
					
						commit
						8a40bcc74d
					
				| @ -290,6 +290,59 @@ func submit(o opts) error { | |||||||
| 	return nil | 	return nil | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
|  | type voteData struct { | ||||||
|  | 	Username string | ||||||
|  | 	Days     []string | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | func vote(o opts) error { | ||||||
|  | 	voteContent, err := md.ReadFile("md/vote.md") | ||||||
|  | 	if err != nil { | ||||||
|  | 		return err | ||||||
|  | 	} | ||||||
|  | 	out, err := glamour.Render(string(voteContent), "auto") | ||||||
|  | 	if err != nil { | ||||||
|  | 		return err | ||||||
|  | 	} | ||||||
|  | 	fmt.Println(out) | ||||||
|  | 
 | ||||||
|  | 	var selections []string | ||||||
|  | 
 | ||||||
|  | 	form := huh.NewForm( | ||||||
|  | 		huh.NewGroup( | ||||||
|  | 			huh.NewMultiSelect[string]().Title("which days work for you?"). | ||||||
|  | 				Options( | ||||||
|  | 					huh.NewOption("18th", "18th"), | ||||||
|  | 					huh.NewOption("25th", "25th"), | ||||||
|  | 				).Value(&selections))).WithTheme(huh.ThemeBase()) | ||||||
|  | 
 | ||||||
|  | 	if err := form.Run(); err != nil { | ||||||
|  | 		return err | ||||||
|  | 	} | ||||||
|  | 
 | ||||||
|  | 	vd := voteData{ | ||||||
|  | 		Username: o.Username, | ||||||
|  | 		Days:     selections, | ||||||
|  | 	} | ||||||
|  | 
 | ||||||
|  | 	if err = sendVoteEmail(vd); err != nil { | ||||||
|  | 		return err | ||||||
|  | 	} | ||||||
|  | 
 | ||||||
|  | 	fmt.Println("THANK YOU~!!") | ||||||
|  | 
 | ||||||
|  | 	return nil | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | func sendVoteEmail(vd voteData) error { | ||||||
|  | 	bs, err := yaml.Marshal(vd) | ||||||
|  | 	if err != nil { | ||||||
|  | 		return err | ||||||
|  | 	} | ||||||
|  | 
 | ||||||
|  | 	return email.SendLocalEmail("vilmibm", "TOWNCON25 DAY VOTE", string(bs)) | ||||||
|  | } | ||||||
|  | 
 | ||||||
| type jamData struct { | type jamData struct { | ||||||
| 	Username string | 	Username string | ||||||
| 	Desc     string | 	Desc     string | ||||||
| @ -392,9 +445,10 @@ func _main() error { | |||||||
| 		huh.NewGroup( | 		huh.NewGroup( | ||||||
| 			huh.NewSelect[string]().Title("whadduyu wanna doo?"). | 			huh.NewSelect[string]().Title("whadduyu wanna doo?"). | ||||||
| 				Options( | 				Options( | ||||||
|  | 					huh.NewOption("VOTE ON DAY", "vote"), | ||||||
| 					huh.NewOption("Get an info dump", "info"), | 					huh.NewOption("Get an info dump", "info"), | ||||||
| 					huh.NewOption("SEE SCHEDULE", "schedule"), | 					//huh.NewOption("SEE SCHEDULE", "schedule"), | ||||||
| 					huh.NewOption("RSVP", "rsvp"), | 					//huh.NewOption("RSVP", "rsvp"), | ||||||
| 					huh.NewOption("Submit or propose a work (talk, art, etc)", "submit"), | 					huh.NewOption("Submit or propose a work (talk, art, etc)", "submit"), | ||||||
| 					huh.NewOption("Propose a creative jam", "jam"), | 					huh.NewOption("Propose a creative jam", "jam"), | ||||||
| 					huh.NewOption("Quit", "quit"), | 					huh.NewOption("Quit", "quit"), | ||||||
| @ -416,6 +470,8 @@ func _main() error { | |||||||
| 		return submit(o) | 		return submit(o) | ||||||
| 	case "jam": | 	case "jam": | ||||||
| 		return jam(o) | 		return jam(o) | ||||||
|  | 	case "vote": | ||||||
|  | 		return vote(o) | ||||||
| 	case "quit": | 	case "quit": | ||||||
| 	default: | 	default: | ||||||
| 		return fmt.Errorf("wtf '%s'", mode) | 		return fmt.Errorf("wtf '%s'", mode) | ||||||
|  | |||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user