small changes

This commit is contained in:
2024-05-22 21:47:52 +02:00
parent 7851d90185
commit 3990c620a1
3 changed files with 57 additions and 12 deletions
+39 -12
View File
@@ -38,17 +38,26 @@ func createPackage(packageName string) {
fmt.Printf("Verify the password for %s: ", packageName)
ReadPassword(&pswV)
if psw != pswV {
fmt.Printf("Passwords do not match\n")
fmt.Printf("Passwords do not match\n\r")
return
}
fmt.Printf("Enter the repo for %s: ", packageName)
fmt.Scanln(&repo)
fmt.Printf("Enter the latest version for %s: ", packageName)
fmt.Scanln(&version)
fmt.Println()
jsonBody := []byte(fmt.Sprintf(`{"name": "%v", "psw": "%v", "repo": "%v", "latest": "%v"}`, packageName, psw, repo, version))
_, err := sendRequest(http.MethodPost, URL, jsonBody)
req, err := sendRequest(http.MethodPost, URL, jsonBody)
if err != nil {
fmt.Println(err)
return
}
err = getMessage(req)
if err != nil {
fmt.Printf("Error: %v\n\r", err)
return
} else {
fmt.Printf("Done\n\r")
}
}
@@ -64,19 +73,19 @@ func editPackage(packageName string) {
var newPsw string
var newPackageName string = packageName
fmt.Printf("Enter the password for %s: ", packageName)
fmt.Printf("\rEnter the password for %s: ", packageName)
ReadPassword(&psw)
newPsw = psw
for true {
clear()
fmt.Println("Choose what you want to modify")
fmt.Printf(" 1 -> package name: %s\n", newPackageName)
fmt.Printf(" 2 -> password: %s\n", newPsw)
fmt.Printf(" 3 -> repo: %s\n", repo)
fmt.Printf(" 4 -> latest version: %s\n", version)
fmt.Println("Type in 'quit'/'q'/'exit' to discard your changes")
fmt.Println("Type in anything else to confirm your changes")
fmt.Printf("Choose what you want to modify\n\r")
fmt.Printf(" 1 -> package name : %s\n\r", newPackageName)
fmt.Printf(" 2 -> password : %s\n\r", newPsw)
fmt.Printf(" 3 -> repo : %s\n\r", repo)
fmt.Printf(" 4 -> latest version: %s\n\r", version)
fmt.Printf("Type in 'quit'/'q'/'exit' to discard your changes\n\r")
fmt.Printf("Type in anything else to confirm your changes\n\r")
var option string
fmt.Print("\n> ")
fmt.Scanln(&option)
@@ -104,8 +113,15 @@ func editPackage(packageName string) {
req, err := sendRequest(http.MethodPut, URL, jsonBody)
if err != nil {
fmt.Printf("Error while editing %s: %v", packageName, err)
return
}
err = getMessage(req)
if err != nil {
fmt.Printf("Error: %v\n\r", err)
return
} else {
fmt.Printf("Done\n\r")
}
fmt.Printf(string(req.Body))
return
}
@@ -117,5 +133,16 @@ func deletePackage(packageName string) {
var psw string
ReadPassword(&psw)
jsonBody := []byte(fmt.Sprintf(`{"name": "%s", "psw": "%v"}`, packageName, psw))
sendRequest(http.MethodDelete, URL, jsonBody)
req, err := sendRequest(http.MethodDelete, URL, jsonBody)
if err != nil {
fmt.Println(err)
return
}
err = getMessage(req)
if err != nil {
fmt.Printf("Error: %v\n\r", err)
return
} else {
fmt.Printf("Done\n\r")
}
}
+16
View File
@@ -26,6 +26,10 @@ type PackageIndex struct {
Message string `json:"message"`
}
type Message struct {
Message string `json:"message"`
}
func sendRequest(method, url string, jsonBody []byte) (Request, error) {
bodyReader := bytes.NewReader(jsonBody)
req, err := http.NewRequest(method, url, bodyReader)
@@ -62,3 +66,15 @@ func getPackage(packageName string) (PackageIndex, error) {
}
return pkgidx, nil
}
func getMessage(req Request) error {
var msg Message
err := json.Unmarshal(req.Body, &msg)
if err != nil {
return fmt.Errorf("JsonError: %v", err)
}
if msg.Message != "ok" {
return fmt.Errorf(msg.Message)
}
return nil
}
+2
View File
@@ -66,6 +66,8 @@ func ReadPassword(buff *string) error {
fmt.Print("\033[1D \033[1D")
*buff = string(*buff)[:len(*buff)-1]
}
} else if b[0] == 3 {
os.Exit(0)
} else {
*buff += chr
if safeChar == "off" {