use ruff to reformat
This commit is contained in:
parent
07f7954a5a
commit
822fe8d26f
@ -2,7 +2,7 @@
|
|||||||
# Routines to be edited by the developer to provide validation for parameters
|
# Routines to be edited by the developer to provide validation for parameters
|
||||||
# and provison of the control data for table(s)
|
# and provison of the control data for table(s)
|
||||||
#
|
#
|
||||||
# Generated by SM2Gen version:0.8 Chameleon version:4.5.4 On Python:3.10.12 at 2024-06-20 16:05
|
# Generated by SM2Gen version:0.8 Chameleon version:4.5.4 On Python:3.10.12 at 2024-06-29 11:35
|
||||||
#
|
#
|
||||||
|
|
||||||
use esmith::util;
|
use esmith::util;
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
package SrvMngr::Controller::Nfsshare;
|
package SrvMngr::Controller::Nfsshare;
|
||||||
#
|
#
|
||||||
# Generated by version:SM2Gen version:0.8 Chameleon version:4.5.4 On Python:3.10.12 at 2024-06-20 16:05
|
# Generated by version:SM2Gen version:0.8 Chameleon version:4.5.4 On Python:3.10.12 at 2024-06-29 11:35
|
||||||
#
|
#
|
||||||
#----------------------------------------------------------------------
|
#----------------------------------------------------------------------
|
||||||
# heading : Network
|
# heading : Network
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
%#
|
%#
|
||||||
%# Generated by SM2Gen version:0.8 Chameleon version:4.5.4 On Python:3.10.12 at 2024-06-20 16:05
|
%# Generated by SM2Gen version:0.8 Chameleon version:4.5.4 On Python:3.10.12 at 2024-06-29 11:35
|
||||||
%#
|
%#
|
||||||
<div id="Nfsshare-PARAMS" class="partial Nfsshare-PARAMS">
|
<div id="Nfsshare-PARAMS" class="partial Nfsshare-PARAMS">
|
||||||
<script>
|
<script>
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
%#
|
%#
|
||||||
%# Generated by SM2Gen version:0.8 Chameleon version:4.5.4 On Python:3.10.12 at 2024-06-20 16:05
|
%# Generated by SM2Gen version:0.8 Chameleon version:4.5.4 On Python:3.10.12 at 2024-06-29 11:35
|
||||||
%#
|
%#
|
||||||
<div id="Nfsshare-TABLE" class="partial Nfsshare-TABLE">
|
<div id="Nfsshare-TABLE" class="partial Nfsshare-TABLE">
|
||||||
<script>
|
<script>
|
||||||
|
BIN
Targets/nfsshare-lexfiles.zip
Normal file
BIN
Targets/nfsshare-lexfiles.zip
Normal file
Binary file not shown.
@ -1,6 +1,6 @@
|
|||||||
% layout 'default', title => "Sme server 2 - NFS data share", share_dir => './';
|
% layout 'default', title => "Sme server 2 - NFS data share", share_dir => './';
|
||||||
%#
|
%#
|
||||||
%# Generated by SM2Gen version:0.8 Chameleon version:4.5.4 On Python:3.10.12 at 2024-06-20 16:05
|
%# Generated by SM2Gen version:0.8 Chameleon version:4.5.4 On Python:3.10.12 at 2024-06-29 11:35
|
||||||
%#
|
%#
|
||||||
% content_for 'module' => begin
|
% content_for 'module' => begin
|
||||||
<div id="module" class="module Nfsshare-panel">
|
<div id="module" class="module Nfsshare-panel">
|
||||||
|
@ -1,28 +0,0 @@
|
|||||||
'nfs_Save' => "Gem",
|
|
||||||
'nfs_Hello_TABLE' => "Hej TABEL",
|
|
||||||
'nfs_Hello_PARAMS' => "Hej PARAMS",
|
|
||||||
'nfs_Requests_on_secure_ports' => "Anmodninger på sikre porte",
|
|
||||||
'nfs_File_system_permissions' => "Filsystemtilladelser",
|
|
||||||
'nfs_NFS_Client(s)_allowed' => "NFS-klient(er) tilladt",
|
|
||||||
'nfs_NFS_data_share' => "NFS-deling af data",
|
|
||||||
'nfs_APPLY' => "Anvend",
|
|
||||||
'nfs_Enable_the_NFS_Share' => "Aktivér NFS-delingen",
|
|
||||||
'nfs_For_writing_permissions,allowing_the_root' => "Til skrive-tilladelser, Tillad rodbrugeren og brug usikre porte, Du skal konfigurere en liste med én IP per linje, Vær en del af det lokale netværk/netværkene.",
|
|
||||||
'nfs_Set_the_uid_and_gid' => "Indstil uid og gid, hvis du ønsker, at alle anmodninger skal fremstå som fra én bruger eller én gruppe. Ellers lad det være tomt.",
|
|
||||||
'nfs_Set_the_GID.' => "Indstil GID.",
|
|
||||||
'nfs_TABLE_panel_action_was_successful' => "TABEL-panehandling var vellykket",
|
|
||||||
'Nfs_status' => "Status",
|
|
||||||
'nfs_PARAMS_panel_action_was_successful' => "~~~PARAMS-panelet handling lykkedes~~~",
|
|
||||||
'nfs_Information_Bay_name' => "Informationsbugt navn",
|
|
||||||
'nfs_Delays_the_disk_writing' => "Forsinker disk skrivning",
|
|
||||||
'nfs_Share_owner_Group' => "Del ejergruppe",
|
|
||||||
'nfs_Description' => "Beskrivelse",
|
|
||||||
'nfs_Write_(a)synchronously' => "Skriv (a)synkront",
|
|
||||||
'nfs_Manage_NFS_Ibay_settings:' => "Administrer NFS Ibay-indstillinger:",
|
|
||||||
'nfs_Name' => "Navn",
|
|
||||||
'nfs_Set_the_UID.' => "Indstil UID.",
|
|
||||||
'nfs_Squash_the_power_of_users' => "~~~Nedjuster brugernes rettigheder~~~",
|
|
||||||
'nfs_EnableShare_on_local_network' => "Aktiver deling på lokalt netværk",
|
|
||||||
'nfs_These_parameters_will_be_effective' => "Disse parametre vil kun være effektive, hvis delingen er aktiveret. Delingen er i /home/e-smith/files/ibays//files",
|
|
||||||
'nfs_Browse_the_parent_folders' => "~~~Gennemse de overordnede mapper~~~",
|
|
||||||
'nfs_Action' => "Handling",
|
|
28
Targets/nfsshare_dk.lex
Normal file
28
Targets/nfsshare_dk.lex
Normal file
@ -0,0 +1,28 @@
|
|||||||
|
'nfs_APPLY' => "Anvend",
|
||||||
|
'nfs_NFS_Client(s)_allowed' => "Tilladte NFS-klient(er)",
|
||||||
|
'nfs_TABLE_panel_action_was_successful' => "Handlingspanelet for TABEL var vellykket",
|
||||||
|
'nfs_Share_owner_Group' => "Del ejergruppe",
|
||||||
|
'nfs_Information_Bay_name' => "Information Bay navn",
|
||||||
|
'nfs_Write_(a)synchronously' => "Skriv (a)synkront",
|
||||||
|
'nfs_Squash_the_power_of_users' => "Knus brugernes magt",
|
||||||
|
'nfs_For_writing_permissions,allowing_the_root' => "For at skrive tilladelser, Tillade root-brugeren og bruge usikre porte, Du skal konfigurere en liste med én IP pr. linje, Som er en del af de lokale netværk.",
|
||||||
|
'nfs_Hello_PARAMS' => "~~~Hej PARAMS~~~",
|
||||||
|
'nfs_PARAMS_panel_action_was_successful' => "PARAMS panelet var vellykket",
|
||||||
|
'nfs_Enable_the_NFS_Share' => "Aktiver NFS-deling",
|
||||||
|
'nfs_NFS_data_share' => "NFS-deling af data",
|
||||||
|
'nfs_Set_the_UID.' => "Indstil UID.",
|
||||||
|
'nfs_Manage_NFS_Ibay_settings:' => "Administrer NFS Ibay indstillinger:",
|
||||||
|
'nfs_Browse_the_parent_folders' => "Gennemse de overordnede mapper",
|
||||||
|
'nfs_These_parameters_will_be_effective' => "Disse parametre vil kun træde i kraft, hvis delingen er aktiveret. Delingen er i /home/e-smith/files/ibays//files",
|
||||||
|
'nfs_Hello_TABLE' => "~~~Hej TABEL~~~",
|
||||||
|
'nfs_Description' => "Beskrivelse",
|
||||||
|
'nfs_Set_the_uid_and_gid' => "Indstil uid og gid, hvis du ønsker, at alle forespørgsler skal se ud til at være fra en bruger eller en gruppe. Ellers lad det være tomt.",
|
||||||
|
'nfs_EnableShare_on_local_network' => "Aktiver deling på lokalt netværk",
|
||||||
|
'nfs_Set_the_GID.' => "Indstil GID.",
|
||||||
|
'nfs_Save' => "Gem",
|
||||||
|
'nfs_Requests_on_secure_ports' => "Anmodninger på sikre porte",
|
||||||
|
'nfs_Action' => "Handling",
|
||||||
|
'nfs_Delays_the_disk_writing' => "Forsinker disk skrivning",
|
||||||
|
'Nfs_status' => "Status",
|
||||||
|
'nfs_Name' => "Navn",
|
||||||
|
'nfs_File_system_permissions' => "Filsystem tilladelser",
|
@ -1,28 +1,28 @@
|
|||||||
'nfs_Save' => 'Save',
|
|
||||||
'nfs_Hello_TABLE' => 'Hello TABLE',
|
|
||||||
'nfs_Hello_PARAMS' => 'Hello PARAMS',
|
|
||||||
'nfs_Requests_on_secure_ports' => 'Requests on secure ports',
|
|
||||||
'nfs_File_system_permissions' => 'File system permissions',
|
|
||||||
'nfs_NFS_Client(s)_allowed' => 'NFS Client(s) allowed',
|
|
||||||
'nfs_NFS_data_share' => 'NFS data share',
|
|
||||||
'nfs_APPLY' => 'Apply',
|
'nfs_APPLY' => 'Apply',
|
||||||
'nfs_Enable_the_NFS_Share' => 'Enable the NFS Share',
|
'nfs_NFS_Client(s)_allowed' => 'NFS Client(s) allowed',
|
||||||
'nfs_For_writing_permissions,allowing_the_root' => 'For writing permissions, Allowing the root user and using insecure ports, You must configure a list of one IP per line, Being part of the local network(s). ',
|
|
||||||
'nfs_Set_the_uid_and_gid' => 'Set the uid and gid if you want all requests appear to be from one user or one group, Otherwise leave blank',
|
|
||||||
'nfs_Set_the_GID.' => 'Set the GID. ',
|
|
||||||
'nfs_TABLE_panel_action_was_successful' => 'TABLE panel action was successful',
|
'nfs_TABLE_panel_action_was_successful' => 'TABLE panel action was successful',
|
||||||
'Nfs_status' => 'Status',
|
|
||||||
'nfs_PARAMS_panel_action_was_successful' => 'PARAMS panel action was successful',
|
|
||||||
'nfs_Information_Bay_name' => 'Information Bay name',
|
|
||||||
'nfs_Delays_the_disk_writing' => 'Delays the disk writing',
|
|
||||||
'nfs_Share_owner_Group' => 'Share owner Group',
|
'nfs_Share_owner_Group' => 'Share owner Group',
|
||||||
'nfs_Description' => 'Description',
|
'nfs_Information_Bay_name' => 'Information Bay name',
|
||||||
'nfs_Write_(a)synchronously' => 'Write (a)synchronously',
|
'nfs_Write_(a)synchronously' => 'Write (a)synchronously',
|
||||||
'nfs_Manage_NFS_Ibay_settings:' => 'Manage NFS Ibay settings:',
|
|
||||||
'nfs_Name' => 'Name',
|
|
||||||
'nfs_Set_the_UID.' => 'Set the UID. ',
|
|
||||||
'nfs_Squash_the_power_of_users' => 'Squash the power of users',
|
'nfs_Squash_the_power_of_users' => 'Squash the power of users',
|
||||||
'nfs_EnableShare_on_local_network' => 'Enableshare on local network',
|
'nfs_For_writing_permissions,allowing_the_root' => 'For writing permissions, Allowing the root user and using insecure ports, You must configure a list of one IP per line, Being part of the local network(s). ',
|
||||||
'nfs_These_parameters_will_be_effective' => 'These parameters will be effective only if the share is enabled. The share is in /home/e-smith/files/ibays//files',
|
'nfs_Hello_PARAMS' => 'Hello PARAMS',
|
||||||
|
'nfs_PARAMS_panel_action_was_successful' => 'PARAMS panel action was successful',
|
||||||
|
'nfs_Enable_the_NFS_Share' => 'Enable the NFS Share',
|
||||||
|
'nfs_NFS_data_share' => 'NFS data share',
|
||||||
|
'nfs_Set_the_UID.' => 'Set the UID. ',
|
||||||
|
'nfs_Manage_NFS_Ibay_settings:' => 'Manage NFS Ibay settings:',
|
||||||
'nfs_Browse_the_parent_folders' => 'Browse the parent folders',
|
'nfs_Browse_the_parent_folders' => 'Browse the parent folders',
|
||||||
|
'nfs_These_parameters_will_be_effective' => 'These parameters will be effective only if the share is enabled. The share is in /home/e-smith/files/ibays//files',
|
||||||
|
'nfs_Hello_TABLE' => 'Hello TABLE',
|
||||||
|
'nfs_Description' => 'Description',
|
||||||
|
'nfs_Set_the_uid_and_gid' => 'Set the uid and gid if you want all requests appear to be from one user or one group, Otherwise leave blank',
|
||||||
|
'nfs_EnableShare_on_local_network' => 'Enableshare on local network',
|
||||||
|
'nfs_Set_the_GID.' => 'Set the GID. ',
|
||||||
|
'nfs_Save' => 'Save',
|
||||||
|
'nfs_Requests_on_secure_ports' => 'Requests on secure ports',
|
||||||
'nfs_Action' => 'Action',
|
'nfs_Action' => 'Action',
|
||||||
|
'nfs_Delays_the_disk_writing' => 'Delays the disk writing',
|
||||||
|
'Nfs_status' => 'Status',
|
||||||
|
'nfs_Name' => 'Name',
|
||||||
|
'nfs_File_system_permissions' => 'File system permissions',
|
||||||
|
94
Targets/nfsshare_en.po
Normal file
94
Targets/nfsshare_en.po
Normal file
@ -0,0 +1,94 @@
|
|||||||
|
#
|
||||||
|
msgid ""
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgid "nfs_APPLY"
|
||||||
|
msgstr "Apply',"
|
||||||
|
|
||||||
|
msgid "nfs_NFS_Client(s)_allowed"
|
||||||
|
msgstr "NFS Client(s) allowed',"
|
||||||
|
|
||||||
|
msgid "nfs_TABLE_panel_action_was_successful"
|
||||||
|
msgstr "TABLE panel action was successful',"
|
||||||
|
|
||||||
|
msgid "nfs_Share_owner_Group"
|
||||||
|
msgstr "Share owner Group',"
|
||||||
|
|
||||||
|
msgid "nfs_Information_Bay_name"
|
||||||
|
msgstr "Information Bay name',"
|
||||||
|
|
||||||
|
msgid "nfs_Write_(a)synchronously"
|
||||||
|
msgstr "Write (a)synchronously',"
|
||||||
|
|
||||||
|
msgid "nfs_Squash_the_power_of_users"
|
||||||
|
msgstr "Squash the power of users',"
|
||||||
|
|
||||||
|
msgid "nfs_For_writing_permissions,allowing_the_root"
|
||||||
|
msgstr ""
|
||||||
|
"For writing permissions, Allowing the root user and using insecure ports, "
|
||||||
|
"You must configure a list of one IP per line, Being part of the local "
|
||||||
|
"network(s). ',"
|
||||||
|
|
||||||
|
msgid "nfs_Hello_PARAMS"
|
||||||
|
msgstr "Hello PARAMS',"
|
||||||
|
|
||||||
|
msgid "nfs_PARAMS_panel_action_was_successful"
|
||||||
|
msgstr "PARAMS panel action was successful',"
|
||||||
|
|
||||||
|
msgid "nfs_Enable_the_NFS_Share"
|
||||||
|
msgstr "Enable the NFS Share',"
|
||||||
|
|
||||||
|
msgid "nfs_NFS_data_share"
|
||||||
|
msgstr "NFS data share',"
|
||||||
|
|
||||||
|
msgid "nfs_Set_the_UID."
|
||||||
|
msgstr "Set the UID. ',"
|
||||||
|
|
||||||
|
msgid "nfs_Manage_NFS_Ibay_settings:"
|
||||||
|
msgstr "Manage NFS Ibay settings:',"
|
||||||
|
|
||||||
|
msgid "nfs_Browse_the_parent_folders"
|
||||||
|
msgstr "Browse the parent folders',"
|
||||||
|
|
||||||
|
msgid "nfs_These_parameters_will_be_effective"
|
||||||
|
msgstr ""
|
||||||
|
"These parameters will be effective only if the share is enabled. The share "
|
||||||
|
"is in /home/e-smith/files/ibays//files',"
|
||||||
|
|
||||||
|
msgid "nfs_Hello_TABLE"
|
||||||
|
msgstr "Hello TABLE',"
|
||||||
|
|
||||||
|
msgid "nfs_Description"
|
||||||
|
msgstr "Description',"
|
||||||
|
|
||||||
|
msgid "nfs_Set_the_uid_and_gid"
|
||||||
|
msgstr ""
|
||||||
|
"Set the uid and gid if you want all requests appear to be from one user or "
|
||||||
|
"one group, Otherwise leave blank',"
|
||||||
|
|
||||||
|
msgid "nfs_EnableShare_on_local_network"
|
||||||
|
msgstr "Enableshare on local network',"
|
||||||
|
|
||||||
|
msgid "nfs_Set_the_GID."
|
||||||
|
msgstr "Set the GID. ',"
|
||||||
|
|
||||||
|
msgid "nfs_Save"
|
||||||
|
msgstr "Save',"
|
||||||
|
|
||||||
|
msgid "nfs_Requests_on_secure_ports"
|
||||||
|
msgstr "Requests on secure ports',"
|
||||||
|
|
||||||
|
msgid "nfs_Action"
|
||||||
|
msgstr "Action',"
|
||||||
|
|
||||||
|
msgid "nfs_Delays_the_disk_writing"
|
||||||
|
msgstr "Delays the disk writing',"
|
||||||
|
|
||||||
|
msgid "Nfs_status"
|
||||||
|
msgstr "Status',"
|
||||||
|
|
||||||
|
msgid "nfs_Name"
|
||||||
|
msgstr "Name',"
|
||||||
|
|
||||||
|
msgid "nfs_File_system_permissions"
|
||||||
|
msgstr "File system permissions',"
|
95
Targets/nfsshare_es.po
Normal file
95
Targets/nfsshare_es.po
Normal file
@ -0,0 +1,95 @@
|
|||||||
|
#
|
||||||
|
msgid ""
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgid "nfs_Save"
|
||||||
|
msgstr "\"Guardar\","
|
||||||
|
|
||||||
|
msgid "nfs_Hello_TABLE"
|
||||||
|
msgstr "\"~~~Hola MESA~~~\","
|
||||||
|
|
||||||
|
msgid "nfs_Hello_PARAMS"
|
||||||
|
msgstr "\"~~~Hola PARAMS~~~\","
|
||||||
|
|
||||||
|
msgid "nfs_Requests_on_secure_ports"
|
||||||
|
msgstr "\"~~Solicitudes en puertos seguros~~\","
|
||||||
|
|
||||||
|
msgid "nfs_File_system_permissions"
|
||||||
|
msgstr "\"Permisos del sistema de archivos\","
|
||||||
|
|
||||||
|
msgid "nfs_NFS_Client(s)_allowed"
|
||||||
|
msgstr "\"Clientes NFS permitidos\","
|
||||||
|
|
||||||
|
msgid "nfs_NFS_data_share"
|
||||||
|
msgstr "\"Compartición de datos NFS\","
|
||||||
|
|
||||||
|
msgid "nfs_APPLY"
|
||||||
|
msgstr "\"Aplicar\","
|
||||||
|
|
||||||
|
msgid "nfs_Enable_the_NFS_Share"
|
||||||
|
msgstr "\"~~~Habilitar el recurso compartido NFS~~~\","
|
||||||
|
|
||||||
|
msgid "nfs_For_writing_permissions,allowing_the_root"
|
||||||
|
msgstr ""
|
||||||
|
"\"Para permisos de escritura, permitiendo al usuario root y usando puertos "
|
||||||
|
"inseguros, debe configurar una lista de una IP por línea, siendo parte de "
|
||||||
|
"la(s) red(es) local(es).\","
|
||||||
|
|
||||||
|
msgid "nfs_Set_the_uid_and_gid"
|
||||||
|
msgstr ""
|
||||||
|
"\"Establezca el uid y gid si desea que todas las solicitudes parezcan ser de"
|
||||||
|
" un solo usuario o de un solo grupo, de lo contrario, deje en blanco\","
|
||||||
|
|
||||||
|
msgid "nfs_Set_the_GID."
|
||||||
|
msgstr "\"Establecer el GID.\","
|
||||||
|
|
||||||
|
msgid "nfs_TABLE_panel_action_was_successful"
|
||||||
|
msgstr "\"Acción de panel de TABLA fue exitosa\","
|
||||||
|
|
||||||
|
msgid "Nfs_status"
|
||||||
|
msgstr "\"Estado\","
|
||||||
|
|
||||||
|
msgid "nfs_PARAMS_panel_action_was_successful"
|
||||||
|
msgstr "\"La acción del panel de PARAMS fue exitosa\","
|
||||||
|
|
||||||
|
msgid "nfs_Information_Bay_name"
|
||||||
|
msgstr "\"Nombre de la Bahía de Información\","
|
||||||
|
|
||||||
|
msgid "nfs_Delays_the_disk_writing"
|
||||||
|
msgstr "\"Retrasa la escritura en disco\","
|
||||||
|
|
||||||
|
msgid "nfs_Share_owner_Group"
|
||||||
|
msgstr "\"Compartir grupo de propietarios\","
|
||||||
|
|
||||||
|
msgid "nfs_Description"
|
||||||
|
msgstr "\"Descripción\","
|
||||||
|
|
||||||
|
msgid "nfs_Write_(a)synchronously"
|
||||||
|
msgstr "\"Escribir (a)síncronamente\","
|
||||||
|
|
||||||
|
msgid "nfs_Manage_NFS_Ibay_settings:"
|
||||||
|
msgstr "\"Administrar configuraciones de NFS Ibay:\","
|
||||||
|
|
||||||
|
msgid "nfs_Name"
|
||||||
|
msgstr "\"Nombre\","
|
||||||
|
|
||||||
|
msgid "nfs_Set_the_UID."
|
||||||
|
msgstr "\"Establecer el UID.\","
|
||||||
|
|
||||||
|
msgid "nfs_Squash_the_power_of_users"
|
||||||
|
msgstr "\"Aplastar el poder de los usuarios\","
|
||||||
|
|
||||||
|
msgid "nfs_EnableShare_on_local_network"
|
||||||
|
msgstr "\"Habilitar compartir en la red local\","
|
||||||
|
|
||||||
|
msgid "nfs_These_parameters_will_be_effective"
|
||||||
|
msgstr ""
|
||||||
|
"\"Estos parámetros serán efectivos solo si el recurso compartido está "
|
||||||
|
"habilitado. El recurso compartido está en "
|
||||||
|
"/home/e-smith/files/ibays//files\","
|
||||||
|
|
||||||
|
msgid "nfs_Browse_the_parent_folders"
|
||||||
|
msgstr "\"Explorar las carpetas principales\","
|
||||||
|
|
||||||
|
msgid "nfs_Action"
|
||||||
|
msgstr "\"Acción\","
|
@ -1,30 +0,0 @@
|
|||||||
'nfs_Save' => "שמור",
|
|
||||||
'nfs_Hello_TABLE' => "שלום טבלה",
|
|
||||||
'nfs_Hello_PARAMS' => "שלום PARAMS",
|
|
||||||
'nfs_Requests_on_secure_ports' => "בקשות על יציאות מאובטחות",
|
|
||||||
'nfs_File_system_permissions' => "הרשאות מערכת קבצים",
|
|
||||||
'nfs_NFS_Client(s)_allowed' => "לקוחות NFS מורשים",
|
|
||||||
'nfs_NFS_data_share' => "שיתוף נתונים NFS",
|
|
||||||
'nfs_APPLY' => "יישם",
|
|
||||||
'nfs_Enable_the_NFS_Share' => "הפעל את שיתוף NFS",
|
|
||||||
'nfs_For_writing_permissions,allowing_the_root' => "~~~עבור הרשאות כתיבה, אישור משתמש root ושימוש בפורטים לא מאובטחים, עליכם להגדיר רשימה של כתובת IP אחת בשורה, ולהיות חלק מהרשת המקומית.~~~",
|
|
||||||
'nfs_Set_the_uid_and_gid' => "הגדר את ה-uid וה-gid אם ברצונך שכל הבקשות ייראו כבאילו הן ממשתמש אחד או מקבוצה אחת, אחרת השאר ריק",
|
|
||||||
'nfs_Set_the_GID.' => "קבע את ה-GID.",
|
|
||||||
'nfs_TABLE_panel_action_was_successful' => "הפעולה של לוח TABLE הצליחה",
|
|
||||||
'Nfs_status' => "סטטוס",
|
|
||||||
'nfs_PARAMS_panel_action_was_successful' => "פעולת לוח PARAMS הצליחה",
|
|
||||||
'nfs_Information_Bay_name' => "~~~שם מפרץ המידע~~~",
|
|
||||||
'nfs_Delays_the_disk_writing' => "~~~מעכב את כתיבת הדיסק~~~",
|
|
||||||
'nfs_Share_owner_Group' => "שתף קבוצת בעלים",
|
|
||||||
'nfs_Description' => "תיאור",
|
|
||||||
'nfs_Write_(a)synchronously' => "כתוב (א)סינכרוני",
|
|
||||||
'nfs_Manage_NFS_Ibay_settings:' => "נהל הגדרות NFS Ibay:",
|
|
||||||
'nfs_Name' => "שם",
|
|
||||||
'nfs_Set_the_UID.' => "~~~
|
|
||||||
הגדר את מזהה המשתמש
|
|
||||||
~~~",
|
|
||||||
'nfs_Squash_the_power_of_users' => "מנע כוח ממשתמשים",
|
|
||||||
'nfs_EnableShare_on_local_network' => "אפשר שיתוף ברשת המקומית",
|
|
||||||
'nfs_These_parameters_will_be_effective' => "פרמטרים אלה יהיו בתוקף רק אם השיתוף מופעל. השיתוף נמצא ב-/home/e-smith/files/ibays//files",
|
|
||||||
'nfs_Browse_the_parent_folders' => "עיין בתיקיות האב",
|
|
||||||
'nfs_Action' => "פעולה",
|
|
28
Targets/nfsshare_il.lex
Normal file
28
Targets/nfsshare_il.lex
Normal file
@ -0,0 +1,28 @@
|
|||||||
|
'nfs_APPLY' => "החל",
|
||||||
|
'nfs_NFS_Client(s)_allowed' => "לקוחות NFS מורשים",
|
||||||
|
'nfs_TABLE_panel_action_was_successful' => "הפעולה של לוח TABLE הצליחה",
|
||||||
|
'nfs_Share_owner_Group' => "שתף קבוצת בעלי מניות",
|
||||||
|
'nfs_Information_Bay_name' => "שם מפרץ המידע",
|
||||||
|
'nfs_Write_(a)synchronously' => "~~~כתוב (באופן) סינכרוני/אסינכרוני~~~",
|
||||||
|
'nfs_Squash_the_power_of_users' => "~~~להמעיט את כוח המשתמשים~~~",
|
||||||
|
'nfs_For_writing_permissions,allowing_the_root' => "כדי לקבל הרשאות כתיבה, לאפשר את משתמש השורש ולהשתמש ביציאות לא מאובטחות, יש להגדיר רשימה של כתובת IP אחת בכל שורה, כחלק מהרשת המקומית.",
|
||||||
|
'nfs_Hello_PARAMS' => "שלום PARAMS",
|
||||||
|
'nfs_PARAMS_panel_action_was_successful' => "פאנל הדֶפָאוֹת ביצע את הפעולה בהצלחה",
|
||||||
|
'nfs_Enable_the_NFS_Share' => "אפשר שיתוף NFS",
|
||||||
|
'nfs_NFS_data_share' => "שיתוף נתונים NFS",
|
||||||
|
'nfs_Set_the_UID.' => "הגדר את ה-UID.",
|
||||||
|
'nfs_Manage_NFS_Ibay_settings:' => "נהל הגדרות NFS Ibay:",
|
||||||
|
'nfs_Browse_the_parent_folders' => "עיין בתיקיות האב",
|
||||||
|
'nfs_These_parameters_will_be_effective' => "פרמטרים אלו יהיו בתוקף רק אם השיתוף מופעל. השיתוף נמצא ב-/home/e-smith/files/ibays/files",
|
||||||
|
'nfs_Hello_TABLE' => "~~~שלום TABLE~~~",
|
||||||
|
'nfs_Description' => "תיאור",
|
||||||
|
'nfs_Set_the_uid_and_gid' => "~~~הגדר את ה-uid וה-gid אם ברצונך שכל הבקשות ייראו כאילו הן מגיעות ממשתמש אחד או מקבוצה אחת, אחרת השאר ריק~~~",
|
||||||
|
'nfs_EnableShare_on_local_network' => "אפשר שיתוף ברשת המקומית",
|
||||||
|
'nfs_Set_the_GID.' => "קבע את ה-GID.",
|
||||||
|
'nfs_Save' => "שמור",
|
||||||
|
'nfs_Requests_on_secure_ports' => "בקשות על יציאות מאובטחות",
|
||||||
|
'nfs_Action' => "פעולה",
|
||||||
|
'nfs_Delays_the_disk_writing' => "מעכב את כתיבת הדיסק",
|
||||||
|
'Nfs_status' => "סטטוס",
|
||||||
|
'nfs_Name' => "~~שם~~",
|
||||||
|
'nfs_File_system_permissions' => "הרשאות מערכת קבצים",
|
@ -1,28 +0,0 @@
|
|||||||
'nfs_Save' => "保存",
|
|
||||||
'nfs_Hello_TABLE' => "こんにちは、テーブル",
|
|
||||||
'nfs_Hello_PARAMS' => "こんにちは PARAMS",
|
|
||||||
'nfs_Requests_on_secure_ports' => "セキュアポートのリクエスト",
|
|
||||||
'nfs_File_system_permissions' => "ファイルシステム権限",
|
|
||||||
'nfs_NFS_Client(s)_allowed' => "NFS クライアントの許可",
|
|
||||||
'nfs_NFS_data_share' => "~~~NFSデータ共有~~~",
|
|
||||||
'nfs_APPLY' => "適用",
|
|
||||||
'nfs_Enable_the_NFS_Share' => "NFS共有を有効にする",
|
|
||||||
'nfs_For_writing_permissions,allowing_the_root' => "~~~書き込み権限について、rootユーザーの許可と安全でないポートの使用、ローカルネットワークの一部であることを条件に、1行に1つのIPのリストを設定する必要があります。~~~",
|
|
||||||
'nfs_Set_the_uid_and_gid' => "すべてのリクエストを1人のユーザーまたは1つのグループからのものとして表示させたい場合は、uidとgidを設定してください。それ以外の場合は空白のままにしてください。",
|
|
||||||
'nfs_Set_the_GID.' => "GIDを設定する。",
|
|
||||||
'nfs_TABLE_panel_action_was_successful' => "テーブルパネルの操作が成功しました",
|
|
||||||
'Nfs_status' => "ステータス",
|
|
||||||
'nfs_PARAMS_panel_action_was_successful' => "PARAMSパネルの操作が成功しました",
|
|
||||||
'nfs_Information_Bay_name' => "情報ベイ名",
|
|
||||||
'nfs_Delays_the_disk_writing' => "ディスク書き込みの遅延",
|
|
||||||
'nfs_Share_owner_Group' => "グループの所有者を共有",
|
|
||||||
'nfs_Description' => "説明",
|
|
||||||
'nfs_Write_(a)synchronously' => "非同期に書き込む",
|
|
||||||
'nfs_Manage_NFS_Ibay_settings:' => "NFS Ibayの設定を管理する:",
|
|
||||||
'nfs_Name' => "名前",
|
|
||||||
'nfs_Set_the_UID.' => "UIDを設定する。",
|
|
||||||
'nfs_Squash_the_power_of_users' => "ユーザーの権限を抑制",
|
|
||||||
'nfs_EnableShare_on_local_network' => "ローカルネットワークで共有を有効にする",
|
|
||||||
'nfs_These_parameters_will_be_effective' => "共有が有効になっている場合にのみ、これらのパラメータは有効になります。共有は/home/e-smith/files/ibays//filesにあります。",
|
|
||||||
'nfs_Browse_the_parent_folders' => "親フォルダーを参照する",
|
|
||||||
'nfs_Action' => "アクション",
|
|
28
Targets/nfsshare_jp.lex
Normal file
28
Targets/nfsshare_jp.lex
Normal file
@ -0,0 +1,28 @@
|
|||||||
|
'nfs_APPLY' => "適用",
|
||||||
|
'nfs_NFS_Client(s)_allowed' => "NFS クライアント(許可)",
|
||||||
|
'nfs_TABLE_panel_action_was_successful' => "テーブルパネルの操作が成功しました",
|
||||||
|
'nfs_Share_owner_Group' => "オーナーグループを共有",
|
||||||
|
'nfs_Information_Bay_name' => "情報ベイ名称",
|
||||||
|
'nfs_Write_(a)synchronously' => "非同期的に書き込み",
|
||||||
|
'nfs_Squash_the_power_of_users' => "ユーザーの権限を制限する",
|
||||||
|
'nfs_For_writing_permissions,allowing_the_root' => "ローカルネットワークの一部として、書き込み権限、ルートユーザーの許可、不安全なポートの使用には、1行に1つのIPアドレスのリストを設定する必要があります。",
|
||||||
|
'nfs_Hello_PARAMS' => "こんにちは PARAMS",
|
||||||
|
'nfs_PARAMS_panel_action_was_successful' => "~~~PARAMSパネルのアクションが成功しました~~~",
|
||||||
|
'nfs_Enable_the_NFS_Share' => "NFS 共有を有効にする",
|
||||||
|
'nfs_NFS_data_share' => "NFSデータ共有",
|
||||||
|
'nfs_Set_the_UID.' => "UIDを設定する。",
|
||||||
|
'nfs_Manage_NFS_Ibay_settings:' => "NFS Ibayの設定を管理する:",
|
||||||
|
'nfs_Browse_the_parent_folders' => "親フォルダーを参照",
|
||||||
|
'nfs_These_parameters_will_be_effective' => "共有が有効の場合のみ、これらのパラメーターが適用されます。共有は/home/e-smith/files/ibays/files にあります。",
|
||||||
|
'nfs_Hello_TABLE' => "~~~こんにちは、テーブル~~~",
|
||||||
|
'nfs_Description' => "説明",
|
||||||
|
'nfs_Set_the_uid_and_gid' => "すべてのリクエストが1人のユーザーまたは1つのグループからのものとして表示されるようにする場合は、uidとgidを設定してください。それ以外の場合は空白のままにしてください。",
|
||||||
|
'nfs_EnableShare_on_local_network' => "ローカルネットワークで共有を有効にする",
|
||||||
|
'nfs_Set_the_GID.' => "GIDを設定する。",
|
||||||
|
'nfs_Save' => "保存",
|
||||||
|
'nfs_Requests_on_secure_ports' => "セキュアポートへのリクエスト",
|
||||||
|
'nfs_Action' => "アクション",
|
||||||
|
'nfs_Delays_the_disk_writing' => "ディスク書き込みの遅延",
|
||||||
|
'Nfs_status' => "ステータス",
|
||||||
|
'nfs_Name' => "名前",
|
||||||
|
'nfs_File_system_permissions' => "ファイルシステムの権限",
|
@ -1,30 +0,0 @@
|
|||||||
'nfs_Save' => "Lagre",
|
|
||||||
'nfs_Hello_TABLE' => "~~~Hallo TABELL~~~",
|
|
||||||
'nfs_Hello_PARAMS' => "Hei PARAMS",
|
|
||||||
'nfs_Requests_on_secure_ports' => "Forespørsler på sikre porter",
|
|
||||||
'nfs_File_system_permissions' => "~~~Filsystemtillatelser~~~",
|
|
||||||
'nfs_NFS_Client(s)_allowed' => "Tillatte NFS-klient(er)",
|
|
||||||
'nfs_NFS_data_share' => "NFS-datadeling",
|
|
||||||
'nfs_APPLY' => "~~~
|
|
||||||
Søke
|
|
||||||
~~",
|
|
||||||
'nfs_Enable_the_NFS_Share' => "Aktiver NFS-delingen",
|
|
||||||
'nfs_For_writing_permissions,allowing_the_root' => "For skrivetillatelser, å tillate root-bruker og bruke usikre porter, må du konfigurere en liste med én IP per linje, som er en del av det lokale nettverket.",
|
|
||||||
'nfs_Set_the_uid_and_gid' => "Sett uid og gid hvis du vil at alle forespørsler skal fremstå som fra én bruker eller én gruppe. Ellers, la stå tomt.",
|
|
||||||
'nfs_Set_the_GID.' => "Sett GID.",
|
|
||||||
'nfs_TABLE_panel_action_was_successful' => "Paneletabellhandlingen var vellykket",
|
|
||||||
'Nfs_status' => "Status",
|
|
||||||
'nfs_PARAMS_panel_action_was_successful' => "Panelhandling var vellykket",
|
|
||||||
'nfs_Information_Bay_name' => "Informasjonsnavn på bukt",
|
|
||||||
'nfs_Delays_the_disk_writing' => "Forsinker diskskriving",
|
|
||||||
'nfs_Share_owner_Group' => "Dele eiergruppe",
|
|
||||||
'nfs_Description' => "Beskrivelse",
|
|
||||||
'nfs_Write_(a)synchronously' => "Skriv (a)synkront",
|
|
||||||
'nfs_Manage_NFS_Ibay_settings:' => "Administrer NFS Ibay-innstillinger:",
|
|
||||||
'nfs_Name' => "Navn",
|
|
||||||
'nfs_Set_the_UID.' => "Angi UID.",
|
|
||||||
'nfs_Squash_the_power_of_users' => "Knekk brukernes kraft",
|
|
||||||
'nfs_EnableShare_on_local_network' => "Aktiver deling på lokalt nettverk",
|
|
||||||
'nfs_These_parameters_will_be_effective' => "Disse parameterne vil bare være effektive hvis delingen er aktivert. Delingen er i /home/e-smith/files/ibays//files",
|
|
||||||
'nfs_Browse_the_parent_folders' => "~~~Bla gjennom overordnede mapper~~~",
|
|
||||||
'nfs_Action' => "~~Aksjon~~",
|
|
32
Targets/nfsshare_no.lex
Normal file
32
Targets/nfsshare_no.lex
Normal file
@ -0,0 +1,32 @@
|
|||||||
|
'nfs_APPLY' => "Bruk",
|
||||||
|
'nfs_NFS_Client(s)_allowed' => "Tillatte NFS-klienter",
|
||||||
|
'nfs_TABLE_panel_action_was_successful' => "TABELL-handling var vellykket",
|
||||||
|
'nfs_Share_owner_Group' => "Dele eiergruppe",
|
||||||
|
'nfs_Information_Bay_name' => "Informasjon Bay-navn",
|
||||||
|
'nfs_Write_(a)synchronously' => "~~~Skriv (a)synkront~~~",
|
||||||
|
'nfs_Squash_the_power_of_users' => "~~~Undertrykk kraften til brukerne~~~",
|
||||||
|
'nfs_For_writing_permissions,allowing_the_root' => "For skrive-tillatelser, Tillate root-brukeren og bruke usikre porter, Du må konfigurere en liste med én IP per linje, Som er en del av det lokale nettverket.",
|
||||||
|
'nfs_Hello_PARAMS' => "~~~Hallo PARAMS~~~",
|
||||||
|
'nfs_PARAMS_panel_action_was_successful' => "~~PARAMS-panelet aksjonen var vellykket~~",
|
||||||
|
'nfs_Enable_the_NFS_Share' => "Aktiver NFS-deling",
|
||||||
|
'nfs_NFS_data_share' => "NFS-datadeling",
|
||||||
|
'nfs_Set_the_UID.' => "Sett UID.",
|
||||||
|
'nfs_Manage_NFS_Ibay_settings:' => "Administrer NFS Ibay-innstillinger:",
|
||||||
|
'nfs_Browse_the_parent_folders' => "~~~Bla gjennom overordnede mapper~~~",
|
||||||
|
'nfs_These_parameters_will_be_effective' => "Disse parametrene vil bare være effektive hvis delingen er aktivert. Delingen er i /home/e-smith/files/ibays/files",
|
||||||
|
'nfs_Hello_TABLE' => "~~~
|
||||||
|
Hallo TABELL
|
||||||
|
~~~",
|
||||||
|
'nfs_Description' => "Beskrivelse",
|
||||||
|
'nfs_Set_the_uid_and_gid' => "Sett uid og gid hvis du vil at alle forespørsler skal fremstå som fra én bruker eller én gruppe. Ellers la være tomt.",
|
||||||
|
'nfs_EnableShare_on_local_network' => "Aktiver deling på lokalt nettverk",
|
||||||
|
'nfs_Set_the_GID.' => "~~~
|
||||||
|
Angi GID.
|
||||||
|
~~~",
|
||||||
|
'nfs_Save' => "Lagre",
|
||||||
|
'nfs_Requests_on_secure_ports' => "Forespørsler på sikre porter",
|
||||||
|
'nfs_Action' => "~~Handling~~",
|
||||||
|
'nfs_Delays_the_disk_writing' => "Forsinker diskskrivingen",
|
||||||
|
'Nfs_status' => "Status",
|
||||||
|
'nfs_Name' => "Navn",
|
||||||
|
'nfs_File_system_permissions' => "Filsystemtillatelser",
|
@ -1,17 +1,17 @@
|
|||||||
[
|
[
|
||||||
{"language": "Bulgarian", "code": "bg"},
|
{"language": "Bulgarian", "code": "bg"},
|
||||||
{"language": "Danish", "code": "da"},
|
{"language": "Danish", "code": "dk"},
|
||||||
{"language": "German", "code": "de"},
|
{"language": "German", "code": "de"},
|
||||||
{"language": "Greek", "code": "el"},
|
{"language": "Greek", "code": "el"},
|
||||||
{"language": "Spanish", "code": "es"},
|
{"language": "Spanish", "code": "es"},
|
||||||
{"language": "Estonian", "code": "et"},
|
{"language": "Estonian", "code": "et"},
|
||||||
{"language": "French", "code": "fr"},
|
{"language": "French", "code": "fr"},
|
||||||
{"language": "Hebrew", "code": "he"},
|
{"language": "Hebrew", "code": "il"},
|
||||||
{"language": "Hungarian", "code": "hu"},
|
{"language": "Hungarian", "code": "hu"},
|
||||||
{"language": "Indonesian", "code": "id"},
|
{"language": "Indonesian", "code": "id"},
|
||||||
{"language": "Italian", "code": "it"},
|
{"language": "Italian", "code": "it"},
|
||||||
{"language": "Japanese", "code": "ja"},
|
{"language": "Japanese", "code": "jp"},
|
||||||
{"language": "Norwegian Bokmål", "code": "nb"},
|
{"language": "Norwegian Bokmål", "code": "no"},
|
||||||
{"language": "Dutch", "code": "nl"},
|
{"language": "Dutch", "code": "nl"},
|
||||||
{"language": "Polish", "code": "pl"},
|
{"language": "Polish", "code": "pl"},
|
||||||
{"language": "Brazilian Portuguese", "code": "pt-br"},
|
{"language": "Brazilian Portuguese", "code": "pt-br"},
|
||||||
|
622
menu-translations.txt
Normal file
622
menu-translations.txt
Normal file
@ -0,0 +1,622 @@
|
|||||||
|
Bulgarian (bg), Field: Backup or restore, English: Backup or restore, Translated: Архивиране или възстановяване
|
||||||
|
Bulgarian (bg), Field: Report a bug, English: Report a bug, Translated: Докладвай за грешка
|
||||||
|
Bulgarian (bg), Field: Antivirus (ClamAV), English: Antivirus (ClamAV), Translated: Антивирус (ClamAV)
|
||||||
|
Bulgarian (bg), Field: Date and time, English: Date and time, Translated: Дата и час
|
||||||
|
Bulgarian (bg), Field: Directory, English: Directory, Translated: Директория
|
||||||
|
Bulgarian (bg), Field: Domains, English: Domains, Translated: Домейни
|
||||||
|
Bulgarian (bg), Field: E-mail, English: E-mail, Translated: Имейл
|
||||||
|
Bulgarian (bg), Field: Hostnames and addresses, English: Hostnames and addresses, Translated: Имена на хостове и адреси
|
||||||
|
Bulgarian (bg), Field: Shared areas (was ibays), English: Shared areas (was ibays), Translated: Споделени области (беше ibays)
|
||||||
|
Bulgarian (bg), Field: Home, English: Home, Translated: Начало
|
||||||
|
Bulgarian (bg), Field: Legacy panel, English: Legacy panel, Translated: Наследствен панел
|
||||||
|
Bulgarian (bg), Field: Local networks, English: Local networks, Translated: Местни мрежи
|
||||||
|
Bulgarian (bg), Field: Logout, English: Logout, Translated: Изход
|
||||||
|
Bulgarian (bg), Field: Online manual, English: Online manual, Translated: Онлайн ръководство
|
||||||
|
Bulgarian (bg), Field: NFS data share, English: NFS data share, Translated: Дял за данни NFS
|
||||||
|
Bulgarian (bg), Field: Port forwarding, English: Port forwarding, Translated: Пренасочване на портове
|
||||||
|
Bulgarian (bg), Field: Printers, English: Printers, Translated: Принтери
|
||||||
|
Bulgarian (bg), Field: Proxy settings, English: Proxy settings, Translated: Настройки на прокси
|
||||||
|
Bulgarian (bg), Field: Pseudonyms, English: Pseudonyms, Translated: Псевдоними
|
||||||
|
Bulgarian (bg), Field: Mail log file analysis, English: Mail log file analysis, Translated: Анализ на журнали с поща
|
||||||
|
Bulgarian (bg), Field: Quotas, English: Quotas, Translated: Квоти
|
||||||
|
Bulgarian (bg), Field: Reboot or shutdown, English: Reboot or shutdown, Translated: Рестартиране или изключване
|
||||||
|
Bulgarian (bg), Field: Review configuration, English: Review configuration, Translated: Преглед на конфигурацията
|
||||||
|
Bulgarian (bg), Field: Support and licensing, English: Support and licensing, Translated: Поддръжка и лицензиране
|
||||||
|
Bulgarian (bg), Field: Users, English: Users, Translated: Потребители
|
||||||
|
Bulgarian (bg), Field: User Panel Access, English: User Panel Access, Translated: Достъп до потребителския панел
|
||||||
|
Bulgarian (bg), Field: Change password, English: Change password, Translated: Промяна на паролата
|
||||||
|
Bulgarian (bg), Field: View log files, English: View log files, Translated: Преглед на log файлове
|
||||||
|
Bulgarian (bg), Field: Samba workgroup, English: Samba workgroup, Translated: Работна група Samba
|
||||||
|
Bulgarian (bg), Field: Software installer, English: Software installer, Translated: Инсталиране на софтуер
|
||||||
|
File not found for language: Danish (dk)
|
||||||
|
German (de), Field: Antivirus (ClamAV), English: Antivirus (ClamAV), Translated: Antivirus (ClamAV)
|
||||||
|
German (de), Field: Domains, English: Domains, Translated: Domains: Domänen
|
||||||
|
German (de), Field: Shared areas (was ibays), English: Shared areas (was ibays), Translated: Geteilte Bereiche (ehemals ibays)
|
||||||
|
German (de), Field: Home, English: Home, Translated: Startseite
|
||||||
|
German (de), Field: Legacy panel, English: Legacy panel, Translated: Altes Bedienfeld
|
||||||
|
German (de), Field: Logout, English: Logout, Translated: Abmelden
|
||||||
|
German (de), Field: NFS data share, English: NFS data share, Translated: NFS-Datenfreigabe
|
||||||
|
German (de), Field: User Panel Access, English: User Panel Access, Translated: Benutzerbereich Zugriff
|
||||||
|
German (de), Field: Change password, English: Change password, Translated: Passwort ändern
|
||||||
|
German (de), Field: Samba workgroup, English: Samba workgroup, Translated: Samba-Arbeitsgruppe
|
||||||
|
File not found for language: Greek (gr)
|
||||||
|
|
||||||
|
Spanish (es), Field: Report a bug, English: Report a bug, Translated: Informar de un error
|
||||||
|
Spanish (es), Field: Antivirus (ClamAV), English: Antivirus (ClamAV), Translated: Antivirus (ClamAV)
|
||||||
|
Spanish (es), Field: Domains, English: Domains, Translated: Dominios
|
||||||
|
Spanish (es), Field: E-mail, English: E-mail, Translated: Correo electrónico
|
||||||
|
Spanish (es), Field: Shared areas (was ibays), English: Shared areas (was ibays), Translated: Áreas compartidas (anteriormente ibays)
|
||||||
|
Spanish (es), Field: Home, English: Home, Translated: Inicio
|
||||||
|
Spanish (es), Field: Legacy panel, English: Legacy panel, Translated: Panel heredado
|
||||||
|
Spanish (es), Field: Logout, English: Logout, Translated: Cerrar sesión
|
||||||
|
Spanish (es), Field: NFS data share, English: NFS data share, Translated: Comparte de datos NFS
|
||||||
|
Spanish (es), Field: User Panel Access, English: User Panel Access, Translated: Acceso al Panel de Usuario
|
||||||
|
Spanish (es), Field: Change password, English: Change password, Translated: Cambiar contraseña
|
||||||
|
Spanish (es), Field: Samba workgroup, English: Samba workgroup, Translated: Grupo de trabajo de Samba
|
||||||
|
|
||||||
|
Estonian (et), Field: Backup or restore, English: Backup or restore, Translated: Varundamine või taastamine
|
||||||
|
Estonian (et), Field: Report a bug, English: Report a bug, Translated: Teata veast
|
||||||
|
Estonian (et), Field: Antivirus (ClamAV), English: Antivirus (ClamAV), Translated: Viirusevastane (ClamAV)
|
||||||
|
Estonian (et), Field: Date and time, English: Date and time, Translated: Kuupäev ja kellaaeg
|
||||||
|
Estonian (et), Field: Directory, English: Directory, Translated: Kataloog
|
||||||
|
Estonian (et), Field: Domains, English: Domains, Translated: Domeenid
|
||||||
|
Estonian (et), Field: E-mail, English: E-mail, Translated: E-post
|
||||||
|
Estonian (et), Field: Hostnames and addresses, English: Hostnames and addresses, Translated: Hostinimed ja aadressid
|
||||||
|
Estonian (et), Field: Shared areas (was ibays), English: Shared areas (was ibays), Translated: Jagatud alad (oli ibays)
|
||||||
|
Estonian (et), Field: Home, English: Home, Translated: Kodu
|
||||||
|
Estonian (et), Field: Legacy panel, English: Legacy panel, Translated: Pärandpaneel
|
||||||
|
Estonian (et), Field: Local networks, English: Local networks, Translated: Kohalikud võrgud
|
||||||
|
Estonian (et), Field: Logout, English: Logout, Translated: Logi välja
|
||||||
|
Estonian (et), Field: Online manual, English: Online manual, Translated: Veebimanuaal
|
||||||
|
Estonian (et), Field: NFS data share, English: NFS data share, Translated: NFS andmete jagamine
|
||||||
|
Estonian (et), Field: Port forwarding, English: Port forwarding, Translated: Pordi edastamine
|
||||||
|
Estonian (et), Field: Printers, English: Printers, Translated: Printerid
|
||||||
|
Estonian (et), Field: Proxy settings, English: Proxy settings, Translated: Puhverserveri seaded
|
||||||
|
Estonian (et), Field: Pseudonyms, English: Pseudonyms, Translated: Pseudonüümid
|
||||||
|
Estonian (et), Field: Mail log file analysis, English: Mail log file analysis, Translated: Posti logifaili analüüs
|
||||||
|
Estonian (et), Field: Quotas, English: Quotas, Translated: Kvoodid
|
||||||
|
Estonian (et), Field: Reboot or shutdown, English: Reboot or shutdown, Translated: Taaskäivitus või sulgemine
|
||||||
|
Estonian (et), Field: Remote access, English: Remote access, Translated: Kaugjuurdepääs
|
||||||
|
Estonian (et), Field: Review configuration, English: Review configuration, Translated: Konfiguratsiooni ülevaade
|
||||||
|
Estonian (et), Field: Support and licensing, English: Support and licensing, Translated: Toetus ja litsentsimine
|
||||||
|
Estonian (et), Field: Users, English: Users, Translated: Kasutajad
|
||||||
|
Estonian (et), Field: User Panel Access, English: User Panel Access, Translated: Kasutajapaneeli Juurdepääs
|
||||||
|
Estonian (et), Field: Change password, English: Change password, Translated: Muuda parooli
|
||||||
|
Estonian (et), Field: View log files, English: View log files, Translated: Vaata logifaile
|
||||||
|
Estonian (et), Field: Samba workgroup, English: Samba workgroup, Translated: Samba töögrupp
|
||||||
|
Estonian (et), Field: Software installer, English: Software installer, Translated: Tarkvara paigaldaja
|
||||||
|
|
||||||
|
French (fr), Field: Antivirus (ClamAV), English: Antivirus (ClamAV), Translated: Antivirus (ClamAV)
|
||||||
|
French (fr), Field: Domains, English: Domains, Translated: Domaines
|
||||||
|
French (fr), Field: Shared areas (was ibays), English: Shared areas (was ibays), Translated: Zones partagées (anciennement ibays)
|
||||||
|
French (fr), Field: Legacy panel, English: Legacy panel, Translated: Panneau Hérité
|
||||||
|
French (fr), Field: NFS data share, English: NFS data share, Translated: Partage de données NFS
|
||||||
|
French (fr), Field: Quotas, English: Quotas, Translated: Quotas
|
||||||
|
French (fr), Field: User Panel Access, English: User Panel Access, Translated: Accès au Panneau Utilisateur
|
||||||
|
French (fr), Field: Change password, English: Change password, Translated: Changer le mot de passe
|
||||||
|
French (fr), Field: Samba workgroup, English: Samba workgroup, Translated: Groupe de travail Samba
|
||||||
|
|
||||||
|
Hebrew (il), Field: Backup or restore, English: Backup or restore, Translated: גיבוי או שחזור
|
||||||
|
Hebrew (il), Field: Report a bug, English: Report a bug, Translated: דווח על באג
|
||||||
|
Hebrew (il), Field: Antivirus (ClamAV), English: Antivirus (ClamAV), Translated: אנטי וירוס (ClamAV)
|
||||||
|
Hebrew (il), Field: Date and time, English: Date and time, Translated: תאריך ושעה
|
||||||
|
Hebrew (il), Field: Directory, English: Directory, Translated: ספרייה
|
||||||
|
Hebrew (il), Field: Domains, English: Domains, Translated: דומיינים
|
||||||
|
Hebrew (il), Field: E-mail, English: E-mail, Translated: אימייל
|
||||||
|
Hebrew (il), Field: Groups, English: Groups, Translated: קבוצות
|
||||||
|
Hebrew (il), Field: Hostnames and addresses, English: Hostnames and addresses, Translated: שמות מארחים וכתובות
|
||||||
|
Hebrew (il), Field: Shared areas (was ibays), English: Shared areas (was ibays), Translated: אזורים משותפים (היו ibays)
|
||||||
|
Hebrew (il), Field: Home, English: Home, Translated: דף הבית
|
||||||
|
Hebrew (il), Field: Legacy panel, English: Legacy panel, Translated: לוח מיושן
|
||||||
|
Hebrew (il), Field: Local networks, English: Local networks, Translated: רשתות מקומיות
|
||||||
|
Hebrew (il), Field: Logout, English: Logout, Translated: התנתקות
|
||||||
|
Hebrew (il), Field: Online manual, English: Online manual, Translated: מדריך מקוון
|
||||||
|
Hebrew (il), Field: NFS data share, English: NFS data share, Translated: שיתוף נתונים NFS
|
||||||
|
Hebrew (il), Field: Port forwarding, English: Port forwarding, Translated: העברת פורטים
|
||||||
|
Hebrew (il), Field: Printers, English: Printers, Translated: מדפסות
|
||||||
|
Hebrew (il), Field: Proxy settings, English: Proxy settings, Translated: הגדרות פרוקסי
|
||||||
|
Hebrew (il), Field: Pseudonyms, English: Pseudonyms, Translated: פסבדונים
|
||||||
|
Hebrew (il), Field: Mail log file analysis, English: Mail log file analysis, Translated: ניתוח קובץ יומן דואר
|
||||||
|
Hebrew (il), Field: Quotas, English: Quotas, Translated: מכסות
|
||||||
|
Hebrew (il), Field: Reboot or shutdown, English: Reboot or shutdown, Translated: אתחל או כבה
|
||||||
|
Hebrew (il), Field: Remote access, English: Remote access, Translated: גישה מרחוק
|
||||||
|
Hebrew (il), Field: Review configuration, English: Review configuration, Translated: סקירת תצורה
|
||||||
|
Hebrew (il), Field: Support and licensing, English: Support and licensing, Translated: תמיכה ורישוי
|
||||||
|
Hebrew (il), Field: Users, English: Users, Translated: משתמשים
|
||||||
|
Hebrew (il), Field: User Panel Access, English: User Panel Access, Translated: גישה לפאנל המשתמש
|
||||||
|
Hebrew (il), Field: Change password, English: Change password, Translated: שנה סיסמה
|
||||||
|
Hebrew (il), Field: View log files, English: View log files, Translated: צפה בקבצי יומן
|
||||||
|
Hebrew (il), Field: Samba workgroup, English: Samba workgroup, Translated: קבוצת עבודה של Samba
|
||||||
|
Hebrew (il), Field: Software installer, English: Software installer, Translated: מתקין תוכנה
|
||||||
|
|
||||||
|
Hungarian (hu), Field: Backup or restore, English: Backup or restore, Translated: Biztonsági mentés vagy visszaállítás
|
||||||
|
Hungarian (hu), Field: Report a bug, English: Report a bug, Translated: Hiba jelentése
|
||||||
|
Hungarian (hu), Field: Antivirus (ClamAV), English: Antivirus (ClamAV), Translated: Vírusirtó (ClamAV)
|
||||||
|
Hungarian (hu), Field: Date and time, English: Date and time, Translated: Dátum és idő
|
||||||
|
Hungarian (hu), Field: Directory, English: Directory, Translated: Könyvtár
|
||||||
|
Hungarian (hu), Field: Domains, English: Domains, Translated: Tartományok
|
||||||
|
Hungarian (hu), Field: E-mail, English: E-mail, Translated: E-mail
|
||||||
|
Hungarian (hu), Field: Hostnames and addresses, English: Hostnames and addresses, Translated: Hosztnevek és címek
|
||||||
|
Hungarian (hu), Field: Shared areas (was ibays), English: Shared areas (was ibays), Translated: Megosztott területek (korábban ibays)
|
||||||
|
Hungarian (hu), Field: Home, English: Home, Translated: Kezdőlap
|
||||||
|
Hungarian (hu), Field: Legacy panel, English: Legacy panel, Translated: Klasszikus panel
|
||||||
|
Hungarian (hu), Field: Local networks, English: Local networks, Translated: Helyi hálózatok
|
||||||
|
Hungarian (hu), Field: Logout, English: Logout, Translated: Kijelentkezés
|
||||||
|
Hungarian (hu), Field: Online manual, English: Online manual, Translated: Online kézikönyv
|
||||||
|
Hungarian (hu), Field: NFS data share, English: NFS data share, Translated: NFS adatmegosztás
|
||||||
|
Hungarian (hu), Field: Port forwarding, English: Port forwarding, Translated: Port továbbítás
|
||||||
|
Hungarian (hu), Field: Printers, English: Printers, Translated: Nyomtatók
|
||||||
|
Hungarian (hu), Field: Proxy settings, English: Proxy settings, Translated: Proxy beállítások
|
||||||
|
Hungarian (hu), Field: Pseudonyms, English: Pseudonyms, Translated: Pseudonimok
|
||||||
|
Hungarian (hu), Field: Mail log file analysis, English: Mail log file analysis, Translated: Levél naplófájl elemzése
|
||||||
|
Hungarian (hu), Field: Quotas, English: Quotas, Translated: Kvóták
|
||||||
|
Hungarian (hu), Field: Reboot or shutdown, English: Reboot or shutdown, Translated: Újraindítás vagy leállítás
|
||||||
|
Hungarian (hu), Field: Remote access, English: Remote access, Translated: Távoli hozzáférés
|
||||||
|
Hungarian (hu), Field: Review configuration, English: Review configuration, Translated: Konfiguráció áttekintése
|
||||||
|
Hungarian (hu), Field: Support and licensing, English: Support and licensing, Translated: Támogatás és licencelés
|
||||||
|
Hungarian (hu), Field: Users, English: Users, Translated: Felhasználók
|
||||||
|
Hungarian (hu), Field: User Panel Access, English: User Panel Access, Translated: Felhasználói panel hozzáférés
|
||||||
|
Hungarian (hu), Field: Change password, English: Change password, Translated: Jelszó megváltoztatása
|
||||||
|
Hungarian (hu), Field: View log files, English: View log files, Translated: Naplófájlok megtekintése
|
||||||
|
Hungarian (hu), Field: Samba workgroup, English: Samba workgroup, Translated: Samba munkacsoport
|
||||||
|
Hungarian (hu), Field: Software installer, English: Software installer, Translated: Szoftvertelepítő
|
||||||
|
Indonesian (id), Field: Backup or restore, English: Backup or restore, Translated: Cadangkan atau pulihkan
|
||||||
|
Indonesian (id), Field: Report a bug, English: Report a bug, Translated: Laporkan Bug
|
||||||
|
Indonesian (id), Field: Antivirus (ClamAV), English: Antivirus (ClamAV), Translated: Antivirus (ClamAV)
|
||||||
|
Indonesian (id), Field: Date and time, English: Date and time, Translated: Tanggal dan waktu
|
||||||
|
Indonesian (id), Field: Directory, English: Directory, Translated: Direktori
|
||||||
|
Indonesian (id), Field: Domains, English: Domains, Translated: Domain
|
||||||
|
Indonesian (id), Field: E-mail, English: E-mail, Translated: E-mail
|
||||||
|
Indonesian (id), Field: Hostnames and addresses, English: Hostnames and addresses, Translated: Nama host dan alamat
|
||||||
|
Indonesian (id), Field: Shared areas (was ibays), English: Shared areas (was ibays), Translated: Area bersama (sebelumnya ibays)
|
||||||
|
Indonesian (id), Field: Home, English: Home, Translated: Beranda
|
||||||
|
Indonesian (id), Field: Legacy panel, English: Legacy panel, Translated: Panel warisan
|
||||||
|
Indonesian (id), Field: Local networks, English: Local networks, Translated: Jaringan lokal
|
||||||
|
Indonesian (id), Field: Logout, English: Logout, Translated: Keluar
|
||||||
|
Indonesian (id), Field: Online manual, English: Online manual, Translated: Manual daring
|
||||||
|
Indonesian (id), Field: NFS data share, English: NFS data share, Translated: Berbagi data NFS
|
||||||
|
Indonesian (id), Field: Port forwarding, English: Port forwarding, Translated: Penerusan port
|
||||||
|
Indonesian (id), Field: Printers, English: Printers, Translated: Printer
|
||||||
|
Indonesian (id), Field: Proxy settings, English: Proxy settings, Translated: Pengaturan proxy
|
||||||
|
Indonesian (id), Field: Pseudonyms, English: Pseudonyms, Translated: Nama Samaran
|
||||||
|
Indonesian (id), Field: Mail log file analysis, English: Mail log file analysis, Translated: Analisis file log surat
|
||||||
|
Indonesian (id), Field: Quotas, English: Quotas, Translated: Kuota
|
||||||
|
Indonesian (id), Field: Reboot or shutdown, English: Reboot or shutdown, Translated: Mulai Ulang atau Matikan
|
||||||
|
Indonesian (id), Field: Remote access, English: Remote access, Translated: Akses jarak jauh
|
||||||
|
Indonesian (id), Field: Review configuration, English: Review configuration, Translated: Tinjau konfigurasi
|
||||||
|
Indonesian (id), Field: Support and licensing, English: Support and licensing, Translated: Dukungan dan Lisensi
|
||||||
|
Indonesian (id), Field: Users, English: Users, Translated: Pengguna
|
||||||
|
Indonesian (id), Field: User Panel Access, English: User Panel Access, Translated: Akses Panel Pengguna
|
||||||
|
Indonesian (id), Field: Change password, English: Change password, Translated: Ubah kata sandi
|
||||||
|
Indonesian (id), Field: View log files, English: View log files, Translated: Lihat file log
|
||||||
|
Indonesian (id), Field: Samba workgroup, English: Samba workgroup, Translated: Grup kerja Samba
|
||||||
|
Indonesian (id), Field: Software installer, English: Software installer, Translated: Penginstal perangkat lunak
|
||||||
|
|
||||||
|
Italian (it), Field: Report a bug, English: Report a bug, Translated: Segnala un bug
|
||||||
|
Italian (it), Field: Antivirus (ClamAV), English: Antivirus (ClamAV), Translated: Antivirus (ClamAV)
|
||||||
|
Italian (it), Field: Domains, English: Domains, Translated: Domini
|
||||||
|
Italian (it), Field: E-mail, English: E-mail, Translated: E-mail
|
||||||
|
Italian (it), Field: Shared areas (was ibays), English: Shared areas (was ibays), Translated: Aree condivise (precedentemente ibay)
|
||||||
|
Italian (it), Field: Home, English: Home, Translated: Home
|
||||||
|
Italian (it), Field: Legacy panel, English: Legacy panel, Translated: Pannello legacy
|
||||||
|
Italian (it), Field: Logout, English: Logout, Translated: Esci
|
||||||
|
Italian (it), Field: NFS data share, English: NFS data share, Translated: Condivisione dati NFS
|
||||||
|
Italian (it), Field: Port forwarding, English: Port forwarding, Translated: Inoltro delle porte
|
||||||
|
Italian (it), Field: User Panel Access, English: User Panel Access, Translated: Accesso Pannello Utente
|
||||||
|
Italian (it), Field: Change password, English: Change password, Translated: Cambia password
|
||||||
|
Italian (it), Field: Samba workgroup, English: Samba workgroup, Translated: Gruppo di lavoro Samba
|
||||||
|
|
||||||
|
Japanese (jp), Field: Report a bug, English: Report a bug, Translated: バグを報告
|
||||||
|
Japanese (jp), Field: Antivirus (ClamAV), English: Antivirus (ClamAV), Translated: アンチウイルス (ClamAV)
|
||||||
|
Japanese (jp), Field: Date and time, English: Date and time, Translated: 日付と時刻
|
||||||
|
Japanese (jp), Field: Domains, English: Domains, Translated: ドメイン
|
||||||
|
Japanese (jp), Field: E-mail, English: E-mail, Translated: Eメール
|
||||||
|
Japanese (jp), Field: Hostnames and addresses, English: Hostnames and addresses, Translated: ホスト名とアドレス
|
||||||
|
Japanese (jp), Field: Shared areas (was ibays), English: Shared areas (was ibays), Translated: 共有エリア(以前のアイベイズ)
|
||||||
|
Japanese (jp), Field: Home, English: Home, Translated: ホーム
|
||||||
|
Japanese (jp), Field: Legacy panel, English: Legacy panel, Translated: レガシーパネル
|
||||||
|
Japanese (jp), Field: Local networks, English: Local networks, Translated: ローカルネットワーク
|
||||||
|
Japanese (jp), Field: Logout, English: Logout, Translated: ログアウト
|
||||||
|
Japanese (jp), Field: NFS data share, English: NFS data share, Translated: NFSデータ共有
|
||||||
|
Japanese (jp), Field: Port forwarding, English: Port forwarding, Translated: ポートフォワーディング
|
||||||
|
Japanese (jp), Field: Printers, English: Printers, Translated: プリンター
|
||||||
|
Japanese (jp), Field: Proxy settings, English: Proxy settings, Translated: プロキシ設定
|
||||||
|
Japanese (jp), Field: Pseudonyms, English: Pseudonyms, Translated: 仮名
|
||||||
|
Japanese (jp), Field: Mail log file analysis, English: Mail log file analysis, Translated: メールログファイル解析
|
||||||
|
Japanese (jp), Field: Quotas, English: Quotas, Translated: クォータ
|
||||||
|
Japanese (jp), Field: Reboot or shutdown, English: Reboot or shutdown, Translated: 再起動またはシャットダウン
|
||||||
|
Japanese (jp), Field: Remote access, English: Remote access, Translated: リモートアクセス
|
||||||
|
Japanese (jp), Field: Review configuration, English: Review configuration, Translated: 構成の確認
|
||||||
|
Japanese (jp), Field: User Panel Access, English: User Panel Access, Translated: ユーザーパネルアクセス
|
||||||
|
Japanese (jp), Field: Change password, English: Change password, Translated: パスワードの変更
|
||||||
|
Japanese (jp), Field: View log files, English: View log files, Translated: ログファイルを表示
|
||||||
|
Japanese (jp), Field: Samba workgroup, English: Samba workgroup, Translated: Samba ワークグループ
|
||||||
|
Japanese (jp), Field: Software installer, English: Software installer, Translated: ソフトウェアインストーラ
|
||||||
|
|
||||||
|
Norwegian Bokmål (no), Field: Backup or restore, English: Backup or restore, Translated: Sikkerhetskopiere eller gjenopprette
|
||||||
|
Norwegian Bokmål (no), Field: Report a bug, English: Report a bug, Translated: Rapporter en feil
|
||||||
|
Norwegian Bokmål (no), Field: Antivirus (ClamAV), English: Antivirus (ClamAV), Translated: Antivirus (ClamAV)
|
||||||
|
Norwegian Bokmål (no), Field: Date and time, English: Date and time, Translated: Dato og tid
|
||||||
|
Norwegian Bokmål (no), Field: Directory, English: Directory, Translated: Katalog
|
||||||
|
Norwegian Bokmål (no), Field: Domains, English: Domains, Translated: Domener
|
||||||
|
Norwegian Bokmål (no), Field: E-mail, English: E-mail, Translated: E-post
|
||||||
|
Norwegian Bokmål (no), Field: Hostnames and addresses, English: Hostnames and addresses, Translated: Vertsnavn og adresser
|
||||||
|
Norwegian Bokmål (no), Field: Shared areas (was ibays), English: Shared areas (was ibays), Translated: Delte områder (tidligere ibays)
|
||||||
|
Norwegian Bokmål (no), Field: Home, English: Home, Translated: Hjem
|
||||||
|
Norwegian Bokmål (no), Field: Legacy panel, English: Legacy panel, Translated: Legacy-panel
|
||||||
|
Norwegian Bokmål (no), Field: Local networks, English: Local networks, Translated: Lokale nettverk
|
||||||
|
Norwegian Bokmål (no), Field: Logout, English: Logout, Translated: Logg ut
|
||||||
|
Norwegian Bokmål (no), Field: Online manual, English: Online manual, Translated: Online manual → Online brukerveiledning
|
||||||
|
Norwegian Bokmål (no), Field: NFS data share, English: NFS data share, Translated: NFS-datalagring
|
||||||
|
Norwegian Bokmål (no), Field: Port forwarding, English: Port forwarding, Translated: Port videresending
|
||||||
|
Norwegian Bokmål (no), Field: Printers, English: Printers, Translated: Skrivere
|
||||||
|
Norwegian Bokmål (no), Field: Proxy settings, English: Proxy settings, Translated: Proxy-innstillinger
|
||||||
|
Norwegian Bokmål (no), Field: Pseudonyms, English: Pseudonyms, Translated: Pseudonymer
|
||||||
|
Norwegian Bokmål (no), Field: Mail log file analysis, English: Mail log file analysis, Translated: Analyser postloggfil
|
||||||
|
Norwegian Bokmål (no), Field: Quotas, English: Quotas, Translated: Kvoter
|
||||||
|
Norwegian Bokmål (no), Field: Reboot or shutdown, English: Reboot or shutdown, Translated: Omstart eller avstenging
|
||||||
|
Norwegian Bokmål (no), Field: Remote access, English: Remote access, Translated: Fjernstyring
|
||||||
|
Norwegian Bokmål (no), Field: Review configuration, English: Review configuration, Translated: Gjennomgå konfigurasjon
|
||||||
|
Norwegian Bokmål (no), Field: Support and licensing, English: Support and licensing, Translated: Støtte og lisensiering
|
||||||
|
Norwegian Bokmål (no), Field: Users, English: Users, Translated: Brukere
|
||||||
|
Norwegian Bokmål (no), Field: User Panel Access, English: User Panel Access, Translated: Brukerpanelets tilgang
|
||||||
|
Norwegian Bokmål (no), Field: Change password, English: Change password, Translated: Endre passord
|
||||||
|
Norwegian Bokmål (no), Field: View log files, English: View log files, Translated: Vis loggfiler
|
||||||
|
Norwegian Bokmål (no), Field: Samba workgroup, English: Samba workgroup, Translated: Samba arbeidsgruppe
|
||||||
|
Norwegian Bokmål (no), Field: Software installer, English: Software installer, Translated: Programvareinstallatør
|
||||||
|
|
||||||
|
Dutch (nl), Field: Report a bug, English: Report a bug, Translated: Een bug melden
|
||||||
|
Dutch (nl), Field: Antivirus (ClamAV), English: Antivirus (ClamAV), Translated: Antivirus (ClamAV)
|
||||||
|
Dutch (nl), Field: Domains, English: Domains, Translated: Domeinen
|
||||||
|
Dutch (nl), Field: E-mail, English: E-mail, Translated: E-mail
|
||||||
|
Dutch (nl), Field: Shared areas (was ibays), English: Shared areas (was ibays), Translated: Gedeelde gebieden (voorheen ibays)
|
||||||
|
Dutch (nl), Field: Home, English: Home, Translated: Startpagina
|
||||||
|
Dutch (nl), Field: Legacy panel, English: Legacy panel, Translated: Ouder paneel
|
||||||
|
Dutch (nl), Field: Local networks, English: Local networks, Translated: Lokale netwerken
|
||||||
|
Dutch (nl), Field: Logout, English: Logout, Translated: Uitloggen
|
||||||
|
Dutch (nl), Field: NFS data share, English: NFS data share, Translated: NFS-gegevensdeling
|
||||||
|
Dutch (nl), Field: Printers, English: Printers, Translated: Printers
|
||||||
|
Dutch (nl), Field: Support and licensing, English: Support and licensing, Translated: Ondersteuning en licenties
|
||||||
|
Dutch (nl), Field: User Panel Access, English: User Panel Access, Translated: Gebruikerspaneel Toegang
|
||||||
|
Dutch (nl), Field: Change password, English: Change password, Translated: Wijzig wachtwoord
|
||||||
|
Dutch (nl), Field: Samba workgroup, English: Samba workgroup, Translated: Samba-werkgroep
|
||||||
|
Dutch (nl), Field: Software installer, English: Software installer, Translated: Software-installatieprogramma
|
||||||
|
|
||||||
|
Polish (pl), Field: Backup or restore, English: Backup or restore, Translated: Kopia zapasowa lub przywracanie
|
||||||
|
Polish (pl), Field: Report a bug, English: Report a bug, Translated: Zgłoś błąd
|
||||||
|
Polish (pl), Field: Antivirus (ClamAV), English: Antivirus (ClamAV), Translated: Antywirus (ClamAV)
|
||||||
|
Polish (pl), Field: Date and time, English: Date and time, Translated: Data i godzina
|
||||||
|
Polish (pl), Field: Directory, English: Directory, Translated: Katalog
|
||||||
|
Polish (pl), Field: Domains, English: Domains, Translated: Domeny
|
||||||
|
Polish (pl), Field: E-mail, English: E-mail, Translated: E-mail
|
||||||
|
Polish (pl), Field: Hostnames and addresses, English: Hostnames and addresses, Translated: Nazwy hostów i adresy
|
||||||
|
Polish (pl), Field: Shared areas (was ibays), English: Shared areas (was ibays), Translated: Obszary udostępnione (dawniej ibays)
|
||||||
|
Polish (pl), Field: Home, English: Home, Translated: Strona główna
|
||||||
|
Polish (pl), Field: Legacy panel, English: Legacy panel, Translated: Starszy panel
|
||||||
|
Polish (pl), Field: Local networks, English: Local networks, Translated: Sieci lokalne
|
||||||
|
Polish (pl), Field: Logout, English: Logout, Translated: Wyloguj się
|
||||||
|
Polish (pl), Field: Online manual, English: Online manual, Translated: Instrukcja online
|
||||||
|
Polish (pl), Field: NFS data share, English: NFS data share, Translated: Udostępnianie danych NFS
|
||||||
|
Polish (pl), Field: Port forwarding, English: Port forwarding, Translated: Przekierowanie portów
|
||||||
|
Polish (pl), Field: Printers, English: Printers, Translated: Drukarki
|
||||||
|
Polish (pl), Field: Proxy settings, English: Proxy settings, Translated: Ustawienia proxy
|
||||||
|
Polish (pl), Field: Pseudonyms, English: Pseudonyms, Translated: Pseudonimy
|
||||||
|
Polish (pl), Field: Mail log file analysis, English: Mail log file analysis, Translated: Analiza pliku dziennika poczty
|
||||||
|
Polish (pl), Field: Quotas, English: Quotas, Translated: Limity
|
||||||
|
Polish (pl), Field: Reboot or shutdown, English: Reboot or shutdown, Translated: Uruchom ponownie lub wyłącz
|
||||||
|
Polish (pl), Field: Remote access, English: Remote access, Translated: Zdalny dostęp
|
||||||
|
Polish (pl), Field: Review configuration, English: Review configuration, Translated: Przegląd konfiguracji
|
||||||
|
Polish (pl), Field: Support and licensing, English: Support and licensing, Translated: Wsparcie i licencjonowanie
|
||||||
|
Polish (pl), Field: Users, English: Users, Translated: Użytkownicy
|
||||||
|
Polish (pl), Field: User Panel Access, English: User Panel Access, Translated: Dostęp do Panelu Użytkownika
|
||||||
|
Polish (pl), Field: Change password, English: Change password, Translated: Zmień hasło
|
||||||
|
Polish (pl), Field: View log files, English: View log files, Translated: Wyświetl pliki dziennika
|
||||||
|
Polish (pl), Field: Samba workgroup, English: Samba workgroup, Translated: Grupa robocza Samba
|
||||||
|
|
||||||
|
Polish (pl), Field: Software installer, English: Software installer, Translated: Instalator oprogramowania
|
||||||
|
Brazilian Portuguese (pt-br), Field: Report a bug, English: Report a bug, Translated: Relatar um bug
|
||||||
|
Brazilian Portuguese (pt-br), Field: Antivirus (ClamAV), English: Antivirus (ClamAV), Translated: Antivírus (ClamAV)
|
||||||
|
Brazilian Portuguese (pt-br), Field: Date and time, English: Date and time, Translated: Data e hora
|
||||||
|
Brazilian Portuguese (pt-br), Field: Directory, English: Directory, Translated: Diretório
|
||||||
|
Brazilian Portuguese (pt-br), Field: Domains, English: Domains, Translated: Domínios
|
||||||
|
Brazilian Portuguese (pt-br), Field: E-mail, English: E-mail, Translated: E-mail
|
||||||
|
Brazilian Portuguese (pt-br), Field: Hostnames and addresses, English: Hostnames and addresses, Translated: Nomes de host e endereços
|
||||||
|
Brazilian Portuguese (pt-br), Field: Shared areas (was ibays), English: Shared areas (was ibays), Translated: Áreas compartilhadas (eram ibays)
|
||||||
|
Brazilian Portuguese (pt-br), Field: Home, English: Home, Translated: Início
|
||||||
|
Brazilian Portuguese (pt-br), Field: Legacy panel, English: Legacy panel, Translated: Painel Legado
|
||||||
|
Brazilian Portuguese (pt-br), Field: Local networks, English: Local networks, Translated: Redes locais
|
||||||
|
Brazilian Portuguese (pt-br), Field: Logout, English: Logout, Translated: Finalizar Sessão
|
||||||
|
Brazilian Portuguese (pt-br), Field: Online manual, English: Online manual, Translated: Manual online
|
||||||
|
Brazilian Portuguese (pt-br), Field: NFS data share, English: NFS data share, Translated: Compartilhamento de dados NFS
|
||||||
|
Brazilian Portuguese (pt-br), Field: Port forwarding, English: Port forwarding, Translated: Encaminhamento de porta
|
||||||
|
Brazilian Portuguese (pt-br), Field: Printers, English: Printers, Translated: Impressoras
|
||||||
|
Brazilian Portuguese (pt-br), Field: Proxy settings, English: Proxy settings, Translated: Configurações de proxy
|
||||||
|
Brazilian Portuguese (pt-br), Field: Pseudonyms, English: Pseudonyms, Translated: Pseudônimos
|
||||||
|
Brazilian Portuguese (pt-br), Field: Mail log file analysis, English: Mail log file analysis, Translated: Análise de arquivo de log de email
|
||||||
|
Brazilian Portuguese (pt-br), Field: Quotas, English: Quotas, Translated: Quotas
|
||||||
|
Brazilian Portuguese (pt-br), Field: Reboot or shutdown, English: Reboot or shutdown, Translated: Reiniciar ou desligar
|
||||||
|
Brazilian Portuguese (pt-br), Field: Remote access, English: Remote access, Translated: Acesso remoto
|
||||||
|
Brazilian Portuguese (pt-br), Field: Review configuration, English: Review configuration, Translated: Revisar configuração
|
||||||
|
Brazilian Portuguese (pt-br), Field: Support and licensing, English: Support and licensing, Translated: Suporte e licenciamento
|
||||||
|
Brazilian Portuguese (pt-br), Field: Users, English: Users, Translated: Usuários
|
||||||
|
Brazilian Portuguese (pt-br), Field: User Panel Access, English: User Panel Access, Translated: Acesso ao Painel do Usuário
|
||||||
|
Brazilian Portuguese (pt-br), Field: Change password, English: Change password, Translated: Alterar senha
|
||||||
|
Brazilian Portuguese (pt-br), Field: View log files, English: View log files, Translated: Ver arquivos de log
|
||||||
|
Brazilian Portuguese (pt-br), Field: Samba workgroup, English: Samba workgroup, Translated: Grupo de trabalho do Samba
|
||||||
|
Brazilian Portuguese (pt-br), Field: Software installer, English: Software installer, Translated: Instalador de software
|
||||||
|
|
||||||
|
Portuguese (pt), Field: Report a bug, English: Report a bug, Translated: Relatar um erro
|
||||||
|
Portuguese (pt), Field: Antivirus (ClamAV), English: Antivirus (ClamAV), Translated: Antivírus (ClamAV)
|
||||||
|
Portuguese (pt), Field: Date and time, English: Date and time, Translated: Data e hora
|
||||||
|
Portuguese (pt), Field: Domains, English: Domains, Translated: Domínios
|
||||||
|
Portuguese (pt), Field: E-mail, English: E-mail, Translated: E-mail
|
||||||
|
Portuguese (pt), Field: Shared areas (was ibays), English: Shared areas (was ibays), Translated: Áreas compartilhadas (antigamente ibays)
|
||||||
|
Portuguese (pt), Field: Home, English: Home, Translated: Início
|
||||||
|
Portuguese (pt), Field: Legacy panel, English: Legacy panel, Translated: Painel legado
|
||||||
|
Portuguese (pt), Field: Local networks, English: Local networks, Translated: Redes Locais
|
||||||
|
Portuguese (pt), Field: Logout, English: Logout, Translated: Logout
|
||||||
|
Portuguese (pt), Field: NFS data share, English: NFS data share, Translated: Compartilhamento de dados NFS
|
||||||
|
Portuguese (pt), Field: Port forwarding, English: Port forwarding, Translated: Encaminhamento de portas
|
||||||
|
Portuguese (pt), Field: Proxy settings, English: Proxy settings, Translated: Configurações de proxy
|
||||||
|
Portuguese (pt), Field: Remote access, English: Remote access, Translated: Acesso remoto
|
||||||
|
Portuguese (pt), Field: User Panel Access, English: User Panel Access, Translated: Acesso ao Painel do Usuário
|
||||||
|
Portuguese (pt), Field: Change password, English: Change password, Translated: Alterar senha
|
||||||
|
Portuguese (pt), Field: Samba workgroup, English: Samba workgroup, Translated: Grupo de trabalho Samba
|
||||||
|
Portuguese (pt), Field: Software installer, English: Software installer, Translated: Instalador de software
|
||||||
|
|
||||||
|
Romanian (ro), Field: Backup or restore, English: Backup or restore, Translated: Backup sau restaurare
|
||||||
|
Romanian (ro), Field: Report a bug, English: Report a bug, Translated: Raportați o eroare
|
||||||
|
Romanian (ro), Field: Antivirus (ClamAV), English: Antivirus (ClamAV), Translated: Antivirus (ClamAV)
|
||||||
|
Romanian (ro), Field: Date and time, English: Date and time, Translated: Data și ora
|
||||||
|
Romanian (ro), Field: Directory, English: Directory, Translated: Director
|
||||||
|
Romanian (ro), Field: Domains, English: Domains, Translated: Domenii
|
||||||
|
Romanian (ro), Field: E-mail, English: E-mail, Translated: E-mail
|
||||||
|
Romanian (ro), Field: Groups, English: Groups, Translated: Grupuri
|
||||||
|
Romanian (ro), Field: Hostnames and addresses, English: Hostnames and addresses, Translated: Nume gazdă și adrese
|
||||||
|
Romanian (ro), Field: Shared areas (was ibays), English: Shared areas (was ibays), Translated: Zone partajate (au fost ibays)
|
||||||
|
Romanian (ro), Field: Home, English: Home, Translated: Acasă
|
||||||
|
Romanian (ro), Field: Legacy panel, English: Legacy panel, Translated: Panou vechi
|
||||||
|
Romanian (ro), Field: Local networks, English: Local networks, Translated: Rețele locale
|
||||||
|
Romanian (ro), Field: Logout, English: Logout, Translated: Deconectare
|
||||||
|
Romanian (ro), Field: Online manual, English: Online manual, Translated: Manual online
|
||||||
|
Romanian (ro), Field: NFS data share, English: NFS data share, Translated: Partajare date NFS
|
||||||
|
Romanian (ro), Field: Port forwarding, English: Port forwarding, Translated: Port forwarding
|
||||||
|
Romanian (ro), Field: Printers, English: Printers, Translated: Imprimante
|
||||||
|
Romanian (ro), Field: Proxy settings, English: Proxy settings, Translated: Setări proxy
|
||||||
|
Romanian (ro), Field: Pseudonyms, English: Pseudonyms, Translated: Pseudonime
|
||||||
|
Romanian (ro), Field: Mail log file analysis, English: Mail log file analysis, Translated: Analiza fișierului jurnal de e-mail
|
||||||
|
Romanian (ro), Field: Quotas, English: Quotas, Translated: Cote
|
||||||
|
Romanian (ro), Field: Reboot or shutdown, English: Reboot or shutdown, Translated: Repornește sau oprește
|
||||||
|
Romanian (ro), Field: Remote access, English: Remote access, Translated: Acces de la distanță
|
||||||
|
Romanian (ro), Field: Review configuration, English: Review configuration, Translated: Revizuire configurație
|
||||||
|
Romanian (ro), Field: Support and licensing, English: Support and licensing, Translated: Suport și licențiere
|
||||||
|
Romanian (ro), Field: Users, English: Users, Translated: Utilizatori
|
||||||
|
Romanian (ro), Field: User Panel Access, English: User Panel Access, Translated: Acces Panou Utilizator
|
||||||
|
Romanian (ro), Field: Change password, English: Change password, Translated: Schimbă parola
|
||||||
|
Romanian (ro), Field: View log files, English: View log files, Translated: Vizualizare fișiere jurnal
|
||||||
|
Romanian (ro), Field: Samba workgroup, English: Samba workgroup, Translated: Grup de lucru Samba
|
||||||
|
Romanian (ro), Field: Software installer, English: Software installer, Translated: Instalator software
|
||||||
|
|
||||||
|
Russian (ru), Field: Backup or restore, English: Backup or restore, Translated: Резервное копирование или восстановление
|
||||||
|
Russian (ru), Field: Report a bug, English: Report a bug, Translated: Сообщить об ошибке
|
||||||
|
Russian (ru), Field: Antivirus (ClamAV), English: Antivirus (ClamAV), Translated: Антивирус (ClamAV)
|
||||||
|
Russian (ru), Field: Date and time, English: Date and time, Translated: Дата и время
|
||||||
|
Russian (ru), Field: Directory, English: Directory, Translated: Каталог
|
||||||
|
Russian (ru), Field: Domains, English: Domains, Translated: Домены
|
||||||
|
Russian (ru), Field: E-mail, English: E-mail, Translated: Электронная почта
|
||||||
|
Russian (ru), Field: Hostnames and addresses, English: Hostnames and addresses, Translated: Имена хостов и адреса
|
||||||
|
Russian (ru), Field: Shared areas (was ibays), English: Shared areas (was ibays), Translated: Общие области (бывшие ibays)
|
||||||
|
Russian (ru), Field: Home, English: Home, Translated: Главная
|
||||||
|
Russian (ru), Field: Legacy panel, English: Legacy panel, Translated: Панель наследия
|
||||||
|
Russian (ru), Field: Local networks, English: Local networks, Translated: Местные сети
|
||||||
|
Russian (ru), Field: Logout, English: Logout, Translated: Выйти
|
||||||
|
Russian (ru), Field: Online manual, English: Online manual, Translated: Онлайн-руководство
|
||||||
|
Russian (ru), Field: NFS data share, English: NFS data share, Translated: Общий доступ к данным NFS
|
||||||
|
Russian (ru), Field: Port forwarding, English: Port forwarding, Translated: Переадресация портов
|
||||||
|
Russian (ru), Field: Printers, English: Printers, Translated: Принтеры
|
||||||
|
Russian (ru), Field: Proxy settings, English: Proxy settings, Translated: Настройки прокси
|
||||||
|
Russian (ru), Field: Pseudonyms, English: Pseudonyms, Translated: Псевдонимы
|
||||||
|
Russian (ru), Field: Mail log file analysis, English: Mail log file analysis, Translated: Анализ журнала почты
|
||||||
|
Russian (ru), Field: Quotas, English: Quotas, Translated: Квоты
|
||||||
|
Russian (ru), Field: Reboot or shutdown, English: Reboot or shutdown, Translated: Перезагрузить или завершить работу
|
||||||
|
Russian (ru), Field: Remote access, English: Remote access, Translated: Удаленный доступ
|
||||||
|
Russian (ru), Field: Review configuration, English: Review configuration, Translated: Просмотр конфигурации
|
||||||
|
Russian (ru), Field: Support and licensing, English: Support and licensing, Translated: Поддержка и лицензирование
|
||||||
|
Russian (ru), Field: Users, English: Users, Translated: Пользователи
|
||||||
|
Russian (ru), Field: User Panel Access, English: User Panel Access, Translated: Доступ к панели пользователя
|
||||||
|
Russian (ru), Field: Change password, English: Change password, Translated: Сменить пароль
|
||||||
|
Russian (ru), Field: View log files, English: View log files, Translated: Просмотр файлов журнала
|
||||||
|
Russian (ru), Field: Samba workgroup, English: Samba workgroup, Translated: Рабочая группа Samba
|
||||||
|
Russian (ru), Field: Software installer, English: Software installer, Translated: Установщик программного обеспечения
|
||||||
|
|
||||||
|
Slovenian (sl), Field: Backup or restore, English: Backup or restore, Translated: Varnostna kopija ali obnovitev
|
||||||
|
Slovenian (sl), Field: Report a bug, English: Report a bug, Translated: Prijavi hrošča
|
||||||
|
Slovenian (sl), Field: Antivirus (ClamAV), English: Antivirus (ClamAV), Translated: Antivirus (ClamAV)
|
||||||
|
Slovenian (sl), Field: Date and time, English: Date and time, Translated: Datum in čas
|
||||||
|
Slovenian (sl), Field: Directory, English: Directory, Translated: Imenik
|
||||||
|
Slovenian (sl), Field: Domains, English: Domains, Translated: Domene
|
||||||
|
Slovenian (sl), Field: E-mail, English: E-mail, Translated: E-pošta
|
||||||
|
Slovenian (sl), Field: Hostnames and addresses, English: Hostnames and addresses, Translated: Imena gostiteljev in naslovi
|
||||||
|
Slovenian (sl), Field: Shared areas (was ibays), English: Shared areas (was ibays), Translated: Skupna območja (prej ibays)
|
||||||
|
Slovenian (sl), Field: Home, English: Home, Translated: Domov
|
||||||
|
Slovenian (sl), Field: Legacy panel, English: Legacy panel, Translated: Zapuščena plošča
|
||||||
|
Slovenian (sl), Field: Local networks, English: Local networks, Translated: Lokalna omrežja
|
||||||
|
Slovenian (sl), Field: Logout, English: Logout, Translated: Odjava
|
||||||
|
Slovenian (sl), Field: Online manual, English: Online manual, Translated: Spletni priročnik
|
||||||
|
Slovenian (sl), Field: NFS data share, English: NFS data share, Translated: Souporaba podatkov NFS
|
||||||
|
Slovenian (sl), Field: Port forwarding, English: Port forwarding, Translated: Posredovanje vrat
|
||||||
|
Slovenian (sl), Field: Printers, English: Printers, Translated: Tiskalniki
|
||||||
|
Slovenian (sl), Field: Proxy settings, English: Proxy settings, Translated: Nastavitve proxyja
|
||||||
|
Slovenian (sl), Field: Pseudonyms, English: Pseudonyms, Translated: Psevdonimi
|
||||||
|
Slovenian (sl), Field: Mail log file analysis, English: Mail log file analysis, Translated: Analiza datotek dnevnika pošte
|
||||||
|
Slovenian (sl), Field: Quotas, English: Quotas, Translated: Kvote
|
||||||
|
Slovenian (sl), Field: Reboot or shutdown, English: Reboot or shutdown, Translated: Znova zaženi ali izklopi
|
||||||
|
Slovenian (sl), Field: Remote access, English: Remote access, Translated: Oddaljen dostop
|
||||||
|
Slovenian (sl), Field: Review configuration, English: Review configuration, Translated: Preglej konfiguracijo
|
||||||
|
Slovenian (sl), Field: Support and licensing, English: Support and licensing, Translated: Podpora in licenciranje
|
||||||
|
Slovenian (sl), Field: Users, English: Users, Translated: Uporabniki
|
||||||
|
Slovenian (sl), Field: User Panel Access, English: User Panel Access, Translated: Dostop do uporabniške plošče
|
||||||
|
Slovenian (sl), Field: Change password, English: Change password, Translated: Spremeni geslo
|
||||||
|
Slovenian (sl), Field: View log files, English: View log files, Translated: Ogled dnevniških datotek
|
||||||
|
Slovenian (sl), Field: Samba workgroup, English: Samba workgroup, Translated: Delovna skupina Samba
|
||||||
|
Slovenian (sl), Field: Software installer, English: Software installer, Translated: Namestitveni program
|
||||||
|
|
||||||
|
Swedish (sv), Field: Backup or restore, English: Backup or restore, Translated: Säkerhetskopiera eller återställ
|
||||||
|
Swedish (sv), Field: Report a bug, English: Report a bug, Translated: Rapportera ett fel
|
||||||
|
Swedish (sv), Field: Antivirus (ClamAV), English: Antivirus (ClamAV), Translated: Antivirus (ClamAV)
|
||||||
|
Swedish (sv), Field: Date and time, English: Date and time, Translated: Datum och tid
|
||||||
|
Swedish (sv), Field: Directory, English: Directory, Translated: Katalog
|
||||||
|
Swedish (sv), Field: Domains, English: Domains, Translated: Domäner
|
||||||
|
Swedish (sv), Field: E-mail, English: E-mail, Translated: E-post
|
||||||
|
Swedish (sv), Field: Hostnames and addresses, English: Hostnames and addresses, Translated: Värdnamn och adresser
|
||||||
|
Swedish (sv), Field: Shared areas (was ibays), English: Shared areas (was ibays), Translated: Delade områden (tidigare ibays)
|
||||||
|
Swedish (sv), Field: Home, English: Home, Translated: Hem
|
||||||
|
Swedish (sv), Field: Legacy panel, English: Legacy panel, Translated: Äldre panel
|
||||||
|
Swedish (sv), Field: Local networks, English: Local networks, Translated: Lokala nätverk
|
||||||
|
Swedish (sv), Field: Logout, English: Logout, Translated: Logga ut
|
||||||
|
Swedish (sv), Field: Online manual, English: Online manual, Translated: Online-manual
|
||||||
|
Swedish (sv), Field: NFS data share, English: NFS data share, Translated: NFS-datadelning
|
||||||
|
Swedish (sv), Field: Port forwarding, English: Port forwarding, Translated: Portvidarebefordran
|
||||||
|
Swedish (sv), Field: Printers, English: Printers, Translated: Skrivare
|
||||||
|
Swedish (sv), Field: Proxy settings, English: Proxy settings, Translated: Proxyinställningar
|
||||||
|
Swedish (sv), Field: Pseudonyms, English: Pseudonyms, Translated: Pseudonymer
|
||||||
|
Swedish (sv), Field: Mail log file analysis, English: Mail log file analysis, Translated: Analys av e-postloggfiler
|
||||||
|
Swedish (sv), Field: Quotas, English: Quotas, Translated: Kvoter
|
||||||
|
Swedish (sv), Field: Reboot or shutdown, English: Reboot or shutdown, Translated: Starta om eller stäng av
|
||||||
|
Swedish (sv), Field: Remote access, English: Remote access, Translated: Fjärråtkomst
|
||||||
|
Swedish (sv), Field: Review configuration, English: Review configuration, Translated: Granska konfiguration
|
||||||
|
Swedish (sv), Field: Support and licensing, English: Support and licensing, Translated: Support och licensiering
|
||||||
|
Swedish (sv), Field: Users, English: Users, Translated: Användare
|
||||||
|
Swedish (sv), Field: User Panel Access, English: User Panel Access, Translated: Användarpanel Åtkomst
|
||||||
|
Swedish (sv), Field: Change password, English: Change password, Translated: Byt lösenord
|
||||||
|
Swedish (sv), Field: View log files, English: View log files, Translated: Visa loggfiler
|
||||||
|
Swedish (sv), Field: Samba workgroup, English: Samba workgroup, Translated: Samba arbetsgrupp
|
||||||
|
Swedish (sv), Field: Software installer, English: Software installer, Translated: Programvaruinstallatör
|
||||||
|
|
||||||
|
Thai (th), Field: Backup or restore, English: Backup or restore, Translated: สำรองหรือกู้คืน
|
||||||
|
Thai (th), Field: Report a bug, English: Report a bug, Translated: รายงานข้อบกพร่อง
|
||||||
|
Thai (th), Field: Antivirus (ClamAV), English: Antivirus (ClamAV), Translated: แอนติไวรัส (ClamAV)
|
||||||
|
Thai (th), Field: Date and time, English: Date and time, Translated: วันที่และเวลา
|
||||||
|
Thai (th), Field: Directory, English: Directory, Translated: ไดเรกทอรี
|
||||||
|
Thai (th), Field: Domains, English: Domains, Translated: โดเมน
|
||||||
|
Thai (th), Field: E-mail, English: E-mail, Translated: อีเมล
|
||||||
|
Thai (th), Field: Hostnames and addresses, English: Hostnames and addresses, Translated: ชื่อโฮสต์และที่อยู่
|
||||||
|
Thai (th), Field: Shared areas (was ibays), English: Shared areas (was ibays), Translated: พื้นที่ใช้ร่วมกัน (เดิมเรียกว่า ibays)
|
||||||
|
Thai (th), Field: Home, English: Home, Translated: หน้าแรก
|
||||||
|
Thai (th), Field: Legacy panel, English: Legacy panel, Translated: แผงควบคุมแบบเก่า
|
||||||
|
Thai (th), Field: Local networks, English: Local networks, Translated: เครือข่ายภายใน
|
||||||
|
Thai (th), Field: Logout, English: Logout, Translated: ออกจากระบบ
|
||||||
|
Thai (th), Field: Online manual, English: Online manual, Translated: คู่มือออนไลน์
|
||||||
|
Thai (th), Field: NFS data share, English: NFS data share, Translated: การแบ่งปันข้อมูล NFS
|
||||||
|
Thai (th), Field: Port forwarding, English: Port forwarding, Translated: การส่งต่อพอร์ต
|
||||||
|
Thai (th), Field: Printers, English: Printers, Translated: เครื่องพิมพ์
|
||||||
|
Thai (th), Field: Proxy settings, English: Proxy settings, Translated: การตั้งค่า Proxy
|
||||||
|
Thai (th), Field: Pseudonyms, English: Pseudonyms, Translated: ชื่อแฝง
|
||||||
|
Thai (th), Field: Mail log file analysis, English: Mail log file analysis, Translated: การวิเคราะห์ไฟล์บันทึกจดหมาย
|
||||||
|
Thai (th), Field: Quotas, English: Quotas, Translated: โควตา
|
||||||
|
Thai (th), Field: Reboot or shutdown, English: Reboot or shutdown, Translated: รีบูตหรือปิดระบบ
|
||||||
|
Thai (th), Field: Remote access, English: Remote access, Translated: การเข้าถึงระยะไกล
|
||||||
|
Thai (th), Field: Review configuration, English: Review configuration, Translated: ตรวจสอบการกำหนดค่า
|
||||||
|
Thai (th), Field: Support and licensing, English: Support and licensing, Translated: การสนับสนุนและการอนุญาตใช้งาน
|
||||||
|
Thai (th), Field: Users, English: Users, Translated: ผู้ใช้
|
||||||
|
Thai (th), Field: User Panel Access, English: User Panel Access, Translated: การเข้าถึงแผงผู้ใช้
|
||||||
|
Thai (th), Field: Change password, English: Change password, Translated: เปลี่ยนรหัสผ่าน
|
||||||
|
Thai (th), Field: View log files, English: View log files, Translated: ดูไฟล์บันทึก
|
||||||
|
Thai (th), Field: Samba workgroup, English: Samba workgroup, Translated: กลุ่มการทำงานของ Samba
|
||||||
|
Thai (th), Field: Software installer, English: Software installer, Translated: เครื่องมือติดตั้งซอฟต์แวร์
|
||||||
|
|
||||||
|
Turkish (tr), Field: Backup or restore, English: Backup or restore, Translated: Yedekleme veya geri yükleme
|
||||||
|
Turkish (tr), Field: Report a bug, English: Report a bug, Translated: Bir hata bildir
|
||||||
|
Turkish (tr), Field: Antivirus (ClamAV), English: Antivirus (ClamAV), Translated: Antivirüs (ClamAV)
|
||||||
|
Turkish (tr), Field: Date and time, English: Date and time, Translated: Tarih ve Saat
|
||||||
|
Turkish (tr), Field: Directory, English: Directory, Translated: Dizin
|
||||||
|
Turkish (tr), Field: Domains, English: Domains, Translated: Alanlar
|
||||||
|
Turkish (tr), Field: E-mail, English: E-mail, Translated: E-posta
|
||||||
|
Turkish (tr), Field: Hostnames and addresses, English: Hostnames and addresses, Translated: Ana Bilgisayar İsimleri ve Adresler
|
||||||
|
Turkish (tr), Field: Shared areas (was ibays), English: Shared areas (was ibays), Translated: Paylaşılan alanlar (önceki ibays)
|
||||||
|
Turkish (tr), Field: Home, English: Home, Translated: Ana Sayfa
|
||||||
|
Turkish (tr), Field: Legacy panel, English: Legacy panel, Translated: Eski panel
|
||||||
|
Turkish (tr), Field: Local networks, English: Local networks, Translated: Yerel ağlar
|
||||||
|
Turkish (tr), Field: Logout, English: Logout, Translated: Oturumu Kapat
|
||||||
|
Turkish (tr), Field: Online manual, English: Online manual, Translated: Çevrimiçi Kılavuz
|
||||||
|
Turkish (tr), Field: NFS data share, English: NFS data share, Translated: NFS veri paylaşımı
|
||||||
|
Turkish (tr), Field: Port forwarding, English: Port forwarding, Translated: Port yönlendirme
|
||||||
|
Turkish (tr), Field: Printers, English: Printers, Translated: Yazıcılar
|
||||||
|
Turkish (tr), Field: Proxy settings, English: Proxy settings, Translated: Proxy ayarları
|
||||||
|
Turkish (tr), Field: Pseudonyms, English: Pseudonyms, Translated: Takma Adlar
|
||||||
|
Turkish (tr), Field: Mail log file analysis, English: Mail log file analysis, Translated: Posta günlük dosyası analizi
|
||||||
|
Turkish (tr), Field: Quotas, English: Quotas, Translated: Kotalar
|
||||||
|
Turkish (tr), Field: Reboot or shutdown, English: Reboot or shutdown, Translated: Yeniden Başlat veya Kapat
|
||||||
|
Turkish (tr), Field: Remote access, English: Remote access, Translated: Uzaktan erişim
|
||||||
|
Turkish (tr), Field: Review configuration, English: Review configuration, Translated: Yapılandırmayı İncele
|
||||||
|
Turkish (tr), Field: Support and licensing, English: Support and licensing, Translated: Destek ve lisanslama
|
||||||
|
Turkish (tr), Field: Users, English: Users, Translated: Kullanıcılar
|
||||||
|
Turkish (tr), Field: User Panel Access, English: User Panel Access, Translated: Kullanıcı Paneli Erişimi
|
||||||
|
Turkish (tr), Field: Change password, English: Change password, Translated: Şifreyi değiştir
|
||||||
|
Turkish (tr), Field: View log files, English: View log files, Translated: Günlük dosyalarını görüntüle
|
||||||
|
Turkish (tr), Field: Samba workgroup, English: Samba workgroup, Translated: Samba çalışma grubu
|
||||||
|
Turkish (tr), Field: Software installer, English: Software installer, Translated: Yazılım Yükleyici
|
||||||
|
|
||||||
|
Simplified Chinese (zh-cn), Field: Backup or restore, English: Backup or restore, Translated: 备份或还原
|
||||||
|
Simplified Chinese (zh-cn), Field: Report a bug, English: Report a bug, Translated: 报告错误
|
||||||
|
Simplified Chinese (zh-cn), Field: Antivirus (ClamAV), English: Antivirus (ClamAV), Translated: 杀毒软件(ClamAV)
|
||||||
|
Simplified Chinese (zh-cn), Field: Date and time, English: Date and time, Translated: 日期和时间
|
||||||
|
Simplified Chinese (zh-cn), Field: Directory, English: Directory, Translated: 目录
|
||||||
|
Simplified Chinese (zh-cn), Field: Domains, English: Domains, Translated: 域名
|
||||||
|
Simplified Chinese (zh-cn), Field: E-mail, English: E-mail, Translated: 电子邮件
|
||||||
|
Simplified Chinese (zh-cn), Field: Hostnames and addresses, English: Hostnames and addresses, Translated: 主机名和地址
|
||||||
|
Simplified Chinese (zh-cn), Field: Shared areas (was ibays), English: Shared areas (was ibays), Translated: 共享区域(原 ibays)
|
||||||
|
Simplified Chinese (zh-cn), Field: Home, English: Home, Translated: 主页
|
||||||
|
Simplified Chinese (zh-cn), Field: Legacy panel, English: Legacy panel, Translated: 旧版控制面板
|
||||||
|
Simplified Chinese (zh-cn), Field: Local networks, English: Local networks, Translated: 本地网络
|
||||||
|
Simplified Chinese (zh-cn), Field: Logout, English: Logout, Translated: 注销
|
||||||
|
Simplified Chinese (zh-cn), Field: Online manual, English: Online manual, Translated: 在线手册
|
||||||
|
Simplified Chinese (zh-cn), Field: NFS data share, English: NFS data share, Translated: NFS 数据共享
|
||||||
|
Simplified Chinese (zh-cn), Field: Port forwarding, English: Port forwarding, Translated: 端口转发
|
||||||
|
Simplified Chinese (zh-cn), Field: Printers, English: Printers, Translated: 打印机
|
||||||
|
Simplified Chinese (zh-cn), Field: Proxy settings, English: Proxy settings, Translated: 代理设置
|
||||||
|
Simplified Chinese (zh-cn), Field: Pseudonyms, English: Pseudonyms, Translated: 假名
|
||||||
|
Simplified Chinese (zh-cn), Field: Mail log file analysis, English: Mail log file analysis, Translated: 邮件日志文件分析
|
||||||
|
Simplified Chinese (zh-cn), Field: Quotas, English: Quotas, Translated: 配额
|
||||||
|
Simplified Chinese (zh-cn), Field: Reboot or shutdown, English: Reboot or shutdown, Translated: 重新启动或关机
|
||||||
|
Simplified Chinese (zh-cn), Field: Remote access, English: Remote access, Translated: 远程访问
|
||||||
|
Simplified Chinese (zh-cn), Field: Review configuration, English: Review configuration, Translated: 查看配置
|
||||||
|
Simplified Chinese (zh-cn), Field: Support and licensing, English: Support and licensing, Translated: 支持与授权
|
||||||
|
Simplified Chinese (zh-cn), Field: Users, English: Users, Translated: 用户
|
||||||
|
Simplified Chinese (zh-cn), Field: User Panel Access, English: User Panel Access, Translated: 用户面板访问
|
||||||
|
Simplified Chinese (zh-cn), Field: Change password, English: Change password, Translated: 更改密码
|
||||||
|
Simplified Chinese (zh-cn), Field: View log files, English: View log files, Translated: 查看日志文件
|
||||||
|
Simplified Chinese (zh-cn), Field: Samba workgroup, English: Samba workgroup, Translated: Samba 工作组
|
||||||
|
Simplified Chinese (zh-cn), Field: Software installer, English: Software installer, Translated: 软件安装程序
|
||||||
|
|
||||||
|
Traditional Chinese (zh-tw), Field: Backup or restore, English: Backup or restore, Translated: 備份或恢復
|
||||||
|
Traditional Chinese (zh-tw), Field: Report a bug, English: Report a bug, Translated: 回報錯誤
|
||||||
|
Traditional Chinese (zh-tw), Field: Antivirus (ClamAV), English: Antivirus (ClamAV), Translated: 防毒軟體 (ClamAV)
|
||||||
|
Traditional Chinese (zh-tw), Field: Date and time, English: Date and time, Translated: 日期和時間
|
||||||
|
Traditional Chinese (zh-tw), Field: Directory, English: Directory, Translated: 目錄
|
||||||
|
Traditional Chinese (zh-tw), Field: Domains, English: Domains, Translated: 網域
|
||||||
|
Traditional Chinese (zh-tw), Field: E-mail, English: E-mail, Translated: 電子郵件
|
||||||
|
Traditional Chinese (zh-tw), Field: Hostnames and addresses, English: Hostnames and addresses, Translated: 主機名稱和地址
|
||||||
|
Traditional Chinese (zh-tw), Field: Shared areas (was ibays), English: Shared areas (was ibays), Translated: 共享區域(原 ibays)
|
||||||
|
Traditional Chinese (zh-tw), Field: Home, English: Home, Translated: 首頁
|
||||||
|
Traditional Chinese (zh-tw), Field: Legacy panel, English: Legacy panel, Translated: 傳統面板
|
||||||
|
Traditional Chinese (zh-tw), Field: Local networks, English: Local networks, Translated: 本地網路
|
||||||
|
Traditional Chinese (zh-tw), Field: Logout, English: Logout, Translated: 登出
|
||||||
|
Traditional Chinese (zh-tw), Field: Online manual, English: Online manual, Translated: 線上手冊
|
||||||
|
Traditional Chinese (zh-tw), Field: NFS data share, English: NFS data share, Translated: NFS 資料共享
|
||||||
|
Traditional Chinese (zh-tw), Field: Port forwarding, English: Port forwarding, Translated: 端口轉發
|
||||||
|
Traditional Chinese (zh-tw), Field: Printers, English: Printers, Translated: 印表機
|
||||||
|
Traditional Chinese (zh-tw), Field: Proxy settings, English: Proxy settings, Translated: 代理設定
|
||||||
|
Traditional Chinese (zh-tw), Field: Pseudonyms, English: Pseudonyms, Translated: 化名
|
||||||
|
Traditional Chinese (zh-tw), Field: Mail log file analysis, English: Mail log file analysis, Translated: 郵件日誌文件分析
|
||||||
|
Traditional Chinese (zh-tw), Field: Quotas, English: Quotas, Translated: 配額
|
||||||
|
Traditional Chinese (zh-tw), Field: Reboot or shutdown, English: Reboot or shutdown, Translated: 重新啟動或關機
|
||||||
|
Traditional Chinese (zh-tw), Field: Remote access, English: Remote access, Translated: 遠端存取
|
||||||
|
Traditional Chinese (zh-tw), Field: Review configuration, English: Review configuration, Translated: 檢視設定
|
||||||
|
Traditional Chinese (zh-tw), Field: Support and licensing, English: Support and licensing, Translated: 支援與授權
|
||||||
|
Traditional Chinese (zh-tw), Field: Users, English: Users, Translated: 用戶
|
||||||
|
Traditional Chinese (zh-tw), Field: User Panel Access, English: User Panel Access, Translated: 用戶面板存取
|
||||||
|
Traditional Chinese (zh-tw), Field: Change password, English: Change password, Translated: 更改密碼
|
||||||
|
Traditional Chinese (zh-tw), Field: View log files, English: View log files, Translated: 檢視日誌檔案
|
||||||
|
Traditional Chinese (zh-tw), Field: Samba workgroup, English: Samba workgroup, Translated: Samba 工作群組
|
||||||
|
Traditional Chinese (zh-tw), Field: Software installer, English: Software installer, Translated: 軟體安裝程式
|
346
sm2gen.py
346
sm2gen.py
@ -1,32 +1,31 @@
|
|||||||
import json5
|
import json5
|
||||||
import sys
|
import sys
|
||||||
import argparse
|
import argparse
|
||||||
from chameleon import PageTemplateFile,PageTemplate
|
from chameleon import PageTemplateFile, PageTemplate
|
||||||
import pkg_resources
|
import pkg_resources
|
||||||
import xml.etree.ElementTree as ET
|
import xml.etree.ElementTree as ET
|
||||||
import re
|
import re
|
||||||
import os
|
import os
|
||||||
import pkg_resources
|
|
||||||
from datetime import datetime
|
from datetime import datetime
|
||||||
import xml.etree.ElementTree as ET
|
|
||||||
from openai import OpenAI
|
from openai import OpenAI
|
||||||
import configparser
|
import configparser
|
||||||
import json
|
import json
|
||||||
|
|
||||||
#
|
#
|
||||||
#To Do
|
# To Do
|
||||||
# 1. Get routing working
|
# 1. Get routing working
|
||||||
# 2. Deal with ? and ! as sentence ends in text-format
|
# 2. Deal with ? and ! as sentence ends in text-format
|
||||||
# 3. Make lexical scan work with double or single quotes (if possible)
|
# 3. Make lexical scan work with double or single quotes (if possible)
|
||||||
|
|
||||||
SME2Gen_version = '0.8'
|
SME2Gen_version = "0.8"
|
||||||
json5_dict: dict = {}
|
json5_dict: dict = {}
|
||||||
json5_html_list: list = []
|
json5_html_list: list = []
|
||||||
# Define the path to the INI file
|
# Define the path to the INI file
|
||||||
ini_file_path = os.path.expanduser('~/.smegit/conf')
|
ini_file_path = os.path.expanduser("~/.smegit/conf")
|
||||||
OPENAI_API_KEY = ""
|
OPENAI_API_KEY = ""
|
||||||
|
|
||||||
def parse_json(json_obj, prefix=''):
|
|
||||||
|
def parse_json(json_obj, prefix=""):
|
||||||
structured_list = []
|
structured_list = []
|
||||||
if isinstance(json_obj, dict):
|
if isinstance(json_obj, dict):
|
||||||
for k, v in json_obj.items():
|
for k, v in json_obj.items():
|
||||||
@ -40,23 +39,27 @@ def parse_json(json_obj, prefix=''):
|
|||||||
structured_list.append(f"{prefix}: {json_obj}")
|
structured_list.append(f"{prefix}: {json_obj}")
|
||||||
return structured_list
|
return structured_list
|
||||||
|
|
||||||
|
|
||||||
def json5_to_list(filename):
|
def json5_to_list(filename):
|
||||||
with open(filename, 'r') as file:
|
with open(filename, "r") as file:
|
||||||
data = json5.load(file)
|
data = json5.load(file)
|
||||||
return parse_json(data)
|
return parse_json(data)
|
||||||
|
|
||||||
|
|
||||||
def json5_to_pandas(filename):
|
def json5_to_pandas(filename):
|
||||||
with open(filename, 'r') as file:
|
with open(filename, "r") as file:
|
||||||
data = json5.load(file)
|
data = json5.load(file)
|
||||||
print (data)
|
print(data)
|
||||||
return data.json_normalize(data)
|
return data.json_normalize(data)
|
||||||
|
|
||||||
|
|
||||||
def json5_to_dict(filename):
|
def json5_to_dict(filename):
|
||||||
with open(filename, 'r') as file:
|
with open(filename, "r") as file:
|
||||||
data = json5.load(file)
|
data = json5.load(file)
|
||||||
return data
|
return data
|
||||||
|
|
||||||
def rec_print(data, prefix=''):
|
|
||||||
|
def rec_print(data, prefix=""):
|
||||||
# Check if this item is a dictionary.
|
# Check if this item is a dictionary.
|
||||||
if isinstance(data, dict):
|
if isinstance(data, dict):
|
||||||
for key, val in data.items():
|
for key, val in data.items():
|
||||||
@ -69,6 +72,7 @@ def rec_print(data, prefix=''):
|
|||||||
else:
|
else:
|
||||||
print(f"{prefix}: {data}")
|
print(f"{prefix}: {data}")
|
||||||
|
|
||||||
|
|
||||||
def find_item(nested_dict, target_key):
|
def find_item(nested_dict, target_key):
|
||||||
for key, val in nested_dict.items():
|
for key, val in nested_dict.items():
|
||||||
if key == target_key:
|
if key == target_key:
|
||||||
@ -78,6 +82,7 @@ def find_item(nested_dict, target_key):
|
|||||||
if result is not None:
|
if result is not None:
|
||||||
return result
|
return result
|
||||||
|
|
||||||
|
|
||||||
def find_dicts_with_key(data, target_key):
|
def find_dicts_with_key(data, target_key):
|
||||||
results = []
|
results = []
|
||||||
if isinstance(data, dict):
|
if isinstance(data, dict):
|
||||||
@ -92,6 +97,7 @@ def find_dicts_with_key(data, target_key):
|
|||||||
results.extend(find_dicts_with_key(item, target_key))
|
results.extend(find_dicts_with_key(item, target_key))
|
||||||
return results
|
return results
|
||||||
|
|
||||||
|
|
||||||
def find_values_with_key(data, target_key):
|
def find_values_with_key(data, target_key):
|
||||||
results = []
|
results = []
|
||||||
if isinstance(data, dict):
|
if isinstance(data, dict):
|
||||||
@ -106,9 +112,10 @@ def find_values_with_key(data, target_key):
|
|||||||
results.extend(find_values_with_key(item, target_key))
|
results.extend(find_values_with_key(item, target_key))
|
||||||
return results
|
return results
|
||||||
|
|
||||||
|
|
||||||
def lint_json5(filename):
|
def lint_json5(filename):
|
||||||
try:
|
try:
|
||||||
with open(filename, 'r') as file:
|
with open(filename, "r") as file:
|
||||||
data = file.read()
|
data = file.read()
|
||||||
json5.loads(data)
|
json5.loads(data)
|
||||||
print(f"{filename} as JSON5 data is valid")
|
print(f"{filename} as JSON5 data is valid")
|
||||||
@ -123,29 +130,37 @@ def flatten_hash_of_lists(hash_of_lists):
|
|||||||
for key, value in hash_of_lists.items():
|
for key, value in hash_of_lists.items():
|
||||||
if isinstance(value, list):
|
if isinstance(value, list):
|
||||||
for i, item in enumerate(value):
|
for i, item in enumerate(value):
|
||||||
new_key = f"{key}_{i}" # Appending index to the key to maintain uniqueness
|
new_key = (
|
||||||
|
f"{key}_{i}" # Appending index to the key to maintain uniqueness
|
||||||
|
)
|
||||||
flattened[new_key] = item
|
flattened[new_key] = item
|
||||||
else:
|
else:
|
||||||
flattened[key] = value
|
flattened[key] = value
|
||||||
return flattened
|
return flattened
|
||||||
|
|
||||||
|
|
||||||
def hl(keyname):
|
def hl(keyname):
|
||||||
# Return highest level value for the keyname
|
# Return highest level value for the keyname
|
||||||
if keyname in json5_dict:
|
if keyname in json5_dict:
|
||||||
return json5_dict[keyname]
|
return json5_dict[keyname]
|
||||||
else:
|
else:
|
||||||
print(f"{keyname} not found in JSON5 - top level")
|
print(f"{keyname} not found in JSON5 - top level")
|
||||||
return 'None'
|
return "None"
|
||||||
|
|
||||||
|
|
||||||
def get_all_routes():
|
def get_all_routes():
|
||||||
route_list = [html_block.get('route') for html_block in json5_dict.get('html', [])]
|
route_list = [html_block.get("route") for html_block in json5_dict.get("html", [])]
|
||||||
return route_list
|
return route_list
|
||||||
|
|
||||||
|
|
||||||
def lc_get_all_routes():
|
def lc_get_all_routes():
|
||||||
# All routes in lower case
|
# All routes in lower case
|
||||||
route_list = [html_block.get('route').lower() for html_block in json5_dict.get('html', [])]
|
route_list = [
|
||||||
|
html_block.get("route").lower() for html_block in json5_dict.get("html", [])
|
||||||
|
]
|
||||||
return route_list
|
return route_list
|
||||||
|
|
||||||
|
|
||||||
def has_file_been_modified(file_path):
|
def has_file_been_modified(file_path):
|
||||||
# Get the file's creation time and last modification time in Unix timestamp
|
# Get the file's creation time and last modification time in Unix timestamp
|
||||||
creation_time = os.path.getctime(file_path)
|
creation_time = os.path.getctime(file_path)
|
||||||
@ -159,6 +174,7 @@ def has_file_been_modified(file_path):
|
|||||||
else:
|
else:
|
||||||
return False # File has not been modified after creation
|
return False # File has not been modified after creation
|
||||||
|
|
||||||
|
|
||||||
def parse_xml_to_dict(xml_file):
|
def parse_xml_to_dict(xml_file):
|
||||||
# Parse the XML file
|
# Parse the XML file
|
||||||
tree = ET.parse(xml_file)
|
tree = ET.parse(xml_file)
|
||||||
@ -172,11 +188,12 @@ def parse_xml_to_dict(xml_file):
|
|||||||
if elem.text:
|
if elem.text:
|
||||||
xml_dict[tag] = elem.text
|
xml_dict[tag] = elem.text
|
||||||
else:
|
else:
|
||||||
cdata_content = elem.find('.//').text # Extract CDATA text
|
cdata_content = elem.find(".//").text # Extract CDATA text
|
||||||
xml_dict[tag] = cdata_content
|
xml_dict[tag] = cdata_content
|
||||||
|
|
||||||
return xml_dict
|
return xml_dict
|
||||||
|
|
||||||
|
|
||||||
def deduplicate_array(arr):
|
def deduplicate_array(arr):
|
||||||
# Convert the array to a set to remove duplicates
|
# Convert the array to a set to remove duplicates
|
||||||
unique_set = set(arr)
|
unique_set = set(arr)
|
||||||
@ -186,11 +203,14 @@ def deduplicate_array(arr):
|
|||||||
|
|
||||||
return deduplicated_list
|
return deduplicated_list
|
||||||
|
|
||||||
|
|
||||||
def get_db_fields():
|
def get_db_fields():
|
||||||
return []
|
return []
|
||||||
|
|
||||||
|
|
||||||
def get_table_control_data():
|
def get_table_control_data():
|
||||||
return find_values_with_key(json5_html_list,'TableControl')
|
return find_values_with_key(json5_html_list, "TableControl")
|
||||||
|
|
||||||
|
|
||||||
def format_text(text):
|
def format_text(text):
|
||||||
#
|
#
|
||||||
@ -201,25 +221,25 @@ def format_text(text):
|
|||||||
# Split the text into sentences
|
# Split the text into sentences
|
||||||
sentences = text.split(".")
|
sentences = text.split(".")
|
||||||
words = sentences[0].split(" ")
|
words = sentences[0].split(" ")
|
||||||
#print(len(sentences))
|
# print(len(sentences))
|
||||||
# Deal with one capitalised word
|
# Deal with one capitalised word
|
||||||
if sentences[0].isupper() and len(sentences) == 1 and len(words) == 1:
|
if sentences[0].isupper() and len(sentences) == 1 and len(words) == 1:
|
||||||
return sentences[0].capitalize()
|
return sentences[0].capitalize()
|
||||||
else:
|
else:
|
||||||
for sentence in sentences:
|
for sentence in sentences:
|
||||||
#print(sentence)
|
# print(sentence)
|
||||||
# and splt into sub phrases, based on comma
|
# and splt into sub phrases, based on comma
|
||||||
formatted_phrases = []
|
formatted_phrases = []
|
||||||
phrases = sentence.split(",")
|
phrases = sentence.split(",")
|
||||||
|
|
||||||
for phrase in phrases:
|
for phrase in phrases:
|
||||||
#print(phrase)
|
# print(phrase)
|
||||||
phrase = phrase.lstrip()
|
phrase = phrase.lstrip()
|
||||||
formatted_words = []
|
formatted_words = []
|
||||||
words = phrase.split(' ')
|
words = phrase.split(" ")
|
||||||
|
|
||||||
for i,word in enumerate(words):
|
for i, word in enumerate(words):
|
||||||
#print(i,word)
|
# print(i,word)
|
||||||
# Check if the word is fully uppercase or not the first
|
# Check if the word is fully uppercase or not the first
|
||||||
word = word.lstrip()
|
word = word.lstrip()
|
||||||
if word.isupper() or i != 0:
|
if word.isupper() or i != 0:
|
||||||
@ -229,7 +249,7 @@ def format_text(text):
|
|||||||
formatted_words.append(word.capitalize())
|
formatted_words.append(word.capitalize())
|
||||||
|
|
||||||
# Join the formatted words back together for this phrase
|
# Join the formatted words back together for this phrase
|
||||||
formatted_phrase = ' '.join(formatted_words).lstrip()
|
formatted_phrase = " ".join(formatted_words).lstrip()
|
||||||
formatted_phrases.append(formatted_phrase)
|
formatted_phrases.append(formatted_phrase)
|
||||||
# and sentence
|
# and sentence
|
||||||
formatted_sentence = ", ".join(formatted_phrases).lstrip()
|
formatted_sentence = ", ".join(formatted_phrases).lstrip()
|
||||||
@ -238,29 +258,47 @@ def format_text(text):
|
|||||||
formatted_text = ". ".join(formatted_sentences).lstrip()
|
formatted_text = ". ".join(formatted_sentences).lstrip()
|
||||||
return formatted_text
|
return formatted_text
|
||||||
|
|
||||||
|
|
||||||
def get_completion(prompt):
|
def get_completion(prompt):
|
||||||
response = client.chat.completions.create(model="gpt-4o",
|
#
|
||||||
messages=[{'role':"user", 'content':prompt}],
|
# temperature: Controls the randomness of the response. Lower values make the output more focused and deterministic, while higher values make it more creative and random.
|
||||||
max_tokens=100)
|
# top_p: Controls the diversity of the response. It relates to nucleus sampling, where the model considers only the tokens with the top p probability mass.
|
||||||
|
# n: Number of completions to generate for each prompt.
|
||||||
|
# stop: A string or list of strings. Up to 4 sequences where the API will stop generating further tokens. The returned text will not contain the stop sequence.
|
||||||
|
# presence_penalty: A number between -2.0 and 2.0. Positive values penalize new tokens based on whether they appear in the text so far, increasing the model's likelihood to talk about new topics.
|
||||||
|
# frequency_penalty: A number between -2.0 and 2.0. Positive values penalize new tokens based on their existing frequency in the text so far, decreasing the model's likelihood to repeat the same line verbatim.
|
||||||
|
# logit_bias: A dictionary that allows you to manipulate the likelihood of specified tokens appearing in the output.
|
||||||
|
#
|
||||||
|
response = client.chat.completions.create(
|
||||||
|
model="gpt-4o",
|
||||||
|
messages=[{"role": "user", "content": prompt}],
|
||||||
|
temperature=0,
|
||||||
|
max_tokens=100,
|
||||||
|
)
|
||||||
# Extracting the content message from the JSON data
|
# Extracting the content message from the JSON data
|
||||||
response_data = response.to_dict()
|
response_data = response.to_dict()
|
||||||
content_message = response_data["choices"][0]["message"]["content"]
|
content_message = response_data["choices"][0]["message"]["content"]
|
||||||
return content_message.strip()
|
return content_message.strip()
|
||||||
|
|
||||||
def get_translation(message="Hello",language="french"):
|
|
||||||
|
def get_translation(message="Hello", language="french"):
|
||||||
prompt = f"""Translate the following text in triple ~~~ so that it is suitable for a server management application menu
|
prompt = f"""Translate the following text in triple ~~~ so that it is suitable for a server management application menu
|
||||||
and only return the actual translation; translate it from from English to {language} ~~~{message}~~~"""
|
and only return the actual translation; translate it from from English to {language} ~~~{message}~~~"""
|
||||||
translated_message = get_completion(prompt)
|
translated_message = get_completion(prompt)
|
||||||
# Look for over long messages
|
# Look for over long messages
|
||||||
if len(message)/len(translated_message) < 0.2:
|
if len(message) / len(translated_message) < 0.2:
|
||||||
print(f"{message} translated to {translated_message}")
|
print(f"{message} translated to {translated_message}")
|
||||||
quit()
|
quit()
|
||||||
return translated_message
|
return translated_message
|
||||||
|
|
||||||
|
|
||||||
def convert_lex_to_dict(pairs_string):
|
def convert_lex_to_dict(pairs_string):
|
||||||
# Splitting pairs string by comma and newline, excluding empty lines
|
# Splitting pairs string by comma and newline, excluding empty lines
|
||||||
pairs_list = [line for line in pairs_string.split(",\n") if line.strip()]
|
pairs_list = [line for line in pairs_string.split(",\n") if line.strip()]
|
||||||
data_dict = {pair.split(" => ")[0].strip("'"): pair.split(" => ")[1].strip("'") for pair in pairs_list}
|
data_dict = {
|
||||||
|
pair.split(" => ")[0].strip("'"): pair.split(" => ")[1].strip("'")
|
||||||
|
for pair in pairs_list
|
||||||
|
}
|
||||||
formatted_dict = [{"id": key, "text": value} for key, value in data_dict.items()]
|
formatted_dict = [{"id": key, "text": value} for key, value in data_dict.items()]
|
||||||
return formatted_dict
|
return formatted_dict
|
||||||
|
|
||||||
@ -275,7 +313,16 @@ if __name__ == "__main__":
|
|||||||
current_datetime = datetime.now()
|
current_datetime = datetime.now()
|
||||||
formatted_datetime = current_datetime.strftime("%Y-%m-%d %H:%M")
|
formatted_datetime = current_datetime.strftime("%Y-%m-%d %H:%M")
|
||||||
|
|
||||||
strVersion = "SM2Gen version:"+SME2Gen_version+" Chameleon version:"+chameleon_version+" On Python:"+python_version+" at "+formatted_datetime
|
strVersion = (
|
||||||
|
"SM2Gen version:"
|
||||||
|
+ SME2Gen_version
|
||||||
|
+ " Chameleon version:"
|
||||||
|
+ chameleon_version
|
||||||
|
+ " On Python:"
|
||||||
|
+ python_version
|
||||||
|
+ " at "
|
||||||
|
+ formatted_datetime
|
||||||
|
)
|
||||||
|
|
||||||
json5_dict: dict = {}
|
json5_dict: dict = {}
|
||||||
json5_html_list: list = []
|
json5_html_list: list = []
|
||||||
@ -293,9 +340,9 @@ if __name__ == "__main__":
|
|||||||
config.read(ini_file_path)
|
config.read(ini_file_path)
|
||||||
|
|
||||||
# Read the value of "OPENAI_API_KEY"
|
# Read the value of "OPENAI_API_KEY"
|
||||||
if 'OPENAI_API_KEY' in config['smegit']:
|
if "OPENAI_API_KEY" in config["smegit"]:
|
||||||
OPENAI_API_KEY = config['smegit']['OPENAI_API_KEY']
|
OPENAI_API_KEY = config["smegit"]["OPENAI_API_KEY"]
|
||||||
#print("API Key:", OPENAI_API_KEY)
|
# print("API Key:", OPENAI_API_KEY)
|
||||||
client = OpenAI(api_key=OPENAI_API_KEY)
|
client = OpenAI(api_key=OPENAI_API_KEY)
|
||||||
else:
|
else:
|
||||||
print("OPENAI_API_KEY not found in the configuration file.")
|
print("OPENAI_API_KEY not found in the configuration file.")
|
||||||
@ -304,59 +351,83 @@ if __name__ == "__main__":
|
|||||||
|
|
||||||
# Command line parameters - not in use
|
# Command line parameters - not in use
|
||||||
parser = argparse.ArgumentParser(description="SM2Gen")
|
parser = argparse.ArgumentParser(description="SM2Gen")
|
||||||
parser.add_argument('-f', '--filename', help='Specify a filename for the JSON5 file', default=json_filename)
|
parser.add_argument(
|
||||||
parser.add_argument('-nco', '--noController', help='Stop it creating a controller file', default="no")
|
"-f",
|
||||||
parser.add_argument('-nh', '--noHtml', help='Stop it creating html files(s)', default="no")
|
"--filename",
|
||||||
parser.add_argument('-nl', '--noLang', help='Stop it creating language localise files(s)', default="no")
|
help="Specify a filename for the JSON5 file",
|
||||||
parser.add_argument('-ncu', '--noCust', help='Stop it creating Custom controller file', default="no")
|
default=json_filename,
|
||||||
|
)
|
||||||
|
parser.add_argument(
|
||||||
|
"-nco",
|
||||||
|
"--noController",
|
||||||
|
help="Stop it creating a controller file",
|
||||||
|
default="no",
|
||||||
|
)
|
||||||
|
parser.add_argument(
|
||||||
|
"-nh", "--noHtml", help="Stop it creating html files(s)", default="no"
|
||||||
|
)
|
||||||
|
parser.add_argument(
|
||||||
|
"-nl",
|
||||||
|
"--noLang",
|
||||||
|
help="Stop it creating language localise files(s)",
|
||||||
|
default="no",
|
||||||
|
)
|
||||||
|
parser.add_argument(
|
||||||
|
"-ncu", "--noCust", help="Stop it creating Custom controller file", default="no"
|
||||||
|
)
|
||||||
args = parser.parse_args()
|
args = parser.parse_args()
|
||||||
json_filename = args.filename
|
json_filename = args.filename
|
||||||
print(f"JSON5 from {json_filename} with noController={args.noController}, noHtml={args.noHtml} and noLang={args.noLang}") #Not yet activated
|
print(
|
||||||
|
f"JSON5 from {json_filename} with noController={args.noController}, noHtml={args.noHtml} and noLang={args.noLang}"
|
||||||
|
) # Not yet activated
|
||||||
|
|
||||||
# check syntax of JSON5
|
# check syntax of JSON5
|
||||||
lint_json5(json_filename);
|
lint_json5(json_filename)
|
||||||
|
|
||||||
# Get dict of it all
|
# Get dict of it all
|
||||||
json5_dict = json5_to_dict(json_filename)
|
json5_dict = json5_to_dict(json_filename)
|
||||||
|
|
||||||
# Get dict of just the html bit
|
# Get dict of just the html bit
|
||||||
json5_html_list = json5_dict['html']
|
json5_html_list = json5_dict["html"]
|
||||||
|
|
||||||
#Identify message
|
# Identify message
|
||||||
print(f"\nGenerating mojo panels for {hl('PackageName')}")
|
print(f"\nGenerating mojo panels for {hl('PackageName')}")
|
||||||
print( "-----------------------------------")
|
print("-----------------------------------")
|
||||||
|
|
||||||
# Routes for each panel
|
# Routes for each panel
|
||||||
routes = get_all_routes();
|
routes = get_all_routes()
|
||||||
lc_routes =lc_get_all_routes();
|
lc_routes = lc_get_all_routes()
|
||||||
|
|
||||||
#File names
|
# File names
|
||||||
controller_file = 'Targets/'+hl('PackageName')+'.pm'
|
controller_file = "Targets/" + hl("PackageName") + ".pm"
|
||||||
custom_controller_file = 'Targets/'+hl('PackageName')+'-Custom.pm'
|
custom_controller_file = "Targets/" + hl("PackageName") + "-Custom.pm"
|
||||||
# Call it .new if one is already there (and may have been editted by the developer)
|
# Call it .new if one is already there (and may have been editted by the developer)
|
||||||
if os.path.exists(custom_controller_file):
|
if os.path.exists(custom_controller_file):
|
||||||
custom_controller_file = custom_controller_file+'.new'
|
custom_controller_file = custom_controller_file + ".new"
|
||||||
layout_file = 'Targets/'+hl('PackageName').lower()+'.html.ep'
|
layout_file = "Targets/" + hl("PackageName").lower() + ".html.ep"
|
||||||
partial_files = list()
|
partial_files = list()
|
||||||
for panel in routes:
|
for panel in routes:
|
||||||
partial_files.append('Targets/_'+hl('prefix')+"_"+panel+'.html.ep')
|
partial_files.append("Targets/_" + hl("prefix") + "_" + panel + ".html.ep")
|
||||||
print(partial_files)
|
print(partial_files)
|
||||||
lex_file = 'Targets/'+hl('PackageName').lower()+'_en.lex'
|
lex_file = "Targets/" + hl("PackageName").lower() + "_en.lex"
|
||||||
tablecontrols = get_table_control_data() #arrays of hashes used to drive rows in tables
|
tablecontrols = (
|
||||||
|
get_table_control_data()
|
||||||
|
) # arrays of hashes used to drive rows in tables
|
||||||
|
|
||||||
#Generate controller file
|
# Generate controller file
|
||||||
try:
|
try:
|
||||||
controller_template = PageTemplateFile("Templates/controller.pm.tem")
|
controller_template = PageTemplateFile("Templates/controller.pm.tem")
|
||||||
dbentries = get_db_fields() #Params which correspond to Db fields
|
dbentries = get_db_fields() # Params which correspond to Db fields
|
||||||
try:
|
try:
|
||||||
controller_perl = controller_template.render(version=strVersion,
|
controller_perl = controller_template.render(
|
||||||
|
version=strVersion,
|
||||||
tablecontrols=tablecontrols,
|
tablecontrols=tablecontrols,
|
||||||
dbentries=dbentries,
|
dbentries=dbentries,
|
||||||
**json5_dict,
|
**json5_dict,
|
||||||
panels=routes,
|
panels=routes,
|
||||||
lcPackageName=json5_dict['PackageName'].lower()
|
lcPackageName=json5_dict["PackageName"].lower(),
|
||||||
)
|
)
|
||||||
with open(controller_file, 'w') as file:
|
with open(controller_file, "w") as file:
|
||||||
file.write(controller_perl)
|
file.write(controller_perl)
|
||||||
print(f"{controller_file} controller generated ok")
|
print(f"{controller_file} controller generated ok")
|
||||||
except Exception as e:
|
except Exception as e:
|
||||||
@ -364,16 +435,15 @@ if __name__ == "__main__":
|
|||||||
except Exception as e:
|
except Exception as e:
|
||||||
print(f"A Chameleon controller template error occurred: {e}")
|
print(f"A Chameleon controller template error occurred: {e}")
|
||||||
|
|
||||||
#Generate Custom controller file
|
# Generate Custom controller file
|
||||||
try:
|
try:
|
||||||
custom_controller_template = PageTemplateFile("Templates/custom.pm.tem")
|
custom_controller_template = PageTemplateFile("Templates/custom.pm.tem")
|
||||||
try:
|
try:
|
||||||
custom_controller_perl = custom_controller_template.render(version=strVersion,
|
custom_controller_perl = custom_controller_template.render(
|
||||||
panels=routes,
|
version=strVersion, panels=routes, tablecontrols=tablecontrols
|
||||||
tablecontrols=tablecontrols
|
|
||||||
)
|
)
|
||||||
# We must be careful to not overwrite the custom file if the developer has already written to it - TBD
|
# We must be careful to not overwrite the custom file if the developer has already written to it - TBD
|
||||||
with open(custom_controller_file, 'w') as file:
|
with open(custom_controller_file, "w") as file:
|
||||||
file.write(custom_controller_perl)
|
file.write(custom_controller_perl)
|
||||||
print(f"{custom_controller_file} custom controller generated ok")
|
print(f"{custom_controller_file} custom controller generated ok")
|
||||||
except Exception as e:
|
except Exception as e:
|
||||||
@ -381,12 +451,14 @@ if __name__ == "__main__":
|
|||||||
except Exception as e:
|
except Exception as e:
|
||||||
print(f"A Chameleon custom controller template error occurred: {e}")
|
print(f"A Chameleon custom controller template error occurred: {e}")
|
||||||
|
|
||||||
#generate Layout file
|
# generate Layout file
|
||||||
layout_template = PageTemplateFile("Templates/layout.html.ep.tem")
|
layout_template = PageTemplateFile("Templates/layout.html.ep.tem")
|
||||||
try:
|
try:
|
||||||
try:
|
try:
|
||||||
layout_mojo = layout_template.render(version=strVersion,**json5_dict,conditions=routes)
|
layout_mojo = layout_template.render(
|
||||||
with open(layout_file, 'w') as file:
|
version=strVersion, **json5_dict, conditions=routes
|
||||||
|
)
|
||||||
|
with open(layout_file, "w") as file:
|
||||||
file.write(layout_mojo)
|
file.write(layout_mojo)
|
||||||
print(f"{layout_file} mojo template layout file generated ok")
|
print(f"{layout_file} mojo template layout file generated ok")
|
||||||
except Exception as e:
|
except Exception as e:
|
||||||
@ -394,66 +466,85 @@ if __name__ == "__main__":
|
|||||||
except Exception as e:
|
except Exception as e:
|
||||||
print(f"A Chameleon template layout file error occurred: {e}")
|
print(f"A Chameleon template layout file error occurred: {e}")
|
||||||
|
|
||||||
#Generate a partial file for each of the entries in the html list
|
# Generate a partial file for each of the entries in the html list
|
||||||
#Pull in the template code for each of the input types
|
# Pull in the template code for each of the input types
|
||||||
#html_controls = json5_to_dict('Templates/html_controls.html.ep.tem')
|
# html_controls = json5_to_dict('Templates/html_controls.html.ep.tem')
|
||||||
html_controls = parse_xml_to_dict('Templates/html_controls.html.ep.xml')
|
html_controls = parse_xml_to_dict("Templates/html_controls.html.ep.xml")
|
||||||
i = 0
|
i = 0
|
||||||
for html in json5_html_list:
|
for html in json5_html_list:
|
||||||
# Generate a mojo template file, and then add in the controls
|
# Generate a mojo template file, and then add in the controls
|
||||||
# main file first
|
# main file first
|
||||||
try:
|
try:
|
||||||
partial_template = PageTemplateFile("Templates/partial.html.ep.tem")
|
partial_template = PageTemplateFile("Templates/partial.html.ep.tem")
|
||||||
partial_mojo_context = {**json5_dict,**html}
|
partial_mojo_context = {**json5_dict, **html}
|
||||||
try:
|
try:
|
||||||
partial_mojo_template = partial_template.render(version=strVersion,**partial_mojo_context)
|
partial_mojo_template = partial_template.render(
|
||||||
with open( partial_files[i], 'w') as file:
|
version=strVersion, **partial_mojo_context
|
||||||
|
)
|
||||||
|
with open(partial_files[i], "w") as file:
|
||||||
file.write(partial_mojo_template)
|
file.write(partial_mojo_template)
|
||||||
print(f"{partial_files[i]} mojo template generated ok - phase 1")
|
print(f"{partial_files[i]} mojo template generated ok - phase 1")
|
||||||
except Exception as e:
|
except Exception as e:
|
||||||
print(f"A Chameleon render error on partial file {html['route']} occurred: {e}")
|
print(
|
||||||
|
f"A Chameleon render error on partial file {html['route']} occurred: {e}"
|
||||||
|
)
|
||||||
except Exception as e:
|
except Exception as e:
|
||||||
print(f"A Chameleon html {html['route']} error occurred: {e}")
|
print(f"A Chameleon html {html['route']} error occurred: {e}")
|
||||||
|
|
||||||
#Now generate the controls from the rest of the entries in the dict.
|
# Now generate the controls from the rest of the entries in the dict.
|
||||||
all_controls_html = "";
|
all_controls_html = ""
|
||||||
prefix_is = hl('prefix')
|
prefix_is = hl("prefix")
|
||||||
for html_control in html:
|
for html_control in html:
|
||||||
inner_html = html[html_control]
|
inner_html = html[html_control]
|
||||||
if isinstance(inner_html, dict):
|
if isinstance(inner_html, dict):
|
||||||
try:
|
try:
|
||||||
control_template = PageTemplate(html_controls[inner_html['Type']])
|
control_template = PageTemplate(html_controls[inner_html["Type"]])
|
||||||
try:
|
try:
|
||||||
control_html = control_template.render(version=strVersion,**inner_html,prefix=prefix_is)
|
control_html = control_template.render(
|
||||||
|
version=strVersion, **inner_html, prefix=prefix_is
|
||||||
|
)
|
||||||
all_controls_html = all_controls_html + control_html
|
all_controls_html = all_controls_html + control_html
|
||||||
except Exception as e:
|
except Exception as e:
|
||||||
print(f"A Chameleon render on partial file control {inner_html['Name']} error occurred: {e}")
|
print(
|
||||||
|
f"A Chameleon render on partial file control {inner_html['Name']} error occurred: {e}"
|
||||||
|
)
|
||||||
except Exception as e:
|
except Exception as e:
|
||||||
print(f"A Chameleon render on partial file control {inner_html['Name']} error occurred: {e}")
|
print(
|
||||||
|
f"A Chameleon render on partial file control {inner_html['Name']} error occurred: {e}"
|
||||||
|
)
|
||||||
else:
|
else:
|
||||||
#just a simple entry - name less numerics is type
|
# just a simple entry - name less numerics is type
|
||||||
html_Type = ''.join(char for char in html_control if not char.isdigit())
|
html_Type = "".join(char for char in html_control if not char.isdigit())
|
||||||
try:
|
try:
|
||||||
simple_control_template = PageTemplate(html_controls[html_Type])
|
simple_control_template = PageTemplate(html_controls[html_Type])
|
||||||
try:
|
try:
|
||||||
simple_control_html = simple_control_template.render(version=strVersion,value=inner_html,prefix=prefix_is)
|
simple_control_html = simple_control_template.render(
|
||||||
|
version=strVersion, value=inner_html, prefix=prefix_is
|
||||||
|
)
|
||||||
all_controls_html = all_controls_html + simple_control_html
|
all_controls_html = all_controls_html + simple_control_html
|
||||||
except Exception as e:
|
except Exception as e:
|
||||||
print(f"A Chameleon render on partial file control {html_control} error occurred: {e}")
|
print(
|
||||||
|
f"A Chameleon render on partial file control {html_control} error occurred: {e}"
|
||||||
|
)
|
||||||
except Exception as e:
|
except Exception as e:
|
||||||
print(f"A Chameleon template partial file control {html_control} error occurred: {e}")
|
print(
|
||||||
|
f"A Chameleon template partial file control {html_control} error occurred: {e}"
|
||||||
|
)
|
||||||
|
|
||||||
# Now insert it into the partial file in the correct place.
|
# Now insert it into the partial file in the correct place.
|
||||||
# Read in the text file and split at "%# Inputs etc in here."
|
# Read in the text file and split at "%# Inputs etc in here."
|
||||||
with open(partial_files[i], 'r') as file:
|
with open(partial_files[i], "r") as file:
|
||||||
lines = file.readlines()
|
lines = file.readlines()
|
||||||
index = next((i for i, line in enumerate(lines) if "%# Inputs etc in here." in line), len(lines))
|
index = next(
|
||||||
|
(i for i, line in enumerate(lines) if "%# Inputs etc in here." in line),
|
||||||
|
len(lines),
|
||||||
|
)
|
||||||
|
|
||||||
# Insert the string at the specified index
|
# Insert the string at the specified index
|
||||||
lines.insert(index+1, all_controls_html + '\n')
|
lines.insert(index + 1, all_controls_html + "\n")
|
||||||
|
|
||||||
# Write the modified content back to the file
|
# Write the modified content back to the file
|
||||||
with open(partial_files[i], 'w') as file:
|
with open(partial_files[i], "w") as file:
|
||||||
file.writelines(lines)
|
file.writelines(lines)
|
||||||
print(f"Content modified and saved to {partial_files[i]}")
|
print(f"Content modified and saved to {partial_files[i]}")
|
||||||
i += 1
|
i += 1
|
||||||
@ -462,20 +553,20 @@ if __name__ == "__main__":
|
|||||||
# Look through the generated files for the /l[\s|(]['|"](.*)['|"]\)/ strings.
|
# Look through the generated files for the /l[\s|(]['|"](.*)['|"]\)/ strings.
|
||||||
|
|
||||||
# create a combined list of all the files
|
# create a combined list of all the files
|
||||||
all_files = [controller_file,layout_file]+partial_files
|
all_files = [controller_file, layout_file] + partial_files
|
||||||
all_strings = []
|
all_strings = []
|
||||||
for filename in all_files:
|
for filename in all_files:
|
||||||
with open(filename, 'r') as file:
|
with open(filename, "r") as file:
|
||||||
file_content = file.read()
|
file_content = file.read()
|
||||||
# Define the regular expression pattern to match the strings you want to extract
|
# Define the regular expression pattern to match the strings you want to extract
|
||||||
pattern = r"l[\s|(][\'|\"](.*)[\'|\"]\)"
|
pattern = r"l[\s|(][\'|\"](.*)[\'|\"]\)"
|
||||||
# Use re.findall to extract all occurrences of the pattern from the file content
|
# Use re.findall to extract all occurrences of the pattern from the file content
|
||||||
extracted_strings = re.findall(pattern, file_content)
|
extracted_strings = re.findall(pattern, file_content)
|
||||||
all_strings = all_strings + extracted_strings
|
all_strings = all_strings + extracted_strings
|
||||||
#Take out any duplicates
|
# Take out any duplicates
|
||||||
all_strings = deduplicate_array(all_strings)
|
all_strings = deduplicate_array(all_strings)
|
||||||
# '<prefix>_english-message' => 'English Message',
|
# '<prefix>_english-message' => 'English Message',
|
||||||
string_lib = [] #Array of dicts
|
string_lib = [] # Array of dicts
|
||||||
for lex_message in all_strings:
|
for lex_message in all_strings:
|
||||||
# If has a prefix - leave it for left hand side but delete it for the right
|
# If has a prefix - leave it for left hand side but delete it for the right
|
||||||
# If has no prefix - add one for left hand side but and leave it for the right
|
# If has no prefix - add one for left hand side but and leave it for the right
|
||||||
@ -483,33 +574,33 @@ if __name__ == "__main__":
|
|||||||
# amd truncate it to max five words
|
# amd truncate it to max five words
|
||||||
original_str = lex_message
|
original_str = lex_message
|
||||||
# Checkif it starts with the prefix (any case|)
|
# Checkif it starts with the prefix (any case|)
|
||||||
if lex_message.lower().startswith(hl('prefix').lower()):
|
if lex_message.lower().startswith(hl("prefix").lower()):
|
||||||
left_str = lex_message
|
left_str = lex_message
|
||||||
right_str = lex_message[len(hl('prefix'))+1:]
|
right_str = lex_message[len(hl("prefix")) + 1 :]
|
||||||
# And take out any "_", map to " "
|
# And take out any "_", map to " "
|
||||||
else:
|
else:
|
||||||
left_str = hl('prefix')+"_"+lex_message
|
left_str = hl("prefix") + "_" + lex_message
|
||||||
right_str = lex_message
|
right_str = lex_message
|
||||||
right_str = right_str.replace("_"," ")
|
right_str = right_str.replace("_", " ")
|
||||||
#print(f"Right:{right_str}")
|
# print(f"Right:{right_str}")
|
||||||
right_str = format_text(right_str)
|
right_str = format_text(right_str)
|
||||||
left_str = left_str.replace(" ","_")
|
left_str = left_str.replace(" ", "_")
|
||||||
words = left_str.split('_')[:6]
|
words = left_str.split("_")[:6]
|
||||||
left_str = "_".join(words)
|
left_str = "_".join(words)
|
||||||
next_lex_str = {"orig":original_str,"left":left_str,"right":right_str}
|
next_lex_str = {"orig": original_str, "left": left_str, "right": right_str}
|
||||||
string_lib.append(next_lex_str)
|
string_lib.append(next_lex_str)
|
||||||
#And write it to lex file
|
# And write it to lex file
|
||||||
# Now process them one by one into the lexical file
|
# Now process them one by one into the lexical file
|
||||||
lex_all = "";
|
lex_all = ""
|
||||||
for lex_str in string_lib:
|
for lex_str in string_lib:
|
||||||
lex_all += f"\'{lex_str['left']}\' => \'{lex_str['right']}\',\n"
|
lex_all += f"'{lex_str['left']}' => '{lex_str['right']}',\n"
|
||||||
print(f"Writing {lex_file}")
|
print(f"Writing {lex_file}")
|
||||||
with open( lex_file, 'w') as file:
|
with open(lex_file, "w") as file:
|
||||||
file.write(lex_all)
|
file.write(lex_all)
|
||||||
#and then play the strings back into the partials and the layout file
|
# and then play the strings back into the partials and the layout file
|
||||||
print("..and feed the lex string names back into other files")
|
print("..and feed the lex string names back into other files")
|
||||||
for filename in all_files:
|
for filename in all_files:
|
||||||
with open(filename, 'r') as file:
|
with open(filename, "r") as file:
|
||||||
file_content = file.read()
|
file_content = file.read()
|
||||||
# Scan through
|
# Scan through
|
||||||
for item in string_lib:
|
for item in string_lib:
|
||||||
@ -517,19 +608,21 @@ if __name__ == "__main__":
|
|||||||
left_str = item["left"]
|
left_str = item["left"]
|
||||||
right_str = item["right"]
|
right_str = item["right"]
|
||||||
# Replace all occurrences of original string with left string in 'contents'
|
# Replace all occurrences of original string with left string in 'contents'
|
||||||
file_content = file_content.replace("l('"+original_str+"')", "l('"+left_str+"')")
|
file_content = file_content.replace(
|
||||||
|
"l('" + original_str + "')", "l('" + left_str + "')"
|
||||||
|
)
|
||||||
# and write it back
|
# and write it back
|
||||||
with open(filename, 'w') as file:
|
with open(filename, "w") as file:
|
||||||
file.write(file_content)
|
file.write(file_content)
|
||||||
print(f"Write out modified:{filename}")
|
print(f"Write out modified:{filename}")
|
||||||
|
|
||||||
# Now generate all the translated lex files from a list of the languages and codes
|
# Now generate all the translated lex files from a list of the languages and codes
|
||||||
home_dir = os.path.dirname(json_filename)
|
home_dir = os.path.dirname(json_filename)
|
||||||
languages_path =f"{home_dir}/languages.json"
|
languages_path = f"{home_dir}/languages.json"
|
||||||
with open(languages_path,'r') as file:
|
with open(languages_path, "r") as file:
|
||||||
languages_str = file.read()
|
languages_str = file.read()
|
||||||
lang_dict = json.loads(languages_str)
|
lang_dict = json.loads(languages_str)
|
||||||
with open(lex_file,'r') as file:
|
with open(lex_file, "r") as file:
|
||||||
lex_str = file.read()
|
lex_str = file.read()
|
||||||
eng_lex_dict = convert_lex_to_dict(lex_str)
|
eng_lex_dict = convert_lex_to_dict(lex_str)
|
||||||
for lang_item in lang_dict:
|
for lang_item in lang_dict:
|
||||||
@ -541,16 +634,25 @@ if __name__ == "__main__":
|
|||||||
translated_dict = []
|
translated_dict = []
|
||||||
for lex_item in eng_lex_dict:
|
for lex_item in eng_lex_dict:
|
||||||
# Get it from ChatGPT
|
# Get it from ChatGPT
|
||||||
translated_text = get_translation(lex_item["text"], lang_item["language"])
|
translated_text = get_translation(
|
||||||
|
lex_item["text"], lang_item["language"]
|
||||||
|
)
|
||||||
translated_dict.append({"id": lex_item["id"], "text": translated_text})
|
translated_dict.append({"id": lex_item["id"], "text": translated_text})
|
||||||
print(f"Writing out lex file for {lang_item['code']}")
|
print(f"Writing out lex file for {lang_item['code']}")
|
||||||
with open(translated_lex_file, "w") as file:
|
with open(translated_lex_file, "w") as file:
|
||||||
for item in translated_dict:
|
for item in translated_dict:
|
||||||
# escape any nasties
|
# escape any nasties
|
||||||
translated_text = item['text'].replace('\\', r'\\').replace('"', r'\"').replace("'", r"\'")
|
translated_text = (
|
||||||
line = "'"+item['id']+"' => "+'"'+translated_text+'",\n'
|
item["text"]
|
||||||
|
.replace("\\", r"\\")
|
||||||
|
.replace('"', r"\"")
|
||||||
|
.replace("'", r"\'")
|
||||||
|
)
|
||||||
|
line = "'" + item["id"] + "' => " + '"' + translated_text + '",\n'
|
||||||
file.write(line)
|
file.write(line)
|
||||||
#print(f"{item['id']} => {item['text']}\n")
|
# print(f"{item['id']} => {item['text']}\n")
|
||||||
else:
|
else:
|
||||||
print(f"Skipping the creation of {translated_lex_file} as it exists already")
|
print(
|
||||||
quit() #end of the program
|
f"Skipping the creation of {translated_lex_file} as it exists already"
|
||||||
|
)
|
||||||
|
quit() # end of the program
|
||||||
|
Loading…
Reference in New Issue
Block a user