Bläddra i källkod

Merge branch 'main' into feature/system-health-check

Kristan Kenney 5 år sedan
förälder
incheckning
b63b12ac4c

+ 34 - 14
bin/v-restore-user

@@ -312,7 +312,9 @@ if [ "$web" != 'no' ] && [ ! -z "$WEB_SYSTEM" ]; then
 
             # Merging web.conf keys
             str="DOMAIN='$domain' IP='$IP' IP6='$IP6' ALIAS='$ALIAS'"
-            str="$str CUSTOM_DOCROOT='$CUSTOM_DOCROOT' CUSTOM_PHPROOT='$CUSTOM_PHPROOT' IP='$IP' IP6='$IP6' ALIAS='$ALIAS'"
+            str="$str CUSTOM_DOCROOT='$CUSTOM_DOCROOT' CUSTOM_PHPROOT='$CUSTOM_PHPROOT'"
+            str="$str REDIRECT='$REDIRECT' REDIRECT_CODE='$REDIRECT_CODE'"
+            str="$str FASTCGI_CACHE='$FASTCGI_CACHE' FASTCGI_CACHE_LENGTH='$FASTCGI_CACHE_LENGTH'"
             str="$str TPL='$TPL' SSL='$SSL' SSL_HOME='$SSL_HOME'"
             str="$str LETSENCRYPT='$LETSENCRYPT' FTP_USER='$FTP_USER'"
             str="$str FTP_MD5='$FTP_MD5' BACKEND='$BACKEND' PROXY='$PROXY'"
@@ -544,20 +546,29 @@ if [ "$mail" != 'no' ] && [ ! -z "$MAIL_SYSTEM" ]; then
             if [ ! -e "$HOMEDIR/$user/conf/mail/$domain/ssl/" ]; then
                 mkdir -p $HOMEDIR/$user/conf/mail/$domain/ssl/
             fi
-
+            
             # Add certificate to Hestia user configuration data directory
             if [ -f $tmpdir/mail/$domain/$backup_system/ssl/$domain.crt ]; then
-                echo "path found"
                 cp -f $tmpdir/mail/$domain/$backup_system/ssl/$domain.crt $USER_DATA/ssl/mail.$domain.crt
                 cp -f $tmpdir/mail/$domain/$backup_system/ssl/$domain.key $USER_DATA/ssl/mail.$domain.key
                 cp -f $tmpdir/mail/$domain/$backup_system/ssl/$domain.crt $USER_DATA/ssl/mail.$domain.pem
-                if [ -e "$tmpdir/mail/$domain/$backup_system/ssl//$domain.ca" ]; then
-                    cp -f $tmpdir/mail/$domain/$backup_system/ssl//$domain.ca $USER_DATA/ssl/mail.$domain.ca
+                if [ -e "$tmpdir/mail/$domain/$backup_system/ssl/$domain.ca" ]; then
+                    cp -f $tmpdir/mail/$domain/$backup_system/ssl/$domain.ca $USER_DATA/ssl/mail.$domain.ca
+                    echo >> $USER_DATA/ssl/mail.$domain.pem
+                    cat $USER_DATA/ssl/mail.$domain.ca >> $USER_DATA/ssl/mail.$domain.pem
+                fi
+            elif [ -f "$tmpdir/mail/$domain/conf/ssl/$domain.crt" ]; then
+                cp -f $tmpdir/mail/$domain/conf/ssl/$domain.crt $USER_DATA/ssl/mail.$domain.crt
+                cp -f $tmpdir/mail/$domain/conf/ssl/$domain.key $USER_DATA/ssl/mail.$domain.key
+                cp -f $tmpdir/mail/$domain/conf/ssl/$domain.crt $USER_DATA/ssl/mail.$domain.pem
+                if [ -e "$tmpdir/mail/$domain/conf/ssl/$domain.ca" ]; then
+                    cp -f $tmpdir/mail/$domain/conf/ssl/$domain.ca $USER_DATA/ssl/mail.$domain.ca
                     echo >> $USER_DATA/ssl/mail.$domain.pem
                     cat $USER_DATA/ssl/mail.$domain.ca >> $USER_DATA/ssl/mail.$domain.pem
                 fi
+                
             fi
-            
+
             chmod 660 $USER_DATA/ssl/mail.$domain.*
 
             # Add certificate to user home directory
