Commit Graph

294 Commits

Author SHA1 Message Date
KafamaG
78b728a531 Merge branch 'master' into dev/translation_tr
#2829 landed on master and touched 173 of the same keys this branch
rewrites, which is where the conflicts came from.

Resolved by rule rather than by hand: for any key #2829 already fixed
and merged, master's value wins (54 keys); everything else keeps this
branch's version. That keeps the diff against master limited to what is
genuinely new here, and avoids re-editing work that is already upstream.

It also avoids a regression. This branch was cut before #2829, so it
still carried the old double-encoded UTF-8 in nine mailboxes strings
(confirm_warnallf, left_autoreply, left_folders, left_forward,
left_pass, left_sig, mail_fromfilter, mail_selread, mail_subfilter).
Taking master's value for those keeps them fixed. A mojibake scan over
the whole tree after the merge reports 0 remaining lines.

master also added acl/forgot_sudouser, which is translated here, so
lang/tr is still complete at 31,523 of 31,523 keys.
2026-08-31 09:51:50 +03:00
KafamaG
02ca56139a Complete the Turkish module.info descriptions
Every module now has a reviewed desc_tr and longdesc_tr in
module.info.tr - 245 strings across 125 modules. Previously 37 were
reviewed, 194 came from module.info.tr.auto and 14 were missing
entirely (grub2, hardware-info, kea-dhcp, logviewer, nftables, systemd,
xterm), so those modules showed English titles in the Webmin menu.

The reviewed strings are removed from module.info.tr.auto, which now
holds only name_tr - the same split the de and ca translations use.
Thirty-six of those files became empty and are deleted.

Some of the machine text this replaces was wrong rather than just
clumsy:

  sarg          "Squid Report Generator" had become "Kalamar Rapor
                Oluşturucu" - the fish, not the proxy
  heartbeat     the product name was translated as "Kalp Atışı"
  cluster-cron  "Cron Jobs" had become "Cron İş İlanları" (job ads)
  proc          "renice" was translated as "rename"
  samba         "file and print shares" was split into "create a samba
                file" and "print the shares"
  exports, hpuxexports, sgiexports, inetd, init, mount, net
                each repeated the file path mid-sentence
  firewall,     the "(iptables)" and "(ip6tables)" qualifiers that
  firewall6     distinguish the two modules were dropped

Turkish capitalisation of English words was also wrong throughout
("İptables", "İnetd", "İscsitarget", "İnternet"), and three previously
reviewed strings were stored as double-encoded UTF-8 (cron/desc_tr,
mailboxes/desc_tr, mailboxes/longdesc_tr).

cluster-cron and ldap-server carried a stray desc_de_tr key - a German
key that had leaked into the Turkish file. It is removed.
2026-08-30 14:41:10 +03:00
KafamaG
35069d3018 Fix placeholder, markup and encoding defects in existing Turkish files
A consistency check of every lang/tr against its lang/en turned up 58
lines that were wrong independently of the missing translations. All of
them are fixed here:

Missing or wrong $N placeholders (the value silently disappears from
the message at runtime, or the wrong value is shown):
  acl/cert_eca, acl/hide_desc, adsl-client/index_stopdesc,
  apache/reconfig_ever, apache/log_files, apache/log_files_l,
  bind8/log_manual, dhcpd/listl_lfnotcont, fdisk/mkfs_desc1,
  fdisk/fsck_desc1, fdisk/tunefs_desc, hpuxexports/save_ehost,
  inittab/log_rename, mysql/index_ever, mysql/index_version,
  mysql/log_perm_create, mysql/log_perm_delete, mysql/log_perm_modify,
  sendmail/index_epath, sendmail/index_startmsg, sendmail/asave_ematch,
  sendmail/mailers_efile, sendmail/generics_efile,
  webalizer/index_ewebalizer, webalizer/index_econf

  cron/env_ename carried a $1 that lang/en does not have, and its text
  described a different error than the key means.

  adsl-client/index_stopdesc and inittab/log_rename each repeated $1
  where $2 was meant, so both values printed the same string.

HTML markup that did not match lang/en:
  bind8/mass_desc, dhcpd/index_dhcpdnotfound, firewall/index_existing,
  inetd/index_applymsg, mysql/index_nomod, mysql/index_nomods,
  samba/esync_msg, samba/viewu_list, sendmail/trusts_desc,
  sendmail/mailers_desc2, sendmail/domains_desc, squid/clear_msgclear,
  status/proc_thresh

  Several of these were also truncated mid-sentence, dropping a whole
  sentence of the original text; those are now translated in full.

Encoding:
  mailboxes/confirm_warnf was stored as double-encoded UTF-8 and
  displayed as mojibake. It also used $1 twice instead of $1 and $2.

Trailing whitespace:
  proc/kill_term, kill_hup, kill_stop, kill_cont

Untranslated strings:
  fdisk/select_* device descriptions, mount/irix_mode0, irix_mode0cd,
  shorewall/tunnels_ipsec:noah

  bind8/mass_desc previously translated the literal configuration
  keywords master, slave, stub and forward into Turkish; they are now
  left in English, since they are values the user has to type.
