diff --git a/src/VirtoCommerce.SubscriptionModule.Web/Localizations/de.VirtoCommerce.Subscription.json b/src/VirtoCommerce.SubscriptionModule.Web/Localizations/de.VirtoCommerce.Subscription.json index 0ced6a2..3df9f4e 100644 --- a/src/VirtoCommerce.SubscriptionModule.Web/Localizations/de.VirtoCommerce.Subscription.json +++ b/src/VirtoCommerce.SubscriptionModule.Web/Localizations/de.VirtoCommerce.Subscription.json @@ -1,169 +1,183 @@ { - "subscription": { - "main-menu-title": "Abonnemente", - "blades": { - "subscription-list": { - "title": "Abonnements", - "labels": { - "new-filter": "Neuen Filter hinzufügen", - "unnamed-filter": "Unbenannter Filter", - "number": "Anzahl", - "status": "Status", - "balance": "Kontostand", - "customer": "Teilnehmer", - "startDate": "Periodenstart", - "endDate": "Periodende" - }, - "placeholders": { - "select-filter": "Filter wählen" - } - }, - "filter-detail": { - "subtitle": "Filter bearbeiten", - "new-title": "Neuer Filter", - "new-subtitle": "Neuen Filter erstellen", - "labels": { - "name": "Name des Filters", - "name_": "Wie werden Sie diesen Filter nennen?", - "criteria": "Filterkriterien", - "from": "Aktiv ab", - "to": "Aktiv bis" - }, - "placeholders": { - "all": "Nicht angegeben" - } - }, - "subscription-detail": { - "title": "Abonnement {{number}}", - "subtitle": "Abonnementdetails und zugehörige Dokumente", - "labels": { - "status": "Status", - "balance": "Kontostand", - "billing-date": "Nächster Rechnungsdatum", - "trial-expiration": "Ablauf des Verfallsdatums", - "expiration": "Ablaufdatum des Abonnements", - "employee": "Neue Bestellung zuordnen zu", - "number": "Anzahl", - "coupon-code": "Gutscheincode", - "prorate": "Prorate Änderungen" - } - }, - "schedule-detail": { - "title": "Auto-Auftragsablaufplan", - "title-new": "Neue automatische auftragsablaufplan", - "subtitle-new": "Neue automatische Erstellung Auftragsablaufplan", - "labels": { - "charge-every": "Bestellen jede", - "trial-period": "Zeitraum (Tage)" - }, - "placeholders": { - "select": "Wählen Sie aus..." - } - }, - "subscriptionOrder-list": { - "title": "Abonnement Bestellungen" - } + "subscription": { + "main-menu-title": "Abonnements", + "blades": { + "subscription-list": { + "title": "Abonnements", + "labels": { + "new-filter": "Neuen Filter hinzufügen", + "unnamed-filter": "Unbenannter Filter", + "number": "Nummer", + "status": "Status", + "balance": "Kontostand", + "customer": "Abonnent", + "startDate": "Zeitraum Beginn", + "endDate": "Zeitraum Ende" }, - "widgets": { - "subscription-orders": { - "title": "Bestellungen" - }, - "orderDynamicProperty": { - "title": "Um dynamische Eigenschaften" - }, - "product-schedule": { - "no-schedule": "Auto-auftragsablaufplan nicht definiert", - "info": "Auto - um jeden {{intervalCount}} {{interval}}" - }, - "order-subscription": { - "title": "Öffene Abonnement {{ number }}", - "title-no": "Nicht im Abonnement" - }, - "notificationsWidget": { - "title": "Benachrichtigung", - "blade-subtitle": "Benachrichtigungsservice", - "blade-title": "Abonnement Benachrichtigungstypliste" - }, - "notificationsLogWidget": { - "title": "Benachrichtigungsprotokoll", - "blade-subtitle": "Benachrichtigungsprotokoll", - "blade-title": "Abonnement das Senden von Benachrichtigungen anmelden" - } + "placeholders": { + "select-filter": "Filter auswählen" + } + }, + "filter-detail": { + "subtitle": "Filter bearbeiten", + "new-title": "Neuer Filter", + "new-subtitle": "Neuen Filter erstellen", + "labels": { + "name": "Filtername", + "name_": "Wie möchten Sie diesen Filter nennen?", + "criteria": "Filterkriterien", + "from": "Aktiv von", + "to": "Aktiv bis", + "outer-id": "Externe ID" }, - "dialogs": { - "subscription-delete": { - "title": "Bestätigung löschen", - "message": "Möchten Sie die ausgewählten Abonnements löschen?", - "warning": "WARNUNG: Diese Änderung ist endgültig und kann nicht rückgängig gemacht werden. Es kann zu Datenverlust führen.", - "instruction": "Geben Sie 'Ja' ein um zu löschen." - }, - "subscription-save": { - "title": "Änderungen speichern", - "message": "Das Abonnement wurde geändert. Möchten Sie die Änderungen speichern?" - }, - "schedule-delete": { - "title": "Bestätigung löschen", - "message": "Möchten Sie diese Bestellung Zeitplan wirklich löschen?" - }, - "schedule-save": { - "title": "Änderungen speichern", - "message": "Der Zeitplan wurde geändert. Möchten Sie die Änderungen speichern?" - }, - "new-order": { - "title": "Bestätigung", - "message": "Eine neue Bestellung für dieses Abonnement anlegen?" - } + "placeholders": { + "all": "Nicht angegeben" + } + }, + "subscription-detail": { + "title": "Abonnement {{number}}", + "subtitle": "Abonnementdetails und zugehörige Dokumente", + "labels": { + "status": "Status", + "balance": "Kontostand", + "billing-date": "Nächstes Abrechnungsdatum", + "trial-expiration": "Ablaufdatum der Testphase", + "expiration": "Ablaufdatum des Abonnements", + "employee": "Neuen Auftrag zuweisen an", + "number": "Nummer", + "coupon-code": "Gutscheincode", + "prorate": "Änderungen anteilig berechnen" + } + }, + "schedule-detail": { + "title": "Automatischer Bestellplan", + "title-new": "Neuer automatischer Bestellplan", + "subtitle-new": "Neuen automatischen Bestellplan erstellen", + "labels": { + "charge-every": "Bestellung alle", + "trial-period": "Testzeitraum (Tage)" }, - "commands": { - "new-order": "Bestellung anlegen" + "placeholders": { + "select": "Auswählen" } + }, + "subscriptionOrder-list": { + "title": "Abonnementbestellungen" + } }, - - "permissions": { - "subscription:access": "Abonnement-Menü öffnen", - "subscription:create": "Erstellen Sie Abonnementdaten", - "subscription:read": "Abonnementdaten anzeigen", - "subscription:update": "Abonnementdaten aktualisieren", - "subscription:delete": "Abonnement löschen", - "paymentplan:manage": "Zahlungsplan verwalten" + "widgets": { + "subscription-orders": { + "title": "Bestellungen" + }, + "orderDynamicProperty": { + "title": "Dynamische Bestelleigenschaften" + }, + "product-schedule": { + "no-schedule": "Kein automatischer Bestellplan definiert", + "info": "Automatische Bestellung alle {{intervalCount}} {{interval}}" + }, + "order-subscription": { + "title": "Abonnement {{ number }} öffnen", + "title-no": "Nicht durch Abonnement" + }, + "notificationsWidget": { + "title": "Benachrichtigung", + "blade-subtitle": "Benachrichtigungsdienst", + "blade-title": "Liste der Abonnement-Benachrichtigungstypen" + }, + "notificationsLogWidget": { + "title": "Benachrichtigungsprotokoll", + "blade-subtitle": "Benachrichtigungsprotokoll", + "blade-title": "Protokoll des Versands von Abonnement-Benachrichtigungen" + } }, - - "settings": { - "Subscription.EnableSubscriptions": { - "title": "Abonnements aktivieren", - "description": "Flag zum Aktivieren von Abonnements im Geschäft" - }, - "Subscription.Status": { - "title": "Abonnementsstatus", - "description": "Abonnementsstatus" - }, - "Subscription.SubscriptionNewNumberTemplate": { - "title": "Abonnementnummernvorlage", - "description": "Die Vorlage (Muster), die zum Generieren der Nummer für das neue Abonnement verwendet wird. Parameter: 0 - Datum (die UTC-Zeit der Nummerngenerierung); 1 - die Sequenznummer." - }, - "Subscription.EnableSubscriptionProcessJob": { - "title": "Aktivieren Sie den Abonnementprozess", - "description": "Flag zum Aktivieren des automatischen Abonnementprozesses (Neustart erforderlich)" - }, - "Subscription.EnableSubscriptionOrdersCreateJob": { - "title": "Aktivieren Sie die Erstellung von Abonnementbestellungen", - "description": "Flag zum Aktivieren der automatischen Auftragserstellung für die Subskription (Neustart erforderlich)" - }, - "Subscription.CronExpression": { - "title": "Cron-Ausdruck zum Planen der Ausführung von Subskriptionsverarbeitungsjobs (Neustart erforderlich)", - "description": "Der Wert ist ein regulärer CRON-Ausdruck.\nUm alle x Minuten eine Aufgabe auszuführen, benutzen Sie \"0/x * * * *\".\nUm ihn alle X Stunden um 00 Minuten auszuführen, verwenden Sie \"0 */X * * *\". Sie können auch Minuten angeben: \"15 */x * * *\".\nUm es alle X Tage um Mitternacht auszuführen, benutzen Sie \"0 0 */x * *\"." - }, - "Subscription.CronExpressionOrdersJob": { - "title": "Cron-Ausdruck für die Planung der Ausführung von Jobs zur Erstellung von Abonnementbestellungen (Neustart erforderlich)", - "description": "Der Wert ist ein regulärer CRON-Ausdruck.\nUm alle x Minuten eine Aufgabe auszuführen, benutzen Sie \"0/x * * * *\".\nUm ihn alle X Stunden um 00 Minuten auszuführen, verwenden Sie \"0 */X * * *\". Sie können auch Minuten angeben: \"15 */x * * *\".\nUm es alle X Tage um Mitternacht auszuführen, benutzen Sie \"0 0 */x * *\"." - }, - "Subscription.PastDue.Delay": { - "title": "Überfällige Verzögerung in Tagen", - "description": "Verzögerung in Tagen, an denen unbezahlte Abonnements den PastDue-Status erhalten" - }, - "Subscription.ExportImport.Description": { - "title": "Beschreibung exportieren/importieren", - "description": "Modulbeschreibung im Plattform-Export/Import-Assistenten" - } + "dialogs": { + "subscription-delete": { + "title": "Löschbestätigung", + "message": "Möchten Sie die ausgewählten Abonnements wirklich löschen?", + "warning": "WARNUNG: Diese Änderung ist dauerhaft und kann nicht rückgängig gemacht werden. Es kann zu Datenverlust führen", + "instruction": "Geben Sie 'yes' ein, um zu löschen" + }, + "subscription-save": { + "title": "Änderungen speichern", + "message": "Das Abonnement wurde geändert. Möchten Sie die Änderungen speichern?" + }, + "schedule-delete": { + "title": "Löschbestätigung", + "message": "Möchten Sie diesen Bestellplan wirklich löschen?" + }, + "schedule-save": { + "title": "Änderungen speichern", + "message": "Der Plan wurde geändert. Möchten Sie die Änderungen speichern?" + }, + "new-order": { + "title": "Bestätigung", + "message": "Möchten Sie eine neue Bestellung für dieses Abonnement erstellen?" + } + }, + "commands": { + "new-order": "Bestellung erstellen" + } + }, + "permissions": { + "subscription:access": "Abonnementmenü öffnen", + "subscription:create": "Abonnementdaten erstellen", + "subscription:read": "Abonnementdaten anzeigen", + "subscription:update": "Abonnementdaten aktualisieren", + "subscription:delete": "Abonnement löschen", + "paymentplan:manage": "Zahlungsplan verwalten" + }, + "settings": { + "Subscription.EnableSubscriptions": { + "title": "Aktivierung von Abonnements", + "description": "Abonnements für Ihren Shop aktivieren/deaktivieren" + }, + "Subscription.Status": { + "title": "Abonnementstatus", + "description": "Verwalten Sie den Abonnementstatus, indem Sie auf das Stiftsymbol klicken" + }, + "Subscription.SubscriptionNewNumberTemplate": { + "title": "Vorlage für Abonnementnummer", + "description": "Konfigurieren Sie die Vorlage zur Generierung neuer Abonnementnummern. Parameter: 0 - Datum (die UTC-Zeit der Nummerngenerierung); 1 - die Sequenznummer" + }, + "Subscription.EnableSubscriptionProcessJob": { + "title": "Aktivierung des automatischen Abonnementprozesses", + "description": "Automatischen Abonnementprozess aktivieren/deaktivieren" + }, + "Subscription.EnableSubscriptionOrdersCreateJob": { + "title": "Aktivierung der Erstellung von Abonnementbestellungen", + "description": "Automatische Erstellung von Bestellungen für Abonnements aktivieren/deaktivieren" + }, + "Subscription.CronExpression": { + "title": "Cron-Ausdruck für die Planung des Abonnementverarbeitungsjobs", + "description": "Definieren Sie einen Cron-Ausdruck, um Abonnementverarbeitungsaufgaben zu planen.\nBeispiele:\n- Alle X Minuten ausführen: \"0/x * * * *\"\n- Alle X Stunden um 00 Minuten ausführen: \"0 */X * * *\"\n- Minuten angeben: \"15 */x * * *\"\n- Alle X Tage um Mitternacht ausführen: \"0 0 */x * *\"" + }, + "Subscription.CronExpressionOrdersJob": { + "title": "Cron-Ausdruck für die Planung der Erstellung von Abonnementbestellungen", + "description": "Definieren Sie einen Cron-Ausdruck, um Aufgaben zur Erstellung von Abonnementbestellungen zu planen.\nBeispiele:\n- Alle X Minuten ausführen: \"0/x * * * *\"\n- Alle X Stunden um 00 Minuten ausführen: \"0 */X * * *\"\n- Minuten angeben: \"15 */x * * *\"\n- Alle X Tage um Mitternacht ausführen: \"0 0 */x * *\"" + }, + "Subscription.PastDue.Delay": { + "title": "Verzögerung bei überfälligen Zahlungen in Tagen", + "description": "Geben Sie die Anzahl der Tage an, nach denen unbezahlte Abonnements als 'überfällig' gelten" + }, + "Subscription.ExportImport.Description": { + "title": "Beschreibung für Export/Import", + "description": "Geben Sie eine Beschreibung des Moduls für den Export/Import-Assistenten der Plattform an" + } + }, + "module": { + "VirtoCommerce.Subscription": { + "description": "Export/Import von Abonnements" + } + }, + "notificationTypes": { + "NewSubscriptionEmailNotification": { + "displayName": "Benachrichtigung über neues Abonnement", + "description": "Diese Benachrichtigung wird an den Kunden gesendet, wenn ein neues Abonnement erstellt wird" + }, + "SubscriptionCanceledEmailNotification": { + "displayName": "Benachrichtigung über gekündigtes Abonnement", + "description": "Diese Benachrichtigung wird an den Kunden gesendet, wenn ein Abonnement gekündigt wird" } -} + } +} \ No newline at end of file diff --git a/src/VirtoCommerce.SubscriptionModule.Web/Localizations/en.VirtoCommerce.Subscription.json b/src/VirtoCommerce.SubscriptionModule.Web/Localizations/en.VirtoCommerce.Subscription.json index aff52a5..ad7484d 100644 --- a/src/VirtoCommerce.SubscriptionModule.Web/Localizations/en.VirtoCommerce.Subscription.json +++ b/src/VirtoCommerce.SubscriptionModule.Web/Localizations/en.VirtoCommerce.Subscription.json @@ -58,11 +58,11 @@ "trial-period": "Trial period (days)" }, "placeholders": { - "select": "Select..." + "select": "Select" } }, "subscriptionOrder-list": { - "title": "Subscription Orders" + "title": "Subscription orders" } }, "widgets": { @@ -70,14 +70,14 @@ "title": "Orders" }, "orderDynamicProperty": { - "title": "Order Dynamic Properties" + "title": "Order dynamic properties" }, "product-schedule": { "no-schedule": "Auto-order schedule not defined", "info": "Auto-order every {{intervalCount}} {{interval}}" }, "order-subscription": { - "title": "Open Subscription {{ number }}", + "title": "Open subscription {{ number }}", "title-no": "Not by subscription" }, "notificationsWidget": { @@ -95,24 +95,24 @@ "subscription-delete": { "title": "Delete confirmation", "message": "Are you sure you want to delete selected subscriptions?", - "warning": "WARNING: this change is permanent and can't be undone afterwards. It can lead to data loss.", + "warning": "WARNING: This change is permanent and cannot be undone. It may cause data loss", "instruction": "Enter 'yes' to delete" }, "subscription-save": { "title": "Save changes", - "message": "The Subscription has been modified. Do you want to save changes?" + "message": "The subscription has been modified. Do you want to save changes?" }, "schedule-delete": { "title": "Delete confirmation", - "message": "Are you sure you want to delete this Order Schedule?" + "message": "Are you sure you want to delete this order schedule?" }, "schedule-save": { "title": "Save changes", - "message": "The Schedule has been modified. Do you want to save changes?" + "message": "The schedule has been modified. Do you want to save changes?" }, "new-order": { "title": "Confirmation", - "message": "Create a new Order for this Subscription?" + "message": "Create a new order for this subscription?" } }, "commands": { @@ -129,55 +129,55 @@ }, "settings": { "Subscription.EnableSubscriptions": { - "title": "Enable subscriptions", - "description": "Flag for activating subscriptions in store" + "title": "Subscriptions activation", + "description": "Enable/ disable subscriptions for your store" }, "Subscription.Status": { "title": "Subscription statuses", - "description": "Subscription statuses" + "description": "Manage subscription statuses by clicking on a pencil icon" }, "Subscription.SubscriptionNewNumberTemplate": { "title": "Subscription number template", - "description": "The template (pattern) that will be used to generate the number for new Subscription. Parameters: 0 - date (the UTC time of number generation); 1 - the sequence number." + "description": "Configure template to generate new subscription number. Parameters: 0 - date (the UTC time of number generation); 1 - the sequence number" }, "Subscription.EnableSubscriptionProcessJob": { - "title": "Enable subscription process", - "description": "Flag for activating automatic subscription process" + "title": "Automatic subscription process activation", + "description": "Enable/ disable automatic subscription process" }, "Subscription.EnableSubscriptionOrdersCreateJob": { - "title": "Enable subscription order creation", - "description": "Flag for activating automatic order creation for subscription" + "title": "Subscription order creation activation", + "description": "Enable/ disabe automatic order creation for subscriptions" }, "Subscription.CronExpression": { - "title": "Cron expression for scheduling subscription processing job execution", - "description": "The value is a regular CRON expression.\nTo run task every X minutes please use \"0/x * * * *\".\nTo run it every X hours at 00 minutes use \"0 */X * * *\". You can also specify minutes: \"15 */x * * *\"\nTo run it every X days at midnight use \"0 0 */x * *\"" + "title": "Cron expression for scheduling subscription processing job", + "description": "Define a cron expression to schedule subscription processing tasks.\nExamples:\n- Run every X minutes: \"0/x * * * *\"\n- Run every X hours at 00 minutes: \"0 */X * * *\"\n- Specify minutes: \"15 */x * * *\"\n- Run every X days at midnight: \"0 0 */x * *\"" }, "Subscription.CronExpressionOrdersJob": { - "title": "Cron expression for scheduling subscription order creation job execution", - "description": "The value is a regular CRON expression.\nTo run task every X minutes please use \"0/x * * * *\".\nTo run it every X hours at 00 minutes use \"0 */X * * *\". You can also specify minutes: \"15 */x * * *\"\nTo run it every X days at midnight use \"0 0 */x * *\"" + "title": "Cron expression for scheduling subscription order creation job", + "description": "Define a cron expression to schedule subscription order creation tasks.\nExamples:\n- Run every X minutes: \"0/x * * * *\"\n- Run every X hours at 00 minutes: \"0 */X * * *\"\n- Specify minutes: \"15 */x * * *\"\n- Run every X days at midnight: \"0 0 */x * *\"" }, "Subscription.PastDue.Delay": { "title": "Past due delay in days", - "description": "Delay in days when unpaid subscription obtain PastDue status" + "description": "Specify the number of days after which unpaid subscriptions become 'Past due'" }, "Subscription.ExportImport.Description": { "title": "Export/Import description", - "description": "Module description in platform export/import wizard" + "description": "Provide description of the module for the platform export/import wizard" } }, "module": { "VirtoCommerce.Subscription": { - "description": "Export/Import of subscriptions" + "description": "Export/ import of subscriptions" } }, "notificationTypes": { "NewSubscriptionEmailNotification": { "displayName": "New subscription notification", - "description": "This notification sends by email to client when created new subscription" + "description": "This notification is emailed to client when new subscription is created" }, "SubscriptionCanceledEmailNotification": { - "displayName": "Subscription canceled notification", - "description": "This notification sends by email to client when subscription was canceled" + "displayName": "Canceled subscription notification", + "description": "This notification is emailed to client when subscription is canceled" } } -} +} \ No newline at end of file diff --git a/src/VirtoCommerce.SubscriptionModule.Web/Localizations/es.VirtoCommerce.Subscription.json b/src/VirtoCommerce.SubscriptionModule.Web/Localizations/es.VirtoCommerce.Subscription.json new file mode 100644 index 0000000..6105e09 --- /dev/null +++ b/src/VirtoCommerce.SubscriptionModule.Web/Localizations/es.VirtoCommerce.Subscription.json @@ -0,0 +1,183 @@ +{ + "subscription": { + "main-menu-title": "Suscripciones", + "blades": { + "subscription-list": { + "title": "Suscripciones", + "labels": { + "new-filter": "Agregar nuevo filtro", + "unnamed-filter": "Filtro sin nombre", + "number": "Número", + "status": "Estado", + "balance": "Saldo", + "customer": "Suscriptor", + "startDate": "Inicio del período", + "endDate": "Fin del período" + }, + "placeholders": { + "select-filter": "Seleccionar filtro" + } + }, + "filter-detail": { + "subtitle": "Editar filtro", + "new-title": "Nuevo filtro", + "new-subtitle": "Crear nuevo filtro", + "labels": { + "name": "Nombre del filtro", + "name_": "¿Cómo llamará a este filtro?", + "criteria": "Criterios del filtro", + "from": "Activo desde", + "to": "Activo hasta", + "outer-id": "ID externo" + }, + "placeholders": { + "all": "No especificado" + } + }, + "subscription-detail": { + "title": "Suscripción {{number}}", + "subtitle": "Detalles de la suscripción y documentos relacionados", + "labels": { + "status": "Estado", + "balance": "Saldo", + "billing-date": "Próxima fecha de facturación", + "trial-expiration": "Fecha de expiración de la prueba", + "expiration": "Fecha de expiración de la suscripción", + "employee": "Asignar nuevo pedido a", + "number": "Número", + "coupon-code": "Código de cupón", + "prorate": "Prorratear cambios" + } + }, + "schedule-detail": { + "title": "Horario de pedido automático", + "title-new": "Nuevo horario de pedido automático", + "subtitle-new": "Crear nuevo horario de pedido automático", + "labels": { + "charge-every": "Ordenar cada", + "trial-period": "Período de prueba (días)" + }, + "placeholders": { + "select": "Seleccionar" + } + }, + "subscriptionOrder-list": { + "title": "Pedidos de suscripción" + } + }, + "widgets": { + "subscription-orders": { + "title": "Pedidos" + }, + "orderDynamicProperty": { + "title": "Propiedades dinámicas del pedido" + }, + "product-schedule": { + "no-schedule": "Horario de pedido automático no definido", + "info": "Pedido automático cada {{intervalCount}} {{interval}}" + }, + "order-subscription": { + "title": "Abrir suscripción {{ number }}", + "title-no": "No por suscripción" + }, + "notificationsWidget": { + "title": "Notificación", + "blade-subtitle": "Servicio de notificaciones", + "blade-title": "Lista de tipos de notificación de suscripción" + }, + "notificationsLogWidget": { + "title": "Registro de notificaciones", + "blade-subtitle": "Registro de notificaciones", + "blade-title": "Registro de envío de notificaciones de suscripción" + } + }, + "dialogs": { + "subscription-delete": { + "title": "Confirmación de eliminación", + "message": "¿Está seguro de que desea eliminar las suscripciones seleccionadas?", + "warning": "ADVERTENCIA: Este cambio es permanente y no se puede deshacer. Puede causar pérdida de datos", + "instruction": "Ingrese 'yes' para eliminar" + }, + "subscription-save": { + "title": "Guardar cambios", + "message": "La suscripción ha sido modificada. ¿Desea guardar los cambios?" + }, + "schedule-delete": { + "title": "Confirmación de eliminación", + "message": "¿Está seguro de que desea eliminar este horario de pedido?" + }, + "schedule-save": { + "title": "Guardar cambios", + "message": "El horario ha sido modificado. ¿Desea guardar los cambios?" + }, + "new-order": { + "title": "Confirmación", + "message": "¿Crear un nuevo pedido para esta suscripción?" + } + }, + "commands": { + "new-order": "Crear pedido" + } + }, + "permissions": { + "subscription:access": "Abrir menú de suscripciones", + "subscription:create": "Crear datos de suscripción", + "subscription:read": "Ver datos de suscripción", + "subscription:update": "Actualizar datos de suscripción", + "subscription:delete": "Eliminar suscripción", + "paymentplan:manage": "Gestionar plan de pago" + }, + "settings": { + "Subscription.EnableSubscriptions": { + "title": "Activación de suscripciones", + "description": "Habilitar/deshabilitar suscripciones para su tienda" + }, + "Subscription.Status": { + "title": "Estados de suscripción", + "description": "Gestionar estados de suscripción haciendo clic en un icono de lápiz" + }, + "Subscription.SubscriptionNewNumberTemplate": { + "title": "Plantilla de número de suscripción", + "description": "Configurar plantilla para generar nuevo número de suscripción. Parámetros: 0 - fecha (la hora UTC de generación del número); 1 - el número de secuencia" + }, + "Subscription.EnableSubscriptionProcessJob": { + "title": "Activación del proceso automático de suscripción", + "description": "Habilitar/deshabilitar el proceso automático de suscripción" + }, + "Subscription.EnableSubscriptionOrdersCreateJob": { + "title": "Activación de creación de pedidos de suscripción", + "description": "Habilitar/deshabilitar la creación automática de pedidos para suscripciones" + }, + "Subscription.CronExpression": { + "title": "Expresión Cron para programar el trabajo de procesamiento de suscripciones", + "description": "Definir una expresión cron para programar tareas de procesamiento de suscripciones.\nEjemplos:\n- Ejecutar cada X minutos: \"0/x * * * *\"\n- Ejecutar cada X horas a los 00 minutos: \"0 */X * * *\"\n- Especificar minutos: \"15 */x * * *\"\n- Ejecutar cada X días a medianoche: \"0 0 */x * *\"" + }, + "Subscription.CronExpressionOrdersJob": { + "title": "Expresión Cron para programar el trabajo de creación de pedidos de suscripción", + "description": "Definir una expresión cron para programar tareas de creación de pedidos de suscripción.\nEjemplos:\n- Ejecutar cada X minutos: \"0/x * * * *\"\n- Ejecutar cada X horas a los 00 minutos: \"0 */X * * *\"\n- Especificar minutos: \"15 */x * * *\"\n- Ejecutar cada X días a medianoche: \"0 0 */x * *\"" + }, + "Subscription.PastDue.Delay": { + "title": "Retraso de vencimiento en días", + "description": "Especificar el número de días después de los cuales las suscripciones no pagadas se convierten en 'Vencidas'" + }, + "Subscription.ExportImport.Description": { + "title": "Descripción de exportación/importación", + "description": "Proporcionar descripción del módulo para el asistente de exportación/importación de la plataforma" + } + }, + "module": { + "VirtoCommerce.Subscription": { + "description": "Exportación/importación de suscripciones" + } + }, + "notificationTypes": { + "NewSubscriptionEmailNotification": { + "displayName": "Notificación de nueva suscripción", + "description": "Esta notificación se envía por correo electrónico al cliente cuando se crea una nueva suscripción" + }, + "SubscriptionCanceledEmailNotification": { + "displayName": "Notificación de suscripción cancelada", + "description": "Esta notificación se envía por correo electrónico al cliente cuando se cancela una suscripción" + } + } +} \ No newline at end of file diff --git a/src/VirtoCommerce.SubscriptionModule.Web/Localizations/fr.VirtoCommerce.Subscription.json b/src/VirtoCommerce.SubscriptionModule.Web/Localizations/fr.VirtoCommerce.Subscription.json new file mode 100644 index 0000000..9219935 --- /dev/null +++ b/src/VirtoCommerce.SubscriptionModule.Web/Localizations/fr.VirtoCommerce.Subscription.json @@ -0,0 +1,183 @@ +{ + "subscription": { + "main-menu-title": "Abonnements", + "blades": { + "subscription-list": { + "title": "Abonnements", + "labels": { + "new-filter": "Ajouter un nouveau filtre", + "unnamed-filter": "Filtre sans nom", + "number": "Numéro", + "status": "Statut", + "balance": "Solde", + "customer": "Abonné", + "startDate": "Début de la période", + "endDate": "Fin de la période" + }, + "placeholders": { + "select-filter": "Sélectionner un filtre" + } + }, + "filter-detail": { + "subtitle": "Modifier le filtre", + "new-title": "Nouveau filtre", + "new-subtitle": "Créer un nouveau filtre", + "labels": { + "name": "Nom du filtre", + "name_": "Comment appellerez-vous ce filtre ?", + "criteria": "Critères du filtre", + "from": "Actif depuis", + "to": "Actif jusqu'à", + "outer-id": "ID externe" + }, + "placeholders": { + "all": "Non spécifié" + } + }, + "subscription-detail": { + "title": "Abonnement {{number}}", + "subtitle": "Détails de l'abonnement et documents associés", + "labels": { + "status": "Statut", + "balance": "Solde", + "billing-date": "Prochaine date de facturation", + "trial-expiration": "Date d'expiration de l'essai", + "expiration": "Date d'expiration de l'abonnement", + "employee": "Attribuer une nouvelle commande à", + "number": "Numéro", + "coupon-code": "Code promo", + "prorate": "Proratiser les modifications" + } + }, + "schedule-detail": { + "title": "Calendrier de commande automatique", + "title-new": "Nouveau calendrier de commande automatique", + "subtitle-new": "Créer un nouveau calendrier de commande automatique", + "labels": { + "charge-every": "Commander tous les", + "trial-period": "Période d'essai (jours)" + }, + "placeholders": { + "select": "Sélectionner" + } + }, + "subscriptionOrder-list": { + "title": "Commandes d'abonnement" + } + }, + "widgets": { + "subscription-orders": { + "title": "Commandes" + }, + "orderDynamicProperty": { + "title": "Propriétés dynamiques de la commande" + }, + "product-schedule": { + "no-schedule": "Calendrier de commande automatique non défini", + "info": "Commande automatique tous les {{intervalCount}} {{interval}}" + }, + "order-subscription": { + "title": "Ouvrir l'abonnement {{ number }}", + "title-no": "Pas par abonnement" + }, + "notificationsWidget": { + "title": "Notification", + "blade-subtitle": "Service de notifications", + "blade-title": "Liste des types de notifications d'abonnement" + }, + "notificationsLogWidget": { + "title": "Journal des notifications", + "blade-subtitle": "Journal des notifications", + "blade-title": "Journal d'envoi des notifications d'abonnement" + } + }, + "dialogs": { + "subscription-delete": { + "title": "Confirmation de suppression", + "message": "Êtes-vous sûr de vouloir supprimer les abonnements sélectionnés ?", + "warning": "AVERTISSEMENT : Ce changement est permanent et ne peut pas être annulé. Cela peut entraîner une perte de données", + "instruction": "Entrez 'yes' pour supprimer" + }, + "subscription-save": { + "title": "Enregistrer les modifications", + "message": "L'abonnement a été modifié. Voulez-vous enregistrer les modifications ?" + }, + "schedule-delete": { + "title": "Confirmation de suppression", + "message": "Êtes-vous sûr de vouloir supprimer ce calendrier de commande ?" + }, + "schedule-save": { + "title": "Enregistrer les modifications", + "message": "Le calendrier a été modifié. Voulez-vous enregistrer les modifications ?" + }, + "new-order": { + "title": "Confirmation", + "message": "Créer une nouvelle commande pour cet abonnement ?" + } + }, + "commands": { + "new-order": "Créer une commande" + } + }, + "permissions": { + "subscription:access": "Ouvrir le menu des abonnements", + "subscription:create": "Créer des données d'abonnement", + "subscription:read": "Voir les données d'abonnement", + "subscription:update": "Mettre à jour les données d'abonnement", + "subscription:delete": "Supprimer l'abonnement", + "paymentplan:manage": "Gérer le plan de paiement" + }, + "settings": { + "Subscription.EnableSubscriptions": { + "title": "Activation des abonnements", + "description": "Activer/désactiver les abonnements pour votre boutique" + }, + "Subscription.Status": { + "title": "Statuts d'abonnement", + "description": "Gérer les statuts d'abonnement en cliquant sur une icône de crayon" + }, + "Subscription.SubscriptionNewNumberTemplate": { + "title": "Modèle de numéro d'abonnement", + "description": "Configurer le modèle pour générer un nouveau numéro d'abonnement. Paramètres : 0 - date (l'heure UTC de la génération du numéro) ; 1 - le numéro de séquence" + }, + "Subscription.EnableSubscriptionProcessJob": { + "title": "Activation du processus d'abonnement automatique", + "description": "Activer/désactiver le processus d'abonnement automatique" + }, + "Subscription.EnableSubscriptionOrdersCreateJob": { + "title": "Activation de la création de commandes d'abonnement", + "description": "Activer/désactiver la création automatique de commandes pour les abonnements" + }, + "Subscription.CronExpression": { + "title": "Expression Cron pour planifier le travail de traitement des abonnements", + "description": "Définir une expression cron pour planifier les tâches de traitement des abonnements.\nExemples :\n- Exécuter toutes les X minutes : \"0/x * * * *\"\n- Exécuter toutes les X heures à 00 minutes : \"0 */X * * *\"\n- Spécifier les minutes : \"15 */x * * *\"\n- Exécuter tous les X jours à minuit : \"0 0 */x * *\"" + }, + "Subscription.CronExpressionOrdersJob": { + "title": "Expression Cron pour planifier le travail de création de commandes d'abonnement", + "description": "Définir une expression cron pour planifier les tâches de création de commandes d'abonnement.\nExemples :\n- Exécuter toutes les X minutes : \"0/x * * * *\"\n- Exécuter toutes les X heures à 00 minutes : \"0 */X * * *\"\n- Spécifier les minutes : \"15 */x * * *\"\n- Exécuter tous les X jours à minuit : \"0 0 */x * *\"" + }, + "Subscription.PastDue.Delay": { + "title": "Délai de retard en jours", + "description": "Spécifiez le nombre de jours après lesquels les abonnements impayés deviennent 'En retard'" + }, + "Subscription.ExportImport.Description": { + "title": "Description de l'exportation/importation", + "description": "Fournir une description du module pour l'assistant d'exportation/importation de la plateforme" + } + }, + "module": { + "VirtoCommerce.Subscription": { + "description": "Exportation/importation des abonnements" + } + }, + "notificationTypes": { + "NewSubscriptionEmailNotification": { + "displayName": "Notification de nouvel abonnement", + "description": "Cette notification est envoyée par e-mail au client lorsqu'un nouvel abonnement est créé" + }, + "SubscriptionCanceledEmailNotification": { + "displayName": "Notification d'abonnement annulé", + "description": "Cette notification est envoyée par e-mail au client lorsqu'un abonnement est annulé" + } + } +} \ No newline at end of file diff --git a/src/VirtoCommerce.SubscriptionModule.Web/Localizations/it.VirtoCommerce.Subscription.json b/src/VirtoCommerce.SubscriptionModule.Web/Localizations/it.VirtoCommerce.Subscription.json new file mode 100644 index 0000000..501cfc3 --- /dev/null +++ b/src/VirtoCommerce.SubscriptionModule.Web/Localizations/it.VirtoCommerce.Subscription.json @@ -0,0 +1,183 @@ +{ + "subscription": { + "main-menu-title": "Abbonamenti", + "blades": { + "subscription-list": { + "title": "Abbonamenti", + "labels": { + "new-filter": "Aggiungi nuovo filtro", + "unnamed-filter": "Filtro senza nome", + "number": "Numero", + "status": "Stato", + "balance": "Saldo", + "customer": "Abbonato", + "startDate": "Inizio periodo", + "endDate": "Fine periodo" + }, + "placeholders": { + "select-filter": "Seleziona filtro" + } + }, + "filter-detail": { + "subtitle": "Modifica filtro", + "new-title": "Nuovo filtro", + "new-subtitle": "Crea nuovo filtro", + "labels": { + "name": "Nome del filtro", + "name_": "Come chiamerai questo filtro?", + "criteria": "Criteri del filtro", + "from": "Attivo da", + "to": "Attivo fino a", + "outer-id": "ID esterno" + }, + "placeholders": { + "all": "Non specificato" + } + }, + "subscription-detail": { + "title": "Abbonamento {{number}}", + "subtitle": "Dettagli dell'abbonamento e documenti correlati", + "labels": { + "status": "Stato", + "balance": "Saldo", + "billing-date": "Prossima data di fatturazione", + "trial-expiration": "Data di scadenza della prova", + "expiration": "Data di scadenza dell'abbonamento", + "employee": "Assegna nuovo ordine a", + "number": "Numero", + "coupon-code": "Codice coupon", + "prorate": "Prorata modifiche" + } + }, + "schedule-detail": { + "title": "Programma di ordine automatico", + "title-new": "Nuovo programma di ordine automatico", + "subtitle-new": "Crea nuovo programma di ordine automatico", + "labels": { + "charge-every": "Ordina ogni", + "trial-period": "Periodo di prova (giorni)" + }, + "placeholders": { + "select": "Seleziona" + } + }, + "subscriptionOrder-list": { + "title": "Ordini di abbonamento" + } + }, + "widgets": { + "subscription-orders": { + "title": "Ordini" + }, + "orderDynamicProperty": { + "title": "Proprietà dinamiche dell'ordine" + }, + "product-schedule": { + "no-schedule": "Programma di ordine automatico non definito", + "info": "Ordine automatico ogni {{intervalCount}} {{interval}}" + }, + "order-subscription": { + "title": "Apri abbonamento {{ number }}", + "title-no": "Non per abbonamento" + }, + "notificationsWidget": { + "title": "Notifica", + "blade-subtitle": "Servizio di notifiche", + "blade-title": "Elenco dei tipi di notifica di abbonamento" + }, + "notificationsLogWidget": { + "title": "Registro delle notifiche", + "blade-subtitle": "Registro delle notifiche", + "blade-title": "Registro di invio delle notifiche di abbonamento" + } + }, + "dialogs": { + "subscription-delete": { + "title": "Conferma eliminazione", + "message": "Sei sicuro di voler eliminare gli abbonamenti selezionati?", + "warning": "ATTENZIONE: Questa modifica è permanente e non può essere annullata. Potrebbe causare perdita di dati", + "instruction": "Inserisci 'yes' per eliminare" + }, + "subscription-save": { + "title": "Salva modifiche", + "message": "L'abbonamento è stato modificato. Vuoi salvare le modifiche?" + }, + "schedule-delete": { + "title": "Conferma eliminazione", + "message": "Sei sicuro di voler eliminare questo programma di ordine?" + }, + "schedule-save": { + "title": "Salva modifiche", + "message": "Il programma è stato modificato. Vuoi salvare le modifiche?" + }, + "new-order": { + "title": "Conferma", + "message": "Creare un nuovo ordine per questo abbonamento?" + } + }, + "commands": { + "new-order": "Crea ordine" + } + }, + "permissions": { + "subscription:access": "Apri menu abbonamenti", + "subscription:create": "Crea dati di abbonamento", + "subscription:read": "Visualizza dati di abbonamento", + "subscription:update": "Aggiorna dati di abbonamento", + "subscription:delete": "Elimina abbonamento", + "paymentplan:manage": "Gestisci piano di pagamento" + }, + "settings": { + "Subscription.EnableSubscriptions": { + "title": "Attivazione degli abbonamenti", + "description": "Abilita/disabilita abbonamenti per il tuo negozio" + }, + "Subscription.Status": { + "title": "Stati dell'abbonamento", + "description": "Gestisci gli stati dell'abbonamento facendo clic su un'icona a forma di matita" + }, + "Subscription.SubscriptionNewNumberTemplate": { + "title": "Modello di numero di abbonamento", + "description": "Configura il modello per generare un nuovo numero di abbonamento. Parametri: 0 - data (l'ora UTC della generazione del numero); 1 - il numero di sequenza" + }, + "Subscription.EnableSubscriptionProcessJob": { + "title": "Attivazione del processo di abbonamento automatico", + "description": "Abilita/disabilita il processo di abbonamento automatico" + }, + "Subscription.EnableSubscriptionOrdersCreateJob": { + "title": "Attivazione della creazione di ordini di abbonamento", + "description": "Abilita/disabilita la creazione automatica di ordini per gli abbonamenti" + }, + "Subscription.CronExpression": { + "title": "Espressione Cron per pianificare il lavoro di elaborazione degli abbonamenti", + "description": "Definisci un'espressione cron per pianificare le attività di elaborazione degli abbonamenti.\nEsempi:\n- Esegui ogni X minuti: \"0/x * * * *\"\n- Esegui ogni X ore a 00 minuti: \"0 */X * * *\"\n- Specifica i minuti: \"15 */x * * *\"\n- Esegui ogni X giorni a mezzanotte: \"0 0 */x * *\"" + }, + "Subscription.CronExpressionOrdersJob": { + "title": "Espressione Cron per pianificare il lavoro di creazione degli ordini di abbonamento", + "description": "Definisci un'espressione cron per pianificare le attività di creazione degli ordini di abbonamento.\nEsempi:\n- Esegui ogni X minuti: \"0/x * * * *\"\n- Esegui ogni X ore a 00 minuti: \"0 */X * * *\"\n- Specifica i minuti: \"15 */x * * *\"\n- Esegui ogni X giorni a mezzanotte: \"0 0 */x * *\"" + }, + "Subscription.PastDue.Delay": { + "title": "Ritardo di scadenza in giorni", + "description": "Specifica il numero di giorni dopo i quali gli abbonamenti non pagati diventano 'Scaduti'" + }, + "Subscription.ExportImport.Description": { + "title": "Descrizione di esportazione/importazione", + "description": "Fornisci una descrizione del modulo per l'assistente di esportazione/importazione della piattaforma" + } + }, + "module": { + "VirtoCommerce.Subscription": { + "description": "Esportazione/importazione di abbonamenti" + } + }, + "notificationTypes": { + "NewSubscriptionEmailNotification": { + "displayName": "Notifica di nuovo abbonamento", + "description": "Questa notifica viene inviata via email al cliente quando viene creato un nuovo abbonamento" + }, + "SubscriptionCanceledEmailNotification": { + "displayName": "Notifica di abbonamento annullato", + "description": "Questa notifica viene inviata via email al cliente quando un abbonamento viene annullato" + } + } +} \ No newline at end of file diff --git a/src/VirtoCommerce.SubscriptionModule.Web/Localizations/ja.VirtoCommerce.Subscription.json b/src/VirtoCommerce.SubscriptionModule.Web/Localizations/ja.VirtoCommerce.Subscription.json new file mode 100644 index 0000000..91c49e3 --- /dev/null +++ b/src/VirtoCommerce.SubscriptionModule.Web/Localizations/ja.VirtoCommerce.Subscription.json @@ -0,0 +1,183 @@ +{ + "subscription": { + "main-menu-title": "サブスクリプション", + "blades": { + "subscription-list": { + "title": "サブスクリプション", + "labels": { + "new-filter": "新しいフィルターを追加", + "unnamed-filter": "名前のないフィルター", + "number": "番号", + "status": "ステータス", + "balance": "残高", + "customer": "加入者", + "startDate": "期間開始", + "endDate": "期間終了" + }, + "placeholders": { + "select-filter": "フィルターを選択" + } + }, + "filter-detail": { + "subtitle": "フィルターを編集", + "new-title": "新しいフィルター", + "new-subtitle": "新しいフィルターを作成", + "labels": { + "name": "フィルター名", + "name_": "このフィルターを何と呼びますか?", + "criteria": "フィルター基準", + "from": "有効開始", + "to": "有効終了", + "outer-id": "外部ID" + }, + "placeholders": { + "all": "指定なし" + } + }, + "subscription-detail": { + "title": "サブスクリプション {{number}}", + "subtitle": "サブスクリプションの詳細と関連ドキュメント", + "labels": { + "status": "ステータス", + "balance": "残高", + "billing-date": "次の請求日", + "trial-expiration": "試用期限", + "expiration": "サブスクリプションの有効期限", + "employee": "新しい注文を割り当てる", + "number": "番号", + "coupon-code": "クーポンコード", + "prorate": "変更を比例配分" + } + }, + "schedule-detail": { + "title": "自動注文スケジュール", + "title-new": "新しい自動注文スケジュール", + "subtitle-new": "新しい自動注文スケジュールを作成", + "labels": { + "charge-every": "注文間隔", + "trial-period": "試用期間(日)" + }, + "placeholders": { + "select": "選択" + } + }, + "subscriptionOrder-list": { + "title": "サブスクリプション注文" + } + }, + "widgets": { + "subscription-orders": { + "title": "注文" + }, + "orderDynamicProperty": { + "title": "注文の動的プロパティ" + }, + "product-schedule": { + "no-schedule": "自動注文スケジュールが定義されていません", + "info": "自動注文は{{intervalCount}} {{interval}}ごと" + }, + "order-subscription": { + "title": "サブスクリプションを開く {{ number }}", + "title-no": "サブスクリプションによらない" + }, + "notificationsWidget": { + "title": "通知", + "blade-subtitle": "通知サービス", + "blade-title": "サブスクリプション通知タイプ一覧" + }, + "notificationsLogWidget": { + "title": "通知ログ", + "blade-subtitle": "通知ログ", + "blade-title": "サブスクリプション通知送信ログ" + } + }, + "dialogs": { + "subscription-delete": { + "title": "削除確認", + "message": "選択したサブスクリプションを削除してもよろしいですか?", + "warning": "警告:この変更は永久的であり、元に戻すことはできません。データが失われる可能性があります", + "instruction": "'yes'と入力して削除" + }, + "subscription-save": { + "title": "変更を保存", + "message": "サブスクリプションが変更されました。変更を保存しますか?" + }, + "schedule-delete": { + "title": "削除確認", + "message": "この注文スケジュールを削除してもよろしいですか?" + }, + "schedule-save": { + "title": "変更を保存", + "message": "スケジュールが変更されました。変更を保存しますか?" + }, + "new-order": { + "title": "確認", + "message": "このサブスクリプションの新しい注文を作成しますか?" + } + }, + "commands": { + "new-order": "注文を作成" + } + }, + "permissions": { + "subscription:access": "サブスクリプションメニューを開く", + "subscription:create": "サブスクリプションデータを作成", + "subscription:read": "サブスクリプションデータを表示", + "subscription:update": "サブスクリプションデータを更新", + "subscription:delete": "サブスクリプションを削除", + "paymentplan:manage": "支払いプランを管理" + }, + "settings": { + "Subscription.EnableSubscriptions": { + "title": "サブスクリプションの有効化", + "description": "ストアのサブスクリプションを有効/無効にする" + }, + "Subscription.Status": { + "title": "サブスクリプションのステータス", + "description": "鉛筆アイコンをクリックしてサブスクリプションのステータスを管理" + }, + "Subscription.SubscriptionNewNumberTemplate": { + "title": "サブスクリプション番号テンプレート", + "description": "新しいサブスクリプション番号を生成するためのテンプレートを設定します。パラメータ:0 - 日付(番号生成のUTC時間);1 - シーケンス番号" + }, + "Subscription.EnableSubscriptionProcessJob": { + "title": "自動サブスクリプションプロセスの有効化", + "description": "自動サブスクリプションプロセスを有効/無効にする" + }, + "Subscription.EnableSubscriptionOrdersCreateJob": { + "title": "サブスクリプション注文作成の有効化", + "description": "サブスクリプションの自動注文作成を有効/無効にする" + }, + "Subscription.CronExpression": { + "title": "サブスクリプション処理ジョブのスケジューリング用Cron式", + "description": "サブスクリプション処理タスクをスケジュールするためのCron式を定義します。\n例:\n- X分ごとに実行:\"0/x * * * *\"\n- X時間ごとに00分に実行:\"0 */X * * *\"\n- 分を指定:\"15 */x * * *\"\n- X日ごとに真夜中に実行:\"0 0 */x * *\"" + }, + "Subscription.CronExpressionOrdersJob": { + "title": "サブスクリプション注文作成ジョブのスケジューリング用Cron式", + "description": "サブスクリプション注文作成タスクをスケジュールするためのCron式を定義します。\n例:\n- X分ごとに実行:\"0/x * * * *\"\n- X時間ごとに00分に実行:\"0 */X * * *\"\n- 分を指定:\"15 */x * * *\"\n- X日ごとに真夜中に実行:\"0 0 */x * *\"" + }, + "Subscription.PastDue.Delay": { + "title": "延滞遅延日数", + "description": "未払いのサブスクリプションが'延滞'になるまでの日数を指定" + }, + "Subscription.ExportImport.Description": { + "title": "エクスポート/インポートの説明", + "description": "プラットフォームのエクスポート/インポートウィザード用のモジュール説明を提供" + } + }, + "module": { + "VirtoCommerce.Subscription": { + "description": "サブスクリプションのエクスポート/インポート" + } + }, + "notificationTypes": { + "NewSubscriptionEmailNotification": { + "displayName": "新しいサブスクリプション通知", + "description": "新しいサブスクリプションが作成されたときに、この通知がクライアントにメールで送信されます" + }, + "SubscriptionCanceledEmailNotification": { + "displayName": "キャンセルされたサブスクリプション通知", + "description": "サブスクリプションがキャンセルされたときに、この通知がクライアントにメールで送信されます" + } + } +} \ No newline at end of file diff --git a/src/VirtoCommerce.SubscriptionModule.Web/Localizations/pl.VirtoCommerce.Subscription.json b/src/VirtoCommerce.SubscriptionModule.Web/Localizations/pl.VirtoCommerce.Subscription.json new file mode 100644 index 0000000..b0c7a32 --- /dev/null +++ b/src/VirtoCommerce.SubscriptionModule.Web/Localizations/pl.VirtoCommerce.Subscription.json @@ -0,0 +1,183 @@ +{ + "subscription": { + "main-menu-title": "Subskrypcje", + "blades": { + "subscription-list": { + "title": "Subskrypcje", + "labels": { + "new-filter": "Dodaj nowy filtr", + "unnamed-filter": "Filtr bez nazwy", + "number": "Numer", + "status": "Status", + "balance": "Saldo", + "customer": "Subskrybent", + "startDate": "Początek okresu", + "endDate": "Koniec okresu" + }, + "placeholders": { + "select-filter": "Wybierz filtr" + } + }, + "filter-detail": { + "subtitle": "Edytuj filtr", + "new-title": "Nowy filtr", + "new-subtitle": "Utwórz nowy filtr", + "labels": { + "name": "Nazwa filtra", + "name_": "Jak nazwiesz ten filtr?", + "criteria": "Kryteria filtra", + "from": "Aktywny od", + "to": "Aktywny do", + "outer-id": "Zewnętrzny ID" + }, + "placeholders": { + "all": "Nie określono" + } + }, + "subscription-detail": { + "title": "Subskrypcja {{number}}", + "subtitle": "Szczegóły subskrypcji i powiązane dokumenty", + "labels": { + "status": "Status", + "balance": "Saldo", + "billing-date": "Następna data rozliczenia", + "trial-expiration": "Data wygaśnięcia okresu próbnego", + "expiration": "Data wygaśnięcia subskrypcji", + "employee": "Przypisz nowe zamówienie do", + "number": "Numer", + "coupon-code": "Kod kuponu", + "prorate": "Proporcjonalne zmiany" + } + }, + "schedule-detail": { + "title": "Harmonogram automatycznego zamówienia", + "title-new": "Nowy harmonogram automatycznego zamówienia", + "subtitle-new": "Utwórz nowy harmonogram automatycznego zamówienia", + "labels": { + "charge-every": "Zamów co", + "trial-period": "Okres próbny (dni)" + }, + "placeholders": { + "select": "Wybierz" + } + }, + "subscriptionOrder-list": { + "title": "Zamówienia subskrypcji" + } + }, + "widgets": { + "subscription-orders": { + "title": "Zamówienia" + }, + "orderDynamicProperty": { + "title": "Dynamiczne właściwości zamówienia" + }, + "product-schedule": { + "no-schedule": "Harmonogram automatycznego zamówienia nie jest zdefiniowany", + "info": "Automatyczne zamówienie co {{intervalCount}} {{interval}}" + }, + "order-subscription": { + "title": "Otwórz subskrypcję {{ number }}", + "title-no": "Nie przez subskrypcję" + }, + "notificationsWidget": { + "title": "Powiadomienie", + "blade-subtitle": "Usługa powiadomień", + "blade-title": "Lista typów powiadomień subskrypcji" + }, + "notificationsLogWidget": { + "title": "Dziennik powiadomień", + "blade-subtitle": "Dziennik powiadomień", + "blade-title": "Dziennik wysyłania powiadomień subskrypcji" + } + }, + "dialogs": { + "subscription-delete": { + "title": "Potwierdzenie usunięcia", + "message": "Czy na pewno chcesz usunąć wybrane subskrypcje?", + "warning": "OSTRZEŻENIE: Ta zmiana jest trwała i nie można jej cofnąć. Może spowodować utratę danych", + "instruction": "Wpisz 'yes', aby usunąć" + }, + "subscription-save": { + "title": "Zapisz zmiany", + "message": "Subskrypcja została zmodyfikowana. Czy chcesz zapisać zmiany?" + }, + "schedule-delete": { + "title": "Potwierdzenie usunięcia", + "message": "Czy na pewno chcesz usunąć ten harmonogram zamówienia?" + }, + "schedule-save": { + "title": "Zapisz zmiany", + "message": "Harmonogram został zmodyfikowany. Czy chcesz zapisać zmiany?" + }, + "new-order": { + "title": "Potwierdzenie", + "message": "Utworzyć nowe zamówienie dla tej subskrypcji?" + } + }, + "commands": { + "new-order": "Utwórz zamówienie" + } + }, + "permissions": { + "subscription:access": "Otwórz menu subskrypcji", + "subscription:create": "Utwórz dane subskrypcji", + "subscription:read": "Wyświetl dane subskrypcji", + "subscription:update": "Zaktualizuj dane subskrypcji", + "subscription:delete": "Usuń subskrypcję", + "paymentplan:manage": "Zarządzaj planem płatności" + }, + "settings": { + "Subscription.EnableSubscriptions": { + "title": "Aktywacja subskrypcji", + "description": "Włącz/wyłącz subskrypcje dla swojego sklepu" + }, + "Subscription.Status": { + "title": "Statusy subskrypcji", + "description": "Zarządzaj statusami subskrypcji, klikając ikonę ołówka" + }, + "Subscription.SubscriptionNewNumberTemplate": { + "title": "Szablon nowego numeru subskrypcji", + "description": "Skonfiguruj szablon do generowania nowego numeru subskrypcji. Parametry: 0 - data (czas UTC generowania numeru); 1 - numer sekwencji" + }, + "Subscription.EnableSubscriptionProcessJob": { + "title": "Aktywacja automatycznego procesu subskrypcji", + "description": "Włącz/wyłącz automatyczny proces subskrypcji" + }, + "Subscription.EnableSubscriptionOrdersCreateJob": { + "title": "Aktywacja tworzenia zamówień subskrypcji", + "description": "Włącz/wyłącz automatyczne tworzenie zamówień dla subskrypcji" + }, + "Subscription.CronExpression": { + "title": "Wyrażenie Cron do planowania zadania przetwarzania subskrypcji", + "description": "Zdefiniuj wyrażenie cron do planowania zadań przetwarzania subskrypcji.\nPrzykłady:\n- Uruchom co X minut: \"0/x * * * *\"\n- Uruchom co X godzin o 00 minut: \"0 */X * * *\"\n- Określ minuty: \"15 */x * * *\"\n- Uruchom co X dni o północy: \"0 0 */x * *\"" + }, + "Subscription.CronExpressionOrdersJob": { + "title": "Wyrażenie Cron do planowania zadania tworzenia zamówień subskrypcji", + "description": "Zdefiniuj wyrażenie cron do planowania zadań tworzenia zamówień subskrypcji.\nPrzykłady:\n- Uruchom co X minut: \"0/x * * * *\"\n- Uruchom co X godzin o 00 minut: \"0 */X * * *\"\n- Określ minuty: \"15 */x * * *\"\n- Uruchom co X dni o północy: \"0 0 */x * *\"" + }, + "Subscription.PastDue.Delay": { + "title": "Opóźnienie przeterminowania w dniach", + "description": "Określ liczbę dni, po których nieopłacone subskrypcje stają się 'Przeterminowane'" + }, + "Subscription.ExportImport.Description": { + "title": "Opis eksportu/importu", + "description": "Podaj opis modułu dla kreatora eksportu/importu platformy" + } + }, + "module": { + "VirtoCommerce.Subscription": { + "description": "Eksport/import subskrypcji" + } + }, + "notificationTypes": { + "NewSubscriptionEmailNotification": { + "displayName": "Powiadomienie o nowej subskrypcji", + "description": "To powiadomienie jest wysyłane e-mailem do klienta, gdy tworzona jest nowa subskrypcja" + }, + "SubscriptionCanceledEmailNotification": { + "displayName": "Powiadomienie o anulowanej subskrypcji", + "description": "To powiadomienie jest wysyłane e-mailem do klienta, gdy subskrypcja zostaje anulowana" + } + } +} \ No newline at end of file diff --git a/src/VirtoCommerce.SubscriptionModule.Web/Localizations/pt.VirtoCommerce.Subscription.json b/src/VirtoCommerce.SubscriptionModule.Web/Localizations/pt.VirtoCommerce.Subscription.json new file mode 100644 index 0000000..44757b8 --- /dev/null +++ b/src/VirtoCommerce.SubscriptionModule.Web/Localizations/pt.VirtoCommerce.Subscription.json @@ -0,0 +1,183 @@ +{ + "subscription": { + "main-menu-title": "Assinaturas", + "blades": { + "subscription-list": { + "title": "Assinaturas", + "labels": { + "new-filter": "Adicionar novo filtro", + "unnamed-filter": "Filtro sem nome", + "number": "Número", + "status": "Status", + "balance": "Saldo", + "customer": "Assinante", + "startDate": "Início do Período", + "endDate": "Fim do Período" + }, + "placeholders": { + "select-filter": "Selecionar filtro" + } + }, + "filter-detail": { + "subtitle": "Editar filtro", + "new-title": "Novo filtro", + "new-subtitle": "Criar novo filtro", + "labels": { + "name": "Nome do filtro", + "name_": "Como você chamará este filtro?", + "criteria": "Critérios do filtro", + "from": "Ativo de", + "to": "Ativo até", + "outer-id": "ID Externo" + }, + "placeholders": { + "all": "Não especificado" + } + }, + "subscription-detail": { + "title": "Assinatura {{number}}", + "subtitle": "Detalhes da assinatura e documentos relacionados", + "labels": { + "status": "Status", + "balance": "Saldo", + "billing-date": "Próxima data de cobrança", + "trial-expiration": "Data de expiração do teste", + "expiration": "Data de expiração da assinatura", + "employee": "Atribuir novo pedido a", + "number": "Número", + "coupon-code": "Código do cupom", + "prorate": "Prorratear alterações" + } + }, + "schedule-detail": { + "title": "Agenda de pedido automático", + "title-new": "Nova agenda de pedido automático", + "subtitle-new": "Criar nova agenda de pedido automático", + "labels": { + "charge-every": "Pedido a cada", + "trial-period": "Período de teste (dias)" + }, + "placeholders": { + "select": "Selecionar" + } + }, + "subscriptionOrder-list": { + "title": "Pedidos de assinatura" + } + }, + "widgets": { + "subscription-orders": { + "title": "Pedidos" + }, + "orderDynamicProperty": { + "title": "Propriedades dinâmicas do pedido" + }, + "product-schedule": { + "no-schedule": "Agenda de pedido automático não definida", + "info": "Pedido automático a cada {{intervalCount}} {{interval}}" + }, + "order-subscription": { + "title": "Abrir assinatura {{ number }}", + "title-no": "Não por assinatura" + }, + "notificationsWidget": { + "title": "Notificação", + "blade-subtitle": "Serviço de notificações", + "blade-title": "Lista de tipos de notificação de assinatura" + }, + "notificationsLogWidget": { + "title": "Registro de notificações", + "blade-subtitle": "Registro de notificações", + "blade-title": "Registro de envio de notificações de assinatura" + } + }, + "dialogs": { + "subscription-delete": { + "title": "Confirmação de exclusão", + "message": "Tem certeza de que deseja excluir as assinaturas selecionadas?", + "warning": "AVISO: Esta alteração é permanente e não pode ser desfeita. Pode causar perda de dados", + "instruction": "Digite 'yes' para excluir" + }, + "subscription-save": { + "title": "Salvar alterações", + "message": "A assinatura foi modificada. Deseja salvar as alterações?" + }, + "schedule-delete": { + "title": "Confirmação de exclusão", + "message": "Tem certeza de que deseja excluir esta agenda de pedidos?" + }, + "schedule-save": { + "title": "Salvar alterações", + "message": "A agenda foi modificada. Deseja salvar as alterações?" + }, + "new-order": { + "title": "Confirmação", + "message": "Criar um novo pedido para esta assinatura?" + } + }, + "commands": { + "new-order": "Criar Pedido" + } + }, + "permissions": { + "subscription:access": "Abrir menu de assinaturas", + "subscription:create": "Criar dados de assinatura", + "subscription:read": "Visualizar dados de assinatura", + "subscription:update": "Atualizar dados de assinatura", + "subscription:delete": "Excluir assinatura", + "paymentplan:manage": "Gerenciar plano de pagamento" + }, + "settings": { + "Subscription.EnableSubscriptions": { + "title": "Ativação de assinaturas", + "description": "Habilitar/desabilitar assinaturas para sua loja" + }, + "Subscription.Status": { + "title": "Status da assinatura", + "description": "Gerenciar status da assinatura clicando em um ícone de lápis" + }, + "Subscription.SubscriptionNewNumberTemplate": { + "title": "Modelo de número de assinatura", + "description": "Configurar modelo para gerar novo número de assinatura. Parâmetros: 0 - data (a hora UTC da geração do número); 1 - o número de sequência" + }, + "Subscription.EnableSubscriptionProcessJob": { + "title": "Ativação do processo automático de assinatura", + "description": "Habilitar/desabilitar processo automático de assinatura" + }, + "Subscription.EnableSubscriptionOrdersCreateJob": { + "title": "Ativação da criação de pedidos de assinatura", + "description": "Habilitar/desabilitar criação automática de pedidos para assinaturas" + }, + "Subscription.CronExpression": { + "title": "Expressão Cron para agendar o trabalho de processamento de assinaturas", + "description": "Definir uma expressão cron para agendar tarefas de processamento de assinaturas.\nExemplos:\n- Executar a cada X minutos: \"0/x * * * *\"\n- Executar a cada X horas às 00 minutos: \"0 */X * * *\"\n- Especificar minutos: \"15 */x * * *\"\n- Executar a cada X dias à meia-noite: \"0 0 */x * *\"" + }, + "Subscription.CronExpressionOrdersJob": { + "title": "Expressão Cron para agendar o trabalho de criação de pedidos de assinatura", + "description": "Definir uma expressão cron para agendar tarefas de criação de pedidos de assinatura.\nExemplos:\n- Executar a cada X minutos: \"0/x * * * *\"\n- Executar a cada X horas às 00 minutos: \"0 */X * * *\"\n- Especificar minutos: \"15 */x * * *\"\n- Executar a cada X dias à meia-noite: \"0 0 */x * *\"" + }, + "Subscription.PastDue.Delay": { + "title": "Atraso de vencimento em dias", + "description": "Especificar o número de dias após os quais assinaturas não pagas se tornam 'Vencidas'" + }, + "Subscription.ExportImport.Description": { + "title": "Descrição de Exportação/Importação", + "description": "Fornecer descrição do módulo para o assistente de exportação/importação da plataforma" + } + }, + "module": { + "VirtoCommerce.Subscription": { + "description": "Exportação/importação de assinaturas" + } + }, + "notificationTypes": { + "NewSubscriptionEmailNotification": { + "displayName": "Notificação de nova assinatura", + "description": "Esta notificação é enviada por e-mail ao cliente quando uma nova assinatura é criada" + }, + "SubscriptionCanceledEmailNotification": { + "displayName": "Notificação de assinatura cancelada", + "description": "Esta notificação é enviada por e-mail ao cliente quando uma assinatura é cancelada" + } + } +} \ No newline at end of file diff --git a/src/VirtoCommerce.SubscriptionModule.Web/Localizations/ru.VirtoCommerce.Subscription.json b/src/VirtoCommerce.SubscriptionModule.Web/Localizations/ru.VirtoCommerce.Subscription.json index f41ae6a..a31999f 100644 --- a/src/VirtoCommerce.SubscriptionModule.Web/Localizations/ru.VirtoCommerce.Subscription.json +++ b/src/VirtoCommerce.SubscriptionModule.Web/Localizations/ru.VirtoCommerce.Subscription.json @@ -1,170 +1,183 @@ { - "subscription": { - "main-menu-title": "Подписки", - "blades": { - "subscription-list": { - "title": "Подписки", - "labels": { - "new-filter": "Добавить новый фильтр", - "unnamed-filter": "Фильтр по умолчанию", - "number": "Номер", - "status": "Статус", - "balance": "Баланс", - "customer": "Подписчик", - "startDate": "Начало Периода", - "endDate": "Конец Периода" - }, - "placeholders": { - "select-filter": "Выбрать фильтр" - } - }, - "filter-detail": { - "subtitle": "Редактировать фильтр", - "new-title": "Новый фильтр", - "new-subtitle": "Создать новый фильтр", - "labels": { - "name": "Название", - "name_": "Как Вы назовете этот фильтр?", - "criteria": "Критерии фильтра", - "from": "Активен с", - "to": "Активен до", - "outer-id": "Внешний идентификатор" - }, - "placeholders": { - "all": "Не определен" - } - }, - "subscription-detail": { - "title": "Подписка {{number}}", - "subtitle": "Сведения о подписке и соответствующие документы", - "labels": { - "status": "Статус", - "balance": "Баланс", - "billing-date": "Следующая дата оплаты", - "trial-expiration": "Дата окончания пробного периода", - "expiration": "Срок действия подписки", - "employee": "Поручить новый заказ", - "number": "Номер", - "coupon-code": "Код купона", - "prorate": "Изменения пропорциональности" - } - }, - "schedule-detail": { - "title": "Расписание авто-заказа", - "title-new": "Новое расписание авто-заказа", - "subtitle-new": "Создать новое расписание", - "labels": { - "charge-every": "Заказ каждые", - "trial-period": "Пробный период (дней)" - }, - "placeholders": { - "select": "Выбрать..." - } - }, - "subscriptionOrder-list": { - "title": "Заказы по Подпискам" - } + "subscription": { + "main-menu-title": "Подписки", + "blades": { + "subscription-list": { + "title": "Подписки", + "labels": { + "new-filter": "Добавить новый фильтр", + "unnamed-filter": "Фильтр без имени", + "number": "Номер", + "status": "Статус", + "balance": "Баланс", + "customer": "Подписчик", + "startDate": "Начало периода", + "endDate": "Конец периода" }, - "widgets": { - "subscription-orders": { - "title": "Заказы" - }, - "orderDynamicProperty": { - "title": "Динамические Свойства Заказа" - }, - "product-schedule": { - "no-schedule": "Расписание авто-заказа не определено", - "info": "Автоматический заказ каждые {{intervalCount}} {{interval}}" - }, - "order-subscription": { - "title": "Открыть Подписку {{ number }}", - "title-no": "Не по подписке" - }, - "notificationsWidget": { - "title": "Уведомления", - "blade-subtitle": "Служба уведомлений", - "blade-title": "Список типов уведомлений для подписки" - }, - "notificationsLogWidget": { - "title": "Журнал уведомлений", - "blade-subtitle": "Журнал уведомлений", - "blade-title": "Журнал отправки уведомлений о подписке" - } + "placeholders": { + "select-filter": "Выбрать фильтр" + } + }, + "filter-detail": { + "subtitle": "Редактировать фильтр", + "new-title": "Новый фильтр", + "new-subtitle": "Создать новый фильтр", + "labels": { + "name": "Имя фильтра", + "name_": "Как вы назовете этот фильтр?", + "criteria": "Критерии фильтра", + "from": "Активен с", + "to": "Активен до", + "outer-id": "Внешний ID" }, - "dialogs": { - "subscription-delete": { - "title": "Подтверждение удаления", - "message": "Вы уверены, что хотите удалить выбранные подписки?", - "warning": "ПРЕДУПРЕЖДЕНИЕ: это изменение является постоянным и не может быть отменено впоследствии. Это может привести к потере данных.", - "instruction": "Введите 'да', чтобы удалить" - }, - "subscription-save": { - "title": "Сохранение изменений", - "message": "Подписка была изменена. Вы хотите сохранить изменения?" - }, - "schedule-delete": { - "title": "Подтверждение удаления", - "message": "Вы уверены, что хотите удалить выбранные Расписания Заказов?" - }, - "schedule-save": { - "title": "Сохранение изменений", - "message": "Расписание было изменено. Вы хотите сохранить изменения?" - }, - "new-order": { - "title": "Подтверждение", - "message": "Создать новый Заказ для данной Подписки?" - } + "placeholders": { + "all": "Не указано" + } + }, + "subscription-detail": { + "title": "Подписка {{number}}", + "subtitle": "Детали подписки и связанные документы", + "labels": { + "status": "Статус", + "balance": "Баланс", + "billing-date": "Следующая дата выставления счета", + "trial-expiration": "Дата окончания пробного периода", + "expiration": "Дата окончания подписки", + "employee": "Назначить новый заказ", + "number": "Номер", + "coupon-code": "Код купона", + "prorate": "Пропорциональные изменения" + } + }, + "schedule-detail": { + "title": "График автоматического заказа", + "title-new": "Новый график автоматического заказа", + "subtitle-new": "Создать новый график автоматического заказа", + "labels": { + "charge-every": "Заказ каждые", + "trial-period": "Пробный период (дни)" }, - "commands": { - "new-order": "Создать Заказ" + "placeholders": { + "select": "Выбрать" } + }, + "subscriptionOrder-list": { + "title": "Заказы по подписке" + } }, - - "permissions": { - "subscription:access": "Просмотр списка подписок", - "subscription:create": "Создание новой подписки", - "subscription:read": "Просмотр данных подписки", - "subscription:update": "Изменение данных подписки", - "subscription:delete": "Удаление подписки", - "paymentplan:manage": "Изменение схемы оплаты" + "widgets": { + "subscription-orders": { + "title": "Заказы" + }, + "orderDynamicProperty": { + "title": "Динамические свойства заказа" + }, + "product-schedule": { + "no-schedule": "График автоматического заказа не определен", + "info": "Автоматический заказ каждые {{intervalCount}} {{interval}}" + }, + "order-subscription": { + "title": "Открыть подписку {{ number }}", + "title-no": "Не по подписке" + }, + "notificationsWidget": { + "title": "Уведомление", + "blade-subtitle": "Служба уведомлений", + "blade-title": "Список типов уведомлений по подписке" + }, + "notificationsLogWidget": { + "title": "Журнал уведомлений", + "blade-subtitle": "Журнал уведомлений", + "blade-title": "Журнал отправки уведомлений по подписке" + } }, - - "settings": { - "Subscription.EnableSubscriptions": { - "title": "Использовать подписки", - "description": "Указывает, будут ли доступны подписки в магазинах" - }, - "Subscription.Status": { - "title": "Состояния подписки", - "description": "Перечень состояний, в которых может находиться подписка" - }, - "Subscription.SubscriptionNewNumberTemplate": { - "title": "Шаблон номера подписки", - "description": "Шаблон, используемый для генерации номера для новых подписок. Доступные параметры: 0 - дата и время генерации номера в часовом поясе UTC, 1 - порядковый номер подписки." - }, - "Subscription.EnableSubscriptionProcessJob": { - "title": "Использовать фоновую задачу при оформлении подписки", - "description": "Указывает, должно ли оформление подписок происходить в рамках фоновой задачи. Для применения потребуется перезапуск." - }, - "Subscription.EnableSubscriptionOrdersCreateJob": { - "title": "Использовать фоновую задачу при создании заказов для подписки", - "description": "Указывает, должно ли автоматическое создание заказов для подписки выполняться в рамках фоновой задачи. Для применения потребуется перезапуск." - }, - "Subscription.CronExpression": { - "title": "Период выполнения задачи оформления подписки", - "description": "Значение этого поля должно быть корректным выражением CRON. Для применения потребуется перезапуск.\nДля запуска задачи каждые X секунд используйте выражение \"0/x * * * *\".\nДля запуска задачи каждые X часов в 00 минут используйте \"0 */X * * *\". Можно также задать минуты: \"15 */x * * *\".\nДля запуска каждые X дней в полночь используйте \"0 0 */x * *\"." - }, - "Subscription.CronExpressionOrdersJob": { - "title": "Период выполнения задачи создания заказов для подписки", - "description": "Значение этого поля должно быть корректным выражением CRON. Для применения потребуется перезапуск.\nДля запуска задачи каждые X секунд используйте выражение \"0/x * * * *\".\nДля запуска задачи каждые X часов в 00 минут используйте \"0 */X * * *\". Можно также задать минуты: \"15 */x * * *\".\nДля запуска каждые X дней в полночь используйте \"0 0 */x * *\"." - }, - "Subscription.PastDue.Delay": { - "title": "Количество дней до отмены неоплаченной подписки", - "description": "Задержка в днях, по истечении которой неоплаченная подписка перейдёт в состояние PastDue." - }, - "Subscription.ExportImport.Description": { - "title": "Описание при экспорте и импорте", - "description": "Описание модуля для мастера экспорта/импорта данных" - } + "dialogs": { + "subscription-delete": { + "title": "Подтверждение удаления", + "message": "Вы уверены, что хотите удалить выбранные подписки?", + "warning": "ВНИМАНИЕ: Это изменение является постоянным и не может быть отменено. Это может привести к потере данных", + "instruction": "Введите 'yes', чтобы удалить" + }, + "subscription-save": { + "title": "Сохранить изменения", + "message": "Подписка была изменена. Вы хотите сохранить изменения?" + }, + "schedule-delete": { + "title": "Подтверждение удаления", + "message": "Вы уверены, что хотите удалить этот график заказа?" + }, + "schedule-save": { + "title": "Сохранить изменения", + "message": "График был изменен. Вы хотите сохранить изменения?" + }, + "new-order": { + "title": "Подтверждение", + "message": "Создать новый заказ для этой подписки?" + } + }, + "commands": { + "new-order": "Создать заказ" + } + }, + "permissions": { + "subscription:access": "Открыть меню подписок", + "subscription:create": "Создать данные подписки", + "subscription:read": "Просмотр данных подписки", + "subscription:update": "Обновить данные подписки", + "subscription:delete": "Удалить подписку", + "paymentplan:manage": "Управление планом платежей" + }, + "settings": { + "Subscription.EnableSubscriptions": { + "title": "Активация подписок", + "description": "Включить/отключить подписки для вашего магазина" + }, + "Subscription.Status": { + "title": "Статусы подписки", + "description": "Управляйте статусами подписки, нажав на значок карандаша" + }, + "Subscription.SubscriptionNewNumberTemplate": { + "title": "Шаблон нового номера подписки", + "description": "Настройте шаблон для генерации нового номера подписки. Параметры: 0 - дата (время UTC генерации номера); 1 - порядковый номер" + }, + "Subscription.EnableSubscriptionProcessJob": { + "title": "Активация автоматического процесса подписки", + "description": "Включить/отключить автоматический процесс подписки" + }, + "Subscription.EnableSubscriptionOrdersCreateJob": { + "title": "Активация создания заказов по подписке", + "description": "Включить/отключить автоматическое создание заказов для подписок" + }, + "Subscription.CronExpression": { + "title": "Cron-выражение для планирования задачи обработки подписки", + "description": "Определите cron-выражение для планирования задач обработки подписки.\nПримеры:\n- Запускать каждые X минут: \"0/x * * * *\"\n- Запускать каждые X часов в 00 минут: \"0 */X * * *\"\n- Указать минуты: \"15 */x * * *\"\n- Запускать каждые X дней в полночь: \"0 0 */x * *\"" + }, + "Subscription.CronExpressionOrdersJob": { + "title": "Cron-выражение для планирования задачи создания заказов по подписке", + "description": "Определите cron-выражение для планирования задач создания заказов по подписке.\nПримеры:\n- Запускать каждые X минут: \"0/x * * * *\"\n- Запускать каждые X часов в 00 минут: \"0 */X * * *\"\n- Указать минуты: \"15 */x * * *\"\n- Запускать каждые X дней в полночь: \"0 0 */x * *\"" + }, + "Subscription.PastDue.Delay": { + "title": "Задержка просрочки в днях", + "description": "Укажите количество дней, после которых неоплаченные подписки становятся 'Просроченными'" + }, + "Subscription.ExportImport.Description": { + "title": "Описание экспорта/импорта", + "description": "Предоставьте описание модуля для мастера экспорта/импорта платформы" + } + }, + "module": { + "VirtoCommerce.Subscription": { + "description": "Экспорт/импорт подписок" + } + }, + "notificationTypes": { + "NewSubscriptionEmailNotification": { + "displayName": "Уведомление о новой подписке", + "description": "Это уведомление отправляется клиенту по электронной почте, когда создается новая подписка" + }, + "SubscriptionCanceledEmailNotification": { + "displayName": "Уведомление об отмене подписки", + "description": "Это уведомление отправляется клиенту по электронной почте, когда подписка отменяется" } -} + } +} \ No newline at end of file diff --git a/src/VirtoCommerce.SubscriptionModule.Web/Localizations/zh.VirtoCommerce.Subscription.json b/src/VirtoCommerce.SubscriptionModule.Web/Localizations/zh.VirtoCommerce.Subscription.json new file mode 100644 index 0000000..9e67511 --- /dev/null +++ b/src/VirtoCommerce.SubscriptionModule.Web/Localizations/zh.VirtoCommerce.Subscription.json @@ -0,0 +1,183 @@ +{ + "subscription": { + "main-menu-title": "订阅", + "blades": { + "subscription-list": { + "title": "订阅", + "labels": { + "new-filter": "添加新过滤器", + "unnamed-filter": "未命名过滤器", + "number": "编号", + "status": "状态", + "balance": "余额", + "customer": "订阅者", + "startDate": "开始日期", + "endDate": "结束日期" + }, + "placeholders": { + "select-filter": "选择过滤器" + } + }, + "filter-detail": { + "subtitle": "编辑过滤器", + "new-title": "新过滤器", + "new-subtitle": "创建新过滤器", + "labels": { + "name": "过滤器名称", + "name_": "您将如何称呼此过滤器?", + "criteria": "过滤器条件", + "from": "有效期从", + "to": "有效期至", + "outer-id": "外部ID" + }, + "placeholders": { + "all": "未指定" + } + }, + "subscription-detail": { + "title": "订阅 {{number}}", + "subtitle": "订阅详情和相关文档", + "labels": { + "status": "状态", + "balance": "余额", + "billing-date": "下次账单日期", + "trial-expiration": "试用到期日期", + "expiration": "订阅到期日期", + "employee": "分配新订单给", + "number": "编号", + "coupon-code": "优惠券代码", + "prorate": "按比例分配更改" + } + }, + "schedule-detail": { + "title": "自动订单计划", + "title-new": "新自动订单计划", + "subtitle-new": "创建新自动订单计划", + "labels": { + "charge-every": "每次订单", + "trial-period": "试用期(天)" + }, + "placeholders": { + "select": "选择" + } + }, + "subscriptionOrder-list": { + "title": "订阅订单" + } + }, + "widgets": { + "subscription-orders": { + "title": "订单" + }, + "orderDynamicProperty": { + "title": "订单动态属性" + }, + "product-schedule": { + "no-schedule": "未定义自动订单计划", + "info": "每 {{intervalCount}} {{interval}} 自动下单" + }, + "order-subscription": { + "title": "打开订阅 {{ number }}", + "title-no": "非订阅" + }, + "notificationsWidget": { + "title": "通知", + "blade-subtitle": "通知服务", + "blade-title": "订阅通知类型列表" + }, + "notificationsLogWidget": { + "title": "通知日志", + "blade-subtitle": "通知日志", + "blade-title": "订阅通知发送日志" + } + }, + "dialogs": { + "subscription-delete": { + "title": "删除确认", + "message": "您确定要删除选定的订阅吗?", + "warning": "警告:此更改是永久性的,无法撤销。可能会导致数据丢失", + "instruction": "输入 'yes' 以删除" + }, + "subscription-save": { + "title": "保存更改", + "message": "订阅已被修改。您要保存更改吗?" + }, + "schedule-delete": { + "title": "删除确认", + "message": "您确定要删除此订单计划吗?" + }, + "schedule-save": { + "title": "保存更改", + "message": "计划已被修改。您要保存更改吗?" + }, + "new-order": { + "title": "确认", + "message": "为此订阅创建新订单?" + } + }, + "commands": { + "new-order": "创建订单" + } + }, + "permissions": { + "subscription:access": "打开订阅菜单", + "subscription:create": "创建订阅数据", + "subscription:read": "查看订阅数据", + "subscription:update": "更新订阅数据", + "subscription:delete": "删除订阅", + "paymentplan:manage": "管理付款计划" + }, + "settings": { + "Subscription.EnableSubscriptions": { + "title": "订阅激活", + "description": "启用/禁用商店的订阅" + }, + "Subscription.Status": { + "title": "订阅状态", + "description": "通过单击铅笔图标管理订阅状态" + }, + "Subscription.SubscriptionNewNumberTemplate": { + "title": "订阅编号模板", + "description": "配置模板以生成新的订阅编号。参数:0 - 日期(生成编号的UTC时间);1 - 序列号" + }, + "Subscription.EnableSubscriptionProcessJob": { + "title": "自动订阅过程激活", + "description": "启用/禁用自动订阅过程" + }, + "Subscription.EnableSubscriptionOrdersCreateJob": { + "title": "订阅订单创建激活", + "description": "启用/禁用订阅的自动订单创建" + }, + "Subscription.CronExpression": { + "title": "计划订阅处理任务的Cron表达式", + "description": "定义一个cron表达式以计划订阅处理任务。\n示例:\n- 每X分钟运行一次:\"0/x * * * *\"\n- 每X小时在00分钟运行一次:\"0 */X * * *\"\n- 指定分钟:\"15 */x * * *\"\n- 每X天在午夜运行一次:\"0 0 */x * *\"" + }, + "Subscription.CronExpressionOrdersJob": { + "title": "计划订阅订单创建任务的Cron表达式", + "description": "定义一个cron表达式以计划订阅订单创建任务。\n示例:\n- 每X分钟运行一次:\"0/x * * * *\"\n- 每X小时在00分钟运行一次:\"0 */X * * *\"\n- 指定分钟:\"15 */x * * *\"\n- 每X天在午夜运行一次:\"0 0 */x * *\"" + }, + "Subscription.PastDue.Delay": { + "title": "逾期延迟天数", + "description": "指定未支付的订阅在多少天后变为'逾期'" + }, + "Subscription.ExportImport.Description": { + "title": "导出/导入描述", + "description": "为平台导出/导入向导提供模块描述" + } + }, + "module": { + "VirtoCommerce.Subscription": { + "description": "订阅的导出/导入" + } + }, + "notificationTypes": { + "NewSubscriptionEmailNotification": { + "displayName": "新订阅通知", + "description": "当创建新订阅时,此通知会通过电子邮件发送给客户" + }, + "SubscriptionCanceledEmailNotification": { + "displayName": "取消订阅通知", + "description": "当订阅被取消时,此通知会通过电子邮件发送给客户" + } + } +} \ No newline at end of file