Merge branch 'master' of github.com:serghey-rodin/vesta

This commit is contained in:
Dmitry Naumov-Socolov 2016-10-17 10:24:48 -04:00
commit 20acf12a54
53 changed files with 1850 additions and 494 deletions

View file

@ -1,6 +1,8 @@
[Vesta Control Panel](http://vestacp.com/)
==================================================
[![Join the chat at https://gitter.im/vesta-cp/Lobby](https://badges.gitter.im/vesta-cp/Lobby.svg)](https://gitter.im/vesta-cp/Lobby?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge)
* Vesta is an open source hosting control panel.
* Vesta has a clean and focused interface without the clutter.
* Vesta has the latest of very innovative technologies.

View file

@ -747,6 +747,46 @@ sftp_backup() {
fi
}
google_backup() {
# Defining google settings
source $VESTA/conf/google.backup.conf
gsutil="$VESTA/3rdparty/gsutil/gsutil"
export BOTO_CONFIG="$VESTA/conf/.google.backup.boto"
# Debug info
echo -e "$(date "+%F %T") Remote: gs://$BUCKET/$BPATH/$user.$date.tar"
# Checking retention
backup_list=$(${gsutil} ls gs://$BUCKET/$BPATH/$user.* 2>/dev/null)
backups_count=$(echo "$backup_list" |wc -l)
if [ "$backups_count" -ge "$BACKUPS" ]; then
backups_rm_number=$((backups_count - BACKUPS + 1))
for backup in $(echo "$backup_list" |head -n $backups_rm_number); do
echo -e "$(date "+%F %T") Roated gcp backup: $backup"
$gsutil rm $backup > /dev/null 2>&1
done
fi
# Uploading backup archive
echo -e "$(date "+%F %T") Uploading $user.$date.tar ..."
if [ "$localbackup" = 'yes' ]; then
cd $BACKUP
${gsutil} cp $user.$date.tar gs://$BUCKET/$BPATH/ > /dev/null 2>&1
else
cd $tmpdir
tar -cf $BACKUP/$user.$date.tar .
cd $BACKUP/
${gsutil} cp $user.$date.tar gs://$BUCKET/$BPATH/ > /dev/null 2>&1
rc=$?
rm -f $user.$date.tar
if [ "$rc" -ne 0 ]; then
check_result "$E_CONNECT" "gsutil failed to upload $user.$date.tar"
fi
fi
}
echo -e "\n-- SUMMARY --" |tee -a $BACKUP/$user.log
# Switching on backup system types
@ -755,6 +795,7 @@ for backup_type in $(echo -e "${BACKUP_SYSTEM//,/\\n}"); do
local) local_backup ;;
ftp) ftp_backup ;;
sftp) sftp_backup ;;
google) google_backup ;;
esac
done

77
bin/v-change-sys-vesta-ssl Executable file
View file

@ -0,0 +1,77 @@
#!/bin/bash
# info: change vesta ssl certificate
# options: SSL_DIR [RESTART]
#
# The function changes vesta SSL certificate and the key.
#----------------------------------------------------------#
# Variable&Function #
#----------------------------------------------------------#
# Argument definition
domain='certificate'
ssl_dir=$1
restart=$2
# Includes
source $VESTA/func/main.sh
source $VESTA/func/domain.sh
source $VESTA/conf/vesta.conf
#----------------------------------------------------------#
# Verifications #
#----------------------------------------------------------#
check_args '1' "$#" 'SSL_DIR [RESTART]'
is_format_valid 'ssl_dir'
#----------------------------------------------------------#
# Action #
#----------------------------------------------------------#
# Checking new certificate
certificate=$(cat $ssl_dir/$domain.crt |grep -n END)
certificate_count=$(echo "$certificate" |wc -l)
if [ "$certificate_count" -gt 1 ]; then
crt_end=$(echo "$certificate" |head -n1 |cut -f 1 -d :)
crt_lines=$(wc -l $ssl_dir/$domain.crt |cut -f1 -d ' ')
pem_begin=$((crt_lines - crt_end))
mv $ssl_dir/$domain.crt $ssl_dir/$domain.crt_full
head -n $crt_end $ssl_dir/$domain.crt_full > $ssl_dir/$domain.crt
tail -n $pem_begin $ssl_dir/$domain.crt_full > $ssl_dir/$domain.ca
is_web_domain_cert_valid
mv -f $ssl_dir/$domain.crt_full $ssl_dir/$domain.crt
rm -f $ssl_dir/$domain.ca
else
is_web_domain_cert_valid
fi
# Moving old certificate
mv $VESTA/ssl/certificate.crt $VESTA/ssl/certificate.crt.back
mv $VESTA/ssl/certificate.key $VESTA/ssl/certificate.key.back
# Adding new certificate
cp -f $ssl_dir/certificate.crt $VESTA/ssl/certificate.crt
cp -f $ssl_dir/certificate.key $VESTA/ssl/certificate.key
#----------------------------------------------------------#
# Vesta #
#----------------------------------------------------------#
# Restarting web server
if [ "$restart" != 'no' ]; then
kill -HUP $(cat /var/run/vesta-nginx.pid)
$BIN/v-restart-mail
if [ ! -z "$IMAP_SYSTEM" ]; then
v-restart-service "$IMAP_SYSTEM"
fi
fi
# Logging
log_event "$OK" "$ARGUMENTS"
exit

View file

@ -2,7 +2,7 @@
# info: deactivate vesta license
# options: MODULE LICENSE
#
# The function activates and register vesta license
# The function deactivates vesta license
#----------------------------------------------------------#

View file

@ -2,7 +2,7 @@
# info: delete system sftp jail
# options: NONE
#
# The script enables sftp jailed environment
# The script disables sftp jailed environment
#----------------------------------------------------------#

View file

@ -2,7 +2,7 @@
# info: delete user sftp jail
# options: USER
#
# The script enables sftp jailed environment
# The script disables sftp jailed environment for USER
#----------------------------------------------------------#

View file

@ -99,7 +99,7 @@ get_srv_state() {
# Calculating memory usage
mem=$(echo "$pids" |awk '{sum += $3} END {print sum/1024 }')
mem=$(printf "%.0f\n" $mem)
mem=$(echo "${mem%%.*}")
# Searching pid file
pid_file=''

130
bin/v-list-sys-vesta-ssl Executable file
View file

@ -0,0 +1,130 @@
#!/bin/bash
# info: list vesta ssl certificate
# options: [FORMAT]
#
# The function of obtaining vesta ssl files.
#----------------------------------------------------------#
# Variable&Function #
#----------------------------------------------------------#
# Argument definition
format=${1-shell}
# Includes
source $VESTA/func/main.sh
# JSON list function
json_list() {
echo '{'
echo -e "\t\"VESTA\": {"
echo " \"CRT\": \"$crt\","
echo " \"KEY\": \"$key\","
echo " \"CA\": \"$ca\","
echo " \"SUBJECT\": \"$subj\","
echo " \"ALIASES\": \"$alt_dns\","
echo " \"NOT_BEFORE\": \"$before\","
echo " \"NOT_AFTER\": \"$after\","
echo " \"SIGNATURE\": \"$signature\","
echo " \"PUB_KEY\": \"$pub_key\","
echo " \"ISSUER\": \"$issuer\""
echo -e "\t}\n}"
}
# SHELL list function
shell_list() {
if [ ! -z "$crt" ]; then
echo -e "$crt"
fi
if [ ! -z "$key" ]; then
echo -e "\n$key"
fi
if [ ! -z "$crt" ]; then
echo
echo
echo "SUBJECT: $subj"
if [ ! -z "$alt_dns" ]; then
echo "ALIASES: ${alt_dns//,/ }"
fi
echo "VALID FROM: $before"
echo "VALID TIL: $after"
echo "SIGNATURE: $signature"
echo "PUB_KEY: $pub_key"
echo "ISSUER: $issuer"
fi
}
# PLAIN list function
plain_list() {
if [ ! -z "$crt" ]; then
echo -e "$crt"
fi
if [ ! -z "$key" ]; then
echo -e "\n$key"
fi
if [ ! -z "$ca" ]; then
echo -e "\n$ca"
fi
if [ ! -z "$crt" ]; then
echo "$subj"
echo "${alt_dns//,/ }"
echo "$before"
echo "$after"
echo "$signature"
echo "$pub_key"
echo "$issuer"
fi
}
# CSV list function
csv_list() {
echo -n "CRT,KEY,CA,SUBJECT,ALIASES,NOT_BEFORE,NOT_AFTER,SIGNATURE,"
echo "PUB_KEY,ISSUER"
echo -n "\"$crt\",\"$key\",\"$ca\",\"$subj\",\"${alt_dns//,/ }\","
echo "\"$before\",\"$after\",\"$signature\",\"$pub_key\",\"$issuer\""
}
#----------------------------------------------------------#
# Verifications #
#----------------------------------------------------------#
#----------------------------------------------------------#
# Action #
#----------------------------------------------------------#
# Parsing SSL certificate
crt=$(cat $VESTA/ssl/certificate.crt |sed ':a;N;$!ba;s/\n/\\n/g')
key=$(cat $VESTA/ssl/certificate.crt |sed ':a;N;$!ba;s/\n/\\n/g')
# Parsing SSL certificate details without CA
info=$(openssl x509 -text -in $VESTA/ssl/certificate.crt)
subj=$(echo "$info" |grep Subject: |cut -f 2 -d =)
before=$(echo "$info" |grep Before: |sed -e "s/.*Before: //")
after=$(echo "$info" |grep "After :" |sed -e "s/.*After : //")
signature=$(echo "$info" |grep "Algorithm:" |head -n1 )
signature=$(echo "$signature"| sed -e "s/.*Algorithm: //")
pub_key=$(echo "$info" |grep Public-Key: |cut -f2 -d \( | tr -d \))
issuer=$(echo "$info" |grep Issuer: |sed -e "s/.*Issuer: //")
alt_dns=$(echo "$info" |grep DNS |sed -e 's/DNS:/\n/g' |tr -d ',')
alt_dns=$(echo "$alt_dns" |tr -d ' ' |sed -e "/^$/d")
alt_dns=$(echo "$alt_dns" |sed -e ':a;N;$!ba;s/\n/,/g')
# Listing data
case $format in
json) json_list ;;
plain) plain_list ;;
csv) csv_list ;;
shell) shell_list ;;
esac
#----------------------------------------------------------#
# Vesta #
#----------------------------------------------------------#
exit

View file