2026-08-30 14:34:56 +03:00
KafamaG
377a418d81 Complete the Turkish translation of the remaining eleven modules
With this change every module has a complete lang/tr and no lang/tr.auto
files are left in the tree:

  mount          92 new strings - Linux/FreeBSD/IRIX mount options
  bandwidth      83 strings - bandwidth monitoring and reports
  mailboxes      78 new strings - attachments, iCal, HTML composer
  firewall       76 new strings - IPset, physdev, chain rename and move
  gray-theme     72 strings - theme layout and system information page
  fdisk          72 new strings - parted, NVME, partition table format
  servers        71 new strings - automatic server discovery
  stunnel        69 strings - SSL tunnels via inetd/xinetd
  cron           68 new strings - crond control and manual editing
  custom         63 new strings - SQL commands and output formats
  cluster-copy   62 strings - scheduled file copies across servers

firewall/move_chain reads "Current change" in lang/en where "Current
chain" is clearly meant; it is translated by intent as "Mevcut zincir".

Command and format names that appear verbatim in configuration files
(parted, fdisk, hdparm, SMART, GPT, MS-DOS, NVME, tmpfs, CIFS, NFSv4,
inetd, xinetd, crond, IPset, physdev, TCP-wrappers) stay in English.
2026-08-30 14:31:39 +03:00
KafamaG
666ff552fa Fix errors in Turkish (tr) language files
Corrects verifiable defects in the shipped Turkish translations across
25 modules. No .auto (machine-translated) files are touched.

Placeholder bugs (33 keys) - substitution variables were missing,
duplicated or renumbered relative to lang/en:

* fdisk/mkfs_desc1 used $1 twice, so the "all data will be permanently
  erased" confirmation named the filesystem type instead of the target
  device.
* apache/reconfig_ever linked to <a href='$1'> instead of $2, pointing
  the "module configuration" link at the version string.
* useradmin/export_eopen contained the Perl special variable $! rather
  than $1.
* adsl-client/index_stopdesc, inittab/log_rename, hpuxexports/save_ehost,
  mysql/log_perm_* and others repeated $1 where $2/$3 was intended.
* cron/env_ename referenced $1, which lang/en does not provide.

HTML markup bugs (19 keys) - tags were dropped or swapped, breaking
rendering or links:

* useradmin/batch_desc6 and batch_desc3 contained the literal strings
  "$batch_desc1" and "$batch_desc0" and rendered as plain text.
* bind8/mass_desc translated the literal named.conf keywords master,
  slave, stub and forward, which would lead users to enter invalid
  configuration values. These are now left untranslated.
* mysql/index_nomod, samba/esync_msg, squid/clear_msgclear and others
  lost <tt>/<b> pairs present in lang/en.

Encoding (10 keys) - mailboxes/lang/tr contained double-encoded UTF-8
(mojibake), e.g. "klasöründen" instead of "klasöründen".

Untranslated strings (96 keys) - htaccess-htpasswd/lang/tr was a verbatim
copy of lang/en and is now fully translated. Remaining English strings in
fdisk, mount, shorewall, webalizer, xinetd and firewall are translated.
Technical identifiers (LVM VG/LV, IPsec AH) are deliberately kept in
English.

All modified files are valid UTF-8, keep their original key order and
line count, and their placeholders now match lang/en exactly.
2026-08-30 01:20:42 +03:00
Ilia Ross
c171b6c27d Fix cron jobs table header to match merged move column 2026-08-20 04:23:31 +02:00
Jan Derk
c6c1a7f5cc Fix cron-lib.pl regex to also handle Debian 12 } brace syntax
Fix daily cron jobs do now show up on Debian 12.

Regular expression now handles both ) and } line endings.

