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) fmt.Printf("Verify the password for %s: ", packageName)
ReadPassword(&pswV) ReadPassword(&pswV)
if psw != pswV { if psw != pswV {
fmt.Printf("Passwords do not match\n") fmt.Printf("Passwords do not match\n\r")
return return
} }
fmt.Printf("Enter the repo for %s: ", packageName) fmt.Printf("Enter the repo for %s: ", packageName)
fmt.Scanln(&repo) fmt.Scanln(&repo)
fmt.Printf("Enter the latest version for %s: ", packageName) fmt.Printf("Enter the latest version for %s: ", packageName)
fmt.Scanln(&version) fmt.Scanln(&version)
fmt.Println()
jsonBody := []byte(fmt.Sprintf(`{"name": "%v", "psw": "%v", "repo": "%v", "latest": "%v"}`, packageName, psw, repo, version)) 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 { if err != nil {
fmt.Println(err) 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 newPsw string
var newPackageName string = packageName var newPackageName string = packageName
fmt.Printf("Enter the password for %s: ", packageName) fmt.Printf("\rEnter the password for %s: ", packageName)
ReadPassword(&psw) ReadPassword(&psw)
newPsw = psw newPsw = psw
for true { for true {
clear() clear()
fmt.Println("Choose what you want to modify") fmt.Printf("Choose what you want to modify\n\r")
fmt.Printf(" 1 -> package name: %s\n", newPackageName) fmt.Printf(" 1 -> package name : %s\n\r", newPackageName)
fmt.Printf(" 2 -> password: %s\n", newPsw) fmt.Printf(" 2 -> password : %s\n\r", newPsw)
fmt.Printf(" 3 -> repo: %s\n", repo) fmt.Printf(" 3 -> repo : %s\n\r", repo)
fmt.Printf(" 4 -> latest version: %s\n", version) fmt.Printf(" 4 -> latest version: %s\n\r", version)
fmt.Println("Type in 'quit'/'q'/'exit' to discard your changes") fmt.Printf("Type in 'quit'/'q'/'exit' to discard your changes\n\r")
fmt.Println("Type in anything else to confirm your changes") fmt.Printf("Type in anything else to confirm your changes\n\r")
var option string var option string
fmt.Print("\n> ") fmt.Print("\n> ")
fmt.Scanln(&option) fmt.Scanln(&option)
@@ -104,8 +113,15 @@ func editPackage(packageName string) {
req, err := sendRequest(http.MethodPut, URL, jsonBody) req, err := sendRequest(http.MethodPut, URL, jsonBody)
if err != nil { if err != nil {
fmt.Printf("Error while editing %s: %v", packageName, err) 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 return
} }
@@ -117,5 +133,16 @@ func deletePackage(packageName string) {
var psw string var psw string
ReadPassword(&psw) ReadPassword(&psw)
jsonBody := []byte(fmt.Sprintf(`{"name": "%s", "psw": "%v"}`, packageName, 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"` Message string `json:"message"`
} }
type Message struct {
Message string `json:"message"`
}
func sendRequest(method, url string, jsonBody []byte) (Request, error) { func sendRequest(method, url string, jsonBody []byte) (Request, error) {
bodyReader := bytes.NewReader(jsonBody) bodyReader := bytes.NewReader(jsonBody)
req, err := http.NewRequest(method, url, bodyReader) req, err := http.NewRequest(method, url, bodyReader)
@@ -62,3 +66,15 @@ func getPackage(packageName string) (PackageIndex, error) {
} }
return pkgidx, nil 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") fmt.Print("\033[1D \033[1D")
*buff = string(*buff)[:len(*buff)-1] *buff = string(*buff)[:len(*buff)-1]
} }
} else if b[0] == 3 {
os.Exit(0)
} else { } else {
*buff += chr *buff += chr
if safeChar == "off" { if safeChar == "off" {