35 lines
		
	
	
		
			753 B
		
	
	
	
		
			Go
		
	
	
	
		
		
			
		
	
	
			35 lines
		
	
	
		
			753 B
		
	
	
	
		
			Go
		
	
	
	
|  | package cmd | ||
|  | 
 | ||
|  | import ( | ||
|  | 	"github.com/spf13/cobra" | ||
|  | ) | ||
|  | 
 | ||
|  | func init() { | ||
|  | 	cmdsCmd.AddCommand(cmdsLsCmd) | ||
|  | 	cmdsLsCmd.Flags().StringP("event", "e", "", "event name, without 'before' or 'after'") | ||
|  | } | ||
|  | 
 | ||
|  | var cmdsLsCmd = &cobra.Command{ | ||
|  | 	Use:   "ls", | ||
|  | 	Short: "List all commands for each event", | ||
|  | 	Long:  `List all commands for each event.`, | ||
|  | 	Args:  cobra.NoArgs, | ||
|  | 	Run: func(cmd *cobra.Command, args []string) { | ||
|  | 		db := getDB() | ||
|  | 		defer db.Close() | ||
|  | 		st := getStorage(db) | ||
|  | 		s, err := st.Settings.Get() | ||
|  | 		checkErr(err) | ||
|  | 		evt := mustGetString(cmd, "event") | ||
|  | 
 | ||
|  | 		if evt == "" { | ||
|  | 			printEvents(s.Commands) | ||
|  | 		} else { | ||
|  | 			show := map[string][]string{} | ||
|  | 			show["before_"+evt] = s.Commands["before_"+evt] | ||
|  | 			show["after_"+evt] = s.Commands["after_"+evt] | ||
|  | 			printEvents(show) | ||
|  | 		} | ||
|  | 	}, | ||
|  | } |