(Fixes issue webmin#2817)
2026-08-19 16:51:03 +02:00
Jamie Cameron
70fe4b3f94 Move to top/bottom don't need a separate column 2026-08-09 15:01:29 -07:00
Ilia Ross
5cf228d4a0 Add side by side UI form buttons API
Some checks failed
webmin.dev: webmin/webmin / build (push) Has been cancelled
https://github.com/webmin/webmin/issues/2659

[no-build]
2026-04-09 19:33:37 +02:00
Ilia Ross
c89dc4996f Fix to de-hardcode default temp directory path
Some checks failed
webmin.dev: webmin/webmin / build (push) Has been cancelled
2026-02-20 15:16:01 +02:00
Ilia Ross
f30560d61b Fix to use quotemeta to prevent shell injection in Cron module 2026-02-10 22:09:07 +02:00
Ilia Ross
fb3dd9f43d Fix label followed by input consistency
[no-build]
2025-11-09 00:06:13 +02:00
Ilia Ross
9f82fdc808 Fix label for proper button color and icon 2025-11-09 00:02:58 +02:00
Ilia Ross
573f3d894a Fix to improve the cron tip text and use note for better UI 2025-11-09 00:00:52 +02:00
Ilia Ross
c57651cd46 Fix schedule select 2025-11-03 00:57:37 +02:00
Jamie Cameron
efe99ddd80 Improve checks for cron job existence 2025-05-30 09:23:42 -07:00
Ilia Ross
833292c0d1 Add exported German language-neutral strings
https://github.com/webmin/webmin/discussions/2482
https://forum.virtualmin.com/t/on-the-rejection-of-gender-neutral-language/133527
2025-05-26 14:48:11 +03:00
Ilia Ross
532a8042c7 Fix to use German rules most people already accept 2/2
https://github.com/webmin/webmin/discussions/2482
2025-05-24 21:46:34 +03:00
Ilia Ross
501698ad4b Fix to use German rules most people already accept 1/2
https://github.com/webmin/webmin/discussions/2482
2025-05-24 20:43:25 +03:00
Jamie Cameron
cf50dd2431 Start of work on password reset rate limiting 2025-04-20 10:54:39 -07:00
Jamie Cameron
5d2debca26 Code cleanups 2025-04-20 10:24:07 -07:00
Jamie Cameron
79e5d72393 Cleanup forgotten password link files older than 1 day 2025-04-20 10:21:25 -07:00
Jamie Cameron
410d240e8b What if WEBMIN_VAR isn't set 2025-04-20 10:18:36 -07:00
Ilia Ross
00ad7fec7a Fix broken Hungarian translations #2455 2025-04-15 01:04:50 +03:00
MacSteini
c3d03ed9e7 Update de 2025-02-17 00:32:15 +00:00
Ilia Ross
f880192526 Remove languages with 0% coverage
https://github.com/webmin/webmin/issues/2403#issuecomment-2652613588
2025-02-12 13:19:49 +02:00
Jamie Cameron
66a792292a Run cron commands in the user's home dir https://github.com/webmin/webmin/issues/2355: 2025-01-12 09:25:26 -08:00
MacSteini
162206949f Consecutive Spaces Replacement
Replaced multiple consecutive spaces with a single space
2024-12-16 16:57:09 +00:00
MacSteini
5ea0cc6b42 Trailing Spaces Removal
Removed trailing spaces
2024-12-16 15:16:55 +00:00
MacSteini
64598e5f39 Blanks Removal
Removed blanks before or after the equal sign
2024-12-16 12:59:19 +00:00
MacSteini
477982776c Updated de
Corrections (UTF-8, new lines at file end), amendments, updates
2024-11-26 01:43:34 +00:00
Ilia Ross
a6e0b3cee5 Update translations and include the new Polish translation 2024-11-16 14:03:39 +02:00
Ilia Ross
65f349c1ce Fix to increase the number of default cron jobs to display 2024-09-07 18:28:11 +03:00
MacSteini
d55d49e4d0 Update de
Replaced fancy with straight quotes
2024-09-06 12:31:38 +01:00
MacSteini
7bad42f217 Updated de
Reviewed and corrected where applicable. Adapted translation based on the newer changes in EN file
2024-09-06 12:10:17 +01:00
Ilia Ross
8d84e7313a Fix to call function properly 2024-06-04 23:54:13 +03:00
Ilia Ross
71e37adfed Add ability to clean all modules with websockets=1 on the .info 2024-06-04 19:55:25 +03:00
Jamie Cameron
00ddfd4d05 Also cleanup websockets 2024-06-03 18:42:31 -07:00
Jamie Cameron
83de10b7c2 Escape username in error 2023-12-23 08:42:59 -08:00
Ilia Ross
c0e20f024a Fix German translation
https://github.com/webmin/webmin/issues/2031
2023-10-19 15:40:00 +03:00
Jamie Cameron
895217865b Initial support for tracking locks 2023-10-11 22:46:01 -07:00
Ilia Ross
864e0c4918 Fix Cron edit files manually page not display directories #1978 [build] 2023-08-09 14:23:41 +03:00
iliajie
bea827c0b7 Fix various XSS related issues 2023-08-03 17:21:40 +03:00
iliajie
143fb86567 Update translations 2023-07-19 20:08:41 +03:00
Jamie Cameron
8efeb1c86c Format hours and minutes the same https://github.com/webmin/authentic-theme/issues/1663 2023-07-17 18:51:02 -07:00
iliajie
8b09edc5d3 Fix schedule table be tagged 2023-07-10 01:29:42 +03:00
Jamie Cameron
24b59c5b85 No need for this check now that create_wrapper has been extracted 2023-04-18 15:58:27 -07:00
Jamie Cameron
e5249a6e3b No need for a wrapper around the wrapper function 2023-04-18 15:44:40 -07:00
Jamie Cameron
a3140c03da Merge pull request #1887 from webmin/dev/xterm-in-usermin
Add support for Terminal to work in Usermin
2023-04-18 15:34:42 -07:00
iliajie
d154935e8f Fix to factor out create_wrapper sub 2023-04-18 21:21:30 +03:00