Changeset 1034
- Timestamp:
- 03/07/08 01:03:10
(7 months ago)
- Author:
- rats
- Message:
* Fixed #1082: Packages list debian lenny
* Fixed #1086: Errors during installation
* Fixed: 'null' problem in strict perl
* Updated: Russian (thanks to Grundik)
* Updated: Update script; Update to RC3
* Updated: Update script; Update to RC4
-
Files:
-
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
| r1033 |
r1034 |
|
| 2 | 2 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ |
|---|
| 3 | 3 | |
|---|
| | 4 | 2008-03-07 Benedikt Heintel |
|---|
| | 5 | - DOCS: |
|---|
| | 6 | * Fixed #1082: Packages list debian lenny |
|---|
| | 7 | - ENGINE |
|---|
| | 8 | * Fixed #1086: Errors during installation |
|---|
| | 9 | * Fixed: 'null' problem in strict perl |
|---|
| | 10 | - LANGUAGES: |
|---|
| | 11 | * Updated: Russian (thanks to Grundik) |
|---|
| | 12 | - SETUP: |
|---|
| | 13 | * Updated: Update script; Update to RC3 |
|---|
| | 14 | * Updated: Update script; Update to RC4 |
|---|
| | 15 | |
|---|
| 4 | 16 | 2008-03-04 Benedikt Heintel |
|---|
| 5 | 17 | - SETUP: |
|---|
| 6 | 18 | * Fixed #824: IMAP SSL Traffic not counted |
|---|
| 7 | 19 | * Fixed #1075: ispcp-update fails when upgrading from RC2 |
|---|
| 8 | | * Updated: Update to RC3 |
|---|
| | 20 | * Updated: Update script; Update to RC3 |
|---|
| 9 | 21 | - DISTS: |
|---|
| 10 | 22 | * Fixed #1074: config Dists opensuse - wrong makefile |
|---|
| … | … | |
| 12 | 24 | 2008-03-03 Benedikt Heintel |
|---|
| 13 | 25 | - ENGINE: |
|---|
| 14 | | * Added: Engine support for BSB plattforms (different root group) |
|---|
| | 26 | * Added: Engine support for BSD plattforms (different root group) |
|---|
| 15 | 27 | |
|---|
| 16 | 28 | 2008-03-02 Benedikt Heintel |
|---|
| r1026 |
r1034 |
|
| 9 | 9 | # |
|---|
| 10 | 10 | |
|---|
| 11 | | BuildDate = 20080301 |
|---|
| | 11 | BuildDate = 20080307 |
|---|
| 12 | 12 | |
|---|
| 13 | 13 | Version = 1.0.0 RC4 OMEGA |
|---|
| r1026 |
r1034 |
|
| 9 | 9 | # |
|---|
| 10 | 10 | |
|---|
| 11 | | BuildDate = 20080301 |
|---|
| | 11 | BuildDate = 20080307 |
|---|
| 12 | 12 | |
|---|
| 13 | 13 | Version = 1.0.0 RC4 OMEGA |
|---|
| r1033 |
r1034 |
|
| 9 | 9 | # |
|---|
| 10 | 10 | |
|---|
| 11 | | BuildDate = 20080301 |
|---|
| | 11 | BuildDate = 20080307 |
|---|
| 12 | 12 | |
|---|
| 13 | 13 | Version = 1.0.0 RC4 OMEGA |
|---|
| r1026 |
r1034 |
|
| 9 | 9 | # |
|---|
| 10 | 10 | |
|---|
| 11 | | BuildDate = 20080301 |
|---|
| | 11 | BuildDate = 20080307 |
|---|
| 12 | 12 | |
|---|
| 13 | 13 | Version = 1.0.0 RC4 OMEGA |
|---|
| r1033 |
r1034 |
|
| 9 | 9 | # |
|---|
| 10 | 10 | |
|---|
| 11 | | BuildDate = 20080301 |
|---|
| | 11 | BuildDate = 20080307 |
|---|
| 12 | 12 | |
|---|
| 13 | 13 | Version = 1.0.0 RC4 OMEGA |
|---|
| r1026 |
r1034 |
|
| 9 | 9 | # |
|---|
| 10 | 10 | |
|---|
| 11 | | BuildDate = 20080301 |
|---|
| | 11 | BuildDate = 20080307 |
|---|
| 12 | 12 | |
|---|
| 13 | 13 | Version = 1.0.0 RC4 OMEGA |
|---|
| r1026 |
r1034 |
|
| 9 | 9 | # |
|---|
| 10 | 10 | |
|---|
| 11 | | BuildDate = 20080301 |
|---|
| | 11 | BuildDate = 20080307 |
|---|
| 12 | 12 | |
|---|
| 13 | 13 | Version = 1.0.0 RC4 OMEGA |
|---|
| r1026 |
r1034 |
|
| 9 | 9 | # |
|---|
| 10 | 10 | |
|---|
| 11 | | BuildDate = 20080301 |
|---|
| | 11 | BuildDate = 20080307 |
|---|
| 12 | 12 | |
|---|
| 13 | 13 | Version = 1.0.0 RC4 OMEGA |
|---|
| r1026 |
r1034 |
|
| 9 | 9 | # |
|---|
| 10 | 10 | |
|---|
| 11 | | BuildDate = 20080301 |
|---|
| | 11 | BuildDate = 20080307 |
|---|
| 12 | 12 | |
|---|
| 13 | 13 | Version = 1.0.0 RC4 OMEGA |
|---|
| r1026 |
r1034 |
|
| 81 | 81 | /etc/apt/sources.list: |
|---|
| 82 | 82 | |
|---|
| 83 | | # backports |
|---|
| 84 | | deb http://dotdeb.pimpmylinux.org/ sarge all |
|---|
| | 83 | # backports |
|---|
| | 84 | deb http://dotdeb.pimpmylinux.org/ sarge all |
|---|
| 85 | 85 | |
|---|
| 86 | 86 | |
|---|
| … | … | |
| 146 | 146 | # apt-get install `cat ./docs/Debian/debian-packages-sarge` |
|---|
| 147 | 147 | for Debian Etch please use: |
|---|
| 148 | | # apt-get install `cat ./docs/Debian/debian-packages-etch` |
|---|
| | 148 | # apt-get install `cat ./docs/Debian/debian-packages-etch` |
|---|
| 149 | 149 | for Debian Lenny/Sid please use: |
|---|
| 150 | | # apt-get install `cat ./docs/Debian/debian-packages-lenny` |
|---|
| | 150 | # apt-get install `cat ./docs/Debian/debian-packages-lenny` |
|---|
| 151 | 151 | |
|---|
| 152 | 152 | Make sure you have added the non-free into your /etc/apt/sources.list: |
|---|
| … | … | |
| 158 | 158 | /etc/apt/sources.list: |
|---|
| 159 | 159 | |
|---|
| 160 | | # backports |
|---|
| 161 | | deb http://dotdeb.pimpmylinux.org/ sarge all |
|---|
| | 160 | # backports |
|---|
| | 161 | deb http://dotdeb.pimpmylinux.org/ sarge all |
|---|
| 162 | 162 | |
|---|
| 163 | 163 | |
|---|
| r905 |
r1034 |
|
| 12 | 12 | courier-maildrop |
|---|
| 13 | 13 | courier-pop |
|---|
| 14 | | chkrootkit |
|---|
| 15 | 14 | diff |
|---|
| 16 | 15 | dnsutils |
|---|
| … | … | |
| 18 | 17 | gzip |
|---|
| 19 | 18 | iptables |
|---|
| 20 | | libapache2-mod-cband |
|---|
| 21 | 19 | libapache2-mod-fastcgi |
|---|
| 22 | 20 | libberkeleydb-perl |
|---|
| … | … | |
| 40 | 38 | libnet-smtp-server-perl |
|---|
| 41 | 39 | libperl5.8 |
|---|
| 42 | | libsasl2 |
|---|
| | 40 | libsasl2-2 |
|---|
| 43 | 41 | libsasl2-modules |
|---|
| 44 | 42 | libsnmp-session-perl |
|---|
| … | … | |
| 72 | 70 | postgrey |
|---|
| 73 | 71 | procmail |
|---|
| 74 | | proftpd-mysql |
|---|
| | 72 | proftpd |
|---|
| 75 | 73 | rkhunter |
|---|
| 76 | 74 | sasl2-bin |
|---|
| r1033 |
r1034 |
|
| 378 | 378 | # @param String $fname File Name |
|---|
| 379 | 379 | # @param Mixed $fuser Linux User or UserID |
|---|
| 380 | | # @param Mixed $fgroup Linux Group, GroupID or null |
|---|
| | 380 | # @param Mixed $fgroup Linux Group, GroupID or 'null' |
|---|
| 381 | 381 | # @param int $fperms Linux Permissions |
|---|
| 382 | 382 | # @return int success (0) or error (-1) |
|---|
| … | … | |
| 423 | 423 | $gid = $fgroup; |
|---|
| 424 | 424 | } |
|---|
| 425 | | elsif ($fgroup eq null) { |
|---|
| | 425 | elsif ($fgroup eq 'null') { |
|---|
| 426 | 426 | $gid = $udata[3]; |
|---|
| 427 | 427 | } |
|---|
| … | … | |
| 463 | 463 | |
|---|
| 464 | 464 | if (!defined($fname) || ($fname eq '')) { |
|---|
| 465 | | |
|---|
| 466 | | push_el( |
|---|
| 467 | | \@main::el, |
|---|
| 468 | | 'get_file()', |
|---|
| 469 | | "ERROR: Undefined input data, fname: |$fname| !" |
|---|
| 470 | | ); |
|---|
| 471 | | |
|---|
| 472 | | return (-1, ''); |
|---|
| 473 | | |
|---|
| | 465 | push_el(\@main::el, 'get_file()', "ERROR: Undefined input data, fname: |$fname| !" ); |
|---|
| | 466 | return 1; |
|---|
| 474 | 467 | } |
|---|
| 475 | 468 | |
|---|
| 476 | 469 | if (! -e $fname) { |
|---|
| 477 | | |
|---|
| 478 | | push_el( |
|---|
| 479 | | \@main::el, |
|---|
| 480 | | 'get_file()', |
|---|
| 481 | | "ERROR: File '$fname' does not exist !" |
|---|
| 482 | | ); |
|---|
| 483 | | |
|---|
| 484 | | return (-1, ''); |
|---|
| 485 | | |
|---|
| | 470 | push_el(\@main::el, 'get_file()', "ERROR: File '$fname' does not exist !"); |
|---|
| | 471 | return 1; |
|---|
| 486 | 472 | } |
|---|
| 487 | 473 | |
|---|
| … | … | |
| 489 | 475 | |
|---|
| 490 | 476 | if (!defined($res)) { |
|---|
| 491 | | |
|---|
| 492 | | push_el( |
|---|
| 493 | | \@main::el, |
|---|
| 494 | | 'get_file()', |
|---|
| 495 | | "ERROR: Can't open '$fname' for reading !" |
|---|
| 496 | | ); |
|---|
| 497 | | |
|---|
| 498 | | return (-1, ''); |
|---|
| 499 | | |
|---|
| | 477 | push_el(\@main::el, 'get_file()', "ERROR: Can't open '$fname' for reading: $!"); |
|---|
| | 478 | return 1; |
|---|
| 500 | 479 | } |
|---|
| 501 | 480 | |
|---|
| … | … | |
| 543 | 522 | |
|---|
| 544 | 523 | if (!defined($res)) { |
|---|
| 545 | | push_el(\@main::el, 'store_file()', "ERROR: Can't open file |$fname| for writing !"); |
|---|
| | 524 | push_el(\@main::el, 'store_file()', "ERROR: Can't open file |$fname| for writing: $!"); |
|---|
| 546 | 525 | return -1; |
|---|
| 547 | 526 | } |
|---|
| … | … | |
| 583 | 562 | |
|---|
| 584 | 563 | if (!defined($res)) { |
|---|
| 585 | | push_el(\@main::el, 'save_file()', "ERROR: Can't open file |$fname| for writing !"); |
|---|
| | 564 | push_el(\@main::el, 'save_file()', "ERROR: Can't open file |$fname| for writing: $!"); |
|---|
| 586 | 565 | return -1; |
|---|
| 587 | 566 | |
|---|
| … | … | |
| 1016 | 995 | if (!defined($rs)) { |
|---|
| 1017 | 996 | |
|---|
| 1018 | | push_el(\@main::el, 'gen_sys_rand_num()', "ERROR: Couldn't open the pseudo-random characters generator"); |
|---|
| | 997 | push_el(\@main::el, 'gen_sys_rand_num()', "ERROR: Couldn't open the pseudo-random characters generator: $!"); |
|---|
| 1019 | 998 | |
|---|
| 1020 | 999 | return (-1, ''); |
|---|
| … | … | |
| 1875 | 1854 | sub store_conf { |
|---|
| 1876 | 1855 | |
|---|
| | 1856 | if ( defined($_[0]) ) { |
|---|
| | 1857 | $file_name = $_[0]; |
|---|
| | 1858 | } |
|---|
| | 1859 | else { |
|---|
| | 1860 | $file_name = $main::cfg_file; |
|---|
| | 1861 | } |
|---|
| | 1862 | |
|---|
| 1877 | 1863 | my ($key, $value, $fline, $rs) = (undef, undef, undef, undef); |
|---|
| 1878 | | |
|---|
| 1879 | 1864 | my $rwith = undef; |
|---|
| 1880 | 1865 | |
|---|
| 1881 | 1866 | push_el(\@main::el, 'store_conf()', 'Starting...'); |
|---|
| 1882 | 1867 | |
|---|
| 1883 | | ($rs, $fline) = get_file($main::cfg_file); |
|---|
| 1884 | | |
|---|
| | 1868 | ($rs, $fline) = get_file($file_name); |
|---|
| 1885 | 1869 | return 1 if ($rs != 0); |
|---|
| 1886 | 1870 | |
|---|
| 1887 | 1871 | if (scalar(keys(%main::cfg_reg)) > 0) { |
|---|
| 1888 | | |
|---|
| 1889 | 1872 | while (($key, $value) = each %main::cfg_reg) { |
|---|
| 1890 | | |
|---|
| 1891 | 1873 | $rwith = "$key = $value\n"; |
|---|
| 1892 | | |
|---|
| 1893 | 1874 | $fline =~ s/^$key *= *([^\n\r]*)[\n\r]/$rwith/gim; |
|---|
| 1894 | | |
|---|
| 1895 | | } |
|---|
| 1896 | | |
|---|
| 1897 | | } |
|---|
| 1898 | | |
|---|
| 1899 | | $rs = store_file($main::cfg_file, $fline, 'root', null, 0644); |
|---|
| 1900 | | |
|---|
| | 1875 | } |
|---|
| | 1876 | } |
|---|
| | 1877 | |
|---|
| | 1878 | $rs = store_file($file_name, $fline, 'root', 'null', 0644); |
|---|
| 1901 | 1879 | return 1 if ($rs != 0); |
|---|
| 1902 | 1880 | |
|---|
| 1903 | | $rs = get_conf($main::cfg_file); |
|---|
| 1904 | | |
|---|
| | 1881 | $rs = get_conf($file_name); |
|---|
| 1905 | 1882 | return 1 if ($rs != 0); |
|---|
| 1906 | 1883 | |
|---|
| 1907 | 1884 | push_el(\@main::el, 'store_conf()', 'Ending...'); |
|---|
| 1908 | | |
|---|
| 1909 | 1885 | return 0; |
|---|
| 1910 | | |
|---|
| 1911 | 1886 | } |
|---|
| 1912 | 1887 | |
|---|
| r1033 |
r1034 |
|
| 1488 | 1488 | my $rdata = "$main::cfg{'AUTHLIB_CONF_DIR'}/authdaemonrc"; |
|---|
| 1489 | 1489 | $rdata =~ s/authmodulelist="/authmodulelist="authuserdb /gi; |
|---|
| 1490 | | $rs = save_file($main::cfg{'AUTHLIB_CONF_DIR'}/authdaemonrc, $rdata); |
|---|
| | 1490 | $rs = save_file("$main::cfg{'AUTHLIB_CONF_DIR'}/authdaemonrc", $rdata); |
|---|
| 1491 | 1491 | return $rs if ($rs != 0); |
|---|
| 1492 | 1492 | |
|---|
| r1033 |
r1034 |
|
| 583 | 583 | } |
|---|
| 584 | 584 | |
|---|
| | 585 | sub update_conf { |
|---|
| | 586 | push_el(\@main::el, 'update_conf()', 'Starting...'); |
|---|
| | 587 | |
|---|
| | 588 | my ($oldconf, $newconf) = ($_[0], $_[1]); |
|---|
| | 589 | |
|---|
| | 590 | if (!defined($oldconf) || !defined($newconf)) { |
|---|
| | 591 | push_el(\@main::el, 'update_conf()', 'ERROR: Undefined input data...'); |
|---|
| | 592 | return 1; |
|---|
| | 593 | } |
|---|
| | 594 | |
|---|
| | 595 | my ($rs, $fline) = get_file($oldconf); |
|---|
| | 596 | return 1 if ($rs != 0); |
|---|
| | 597 | $rs = get_conf($newconf); |
|---|
| | 598 | return 1 if ($rs != 0); |
|---|
| | 599 | |
|---|
| | 600 | my @frows = split(/\n/, $fline); |
|---|
| | 601 | |
|---|
| | 602 | my $i = undef; |
|---|
| | 603 | |
|---|
| | 604 | for ($i = 0; $i < scalar(@frows); $i++) { |
|---|
| | 605 | $frows[$i] = "$frows[$i]\n"; |
|---|
| | 606 | if (($frows[$i] =~ /$main::cfg_re/)) { |
|---|
| | 607 | # Lines should not match variables that have to be changed |
|---|
| | 608 | if ($1 ne 'BuildDate' && $1 ne 'Version' && $1 ne 'CodeName') { |
|---|
| | 609 | # now overwrite new conf values with old if exists |
|---|
| | 610 | if (defined($main::cfg{$1})) { |
|---|
| | 611 | $rs = set_conf_val($1, $2); |
|---|
| | 612 | return $rs if ($rs != 0); |
|---|
| | 613 | } |
|---|
| | 614 | } |
|---|
| | 615 | } |
|---|
| | 616 | } |
|---|
| | 617 | |
|---|
| | 618 | $rs = store_conf($newconf); |
|---|
| | 619 | return 1 if ($rs != 0); |
|---|
| | 620 | |
|---|
| | 621 | push_el(\@main::el, 'update_conf()', 'Ending...'); |
|---|
| | 622 | return 0; |
|---|
| | 623 | } |
|---|
| | 624 | |
|---|
| 585 | 625 | sub patch_ispcp_rc2 { |
|---|
| 586 | 626 | push_el(\@main::el, 'patch_ispcp_rc2()', 'Starting...'); |
|---|
| … | … | |
| 619 | 659 | } |
|---|
| 620 | 660 | |
|---|
| 621 | | # copy variables |
|---|
| 622 | | my $default_admin_address = $main::cfg{'DEFAULT_ADMIN_ADDRESS'}; |
|---|
| 623 | | my $server_hostname = $main::cfg{'SERVER_HOSTNAME'}; |
|---|
| 624 | | my $base_server_ip = $main::cfg{'BASE_SERVER_IP'}; |
|---|
| 625 | | my $base_vhost_name = $main::cfg{'BASE_SERVER_VHOST'}; |
|---|
| 626 | | my $database_host = $main::cfg{'DATABASE_HOST'}; |
|---|
| 627 | | my $database_name = $main::cfg{'DATABASE_NAME'}; |
|---|
| 628 | | my $database_user = $main::cfg{'DATABASE_USER'}; |
|---|
| 629 | | my $database_password = $main::cfg{'DATABASE_PASSWORD'}; |
|---|
| 630 | | my $mysql_prefix = $main::ua{'mysql_prefix'}; |
|---|
| 631 | | my $mysql_prefix_type = $main::ua{'mysql_prefix_type'}; |
|---|
| 632 | | my $ftpd_conf_file = $main::cfg{'FTPD_CONF_FILE'}; |
|---|
| 633 | | my $secondary_dns = $main::cfg{'SECONDARY_DNS'}; |
|---|
| 634 | | my $mta_mailbox_min_uid = $main::cfg{'MTA_MAILBOX_MIN_UID'}; |
|---|
| 635 | | my $mta_mailbox_uid = $main::cfg{'MTA_MAILBOX_UID'}; |
|---|
| 636 | | my $mta_mailbox_gid = $main::cfg{'MTA_MAILBOX_GID'}; |
|---|
| 637 | | my $apache_suexec_min_uid = $main::cfg{'APACHE_SUEXEC_MIN_UID'}; |
|---|
| 638 | | my $apache_suexec_min_gid = $main::cfg{'APACHE_SUEXEC_MIN_GID'}; |
|---|
| 639 | | |
|---|
| 640 | 661 | # update ispcp.conf |
|---|
| 641 | 662 | my $cfg_file = '/etc/ispcp/ispcp.conf'; |
|---|
| 642 | | $rs = get_conf($cfg_file); |
|---|
| | 663 | $rs = update_conf($cfg_file); |
|---|
| 643 | 664 | if ($rs != 0) { |
|---|
| 644 | 665 | exit_werror("failed to get /etc/ispcp/ispcp.conf!"); |
|---|
| 645 | 666 | } |
|---|
| 646 | 667 | |
|---|
| 647 | | # copy changed variables to new ispcp.conf |
|---|
| 648 | | $rs = set_conf_val('DEFAULT_ADMIN_ADDRESS', $default_admin_address); |
|---|
| 649 | | return $rs if ($rs != 0); |
|---|
| 650 | | $rs = set_conf_val('SERVER_HOSTNAME', $server_hostname); |
|---|
| 651 | | return $rs if ($rs != 0); |
|---|
| 652 | | $rs = set_conf_val('BASE_SERVER_IP', $base_server_ip); |
|---|
| 653 | | return $rs if ($rs != 0); |
|---|
| 654 | | $rs = set_conf_val('BASE_SERVER_VHOST', $base_vhost_name); |
|---|
| 655 | | return $rs if ($rs != 0); |
|---|
| 656 | | $rs = set_conf_val('DATABASE_HOST', $database_host); |
|---|
| 657 | | return $rs if ($rs != 0); |
|---|
| 658 | | $rs = set_conf_val('DATABASE_NAME', $database_name); |
|---|
| 659 | | return $rs if ($rs != 0); |
|---|
| 660 | | $rs = set_conf_val('DATABASE_USER', $database_user); |
|---|
| 661 | | return $rs if ($rs != 0); |
|---|
| 662 | | $rs = set_conf_val('DATABASE_PASSWORD', $database_password); |
|---|
| 663 | | return $rs if ($rs != 0); |
|---|
| 664 | | $rs = set_conf_val('MYSQL_PREFIX', $mysql_prefix); |
|---|
| 665 | | return $rs if ($rs != 0); |
|---|
| 666 | | $rs = set_conf_val('MYSQL_PREFIX_TYPE', $mysql_prefix_type); |
|---|
| 667 | | return $rs if ($rs != 0); |
|---|
| 668 | | $rs = set_conf_val('FTPD_CONF_FILE', $ftpd_conf_file); |
|---|
| 669 | | return $rs if ($rs != 0); |
|---|
| 670 | | $rs = set_conf_val('SECONDARY_DNS', $secondary_dns); |
|---|
| 671 | | return $rs if ($rs != 0); |
|---|
| 672 | | $rs = set_conf_val('MTA_MAILBOX_MIN_UID', $mta_mailbox_min_uid); |
|---|
| 673 | | return $rs if ($rs != 0); |
|---|
| 674 | | $rs = set_conf_val('MTA_MAILBOX_UID', $mta_mailbox_uid); |
|---|
| 675 | | return $rs if ($rs != 0); |
|---|
| 676 | | $rs = set_conf_val('MTA_MAILBOX_GID', $mta_mailbox_gid); |
|---|
| 677 | | return $rs if ($rs != 0); |
|---|
| 678 | | $rs = set_conf_val('APACHE_SUEXEC_MIN_UID', $apache_suexec_min_uid); |
|---|
| 679 | | return $rs if ($rs != 0); |
|---|
| 680 | | $rs = set_conf_val('APACHE_SUEXEC_MIN_GID', $apache_suexec_min_gid); |
|---|
| 681 | | return $rs if ($rs != 0); |
|---|
| 682 | | |
|---|
| | 668 | # add new variables to new ispcp.conf |
|---|
| 683 | 669 | $rs = set_conf_val('AWSTATS_ACTIVE', $main::ua{'awstats_on'}); |
|---|
| 684 | | return $rs if ($rs != 0); |
|---|
| 685 | 670 | $rs = set_conf_val('AWSTATS_MODE', $main::ua{'awstats_dyn'}); |
|---|
| 686 | | return $rs if ($rs != 0); |
|---|
| 687 | 671 | $rs = set_conf_val('PHP_VERSION', $main::ua{'php_version'}); |
|---|
| 688 | | return $rs if ($rs != 0); |
|---|
| 689 | | |
|---|
| 690 | | # store into /etc/ispcp/ispcp.conf |
|---|
| | 672 | |
|---|
| | 673 | # save into /etc/ispcp/ispcp.conf |
|---|
| 691 | 674 | $rs = store_conf(); |
|---|
| 692 | 675 | if ($rs != 0) { |
|---|
| … | … | |
| 714 | 697 | print STDOUT "done\n"; |
|---|
| 715 | 698 | |
|---|
| | 699 | # Rebuild system configs |
|---|
| | 700 | print STDOUT "\tRebuilding system configurations..."; |
|---|
| | 701 | |
|---|
| | 702 | $rs = rebuild_configs(); |
|---|
| | 703 | |
|---|
| | 704 | if ($rs != 0) { |
|---|
| | 705 | print STDOUT "failed!\n"; |
|---|
| | 706 | exit_werror("Config Rebuild failed."); |
|---|
| | 707 | } |
|---|
| | 708 | |
|---|
| | 709 | print STDOUT "done\n"; |
|---|
| | 710 | |
|---|
| | 711 | # Update PMA's config.inc.php |
|---|
| | 712 | print STDOUT "\tUpdating PMA's config.inc.php..."; |
|---|
| | 713 | |
|---|
| | 714 | $rs = update_pma(); |
|---|
| | 715 | |
|---|
| | 716 | if ($rs != 0) { |
|---|
| | 717 | print STDOUT "failed!\n"; |
|---|
| | 718 | exit_werror("Updating PMA's config.inc.php failed."); |
|---|
| | 719 | } |
|---|
| | 720 | |
|---|
| | 721 | print STDOUT "\tdone\n"; |
|---|
| | 722 | |
|---|
| | 723 | push_el(\@main::el, 'patch_ispcp_rc2()', 'Ending...'); |
|---|
| | 724 | return 0; |
|---|
| | 725 | } |
|---|
| | 726 | |
|---|
| | 727 | sub patch_ispcp_rc3() { |
|---|
| | 728 | push_el(\@main::el, 'patch_ispcp_rc3()', 'Ending...'); |
|---|
| | 729 | |
|---|
| | 730 | print STDOUT "\tUpgrading system values ..."; |
|---|
| | 731 | |
|---|
| | 732 | # update ispcp.conf |
|---|
| | 733 | my $cfg_file = '/etc/ispcp/ispcp.conf'; |
|---|
| | 734 | $rs = update_conf($cfg_file); |
|---|
| | 735 | if ($rs != 0) { |
|---|
| | 736 | exit_werror("failed to get /etc/ispcp/ispcp.conf!"); |
|---|
| | 737 | } |
|---|
| | 738 | |
|---|
| | 739 | # save into /etc/ispcp/ispcp.conf |
|---|
| | 740 | $rs = store_conf(); |
|---|
| | 741 | if ($rs != 0) { |
|---|
| | 742 | print STDOUT "failed!\n"; |
|---|
| | 743 | exit_werror("Storing new ispcp.conf failed!"); |
|---|
| | 744 | } |
|---|
| | 745 | print STDOUT "\tdone\n"; |
|---|
| | 746 | |
|---|
| | 747 | # database upgrade |
|---|
| | 748 | print STDOUT "\tUpgrading database structure..."; |
|---|
| | 749 | |
|---|
| | 750 | ($rs, $rdata) = get_file("$main::cfg{'ROOT_DIR'}/engine/setup/ispcp1.0.0rc3-ispcp.sql"); |
|---|
| | 751 | return $rs if ($rs != 0); |
|---|
| | 752 | |
|---|
| | 753 | $rdata =~ s/\{DATABASE\}/$main::db_name/gi; |
|---|
| | 754 | $rs = store_file("/tmp/db.sql", $rdata, $main::cfg{'ROOT_USER'}, $main::cfg{'ROOT_GROUP'}, 0644); |
|---|
| | 755 | return $rs if ($rs != 0); |
|---|
| | 756 | |
|---|
| | 757 | $rs = sys_command("mysql -u\'$main::db_user\' -p\'$main::db_pwd\' < /tmp/db.sql"); |
|---|
| | 758 | if ($rs != 0) { |
|---|
| | 759 | print STDOUT "failed!\n"; |
|---|
| | 760 | exit_werror("SQL Update failed."); |
|---|
| | 761 | } |
|---|
| | 762 | |
|---|
| | 763 | print STDOUT "done\n"; |
|---|
| | 764 | |
|---|
| 716 | 765 | # Rebuild system configs: |
|---|
| 717 | 766 | print STDOUT "\tRebuilding system configurations..."; |
|---|
| … | … | |
| 725 | 774 | |
|---|
| 726 | 775 | print STDOUT "done\n"; |
|---|
| 727 | | |
|---|
| 728 | | # Update PMA's config.inc.php |
|---|
| 729 | | print STDOUT "\tUpdating PMA's config.inc.php..."; |
|---|
| 730 | | |
|---|
| 731 | | $rs = update_pma(); |
|---|
| 732 | | |
|---|
| 733 | | if ($rs != 0) { |
|---|
| 734 | | print STDOUT "failed!\n"; |
|---|
| 735 | | exit_werror("Updating PMA's config.inc.php failed."); |
|---|
| 736 | | } |
|---|
| 737 | | |
|---|
| 738 | | print STDOUT "\tdone\n"; |
|---|
| 739 | | |
|---|
| 740 | | push_el(\@main::el, 'patch_ispcp_rc2()', 'Ending...'); |
|---|
| 741 | | return 0; |
|---|
| 742 | | } |
|---|
| 743 | | |
|---|
| 744 | | sub patch_ispcp_rc3() { |
|---|
| 745 | | push_el(\@main::el, 'patch_ispcp_rc3()', 'Ending...'); |
|---|
| 746 | | |
|---|
| 747 | | # database upgrade |
|---|
| 748 | | print STDOUT "\tUpgrading database structure..."; |
|---|
| 749 | | |
|---|
| 750 | | ($rs, $rdata) = get_file("$main::cfg{'ROOT_DIR'}/engine/setup/ispcp1.0.0rc3-ispcp.sql"); |
|---|
| 751 | | return $rs if ($rs != 0); |
|---|
| 752 | | |
|---|
| 753 | | $rdata =~ s/\{DATABASE\}/$main::db_name/gi; |
|---|
| 754 | | $rs = store_file("/tmp/db.sql", $rdata, $main::cfg{'ROOT_USER'}, $main::cfg{'ROOT_GROUP'}, 0644); |
|---|
| 755 | | return $rs if ($rs != 0); |
|---|
| 756 | | |
|---|
| 757 | | $rs = sys_command("mysql -u\'$main::db_user\' -p\'$main::db_pwd\' < /tmp/db.sql"); |
|---|
| 758 | | if ($rs != 0) { |
|---|
| 759 | | print STDOUT "failed!\n"; |
|---|
| 760 | | exit_werror("SQL Update failed."); |
|---|
| 761 | | } |
|---|
| 762 | | |
|---|
| 763 | | print STDOUT "done\n"; |
|---|
| 764 | 776 | |
|---|
| 765 | 777 | push_el(\@main::el, 'patch_ispcp_rc3()', 'Ending...'); |
|---|
| r1026 |
r1034 |
|
| 21 | 21 | 'PORT_POLICYD-WEIGHT', '12525;tcp;POLICYD-WEIGHT;1;1' |
|---|
| 22 | 22 | ),( |
|---|
| 23 | | 'DATABASE_REVISION', '3' |
|---|
| | 23 | 'DATABASE_REVISION', '1' |
|---|
| 24 | 24 | ); |
|---|
| 25 | 25 | |
|---|
| r1033 |
r1034 |
|
| 13 | 13 | ALTER DATABASE `ispcp` DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci; |
|---|
| 14 | 14 | |
|---|
| | 15 | -- BEGIN: Regenerate config files: |
|---|
| | 16 | UPDATE `domain` SET `domain_status` = 'change' WHERE `domain_status` = 'ok'; |
|---|
| | 17 | UPDATE `subdomain` SET `subdomain_status` = 'change' WHERE `subdomain_status` = 'ok'; |
|---|
| | 18 | UPDATE `domain_aliasses` SET `alias_status` = 'change' WHERE `alias_status` = 'ok'; |
|---|
| | 19 | UPDATE `mail_users` SET `status` = 'change' WHERE `status` = 'ok'; |
|---|
| | 20 | -- END: Regenerate config files |
|---|
| | 21 | |
|---|
| 15 | 22 | COMMIT; |
|---|
| r1026 |
r1034 |
|
| 1 | 1 | # |
|---|
| 2 | | #, fuzzy |
|---|
| 3 | 2 | msgid "" |
|---|
| 4 | 3 | msgstr "" |
|---|
| … | … | |
| 6 | 5 | "Report-Msgid-Bugs-To: \n" |
|---|
| 7 | 6 | "POT-Creation-Date: 2008-03-01 18:49+0100\n" |
|---|
| 8 | | "PO-Revision-Date: 2007-07-06 16:03-0500\n" |
|---|
| 9 | | "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" |
|---|
| | 7 | "PO-Revision-Date: 2008-03-06 00:51+0300\n" |
|---|
| | 8 | "Last-Translator: Grundik <grundik@grundik.spb.ru>\n" |
|---|
| 10 | 9 | "Language-Team: Russian <ru_RU@li.org>\n" |
|---|
| 11 | 10 | "MIME-Version: 1.0\n" |
|---|
| … | … | |
| 22 | 21 | msgstr "Russian" |
|---|
| 23 | 22 | |
|---|
| 24 | | #, fuzzy |
|---|
| 25 | 23 | msgid "ispCP Omega a Virtual Hosting Control System" |
|---|
| 26 | 24 | msgstr "ispCP - Виртуальная Система Управления Хостингом" |
|---|
| 27 | 25 | |
|---|
| 28 | 26 | msgid "Administrator login" |
|---|
| 29 | | msgstr "" |
|---|
| | 27 | msgstr "Администраторативный входа" |
|---|
| 30 | 28 | |
|---|
| 31 | 29 | msgid "Login" |
|---|
| … | … | |
| 36 | 34 | |
|---|
| 37 | 35 | msgid "Password" |
|---|
| 38 | | msgstr "" |
|---|
| | 36 | msgstr "Пароль" |
|---|
| 39 | 37 | |
|---|
| 40 | 38 | msgid "Please enter your login information" |
|---|
| … | … | |
| 42 | 40 | |
|---|
| 43 | 41 | msgid "Secure Connection" |
|---|
| 44 | | msgstr "" |
|---|
| | 42 | msgstr "Безопасное соединение" |
|---|
| 45 | 43 | |
|---|
| 46 | 44 | msgid "Normal Connection" |
|---|
| 47 | | msgstr "" |
|---|
| | 45 | msgstr "Обычное соединение" |
|---|
| 48 | 46 | |
|---|
| 49 | 47 | msgid "Lost password" |
|---|
| 50 | | msgstr "" |
|---|
| | 48 | msgstr "Восстановление пароля" |
|---|
| 51 | 49 | |
|---|
| 52 | 50 | msgid "Retrieving lost passwords is currently not possible" |
|---|
| 53 | | msgstr "" |
|---|
| | 51 | msgstr "Восстановление паролей недоступно" |
|---|
| 54 | 52 | |
|---|
| 55 | 53 | msgid "ispCP - Virtual Hosting Control System" |
|---|
| … | … | |
| 57 | 55 | |
|---|
| 58 | 56 | msgid "Password sent" |
|---|
| 59 | | msgstr "" |
|---|
| | 57 | msgstr "Пароль выслан" |
|---|
| 60 | 58 | |
|---|
| 61 | 59 | msgid "ERROR: Password was not sent" |
|---|
| 62 | | msgstr "" |
|---|
| | 60 | msgstr "Ошибка: пароль не выслан" |
|---|
| 63 | 61 | |
|---|
| 64 | 62 | msgid "The password was requested" |
|---|
| 65 | | msgstr "" |
|---|
| | 63 | msgstr "Пароль запрошен" |
|---|
| 66 | 64 | |
|---|
| 67 | 65 | msgid "Back" |
|---|
| … | … | |
| 80 | 78 | msgstr "Секретный код" |
|---|
| 81 | 79 | |
|---|
| 82 | | msgid "" |
|---|
| 83 | | "(To avoid abuse, we ask you to write the combination of letters on the above " |
|---|
| 84 | | "picture into the field \"Security code\")" |
|---|
| 85 | | msgstr "" |
|---|
| | 80 | msgid "(To avoid abuse, we ask you to write the combination of letters on the above picture into the field \"Security code\")" |
|---|
| | 81 | msgstr "(Для предотвращения доступа злоумышлеников, мы просим вас указать текст на картинке в поле \"Секретный код\")" |
|---|
| 86 | 82 | |
|---|
| 87 | 83 | msgid "Request password" |
|---|
| 88 | | msgstr "" |
|---|
| | 84 | msgstr "Запросить пароль" |
|---|
| 89 | 85 | |
|---|
| 90 | 86 | msgid "ispCP - Admin/Manage users/Add User" |
|---|
| 91 | | msgstr "" |
|---|
| | 87 | msgstr "ispCP - Администрирование/Управление пользователями/Добавить пользователя" |
|---|
| 92 | 88 | |
|---|
| 93 | 89 | msgid "Administrator" |
|---|
| … | … | |
| 95 | 91 | |
|---|
| 96 | 92 | msgid "Incorrect username length or syntax!" |
|---|
| 97 | | msgstr "" |
|---|
| | 93 | msgstr "Некорректное имя пользователя!" |
|---|
| 98 | 94 | |
|---|
| 99 | 95 | msgid "Incorrect password length or syntax!" |
|---|
| 100 | | msgstr "" |
|---|
| | 96 | msgstr "Некорректный пароль!" |
|---|
| 101 | 97 | |
|---|
| 102 | 98 | msgid "Entered passwords do not match!" |
|---|
| 103 | | msgstr "" |
|---|
| | 99 | msgstr "Пароли не совпадают!" |
|---|
| 104 | 100 | |
|---|
| 105 | 101 | msgid "Incorrect email length or syntax!" |
|---|
| 106 | | msgstr "" |
|---|
| | 102 | msgstr "Некорректный email!" |
|---|
| 107 | 103 | |
|---|
| 108 | 104 | msgid "This user name already exist!" |
|---|
| 109 | | msgstr "" |
|---|
| | 105 | msgstr "Такой пользователь уже есть!" |
|---|
| 110 | 106 | |
|---|
| 111 | 107 | msgid "Empty data or wrong field!" |
|---|
| … | … | |
| 113 | 109 | |
|---|
| 114 | 110 | msgid "Passwords don't match!" |
|---|
| 115 | | msgstr "" |
|---|
| | 111 | msgstr "Пароли не совпадают!" |
|---|
| 116 | 112 | |
|---|
| 117 | 113 | msgid "Add admin" |
|---|
| … | … | |
| 119 | 115 | |
|---|
| 120 | 116 | msgid "Core data" |
|---|
| 121 | | msgstr "Данные ядра" |
|---|
| | 117 | msgstr "Основные сведения" |
|---|
| 122 | 118 | |
|---|
| 123 | 119 | msgid "Repeat password" |
|---|
| 124 | | msgstr "" |
|---|
| | 120 | msgstr "Повторите пароль" |
|---|
| 125 | 121 | |
|---|
| 126 | 122 | msgid "Email" |
|---|
| … | … | |
| 134 | 130 | |
|---|
| 135 | 131 | msgid "Last name" |
|---|
| 136 | | msgstr "" |
|---|
| | 132 | msgstr "Фамилия" |
|---|
| 137 | 133 | |
|---|
| 138 | 134 | msgid "Gender" |
|---|
| 139 | | msgstr "" |
|---|
| 140 | | |
|---|
| 141 | | #, fuzzy |
|---|
| | 135 | msgstr "Пол" |
|---|
| | 136 | |
|---|
| 142 | 137 | msgid "Male" |
|---|
| 143 | | msgstr "e-mail" |
|---|
| 144 | | |
|---|
| 145 | | #, fuzzy |
|---|
| | 138 | msgstr "Мужской" |
|---|
| | 139 | |
|---|
| 146 | 140 | msgid "Female" |
|---|
| 147 | | msgstr "Вебмыло" |
|---|
| | 141 | msgstr "Женский" |
|---|
| 148 | 142 | |
|---|
| 149 | 143 | msgid "Unknown" |
|---|
| … | … | |
| 178 | 172 | |
|---|
| 179 | 173 | msgid "ispCP - Admin/Manage users/Add reseller" |
|---|
| 180 | | msgstr "" |
|---|
| | 174 | msgstr "ispCP - Администрирование/Управление пользователями/Добавить дилера" |
|---|
| 181 | 175 | |
|---|
| 182 | 176 | msgid "Reseller IP list is empty!" |
|---|
| 183 | | msgstr "" |
|---|
| | 177 | msgstr "Пустой список IP для дилера!" |
|---|
| 184 | 178 | |
|---|
| 185 | 179 | msgid "No." |
|---|
| … | … | |
| 190 | 184 | |
|---|
| 191 | 185 | msgid "Label" |
|---|
| 192 | | msgstr "" |
|---|
| | 186 | msgstr "Метка" |
|---|
| 193 | 187 | |
|---|
| 194 | 188 | msgid "Number" |
|---|
| … | … | |
| 196 | 190 | |
|---|
| 197 | 191 | msgid "Reseller" |
|---|
| 198 | | msgstr "" |
|---|
| 199 | | |
|---|
| 200 | | #, fuzzy |
|---|
| | 192 | msgstr "Дилер" |
|---|
| | 193 | |
|---|
| 201 | 194 | msgid "Incorrect email syntax!" |
|---|
| 202 | | msgstr "Incorrect <i>max e-mail</i> count or syntax!" |
|---|
| 203 | | |
|---|
| 204 | | #, fuzzy |
|---|
| | 195 | msgstr "Некорректный email!" |
|---|
| | 196 | |
|---|
| 205 | 197 | msgid "Incorrect domains limit!" |
|---|
| 206 | | msgstr "Incorrect <i>domain name</i> syntax" |
|---|
| 207 | | |
|---|
| 208 | | #, fuzzy |
|---|
| | 198 | msgstr "Некорректный лимит доменов!" |
|---|
| | 199 | |
|---|
| 209 | 200 | msgid "Incorrect subdomains limit!" |
|---|
| 210 | | msgstr "Incorrect <i>max subdomain</i> count or syntax!" |
|---|
| 211 | | |
|---|
| 212 | | #, fuzzy |
|---|
| | 201 | msgstr "Некорректный лимит поддоменов!" |
|---|
| | 202 | |
|---|
| 213 | 203 | msgid "Incorrect aliases limit!" |
|---|
| 214 | | msgstr "Incorrect <i>max alias</i> count or syntax!" |
|---|
| 215 | | |
|---|
| 216 | | #, fuzzy |
|---|
| | 204 | msgstr "Некорректный лимит псевдонимов доменов!" |
|---|
| | 205 | |
|---|
| 217 | 206 | msgid "Incorrect FTP accounts limit!" |
|---|
| 218 | | msgstr "Incorrect <i>max FTP</i> count or syntax!" |
|---|
| 219 | | |
|---|
| 220 | | #, fuzzy |
|---|
| | 207 | msgstr "Некорректный лимит FTP аккаунтов!" |
|---|
| | 208 | |
|---|
| 221 | 209 | msgid "Incorrect mail accounts limit!" |
|---|
| 222 | | msgstr "Incorrect <i>max e-mail</i> count or syntax!" |
|---|
| 223 | | |
|---|
| 224 | | #, fuzzy |
|---|
| | 210 | msgstr "Некорректный лимит почтовых аккаунтов!" |
|---|
| | 211 | |
|---|
| 225 | 212 | msgid "Incorrect SQL databases limit!" |
|---|
| 226 | | msgstr "Incorrect <i>max mySQL databases</i> count or syntax!" |
|---|
| 227 | | |
|---|
| 228 | | #, fuzzy |
|---|
| | 213 | msgstr "Некорректный лимит SQL баз!" |
|---|
| | 214 | |
|---|
| 229 | 215 | msgid "Incorrect SQL users limit!" |
|---|
| 230 | | msgstr "Incorrect <i>max mySQL users</i> count or syntax!" |
|---|
| 231 | | |
|---|
| 232 | | #, fuzzy |
|---|
| | 216 | msgstr "Некорректный лимит SQL пользователей!" |
|---|
| | 217 | |
|---|
| 233 | 218 | msgid "Incorrect traffic limit!" |
|---|
| 234 | | msgstr "Incorrect <i>max traffic</i> amount or syntax!" |
|---|
| 235 | | |
|---|
| 236 | | #, fuzzy |
|---|
| | 219 | msgstr "Некорректный лимит трафика!" |
|---|
| | 220 | |
|---|
| 237 | 221 | msgid "Incorrect disk quota limit!" |
|---|
| 238 | | msgstr "Incorrect <i>max disk</i> amount or syntax!" |
|---|
| | 222 | msgstr "Некорректный лимит дискового пространства!" |
|---|
| 239 | 223 | |
|---|
| 240 | 224 | msgid "You must assign at least one IP number for a reseller!" |
|---|
| 241 | | msgstr "Вы должны дать хотя-бы один IP адрес для реселейра" |
|---|
| | 225 | msgstr "Вы должны дать хотя-бы один IP адрес для дилера" |
|---|
| 242 | 226 | |
|---|
| 243 | 227 | msgid "Add reseller" |
|---|
| 244 | | msgstr "Добавить реселлера" |
|---|
| 245 | | |
|---|
| 246 | | #, fuzzy |
|---|
| | 228 | msgstr "Добавить дилера" |
|---|
| | 229 | |
|---|
| 247 | 230 | msgid "Domains limit<br><i>(0 unlimited)</i>" |
|---|
| 248 | | msgstr "Винтовой лимит [MB]<br><i>(0 - не ограничено)</i>" |
|---|
| 249 | | |
|---|
| 250 | | #, fuzzy |
|---|
| | 231 | msgstr "Лимит доменов<br><i>(0 - не ограничено)</i>" |
|---|
| | 232 | |
|---|
| 251 | 233 | msgid "Subdomains limit<br><i>(-1 disabled, 0 unlimited)</i>" |
|---|
| 252 | | msgstr "Винтовой лимит [MB]<br><i>(0 - не ограничено)</i>" |
|---|
| 253 | | |
|---|
| 254 | | #, fuzzy |
|---|
| | 234 | msgstr "Лимит поддоменов<br><i>(-1 отключены, 0 - не ограничено)</i>" |
|---|
| | 235 | |
|---|
| 255 | 236 | msgid "Aliases limit<br><i>(-1 disabled, 0 unlimited)</i>" |
|---|
| 256 | | msgstr "Винтовой лимит [MB]<br><i>(0 - не ограничено)</i>" |
|---|
| | 237 | msgstr "Лимит псевдонимов<br><i>(-1 отключены, 0 - не ограничено)</i>" |
|---|
| 257 | 238 | |
|---|
| 258 | 239 | msgid "Mail accounts limit<br><i>(-1 disabled, 0 unlimited)</i>" |
|---|
| 259 | | msgstr "" |
|---|
| | 240 | msgstr "Лимит почтовых аккаунтов<br><i>(-1 отключены, 0 - не ограничено)</i>" |
|---|
| 260 | 241 | |
|---|
| 261 | 242 | msgid "FTP accounts limit<br><i>(-1 disabled, 0 unlimited)</i>" |
|---|
| 262 | | msgstr "" |
|---|
| | 243 | msgstr "Лимит FTP аккаунтов<br><i>(-1 отключены, 0 - не ограничено)</i>" |
|---|
| 263 | 244 | |
|---|
| 264 | 245 | msgid "SQL databases limit<br><i>(-1 disabled, 0 unlimited)</i>" |
|---|
| 265 | | msgstr "" |
|---|
| | 246 | msgstr "Лимит SQL баз<br><i>(-1 отключены, 0 - не ограничено)</i>" |
|---|
| 266 | 247 | |
|---|
| 267 | 248 | msgid "SQL users limit<br><i>(-1 disabled, 0 unlimited)</i>" |
|---|
| 268 | | msgstr "" |
|---|
| | 249 | msgstr "Лимит SQL пользователей<br><i>(-1 отключены, 0 - не ограничено)</i>" |
|---|
| 269 | 250 | |
|---|
| 270 | 251 | msgid "Traffic limit [MB]<br><i>(0 unlimited)</i>" |
|---|
| 271 | | msgstr "" |
|---|
| | 252 | msgstr "Лимит трафика<br><i>(0 - не ограничено)</i>" |
|---|
| 272 | 253 | |
|---|
| 273 | 254 | msgid "Disk limit [MB]<br><i>(0 unlimited)</i>" |
|---|
| 274 | | msgstr "Винтовой лимит [MB]<br><i>(0 - не ограничено)</i>" |
|---|
| | 255 | msgstr "Лимит дискового пространства [Мб]<br><i>(0 - не ограничено)</i>" |
|---|
| 275 | 256 | |
|---|
| 276 | 257 | msgid "PHP" |
|---|
| … | … | |
| 296 | 277 | |
|---|
| 297 | 278 | msgid "Protected areas" |
|---|
| 298 | | msgstr "" |
|---|
| | 279 | msgstr "Защищенные области" |
|---|
| 299 | 280 | |
|---|
| 300 | 281 | msgid "Webmail" |
|---|
| … | … | |
| 311 | 292 | |
|---|
| 312 | 293 | msgid "Logo upload" |
|---|
| 313 | | msgstr "Загрузить логотоп" |
|---|
| | 294 | msgstr "Загрузить логотип" |
|---|
| 314 | 295 | |
|---|
| 315 | 296 | msgid "yes" |
|---|
| … | … | |
| 320 | 301 | |
|---|
| 321 | 302 | msgid "Reseller IPs" |
|---|
| 322 | | msgstr "" |
|---|
| | 303 | msgstr "IP дилера" |
|---|
| 323 | 304 | |
|---|
| 324 | 305 | msgid "Customer ID" |
|---|
| … | … | |
| 326 | 307 | |
|---|
| 327 | 308 | msgid "ispCP - Admin/Admin Log" |
|---|
| 328 | | msgstr "" |
|---|
| | 309 | msgstr "ispCP - Администрирование/Журнал" |
|---|
| 329 | 310 | |
|---|
| 330 | 311 | msgid "Log is empty!" |
|---|
| 331 | | msgstr "Лог пуст!" |
|---|
| | 312 | msgstr "Журнал пуст!" |
|---|
| 332 | 313 | |
|---|
| 333 | 314 | #, php-format |
|---|
| 334 | 315 | msgid "%s deleted the full admin log!" |
|---|
| 335 | | msgstr "" |
|---|
| | 316 | msgstr "%s удалил весь журнал!" |
|---|
| 336 | 317 | |
|---|
| 337 | 318 | #, php-format |
|---|
| 338 | 319 | msgid "%s deleted the admin log older than two weeks!" |
|---|
| 339 | | msgstr "" |
|---|
| | 320 | msgstr "%s очистил журнал от записей старше двух недель!" |
|---|
| 340 | 321 | |
|---|
| 341 | 322 | #, php-format |
|---|
| 342 | 323 | msgid "%s deleted the admin log older than one month!" |
|---|
| 343 | | msgstr "" |
|---|
| | 324 | msgstr "%s очистил журнал от записей старше месяца!" |
|---|
| 344 | 325 | |
|---|
| 345 | 326 | #, php-format |
|---|
| 346 | 327 | msgid "%s deleted the admin log older than three months!" |
|---|
| 347 | | msgstr "" |
|---|
| | 328 | msgstr "%s очистил журнал от записей старше трех месяцев!" |
|---|
| 348 | 329 | |
|---|
| 349 | 330 | #, php-format |
|---|
| 350 | 331 | msgid "%s deleted the admin log older than six months!" |
|---|
| 351 | | msgstr "" |
|---|
| | 332 | msgstr "%s очистил журнал от записей старше шесть месяцев!" |
|---|
| 352 | 333 | |
|---|
| 353 | 334 | #, php-format |
|---|
| 354 | 335 | msgid "%s deleted the admin log older than one year!" |
|---|
| 355 | | msgstr "" |
|---|
| | 336 | msgstr "%s очистил журнал от записей старше года! |
|---|
|