@ -36,13 +36,6 @@ source $VESTA/func/db.sh
source $VESTA/func/rebuild.sh
source $VESTA/conf/vesta.conf
# Check backup function
is_backup_valid() {
if [ ! -e "$1" ]; then
check_result $E_NOTEXIST "backup $1 doesn't exist"
fi
}
# Check backup ownership function
is_backup_available() {
if ! [[ $2 =~ ^$1.[0-9][0-9][0-9][0-9]-[0-9][0-9]-[0-9][0-9].tar$ ]]; then
@ -50,6 +43,109 @@ is_backup_available() {
fi
}
# Defining ftp command function
ftpc() {
/usr/bin/ftp -n $HOST $PORT <<EOF
quote USER $USERNAME
quote PASS $PASSWORD
binary
$1
$2
$3
quit
EOF
}
# FTP backup download function
ftp_download() {
source $VESTA/conf/ftp.backup.conf
if [ -z "$PORT" ]; then
PORT='21'
fi
ftpc "cd $BPATH" "get $1"
}
# sftp command function
sftpc() {
expect -f "-" <<EOF "$@"
set timeout 60
set count 0
spawn /usr/bin/sftp -o StrictHostKeyChecking=no \
-o Port=$PORT $USERNAME@$HOST
expect {
"password:" {
send "$PASSWORD\r"
exp_continue
}
-re "Couldn't|(.*)disconnect|(.*)stalled|(.*)not found" {
set count \$argc
set output "Disconnected."
set rc $E_FTP
exp_continue
}
-re ".*denied.*(publickey|password)." {
set output "Permission denied, wrong publickey or password."
set rc $E_CONNECT
}
-re "\[0-9]*%" {
exp_continue
}
"sftp>" {
if {\$count < \$argc} {
set arg [lindex \$argv \$count]
send "\$arg\r"
incr count
} else {
incr count
} else {
send "exit\r"
set output "Disconnected."
if {[info exists rc] != 1} {
set rc $OK
}
}
exp_continue
}
timeout {
set output "Connection timeout."
set rc $E_CONNECT
}
}
if {[info exists output] == 1} {
puts "\$output"
}
exit \$rc
EOF
}
# SFTP backup download function
sftp_download() {
source $VESTA/conf/sftp.backup.conf
if [ -z "$PORT" ]; then
PORT='22'
fi
cd $BACKUP
sftpc "cd $BPATH" "get $1" > /dev/null 2>&1
}
# Google backup download function
google_download() {
source $VESTA/conf/google.backup.conf
gsutil="$VESTA/3rdparty/gsutil/gsutil"
export BOTO_CONFIG="$VESTA/conf/.google.backup.boto"
${gsutil} cp gs://$BUCKET/$BPATH/$1 $BACKUP/ > /dev/null 2>&1
if [ "$?" -ne 0 ]; then
check_result "$E_CONNECT" "gsutil failed to download $1"
fi
}
#----------------------------------------------------------#
# Verifications #
@ -58,7 +154,6 @@ is_backup_available() {
args_usage='USER BACKUP [WEB] [DNS] [MAIL] [DB] [CRON] [UDIR] [NOTIFY]'
check_args '2' "$#" "$args_usage"
is_format_valid 'user' 'backup'
is_backup_valid "$BACKUP/$backup"
is_backup_available "$user" "$backup"
@ -66,6 +161,25 @@ is_backup_available "$user" "$backup"
# Action #
#----------------------------------------------------------#
# Checking local backup
if [ ! -e "$BACKUP/$backup" ]; then
if [[ "$BACKUP_SYSTEM" =~ "google" ]]; then
google_download $backup
downloaded='yes'
fi
if [[ "$BACKUP_SYSTEM" =~ "sftp" ]] && [ -z "$downloaded" ]; then
sftp_download $backup
downloaded='yes'
fi
if [[ "$BACKUP_SYSTEM" =~ "ftp" ]] && [ -z "$downloaded" ]; then
ftp_download $backup
downloaded='yes'
fi
if [ -z "$downloaded" ]; then
check_result $E_NOTEXIST "backup $backup doesn't exist"
fi
fi
# Checking user existance on the server
check_user=$(is_object_valid 'user' 'USER' "$user")
if [ -z "$check_user" ]; then

View file

@ -271,7 +271,7 @@ del_web_config() {
get_web_config_lines $WEBTPL/$1/$WEB_BACKEND/$2 $conf
sed -i "$top_line,$bottom_line d" $conf
web_domain=$(grep $domain $USER_DATA/web.conf |wc -l)
web_domain=$(grep DOMAIN $USER_DATA/web.conf |wc -l)
if [ "$web_domain" -eq '0' ]; then
sed -i "/.*\/$user\/.*$1.conf/d" /etc/$1/conf.d/vesta.conf
rm -f $conf

Binary file not shown.

View file

@ -1089,6 +1089,28 @@ if [ "$exim" = 'yes' ] && [ "$mysql" = 'yes' ]; then
if [ "$release" -eq 8 ]; then
mv -f /etc/roundcube/main.inc.php /etc/roundcube/config.inc.php
mv -f /etc/roundcube/db.inc.php /etc/roundcube/debian-db-roundcube.php
# RoundCube tinyMCE fix
tinymceFixArchiveURL=$vestacp/roundcube/roundcube-tinymce.tar.gz
tinymceParentFolder=/usr/share/roundcube/program/js
tinymceFolder=$tinymceParentFolder/tinymce
tinymceBadJS=$tinymceFolder/tiny_mce.js
tinymceFixArchive=$tinymceParentFolder/roundcube-tinymce.tar.gz
if [[ -L "$tinymceFolder" && -d "$tinymceFolder" ]]; then
if [ -f "$tinymceBadJS" ]; then
wget $tinymceFixArchiveURL -O $tinymceFixArchive
if [[ -f "$tinymceFixArchive" && -s "$tinymceFixArchive" ]]; then
rm $tinymceFolder
tar -xzf $tinymceFixArchive -C $tinymceParentFolder
rm $tinymceFixArchive
chown -R root:root $tinymceFolder
else
echo "File roundcube-tinymce.tar.gz is not downloaded, RoundCube tinyMCE fix is not applied"
rm $tinymceFixArchive
fi
fi
fi
fi
fi

View file

@ -2808,7 +2808,7 @@ a.button.cancel {
vertical-align: top;
}
.mail-infoblock {
padding-top: 76px;
padding-top: 80px;
margin-left: -100px;
font-size: 12px;
color: #777;
@ -2816,11 +2816,26 @@ a.button.cancel {
.mail-infoblock td {
color: #777;
font-size: 14px;
height: 20px;
height: 18px;
padding-right: 25px;
font-weight: normal;
}
.additional-info {
margin-left: 30px;
margin-top: 30px;
width: 547px;
}
.additional-info td {
font-size: 12px;
height: 22px;
font-weight: normal;
}
.additional-info td.details {
padding-left: 20px;
}
:focus {outline:none;}
::-moz-focus-inner {border:0;}

View file

@ -78,6 +78,21 @@ foreach ($backup_types as $backup_type) {
}
}
// List ssl certificate info
exec (VESTA_CMD."v-list-sys-vesta-ssl json", $output, $return_var);
$ssl_str = json_decode(implode('', $output), true);
unset($output);
$v_ssl_crt = $ssl_str['VESTA']['CRT'];
$v_ssl_key = $ssl_str['VESTA']['KEY'];
$v_ssl_ca = $ssl_str['VESTA']['CA'];
$v_ssl_subject = $ssl_str['VESTA']['SUBJECT'];
$v_ssl_aliases = $ssl_str['VESTA']['ALIASES'];
$v_ssl_not_before = $ssl_str['VESTA']['NOT_BEFORE'];
$v_ssl_not_after = $ssl_str['VESTA']['NOT_AFTER'];
$v_ssl_signature = $ssl_str['VESTA']['SIGNATURE'];
$v_ssl_pub_key = $ssl_str['VESTA']['PUB_KEY'];
$v_ssl_issuer = $ssl_str['VESTA']['ISSUER'];
// Check POST request
if (!empty($_POST['save'])) {
@ -178,7 +193,6 @@ if (!empty($_POST['save'])) {
}
}
// Update webmail url
if (empty($_SESSION['error_msg'])) {
if ($_POST['v_mail_url'] != $_SESSION['MAIL_URL']) {
@ -231,7 +245,6 @@ if (!empty($_POST['save'])) {
}
}
// Change backup gzip level
if (empty($_SESSION['error_msg'])) {
if ($_POST['v_backup_gzip'] != $v_backup_gzip ) {
@ -323,7 +336,6 @@ if (!empty($_POST['save'])) {
}
}
// Delete remote backup host
if (empty($_SESSION['error_msg'])) {
if ((empty($_POST['v_backup_host'])) && (!empty($v_backup_host))) {
@ -340,6 +352,49 @@ if (!empty($_POST['save'])) {
}
}
// Update SSL certificate
if ((!empty($_POST['v_ssl_crt'])) && (empty($_SESSION['error_msg']))) {
if (($v_ssl_crt != str_replace("\r\n", "\n", $_POST['v_ssl_crt'])) || ($v_ssl_key != str_replace("\r\n", "\n", $_POST['v_ssl_key']))) {
exec ('mktemp -d', $mktemp_output, $return_var);
$tmpdir = $mktemp_output[0];
// Certificate
if (!empty($_POST['v_ssl_crt'])) {
$fp = fopen($tmpdir."/certificate.crt", 'w');
fwrite($fp, str_replace("\r\n", "\n", $_POST['v_ssl_crt']));
fwrite($fp, "\n");
fclose($fp);
}
// Key
if (!empty($_POST['v_ssl_key'])) {
$fp = fopen($tmpdir."/certificate.key", 'w');
fwrite($fp, str_replace("\r\n", "\n", $_POST['v_ssl_key']));
fwrite($fp, "\n");
fclose($fp);
}
exec (VESTA_CMD."v-change-sys-vesta-ssl ".$tmpdir, $output, $return_var);
check_return_code($return_var,$output);
unset($output);
// List ssl certificate info
exec (VESTA_CMD."v-list-sys-vesta-ssl json", $output, $return_var);
$ssl_str = json_decode(implode('', $output), true);
unset($output);
$v_ssl_crt = $ssl_str['VESTA']['CRT'];
$v_ssl_key = $ssl_str['VESTA']['KEY'];
$v_ssl_ca = $ssl_str['VESTA']['CA'];
$v_ssl_subject = $ssl_str['VESTA']['SUBJECT'];
$v_ssl_aliases = $ssl_str['VESTA']['ALIASES'];
$v_ssl_not_before = $ssl_str['VESTA']['NOT_BEFORE'];
$v_ssl_not_after = $ssl_str['VESTA']['NOT_AFTER'];
$v_ssl_signature = $ssl_str['VESTA']['SIGNATURE'];
$v_ssl_pub_key = $ssl_str['VESTA']['PUB_KEY'];
$v_ssl_issuer = $ssl_str['VESTA']['ISSUER'];
}
}
// Flush field values on success
if (empty($_SESSION['error_msg'])) {
$_SESSION['ok_msg'] = __('Changes has been saved.');
@ -375,7 +430,6 @@ if (!empty($_POST['save'])) {
}
}
// activating filemanager licence
if (empty($_SESSION['error_msg'])) {
if($_SESSION['FILEMANAGER_KEY'] != $_POST['v_filemanager_licence'] && $_POST['v_filemanager'] == 'yes'){
@ -410,11 +464,14 @@ if (!empty($_POST['save'])) {
// Check system configuration
exec (VESTA_CMD . "v-list-sys-config json", $output, $return_var);
$data = json_decode(implode('', $output), true);
unset($output);
$sys_arr = $data['config'];
foreach ($sys_arr as $key => $value) {
$_SESSION[$key] = $value;
}
// Render page
render_page($user, $TAB, 'edit_server');

View file

@ -42,6 +42,13 @@ if ( $v_ssl == 'yes' ) {
$v_ssl_crt = $ssl_str[$v_domain]['CRT'];
$v_ssl_key = $ssl_str[$v_domain]['KEY'];
$v_ssl_ca = $ssl_str[$v_domain]['CA'];
$v_ssl_subject = $ssl_str[$v_domain]['SUBJECT'];
$v_ssl_aliases = $ssl_str[$v_domain]['ALIASES'];
$v_ssl_not_before = $ssl_str[$v_domain]['NOT_BEFORE'];
$v_ssl_not_after = $ssl_str[$v_domain]['NOT_AFTER'];
$v_ssl_signature = $ssl_str[$v_domain]['SIGNATURE'];
$v_ssl_pub_key = $ssl_str[$v_domain]['PUB_KEY'];
$v_ssl_issuer = $ssl_str[$v_domain]['ISSUER'];
}
$v_ssl_home = $data[$v_domain]['SSL_HOME'];
$v_backend_template = $data[$v_domain]['BACKEND'];
@ -301,9 +308,20 @@ if (!empty($_POST['save'])) {
unset($output);
$restart_web = 'yes';
$restart_proxy = 'yes';
$v_ssl_crt = $_POST['v_ssl_crt'];
$v_ssl_key = $_POST['v_ssl_key'];
$v_ssl_ca = $_POST['v_ssl_ca'];
exec (VESTA_CMD."v-list-web-domain-ssl ".$user." '".$v_domain."' json", $output, $return_var);
$ssl_str = json_decode(implode('', $output), true);
unset($output);
$v_ssl_crt = $ssl_str[$v_domain]['CRT'];
$v_ssl_key = $ssl_str[$v_domain]['KEY'];
$v_ssl_ca = $ssl_str[$v_domain]['CA'];
$v_ssl_subject = $ssl_str[$v_domain]['SUBJECT'];
$v_ssl_aliases = $ssl_str[$v_domain]['ALIASES'];
$v_ssl_not_before = $ssl_str[$v_domain]['NOT_BEFORE'];
$v_ssl_not_after = $ssl_str[$v_domain]['NOT_AFTER'];
$v_ssl_signature = $ssl_str[$v_domain]['SIGNATURE'];
$v_ssl_pub_key = $ssl_str[$v_domain]['PUB_KEY'];
$v_ssl_issuer = $ssl_str[$v_domain]['ISSUER'];
// Cleanup certificate tempfiles
if (!empty($_POST['v_ssl_crt'])) {
@ -367,10 +385,20 @@ if (!empty($_POST['save'])) {
$v_ssl = 'yes';
$restart_web = 'yes';
$restart_proxy = 'yes';
$v_ssl_crt = $_POST['v_ssl_crt'];
$v_ssl_key = $_POST['v_ssl_key'];
$v_ssl_ca = $_POST['v_ssl_ca'];
$v_ssl_home = $_POST['v_ssl_home'];
exec (VESTA_CMD."v-list-web-domain-ssl ".$user." '".$v_domain."' json", $output, $return_var);
$ssl_str = json_decode(implode('', $output), true);
unset($output);
$v_ssl_crt = $ssl_str[$v_domain]['CRT'];
$v_ssl_key = $ssl_str[$v_domain]['KEY'];
$v_ssl_ca = $ssl_str[$v_domain]['CA'];
$v_ssl_subject = $ssl_str[$v_domain]['SUBJECT'];
$v_ssl_aliases = $ssl_str[$v_domain]['ALIASES'];
$v_ssl_not_before = $ssl_str[$v_domain]['NOT_BEFORE'];
$v_ssl_not_after = $ssl_str[$v_domain]['NOT_AFTER'];
$v_ssl_signature = $ssl_str[$v_domain]['SIGNATURE'];
$v_ssl_pub_key = $ssl_str[$v_domain]['PUB_KEY'];
$v_ssl_issuer = $ssl_str[$v_domain]['ISSUER'];
// Cleanup certificate tempfiles
if (!empty($_POST['v_ssl_crt'])) {
@ -581,10 +609,10 @@ if (!empty($_POST['save'])) {
// Change FTP account path
$v_ftp_username = $user . '_' . $v_ftp_user_data['v_ftp_user']; //preg_replace("/^".$user."_/", "", $v_ftp_user_data['v_ftp_user']);
$v_ftp_username = escapeshellarg($v_ftp_username);
//if (!empty($v_ftp_user_data['v_ftp_path'])) {
$v_ftp_path = escapeshellarg(trim($v_ftp_user_data['v_ftp_path']));
exec (VESTA_CMD."v-change-web-domain-ftp-path ".$v_username." ".$v_domain." ".$v_ftp_username." ".$v_ftp_path, $output, $return_var);
//}
if(escapeshellarg(trim($v_ftp_user_data['v_ftp_path_prev'])) != $v_ftp_path) {
exec (VESTA_CMD."v-change-web-domain-ftp-path ".$v_username." ".$v_domain." ".$v_ftp_username." ".$v_ftp_path, $output, $return_var);
}
// Change FTP account password
if (!empty($v_ftp_user_data['v_ftp_password'])) {

View file

@ -730,10 +730,28 @@ $LANG['ar'] = array(
'webalizer' => 'محلل الويب webalizer',
'awstats' => 'احصائيات الويب awstats',
'Vesta SSL' => 'Vesta SSL',
'SUBJECT' => 'SUBJECT',
'ALIASES' => 'ALIASES',
'NOT_BEFORE' => 'NOT_BEFORE',
'NOT_AFTER' => 'NOT_AFTER',
'SIGNATURE' => 'SIGNATURE',
'PUB_KEY' => 'PUB_KEY',
'ISSUER' => 'ISSUER',
'Use server hostname' => 'Use server hostname',
'Use domain hostname' => 'Use domain hostname',
'Use STARTTLS' => 'Use STARTTLS',
'Use SSL' => 'Use SSL',
'No encryption' => 'No encryption',
'Do not use encryption' => 'Do not use encryption',
'maximum characters length, including prefix' => 'maximum %s characters length, including prefix',
// Texts below doesn't exist in en.php
'%s rule' => 'قواعد %s',
'MainDomain' => 'النطاق الرئيسي',
'SubDomain' => 'النطاق الفرعي (الجزء الاول الذي يضاف إلى النطاق الرئيسي)',
'Add Sub Domain' => 'إضافة نطاق فرعي'
);

View file

@ -728,4 +728,23 @@ $LANG['bs'] = array(
'webalizer' => 'webalizer',
'awstats' => 'awstats',
'Vesta SSL' => 'Vesta SSL',
'SUBJECT' => 'SUBJECT',
'ALIASES' => 'ALIASES',
'NOT_BEFORE' => 'NOT_BEFORE',
'NOT_AFTER' => 'NOT_AFTER',
'SIGNATURE' => 'SIGNATURE',
'PUB_KEY' => 'PUB_KEY',
'ISSUER' => 'ISSUER',
'Use server hostname' => 'Koristi server hostname',
'Use domain hostname' => 'Koristi hostname domena',
'Use STARTTLS' => 'Koristi STARTTLS',
'Use SSL' => 'Koristi SSL',
'No encryption' => 'Bez enkripcije',
'Do not use encryption' => 'Nemoj koristiti enkripciju',
'maximum characters length, including prefix' => 'maksimalna dužina sme biti %s karaktera, uključujući i prefix',
);

View file

@ -730,4 +730,22 @@ $LANG['cn'] = array(
'webalizer' => 'Webalizer',
'awstats' => 'AWStats',
'Vesta SSL' => 'Vesta SSL',
'SUBJECT' => 'SUBJECT',
'ALIASES' => 'ALIASES',
'NOT_BEFORE' => 'NOT_BEFORE',
'NOT_AFTER' => 'NOT_AFTER',
'SIGNATURE' => 'SIGNATURE',
'PUB_KEY' => 'PUB_KEY',
'ISSUER' => 'ISSUER',
'Use server hostname' => 'Use server hostname',
'Use domain hostname' => 'Use domain hostname',
'Use STARTTLS' => 'Use STARTTLS',
'Use SSL' => 'Use SSL',
'No encryption' => 'No encryption',
'Do not use encryption' => 'Do not use encryption',
'maximum characters length, including prefix' => 'maximum %s characters length, including prefix',
);

View file

@ -731,4 +731,22 @@ $LANG['cz'] = array(
'webalizer' => 'webalizer',
'awstats' => 'awstats',
'Vesta SSL' => 'Vesta SSL',
'SUBJECT' => 'SUBJECT',
'ALIASES' => 'ALIASES',
'NOT_BEFORE' => 'NOT_BEFORE',
'NOT_AFTER' => 'NOT_AFTER',
'SIGNATURE' => 'SIGNATURE',
'PUB_KEY' => 'PUB_KEY',
'ISSUER' => 'ISSUER',
'Use server hostname' => 'Use server hostname',
'Use domain hostname' => 'Use domain hostname',
'Use STARTTLS' => 'Use STARTTLS',
'Use SSL' => 'Use SSL',
'No encryption' => 'No encryption',
'Do not use encryption' => 'Do not use encryption',
'maximum characters length, including prefix' => 'maximum %s characters length, including prefix',
);

View file

@ -732,4 +732,22 @@ $LANG['da'] = array(
'webalizer' => 'webalizer',
'awstats' => 'awstats',
'Vesta SSL' => 'Vesta SSL',
'SUBJECT' => 'SUBJECT',
'ALIASES' => 'ALIASES',
'NOT_BEFORE' => 'NOT_BEFORE',
'NOT_AFTER' => 'NOT_AFTER',
'SIGNATURE' => 'SIGNATURE',
'PUB_KEY' => 'PUB_KEY',
'ISSUER' => 'ISSUER',
'Use server hostname' => 'Use server hostname',
'Use domain hostname' => 'Use domain hostname',
'Use STARTTLS' => 'Use STARTTLS',
'Use SSL' => 'Use SSL',
'No encryption' => 'No encryption',
'Do not use encryption' => 'Do not use encryption',
'maximum characters length, including prefix' => 'maximum %s characters length, including prefix',
);

View file

@ -730,4 +730,22 @@ $LANG['de'] = array(
'webalizer' => 'webalizer',
'awstats' => 'awstats',
'Vesta SSL' => 'Vesta SSL',
'SUBJECT' => 'SUBJECT',
'ALIASES' => 'ALIASES',
'NOT_BEFORE' => 'NOT_BEFORE',
'NOT_AFTER' => 'NOT_AFTER',
'SIGNATURE' => 'SIGNATURE',
'PUB_KEY' => 'PUB_KEY',
'ISSUER' => 'ISSUER',
'Use server hostname' => 'Use server hostname',
'Use domain hostname' => 'Use domain hostname',
'Use STARTTLS' => 'Use STARTTLS',
'Use SSL' => 'Use SSL',
'No encryption' => 'No encryption',
'Do not use encryption' => 'Do not use encryption',
'maximum characters length, including prefix' => 'maximum %s characters length, including prefix',
);

View file

@ -731,4 +731,22 @@ $LANG['el'] = array(
'webalizer' => 'webalizer',
'awstats' => 'awstats',
'Vesta SSL' => 'Vesta SSL',
'SUBJECT' => 'SUBJECT',
'ALIASES' => 'ALIASES',
'NOT_BEFORE' => 'NOT_BEFORE',
'NOT_AFTER' => 'NOT_AFTER',
'SIGNATURE' => 'SIGNATURE',
'PUB_KEY' => 'PUB_KEY',
'ISSUER' => 'ISSUER',
'Use server hostname' => 'Use server hostname',
'Use domain hostname' => 'Use domain hostname',
'Use STARTTLS' => 'Use STARTTLS',
'Use SSL' => 'Use SSL',
'No encryption' => 'No encryption',
'Do not use encryption' => 'Do not use encryption',
'maximum characters length, including prefix' => 'maximum %s characters length, including prefix',
);

View file

@ -731,4 +731,22 @@ $LANG['en'] = array(
'webalizer' => 'webalizer',
'awstats' => 'awstats',
'Vesta SSL' => 'Vesta SSL',
'SUBJECT' => 'SUBJECT',
'ALIASES' => 'ALIASES',
'NOT_BEFORE' => 'NOT_BEFORE',
'NOT_AFTER' => 'NOT_AFTER',
'SIGNATURE' => 'SIGNATURE',
'PUB_KEY' => 'PUB_KEY',
'ISSUER' => 'ISSUER',
'Use server hostname' => 'Use server hostname',
'Use domain hostname' => 'Use domain hostname',
'Use STARTTLS' => 'Use STARTTLS',
'Use SSL' => 'Use SSL',
'No encryption' => 'No encryption',
'Do not use encryption' => 'Do not use encryption',
'maximum characters length, including prefix' => 'maximum %s characters length, including prefix',
);

View file

@ -27,14 +27,14 @@ $LANG['es'] = array(
'BACKUP' => 'RESPALDO',
'LOGIN' => 'LOGIN',
'RESET PASSWORD' => 'RESET PASSWORD',
'RESET PASSWORD' => 'RESETEAR CONTRASEÑA',
'SEARCH' => 'BUSCAR',
'PACKAGE' => 'PAQUETE',
'RRD' => 'RRD',
'STATS' => 'ESTADÍSTICAS',
'LOG' => 'LOG',
'UPDATES' => 'UPDATES',
'FIREWALL' => 'FIREWALL',
'UPDATES' => 'ACTUALIZACIONES',
'FIREWALL' => 'CORTAFUEGO',
'SERVER' => 'SERVIDOR',
'MEMORY' => 'MEMORIA',
'DISK' => 'DISCO',
@ -59,7 +59,7 @@ $LANG['es'] = array(
'Ban IP Address' => 'Bloquear IP',
'Search' => 'Buscar',
'Add one more FTP Account' => 'Añadir una Cuenta FTP adicional',
'Overall Statistics' => 'EstadísticaS Generales',
'Overall Statistics' => 'Estadísticas Generales',
'Daily' => 'Diariamente',
'Weekly' => 'Semanalmente',
'Monthly' => 'Mensualmente',
@ -417,8 +417,8 @@ $LANG['es'] = array(
'%s cron jobs' => '%s tareas programadas',
'1 archive' => '1 archivo',
'%s archives' => '%s archivos',
'1 item' => '1 item',
'%s items' => '%s items',
'1 item' => '1 elemento',
'%s items' => '%s elementos',
'1 package' => '1 plan',
'%s packages' => '%s planes',
'1 IP address' => '1 dirección IP',
@ -727,4 +727,23 @@ $LANG['es'] = array(
'webalizer' => 'webalizer',
'awstats' => 'awstats',
'Vesta SSL' => 'Vesta SSL',
'SUBJECT' => 'ASUNTO',
'ALIASES' => 'ALIASES',
'NOT_BEFORE' => 'NOT_BEFORE',
'NOT_AFTER' => 'NOT_AFTER',
'SIGNATURE' => 'SIGNATURE',
'PUB_KEY' => 'PUB_KEY',
'ISSUER' => 'ISSUER',
'Use server hostname' => 'Usar server hostname',
'Use domain hostname' => 'Usar domain hostname',
'Use STARTTLS' => 'Usar STARTTLS',
'Use SSL' => 'Usar SSL',
'No encryption' => 'Sin encriptación',
'Do not use encryption' => 'No usar encriptación',
'maximum characters length, including prefix' => 'usar un máximo de %s, incluyendo prefijo',
);

View file

@ -733,6 +733,23 @@ $LANG['fa'] = [
'webalizer' => 'webalizer',
'awstats' => 'awstats',
'Vesta SSL' => 'Vesta SSL',
'SUBJECT' => 'SUBJECT',
'ALIASES' => 'ALIASES',
'NOT_BEFORE' => 'NOT_BEFORE',
'NOT_AFTER' => 'NOT_AFTER',
'SIGNATURE' => 'SIGNATURE',
'PUB_KEY' => 'PUB_KEY',
'ISSUER' => 'ISSUER',
'Use server hostname' => 'Use server hostname',
'Use domain hostname' => 'Use domain hostname',
'Use STARTTLS' => 'Use STARTTLS',
'Use SSL' => 'Use SSL',
'No encryption' => 'No encryption',
'Do not use encryption' => 'Do not use encryption',
'maximum characters length, including prefix' => 'maximum %s characters length, including prefix',
// Texts below doesn't exist in en.php
'70 خط اخر %s.%s.log' => 'هفتاد خط انتهايي از %s.%s.log',

View file

@ -732,6 +732,23 @@ $LANG['fi'] = array(
'webalizer' => 'webalizer',
'awstats' => 'awstats',
'Vesta SSL' => 'Vesta SSL',
'SUBJECT' => 'SUBJECT',
'ALIASES' => 'ALIASES',
'NOT_BEFORE' => 'NOT_BEFORE',
'NOT_AFTER' => 'NOT_AFTER',
'SIGNATURE' => 'SIGNATURE',
'PUB_KEY' => 'PUB_KEY',
'ISSUER' => 'ISSUER',
'Use server hostname' => 'Use server hostname',
'Use domain hostname' => 'Use domain hostname',
'Use STARTTLS' => 'Use STARTTLS',
'Use SSL' => 'Use SSL',
'No encryption' => 'No encryption',
'Do not use encryption' => 'Do not use encryption',
'maximum characters length, including prefix' => 'maximum %s characters length, including prefix',
// Texts below doesn't exist in en.php
'traffic' => 'tiedonsiirto',

View file

@ -730,6 +730,23 @@ $LANG['fr'] = array(
'webalizer' => 'webalizer',
'awstats' => 'awstats',
'Vesta SSL' => 'Vesta SSL',
'SUBJECT' => 'SUBJECT',
'ALIASES' => 'ALIASES',
'NOT_BEFORE' => 'NOT_BEFORE',
'NOT_AFTER' => 'NOT_AFTER',
'SIGNATURE' => 'SIGNATURE',
'PUB_KEY' => 'PUB_KEY',
'ISSUER' => 'ISSUER',
'Use server hostname' => 'Use server hostname',
'Use domain hostname' => 'Use domain hostname',
'Use STARTTLS' => 'Use STARTTLS',
'Use SSL' => 'Use SSL',
'No encryption' => 'No encryption',
'Do not use encryption' => 'Do not use encryption',
'maximum characters length, including prefix' => 'maximum %s characters length, including prefix',
// Texts below doesn't exist in en.php
'disk' => 'disque',

View file

@ -734,6 +734,23 @@ $LANG['hu'] = array(
'webalizer' => 'webalizer',
'awstats' => 'awstats',
'Vesta SSL' => 'Vesta SSL',
'SUBJECT' => 'SUBJECT',
'ALIASES' => 'ALIASES',
'NOT_BEFORE' => 'NOT_BEFORE',
'NOT_AFTER' => 'NOT_AFTER',
'SIGNATURE' => 'SIGNATURE',
'PUB_KEY' => 'PUB_KEY',
'ISSUER' => 'ISSUER',
'Use server hostname' => 'Use server hostname',
'Use domain hostname' => 'Use domain hostname',
'Use STARTTLS' => 'Use STARTTLS',
'Use SSL' => 'Use SSL',
'No encryption' => 'No encryption',
'Do not use encryption' => 'Do not use encryption',
'maximum characters length, including prefix' => 'maximum %s characters length, including prefix',
// Texts below doesn't exist in en.php
'Bandwidth Usage eth1' => 'eth1 sávszélesség használat',

View file

@ -733,4 +733,22 @@ $LANG['id'] = array(
'webalizer' => 'webalizer',
'awstats' => 'awstats',
'Vesta SSL' => 'Vesta SSL',
'SUBJECT' => 'SUBJECT',
'ALIASES' => 'ALIASES',
'NOT_BEFORE' => 'NOT_BEFORE',
'NOT_AFTER' => 'NOT_AFTER',
'SIGNATURE' => 'SIGNATURE',
'PUB_KEY' => 'PUB_KEY',
'ISSUER' => 'ISSUER',
'Use server hostname' => 'Use server hostname',
'Use domain hostname' => 'Use domain hostname',
'Use STARTTLS' => 'Use STARTTLS',
'Use SSL' => 'Use SSL',
'No encryption' => 'No encryption',
'Do not use encryption' => 'Do not use encryption',
'maximum characters length, including prefix' => 'maximum %s characters length, including prefix',
);

View file

@ -731,4 +731,22 @@ $LANG['it'] = array(
'webalizer' => 'webalizer',
'awstats' => 'awstats',
'Vesta SSL' => 'Vesta SSL',
'SUBJECT' => 'SUBJECT',
'ALIASES' => 'ALIASES',
'NOT_BEFORE' => 'NOT_BEFORE',
'NOT_AFTER' => 'NOT_AFTER',
'SIGNATURE' => 'SIGNATURE',
'PUB_KEY' => 'PUB_KEY',
'ISSUER' => 'ISSUER',
'Use server hostname' => 'Use server hostname',
'Use domain hostname' => 'Use domain hostname',
'Use STARTTLS' => 'Use STARTTLS',
'Use SSL' => 'Use SSL',
'No encryption' => 'No encryption',
'Do not use encryption' => 'Do not use encryption',
'maximum characters length, including prefix' => 'maximum %s characters length, including prefix',
);

View file

@ -730,4 +730,22 @@ $LANG['ja'] = array(
'webalizer' => 'webalizer',
'awstats' => 'awstats',
'Vesta SSL' => 'Vesta SSL',
'SUBJECT' => 'SUBJECT',
'ALIASES' => 'ALIASES',
'NOT_BEFORE' => 'NOT_BEFORE',
'NOT_AFTER' => 'NOT_AFTER',
'SIGNATURE' => 'SIGNATURE',
'PUB_KEY' => 'PUB_KEY',
'ISSUER' => 'ISSUER',
'Use server hostname' => 'Use server hostname',
'Use domain hostname' => 'Use domain hostname',
'Use STARTTLS' => 'Use STARTTLS',
'Use SSL' => 'Use SSL',
'No encryption' => 'No encryption',
'Do not use encryption' => 'Do not use encryption',
'maximum characters length, including prefix' => 'maximum %s characters length, including prefix',
);

View file

@ -730,4 +730,22 @@ $LANG['ka'] = array(
'webalizer' => 'webalizer',
'awstats' => 'awstats',
'Vesta SSL' => 'Vesta SSL',
'SUBJECT' => 'SUBJECT',
'ALIASES' => 'ALIASES',
'NOT_BEFORE' => 'NOT_BEFORE',
'NOT_AFTER' => 'NOT_AFTER',
'SIGNATURE' => 'SIGNATURE',
'PUB_KEY' => 'PUB_KEY',
'ISSUER' => 'ISSUER',
'Use server hostname' => 'Use server hostname',
'Use domain hostname' => 'Use domain hostname',
'Use STARTTLS' => 'Use STARTTLS',
'Use SSL' => 'Use SSL',
'No encryption' => 'No encryption',
'Do not use encryption' => 'Do not use encryption',
'maximum characters length, including prefix' => 'maximum %s characters length, including prefix',
);

View file

@ -731,4 +731,22 @@ $LANG['nl'] = array(
'webalizer' => 'webalizer',
'awstats' => 'awstats',
'Vesta SSL' => 'Vesta SSL',
'SUBJECT' => 'SUBJECT',
'ALIASES' => 'ALIASES',
'NOT_BEFORE' => 'NOT_BEFORE',
'NOT_AFTER' => 'NOT_AFTER',
'SIGNATURE' => 'SIGNATURE',
'PUB_KEY' => 'PUB_KEY',
'ISSUER' => 'ISSUER',
'Use server hostname' => 'Use server hostname',
'Use domain hostname' => 'Use domain hostname',
'Use STARTTLS' => 'Use STARTTLS',
'Use SSL' => 'Use SSL',
'No encryption' => 'No encryption',
'Do not use encryption' => 'Do not use encryption',
'maximum characters length, including prefix' => 'maximum %s characters length, including prefix',
);

View file

@ -731,4 +731,22 @@ $LANG['no'] = array(
'webalizer' => 'webalizer',
'awstats' => 'awstats',
'Vesta SSL' => 'Vesta SSL',
'SUBJECT' => 'SUBJECT',
'ALIASES' => 'ALIASES',
'NOT_BEFORE' => 'NOT_BEFORE',
'NOT_AFTER' => 'NOT_AFTER',
'SIGNATURE' => 'SIGNATURE',
'PUB_KEY' => 'PUB_KEY',
'ISSUER' => 'ISSUER',
'Use server hostname' => 'Use server hostname',
'Use domain hostname' => 'Use domain hostname',
'Use STARTTLS' => 'Use STARTTLS',
'Use SSL' => 'Use SSL',
'No encryption' => 'No encryption',
'Do not use encryption' => 'Do not use encryption',
'maximum characters length, including prefix' => 'maximum %s characters length, including prefix',
);

View file

@ -730,4 +730,22 @@ $LANG['pl'] = array(
'webalizer' => 'webalizer',
'awstats' => 'awstats',
'Vesta SSL' => 'Vesta SSL',
'SUBJECT' => 'SUBJECT',
'ALIASES' => 'ALIASES',
'NOT_BEFORE' => 'NOT_BEFORE',
'NOT_AFTER' => 'NOT_AFTER',
'SIGNATURE' => 'SIGNATURE',
'PUB_KEY' => 'PUB_KEY',
'ISSUER' => 'ISSUER',
'Use server hostname' => 'Use server hostname',
'Use domain hostname' => 'Use domain hostname',
'Use STARTTLS' => 'Use STARTTLS',
'Use SSL' => 'Use SSL',
'No encryption' => 'No encryption',
'Do not use encryption' => 'Do not use encryption',
'maximum characters length, including prefix' => 'maximum %s characters length, including prefix',
);

View file

@ -25,18 +25,18 @@ $LANG['pt-BR'] = array(
'CRON' => 'TAREFA',
'BACKUP' => 'BACKUP',
'LOGIN' => 'LOGIN',
'RESET PASSWORD' => 'RESET PASSWORD',
'SEARCH' => 'SEARCH',
'PACKAGE' => 'PACKAGE',
'RRD' => 'RRD',
'STATS' => 'STATS',
'LOGIN' => 'ENTRAR',
'RESET PASSWORD' => 'RESTAURAR SENHA',
'SEARCH' => 'PESQUISAR',
'PACKAGE' => 'PACOTE',
'RRD' => 'GRÁFICOS',
'STATS' => 'ESTATÍSTICAS',
'LOG' => 'LOG',
'UPDATES' => 'UPDATES',
'UPDATES' => 'ATUALIZAÇÕES',
'FIREWALL' => 'FIREWALL',
'SERVER' => 'SERVER',
'MEMORY' => 'MEMORY',
'DISK' => 'DISK',
'SERVER' => 'SERVIDOR',
'MEMORY' => 'MEMÓRIA',
'DISK' => 'DISCO',
'NETWORK' => 'NETWORK',
'Web Log Manager' => 'Web Log Manager',
@ -210,15 +210,15 @@ $LANG['pt-BR'] = array(
'Forward to' => 'Encaminhar para',
'Do not store forwarded mail' => 'Não armazenar email encaminhado',
'IMAP hostname' => 'IMAP hostname',
'IMAP port' => 'IMAP port',
'IMAP security' => 'IMAP security',
'IMAP auth method' => 'IMAP auth method',
'IMAP port' => 'Porta IMAP',
'IMAP security' => 'Segurança IMAP',
'IMAP auth method' => 'Método de autenticação IMAP',
'SMTP hostname' => 'SMTP hostname',
'SMTP port' => 'SMTP port',
'SMTP security' => 'SMTP security',
'SMTP auth method' => 'SMTP auth method',
'SMTP port' => 'Porta SMTP',
'SMTP security' => 'Segurança SMTP',
'SMTP auth method' => 'Método de autenticação SMTP',
'STARTTLS' => 'STARTTLS',
'Normal password' => 'Normal password',
'Normal password' => 'Senha normal',
'database' => 'banco de dados',
'User' => 'Usuário',
'Host' => 'Host',
@ -236,11 +236,11 @@ $LANG['pt-BR'] = array(
'Status' => 'Status',
'shared' => 'compartilhado',
'dedicated' => 'dedicado',
'Owner' => 'Dono',
'Owner' => 'Proprietário',
'Users' => 'Usuários',
'Load Average' => 'Carga Média',
'Memory Usage' => 'Uso de Memória',
'APACHE2 Usage' => 'APACHE2 Usage',
'APACHE2 Usage' => 'Uso do APACHE2',
'HTTPD Usage' => 'Uso do HTTPD',
'NGINX Usage' => 'Uso do NGINX',
'MySQL Usage on localhost' => 'Uso do MySQL MySQL em localhost',
@ -268,7 +268,7 @@ $LANG['pt-BR'] = array(
'php interpreter' => 'interpretador php',
'internal web server' => 'servidor web interno',
'Version' => 'Versão',
'Release' => 'Release',
'Release' => 'Lançamento',
'Architecture' => 'Arquitetura',
'Object' => 'Objeto',
'Username' => 'Usuário',
@ -285,7 +285,7 @@ $LANG['pt-BR'] = array(
'DNS Support' => 'Suporte a DNS',
'Mail Support' => 'Suporte a Email',
'Advanced options' => 'Opções Avançadas',
'Basic options' => 'Basic options',
'Basic options' => 'Opções Básicas',
'Aliases' => 'Apelidos',
'SSL Certificate' => 'Certificado SSL',
'SSL Key' => 'Chave SSL',
@ -298,7 +298,7 @@ $LANG['pt-BR'] = array(
'Account' => 'Conta',
'Prefix will be automaticaly added to username' => 'O prefixo %s será automaticamente adicionado ao nome de usuário',
'Send FTP credentials to email' => 'Enviar credenciais ao FTP por email',
'Expiration Date' => 'data para Expirar',
'Expiration Date' => 'Data para expirar',
'YYYY-MM-DD' => 'DD-MM-YYYY',
'Name servers' => 'Servidores de Nome',
'Record' => 'Registro',
@ -445,7 +445,7 @@ $LANG['pt-BR'] = array(
'PACKAGE_CREATED_OK' => 'Pacote <a href="/edit/package/?package=%s"><b>%s</b></a> criado com sucesso.',
'SSL_GENERATED_OK' => 'Certificado SSL criado sucesso.',
'RULE_CREATED_OK' => 'Regra criada com sucesso.',
'BANLIST_CREATED_OK' => 'IP address has been banned successfully', // I'm not sure about this text
'BANLIST_CREATED_OK' => 'Endereço IP foi banido com sucesso', // I'm not sure about this text
'Autoupdate has been successfully enabled' => 'Atualização automática ativada com sucesso',
'Autoupdate has been successfully disabled' => 'Atualização automática desativado com sucesso',
'Cronjob email reporting has been successfully enabled' => 'Relatórios de tarefas ativado com sucesso',
@ -553,16 +553,16 @@ $LANG['pt-BR'] = array(
'Antivirus' => 'Antivirus',
'AntiSpam' => 'AntiSpam',
'Webmail URL' => 'Webmail URL',
'MySQL Support' => 'MySQL Support',
'MySQL Support' => 'Suporte MySQL',
'phpMyAdmin URL' => 'phpMyAdmin URL',
'PostgreSQL Support' => 'PostgreSQL Support',
'phpPgAdmin URL' => 'phpPgAdmin URL',
'Maximum Number Of Databases' => 'Maximum Number Of Databases',
'Current Number Of Databases' => 'Current Number Of Databases',
'Local backup' => 'Local backup',
'Compression level' => 'Compression level',
'Directory' => 'Directory',
'Remote backup' => 'Remote backup',
'Maximum Number Of Databases' => 'Número máximo de bases de dados',
'Current Number Of Databases' => 'Número atual de bases de dados',
'Local backup' => 'Backup local',
'Compression level' => 'Nível de compressão',
'Directory' => 'Diretório',
'Remote backup' => 'Backup remoto',
'ftp' => 'FTP',
'sftp' => 'SFTP',
'SFTP Chroot' => 'SFTP Chroot',
@ -582,23 +582,23 @@ $LANG['pt-BR'] = array(
'Name' => 'Nome',
'File Manager' => 'File Manager',
'File Manager' => 'Gerenciador de Arquivos',
'size' => 'tamanho',
'date' => 'data',
'name' => 'nome',
'Initializing' => 'Inicializando',
'UPLOAD' => 'ENVIAR',
'NEW FILE' => 'NOVO ARQUIVO',
'NEW DIR' => 'NOVO DIR',
'NEW DIR' => 'NOVA PASTA',
'DELETE' => 'DELETAR',
'RENAME' => 'RENOMEAR',
'MOVE' => 'MOVE',
'RIGHTS' => 'RIGHTS',
'MOVE' => 'MOVER',
'RIGHTS' => 'PERMISSÕES',
'COPY' => 'COPIAR',
'ARCHIVE' => 'ARQUIVAR',
'EXTRACT' => 'EXTAIR',
'DOWNLOAD' => 'BAIXAR',
'Are you sure?' => 'Are you sure?', // unused?
'Are you sure?' => 'Você tem certeza?', // unused?
'Hit' => 'Acertar',
'to reload the page' => 'recarregar a página',
'Directory name cannot be empty' => 'Nome do diretório não pode estar vazio',
@ -613,20 +613,20 @@ $LANG['pt-BR'] = array(
'Copy' => 'Copiar',
'Cancel' => 'Cancelar',
'Rename' => 'Renomear',
'Move' => 'Move',
'Change Rights' => 'Change Rights',
'Move' => 'Mover',
'Change Rights' => 'Modificar Permissões',
'Delete' => 'Deletar',
'Extract' => 'Extrair',
'Create' => 'Criar',
'Compress' => 'Comprimir',
'OK' => 'OK',
'YOU ARE COPYING' => 'YOU ARE COPYING', // unused?
'YOU ARE REMOVING' => 'YOU ARE REMOVING',
'Delete items' => 'Delete items',
'Copy files' => 'Copy files',
'Move files' => 'Move files',
'YOU ARE COPYING' => 'VOCE ESTA COPIANDO', // unused?
'YOU ARE REMOVING' => 'VOCE ESTA REMOVENDO',
'Delete items' => 'Deletar itens',
'Copy files' => 'Copiar arquivos',
'Move files' => 'Mover arquivos',
'Are you sure you want to copy' => 'Tem certeza que deseja copiar',
'Are you sure you want to move' => 'Are you sure you want to move',
'Are you sure you want to move' => 'Tem certeza de que deseja mover',
'Are you sure you want to delete' => 'Tem certeza que deseja deletar',
'into' => 'dentro',
'existing files will be replaced' => 'arquivos existentes serão substituídos',
@ -635,17 +635,17 @@ $LANG['pt-BR'] = array(
'already exists' => 'já existe',
'Create file' => 'Criar arquivo',
'Create directory' => 'Criar diretório',
'read by owner' => 'read by owner',
'write by owner' => 'write by owner',
'execute/search by owner' => 'execute/search by owner',
'read by group' => 'read by group',
'write by group' => 'write by group',
'execute/search by group' => 'execute/search by group',
'read by others' => 'read by others',
'write by others' => 'write by others',
'execute/search by others' => 'execute/search by others',
'read by owner' => 'lido pelo proprietário',
'write by owner' => 'escrever pelo proprietário',
'execute/search by owner' => 'executar/pesquisar pelo proprietário',
'read by group' => 'lido por grupo',
'write by group' => 'escrever por grupo',
'execute/search by group' => 'executar/pesquisar por grupo',
'read by others' => 'lido por outros',
'write by others' => 'escrever por outros',
'execute/search by others' => 'executar/procurar por outros',
'Shortcuts' => 'Shortcuts',
'Shortcuts' => 'Atalhos',
'Add New object' => 'Adicionar novo objeto',
'Save Form' => 'Salvar formulário',
'Cancel saving form' => 'Cancelar salvamento do formulário',
@ -660,9 +660,9 @@ $LANG['pt-BR'] = array(
'Display/Close shortcuts' => 'Mostrar/Fechar atalhos',
'Move backward through top menu' => 'Mover para trás através do menu superior',
'Move forward through top menu' => 'Mover para frente através do menu superior',
'Enter focused element' => 'Enter focused element',
'Move up through elements list' => 'Move up through elements list',
'Move down through elements list' => 'Move down through elements list',
'Enter focused element' => 'Digite elemento focalizado',
'Move up through elements list' => 'Mover para cima por meio de elementos de lista',
'Move down through elements list' => 'Mover para baixo por meio de elementos de lista',
'Upload' => 'Enviar',
'New File' => 'Novo Arquivo',
@ -699,35 +699,53 @@ $LANG['pt-BR'] = array(
'Browse, copy, edit, view, and retrieve all of your web domain files using fully featured File Manager.' => 'Browse, copiar, editar, ver, e recuperar todos os arquivos de seu domínio web usando o completo Gerenciador de Arquivos.',
'This is a commercial module, you would need to purchace license key to enable it.' => 'Éste é um módulo comercial que você poderia comprar uma chave de licença para habilita-lo.',
'Minutes' => 'Minutes',
'Hourly' => 'Hourly',
'Daily' => 'Dayly',
'Weekly' => 'Weekly',
'Monthly' => 'Monthly',
'Run Command' => 'Run Command',
'every month' => 'every month',
'every odd month' => 'every odd month',
'every even month' => 'every even month',
'every day' => 'every day',
'every odd day' => 'every odd day',
'every even day' => 'every even day',
'weekdays (5 days)' => 'weekdays (5 days)',
'weekend (2 days)' => 'weekend (2 days)',
'Monday' => 'Monday',
'Tuesday' => 'Tuesday',
'Wednesday' => 'Wednesday',
'Thursday' => 'Thursday',
'Friday' => 'Friday',
'Saturday' => 'Saturday',
'Sunday' => 'Sunday',
'every hour' => 'every hour',
'every two hours' => 'every two hours',
'every minute' => 'every minute',
'every two minutes' => 'every two minutes',
'every' => 'every',
'Generate' => 'Generate',
'Minutes' => 'Minutos',
'Hourly' => 'Hora',
'Daily' => 'Dia',
'Weekly' => 'Semana',
'Monthly' => 'Mês',
'Run Command' => 'Executar Comando',
'every month' => 'todo mês',
'every odd month' => 'todo mês impar',
'every even month' => 'cada dois meses',
'every day' => 'todo dia',
'every odd day' => 'todo dia impar',
'every even day' => 'cada dois dias',
'weekdays (5 days)' => 'dias da semana (5 dias)',
'weekend (2 days)' => 'final de semana (2 dias)',
'Monday' => 'Segunda-feira',
'Tuesday' => 'Terça-feira',
'Wednesday' => 'Quarta-feira',
'Thursday' => 'Quinta-feira',
'Friday' => 'Sexta-feira',
'Saturday' => 'Sabado',
'Sunday' => 'Domingo',
'every hour' => 'toda hora',
'every two hours' => 'cada duas horas',
'every minute' => 'todo minuto',
'every two minutes' => 'cada dois minutos',
'every' => 'cada',
'Generate' => 'Gerar',
'webalizer' => 'webalizer',
'awstats' => 'awstats',
'Vesta SSL' => 'Vesta SSL',
'SUBJECT' => 'SUBJECT',
'ALIASES' => 'ALIASES',
'NOT_BEFORE' => 'NOT_BEFORE',
'NOT_AFTER' => 'NOT_AFTER',
'SIGNATURE' => 'SIGNATURE',
'PUB_KEY' => 'PUB_KEY',
'ISSUER' => 'ISSUER',
'Use server hostname' => 'Use server hostname',
'Use domain hostname' => 'Use domain hostname',
'Use STARTTLS' => 'Use STARTTLS',
'Use SSL' => 'Use SSL',
'No encryption' => 'No encryption',
'Do not use encryption' => 'Do not use encryption',
'maximum characters length, including prefix' => 'maximum %s characters length, including prefix',
);

View file

@ -730,4 +730,22 @@ $LANG['pt'] = array(
'webalizer' => 'webalizer',
'awstats' => 'awstats',
'Vesta SSL' => 'Vesta SSL',
'SUBJECT' => 'SUBJECT',
'ALIASES' => 'ALIASES',
'NOT_BEFORE' => 'NOT_BEFORE',
'NOT_AFTER' => 'NOT_AFTER',
'SIGNATURE' => 'SIGNATURE',
'PUB_KEY' => 'PUB_KEY',
'ISSUER' => 'ISSUER',
'Use server hostname' => 'Use server hostname',
'Use domain hostname' => 'Use domain hostname',
'Use STARTTLS' => 'Use STARTTLS',
'Use SSL' => 'Use SSL',
'No encryption' => 'No encryption',
'Do not use encryption' => 'Do not use encryption',
'maximum characters length, including prefix' => 'maximum %s characters length, including prefix',
);

File diff suppressed because it is too large Load diff

View file

@ -731,4 +731,22 @@ $LANG['ru'] = array(
'webalizer' => 'webalizer',
'awstats' => 'awstats',
'Vesta SSL' => 'Vesta SSL',
'SUBJECT' => 'SUBJECT',
'ALIASES' => 'ALIASES',
'NOT_BEFORE' => 'NOT_BEFORE',
'NOT_AFTER' => 'NOT_AFTER',
'SIGNATURE' => 'SIGNATURE',
'PUB_KEY' => 'PUB_KEY',
'ISSUER' => 'ISSUER',
'Use server hostname' => 'Use server hostname',
'Use domain hostname' => 'Use domain hostname',
'Use STARTTLS' => 'Use STARTTLS',
'Use SSL' => 'Use SSL',
'No encryption' => 'No encryption',
'Do not use encryption' => 'Do not use encryption',
'maximum characters length, including prefix' => 'maximum %s characters length, including prefix',
);

View file

@ -730,4 +730,22 @@ $LANG['se'] = array(
'webalizer' => 'webalizer',
'awstats' => 'awstats',
'Vesta SSL' => 'Vesta SSL',
'SUBJECT' => 'SUBJECT',
'ALIASES' => 'ALIASES',
'NOT_BEFORE' => 'NOT_BEFORE',
'NOT_AFTER' => 'NOT_AFTER',
'SIGNATURE' => 'SIGNATURE',
'PUB_KEY' => 'PUB_KEY',
'ISSUER' => 'ISSUER',
'Use server hostname' => 'Use server hostname',
'Use domain hostname' => 'Use domain hostname',
'Use STARTTLS' => 'Use STARTTLS',
'Use SSL' => 'Use SSL',
'No encryption' => 'No encryption',
'Do not use encryption' => 'Do not use encryption',
'maximum characters length, including prefix' => 'maximum %s characters length, including prefix',
);

View file

@ -731,4 +731,22 @@ $LANG['tr'] = array(
'webalizer' => 'webalizer',
'awstats' => 'awstats',
'Vesta SSL' => 'Vesta SSL',
'SUBJECT' => 'SUBJECT',
'ALIASES' => 'ALIASES',
'NOT_BEFORE' => 'NOT_BEFORE',
'NOT_AFTER' => 'NOT_AFTER',
'SIGNATURE' => 'SIGNATURE',
'PUB_KEY' => 'PUB_KEY',
'ISSUER' => 'ISSUER',
'Use server hostname' => 'Use server hostname',
'Use domain hostname' => 'Use domain hostname',
'Use STARTTLS' => 'Use STARTTLS',
'Use SSL' => 'Use SSL',
'No encryption' => 'No encryption',
'Do not use encryption' => 'Do not use encryption',
'maximum characters length, including prefix' => 'maximum %s characters length, including prefix',
);

View file

@ -753,4 +753,22 @@ $LANG['tw'] = array(
'webalizer' => 'webalizer',
'awstats' => 'awstats',
'Vesta SSL' => 'Vesta SSL',
'SUBJECT' => 'SUBJECT',
'ALIASES' => 'ALIASES',
'NOT_BEFORE' => 'NOT_BEFORE',
'NOT_AFTER' => 'NOT_AFTER',
'SIGNATURE' => 'SIGNATURE',
'PUB_KEY' => 'PUB_KEY',
'ISSUER' => 'ISSUER',
'Use server hostname' => 'Use server hostname',
'Use domain hostname' => 'Use domain hostname',
'Use STARTTLS' => 'Use STARTTLS',
'Use SSL' => 'Use SSL',
'No encryption' => 'No encryption',
'Do not use encryption' => 'Do not use encryption',
'maximum characters length, including prefix' => 'maximum %s characters length, including prefix',
);

View file

@ -731,4 +731,22 @@ $LANG['ua'] = array(
'webalizer' => 'webalizer',
'awstats' => 'awstats',
'Vesta SSL' => 'Vesta SSL',
'SUBJECT' => 'SUBJECT',
'ALIASES' => 'ALIASES',
'NOT_BEFORE' => 'NOT_BEFORE',
'NOT_AFTER' => 'NOT_AFTER',
'SIGNATURE' => 'SIGNATURE',
'PUB_KEY' => 'PUB_KEY',
'ISSUER' => 'ISSUER',
'Use server hostname' => 'Use server hostname',
'Use domain hostname' => 'Use domain hostname',
'Use STARTTLS' => 'Use STARTTLS',
'Use SSL' => 'Use SSL',
'No encryption' => 'No encryption',
'Do not use encryption' => 'Do not use encryption',
'maximum characters length, including prefix' => 'maximum %s characters length, including prefix',
);

View file

@ -729,4 +729,22 @@ $LANG['vi'] = array(
'webalizer' => 'webalizer',
'awstats' => 'awstats',
'Vesta SSL' => 'Vesta SSL',
'SUBJECT' => 'SUBJECT',
'ALIASES' => 'ALIASES',
'NOT_BEFORE' => 'NOT_BEFORE',
'NOT_AFTER' => 'NOT_AFTER',
'SIGNATURE' => 'SIGNATURE',
'PUB_KEY' => 'PUB_KEY',
'ISSUER' => 'ISSUER',
'Use server hostname' => 'Use server hostname',
'Use domain hostname' => 'Use domain hostname',
'Use STARTTLS' => 'Use STARTTLS',
'Use SSL' => 'Use SSL',
'No encryption' => 'No encryption',
'Do not use encryption' => 'Do not use encryption',
'maximum characters length, including prefix' => 'maximum %s characters length, including prefix',
);

View file

@ -3,7 +3,7 @@
session_start();
define('VESTA_CMD', '/usr/bin/sudo /usr/local/vesta/bin/');
define('JS_LATEST_UPDATE', '1467758417');
define('JS_LATEST_UPDATE', '1476144160');
$i = 0;
@ -345,3 +345,26 @@ function list_timezones() {
}
return $timezone_list;
}
/**
* A function that tells is it MySQL installed on the system, or it is MariaDB.
*
* Explaination:
* $_SESSION['DB_SYSTEM'] has 'mysql' value even if MariaDB is installed, so you can't figure out is it really MySQL or it's MariaDB.
* So, this function will make it clear.
*
* If MySQL is installed, function will return 'mysql' as a string.
* If MariaDB is installed, function will return 'mariadb' as a string.
*
* Hint: if you want to check if PostgreSQL is installed - check value of $_SESSION['DB_SYSTEM']
*
* @return string
*/
function is_it_mysql_or_mariadb() {
exec (VESTA_CMD."v-list-sys-services json", $output, $return_var);
$data = json_decode(implode('', $output), true);
unset($output);
$mysqltype='mysql';
if (isset($data['mariadb'])) $mysqltype='mariadb';
return $mysqltype;
}

View file

@ -93,6 +93,33 @@ randomString = function() {
$('#v_password').text(Array(randomstring.length+1).join('*'));
}
use_hostname = function(domain) {
$('#td_imap_hostname').html(domain);
$('#td_smtp_hostname').html(domain);
}
use_starttls = function() {
$('#td_imap_port').html('143');
$('#td_imap_encryption').html('STARTTLS');
$('#td_smtp_port').html('587');
$('#td_smtp_encryption').html('STARTTLS');
}
use_ssl = function() {
$('#td_imap_port').html('993');
$('#td_imap_encryption').html('SSL');
$('#td_smtp_port').html('465');
$('#td_smtp_encryption').html('SSL');
}
use_no_encryption = function(domain, no_encryption) {
use_hostname(domain);
$('#td_imap_port').html('143');
$('#td_imap_encryption').html(no_encryption);
$('#td_smtp_port').html('25');
$('#td_smtp_encryption').html(no_encryption);
}
$(document).ready(function() {
$('#v_account').text($('input[name=v_account]').val());
$('#v_password').text($('input[name=v_password]').val());

View file

@ -86,6 +86,11 @@ randomString = function() {
randomstring += chars.substr(rnum, 1);
}
document.v_edit_mail_acc.v_password.value = randomstring;
if($('input[name=v_password]').attr('type') == 'text')
$('#v_password').text(randomstring);
else
$('#v_password').text(Array(randomstring.length+1).join('*'));
}
$(document).ready(function() {

View file

@ -42,7 +42,7 @@
<table class="data-col2" width="600px">
<tr>
<td class="step-top hint" style="color:#777;" >
<?php print __('Prefix will be automaticaly added to database name and database user',$user."_");?>
<?php print __('Prefix will be automaticaly added to database name and database user',"<b>".$user."_</b>");?>
</td>
</tr>
<tr>
@ -58,7 +58,11 @@
</tr>
<tr>
<td class="vst-text input-label">
<?php print __('User');?>
<?php
print __('User');
// if (is_it_mysql_or_mariadb()=='mysql')
echo "&nbsp;&nbsp;&nbsp;&nbsp;<em><small>(".__('maximum characters length, including prefix', 16).")</small></em>";
?>
</td>
</tr>
<tr>

View file

@ -143,15 +143,15 @@
</tr>
<tr>
<td><?=__('IMAP hostname')?>:</td>
<td><?=$hostname?></td>
<td id="td_imap_hostname"><?=$hostname?></td>
</tr>
<tr>
<td><?=__('IMAP port')?>:</td>
<td>143</td>
<td id="td_imap_port">143</td>
</tr>
<tr>
<td><?=__('IMAP security')?>:</td>
<td><?=__('STARTTLS')?></td>
<td id="td_imap_encryption"><?=__('STARTTLS')?></td>
</tr>
<tr>
<td><?=__('IMAP auth method')?>:</td>
@ -159,21 +159,29 @@
</tr>
<tr>
<td><?=__('SMTP hostname')?></td>
<td><?=$hostname?></td>
<td id="td_smtp_hostname"><?=$hostname?></td>
</tr>
<tr>
<td><?=__('SMTP port')?>:</td>
<td>587</td>
<td id="td_smtp_port">587</td>
</tr>
<tr>
<td><?=__('SMTP security')?>:</td>
<td><?=__('STARTTLS')?></td>
<td id="td_smtp_encryption"><?=__('STARTTLS')?></td>
</tr>
<tr>
<td><?=__('SMTP auth method')?>:</td>
<td><?=__('Normal password')?></td>
</tr>
</table>
<br />
<table>
<tr><td>&#8226; <a href="javascript:use_hostname('<?=$hostname?>');" class="generate"><?php print __('Use server hostname');?></a></td></tr>
<tr><td>&#8226; <a href="javascript:use_hostname('<?=$v_domain?>');" class="generate"><?php print __('Use domain hostname');?></a></td></tr>
<tr><td>&#8226; <a href="javascript:use_starttls();" class="generate"><?php print __('Use STARTTLS');?></a></td></tr>
<tr><td>&#8226; <a href="javascript:use_ssl();" class="generate"><?php print __('Use SSL');?></a></td></tr>
<tr><td>&#8226; <a href="javascript:use_no_encryption('<?=$v_domain?>', '<?php print __('No encryption');?>');" class="generate"><?php print __('Do not use encryption');?></a></td></tr>
</table>
</div>
</td>

View file

@ -137,6 +137,55 @@
</tr>
</table>
</td>
<td class="mail-infoblock-td">
<div class="mail-infoblock">
<table>
<?php $uname_arr=posix_uname(); $hostname=$uname_arr['nodename']; ?>
<tr>
<td><?=__('Username')?>:</td>
<td><span id="v_account">william.cage</span>@<?=htmlentities($v_domain)?></td>
</tr>
<tr>
<td><?=__('Password')?>:</td>
<td id="v_password">******</td>
</tr>
<tr>
<td><?=__('IMAP hostname')?>:</td>
<td><?=$hostname?></td>
</tr>
<tr>
<td><?=__('IMAP port')?>:</td>
<td>143</td>
</tr>
<tr>
<td><?=__('IMAP security')?>:</td>
<td><?=__('STARTTLS')?></td>
</tr>
<tr>
<td><?=__('IMAP auth method')?>:</td>
<td><?=__('Normal password')?></td>
</tr>
<tr>
<td><?=__('SMTP hostname')?></td>
<td><?=$hostname?></td>
</tr>
<tr>
<td><?=__('SMTP port')?>:</td>
<td>587</td>
</tr>
<tr>
<td><?=__('SMTP security')?>:</td>
<td><?=__('STARTTLS')?></td>
</tr>
<tr>
<td><?=__('SMTP auth method')?>:</td>
<td><?=__('Normal password')?></td>
</tr>
</table>
</div>
</td>
</tr>
</table>
</form>

View file

@ -113,7 +113,7 @@
<?php if (!empty($_SESSION['PROXY_SYSTEM'])) { ?>
<tr>
<td class="vst-text">
<?php print __('Proxy Server') ?>
<?php print __('Proxy Server') ?> / <a class="generate" href="/edit/server/<? echo $_SESSION['PROXY_SYSTEM'] ?>/"><?=__('configure')?></a>
</td>
</tr>
<tr>
@ -125,7 +125,7 @@
<?php } ?>
<tr>
<td class="vst-text">
<?php print __('Web Server') ?>
<?php print __('Web Server') ?> / <a class="generate" href="/edit/server/<? echo $_SESSION['WEB_SYSTEM'] ?>/"><?=__('configure')?></a>
</td>
</tr>
<tr>
@ -137,7 +137,7 @@
<?php if (!empty($_SESSION['WEB_BACKEND'])) { ?>
<tr>
<td class="vst-text">
<?php print __('Backend Server') ?>
<?php print __('Backend Server') ?> / <a class="generate" href="/edit/server/<? echo $_SESSION['WEB_BACKEND'] ?>/"><?=__('configure')?></a>
</td>
</tr>
<tr>
@ -176,7 +176,7 @@
<table style="display:<?php if (empty($v_adv)) echo 'none';?> ;" id="dns">
<tr>
<td class="vst-text">
<?php print __('DNS Server') ?>
<?php print __('DNS Server') ?> / <a class="generate" href="/edit/server/<? echo $_SESSION['DNS_SYSTEM'] ?>/"><?=__('configure')?></a>
</td>
</tr>
<tr>
@ -234,7 +234,7 @@
<table style="display:<?php if (empty($v_mail_adv)) echo 'none';?> ;" id="mail">
<tr>
<td class="vst-text">
<?php print __('MAIL Server') ?>
<?php print __('MAIL Server') ?> / <a class="generate" href="/edit/server/<? echo $_SESSION['MAIL_SYSTEM'] ?>/"><?=__('configure')?></a>
</td>
</tr>
<tr>
@ -246,7 +246,7 @@
<?php if (!empty($_SESSION['ANTIVIRUS_SYSTEM'])) { ?>
<tr>
<td class="vst-text">
<?php print __('Antivirus') ?>
<?php print __('Antivirus') ?> / <a class="generate" href="/edit/server/<? echo $_SESSION['ANTIVIRUS_SYSTEM'] ?>/"><?=__('configure')?></a>
</td>
</tr>
<tr>
@ -259,7 +259,7 @@
<?php if (!empty($_SESSION['ANTISPAM_SYSTEM'])) { ?>
<tr>
<td class="vst-text">
<?php print __('AntiSpam') ?>
<?php print __('AntiSpam') ?> / <a class="generate" href="/edit/server/<? echo $_SESSION['ANTISPAM_SYSTEM'] ?>/"><?=__('configure')?></a>
</td>
</tr>
<tr>
@ -298,7 +298,7 @@
<table style="display:<?php if (empty($v_db_adv)) echo 'none';?> ;" id="db">
<tr>
<td class="vst-text input-label">
<?php print __('MySQL Support');?>
<?php print __('MySQL Support');?> / <a class="generate" href="/edit/server/mysql/"><?=__('configure')?></a>
</td>
</tr>
<tr>
@ -576,6 +576,106 @@
</td>
</tr>
<tr>
<td class="vst-text input-label step-top">
<a href="javascript:elementHideShow('ssl');" class="vst-text">
<b><?php print __('Vesta SSL');?> <!-- span style="color:#ff6701;font-size:10px; padding:0 10px;">preview</span--><img src="/images/arrow.png"></b>
</a>
</td>
</tr>
<tr>
<td class="vst-text input-label step-left">
<table style="display:<?php if (empty($v_adv)) echo 'none';?> ;" id="ssl">
<tr>
<td class="vst-text input-label">
<?php print __('SSL Certificate');?>
</td>
</tr>
<tr>
<td>
<textarea size="20" class="vst-textinput" name="v_ssl_crt"><?php if (!empty($v_ssl_crt)) echo htmlentities($v_ssl_crt); ?></textarea>
</td>
</tr>
<tr>
<td class="vst-text input-label">
<?php print __('SSL Key');?>
</td>
</tr>
<tr>
<td>
<textarea size="20" class="vst-textinput" name="v_ssl_key"><?php if (!empty($v_ssl_key)) echo htmlentities($v_ssl_key); ?></textarea>
</td>
</tr>
<tr>
<td>
<table class="additional-info">
<tr>
<td>
<?=__('SUBJECT')?>:
</td>
<td class="details">
<?=$v_ssl_subject?>
</td>
</tr>
<? if($v_ssl_aliases){?>
<tr>
<td>
<?=__('ALIASES')?>:
</td>
<td class="details">
<?=$v_ssl_aliases?>
</td>
</tr>
<? } ?>
<tr>
<td>
<?=__('NOT_BEFORE')?>:
</td>
<td class="details">
<?=$v_ssl_not_before?>
</td>
</tr>
<tr>
<td>
<?=__('NOT_AFTER')?>:
</td>
<td class="details">
<?=$v_ssl_not_after?>
</td>
</tr>
<tr>
<td>
<?=__('SIGNATURE')?>:
</td>
<td class="details">
<?=$v_ssl_signature?>
</td>
</tr>
<tr>
<td>
<?=__('PUB_KEY')?>:
</td>
<td class="details">
<?=$v_ssl_pub_key?>
</td>
</tr>
<tr>
<td>
<?=__('ISSUER')?>
</td>
<td class="details">
<?=$v_ssl_issuer?>
</td>
</tr>
</table>
</td>
</tr>
</table>
</td>
</tr>
<tr>
<td class="vst-text input-label step-top">
<a href="javascript:elementHideShow('vesta');" class="vst-text">

View file

@ -235,6 +235,72 @@
<textarea size="20" class="vst-textinput" name="v_ssl_ca"><?php if (!empty($v_ssl_ca)) echo htmlentities($v_ssl_ca); ?></textarea>
</td>
</tr>
<tr>
<td>
<table class="additional-info">
<?php $uname_arr=posix_uname(); $hostname=$uname_arr['nodename']; ?>
<tr>
<td>
<?=__('SUBJECT')?>:
</td>
<td class="details">
<?=$v_ssl_subject?>
</td>
</tr>
<? if($v_ssl_aliases){?>
<tr>
<td>
<?=__('ALIASES')?>:
</td>
<td class="details">
<?=$v_ssl_aliases?>
</td>
</tr>
<? } ?>
<tr>
<td>
<?=__('NOT_BEFORE')?>:
</td>
<td class="details">
<?=$v_ssl_not_before?>
</td>
</tr>
<tr>
<td>
<?=__('NOT_AFTER')?>:
</td>
<td class="details">
<?=$v_ssl_not_after?>
</td>
</tr>
<tr>
<td>
<?=__('SIGNATURE')?>:
</td>
<td class="details">
<?=$v_ssl_signature?>
</td>
</tr>
<tr>
<td>
<?=__('PUB_KEY')?>:
</td>
<td class="details">
<?=$v_ssl_pub_key?>
</td>
</tr>
<tr>
<td>
<?=__('ISSUER')?>
</td>
<td class="details">
<?=$v_ssl_issuer?>
</td>
</tr>
</table>
</td>
</tr>
</table>
</td>
</tr>
@ -346,6 +412,7 @@
<tr>
<td class="step-left">
<input type="hidden" class="vst-input v-ftp-pre-path" name="v_ftp_pre_path" value="<?php print !empty($v_ftp_pre_path) ? htmlentities($v_ftp_pre_path) : '/'; ?>">
<input type="hidden" class="vst-input v-ftp-path" name="v_ftp_user[<?php print $i ?>][v_ftp_path_prev]" <?php if (!empty($v_ftp_path)) echo "value=".($v_ftp_path[0] != '/' ? '/' : '').htmlentities($v_ftp_path); ?>>
<input type="text" class="vst-input v-ftp-path" name="v_ftp_user[<?php print $i ?>][v_ftp_path]" <?php if (!empty($v_ftp_path)) echo "value=".($v_ftp_path[0] != '/' ? '/' : '').htmlentities($v_ftp_path); ?>>
<br /><span class="ftp-path-prefix"><?php print $v_ftp_pre_path ?></span><span class="ftp-path-value v-ftp-path-hint"></span>
</td>

View file

@ -169,6 +169,71 @@
<textarea size="20" class="vst-textinput" name="v_ssl_ca"><?php if (!empty($v_ssl_ca)) echo htmlentities($v_ssl_ca); ?></textarea>
</td>
</tr>
<tr>
<td>
<table class="additional-info">
<?php $uname_arr=posix_uname(); $hostname=$uname_arr['nodename']; ?>
<tr>
<td>
<?=__('SUBJECT')?>:
</td>
<td class="details">
<?=$v_ssl_subject?>
</td>
</tr>
<? if($v_ssl_aliases){?>
<tr>
<td>
<?=__('ALIASES')?>:
</td>
<td class="details">
<?=$v_ssl_aliases?>
</td>
</tr>
<? } ?>
<tr>
<td>
<?=__('NOT_BEFORE')?>:
</td>
<td class="details">
<?=$v_ssl_not_before?>
</td>
</tr>
<tr>
<td>
<?=__('NOT_AFTER')?>:
</td>
<td class="details">
<?=$v_ssl_not_after?>
</td>
</tr>
<tr>
<td>
<?=__('SIGNATURE')?>:
</td>
<td class="details">
<?=$v_ssl_signature?>
</td>
<tr>
<td>
<?=__('PUB_KEY')?>:
</td>
<td class="details">
<?=$v_ssl_pub_key?>
</td>
</tr>
<tr>
<td>
<?=__('ISSUER')?>
</td>
<td class="details">
<?=$v_ssl_issuer?>
</td>
</tr>
</table>
</td>
</tr>
</table>
</td>
</tr>
@ -280,7 +345,8 @@
<tr>
<td class="step-left">
<input type="hidden" class="vst-input v-ftp-pre-path" name="v_ftp_pre_path" value="<?php print !empty($v_ftp_pre_path) ? htmlentities($v_ftp_pre_path) : '/'; ?>">
<input type="text" class="vst-input v-ftp-path" name="v_ftp_user[<?php print $i ?>][v_ftp_path]" <?php if (!empty($v_ftp_path)) echo "value=".($v_ftp_path[0] != '/' ? '/' : '').htmlentities($v_ftp_path); ?>>
<input type="hidden" class="vst-input v-ftp-path" name="v_ftp_user[<?php print $i ?>][v_ftp_path_prev]" <?php if (!empty($v_ftp_path)) echo "value=".($v_ftp_path[0] != '/' ? '/' : '').htmlentities($v_ftp_path); ?>>
<input type="text" class="vst-input v-ftp-path" name="v_ftp_user[<?php print $i ?>][v_ftp_path]" <?php if (!empty($v_ftp_path)) echo "value=".($v_ftp_path[0] != '/' ? '/' : '').htmlentities($v_ftp_path); ?>>
<br /><span class="ftp-path-prefix"><?php print $v_ftp_pre_path ?></span><span class="ftp-path-value v-ftp-path-hint"></span>
</td>
</tr>