Implementation func deleted account
This commit is contained in:
@@ -36,12 +36,7 @@ func NewVault() *Vault {
|
|||||||
|
|
||||||
func (vault *Vault) AddAccount(acc Account) {
|
func (vault *Vault) AddAccount(acc Account) {
|
||||||
vault.Accounts = append(vault.Accounts, acc)
|
vault.Accounts = append(vault.Accounts, acc)
|
||||||
vault.UpdatedAt = time.Now()
|
vault.save()
|
||||||
data, err := vault.ToBytes()
|
|
||||||
if err != nil {
|
|
||||||
color.Red("Не удалось преобразовать")
|
|
||||||
}
|
|
||||||
files.FileWrite(data, "data.json")
|
|
||||||
}
|
}
|
||||||
|
|
||||||
func (vault *Vault) ToBytes() ([]byte, error) {
|
func (vault *Vault) ToBytes() ([]byte, error) {
|
||||||
@@ -62,3 +57,28 @@ func (vault *Vault) FindAccountsByUrl(url string) []Account {
|
|||||||
}
|
}
|
||||||
return accounts
|
return accounts
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (vault *Vault) DeleteAccountByUrl(url string) bool {
|
||||||
|
var accounts []Account
|
||||||
|
isDeleted := false
|
||||||
|
for _, account := range vault.Accounts {
|
||||||
|
isMatched := strings.Contains(account.Url, url)
|
||||||
|
if !isMatched {
|
||||||
|
accounts = append(accounts, account)
|
||||||
|
continue
|
||||||
|
}
|
||||||
|
isDeleted = true
|
||||||
|
}
|
||||||
|
vault.Accounts = accounts
|
||||||
|
vault.save()
|
||||||
|
return isDeleted
|
||||||
|
}
|
||||||
|
|
||||||
|
func (vault *Vault) save() {
|
||||||
|
vault.UpdatedAt = time.Now()
|
||||||
|
data, err := vault.ToBytes()
|
||||||
|
if err != nil {
|
||||||
|
color.Red("Не удалось преобразовать")
|
||||||
|
}
|
||||||
|
files.FileWrite(data, "data.json")
|
||||||
|
}
|
||||||
|
|||||||
@@ -19,7 +19,7 @@ Menu:
|
|||||||
case 2:
|
case 2:
|
||||||
findAccount(vault)
|
findAccount(vault)
|
||||||
case 3:
|
case 3:
|
||||||
deleteAccount()
|
deleteAccount(vault)
|
||||||
default:
|
default:
|
||||||
break Menu
|
break Menu
|
||||||
}
|
}
|
||||||
@@ -48,8 +48,14 @@ func findAccount(vault *account.Vault) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
func deleteAccount() {
|
func deleteAccount(vault *account.Vault) {
|
||||||
|
url := account.PromptData("Введите URL для поиска: ")
|
||||||
|
isDeleted := vault.DeleteAccountByUrl(url)
|
||||||
|
if isDeleted {
|
||||||
|
color.Green("Удалено")
|
||||||
|
} else {
|
||||||
|
color.Red("Не найдено")
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
func createAccount(vault *account.Vault) {
|
func createAccount(vault *account.Vault) {
|
||||||
|
|||||||
Reference in New Issue
Block a user