arnaucube
arnaucube/argosPublic Self-hosted repository
argos/optionDeleteTweets.go
optionDeleteTweets.goRaw
 1package main
 2
 3import (
 4	"bufio"
 5	"fmt"
 6	"os"
 7	"strconv"
 8	"strings"
 9
10	"github.com/dghubble/go-twitter/twitter"
11)
12
13func deleteTweets(client *twitter.Client, user *twitter.User) {
14	tweets := getTweets(client, user.ScreenName, iterationsCount)
15	count := 0
16	for _, v := range tweets {
17		c.Red("deleting: [id: " + v.IDStr + "] " + v.Text)
18		deleted, _, _ := client.Statuses.Destroy(v.ID, nil)
19		c.Green("DELETED: [id: " + deleted.IDStr + "] " + deleted.Text)
20		count++
21	}
22	c.Red("Deleted " + strconv.Itoa(count) + " tweets")
23}
24func optionDeleteTweets(client *twitter.Client) {
25	fmt.Println("Getting user data...")
26	user := getUserData(client)
27	printUserData(user)
28	fmt.Println("")
29	c.Red("Are you sure you want to delete your tweets? [y/n]")
30	newcommand := bufio.NewReader(os.Stdin)
31	answer, _ := newcommand.ReadString('\n')
32	answer = strings.TrimSpace(answer)
33	switch answer {
34	case "y":
35		fmt.Println("ok, you are sure")
36		deleteTweets(client, user)
37		user = getUserData(client)
38		printUserData(user)
39		break
40	default:
41		fmt.Println("Operation cancelled")
42		break
43	}
44}