@@ -602,18 +613,24 @@ if [ "$mail" != 'no' ] && [ ! -z "$MAIL_SYSTEM" ]; then
             chmod -R 0644 /usr/local/hestia/ssl/mail/*
             chown -h $user:mail /usr/local/hestia/ssl/mail/*
         fi
-
+        
         # Restoring email accounts
         cp -f $tmpdir/mail/$domain/$backup_system/$domain.conf $USER_DATA/mail/
-       
+               
         domain_idn=$domain
         format_domain_idn
         
+        if [ ! -d "$HOMEDIR/$user/mail/$domain_idn" ]; then
+            mkdir $HOMEDIR/$user/mail/$domain_idn
+        fi
+        
+        # Current Hestia store email in the $HOMEDIR/$user/mail/$domain_idn
+        chmod u+w "$HOMEDIR/$user/mail/$domain_idn"
+        chown $user:$user "$HOMEDIR/$user/mail/$domain_idn"
+        
         # Restoring emails
         if [ $backup_mode = 'zstd' ]; then    
             if [ -e "$tmpdir/mail/$domain/accounts.tar.zst" ]; then
-                # Current Hestia store email in the $HOMEDIR/$user/mail/$domain_idn
-                chmod u+w "$HOMEDIR/$user/mail/$domain_idn"
                 $BIN/v-extract-fs-archive "$user" "$tmpdir/mail/$domain/accounts.tar.zst" "$HOMEDIR/$user/mail/$domain_idn/"
                 if [ "$?" -ne 0 ]; then
                     rm -rf $tmpdir
@@ -629,7 +646,6 @@ if [ "$mail" != 'no' ] && [ ! -z "$MAIL_SYSTEM" ]; then
             fi
         else
             if [ -e "$tmpdir/mail/$domain/accounts.tar.gz" ]; then
-                chmod u+w "$HOMEDIR/$user/mail/$domain_idn"
                 $BIN/v-extract-fs-archive "$user" "$tmpdir/mail/$domain/accounts.tar.gz" "$HOMEDIR/$user/mail/$domain_idn/"
                 if [ "$?" -ne 0 ]; then
                     rm -rf $tmpdir
@@ -645,9 +661,13 @@ if [ "$mail" != 'no' ] && [ ! -z "$MAIL_SYSTEM" ]; then
             fi
         fi
         # Chowning mail conf files to exim user
-        find $HOMEDIR/$user/conf/mail/$domain -user root \
-            -exec chown $exim_user {} \;
-            
+        if [ -d "$HOMEDIR/$user/conf/mail/$domain" ]; then 
+            find $HOMEDIR/$user/conf/mail/$domain -user root \
+                -exec chown $exim_user {} \;
+        fi
+        
+        $HESTIA/bin/v-rebuild-mail-domain $user $domain
+        
     done
 
     # Restarting web server

+ 4 - 0
web/css/src/themes/dark.css

@@ -1119,6 +1119,10 @@ a.button.cancel {
   color: #e8e8e8 !important;
 }
 
+.section-title {
+  border-bottom-color: #484848 !important;
+}
+
 .qr-code {
   border: 1px solid #3b3b3b;
   box-shadow: 0px 1px 4px rgba(0,0,0,0.35);

+ 20 - 4
web/css/src/themes/default.css

@@ -2925,7 +2925,6 @@ a.vst-text:active b{
 }
 
 .additional-control {
-  margin-left: 17px;
   color: #326b9b;
   border-bottom: 0px solid #326b9b;
   font-size: 0.8rem;
@@ -3292,13 +3291,30 @@ a.button.cancel {
 }
 
 .page-title {
-  font-size: 1.4rem!important;
-  font-weight: 500!important;
-  padding-bottom: 30px!important;
+  font-size: 1.4rem !important;
+  font-weight: 500 !important;
+  padding-bottom: 30px !important;
   letter-spacing: -0.01em;
   cursor: default;
 }
 
+.section-title {
+  cursor: default;
+  font-size: 1.2rem!important;
+  font-weight: 600!important;
+  padding-bottom: 12px!important;
+  padding-top: 28px!important;
+  letter-spacing: -0.01em;
+  border-bottom: 1px solid #ccc;
+  cursor: pointer;
+}
+
+.section-hide-button {
+  margin-top: 30px;
+  display: inline-block;
+  margin-left: -14px;
+}
+
 .qr-code {
   border: 1px solid #cfcfcf;
   border-radius: 4px;

Filskillnaden har hållts tillbaka eftersom den är för stor
+ 0 - 0
web/css/themes/dark.min.css


Filskillnaden har hållts tillbaka eftersom den är för stor
+ 0 - 0
web/css/themes/default.min.css


+ 1 - 1
web/templates/admin/add_mail.html

@@ -80,7 +80,7 @@
                                                 <input type="text" size="20" class="vst-input" name="v_domain" value="<?=htmlentities(trim($v_domain, "'"))?>">
                                             </td>
                                         </tr>
-                                        <?php if($_SESSION['IMAP_SYSTEM']){?>                            
+                                        <?php if($_SESSION['WEBMAIL_SYSTEM']){?>                            
                                             <tr>
                                                 <td class="vst-text step-top">
                                                     <?php print _('Webmail Client');?>

+ 2 - 0
web/templates/admin/add_mail_acc.html

@@ -207,10 +207,12 @@
                             <td><?=_('SMTP auth method')?>:</td>
                             <td><div><?=_('Normal password')?></div></td>
                         </tr>
+                        <?php if($_SESSION['WEBMAIL_SYSTEM']){?>
                         <tr>
                             <td><?=_('Webmail URL')?>:</td>
                             <td><div><a class="vst" href="http://<?=$v_webmail_alias?>" target="_blank">http://<?=$v_webmail_alias?> <i></i></a></div></td>
                         </tr>
+                        <?php } ?>
                     </table>
                 </div>
             </td>

+ 323 - 266
web/templates/admin/add_package.html

@@ -50,6 +50,7 @@
                                     ?>
                                 </td>
                             </tr>
+                            
                             <tr>
                                 <td class="vst-text step-top">
                                     <?php print _('Package Name');?>
@@ -62,211 +63,24 @@
                             </tr>
                             <tr>
                                 <td class="vst-text input-label">
-                                    <?php print _('Web Template') . "<span class='optional'>" . strtoupper($_SESSION['WEB_SYSTEM']) . "</span>" ;?>
-                                </td>
-                            </tr>
-                            <tr>
-                                <td>
-                                    <select class="vst-list" name="v_web_template">
-                                        <?php
-                                            foreach ($web_templates as $key => $value) {
-                                                echo "\t\t\t\t<option value=\"".htmlentities($value)."\"";
-                                                if ((!empty($v_web_template)) && ( $value == $v_web_template)){
-                                                    echo 'selected' ;
-                                                }
-                                                if ((!empty($v_web_template)) && ( $value == $_POST['v_web_template'])){
-                                                    echo 'selected' ;
-                                                }
-                                                echo ">".htmlentities($value)."</option>\n";
-                                            }
-                                        ?>
-                                    </select>
-                                </td>
-                            </tr>
-                            <?php if (!empty($_SESSION['WEB_BACKEND'])) { echo ""; ?>
-                            <tr>
-                                <td class="vst-text input-label">
-                                    <?php print _('Backend Template') . "<span class='optional'>" . strtoupper($_SESSION['WEB_BACKEND']). "</span>" ;?>
-                                </td>
-                            </tr>
-                            <tr>
-                                <td>
-                                    <select class="vst-list" name="v_backend_template">
-                                        <?php
-                                            foreach ($backend_templates as $key => $value) {
-                                                echo "\t\t\t\t<option value=\"".$value."\"";
-                                                if ((!empty($v_backend_template)) && ( $value == $v_backend_template)){
-                                                    echo 'selected' ;
-                                                }
-                                                if ((!empty($v_backend_template)) && ( $value == $_POST['v_backend_template'])){
-                                                    echo 'selected' ;
-                                                }
-                                                echo ">".htmlentities($value)."</option>\n";
-                                            }
-                                        ?>
-                                    </select>
-                                </td>
-                            </tr>
-                            <?php echo ""; }?>
-
-                            <?php if (!empty($_SESSION['PROXY_SYSTEM'])) { echo ""; ?>
-                            <tr>
-                                <td class="vst-text input-label">
-                                    <?php print _('Proxy Template')  . "<span class='optional'>" .strtoupper($_SESSION['PROXY_SYSTEM']) . "</span>" ;?>
-
-                                </td>
-                            </tr>
-                            <tr>
-                                <td>
-                                    <select class="vst-list" name="v_proxy_template">
-                                        <?php
-                                            foreach ($proxy_templates as $key => $value) {
-                                                echo "\t\t\t\t<option value=\"".htmlentities($value)."\"";
-                                                if ((!empty($v_proxy_template)) && ( $value == $v_proxy_template)){
-                                                    echo 'selected' ;
-                                                }
-                                                if ((!empty($v_proxy_template)) && ( $value == $_POST['v_proxy_template'])){
-                                                    echo 'selected' ;
-                                                }
-                                                echo ">".htmlentities($value)."</option>\n";
-                                            }
-                                        ?>
-                                    </select>
-                                </td>
-                            </tr>
-                            <?php echo ""; }?>
-                            <tr>
-                                <td class="vst-text input-label">
-                                    <?php print _('DNS Template') . "<span class='optional'>" .strtoupper($_SESSION['DNS_SYSTEM']) . "</span>" ;?>
-                                </td>
-                            </tr>
-                            <tr>
-                                <td>
-                                    <select class="vst-list" name="v_dns_template">
-                                        <?php
-                                            foreach ($dns_templates as $key => $value) {
-                                                echo "\t\t\t\t<option value=\"".htmlentities($value)."\"";
-                                                if ((!empty($v_dns_template)) && ( $value == $v_dns_template)){
-                                                    echo 'selected' ;
-                                                }
-                                                if ((!empty($v_dns_template)) && ( $value == $_POST['v_dns_template'])){
-                                                    echo 'selected' ;
-                                                }
-                                                echo ">".htmlentities($value)."</option>\n";
-                                            }
-                                        ?>
-                                    </select>
-                                </td>
-                            </tr>
-                            <tr>
-                                <td class="vst-text input-label">
-                                    <?php print _('SSH Access');?>
-                                </td>
-                            </tr>
-                            <tr>
-                                <td>
-                                    <select class="vst-list" name="v_shell">
-                                        <?php
-                                            foreach ($shells as $key => $value) {
-                                                echo "\t\t\t\t<option value=\"".htmlentities($value)."\"";
-                                                if ((!empty($v_shell)) && ( $value == $v_shell)){
-                                                echo 'selected' ;
-                                            }
-                                            if ((!empty($v_shell)) && ( $value == $_POST['v_shell'])){
-                                                echo 'selected' ;
-                                            }
-                                            echo ">".htmlentities($value)."</option>\n";
-                                            }
-                                        ?>
-                                    </select>
-                                </td>
-                            </tr>
-                            <tr>
-                                <td class="vst-text input-label">
-                                    <?php print _('Web Domains');?>
-                                </td>
-                            </tr>
-                            <tr>
-                                <td>
-                                    <input type="text" size="20" class="vst-input" name="v_web_domains" value="<?=htmlentities(trim($v_web_domains, "'"))?>">
-                                    <i class="unlim-trigger fas fa-infinity" title="<?=_('Unlimited')?>" id="unlim-web-domains"></i>
-                                </td>
-                            </tr>
-                            <tr>
-                                <td class="vst-text input-label">
-                                    <?php print _('Web Aliases');?> <span class="optional">(<?=_('per domain')?>)</span>
-                                </td>
-                            </tr>
-                            <tr>
-                                <td>
-                                    <input type="text" size="20" class="vst-input" name="v_web_aliases" value="<?=htmlentities(trim($v_web_aliases, "'"))?>">
-                                    <i class="unlim-trigger fas fa-infinity" title="<?=_('Unlimited')?>" id="unlim-web-aliases"></i>
-                                </td>
-                            </tr>
-                            <tr>
-                                <td class="vst-text input-label">
-                                    <?php print _('DNS domains');?>
-                                </td>
-                            </tr>
-                            <tr>
-                                <td>
-                                    <input type="text" size="20" class="vst-input" name="v_dns_domains" value="<?=htmlentities(trim($v_dns_domains, "'"))?>">
-                                    <i class="unlim-trigger fas fa-infinity" title="<?=_('Unlimited')?>" id="unlim-dns-domain"></i>
-                                </td>
-                            </tr>
-                            <tr>
-                                <td class="vst-text input-label">
-                                    <?php print _('DNS records');?> <span class="optional">(<?=_('per domain')?>)</span>
-                                </td>
-                            </tr>
-                            <tr>
-                                <td>
-                                    <input type="text" size="20" class="vst-input" name="v_dns_records" value="<?=htmlentities(trim($v_dns_records, "'"))?>">
-                                    <i class="unlim-trigger fas fa-infinity" title="<?=_('Unlimited')?>" id="unlim-dns-records"></i>
-                                </td>
-                            </tr>
-                            <tr>
-                                <td class="vst-text input-label">
-                                    <?php print _('Mail Domains');?>
-                                </td>
-                            </tr>
-                            <tr>
-                                <td>
-                                    <input type="text" size="20" class="vst-input" name="v_mail_domains" value="<?=htmlentities(trim($v_mail_domains, "'"))?>">
-                                    <i class="unlim-trigger fas fa-infinity" title="<?=_('Unlimited')?>" id="unlim-mail-domains"></i>
-                                </td>
-                            </tr>
-                            <tr>
-                                <td class="vst-text input-label">
-                                    <?php print _('Mail Accounts');?> <span class="optional">(<?=_('per domain')?>)</span>
-                                </td>
-                            </tr>
-                            <tr>
-                                <td>
-                                    <input type="text" size="20" class="vst-input" name="v_mail_accounts" value="<?=htmlentities(trim($v_mail_accounts, "'"))?>">
-                                    <i class="unlim-trigger fas fa-infinity" title="<?=_('Unlimited')?>" id="unlim-mail-accounts"></i>
-                                </td>
-                            </tr>
-                            <tr>
-                                <td class="vst-text input-label">
-                                    <?php print _('Databases');?>
+                                    <?php print _('Quota');?> <span class="optional">(<?=_('in megabytes')?>)</span>
                                 </td>
                             </tr>
                             <tr>
                                 <td>
-                                    <input type="text" size="20" class="vst-input" name="v_databases" value="<?=htmlentities(trim($v_databases, "'"))?>">
-                                    <i class="unlim-trigger fas fa-infinity" title="<?=_('Unlimited')?>" id="unlim-databases"></i>
+                                    <input type="text" size="20" class="vst-input" name="v_disk_quota" value="<?=htmlentities(trim($v_disk_quota, "'"))?>">
+                                    <i class="unlim-trigger fas fa-infinity" title="<?=_('Unlimited')?>" id="unlim-disk-quota"></i>
                                 </td>
                             </tr>
                             <tr>
                                 <td class="vst-text input-label">
-                                    <?php print _('Cron Jobs');?>
+                                    <?php print _('Bandwidth');?> <span class="optional">(<?=_('in megabytes')?>)</span>
                                 </td>
                             </tr>
                             <tr>
                                 <td>
-                                    <input type="text" size="20" class="vst-input" name="v_cron_jobs" value="<?=htmlentities(trim($v_cron_jobs, "'"))?>">
-                                    <i class="unlim-trigger fas fa-infinity" title="<?=_('Unlimited')?>" id="unlim-cron-jobs"></i>
+                                    <input type="text" size="20" class="vst-input" name="v_bandwidth" value="<?=htmlentities(trim($v_bandwidth, "'"))?>">
+                                    <i class="unlim-trigger fas fa-infinity" title="<?=_('Unlimited')?>" id="unlim-bandwidth"></i>
                                 </td>
                             </tr>
                             <tr>
@@ -280,100 +94,343 @@
                                 </td>
                             </tr>
                             <tr>
-                                <td class="vst-text input-label">
-                                    <?php print _('Quota');?> <span class="optional">(<?=_('in megabytes')?>)</span>
+                                <td class="section-title" onclick="javascript:elementHideShow('web-options')">
+                                    <?=_('Web');?>
+                                </td>
+                                <td class="section-hide-button">
+                                    <a href="javascript:elementHideShow('web-options');"><i class="fas fa-minus-square status-icon dim maroon"></i></a>
                                 </td>
                             </tr>
                             <tr>
                                 <td>
-                                    <input type="text" size="20" class="vst-input" name="v_disk_quota" value="<?=htmlentities(trim($v_disk_quota, "'"))?>">
-                                    <i class="unlim-trigger fas fa-infinity" title="<?=_('Unlimited')?>" id="unlim-disk-quota"></i>
+                                    <table id="web-options" style="display: none;">
+                                        <tr>
+                                            <td class="vst-text input-label step-top">
+                                                <?php print _('Web Domains');?>
+                                            </td>
+                                        </tr>
+                                        <tr>
+                                            <td>
+                                                <input type="text" size="20" class="vst-input" name="v_web_domains" value="<?=htmlentities(trim($v_web_domains, "'"))?>">
+                                                <i class="unlim-trigger fas fa-infinity" title="<?=_('Unlimited')?>" id="unlim-web-domains"></i>
+                                            </td>
+                                        </tr>
+                                        <tr>
+                                            <td class="vst-text input-label">
+                                                <?php print _('Web Aliases');?> <span class="optional">(<?=_('per domain')?>)</span>
+                                            </td>
+                                        </tr>
+                                        <tr>
+                                            <td>
+                                                <input type="text" size="20" class="vst-input" name="v_web_aliases" value="<?=htmlentities(trim($v_web_aliases, "'"))?>">
+                                                <i class="unlim-trigger fas fa-infinity" title="<?=_('Unlimited')?>" id="unlim-web-aliases"></i>
+                                            </td>
+                                        </tr>
+                                        <tr>
+                                            <td class="vst-text input-label">
+                                                <?php print _('Web Template')  . " <span class='optional'> " .strtoupper($_SESSION['WEB_SYSTEM']) . "</span>";?>
+                                            </td>
+                                        </tr>
+                                        <tr>
+                                            <td>
+                                                <select class="vst-list" name="v_web_template">
+                                                    <?php
+                                                        foreach ($web_templates as $key => $value) {
+                                                            echo "\t\t\t\t<option value=\"".htmlentities($value)."\"";
+                                                            if ((!empty($v_web_template)) && ( $value == $v_web_template)){
+                                                                echo ' selected' ;
+                                                            }
+                                                            if ((!empty($v_web_template)) && ( $value == $_POST['v_web_template'])){
+                                                                echo ' selected' ;
+                                                            }
+                                                            echo ">".htmlentities($value)."</option>\n";
+                                                        }
+                                                    ?>
+                                                </select>
+                                            </td>
+                                        </tr>
+                                        <?php if (!empty($_SESSION['WEB_BACKEND'])) { echo ""; ?>
+                                        <tr>
+                                            <td class="vst-text input-label">
+                                                <?php print _('Backend Template')  . "<span class='optional'>" .strtoupper($_SESSION['WEB_BACKEND']) . "</span>";?>
+                                            </td>
+                                        </tr>
+                                        <tr>
+                                            <td>
+                                                <select class="vst-list" name="v_backend_template">
+                                                    <?php
+                                                        foreach ($backend_templates as $key => $value) {
+                                                            echo "\t\t\t\t<option value=\"".$value."\"";
+                                                            if ((!empty($v_backend_template)) && ( $value == $v_backend_template)){
+                                                                echo ' selected' ;
+                                                            }
+                                                            if ((!empty($v_backend_template)) && ( $value == $_POST['v_backend_template'])){
+                                                                echo ' selected' ;
+                                                            }
+                                                            echo ">".htmlentities($value)."</option>\n";
+                                                        }
+                                                    ?>
+                                                </select>
+                                            </td>
+                                        </tr>
+                                        <?php echo ""; }?>
+                                        <?php if (!empty($_SESSION['PROXY_SYSTEM'])) { echo ""; ?>
+                                        <tr>
+                                            <td class="vst-text input-label">
+                                                <?php print _('Proxy Template')  . "<span class='optional'>" .strtoupper($_SESSION['PROXY_SYSTEM']) . "</span>";?>
+                                            </td>
+                                        </tr>
+                                        <tr>
+                                            <td>
+                                                <select class="vst-list" name="v_proxy_template">
+                                                    <?php
+                                                        foreach ($proxy_templates as $key => $value) {
+                                                            echo "\t\t\t\t<option value=\"".htmlentities($value)."\"";
+                                                            if ((!empty($v_proxy_template)) && ( $value == $v_proxy_template)){
+                                                                echo ' selected' ;
+                                                            }
+                                                            if ((!empty($v_proxy_template)) && ( $value == $_POST['v_proxy_template'])){
+                                                                echo ' selected' ;
+                                                            }
+                                                            echo ">".htmlentities($value)."</option>\n";
+                                                        }
+                                                    ?>
+                                                </select>
+                                            </td>
+                                        </tr>
+                                        <tr>
+                                            <td class="vst-text input-label">
+                                                <?php print _('Databases');?>
+                                            </td>
+                                        </tr>
+                                        <tr>
+                                            <td>
+                                                <input type="text" size="20" class="vst-input" name="v_databases" value="<?=htmlentities(trim($v_databases, "'"))?>">
+                                                <i class="unlim-trigger fas fa-infinity" title="<?=_('Unlimited')?>" id="unlim-databases"></i>
+                                            </td>
+                                        </tr>
+                                    </table>
                                 </td>
                             </tr>
+                            <?php echo ""; }?>
                             <tr>
-                                <td class="vst-text input-label">
-                                    <?php print _('Bandwidth');?> <span class="optional">(<?=_('in megabytes')?>)</span>
+                                <td class="section-title" onclick="javascript:elementHideShow('dns-options')">
+                                    <?=_('DNS');?>
                                 </td>
-                            </tr>
-                            <tr>
-                                <td>
-                                    <input type="text" size="20" class="vst-input" name="v_bandwidth" value="<?=htmlentities(trim($v_bandwidth, "'"))?>">
-                                    <i class="unlim-trigger fas fa-infinity" title="<?=_('Unlimited')?>" id="unlim-bandwidth"></i>
+                                <td class="section-hide-button">
+                                    <a href="javascript:elementHideShow('dns-options');"><i class="fas fa-minus-square status-icon dim maroon"></i></a>
                                 </td>
                             </tr>
-                            <?php if ((isset($_SESSION['DNS_SYSTEM'])) && (!empty($_SESSION['DNS_SYSTEM']))) {?>
                             <tr>
-                                <td class="vst-text input-label">
-                                    <?php print _('Name servers');?>
+                                <td>
+                                    <table id="dns-options" style="display: none;">
+                                        <tr>
+                                            <td class="vst-text input-label step-top">
+                                                <?php print _('DNS Template')  . "<span class='optional'>" .strtoupper($_SESSION['DNS_SYSTEM']) . "</span>";?>
+                                            </td>
+                                        </tr>
+                                        <tr>
+                                            <td>
+                                                <select class="vst-list" name="v_dns_template">
+                                                    <?php
+                                                        foreach ($dns_templates as $key => $value) {
+                                                            echo "\t\t\t\t<option value=\"".htmlentities($value)."\"";
+                                                            if ((!empty($v_dns_template)) && ( $value == $v_dns_template)){
+                                                                echo ' selected' ;
+                                                            }
+                                                            if ((!empty($v_dns_template)) && ( $value == $_POST['v_dns_template'])){
+                                                                echo ' selected' ;
+                                                            }
+                                                            echo ">".htmlentities($value)."</option>\n";
+                                                        }
+                                                    ?>
+                                                </select>
+                                            </td>
+                                        </tr>
+            
+                                        <tr>
+                                            <td class="vst-text input-label">
+                                                <?php print _('DNS domains');?>
+                                            </td>
+                                        </tr>
+                                        <tr>
+                                            <td>
+                                                <input type="text" size="20" class="vst-input" name="v_dns_domains" value="<?=htmlentities(trim($v_dns_domains, "'"))?>">
+                                                <i class="unlim-trigger fas fa-infinity" title="<?=_('Unlimited')?>" id="unlim-dns-domain"></i>
+                                            </td>
+                                        </tr>
+                                        <tr>
+                                            <td class="vst-text input-label">
+                                                <?php print _('DNS records');?> <span class="optional">(<?=_('per domain')?>)</span>
+                                            </td>
+                                        </tr>
+                                        <tr>
+                                            <td>
+                                                <input type="text" size="20" class="vst-input" name="v_dns_records" value="<?=htmlentities(trim($v_dns_records, "'"))?>">
+                                                <i class="unlim-trigger fas fa-infinity" title="<?=_('Unlimited')?>" id="unlim-dns-records"></i>
+                                            </td>
+                                        </tr>
+                                        
+                                    <?php if ((isset($_SESSION['DNS_SYSTEM'])) && (!empty($_SESSION['DNS_SYSTEM']))) {?>
+                                        <tr>
+                                            <td class="vst-text input-label">
+                                                <?php print _('Name Servers');?>
+                                            </td>
+                                        </tr>
+                                        <tr>
+                                            <td>
+                                                <input type="text" size="20" class="vst-input" name="v_ns1" value="<?=htmlentities(trim($v_ns1, "'"))?>">
+                                                <span class="remove-ns"><i class="fas fa-trash status-icon dim red"></i></span>
+                                            </td>
+                                        </tr>
+                                        <tr>
+                                            <td>
+                                                <input type="text" size="20" class="vst-input" name="v_ns2" value="<?=htmlentities(trim($v_ns2, "'"))?>">
+                                                <span class="remove-ns"><i class="fas fa-trash status-icon dim red"></i></span>
+                                            </td>
+                                        </tr>
+                                        <?  if($v_ns3)
+                                              echo '<tr>
+                                                <td>
+                                                    <input type="text" size="20" class="vst-input" name="v_ns3" value="'.htmlentities(trim($v_ns3, "'")).'">
+                                                    <span class="remove-ns"><i class="fas fa-trash status-icon dim red"></i></span>
+                                                </td>
+                                            </tr>';
+            
+                                            if($v_ns4)
+                                              echo '<tr>
+                                                <td>
+                                                    <input type="text" size="20" class="vst-input" name="v_ns4" value="'.htmlentities(trim($v_ns4, "'")).'">
+                                                    <span class="remove-ns"><i class="fas fa-trash status-icon dim red"></i></span>
+                                                </td>
+                                            </tr>';
+            
+                                            if($v_ns5)
+                                              echo '<tr>
+                                                <td>
+                                                    <input type="text" size="20" class="vst-input" name="v_ns5" value="'.htmlentities(trim($v_ns5, "'")).'">
+                                                    <span class="remove-ns"><i class="fas fa-trash status-icon dim red"></i></span>
+                                                </td>
+                                            </tr>';
+            
+                                            if($v_ns6)
+                                              echo '<tr>
+                                                <td>
+                                                    <input type="text" size="20" class="vst-input" name="v_ns6" value="'.htmlentities(trim($v_ns6, "'")).'">
+                                                    <span class="remove-ns"><i class="fas fa-trash status-icon dim red"></i></span>
+                                                </td>
+                                            </tr>';
+            
+                                            if($v_ns7)
+                                              echo '<tr>
+                                                <td>
+                                                    <input type="text" size="20" class="vst-input" name="v_ns7" value="'.htmlentities(trim($v_ns7, "'")).'">
+                                                    <span class="remove-ns"><i class="fas fa-trash status-icon dim red"></i></span>
+                                                </td>
+                                            </tr>';
+            
+                                            if($v_ns8)
+                                              echo '<tr>
+                                                <td>
+                                                    <input type="text" size="20" class="vst-input" name="v_ns8" value="'.htmlentities(trim($v_ns8, "'")).'">
+                                                    <span class="remove-ns"><i class="fas fa-trash status-icon dim red"></i></span>
+                                                </td>
+                                            </tr>';
+                                            ?>
+            
+                                            <tr class="add-ns" <? if($v_ns8) echo 'style="display:none;"'; ?> >
+                                                <td class="step-top-small">
+                                                  <span class="add-ns-button additional-control add"><?=_('Add one more Name Server')?></span>
+                                                </td>
+                                            </tr>
+                                        <?php } ?>
+                                    </table>
+                                </td>
+                            </tr>
+                            <tr>
+                                <td class="section-title" onclick="javascript:elementHideShow('mail-options')">
+                                    <?=_('Mail');?>
+                                </td>
+                                <td class="section-hide-button">
+                                    <a href="javascript:elementHideShow('mail-options');"><i class="fas fa-minus-square status-icon dim maroon"></i></a>
                                 </td>
                             </tr>
                             <tr>
                                 <td>
-                                    <input type="text" size="20" class="vst-input" name="v_ns1" value="<?=htmlentities(trim($v_ns1, "'"))?>">
-                                    <span class="remove-ns additional-control delete"><?=_('delete')?></span>
+                                    <table id="mail-options" style="display: none;">
+                                        <tr>
+                                            <td class="vst-text input-label step-top">
+                                                <?php print _('Mail Domains');?>
+                                            </td>
+                                        </tr>
+                                        <tr>
+                                            <td>
+                                                <input type="text" size="20" class="vst-input" name="v_mail_domains" value="<?=htmlentities(trim($v_mail_domains, "'"))?>">
+                                                <i class="unlim-trigger fas fa-infinity" title="<?=_('Unlimited')?>" id="unlim-mail-domains"></i>
+                                            </td>
+                                        </tr>
+                                        <tr>
+                                            <td class="vst-text input-label">
+                                                <?php print _('Mail Accounts');?> <span class="optional">(<?=_('per domain')?>)</span>
+                                            </td>
+                                        </tr>
+                                        <tr>
+                                            <td>
+                                                <input type="text" size="20" class="vst-input" name="v_mail_accounts" value="<?=htmlentities(trim($v_mail_accounts, "'"))?>">
+                                                <i class="unlim-trigger fas fa-infinity" title="<?=_('Unlimited')?>" id="unlim-mail-accounts"></i>
+                                            <td>
+                                        </tr>
+                                    </table>
+                                </td>
+                            </tr>
+                            <tr>
+                                <td class="section-title" onclick="javascript:elementHideShow('system-options')">
+                                    <?=_('System');?>
+                                </td>
+                                <td class="section-hide-button">
+                                    <a href="javascript:elementHideShow('system-options');"><i class="fas fa-minus-square status-icon dim maroon"></i></a>
                                 </td>
                             </tr>
                             <tr>
                                 <td>
-                                    <input type="text" size="20" class="vst-input" name="v_ns2" value="<?=htmlentities(trim($v_ns2, "'"))?>">
-                                    <span class="remove-ns additional-control delete"><?=_('delete')?></span>
+                                    <table id="system-options" style="display: none;">
+                                        <tr>
+                                            <td class="vst-text input-label step-top">
+                                                <?php print _('Cron Jobs');?>
+                                            </td>
+                                        </tr>
+                                        <tr>
+                                            <td>
+                                                <input type="text" size="20" class="vst-input" name="v_cron_jobs" value="<?=htmlentities(trim($v_cron_jobs, "'"))?>">
+                                                <i class="unlim-trigger fas fa-infinity" title="<?=_('Unlimited')?>" id="unlim-cron-jobs"></i>
+                                            </td>
+                                        </tr>
+                                        <tr>
+                                            <td class="vst-text input-label">
+                                                <?php print _('SSH Access');?>
+                                            </td>
+                                        </tr>
+                                        <tr>
+                                            <td>
+                                                <select class="vst-list" name="v_shell">
+                                                    <?php
+                                                        foreach ($shells as $key => $value) {
+                                                            echo "\t\t\t\t<option value=\"".htmlentities($value)."\"";
+                                                            if ((!empty($v_shell)) && ( $value == $v_shell)){
+                                                                echo ' selected' ;
+                                                            }
+                                                            if ((!empty($v_shell)) && ( $value == $_POST['v_shell'])){
+                                                                echo ' selected' ;
+                                                            }
+                                                            echo ">".htmlentities($value)."</option>\n";
+                                                        }
+                                                    ?>
+                                                </select>
+                                            </td>
+                                        </tr>
+                                    </table>
                                 </td>
                             </tr>
-                            <?  if($v_ns3)
-                                  echo '<tr>
-                                    <td>
-                                        <input type="text" size="20" class="vst-input" name="v_ns3" value="'.htmlentities(trim($v_ns3, "'")).'">
-                                        <span class="remove-ns additional-control delete">'._('delete').'</span>
-                                    </td>
-                                </tr>';
-
-                                if($v_ns4)
-                                  echo '<tr>
-                                    <td>
-                                        <input type="text" size="20" class="vst-input" name="v_ns4" value="'.htmlentities(trim($v_ns4, "'")).'">
-                                        <span class="remove-ns additional-control delete">'._('delete').'</span>
-                                    </td>
-                                </tr>';
-
-                                if($v_ns5)
-                                  echo '<tr>
-                                    <td>
-                                        <input type="text" size="20" class="vst-input" name="v_ns5" value="'.htmlentities(trim($v_ns5, "'")).'">
-                                        <span class="remove-ns additional-control delete">'._('delete').'</span>
-                                    </td>
-                                </tr>';
-
-                                if($v_ns6)
-                                  echo '<tr>
-                                    <td>
-                                        <input type="text" size="20" class="vst-input" name="v_ns6" value="'.htmlentities(trim($v_ns6, "'")).'">
-                                        <span class="remove-ns additional-control delete">'._('delete').'</span>
-                                    </td>
-                                </tr>';
-
-                                if($v_ns7)
-                                  echo '<tr>
-                                    <td>
-                                        <input type="text" size="20" class="vst-input" name="v_ns7" value="'.htmlentities(trim($v_ns7, "'")).'">
-                                        <span class="remove-ns additional-control delete">'._('delete').'</span>
-                                    </td>
-                                </tr>';
-
-                                if($v_ns8)
-                                  echo '<tr>
-                                    <td>
-                                        <input type="text" size="20" class="vst-input" name="v_ns8" value="'.htmlentities(trim($v_ns8, "'")).'">
-                                        <span class="remove-ns additional-control delete">'._('delete').'</span>
-                                    </td>
-                                </tr>';
-                            ?>
-                                <tr class="add-ns" <? if($v_ns8) echo 'style="display:none;"'; ?> >
-                                    <td class="step-top-small">
-                                      <span class="add-ns-button additional-control add"><?=_('Add one more Name Server')?></span>
-                                    </td>
-                                </tr>
-                            <?php } ?>
-                        </table>
                         <table class="data-col2"></table>
                     </td>
                 </tr>

+ 1 - 1
web/templates/admin/add_user.html

@@ -83,7 +83,7 @@
                             </tr>
                             <tr>
                                 <td class="vst-text input-label">
-                                    <?php print _('Password');?> / <a href="javascript:randomString();" class="generate" ><?php print _('generate');?></a>
+                                    <?php print _('Password');?> <a href="javascript:randomString();" title="<?php print _('generate');?>"><i class="fas fa-sync status-icon green icon-large"></i></a>
                                 </td>
                             </tr>
                             <tr>

+ 1 - 1
web/templates/admin/edit_mail.html

@@ -64,7 +64,7 @@
                                   <input type="hidden" name="v_domain" value="<?=htmlentities(trim($v_domain, "'"))?>">
                                 </td>
                             </tr>
-                            <?php if($_SESSION['IMAP_SYSTEM']){?>                            
+                            <?php if($_SESSION['WEBMAIL_SYSTEM']){?>                            
                                 <tr>
                                     <td class="vst-text step-top">
                                         <?php print _('Webmail Client');?>

+ 2 - 0
web/templates/admin/edit_mail_acc.html

@@ -224,10 +224,12 @@
                                 <td><?=_('SMTP auth method')?>:</td>
                                 <td><div><?=_('Normal password')?></div></td>
                             </tr>
+                            <?php if($_SESSION['WEBMAIL_SYSTEM']){?>
                             <tr>
                                 <td><?=_('Webmail URL')?>:</td>
                                 <td><div><a class="vst" href="http://<?=$v_webmail_alias?>" target="_blank">http://<?=$v_webmail_alias?> <i></i></a></div></td>
                             </tr>
+                            <?php } ?>
                         </table>
                     </div>
                 </td>

+ 323 - 265
web/templates/admin/edit_package.html

@@ -55,215 +55,30 @@
                             </tr>
                             <tr>
                                 <td>
-                                    <input type="text" size="20" class="vst-input" name="v_package" value="<?=htmlentities(trim($v_package, "'"))?>" disabled >
+                                    <input type="text" size="20" class="vst-input" name="v_package" value="<?=htmlentities(trim($v_package, "'"))?>" disabled>
                                     <input type="hidden" name="v_package" value="<?=htmlentities(trim($v_package, "'"))?>">
                                 </td>
                             </tr>
                             <tr>
                                 <td class="vst-text input-label">
-                                    <?php print _('Web Template')  . " <span class='optional'> " .strtoupper($_SESSION['WEB_SYSTEM']) . "</span>";?>
-                                </td>
-                            </tr>
-                            <tr>
-                                <td>
-                                    <select class="vst-list" name="v_web_template">
-                                        <?php
-                                            foreach ($web_templates as $key => $value) {
-                                                echo "\t\t\t\t<option value=\"".htmlentities($value)."\"";
-                                                if ((!empty($v_web_template)) && ( $value == $v_web_template)){
-                                                    echo ' selected' ;
-                                                }
-                                                if ((!empty($v_web_template)) && ( $value == $_POST['v_web_template'])){
-                                                    echo ' selected' ;
-                                                }
-                                                echo ">".htmlentities($value)."</option>\n";
-                                            }
-                                        ?>
-                                    </select>
-                                </td>
-                            </tr>
-                            <?php if (!empty($_SESSION['WEB_BACKEND'])) { echo ""; ?>
-                            <tr>
-                                <td class="vst-text input-label">
-                                    <?php print _('Backend Template')  . "<span class='optional'>" .strtoupper($_SESSION['WEB_BACKEND']) . "</span>";?>
-                                </td>
-                            </tr>
-                            <tr>
-                                <td>
-                                    <select class="vst-list" name="v_backend_template">
-                                        <?php
-                                            foreach ($backend_templates as $key => $value) {
-                                                echo "\t\t\t\t<option value=\"".$value."\"";
-                                                if ((!empty($v_backend_template)) && ( $value == $v_backend_template)){
-                                                    echo ' selected' ;
-                                                }
-                                                if ((!empty($v_backend_template)) && ( $value == $_POST['v_backend_template'])){
-                                                    echo ' selected' ;
-                                                }
-                                                echo ">".htmlentities($value)."</option>\n";
-                                            }
-                                        ?>
-                                    </select>
-                                </td>
-                            </tr>
-                            <?php echo ""; }?>
-                            <?php if (!empty($_SESSION['PROXY_SYSTEM'])) { echo ""; ?>
-                            <tr>
-                                <td class="vst-text input-label">
-                                    <?php print _('Proxy Template')  . "<span class='optional'>" .strtoupper($_SESSION['PROXY_SYSTEM']) . "</span>";?>
-                                </td>
-                            </tr>
-                            <tr>
-                                <td>
-                                    <select class="vst-list" name="v_proxy_template">
-                                        <?php
-                                            foreach ($proxy_templates as $key => $value) {
-                                                echo "\t\t\t\t<option value=\"".htmlentities($value)."\"";
-                                                if ((!empty($v_proxy_template)) && ( $value == $v_proxy_template)){
-                                                    echo ' selected' ;
-                                                }
-                                                if ((!empty($v_proxy_template)) && ( $value == $_POST['v_proxy_template'])){
-                                                    echo ' selected' ;
-                                                }
-                                                echo ">".htmlentities($value)."</option>\n";
-                                            }
-                                        ?>
-                                    </select>
-                                </td>
-                            </tr>
-                            <?php echo ""; }?>
-                            <tr>
-                                <td class="vst-text input-label">
-                                    <?php print _('DNS Template')  . "<span class='optional'>" .strtoupper($_SESSION['DNS_SYSTEM']) . "</span>";?>
-                                </td>
-                            </tr>
-                            <tr>
-                                <td>
-                                    <select class="vst-list" name="v_dns_template">
-                                        <?php
-                                            foreach ($dns_templates as $key => $value) {
-                                                echo "\t\t\t\t<option value=\"".htmlentities($value)."\"";
-                                                if ((!empty($v_dns_template)) && ( $value == $v_dns_template)){
-                                                    echo ' selected' ;
-                                                }
-                                                if ((!empty($v_dns_template)) && ( $value == $_POST['v_dns_template'])){
-                                                    echo ' selected' ;
-                                                }
-                                                echo ">".htmlentities($value)."</option>\n";
-                                            }
-                                        ?>
-                                    </select>
-                                </td>
-                            </tr>
-                            <tr>
-                                <td class="vst-text input-label">
-                                    <?php print _('SSH Access');?>
-                                </td>
-                            </tr>
-                            <tr>
-                                <td>
-                                    <select class="vst-list" name="v_shell">
-                                        <?php
-                                            foreach ($shells as $key => $value) {
-                                                echo "\t\t\t\t<option value=\"".htmlentities($value)."\"";
-                                                if ((!empty($v_shell)) && ( $value == $v_shell)){
-                                                    echo ' selected' ;
-                                                }
-                                                if ((!empty($v_shell)) && ( $value == $_POST['v_shell'])){
-                                                    echo ' selected' ;
-                                                }
-                                                echo ">".htmlentities($value)."</option>\n";
-                                            }
-                                        ?>
-                                    </select>
-                                </td>
-                            </tr>
-                            <tr>
-                                <td class="vst-text input-label">
-                                    <?php print _('Web Domains');?>
-                                </td>
-                            </tr>
-                            <tr>
-                                <td>
-                                    <input type="text" size="20" class="vst-input" name="v_web_domains" value="<?=htmlentities(trim($v_web_domains, "'"))?>">
-                                    <i class="unlim-trigger fas fa-infinity" title="<?=_('Unlimited')?>" id="unlim-web-domains"></i>
-                                </td>
-                            </tr>
-                            <tr>
-                                <td class="vst-text input-label">
-                                    <?php print _('Web Aliases');?> <span class="optional">(<?=_('per domain')?>)</span>
-                                </td>
-                            </tr>
-                            <tr>
-                                <td>
-                                    <input type="text" size="20" class="vst-input" name="v_web_aliases" value="<?=htmlentities(trim($v_web_aliases, "'"))?>">
-                                    <i class="unlim-trigger fas fa-infinity" title="<?=_('Unlimited')?>" id="unlim-web-aliases"></i>
-                                </td>
-                            </tr>
-                            <tr>
-                                <td class="vst-text input-label">
-                                    <?php print _('DNS domains');?>
-                                </td>
-                            </tr>
-                            <tr>
-                                <td>
-                                    <input type="text" size="20" class="vst-input" name="v_dns_domains" value="<?=htmlentities(trim($v_dns_domains, "'"))?>">
-                                    <i class="unlim-trigger fas fa-infinity" title="<?=_('Unlimited')?>" id="unlim-dns-domain"></i>
-                                </td>
-                            </tr>
-                            <tr>
-                                <td class="vst-text input-label">
-                                    <?php print _('DNS records');?> <span class="optional">(<?=_('per domain')?>)</span>
-                                </td>
-                            </tr>
-                            <tr>
-                                <td>
-                                    <input type="text" size="20" class="vst-input" name="v_dns_records" value="<?=htmlentities(trim($v_dns_records, "'"))?>">
-                                    <i class="unlim-trigger fas fa-infinity" title="<?=_('Unlimited')?>" id="unlim-dns-records"></i>
-                                </td>
-                            </tr>
-                            <tr>
-                                <td class="vst-text input-label">
-                                    <?php print _('Mail Domains');?>
-                                </td>
-                            </tr>
-                            <tr>
-                                <td>
-                                    <input type="text" size="20" class="vst-input" name="v_mail_domains" value="<?=htmlentities(trim($v_mail_domains, "'"))?>">
-                                    <i class="unlim-trigger fas fa-infinity" title="<?=_('Unlimited')?>" id="unlim-mail-domains"></i>
-                                </td>
-                            </tr>
-                            <tr>
-                                <td class="vst-text input-label">
-                                    <?php print _('Mail Accounts');?> <span class="optional">(<?=_('per domain')?>)</span>
-                                </td>
-                            </tr>
-                            <tr>
-                                <td>
-                                    <input type="text" size="20" class="vst-input" name="v_mail_accounts" value="<?=htmlentities(trim($v_mail_accounts, "'"))?>">
-                                    <i class="unlim-trigger fas fa-infinity" title="<?=_('Unlimited')?>" id="unlim-mail-accounts"></i>
-                                <td>
-                            </tr>
-                            <tr>
-                                <td class="vst-text input-label">
-                                    <?php print _('Databases');?>
+                                    <?php print _('Quota');?> <span class="optional">(<?=_('in megabytes')?>)</span>
                                 </td>
                             </tr>
                             <tr>
                                 <td>
-                                    <input type="text" size="20" class="vst-input" name="v_databases" value="<?=htmlentities(trim($v_databases, "'"))?>">
-                                    <i class="unlim-trigger fas fa-infinity" title="<?=_('Unlimited')?>" id="unlim-databases"></i>
+                                    <input type="text" size="20" class="vst-input" name="v_disk_quota" value="<?=htmlentities(trim($v_disk_quota, "'"))?>">
+                                    <i class="unlim-trigger fas fa-infinity" title="<?=_('Unlimited')?>" id="unlim-disk-quota"></i>
                                 </td>
                             </tr>
                             <tr>
                                 <td class="vst-text input-label">
-                                    <?php print _('Cron Jobs');?>
+                                    <?php print _('Bandwidth');?> <span class="optional">(<?=_('in megabytes')?>)</span>
                                 </td>
                             </tr>
                             <tr>
                                 <td>
-                                    <input type="text" size="20" class="vst-input" name="v_cron_jobs" value="<?=htmlentities(trim($v_cron_jobs, "'"))?>">
-                                    <i class="unlim-trigger fas fa-infinity" title="<?=_('Unlimited')?>" id="unlim-cron-jobs"></i>
+                                    <input type="text" size="20" class="vst-input" name="v_bandwidth" value="<?=htmlentities(trim($v_bandwidth, "'"))?>">
+                                    <i class="unlim-trigger fas fa-infinity" title="<?=_('Unlimited')?>" id="unlim-bandwidth"></i>
                                 </td>
                             </tr>
                             <tr>
@@ -277,100 +92,343 @@
                                 </td>
                             </tr>
                             <tr>
-                                <td class="vst-text input-label">
-                                    <?php print _('Quota');?> <span class="optional">(<?=_('in megabytes')?>)</span>
+                                <td class="section-title" onclick="javascript:elementHideShow('web-options')">
+                                    <?=_('Web');?>
+                                </td>
+                                <td class="section-hide-button">
+                                    <a href="javascript:elementHideShow('web-options');"><i class="fas fa-minus-square status-icon dim maroon"></i></a>
                                 </td>
                             </tr>
                             <tr>
                                 <td>
-                                    <input type="text" size="20" class="vst-input" name="v_disk_quota" value="<?=htmlentities(trim($v_disk_quota, "'"))?>">
-                                    <i class="unlim-trigger fas fa-infinity" title="<?=_('Unlimited')?>" id="unlim-disk-quota"></i>
+                                    <table id="web-options" style="display: none;">
+                                        <tr>
+                                            <td class="vst-text input-label step-top">
+                                                <?php print _('Web Domains');?>
+                                            </td>
+                                        </tr>
+                                        <tr>
+                                            <td>
+                                                <input type="text" size="20" class="vst-input" name="v_web_domains" value="<?=htmlentities(trim($v_web_domains, "'"))?>">
+                                                <i class="unlim-trigger fas fa-infinity" title="<?=_('Unlimited')?>" id="unlim-web-domains"></i>
+                                            </td>
+                                        </tr>
+                                        <tr>
+                                            <td class="vst-text input-label">
+                                                <?php print _('Web Aliases');?> <span class="optional">(<?=_('per domain')?>)</span>
+                                            </td>
+                                        </tr>
+                                        <tr>
+                                            <td>
+                                                <input type="text" size="20" class="vst-input" name="v_web_aliases" value="<?=htmlentities(trim($v_web_aliases, "'"))?>">
+                                                <i class="unlim-trigger fas fa-infinity" title="<?=_('Unlimited')?>" id="unlim-web-aliases"></i>
+                                            </td>
+                                        </tr>
+                                        <tr>
+                                            <td class="vst-text input-label">
+                                                <?php print _('Web Template')  . " <span class='optional'> " .strtoupper($_SESSION['WEB_SYSTEM']) . "</span>";?>
+                                            </td>
+                                        </tr>
+                                        <tr>
+                                            <td>
+                                                <select class="vst-list" name="v_web_template">
+                                                    <?php
+                                                        foreach ($web_templates as $key => $value) {
+                                                            echo "\t\t\t\t<option value=\"".htmlentities($value)."\"";
+                                                            if ((!empty($v_web_template)) && ( $value == $v_web_template)){
+                                                                echo ' selected' ;
+                                                            }
+                                                            if ((!empty($v_web_template)) && ( $value == $_POST['v_web_template'])){
+                                                                echo ' selected' ;
+                                                            }
+                                                            echo ">".htmlentities($value)."</option>\n";
+                                                        }
+                                                    ?>
+                                                </select>
+                                            </td>
+                                        </tr>
+                                        <?php if (!empty($_SESSION['WEB_BACKEND'])) { echo ""; ?>
+                                        <tr>
+                                            <td class="vst-text input-label">
+                                                <?php print _('Backend Template')  . "<span class='optional'>" .strtoupper($_SESSION['WEB_BACKEND']) . "</span>";?>
+                                            </td>
+                                        </tr>
+                                        <tr>
+                                            <td>
+                                                <select class="vst-list" name="v_backend_template">
+                                                    <?php
+                                                        foreach ($backend_templates as $key => $value) {
+                                                            echo "\t\t\t\t<option value=\"".$value."\"";
+                                                            if ((!empty($v_backend_template)) && ( $value == $v_backend_template)){
+                                                                echo ' selected' ;
+                                                            }
+                                                            if ((!empty($v_backend_template)) && ( $value == $_POST['v_backend_template'])){
+                                                                echo ' selected' ;
+                                                            }
+                                                            echo ">".htmlentities($value)."</option>\n";
+                                                        }
+                                                    ?>
+                                                </select>
+                                            </td>
+                                        </tr>
+                                        <?php echo ""; }?>
+                                        <?php if (!empty($_SESSION['PROXY_SYSTEM'])) { echo ""; ?>
+                                        <tr>
+                                            <td class="vst-text input-label">
+                                                <?php print _('Proxy Template')  . "<span class='optional'>" .strtoupper($_SESSION['PROXY_SYSTEM']) . "</span>";?>
+                                            </td>
+                                        </tr>
+                                        <tr>
+                                            <td>
+                                                <select class="vst-list" name="v_proxy_template">
+                                                    <?php
+                                                        foreach ($proxy_templates as $key => $value) {
+                                                            echo "\t\t\t\t<option value=\"".htmlentities($value)."\"";
+                                                            if ((!empty($v_proxy_template)) && ( $value == $v_proxy_template)){
+                                                                echo ' selected' ;
+                                                            }
+                                                            if ((!empty($v_proxy_template)) && ( $value == $_POST['v_proxy_template'])){
+                                                                echo ' selected' ;
+                                                            }
+                                                            echo ">".htmlentities($value)."</option>\n";
+                                                        }
+                                                    ?>
+                                                </select>
+                                            </td>
+                                        </tr>
+                                        <tr>
+                                            <td class="vst-text input-label">
+                                                <?php print _('Databases');?>
+                                            </td>
+                                        </tr>
+                                        <tr>
+                                            <td>
+                                                <input type="text" size="20" class="vst-input" name="v_databases" value="<?=htmlentities(trim($v_databases, "'"))?>">
+                                                <i class="unlim-trigger fas fa-infinity" title="<?=_('Unlimited')?>" id="unlim-databases"></i>
+                                            </td>
+                                        </tr>
+                                    </table>
                                 </td>
                             </tr>
+                            <?php echo ""; }?>
                             <tr>
-                                <td class="vst-text input-label">
-                                    <?php print _('Bandwidth');?> <span class="optional">(<?=_('in megabytes')?>)</span>
+                                <td class="section-title" onclick="javascript:elementHideShow('dns-options')">
+                                    <?=_('DNS');?>
                                 </td>
-                            </tr>
-                            <tr>
-                                <td>
-                                    <input type="text" size="20" class="vst-input" name="v_bandwidth" value="<?=htmlentities(trim($v_bandwidth, "'"))?>">
-                                    <i class="unlim-trigger fas fa-infinity" title="<?=_('Unlimited')?>" id="unlim-bandwidth"></i>
+                                <td class="section-hide-button">
+                                    <a href="javascript:elementHideShow('dns-options');"><i class="fas fa-minus-square status-icon dim maroon"></i></a>
                                 </td>
                             </tr>
-                        <?php if ((isset($_SESSION['DNS_SYSTEM'])) && (!empty($_SESSION['DNS_SYSTEM']))) {?>
                             <tr>
-                                <td class="vst-text input-label">
-                                    <?php print _('Name Servers');?>
+                                <td>
+                                    <table id="dns-options" style="display: none;">
+                                        <tr>
+                                            <td class="vst-text input-label step-top">
+                                                <?php print _('DNS Template')  . "<span class='optional'>" .strtoupper($_SESSION['DNS_SYSTEM']) . "</span>";?>
+                                            </td>
+                                        </tr>
+                                        <tr>
+                                            <td>
+                                                <select class="vst-list" name="v_dns_template">
+                                                    <?php
+                                                        foreach ($dns_templates as $key => $value) {
+                                                            echo "\t\t\t\t<option value=\"".htmlentities($value)."\"";
+                                                            if ((!empty($v_dns_template)) && ( $value == $v_dns_template)){
+                                                                echo ' selected' ;
+                                                            }
+                                                            if ((!empty($v_dns_template)) && ( $value == $_POST['v_dns_template'])){
+                                                                echo ' selected' ;
+                                                            }
+                                                            echo ">".htmlentities($value)."</option>\n";
+                                                        }
+                                                    ?>
+                                                </select>
+                                            </td>
+                                        </tr>
+            
+                                        <tr>
+                                            <td class="vst-text input-label">
+                                                <?php print _('DNS domains');?>
+                                            </td>
+                                        </tr>
+                                        <tr>
+                                            <td>
+                                                <input type="text" size="20" class="vst-input" name="v_dns_domains" value="<?=htmlentities(trim($v_dns_domains, "'"))?>">
+                                                <i class="unlim-trigger fas fa-infinity" title="<?=_('Unlimited')?>" id="unlim-dns-domain"></i>
+                                            </td>
+                                        </tr>
+                                        <tr>
+                                            <td class="vst-text input-label">
+                                                <?php print _('DNS records');?> <span class="optional">(<?=_('per domain')?>)</span>
+                                            </td>
+                                        </tr>
+                                        <tr>
+                                            <td>
+                                                <input type="text" size="20" class="vst-input" name="v_dns_records" value="<?=htmlentities(trim($v_dns_records, "'"))?>">
+                                                <i class="unlim-trigger fas fa-infinity" title="<?=_('Unlimited')?>" id="unlim-dns-records"></i>
+                                            </td>
+                                        </tr>
+                                        
+                                    <?php if ((isset($_SESSION['DNS_SYSTEM'])) && (!empty($_SESSION['DNS_SYSTEM']))) {?>
+                                        <tr>
+                                            <td class="vst-text input-label">
+                                                <?php print _('Name Servers');?>
+                                            </td>
+                                        </tr>
+                                        <tr>
+                                            <td>
+                                                <input type="text" size="20" class="vst-input" name="v_ns1" value="<?=htmlentities(trim($v_ns1, "'"))?>">
+                                                <span class="remove-ns"><i class="fas fa-trash status-icon dim red"></i></span>
+                                            </td>
+                                        </tr>
+                                        <tr>
+                                            <td>
+                                                <input type="text" size="20" class="vst-input" name="v_ns2" value="<?=htmlentities(trim($v_ns2, "'"))?>">
+                                                <span class="remove-ns"><i class="fas fa-trash status-icon dim red"></i></span>
+                                            </td>
+                                        </tr>
+                                        <?  if($v_ns3)
+                                              echo '<tr>
+                                                <td>
+                                                    <input type="text" size="20" class="vst-input" name="v_ns3" value="'.htmlentities(trim($v_ns3, "'")).'">
+                                                    <span class="remove-ns"><i class="fas fa-trash status-icon dim red"></i></span>
+                                                </td>
+                                            </tr>';
+            
+                                            if($v_ns4)
+                                              echo '<tr>
+                                                <td>
+                                                    <input type="text" size="20" class="vst-input" name="v_ns4" value="'.htmlentities(trim($v_ns4, "'")).'">
+                                                    <span class="remove-ns"><i class="fas fa-trash status-icon dim red"></i></span>
+                                                </td>
+                                            </tr>';
+            
+                                            if($v_ns5)
+                                              echo '<tr>
+                                                <td>
+                                                    <input type="text" size="20" class="vst-input" name="v_ns5" value="'.htmlentities(trim($v_ns5, "'")).'">
+                                                    <span class="remove-ns"><i class="fas fa-trash status-icon dim red"></i></span>
+                                                </td>
+                                            </tr>';
+            
+                                            if($v_ns6)
+                                              echo '<tr>
+                                                <td>
+                                                    <input type="text" size="20" class="vst-input" name="v_ns6" value="'.htmlentities(trim($v_ns6, "'")).'">
+                                                    <span class="remove-ns"><i class="fas fa-trash status-icon dim red"></i></span>
+                                                </td>
+                                            </tr>';
+            
+                                            if($v_ns7)
+                                              echo '<tr>
+                                                <td>
+                                                    <input type="text" size="20" class="vst-input" name="v_ns7" value="'.htmlentities(trim($v_ns7, "'")).'">
+                                                    <span class="remove-ns"><i class="fas fa-trash status-icon dim red"></i></span>
+                                                </td>
+                                            </tr>';
+            
+                                            if($v_ns8)
+                                              echo '<tr>
+                                                <td>
+                                                    <input type="text" size="20" class="vst-input" name="v_ns8" value="'.htmlentities(trim($v_ns8, "'")).'">
+                                                    <span class="remove-ns"><i class="fas fa-trash status-icon dim red"></i></span>
+                                                </td>
+                                            </tr>';
+                                            ?>
+            
+                                            <tr class="add-ns" <? if($v_ns8) echo 'style="display:none;"'; ?> >
+                                                <td class="step-top-small">
+                                                  <span class="add-ns-button additional-control add"><?=_('Add one more Name Server')?></span>
+                                                </td>
+                                            </tr>
+                                        <?php } ?>
+                                    </table>
+                                </td>
+                            </tr>
+                            <tr>
+                                <td class="section-title" onclick="javascript:elementHideShow('mail-options')">
+                                    <?=_('Mail');?>
+                                </td>
+                                <td class="section-hide-button">
+                                    <a href="javascript:elementHideShow('mail-options');"><i class="fas fa-minus-square status-icon dim maroon"></i></a>
                                 </td>
                             </tr>
                             <tr>
                                 <td>
-                                    <input type="text" size="20" class="vst-input" name="v_ns1" value="<?=htmlentities(trim($v_ns1, "'"))?>">
-                                    <span class="remove-ns additional-control delete"><?=_('delete')?></span>
+                                    <table id="mail-options" style="display: none;">
+                                        <tr>
+                                            <td class="vst-text input-label step-top">
+                                                <?php print _('Mail Domains');?>
+                                            </td>
+                                        </tr>
+                                        <tr>
+                                            <td>
+                                                <input type="text" size="20" class="vst-input" name="v_mail_domains" value="<?=htmlentities(trim($v_mail_domains, "'"))?>">
+                                                <i class="unlim-trigger fas fa-infinity" title="<?=_('Unlimited')?>" id="unlim-mail-domains"></i>
+                                            </td>
+                                        </tr>
+                                        <tr>
+                                            <td class="vst-text input-label">
+                                                <?php print _('Mail Accounts');?> <span class="optional">(<?=_('per domain')?>)</span>
+                                            </td>
+                                        </tr>
+                                        <tr>
+                                            <td>
+                                                <input type="text" size="20" class="vst-input" name="v_mail_accounts" value="<?=htmlentities(trim($v_mail_accounts, "'"))?>">
+                                                <i class="unlim-trigger fas fa-infinity" title="<?=_('Unlimited')?>" id="unlim-mail-accounts"></i>
+                                            <td>
+                                        </tr>
+                                    </table>
+                                </td>
+                            </tr>
+                            <tr>
+                                <td class="section-title" onclick="javascript:elementHideShow('system-options')">
+                                    <?=_('System');?>
+                                </td>
+                                <td class="section-hide-button">
+                                    <a href="javascript:elementHideShow('system-options');"><i class="fas fa-minus-square status-icon dim maroon"></i></a>
                                 </td>
                             </tr>
                             <tr>
                                 <td>
-                                    <input type="text" size="20" class="vst-input" name="v_ns2" value="<?=htmlentities(trim($v_ns2, "'"))?>">
-                                    <span class="remove-ns additional-control delete"><?=_('delete')?></span>
+                                    <table id="system-options" style="display: none;">
+                                        <tr>
+                                            <td class="vst-text input-label step-top">
+                                                <?php print _('Cron Jobs');?>
+                                            </td>
+                                        </tr>
+                                        <tr>
+                                            <td>
+                                                <input type="text" size="20" class="vst-input" name="v_cron_jobs" value="<?=htmlentities(trim($v_cron_jobs, "'"))?>">
+                                                <i class="unlim-trigger fas fa-infinity" title="<?=_('Unlimited')?>" id="unlim-cron-jobs"></i>
+                                            </td>
+                                        </tr>
+                                        <tr>
+                                            <td class="vst-text input-label">
+                                                <?php print _('SSH Access');?>
+                                            </td>
+                                        </tr>
+                                        <tr>
+                                            <td>
+                                                <select class="vst-list" name="v_shell">
+                                                    <?php
+                                                        foreach ($shells as $key => $value) {
+                                                            echo "\t\t\t\t<option value=\"".htmlentities($value)."\"";
+                                                            if ((!empty($v_shell)) && ( $value == $v_shell)){
+                                                                echo ' selected' ;
+                                                            }
+                                                            if ((!empty($v_shell)) && ( $value == $_POST['v_shell'])){
+                                                                echo ' selected' ;
+                                                            }
+                                                            echo ">".htmlentities($value)."</option>\n";
+                                                        }
+                                                    ?>
+                                                </select>
+                                            </td>
+                                        </tr>
+                                    </table>
                                 </td>
                             </tr>
-                            <?  if($v_ns3)
-                                  echo '<tr>
-                                    <td>
-                                        <input type="text" size="20" class="vst-input" name="v_ns3" value="'.htmlentities(trim($v_ns3, "'")).'">
-                                        <span class="remove-ns additional-control delete">'._('delete').'</span>
-                                    </td>
-                                </tr>';
-
-                                if($v_ns4)
-                                  echo '<tr>
-                                    <td>
-                                        <input type="text" size="20" class="vst-input" name="v_ns4" value="'.htmlentities(trim($v_ns4, "'")).'">
-                                        <span class="remove-ns additional-control delete">'._('delete').'</span>
-                                    </td>
-                                </tr>';
-
-                                if($v_ns5)
-                                  echo '<tr>
-                                    <td>
-                                        <input type="text" size="20" class="vst-input" name="v_ns5" value="'.htmlentities(trim($v_ns5, "'")).'">
-                                        <span class="remove-ns additional-control delete">'._('delete').'</span>
-                                    </td>
-                                </tr>';
-
-                                if($v_ns6)
-                                  echo '<tr>
-                                    <td>
-                                        <input type="text" size="20" class="vst-input" name="v_ns6" value="'.htmlentities(trim($v_ns6, "'")).'">
-                                        <span class="remove-ns additional-control delete">'._('delete').'</span>
-                                    </td>
-                                </tr>';
-
-                                if($v_ns7)
-                                  echo '<tr>
-                                    <td>
-                                        <input type="text" size="20" class="vst-input" name="v_ns7" value="'.htmlentities(trim($v_ns7, "'")).'">
-                                        <span class="remove-ns additional-control delete">'._('delete').'</span>
-                                    </td>
-                                </tr>';
-
-                                if($v_ns8)
-                                  echo '<tr>
-                                    <td>
-                                        <input type="text" size="20" class="vst-input" name="v_ns8" value="'.htmlentities(trim($v_ns8, "'")).'">
-                                        <span class="remove-ns additional-control delete">'._('delete').'</span>
-                                    </td>
-                                </tr>';
-                                ?>
-
-                                <tr class="add-ns" <? if($v_ns8) echo 'style="display:none;"'; ?> >
-                                    <td class="step-top-small">
-                                      <span class="add-ns-button additional-control add"><?=_('Add one more Name Server')?></span>
-                                    </td>
-                                </tr>
-                            <?php } ?>
                         </table>
                         <table class="data-col2"></table>
                     </td>

+ 2 - 0
web/templates/admin/edit_server.html

@@ -412,6 +412,7 @@
                                             </td>
                                         </tr>
                                         <?php } ?>
+                                        <?php if($_SESSION['WEBMAIL_SYSTEM']){?>   
                                         <tr>
                                             <td class="vst-text">
                                                 <?php print _('Webmail URL') ?>
@@ -423,6 +424,7 @@
                                                 <br><br>
                                             </td>
                                         </tr>
+                                        <?php } ?>
 					                    <tr>
                                                 <td class="vst-text">
                                                 <label>

+ 2 - 0
web/templates/admin/list_mail.html

@@ -102,7 +102,9 @@ sort-accounts="<?=$data[$key]['ACCOUNTS']?>" sort-star="<? if($_SESSION['favouri
                             <div class="actions-panel__col actions-panel__logs shortcut-n" key-action="href"><a href="/add/mail/?domain=<?=$key?>&token=<?=$_SESSION['token']?>" title="<?=_('Add Mail Account')?>"><i class="fas fa-plus-circle status-icon green status-icon dim"></i></a></div>
                             <div class="actions-panel__col actions-panel__edit shortcut-l" key-action="href"><a href="?domain=<?=$key?>&token=<?=$_SESSION['token']?>" title="<?=_('mail accounts')?>"><i class="fas fa-users status-icon blue status-icon dim"></i></a></div>
                             <div class="actions-panel__col actions-panel__edit shortcut-l" key-action="href"><a href="?domain=<?=$key?>&dns=1&token=<?=$_SESSION['token']?>" title="<?=_('DNS records mail')?>"><i class="fas fa-atlas status-icon blue status-icon dim"></i></a></div>
+                            <?php if($_SESSION['WEBMAIL_SYSTEM']){?>
                             <div class="actions-panel__col actions-panel__edit" key-action="href"><a href="http://<?=$webmail;?>.<?=$key?>/" target="_blank" title="<?=_('open webmail')?>"><i class="fas fa-paper-plane status-icon lightblue status-icon dim"></i></a></div>
+                            <?php } ?>
                             <div class="actions-panel__col actions-panel__logs shortcut-enter" key-action="href"><a href="/edit/mail/?domain=<?=$key?>&token=<?=$_SESSION['token']?>" title="<?=_('Editing Mail Domain')?>"><i class="fas fa-pencil-alt status-icon orange status-icon dim"></i></a></div>
 
                             <div class="actions-panel__col actions-panel__suspend shortcut-s" key-action="js">

+ 2 - 1
web/templates/admin/list_mail_acc.html

@@ -98,8 +98,9 @@ sort-star="<? if($_SESSION['favourites']['MAIL_ACC'][$key."@".$_GET['domain']] =
                 <div class="l-unit-toolbar__col l-unit-toolbar__col--right noselect">
                   <div class="actions-panel clearfix">
                     <div class="actions-panel__col actions-panel__edit" key-action="href"><a href="http://<?=$v_webmail_alias;?>.<?=htmlspecialchars($_GET['domain'])?>/?_user=<?=$key?>@<?=htmlspecialchars($_GET['domain'])?>" target="_blank" title="<?=_('open webmail')?>"><i class="fas fa-envelope-open-text status-icon maroon status-icon dim"></i></a></div>
+                    <?php if($_SESSION['WEBMAIL_SYSTEM']){?>
                     <div class="actions-panel__col actions-panel__logs shortcut-enter" key-action="href"><a href="/edit/mail/?domain=<?=htmlspecialchars($_GET['domain'])?>&account=<?=$key?>&token=<?=$_SESSION['token']?>" title="<?=_('Editing Mail Account')?>"><i class="fas fa-pencil-alt status-icon orange status-icon dim"></i></a></div>
-
+                    <?php } ?>
                     <div class="actions-panel__col actions-panel__suspend shortcut-s" key-action="js">
                       <a id="<?=$spnd_action ?>_link_<?=$i?>" class="data-controls do_<?=$spnd_action?>" title="<?=_($spnd_action)?>">
                         <i class="fas <?=$spnd_icon?> status-icon highlight status-icon dim do_<?=$spnd_action?>"></i>

+ 2 - 0
web/templates/admin/list_mail_dns.html

@@ -48,6 +48,7 @@ if (!empty($_SESSION['WEBMAIL_ALIAS'])) $v_webmail_alias = $_SESSION['WEBMAIL_AL
                     <div class="clearfix l-unit__stat-col--left wide-3"><b><input type="text" class="vst-input" value="<?php echo array_key_first($ips);?>"/></b></div>
               </div>
     </div>
+    <?php if($_SESSION['WEBMAIL_SYSTEM']){?>
     <div class="l-unit animated fadeIn">
                   <div class="l-unit__col l-unit__col--right">
                     <div class="clearfix l-unit__stat-col--left wide-3"><b><input type="text" class="vst-input" style="width:200px !important;" value="<?=$v_webmail_alias;?>.<?=htmlspecialchars($_GET['domain']);?>"/></b> </div>
@@ -57,6 +58,7 @@ if (!empty($_SESSION['WEBMAIL_ALIAS'])) $v_webmail_alias = $_SESSION['WEBMAIL_AL
                   <div class="clearfix l-unit__stat-col--left wide-3"><b><input type="text" class="vst-input" value="<?php echo array_key_first($ips);?>"/></b></div>
             </div>
     </div>
+    <?php } ?>
     <div class="l-unit animated fadeIn">
           <div class="l-unit__col l-unit__col--right">
             <div class="clearfix l-unit__stat-col--left wide-3"><b><input type="text" class="vst-input" style="width:200px !important;" value="@"/></b> </div>

+ 2 - 0
web/templates/user/list_mail.html

@@ -101,7 +101,9 @@ sort-accounts="<?=$data[$key]['ACCOUNTS']?>" sort-star="<? if($_SESSION['favouri
                         <div class="actions-panel__col actions-panel__logs shortcut-n" key-action="href"><a href="/add/mail/?domain=<?=$key?>&token=<?=$_SESSION['token']?>" title="<?=_('Add Mail Account')?>"><i class="fas fa-plus-circle status-icon green status-icon dim"></i></a></div>
                         <div class="actions-panel__col actions-panel__edit shortcut-l" key-action="href"><a href="?domain=<?=$key?>&token=<?=$_SESSION['token']?>" title="<?=_('mail accounts')?>"><i class="fas fa-users status-icon blue status-icon dim"></i></a></div>
                         <div class="actions-panel__col actions-panel__edit shortcut-l" key-action="href"><a href="?domain=<?=$key?>&dns=1&token=<?=$_SESSION['token']?>" title="<?=_('DNS records mail')?>"><i class="fas fa-atlas status-icon blue status-icon dim"></i></a></div>
+                        <?php if($_SESSION['WEBMAIL_SYSTEM']){?>
                         <div class="actions-panel__col actions-panel__edit" key-action="href"><a href="http://<?=$webmail;?>.<?=$key?>/" target="_blank" title="<?=_('open webmail')?>"><i class="fas fa-paper-plane status-icon lightblue status-icon dim"></i></a></div>
+                        <?php } ?>
                         <div class="actions-panel__col actions-panel__logs shortcut-enter" key-action="href"><a href="/edit/mail/?domain=<?=$key?>&token=<?=$_SESSION['token']?>" title="<?=_('Editing Mail Domain')?>"><i class="fas fa-pencil-alt status-icon orange status-icon dim"></i></a></div>
 
                         <div class="actions-panel__col actions-panel__suspend shortcut-s" key-action="js">

+ 2 - 0
web/templates/user/list_mail_acc.html

@@ -97,7 +97,9 @@ sort-star="<? if($_SESSION['favourites']['MAIL_ACC'][$key."@".$_GET['domain']] =
               <div class="clearfix l-unit__stat-col--left text-right compact-4">
                 <div class="l-unit-toolbar__col l-unit-toolbar__col--right noselect">
                   <div class="actions-panel clearfix">
+                    <?php if($_SESSION['WEBMAIL_SYSTEM']){?>
                     <div class="actions-panel__col actions-panel__edit" key-action="href"><a href="http://<?=$v_webmail_alias;?>.<?=htmlspecialchars($_GET['domain'])?>/?_user=<?=$key?>@<?=htmlspecialchars($_GET['domain'])?>" target="_blank" title="<?=_('open webmail')?>"><i class="fas fa-envelope-open-text status-icon maroon status-icon dim"></i></a></div>
+                    <?php } ?>
                     <div class="actions-panel__col actions-panel__logs shortcut-enter" key-action="href"><a href="/edit/mail/?domain=<?=htmlspecialchars($_GET['domain'])?>&account=<?=$key?>&token=<?=$_SESSION['token']?>" title="<?=_('Editing Mail Account')?>"><i class="fas fa-pencil-alt status-icon orange status-icon dim"></i></a></div>
 
                     <div class="actions-panel__col actions-panel__suspend shortcut-s" key-action="js">

+ 1 - 1
web/templates/user/list_stats.html

@@ -87,7 +87,7 @@
               </tr>
               <tr>
                 <td>
-                  <div class="l-unit__stat-cols clearfix tiny">
+                <div class="l-unit__stat-cols clearfix tiny" style="<?if ($data[$key]['IP_OWNED'] === '0') { echo 'display: none'; }?>">
                       <div class="text-right">
                         <span style="float: left;font-weight:500;"><?=_('IP Addresses')?>:</span><b><?=$data[$key]['IP_OWNED']?></b> <?=_('IPs')?></span>
                       </div>

Vissa filer visades inte eftersom för många filer har ändrats