From 793a7d6cda09706d26f79ce7aff5912fcc0a6ee8 Mon Sep 17 00:00:00 2001 From: DacongDA Date: Sat, 22 Jun 2024 14:05:53 +0800 Subject: [PATCH] feat: add free charge price mode for product buy page (#3015) * feat: add free charge price mode for product buy page * fix: improve code format --- controllers/product.go | 13 ++++++++- object/payment.go | 9 +++++- object/product.go | 21 ++++++++++++-- object/user.go | 12 +++++++- object/user_util.go | 5 ++++ web/src/PaymentResultPage.js | 48 +++++++++++++++++++++++++++++++ web/src/ProductBuyPage.js | 47 ++++++++++++++++-------------- web/src/ProductEditPage.js | 21 +++++++++++--- web/src/ProductListPage.js | 1 + web/src/Setting.js | 10 +++++++ web/src/UserEditPage.js | 13 +++++++++ web/src/backend/ProductBackend.js | 4 +-- web/src/locales/ar/data.json | 7 +++++ web/src/locales/de/data.json | 7 +++++ web/src/locales/en/data.json | 7 +++++ web/src/locales/es/data.json | 7 +++++ web/src/locales/fa/data.json | 7 +++++ web/src/locales/fi/data.json | 7 +++++ web/src/locales/fr/data.json | 7 +++++ web/src/locales/he/data.json | 7 +++++ web/src/locales/id/data.json | 7 +++++ web/src/locales/it/data.json | 7 +++++ web/src/locales/ja/data.json | 7 +++++ web/src/locales/kk/data.json | 7 +++++ web/src/locales/ko/data.json | 7 +++++ web/src/locales/ms/data.json | 7 +++++ web/src/locales/nl/data.json | 7 +++++ web/src/locales/pl/data.json | 7 +++++ web/src/locales/pt/data.json | 7 +++++ web/src/locales/ru/data.json | 7 +++++ web/src/locales/sv/data.json | 7 +++++ web/src/locales/tr/data.json | 7 +++++ web/src/locales/uk/data.json | 7 +++++ web/src/locales/vi/data.json | 7 +++++ web/src/locales/zh/data.json | 7 +++++ web/src/table/AccountTable.js | 1 + 36 files changed, 332 insertions(+), 34 deletions(-) diff --git a/controllers/product.go b/controllers/product.go index 55fb9cd0..d034e294 100644 --- a/controllers/product.go +++ b/controllers/product.go @@ -17,6 +17,7 @@ package controllers import ( "encoding/json" "fmt" + "strconv" "github.com/beego/beego/utils/pagination" "github.com/casdoor/casdoor/object" @@ -164,6 +165,16 @@ func (c *ApiController) BuyProduct() { host := c.Ctx.Request.Host providerName := c.Input().Get("providerName") paymentEnv := c.Input().Get("paymentEnv") + customPriceStr := c.Input().Get("customPrice") + if customPriceStr == "" { + customPriceStr = "0" + } + + customPrice, err := strconv.ParseFloat(customPriceStr, 64) + if err != nil { + c.ResponseError(err.Error()) + return + } // buy `pricingName/planName` for `paidUserName` pricingName := c.Input().Get("pricingName") @@ -189,7 +200,7 @@ func (c *ApiController) BuyProduct() { return } - payment, attachInfo, err := object.BuyProduct(id, user, providerName, pricingName, planName, host, paymentEnv) + payment, attachInfo, err := object.BuyProduct(id, user, providerName, pricingName, planName, host, paymentEnv, customPrice) if err != nil { c.ResponseError(err.Error()) return diff --git a/object/payment.go b/object/payment.go index 282776e6..4282e9be 100644 --- a/object/payment.go +++ b/object/payment.go @@ -39,6 +39,8 @@ type Payment struct { Currency string `xorm:"varchar(100)" json:"currency"` Price float64 `json:"price"` ReturnUrl string `xorm:"varchar(1000)" json:"returnUrl"` + IsRecharge bool `xorm:"bool" json:"isRecharge"` + // Payer Info User string `xorm:"varchar(100)" json:"user"` PersonName string `xorm:"varchar(100)" json:"personName"` @@ -193,11 +195,16 @@ func notifyPayment(body []byte, owner string, paymentName string) (*Payment, *pp return payment, nil, err } - if notifyResult.Price != product.Price { + if notifyResult.Price != product.Price && !product.IsRecharge { err = fmt.Errorf("the payment's price: %f doesn't equal to the expected price: %f", notifyResult.Price, product.Price) return payment, nil, err } + if payment.IsRecharge { + err = updateUserBalance(payment.Owner, payment.User, payment.Price) + return payment, notifyResult, err + } + return payment, notifyResult, nil } diff --git a/object/product.go b/object/product.go index d26af73b..15feef09 100644 --- a/object/product.go +++ b/object/product.go @@ -39,6 +39,7 @@ type Product struct { Price float64 `json:"price"` Quantity int `json:"quantity"` Sold int `json:"sold"` + IsRecharge bool `json:"isRecharge"` Providers []string `xorm:"varchar(255)" json:"providers"` ReturnUrl string `xorm:"varchar(1000)" json:"returnUrl"` @@ -160,7 +161,7 @@ func (product *Product) getProvider(providerName string) (*Provider, error) { return provider, nil } -func BuyProduct(id string, user *User, providerName, pricingName, planName, host, paymentEnv string) (payment *Payment, attachInfo map[string]interface{}, err error) { +func BuyProduct(id string, user *User, providerName, pricingName, planName, host, paymentEnv string, customPrice float64) (payment *Payment, attachInfo map[string]interface{}, err error) { product, err := GetProduct(id) if err != nil { return nil, nil, err @@ -169,6 +170,14 @@ func BuyProduct(id string, user *User, providerName, pricingName, planName, host return nil, nil, fmt.Errorf("the product: %s does not exist", id) } + if product.IsRecharge { + if customPrice <= 0 { + return nil, nil, fmt.Errorf("the custom price should bigger than zero") + } else { + product.Price = customPrice + } + } + provider, err := product.getProvider(providerName) if err != nil { return nil, nil, err @@ -246,6 +255,7 @@ func BuyProduct(id string, user *User, providerName, pricingName, planName, host Currency: product.Currency, Price: product.Price, ReturnUrl: product.ReturnUrl, + IsRecharge: product.IsRecharge, User: user.Name, PayUrl: payResp.PayUrl, @@ -256,6 +266,10 @@ func BuyProduct(id string, user *User, providerName, pricingName, planName, host if provider.Type == "Dummy" { payment.State = pp.PaymentStatePaid + err = updateUserBalance(user.Owner, user.Name, payment.Price) + if err != nil { + return nil, nil, err + } } affected, err := AddPayment(payment) @@ -304,8 +318,9 @@ func CreateProductForPlan(plan *Plan) *Product { Price: plan.Price, Currency: plan.Currency, - Quantity: 999, - Sold: 0, + Quantity: 999, + Sold: 0, + IsRecharge: false, Providers: plan.PaymentProviders, State: "Published", diff --git a/object/user.go b/object/user.go index 91a4c77d..1d3a28b7 100644 --- a/object/user.go +++ b/object/user.go @@ -687,7 +687,7 @@ func UpdateUser(id string, user *User, columns []string, isAdmin bool) (bool, er } } if isAdmin { - columns = append(columns, "name", "id", "email", "phone", "country_code", "type") + columns = append(columns, "name", "id", "email", "phone", "country_code", "type", "balance") } columns = append(columns, "updated_time") @@ -1157,3 +1157,13 @@ func GenerateIdForNewUser(application *Application) (string, error) { res := strconv.Itoa(lastUserId + 1) return res, nil } + +func updateUserBalance(owner string, name string, balance float64) error { + user, err := getUser(owner, name) + if err != nil { + return err + } + user.Balance += balance + _, err = UpdateUser(user.GetId(), user, []string{"balance"}, true) + return err +} diff --git a/object/user_util.go b/object/user_util.go index 2d802546..4c1b6618 100644 --- a/object/user_util.go +++ b/object/user_util.go @@ -416,6 +416,11 @@ func CheckPermissionForUpdateUser(oldUser, newUser *User, isAdmin bool, lang str itemsChanged = append(itemsChanged, item) } + if oldUser.Balance != newUser.Balance { + item := GetAccountItemByName("Balance", organization) + itemsChanged = append(itemsChanged, item) + } + if oldUser.Score != newUser.Score { item := GetAccountItemByName("Score", organization) itemsChanged = append(itemsChanged, item) diff --git a/web/src/PaymentResultPage.js b/web/src/PaymentResultPage.js index cfb69381..c445293a 100644 --- a/web/src/PaymentResultPage.js +++ b/web/src/PaymentResultPage.js @@ -17,6 +17,7 @@ import {Button, Result, Spin} from "antd"; import * as PaymentBackend from "./backend/PaymentBackend"; import * as PricingBackend from "./backend/PricingBackend"; import * as SubscriptionBackend from "./backend/SubscriptionBackend"; +import * as UserBackend from "./backend/UserBackend"; import * as Setting from "./Setting"; import i18next from "i18next"; @@ -34,6 +35,7 @@ class PaymentResultPage extends React.Component { pricing: props.pricing ?? null, subscription: props.subscription ?? null, timeout: null, + user: null, }; } @@ -41,6 +43,25 @@ class PaymentResultPage extends React.Component { this.getPayment(); } + getUser() { + UserBackend.getUser(this.props.account.owner, this.props.account.name) + .then((res) => { + if (res.data === null) { + this.props.history.push("/404"); + return; + } + + if (res.status === "error") { + Setting.showMessage("error", res.msg); + return; + } + + this.setState({ + user: res.data, + }); + }); + } + componentWillUnmount() { if (this.state.timeout !== null) { clearTimeout(this.state.timeout); @@ -114,6 +135,12 @@ class PaymentResultPage extends React.Component { }); } } + + if (payment.state === "Paid") { + if (this.props.account) { + this.getUser(); + } + } } catch (err) { Setting.showMessage("error", err.message); return; @@ -136,6 +163,27 @@ class PaymentResultPage extends React.Component { } if (payment.state === "Paid") { + if (payment.isRecharge) { + return ( +
+ { + Setting.renderHelmet(payment) + } + { + this.goToPaymentUrl(payment); + }}> + {i18next.t("payment:Return to Website")} + , + ]} + /> +
+ ); + } return (
{ diff --git a/web/src/ProductBuyPage.js b/web/src/ProductBuyPage.js index 62e79522..8bd61d6f 100644 --- a/web/src/ProductBuyPage.js +++ b/web/src/ProductBuyPage.js @@ -13,7 +13,7 @@ // limitations under the License. import React from "react"; -import {Button, Descriptions, Spin} from "antd"; +import {Button, Descriptions, InputNumber, Space, Spin} from "antd"; import i18next from "i18next"; import * as ProductBackend from "./backend/ProductBackend"; import * as PlanBackend from "./backend/PlanBackend"; @@ -36,6 +36,7 @@ class ProductBuyPage extends React.Component { pricing: props?.pricing ?? null, plan: null, isPlacingOrder: false, + customPrice: 0, }; } @@ -127,18 +128,8 @@ class ProductBuyPage extends React.Component { } } - getCurrencyText(product) { - if (product?.currency === "USD") { - return i18next.t("product:USD"); - } else if (product?.currency === "CNY") { - return i18next.t("product:CNY"); - } else { - return "(Unknown currency)"; - } - } - getPrice(product) { - return `${this.getCurrencySymbol(product)}${product?.price} (${this.getCurrencyText(product)})`; + return `${this.getCurrencySymbol(product)}${product?.price} (${Setting.getCurrencyText(product)})`; } // Call Weechat Pay via jsapi @@ -192,7 +183,7 @@ class ProductBuyPage extends React.Component { isPlacingOrder: true, }); - ProductBackend.buyProduct(product.owner, product.name, provider.name, this.state.pricingName ?? "", this.state.planName ?? "", this.state.userName ?? "", this.state.paymentEnv) + ProductBackend.buyProduct(product.owner, product.name, provider.name, this.state.pricingName ?? "", this.state.planName ?? "", this.state.userName ?? "", this.state.paymentEnv, this.state.customPrice) .then((res) => { if (res.status === "ok") { const payment = res.data; @@ -295,15 +286,27 @@ class ProductBuyPage extends React.Component { {product?.name} - - - { - this.getPrice(product) - } - - - {product?.quantity} - {product?.sold} + { + product.isRecharge ? ( + + + {this.setState({customPrice: e});}} /> {Setting.getCurrencyText(product)} + + + ) : ( + + + + { + this.getPrice(product) + } + + + {product?.quantity} + {product?.sold} + + ) + } { this.renderPay(product) diff --git a/web/src/ProductEditPage.js b/web/src/ProductEditPage.js index a563a0b7..19655ab1 100644 --- a/web/src/ProductEditPage.js +++ b/web/src/ProductEditPage.js @@ -13,7 +13,7 @@ // limitations under the License. import React from "react"; -import {Button, Card, Col, Input, InputNumber, Row, Select} from "antd"; +import {Button, Card, Col, Input, InputNumber, Row, Select, Switch} from "antd"; import * as ProductBackend from "./backend/ProductBackend"; import * as Setting from "./Setting"; import i18next from "i18next"; @@ -216,14 +216,27 @@ class ProductEditPage extends React.Component { - {Setting.getLabel(i18next.t("product:Price"), i18next.t("product:Price - Tooltip"))} : + {Setting.getLabel(i18next.t("product:Is recharge"), i18next.t("product:Is recharge - Tooltip"))} : - { - this.updateProductField("price", value); + { + this.updateProductField("isRecharge", value); }} /> + { + this.state.product.isRecharge ? null : ( + + + {Setting.getLabel(i18next.t("product:Price"), i18next.t("product:Price - Tooltip"))} : + + + { + this.updateProductField("price", value); + }} /> + + + )} {Setting.getLabel(i18next.t("product:Quantity"), i18next.t("product:Quantity - Tooltip"))} : diff --git a/web/src/ProductListPage.js b/web/src/ProductListPage.js index 113c6718..8be238f2 100644 --- a/web/src/ProductListPage.js +++ b/web/src/ProductListPage.js @@ -38,6 +38,7 @@ class ProductListPage extends BaseListPage { price: 300, quantity: 99, sold: 10, + isRecharge: false, providers: [], state: "Published", }; diff --git a/web/src/Setting.js b/web/src/Setting.js index ce597f29..8a527754 100644 --- a/web/src/Setting.js +++ b/web/src/Setting.js @@ -1516,3 +1516,13 @@ export function getDefaultHtmlEmailContent() { `; } + +export function getCurrencyText(product) { + if (product?.currency === "USD") { + return i18next.t("product:USD"); + } else if (product?.currency === "CNY") { + return i18next.t("product:CNY"); + } else { + return "(Unknown currency)"; + } +} diff --git a/web/src/UserEditPage.js b/web/src/UserEditPage.js index 2bbb1445..ae8c6970 100644 --- a/web/src/UserEditPage.js +++ b/web/src/UserEditPage.js @@ -707,6 +707,19 @@ class UserEditPage extends React.Component { ); + } else if (accountItem.name === "Balance") { + return ( + + + {Setting.getLabel(i18next.t("user:Balance"), i18next.t("user:Balance - Tooltip"))} : + + + { + this.updateUserField("balance", value); + }} /> + + + ); } else if (accountItem.name === "Score") { return ( diff --git a/web/src/backend/ProductBackend.js b/web/src/backend/ProductBackend.js index 940df7a6..d11aaf41 100644 --- a/web/src/backend/ProductBackend.js +++ b/web/src/backend/ProductBackend.js @@ -70,8 +70,8 @@ export function deleteProduct(product) { }).then(res => res.json()); } -export function buyProduct(owner, name, providerName, pricingName = "", planName = "", userName = "", paymentEnv = "") { - return fetch(`${Setting.ServerUrl}/api/buy-product?id=${owner}/${encodeURIComponent(name)}&providerName=${providerName}&pricingName=${pricingName}&planName=${planName}&userName=${userName}&paymentEnv=${paymentEnv}`, { +export function buyProduct(owner, name, providerName, pricingName = "", planName = "", userName = "", paymentEnv = "", customPrice = 0) { + return fetch(`${Setting.ServerUrl}/api/buy-product?id=${owner}/${encodeURIComponent(name)}&providerName=${providerName}&pricingName=${pricingName}&planName=${planName}&userName=${userName}&paymentEnv=${paymentEnv}&customPrice=${customPrice}`, { method: "POST", credentials: "include", headers: { diff --git a/web/src/locales/ar/data.json b/web/src/locales/ar/data.json index d9e815ea..5b9ba53b 100644 --- a/web/src/locales/ar/data.json +++ b/web/src/locales/ar/data.json @@ -619,6 +619,7 @@ "Processing...": "Processing...", "Product": "Product", "Product - Tooltip": "Product Name", + "Recharged successfully": "Recharged successfully", "Result": "Result", "Return to Website": "Return to Website", "The payment has been canceled": "The payment has been canceled", @@ -627,6 +628,8 @@ "The payment is still under processing": "The payment is still under processing", "Type - Tooltip": "Payment method used when purchasing the product", "You have successfully completed the payment": "You have successfully completed the payment", + "You have successfully recharged": "You have successfully recharged", + "Your current balance is": "Your current balance is", "please wait for a few seconds...": "please wait for a few seconds...", "the current state is": "the current state is" }, @@ -689,6 +692,8 @@ "Edit Product": "Edit Product", "Image": "Image", "Image - Tooltip": "Image of product", + "Is recharge": "Is recharge", + "Is recharge - Tooltip": "Whether the current product is to recharge balance", "New Product": "New Product", "Pay": "Pay", "PayPal": "PayPal", @@ -1080,6 +1085,8 @@ "Address line": "Address line", "Affiliation": "Affiliation", "Affiliation - Tooltip": "Employer, such as company name or organization name", + "Balance": "Balance", + "Balance - Tooltip": "User's balance", "Bio": "Bio", "Bio - Tooltip": "Self introduction of the user", "Birthday": "Birthday", diff --git a/web/src/locales/de/data.json b/web/src/locales/de/data.json index cc7140ef..265a8be3 100644 --- a/web/src/locales/de/data.json +++ b/web/src/locales/de/data.json @@ -619,6 +619,7 @@ "Processing...": "In Bearbeitung...", "Product": "Produkt", "Product - Tooltip": "Produktname", + "Recharged successfully": "Recharged successfully", "Result": "Ergebnis", "Return to Website": "Zurück zur Website", "The payment has been canceled": "The payment has been canceled", @@ -627,6 +628,8 @@ "The payment is still under processing": "Die Zahlung wird immer noch bearbeitet", "Type - Tooltip": "Zahlungsmethode, die beim Kauf des Produkts verwendet wurde", "You have successfully completed the payment": "Sie haben die Zahlung erfolgreich abgeschlossen", + "You have successfully recharged": "You have successfully recharged", + "Your current balance is": "Your current balance is", "please wait for a few seconds...": "Bitte warten Sie ein paar Sekunden...", "the current state is": "der aktuelle Zustand ist" }, @@ -689,6 +692,8 @@ "Edit Product": "Produkt bearbeiten", "Image": "Bild", "Image - Tooltip": "Bild des Produkts", + "Is recharge": "Is recharge", + "Is recharge - Tooltip": "Whether the current product is to recharge balance", "New Product": "Neues Produkt", "Pay": "Zahlen", "PayPal": "PayPal", @@ -1080,6 +1085,8 @@ "Address line": "Address line", "Affiliation": "Zugehörigkeit", "Affiliation - Tooltip": "Arbeitgeber, wie Firmenname oder Organisationsname", + "Balance": "Balance", + "Balance - Tooltip": "User's balance", "Bio": "Bio", "Bio - Tooltip": "Selbstvorstellung des Nutzers", "Birthday": "Birthday", diff --git a/web/src/locales/en/data.json b/web/src/locales/en/data.json index d142e885..f95d8117 100644 --- a/web/src/locales/en/data.json +++ b/web/src/locales/en/data.json @@ -619,6 +619,7 @@ "Processing...": "Processing...", "Product": "Product", "Product - Tooltip": "Product Name", + "Recharged successfully": "Recharged successfully", "Result": "Result", "Return to Website": "Return to Website", "The payment has been canceled": "The payment has been canceled", @@ -627,6 +628,8 @@ "The payment is still under processing": "The payment is still under processing", "Type - Tooltip": "Payment method used when purchasing the product", "You have successfully completed the payment": "You have successfully completed the payment", + "You have successfully recharged": "You have successfully recharged", + "Your current balance is": "Your current balance is", "please wait for a few seconds...": "please wait for a few seconds...", "the current state is": "the current state is" }, @@ -689,6 +692,8 @@ "Edit Product": "Edit Product", "Image": "Image", "Image - Tooltip": "Image of product", + "Is recharge": "Is recharge", + "Is recharge - Tooltip": "Whether the current product is to recharge balance", "New Product": "New Product", "Pay": "Pay", "PayPal": "PayPal", @@ -1080,6 +1085,8 @@ "Address line": "Address line", "Affiliation": "Affiliation", "Affiliation - Tooltip": "Employer, such as company name or organization name", + "Balance": "Balance", + "Balance - Tooltip": "User's balance", "Bio": "Bio", "Bio - Tooltip": "Self introduction of the user", "Birthday": "Birthday", diff --git a/web/src/locales/es/data.json b/web/src/locales/es/data.json index 038d9e36..4ce8f371 100644 --- a/web/src/locales/es/data.json +++ b/web/src/locales/es/data.json @@ -619,6 +619,7 @@ "Processing...": "Procesando...", "Product": "Producto", "Product - Tooltip": "Nombre del producto", + "Recharged successfully": "Recharged successfully", "Result": "Resultado", "Return to Website": "Regresar al sitio web", "The payment has been canceled": "The payment has been canceled", @@ -627,6 +628,8 @@ "The payment is still under processing": "El pago aún está en proceso", "Type - Tooltip": "Método de pago utilizado al comprar el producto", "You have successfully completed the payment": "Has completado el pago exitosamente", + "You have successfully recharged": "You have successfully recharged", + "Your current balance is": "Your current balance is", "please wait for a few seconds...": "Por favor espera unos segundos...", "the current state is": "el estado actual es" }, @@ -689,6 +692,8 @@ "Edit Product": "Editar Producto", "Image": "Imagen", "Image - Tooltip": "Imagen del producto", + "Is recharge": "Is recharge", + "Is recharge - Tooltip": "Whether the current product is to recharge balance", "New Product": "Nuevo producto", "Pay": "Pagar", "PayPal": "PayPal", @@ -1080,6 +1085,8 @@ "Address line": "Address line", "Affiliation": "Afiliación", "Affiliation - Tooltip": "Empleador, como el nombre de una empresa u organización", + "Balance": "Balance", + "Balance - Tooltip": "User's balance", "Bio": "Bio - Biografía", "Bio - Tooltip": "Introducción personal del usuario", "Birthday": "Birthday", diff --git a/web/src/locales/fa/data.json b/web/src/locales/fa/data.json index 61fc66b4..78fa1029 100644 --- a/web/src/locales/fa/data.json +++ b/web/src/locales/fa/data.json @@ -619,6 +619,7 @@ "Processing...": "Processing...", "Product": "Product", "Product - Tooltip": "Product Name", + "Recharged successfully": "Recharged successfully", "Result": "Result", "Return to Website": "Return to Website", "The payment has been canceled": "The payment has been canceled", @@ -627,6 +628,8 @@ "The payment is still under processing": "The payment is still under processing", "Type - Tooltip": "Payment method used when purchasing the product", "You have successfully completed the payment": "You have successfully completed the payment", + "You have successfully recharged": "You have successfully recharged", + "Your current balance is": "Your current balance is", "please wait for a few seconds...": "please wait for a few seconds...", "the current state is": "the current state is" }, @@ -689,6 +692,8 @@ "Edit Product": "Edit Product", "Image": "Image", "Image - Tooltip": "Image of product", + "Is recharge": "Is recharge", + "Is recharge - Tooltip": "Whether the current product is to recharge balance", "New Product": "New Product", "Pay": "Pay", "PayPal": "PayPal", @@ -1080,6 +1085,8 @@ "Address line": "Address line", "Affiliation": "Affiliation", "Affiliation - Tooltip": "Employer, such as company name or organization name", + "Balance": "Balance", + "Balance - Tooltip": "User's balance", "Bio": "Bio", "Bio - Tooltip": "Self introduction of the user", "Birthday": "Birthday", diff --git a/web/src/locales/fi/data.json b/web/src/locales/fi/data.json index 1503a94d..bf5331ee 100644 --- a/web/src/locales/fi/data.json +++ b/web/src/locales/fi/data.json @@ -619,6 +619,7 @@ "Processing...": "Processing...", "Product": "Product", "Product - Tooltip": "Product Name", + "Recharged successfully": "Recharged successfully", "Result": "Result", "Return to Website": "Return to Website", "The payment has been canceled": "The payment has been canceled", @@ -627,6 +628,8 @@ "The payment is still under processing": "The payment is still under processing", "Type - Tooltip": "Payment method used when purchasing the product", "You have successfully completed the payment": "You have successfully completed the payment", + "You have successfully recharged": "You have successfully recharged", + "Your current balance is": "Your current balance is", "please wait for a few seconds...": "please wait for a few seconds...", "the current state is": "the current state is" }, @@ -689,6 +692,8 @@ "Edit Product": "Edit Product", "Image": "Image", "Image - Tooltip": "Image of product", + "Is recharge": "Is recharge", + "Is recharge - Tooltip": "Whether the current product is to recharge balance", "New Product": "New Product", "Pay": "Pay", "PayPal": "PayPal", @@ -1080,6 +1085,8 @@ "Address line": "Address line", "Affiliation": "Affiliation", "Affiliation - Tooltip": "Employer, such as company name or organization name", + "Balance": "Balance", + "Balance - Tooltip": "User's balance", "Bio": "Bio", "Bio - Tooltip": "Self introduction of the user", "Birthday": "Birthday", diff --git a/web/src/locales/fr/data.json b/web/src/locales/fr/data.json index b66b51de..db54a67b 100644 --- a/web/src/locales/fr/data.json +++ b/web/src/locales/fr/data.json @@ -619,6 +619,7 @@ "Processing...": "Traitement...", "Product": "Produit", "Product - Tooltip": "Nom du produit", + "Recharged successfully": "Recharged successfully", "Result": "Résultat", "Return to Website": "Retourner sur le site web", "The payment has been canceled": "Le paiement a été annulé", @@ -627,6 +628,8 @@ "The payment is still under processing": "Le paiement est encore en cours de traitement", "Type - Tooltip": "Méthode de paiement utilisée lors de l'achat du produit", "You have successfully completed the payment": "Vous avez effectué le paiement avec succès", + "You have successfully recharged": "You have successfully recharged", + "Your current balance is": "Your current balance is", "please wait for a few seconds...": "Veuillez patienter quelques secondes...", "the current state is": "l'état actuel est" }, @@ -689,6 +692,8 @@ "Edit Product": "Modifier le produit", "Image": "Image", "Image - Tooltip": "Image du produit", + "Is recharge": "Is recharge", + "Is recharge - Tooltip": "Whether the current product is to recharge balance", "New Product": "Nouveau produit", "Pay": "Payer", "PayPal": "PayPal", @@ -1080,6 +1085,8 @@ "Address line": "Address line", "Affiliation": "Affiliation", "Affiliation - Tooltip": "Employeur, tel que le nom de l'entreprise ou de l'organisation", + "Balance": "Balance", + "Balance - Tooltip": "User's balance", "Bio": "Bio", "Bio - Tooltip": "Biographie du compte", "Birthday": "Date de naissance", diff --git a/web/src/locales/he/data.json b/web/src/locales/he/data.json index 1503a94d..bf5331ee 100644 --- a/web/src/locales/he/data.json +++ b/web/src/locales/he/data.json @@ -619,6 +619,7 @@ "Processing...": "Processing...", "Product": "Product", "Product - Tooltip": "Product Name", + "Recharged successfully": "Recharged successfully", "Result": "Result", "Return to Website": "Return to Website", "The payment has been canceled": "The payment has been canceled", @@ -627,6 +628,8 @@ "The payment is still under processing": "The payment is still under processing", "Type - Tooltip": "Payment method used when purchasing the product", "You have successfully completed the payment": "You have successfully completed the payment", + "You have successfully recharged": "You have successfully recharged", + "Your current balance is": "Your current balance is", "please wait for a few seconds...": "please wait for a few seconds...", "the current state is": "the current state is" }, @@ -689,6 +692,8 @@ "Edit Product": "Edit Product", "Image": "Image", "Image - Tooltip": "Image of product", + "Is recharge": "Is recharge", + "Is recharge - Tooltip": "Whether the current product is to recharge balance", "New Product": "New Product", "Pay": "Pay", "PayPal": "PayPal", @@ -1080,6 +1085,8 @@ "Address line": "Address line", "Affiliation": "Affiliation", "Affiliation - Tooltip": "Employer, such as company name or organization name", + "Balance": "Balance", + "Balance - Tooltip": "User's balance", "Bio": "Bio", "Bio - Tooltip": "Self introduction of the user", "Birthday": "Birthday", diff --git a/web/src/locales/id/data.json b/web/src/locales/id/data.json index a538eaf9..e891f99c 100644 --- a/web/src/locales/id/data.json +++ b/web/src/locales/id/data.json @@ -619,6 +619,7 @@ "Processing...": "Pemrosesan...", "Product": "Produk", "Product - Tooltip": "Nama Produk", + "Recharged successfully": "Recharged successfully", "Result": "Hasil", "Return to Website": "Kembali ke Situs Web", "The payment has been canceled": "The payment has been canceled", @@ -627,6 +628,8 @@ "The payment is still under processing": "Pembayaran masih dalam proses", "Type - Tooltip": "Metode pembayaran yang digunakan saat membeli produk", "You have successfully completed the payment": "Anda telah berhasil menyelesaikan pembayaran", + "You have successfully recharged": "You have successfully recharged", + "Your current balance is": "Your current balance is", "please wait for a few seconds...": "Mohon tunggu beberapa detik...", "the current state is": "keadaan saat ini adalah" }, @@ -689,6 +692,8 @@ "Edit Product": "Edit Produk", "Image": "Gambar", "Image - Tooltip": "Gambar produk", + "Is recharge": "Is recharge", + "Is recharge - Tooltip": "Whether the current product is to recharge balance", "New Product": "Produk Baru", "Pay": "Bayar", "PayPal": "Paypal", @@ -1080,6 +1085,8 @@ "Address line": "Address line", "Affiliation": "Afiliasi", "Affiliation - Tooltip": "Pemberi Kerja, seperti nama perusahaan atau nama organisasi", + "Balance": "Balance", + "Balance - Tooltip": "User's balance", "Bio": "Bio: Biografi", "Bio - Tooltip": "Pengenalan diri dari pengguna", "Birthday": "Birthday", diff --git a/web/src/locales/it/data.json b/web/src/locales/it/data.json index 26c5cd1b..b85cec23 100644 --- a/web/src/locales/it/data.json +++ b/web/src/locales/it/data.json @@ -619,6 +619,7 @@ "Processing...": "Processing...", "Product": "Product", "Product - Tooltip": "Product Name", + "Recharged successfully": "Recharged successfully", "Result": "Result", "Return to Website": "Return to Website", "The payment has been canceled": "The payment has been canceled", @@ -627,6 +628,8 @@ "The payment is still under processing": "The payment is still under processing", "Type - Tooltip": "Payment method used when purchasing the product", "You have successfully completed the payment": "You have successfully completed the payment", + "You have successfully recharged": "You have successfully recharged", + "Your current balance is": "Your current balance is", "please wait for a few seconds...": "please wait for a few seconds...", "the current state is": "the current state is" }, @@ -689,6 +692,8 @@ "Edit Product": "Edit Product", "Image": "Image", "Image - Tooltip": "Image of product", + "Is recharge": "Is recharge", + "Is recharge - Tooltip": "Whether the current product is to recharge balance", "New Product": "New Product", "Pay": "Pay", "PayPal": "PayPal", @@ -1080,6 +1085,8 @@ "Address line": "Address line", "Affiliation": "Affiliation", "Affiliation - Tooltip": "Employer, such as company name or organization name", + "Balance": "Balance", + "Balance - Tooltip": "User's balance", "Bio": "Bio", "Bio - Tooltip": "Self introduction of the user", "Birthday": "Birthday", diff --git a/web/src/locales/ja/data.json b/web/src/locales/ja/data.json index a1db847c..2bd354ec 100644 --- a/web/src/locales/ja/data.json +++ b/web/src/locales/ja/data.json @@ -619,6 +619,7 @@ "Processing...": "処理中... ", "Product": "製品", "Product - Tooltip": "製品名", + "Recharged successfully": "Recharged successfully", "Result": "結果", "Return to Website": "ウェブサイトに戻る", "The payment has been canceled": "The payment has been canceled", @@ -627,6 +628,8 @@ "The payment is still under processing": "支払いはまだ処理中です", "Type - Tooltip": "製品を購入する際に使用される支払方法", "You have successfully completed the payment": "あなたは支払いを正常に完了しました", + "You have successfully recharged": "You have successfully recharged", + "Your current balance is": "Your current balance is", "please wait for a few seconds...": "数秒お待ちください...", "the current state is": "現在の状態は" }, @@ -689,6 +692,8 @@ "Edit Product": "製品を編集", "Image": "画像", "Image - Tooltip": "製品のイメージ", + "Is recharge": "Is recharge", + "Is recharge - Tooltip": "Whether the current product is to recharge balance", "New Product": "新製品", "Pay": "支払う", "PayPal": "PayPal", @@ -1080,6 +1085,8 @@ "Address line": "Address line", "Affiliation": "所属", "Affiliation - Tooltip": "企業名や団体名などの雇用主", + "Balance": "Balance", + "Balance - Tooltip": "User's balance", "Bio": "バイオ技術", "Bio - Tooltip": "ユーザーの自己紹介\n\n私は○○です。私は○○(国、都市、職業など)出身で、現在は○○(国、都市、職業など)に住んでいます。私は○○(趣味、特技、興味など)が好きで、空き時間にはよくそれをしています。よろしくお願いします", "Birthday": "Birthday", diff --git a/web/src/locales/kk/data.json b/web/src/locales/kk/data.json index 1503a94d..bf5331ee 100644 --- a/web/src/locales/kk/data.json +++ b/web/src/locales/kk/data.json @@ -619,6 +619,7 @@ "Processing...": "Processing...", "Product": "Product", "Product - Tooltip": "Product Name", + "Recharged successfully": "Recharged successfully", "Result": "Result", "Return to Website": "Return to Website", "The payment has been canceled": "The payment has been canceled", @@ -627,6 +628,8 @@ "The payment is still under processing": "The payment is still under processing", "Type - Tooltip": "Payment method used when purchasing the product", "You have successfully completed the payment": "You have successfully completed the payment", + "You have successfully recharged": "You have successfully recharged", + "Your current balance is": "Your current balance is", "please wait for a few seconds...": "please wait for a few seconds...", "the current state is": "the current state is" }, @@ -689,6 +692,8 @@ "Edit Product": "Edit Product", "Image": "Image", "Image - Tooltip": "Image of product", + "Is recharge": "Is recharge", + "Is recharge - Tooltip": "Whether the current product is to recharge balance", "New Product": "New Product", "Pay": "Pay", "PayPal": "PayPal", @@ -1080,6 +1085,8 @@ "Address line": "Address line", "Affiliation": "Affiliation", "Affiliation - Tooltip": "Employer, such as company name or organization name", + "Balance": "Balance", + "Balance - Tooltip": "User's balance", "Bio": "Bio", "Bio - Tooltip": "Self introduction of the user", "Birthday": "Birthday", diff --git a/web/src/locales/ko/data.json b/web/src/locales/ko/data.json index 35192bf4..670bffe5 100644 --- a/web/src/locales/ko/data.json +++ b/web/src/locales/ko/data.json @@ -619,6 +619,7 @@ "Processing...": "처리 중...", "Product": "제품", "Product - Tooltip": "제품 이름", + "Recharged successfully": "Recharged successfully", "Result": "결과", "Return to Website": "웹 사이트로 돌아가기", "The payment has been canceled": "The payment has been canceled", @@ -627,6 +628,8 @@ "The payment is still under processing": "지불은 아직 처리 중입니다", "Type - Tooltip": "제품을 구매할 때 사용되는 결제 방법", "You have successfully completed the payment": "당신은 결제를 성공적으로 완료하셨습니다", + "You have successfully recharged": "You have successfully recharged", + "Your current balance is": "Your current balance is", "please wait for a few seconds...": "잠시만 기다려주세요...", "the current state is": "현재 상태입니다" }, @@ -689,6 +692,8 @@ "Edit Product": "제품 편집", "Image": "이미지", "Image - Tooltip": "제품 이미지", + "Is recharge": "Is recharge", + "Is recharge - Tooltip": "Whether the current product is to recharge balance", "New Product": "새로운 제품", "Pay": "결제하다", "PayPal": "페이팔", @@ -1080,6 +1085,8 @@ "Address line": "Address line", "Affiliation": "소속", "Affiliation - Tooltip": "고용주, 회사명 또는 조직명", + "Balance": "Balance", + "Balance - Tooltip": "User's balance", "Bio": "바이오", "Bio - Tooltip": "사용자의 자기소개\n\n안녕하세요, 저는 [이름]입니다. 한국을 포함한 여러 나라에서 살아본 적이 있습니다. 저는 [직업/전공]을 공부하고 있으며 [취미/관심사]에 대해 깊게 알고 있습니다. 이 채팅 서비스를 사용하여 새로운 사람들과 함께 대화를 나누기를 원합니다. 감사합니다", "Birthday": "Birthday", diff --git a/web/src/locales/ms/data.json b/web/src/locales/ms/data.json index 1503a94d..bf5331ee 100644 --- a/web/src/locales/ms/data.json +++ b/web/src/locales/ms/data.json @@ -619,6 +619,7 @@ "Processing...": "Processing...", "Product": "Product", "Product - Tooltip": "Product Name", + "Recharged successfully": "Recharged successfully", "Result": "Result", "Return to Website": "Return to Website", "The payment has been canceled": "The payment has been canceled", @@ -627,6 +628,8 @@ "The payment is still under processing": "The payment is still under processing", "Type - Tooltip": "Payment method used when purchasing the product", "You have successfully completed the payment": "You have successfully completed the payment", + "You have successfully recharged": "You have successfully recharged", + "Your current balance is": "Your current balance is", "please wait for a few seconds...": "please wait for a few seconds...", "the current state is": "the current state is" }, @@ -689,6 +692,8 @@ "Edit Product": "Edit Product", "Image": "Image", "Image - Tooltip": "Image of product", + "Is recharge": "Is recharge", + "Is recharge - Tooltip": "Whether the current product is to recharge balance", "New Product": "New Product", "Pay": "Pay", "PayPal": "PayPal", @@ -1080,6 +1085,8 @@ "Address line": "Address line", "Affiliation": "Affiliation", "Affiliation - Tooltip": "Employer, such as company name or organization name", + "Balance": "Balance", + "Balance - Tooltip": "User's balance", "Bio": "Bio", "Bio - Tooltip": "Self introduction of the user", "Birthday": "Birthday", diff --git a/web/src/locales/nl/data.json b/web/src/locales/nl/data.json index 1503a94d..bf5331ee 100644 --- a/web/src/locales/nl/data.json +++ b/web/src/locales/nl/data.json @@ -619,6 +619,7 @@ "Processing...": "Processing...", "Product": "Product", "Product - Tooltip": "Product Name", + "Recharged successfully": "Recharged successfully", "Result": "Result", "Return to Website": "Return to Website", "The payment has been canceled": "The payment has been canceled", @@ -627,6 +628,8 @@ "The payment is still under processing": "The payment is still under processing", "Type - Tooltip": "Payment method used when purchasing the product", "You have successfully completed the payment": "You have successfully completed the payment", + "You have successfully recharged": "You have successfully recharged", + "Your current balance is": "Your current balance is", "please wait for a few seconds...": "please wait for a few seconds...", "the current state is": "the current state is" }, @@ -689,6 +692,8 @@ "Edit Product": "Edit Product", "Image": "Image", "Image - Tooltip": "Image of product", + "Is recharge": "Is recharge", + "Is recharge - Tooltip": "Whether the current product is to recharge balance", "New Product": "New Product", "Pay": "Pay", "PayPal": "PayPal", @@ -1080,6 +1085,8 @@ "Address line": "Address line", "Affiliation": "Affiliation", "Affiliation - Tooltip": "Employer, such as company name or organization name", + "Balance": "Balance", + "Balance - Tooltip": "User's balance", "Bio": "Bio", "Bio - Tooltip": "Self introduction of the user", "Birthday": "Birthday", diff --git a/web/src/locales/pl/data.json b/web/src/locales/pl/data.json index 1503a94d..bf5331ee 100644 --- a/web/src/locales/pl/data.json +++ b/web/src/locales/pl/data.json @@ -619,6 +619,7 @@ "Processing...": "Processing...", "Product": "Product", "Product - Tooltip": "Product Name", + "Recharged successfully": "Recharged successfully", "Result": "Result", "Return to Website": "Return to Website", "The payment has been canceled": "The payment has been canceled", @@ -627,6 +628,8 @@ "The payment is still under processing": "The payment is still under processing", "Type - Tooltip": "Payment method used when purchasing the product", "You have successfully completed the payment": "You have successfully completed the payment", + "You have successfully recharged": "You have successfully recharged", + "Your current balance is": "Your current balance is", "please wait for a few seconds...": "please wait for a few seconds...", "the current state is": "the current state is" }, @@ -689,6 +692,8 @@ "Edit Product": "Edit Product", "Image": "Image", "Image - Tooltip": "Image of product", + "Is recharge": "Is recharge", + "Is recharge - Tooltip": "Whether the current product is to recharge balance", "New Product": "New Product", "Pay": "Pay", "PayPal": "PayPal", @@ -1080,6 +1085,8 @@ "Address line": "Address line", "Affiliation": "Affiliation", "Affiliation - Tooltip": "Employer, such as company name or organization name", + "Balance": "Balance", + "Balance - Tooltip": "User's balance", "Bio": "Bio", "Bio - Tooltip": "Self introduction of the user", "Birthday": "Birthday", diff --git a/web/src/locales/pt/data.json b/web/src/locales/pt/data.json index 936c12fc..00d4b3f4 100644 --- a/web/src/locales/pt/data.json +++ b/web/src/locales/pt/data.json @@ -619,6 +619,7 @@ "Processing...": "Processando...", "Product": "Produto", "Product - Tooltip": "Nome do Produto", + "Recharged successfully": "Recharged successfully", "Result": "Resultado", "Return to Website": "Retornar ao Website", "The payment has been canceled": "The payment has been canceled", @@ -627,6 +628,8 @@ "The payment is still under processing": "O pagamento ainda está sendo processado", "Type - Tooltip": "Método de pagamento utilizado ao comprar o produto", "You have successfully completed the payment": "Você concluiu o pagamento com sucesso", + "You have successfully recharged": "You have successfully recharged", + "Your current balance is": "Your current balance is", "please wait for a few seconds...": "por favor, aguarde alguns segundos...", "the current state is": "o estado atual é" }, @@ -689,6 +692,8 @@ "Edit Product": "Editar Produto", "Image": "Imagem", "Image - Tooltip": "Imagem do produto", + "Is recharge": "Is recharge", + "Is recharge - Tooltip": "Whether the current product is to recharge balance", "New Product": "Novo Produto", "Pay": "Pagar", "PayPal": "PayPal", @@ -1080,6 +1085,8 @@ "Address line": "Address line", "Affiliation": "Afiliação", "Affiliation - Tooltip": "Empregador, como nome da empresa ou organização", + "Balance": "Balance", + "Balance - Tooltip": "User's balance", "Bio": "Biografia", "Bio - Tooltip": "Autoapresentação do usuário", "Birthday": "Aniversário", diff --git a/web/src/locales/ru/data.json b/web/src/locales/ru/data.json index 6586ea94..a63e6428 100644 --- a/web/src/locales/ru/data.json +++ b/web/src/locales/ru/data.json @@ -619,6 +619,7 @@ "Processing...": "Обработка...", "Product": "Продукт", "Product - Tooltip": "Название продукта", + "Recharged successfully": "Recharged successfully", "Result": "Результат", "Return to Website": "Вернуться на веб-сайт", "The payment has been canceled": "The payment has been canceled", @@ -627,6 +628,8 @@ "The payment is still under processing": "Оплата все еще обрабатывается", "Type - Tooltip": "Способ оплаты, используемый при покупке товара", "You have successfully completed the payment": "Вы успешно произвели платеж", + "You have successfully recharged": "You have successfully recharged", + "Your current balance is": "Your current balance is", "please wait for a few seconds...": "Пожалуйста, подождите несколько секунд...", "the current state is": "текущее состояние" }, @@ -689,6 +692,8 @@ "Edit Product": "Редактировать продукт", "Image": "Изображение", "Image - Tooltip": "Изображение продукта", + "Is recharge": "Is recharge", + "Is recharge - Tooltip": "Whether the current product is to recharge balance", "New Product": "Новый продукт", "Pay": "Заплатить", "PayPal": "PayPal", @@ -1080,6 +1085,8 @@ "Address line": "Address line", "Affiliation": "Принадлежность", "Affiliation - Tooltip": "Работодатель, такой как название компании или организации", + "Balance": "Balance", + "Balance - Tooltip": "User's balance", "Bio": "Био", "Bio - Tooltip": "Само представление пользователя", "Birthday": "Birthday", diff --git a/web/src/locales/sv/data.json b/web/src/locales/sv/data.json index 1503a94d..bf5331ee 100644 --- a/web/src/locales/sv/data.json +++ b/web/src/locales/sv/data.json @@ -619,6 +619,7 @@ "Processing...": "Processing...", "Product": "Product", "Product - Tooltip": "Product Name", + "Recharged successfully": "Recharged successfully", "Result": "Result", "Return to Website": "Return to Website", "The payment has been canceled": "The payment has been canceled", @@ -627,6 +628,8 @@ "The payment is still under processing": "The payment is still under processing", "Type - Tooltip": "Payment method used when purchasing the product", "You have successfully completed the payment": "You have successfully completed the payment", + "You have successfully recharged": "You have successfully recharged", + "Your current balance is": "Your current balance is", "please wait for a few seconds...": "please wait for a few seconds...", "the current state is": "the current state is" }, @@ -689,6 +692,8 @@ "Edit Product": "Edit Product", "Image": "Image", "Image - Tooltip": "Image of product", + "Is recharge": "Is recharge", + "Is recharge - Tooltip": "Whether the current product is to recharge balance", "New Product": "New Product", "Pay": "Pay", "PayPal": "PayPal", @@ -1080,6 +1085,8 @@ "Address line": "Address line", "Affiliation": "Affiliation", "Affiliation - Tooltip": "Employer, such as company name or organization name", + "Balance": "Balance", + "Balance - Tooltip": "User's balance", "Bio": "Bio", "Bio - Tooltip": "Self introduction of the user", "Birthday": "Birthday", diff --git a/web/src/locales/tr/data.json b/web/src/locales/tr/data.json index ecb1a8f7..d9b3e5d8 100644 --- a/web/src/locales/tr/data.json +++ b/web/src/locales/tr/data.json @@ -619,6 +619,7 @@ "Processing...": "Processing...", "Product": "Product", "Product - Tooltip": "Product Name", + "Recharged successfully": "Recharged successfully", "Result": "Result", "Return to Website": "Return to Website", "The payment has been canceled": "The payment has been canceled", @@ -627,6 +628,8 @@ "The payment is still under processing": "The payment is still under processing", "Type - Tooltip": "Payment method used when purchasing the product", "You have successfully completed the payment": "You have successfully completed the payment", + "You have successfully recharged": "You have successfully recharged", + "Your current balance is": "Your current balance is", "please wait for a few seconds...": "please wait for a few seconds...", "the current state is": "the current state is" }, @@ -689,6 +692,8 @@ "Edit Product": "Edit Product", "Image": "Image", "Image - Tooltip": "Image of product", + "Is recharge": "Is recharge", + "Is recharge - Tooltip": "Whether the current product is to recharge balance", "New Product": "New Product", "Pay": "Pay", "PayPal": "PayPal", @@ -1080,6 +1085,8 @@ "Address line": "Address line", "Affiliation": "Affiliation", "Affiliation - Tooltip": "Employer, such as company name or organization name", + "Balance": "Balance", + "Balance - Tooltip": "User's balance", "Bio": "Bio", "Bio - Tooltip": "Self introduction of the user", "Birthday": "Birthday", diff --git a/web/src/locales/uk/data.json b/web/src/locales/uk/data.json index f3f4e54d..60c5d298 100644 --- a/web/src/locales/uk/data.json +++ b/web/src/locales/uk/data.json @@ -619,6 +619,7 @@ "Processing...": "Обробка...", "Product": "Продукт", "Product - Tooltip": "Назва продукту", + "Recharged successfully": "Recharged successfully", "Result": "Результат", "Return to Website": "Повернутися на сайт", "The payment has been canceled": "Платіж скасовано", @@ -627,6 +628,8 @@ "The payment is still under processing": "Платіж ще обробляється", "Type - Tooltip": "Спосіб оплати, який використовується при покупці товару", "You have successfully completed the payment": "Ви успішно завершили оплату", + "You have successfully recharged": "You have successfully recharged", + "Your current balance is": "Your current balance is", "please wait for a few seconds...": "зачекайте кілька секунд...", "the current state is": "поточний стан є" }, @@ -689,6 +692,8 @@ "Edit Product": "Редагувати товар", "Image": "Зображення", "Image - Tooltip": "Зображення товару", + "Is recharge": "Is recharge", + "Is recharge - Tooltip": "Whether the current product is to recharge balance", "New Product": "Новий продукт", "Pay": "платити", "PayPal": "PayPal", @@ -1080,6 +1085,8 @@ "Address line": "Address line", "Affiliation": "Приналежність", "Affiliation - Tooltip": "Роботодавець, наприклад назва компанії чи організації", + "Balance": "Balance", + "Balance - Tooltip": "User's balance", "Bio": "біографія", "Bio - Tooltip": "Самостійне представлення користувача", "Birthday": "день народження", diff --git a/web/src/locales/vi/data.json b/web/src/locales/vi/data.json index d5416ecf..e8b81a21 100644 --- a/web/src/locales/vi/data.json +++ b/web/src/locales/vi/data.json @@ -619,6 +619,7 @@ "Processing...": "Đang xử lý...", "Product": "Sản phẩm", "Product - Tooltip": "Tên sản phẩm", + "Recharged successfully": "Recharged successfully", "Result": "Kết quả", "Return to Website": "Trở lại trang web", "The payment has been canceled": "The payment has been canceled", @@ -627,6 +628,8 @@ "The payment is still under processing": "Thanh toán vẫn đang được xử lý", "Type - Tooltip": "Phương thức thanh toán được sử dụng khi mua sản phẩm", "You have successfully completed the payment": "Bạn đã hoàn thành thanh toán thành công", + "You have successfully recharged": "You have successfully recharged", + "Your current balance is": "Your current balance is", "please wait for a few seconds...": "Vui lòng đợi trong vài giây...", "the current state is": "tình trạng hiện tại là" }, @@ -689,6 +692,8 @@ "Edit Product": "Sửa sản phẩm", "Image": "Ảnh", "Image - Tooltip": "Hình ảnh sản phẩm", + "Is recharge": "Is recharge", + "Is recharge - Tooltip": "Whether the current product is to recharge balance", "New Product": "Sản phẩm mới", "Pay": "Trả tiền", "PayPal": "PayPal", @@ -1080,6 +1085,8 @@ "Address line": "Address line", "Affiliation": "Liên kết", "Affiliation - Tooltip": "Nhà tuyển dụng, chẳng hạn như tên công ty hoặc tổ chức", + "Balance": "Balance", + "Balance - Tooltip": "User's balance", "Bio": "bản vẻ đời sống", "Bio - Tooltip": "Tự giới thiệu của người dùng", "Birthday": "Birthday", diff --git a/web/src/locales/zh/data.json b/web/src/locales/zh/data.json index e75aae30..41d0d8f3 100644 --- a/web/src/locales/zh/data.json +++ b/web/src/locales/zh/data.json @@ -619,6 +619,7 @@ "Processing...": "正在处理...", "Product": "商品", "Product - Tooltip": "商品名称", + "Recharged successfully": "充值成功", "Result": "结果", "Return to Website": "返回原网站", "The payment has been canceled": "付款已取消", @@ -627,6 +628,8 @@ "The payment is still under processing": "支付正在处理", "Type - Tooltip": "商品购买时的支付方式", "You have successfully completed the payment": "支付成功", + "You have successfully recharged": "您已成功充值", + "Your current balance is": "您现在的余额为", "please wait for a few seconds...": "请稍后...", "the current state is": "当前状态为" }, @@ -689,6 +692,8 @@ "Edit Product": "编辑商品", "Image": "图片", "Image - Tooltip": "商品图片", + "Is recharge": "充值", + "Is recharge - Tooltip": "当前商品是否为充值商品", "New Product": "添加商品", "Pay": "支付方式", "PayPal": "PayPal", @@ -1080,6 +1085,8 @@ "Address line": "地址", "Affiliation": "工作单位", "Affiliation - Tooltip": "工作单位,如公司、组织名称", + "Balance": "余额", + "Balance - Tooltip": "用户的余额", "Bio": "自我介绍", "Bio - Tooltip": "用户的自我介绍", "Birthday": "生日", diff --git a/web/src/table/AccountTable.js b/web/src/table/AccountTable.js index 98dd8524..af00412a 100644 --- a/web/src/table/AccountTable.js +++ b/web/src/table/AccountTable.js @@ -88,6 +88,7 @@ class AccountTable extends React.Component { {name: "Gender", label: i18next.t("user:Gender")}, {name: "Birthday", label: i18next.t("user:Birthday")}, {name: "Education", label: i18next.t("user:Education")}, + {name: "Balance", label: i18next.t("user:Balance")}, {name: "Score", label: i18next.t("user:Score")}, {name: "Karma", label: i18next.t("user:Karma")}, {name: "Ranking", label: i18next.t("user:Ranking")},