Compare commits
43 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
5a27fa7c72 | ||
|
|
c28a0291d7 | ||
|
|
e9ba9e089e | ||
|
|
01b58cf247 | ||
|
|
aa532806d0 | ||
|
|
6ddfe7a378 | ||
|
|
01a2690cf1 | ||
|
|
8692a107ab | ||
|
|
d8b0221c91 | ||
|
|
a6408bf398 | ||
|
|
433c8669f4 | ||
|
|
43aebcccff | ||
|
|
1e22b96d9a | ||
|
|
962abd34c7 | ||
|
|
c6a45789bc | ||
|
|
9d48bbf2f3 | ||
|
|
bdc002978a | ||
|
|
7ce1781f57 | ||
|
|
fde4d53f1d | ||
|
|
862265ab60 | ||
|
|
8ac41a28b9 | ||
|
|
fb4b0e3920 | ||
|
|
49297ee5e2 | ||
|
|
046be275a7 | ||
|
|
5054eec852 | ||
|
|
a7041e0399 | ||
|
|
5f5650f53a | ||
|
|
606f8fe557 | ||
|
|
fd6a0597a6 | ||
|
|
62fa764b4c | ||
|
|
9217d9977f | ||
|
|
31231a5f60 | ||
|
|
4cf8e2f2ea | ||
|
|
fd74671760 | ||
|
|
28d626f882 | ||
|
|
09d69945f1 | ||
|
|
b87e4277f2 | ||
|
|
24efe70335 | ||
|
|
a26b37c270 | ||
|
|
3d67143903 | ||
|
|
96219f406d | ||
|
|
4f5cb34f00 | ||
|
|
d4f3093ae3 |
@@ -112,6 +112,46 @@ return array(
|
||||
'default' => '',
|
||||
'save_method' => 'storeSettingField',
|
||||
),
|
||||
'defaultwebsrverrhandler_enabled' => array(
|
||||
'label' => $lng['serversettings']['defaultwebsrverrhandler_enabled'],
|
||||
'settinggroup' => 'defaultwebsrverrhandler',
|
||||
'varname' => 'enabled',
|
||||
'type' => 'bool',
|
||||
'default' => false,
|
||||
'save_method' => 'storeSettingField',
|
||||
),
|
||||
'defaultwebsrverrhandler_err401' => array(
|
||||
'label' => $lng['serversettings']['defaultwebsrverrhandler_err401'],
|
||||
'settinggroup' => 'defaultwebsrverrhandler',
|
||||
'varname' => 'err401',
|
||||
'type' => 'string',
|
||||
'default' => '',
|
||||
'save_method' => 'storeSettingField',
|
||||
),
|
||||
'defaultwebsrverrhandler_err403' => array(
|
||||
'label' => $lng['serversettings']['defaultwebsrverrhandler_err403'],
|
||||
'settinggroup' => 'defaultwebsrverrhandler',
|
||||
'varname' => 'err403',
|
||||
'type' => 'string',
|
||||
'default' => '',
|
||||
'save_method' => 'storeSettingField',
|
||||
),
|
||||
'defaultwebsrverrhandler_err404' => array(
|
||||
'label' => $lng['serversettings']['defaultwebsrverrhandler_err404'],
|
||||
'settinggroup' => 'defaultwebsrverrhandler',
|
||||
'varname' => 'err404',
|
||||
'type' => 'string',
|
||||
'default' => '',
|
||||
'save_method' => 'storeSettingField',
|
||||
),
|
||||
'defaultwebsrverrhandler_err500' => array(
|
||||
'label' => $lng['serversettings']['defaultwebsrverrhandler_err500'],
|
||||
'settinggroup' => 'defaultwebsrverrhandler',
|
||||
'varname' => 'err500',
|
||||
'type' => 'string',
|
||||
'default' => '',
|
||||
'save_method' => 'storeSettingField',
|
||||
),
|
||||
),
|
||||
),
|
||||
'ssl' => array(
|
||||
|
||||
40
actions/admin/settings/155.ftpserver.php
Normal file
40
actions/admin/settings/155.ftpserver.php
Normal file
@@ -0,0 +1,40 @@
|
||||
<?php
|
||||
|
||||
/**
|
||||
* This file is part of the Froxlor project.
|
||||
* Copyright (c) 2003-2009 the SysCP Team (see authors).
|
||||
* Copyright (c) 2010 the Froxlor Team (see authors).
|
||||
*
|
||||
* For the full copyright and license information, please view the COPYING
|
||||
* file that was distributed with this source code. You can also view the
|
||||
* COPYING file online at http://files.froxlor.org/misc/COPYING.txt
|
||||
*
|
||||
* @copyright (c) the authors
|
||||
* @author Florian Lippert <flo@syscp.org> (2003-2009)
|
||||
* @author Froxlor team <team@froxlor.org> (2010-)
|
||||
* @license GPLv2 http://files.froxlor.org/misc/COPYING.txt
|
||||
* @package Settings
|
||||
* @version $Id: 220.ftpserver.php 1 2010-04-07 10:00:00Z monotek $
|
||||
*/
|
||||
|
||||
return array(
|
||||
'groups' => array(
|
||||
'ftpserver' => array(
|
||||
'title' => $lng['admin']['ftpserversettings'],
|
||||
'fields' => array(
|
||||
'ftpserver' => array(
|
||||
'label' => $lng['admin']['ftpserver'],
|
||||
'settinggroup' => 'system',
|
||||
'varname' => 'ftpserver',
|
||||
'type' => 'option',
|
||||
'default' => 'proftpd',
|
||||
'option_mode' => 'one',
|
||||
'option_options' => array('proftpd' => 'Proftpd', 'pureftpd' => 'Pureftpd'),
|
||||
'save_method' => 'storeSettingField',
|
||||
),
|
||||
),
|
||||
),
|
||||
)
|
||||
);
|
||||
|
||||
?>
|
||||
@@ -59,6 +59,16 @@ return array(
|
||||
'default' => '',
|
||||
'save_method' => 'storeSettingField',
|
||||
),
|
||||
'system_defaultttl' => array(
|
||||
'label' => $lng['serversettings']['defaultttl'],
|
||||
'settinggroup' => 'system',
|
||||
'varname' => 'defaultttl',
|
||||
'type' => 'int',
|
||||
'default' => 604800, /* 1 week */
|
||||
'int_min' => 86400, /* 1 day */
|
||||
'int_max' => 2147483647, /* integer max */
|
||||
'save_method' => 'storeSettingField',
|
||||
),
|
||||
),
|
||||
),
|
||||
),
|
||||
|
||||
@@ -125,6 +125,16 @@ return array(
|
||||
'type' => 'hidden',
|
||||
'default' => '',
|
||||
),
|
||||
'ticket_default_priority' => array(
|
||||
'label' => $lng['serversettings']['ticket']['default_priority'],
|
||||
'settinggroup' => 'ticket',
|
||||
'varname' => 'default_priority',
|
||||
'type' => 'option',
|
||||
'default' => 2,
|
||||
'option_mode' => 'one',
|
||||
'option_options' => array(1 => $lng['ticket']['unf_high'], 2 => $lng['ticket']['unf_normal'], 3 => $lng['ticket']['unf_low']),
|
||||
'save_method' => 'storeSettingField',
|
||||
),
|
||||
),
|
||||
),
|
||||
)
|
||||
|
||||
@@ -100,6 +100,16 @@ return array(
|
||||
'default' => 250,
|
||||
'save_method' => 'storeSettingField',
|
||||
),
|
||||
'system_mod_fcgid_defaultini' => array(
|
||||
'label' => $lng['serversettings']['mod_fcgid']['defaultini'],
|
||||
'settinggroup' => 'system',
|
||||
'varname' => 'mod_fcgid_defaultini',
|
||||
'type' => 'option',
|
||||
'default' => '1',
|
||||
'option_mode' => 'one',
|
||||
'option_options_method' => 'getPhpConfigs',
|
||||
'save_method' => 'storeSettingField',
|
||||
),
|
||||
),
|
||||
),
|
||||
),
|
||||
|
||||
@@ -184,6 +184,11 @@ if($page == 'customers'
|
||||
$db->query("DELETE FROM `" . TABLE_PANEL_TRAFFIC . "` WHERE `customerid`='" . (int)$id . "'");
|
||||
$db->query("DELETE FROM `" . TABLE_MAIL_USERS . "` WHERE `customerid`='" . (int)$id . "'");
|
||||
$db->query("DELETE FROM `" . TABLE_MAIL_VIRTUAL . "` WHERE `customerid`='" . (int)$id . "'");
|
||||
$result = $db->query("SELECT `username` FROM `" . TABLE_FTP_USERS . "` WHERE `customerid`='" . (int)$id . "'");
|
||||
while($row = $db->fetch_array($result))
|
||||
{
|
||||
$db->query("DELETE FROM `" . TABLE_FTP_QUOTATALLIES . "` WHERE `name`='" . $row['username'] . "'");
|
||||
}
|
||||
$db->query("DELETE FROM `" . TABLE_FTP_GROUPS . "` WHERE `customerid`='" . (int)$id . "'");
|
||||
$db->query("DELETE FROM `" . TABLE_FTP_USERS . "` WHERE `customerid`='" . (int)$id . "'");
|
||||
$db->query("DELETE FROM `" . TABLE_MAIL_AUTORESPONDER . "` WHERE `customerid`='" . (int)$id . "'");
|
||||
@@ -592,6 +597,7 @@ if($page == 'customers'
|
||||
inserttask('1');
|
||||
$result = $db->query("INSERT INTO `" . TABLE_FTP_USERS . "` " . "(`customerid`, `username`, `password`, `homedir`, `login_enabled`, `uid`, `gid`) " . "VALUES ('" . (int)$customerid . "', '" . $db->escape($loginname) . "', ENCRYPT('" . $db->escape($password) . "'), '" . $db->escape($documentroot) . "', 'y', '" . (int)$guid . "', '" . (int)$guid . "')");
|
||||
$result = $db->query("INSERT INTO `" . TABLE_FTP_GROUPS . "` " . "(`customerid`, `groupname`, `gid`, `members`) " . "VALUES ('" . (int)$customerid . "', '" . $db->escape($loginname) . "', '" . $db->escape($guid) . "', '" . $db->escape($loginname) . "')");
|
||||
$result = $db->query("INSERT INTO `" . TABLE_FTP_QUOTATALLIES . "` (`name`, `quota_type`, `bytes_in_used`, `bytes_out_used`, `bytes_xfer_used`, `files_in_used`, `files_out_used`, `files_xfer_used`) VALUES ('" . $db->escape($loginname) . "', 'user', '0', '0', '0', '0', '0', '0')");
|
||||
$log->logAction(ADM_ACTION, LOG_NOTICE, "automatically added ftp-account for user '" . $loginname . "'");
|
||||
|
||||
if($createstdsubdomain == '1')
|
||||
|
||||
@@ -306,7 +306,7 @@ if($page == 'domains'
|
||||
}
|
||||
else
|
||||
{
|
||||
$phpsettingid = '1';
|
||||
$phpsettingid = $settings['system']['mod_fcgid_defaultini'];
|
||||
$mod_fcgid_starter = '-1';
|
||||
$mod_fcgid_maxrequests = '-1';
|
||||
}
|
||||
@@ -315,7 +315,7 @@ if($page == 'domains'
|
||||
{
|
||||
$openbasedir = '1';
|
||||
$safemode = '1';
|
||||
$phpsettingid = '1';
|
||||
$phpsettingid = $settings['system']['mod_fcgid_defaultini'];
|
||||
$mod_fcgid_starter = '-1';
|
||||
$mod_fcgid_maxrequests = '-1';
|
||||
}
|
||||
@@ -377,7 +377,8 @@ if($page == 'domains'
|
||||
|
||||
if($aliasdomain != 0)
|
||||
{
|
||||
$aliasdomain_check = $db->query_first('SELECT `id` FROM `' . TABLE_PANEL_DOMAINS . '` `d`,`' . TABLE_PANEL_CUSTOMERS . '` `c` WHERE `d`.`customerid`=\'' . (int)$customerid . '\' AND `d`.`aliasdomain` IS NULL AND `d`.`id`<>`c`.`standardsubdomain` AND `c`.`customerid`=\'' . (int)$customerid . '\' AND `d`.`id`=\'' . (int)$aliasdomain . '\'');
|
||||
// also check ip/port combination to be the same, #176
|
||||
$aliasdomain_check = $db->query_first('SELECT `d`.id` FROM `' . TABLE_PANEL_DOMAINS . '` `d`,`' . TABLE_PANEL_CUSTOMERS . '` `c` WHERE `d`.`customerid`=\'' . (int)$customerid . '\' AND `d`.`aliasdomain` IS NULL AND `d`.`id`<>`c`.`standardsubdomain` AND `c`.`customerid`=\'' . (int)$customerid . '\' AND `d`.`id`=\'' . (int)$aliasdomain . '\' AND `d`.`ipandport` = \''.(int)$ipandport.'\'');
|
||||
}
|
||||
|
||||
if($openbasedir != '1')
|
||||
@@ -563,7 +564,7 @@ if($page == 'domains'
|
||||
$row_ipandport['ip'] = '[' . $row_ipandport['ip'] . ']';
|
||||
}
|
||||
|
||||
$ipsandports.= makeoption($row_ipandport['ip'] . ':' . $row_ipandport['port'], $row_ipandport['id']);
|
||||
$ipsandports.= makeoption($row_ipandport['ip'] . ':' . $row_ipandport['port'], $row_ipandport['id'], $settings['system']['defaultip']);
|
||||
}
|
||||
|
||||
$ssl_ipsandports = '';
|
||||
@@ -608,7 +609,7 @@ if($page == 'domains'
|
||||
|
||||
while($row = $db->fetch_array($configs))
|
||||
{
|
||||
$phpconfigs.= makeoption($row['description'], $row['id'], '1', true, true);
|
||||
$phpconfigs.= makeoption($row['description'], $row['id'], $settings['system']['mod_fcgid_defaultini'], true, true);
|
||||
}
|
||||
|
||||
$isbinddomain = makeyesno('isbinddomain', '1', '0', '1');
|
||||
@@ -890,7 +891,8 @@ if($page == 'domains'
|
||||
|
||||
if($aliasdomain != 0)
|
||||
{
|
||||
$aliasdomain_check = $db->query_first('SELECT `id` FROM `' . TABLE_PANEL_DOMAINS . '` `d`,`' . TABLE_PANEL_CUSTOMERS . '` `c` WHERE `d`.`customerid`=\'' . (int)$result['customerid'] . '\' AND `d`.`aliasdomain` IS NULL AND `d`.`id`<>`c`.`standardsubdomain` AND `c`.`customerid`=\'' . (int)$result['customerid'] . '\' AND `d`.`id`=\'' . (int)$aliasdomain . '\'');
|
||||
// also check ip/port combination to be the same, #176
|
||||
$aliasdomain_check = $db->query_first('SELECT `d`.`id` FROM `' . TABLE_PANEL_DOMAINS . '` `d`,`' . TABLE_PANEL_CUSTOMERS . '` `c` WHERE `d`.`customerid`=\'' . (int)$result['customerid'] . '\' AND `d`.`aliasdomain` IS NULL AND `d`.`id`<>`c`.`standardsubdomain` AND `c`.`customerid`=\'' . (int)$result['customerid'] . '\' AND `d`.`id`=\'' . (int)$aliasdomain . '\' AND `d`.`ipandport` = \''.(int)$ipandport.'\'');
|
||||
}
|
||||
|
||||
if($aliasdomain_check['id'] != $aliasdomain)
|
||||
|
||||
@@ -97,7 +97,7 @@ if($page == 'overview')
|
||||
|
||||
$db->query("INSERT INTO `" . TABLE_PANEL_PHPCONFIGS . "` SET `description` = '" . $db->escape($description) . "', `binary` = '" . $db->escape($binary) . "', `file_extensions` = '" . $db->escape($file_extensions) . "', `mod_fcgid_starter` = '" . $db->escape($mod_fcgid_starter) . "', `mod_fcgid_maxrequests` = '" . $db->escape($mod_fcgid_maxrequests) . "', `phpsettings` = '" . $db->escape($phpsettings) . "'");
|
||||
inserttask('1');
|
||||
$log->logAction(ADM_ACTION, LOG_INFO, "php.ini setting with description '" . $value . "' has been created by '" . $userinfo['loginname'] . "'");
|
||||
$log->logAction(ADM_ACTION, LOG_INFO, "php.ini setting with description '" . $description . "' has been created by '" . $userinfo['loginname'] . "'");
|
||||
redirectTo($filename, Array('page' => $page, 's' => $s));
|
||||
}
|
||||
else
|
||||
|
||||
@@ -102,11 +102,12 @@ if($page == 'tickets'
|
||||
if($_cid != $row['customerid'])
|
||||
{
|
||||
$cid = $row['customerid'];
|
||||
$usr = $db->query_first('SELECT `firstname`, `name`, `loginname` FROM `' . TABLE_PANEL_CUSTOMERS . '`
|
||||
$usr = $db->query_first('SELECT `firstname`, `name`, `company`, `loginname` FROM `' . TABLE_PANEL_CUSTOMERS . '`
|
||||
WHERE `customerid` = "' . (int)$cid . '"');
|
||||
|
||||
if(isset($usr['loginname'])) {
|
||||
$customer = $usr['firstname'] . " " . $usr['name'] . " (" . $usr['loginname'] . ")";
|
||||
$customer = getCorrectFullUserDetails($usr) . ' (' . $usr['loginname'] . ')';
|
||||
//$customer = $usr['firstname'] . " " . $usr['name'] . " (" . $usr['loginname'] . ")";
|
||||
} else {
|
||||
$customer = $lng['ticket']['nonexistingcustomer'];
|
||||
}
|
||||
@@ -197,12 +198,12 @@ if($page == 'tickets'
|
||||
else
|
||||
{
|
||||
$categories = '';
|
||||
$result = $db->query_first('SELECT `id`, `name` FROM `' . TABLE_PANEL_TICKET_CATS . '` WHERE `adminid` = "' . $userinfo['adminid'] . '" ORDER BY `name` ASC');
|
||||
$result = $db->query_first('SELECT `id`, `name` FROM `' . TABLE_PANEL_TICKET_CATS . '` WHERE `adminid` = "' . $userinfo['adminid'] . '" ORDER BY `logicalorder`, `name` ASC');
|
||||
|
||||
if(isset($result['name'])
|
||||
&& $result['name'] != '')
|
||||
{
|
||||
$result2 = $db->query('SELECT `id`, `name` FROM `' . TABLE_PANEL_TICKET_CATS . '` WHERE `adminid` = "' . $userinfo['adminid'] . '" ORDER BY `name` ASC');
|
||||
$result2 = $db->query('SELECT `id`, `name` FROM `' . TABLE_PANEL_TICKET_CATS . '` WHERE `adminid` = "' . $userinfo['adminid'] . '" ORDER BY `logicalorder`, `name` ASC');
|
||||
|
||||
while($row = $db->fetch_array($result2))
|
||||
{
|
||||
@@ -219,27 +220,12 @@ if($page == 'tickets'
|
||||
|
||||
while($row_customer = $db->fetch_array($result_customers))
|
||||
{
|
||||
if($row_customer['company'] == '')
|
||||
{
|
||||
$customers.= makeoption($row_customer['name'] . ', ' . $row_customer['firstname'] . ' (' . $row_customer['loginname'] . ')', $row_customer['customerid']);
|
||||
}
|
||||
else
|
||||
{
|
||||
if($row_customer['name'] != ''
|
||||
&& $row_customer['firstname'] != '')
|
||||
{
|
||||
$customers.= makeoption($row_customer['name'] . ', ' . $row_customer['firstname'] . ' | ' . $row_customer['company'] . ' (' . $row_customer['loginname'] . ')', $row_customer['customerid']);
|
||||
}
|
||||
else
|
||||
{
|
||||
$customers.= makeoption($row_customer['company'] . ' (' . $row_customer['loginname'] . ')', $row_customer['customerid']);
|
||||
}
|
||||
}
|
||||
$customers.= makeoption(getCorrectFullUserDetails($row_customer) . ' (' . $row_customer['loginname'] . ')', $row_customer['customerid']);
|
||||
}
|
||||
|
||||
$priorities = makeoption($lng['ticket']['unf_high'], '1');
|
||||
$priorities.= makeoption($lng['ticket']['unf_normal'], '2');
|
||||
$priorities.= makeoption($lng['ticket']['unf_low'], '3');
|
||||
$priorities = makeoption($lng['ticket']['unf_high'], '1', $settings['ticket']['default_priority']);
|
||||
$priorities.= makeoption($lng['ticket']['unf_normal'], '2', $settings['ticket']['default_priority']);
|
||||
$priorities.= makeoption($lng['ticket']['unf_low'], '3', $settings['ticket']['default_priority']);
|
||||
eval("echo \"" . getTemplate("ticket/tickets_new") . "\";");
|
||||
}
|
||||
}
|
||||
@@ -435,10 +421,11 @@ elseif($page == 'categories'
|
||||
{
|
||||
$log->logAction(ADM_ACTION, LOG_NOTICE, "viewed admin_tickets::categories");
|
||||
$fields = array(
|
||||
'name' => $lng['ticket']['category']
|
||||
'name' => $lng['ticket']['category'],
|
||||
'logicalorder' => $lng['ticket']['logicalorder']
|
||||
);
|
||||
$paging = new paging($userinfo, $db, TABLE_PANEL_TICKET_CATS, $fields, $settings['panel']['paging'], $settings['panel']['natsorting']);
|
||||
$result = $db->query("SELECT `main`.`id`, `main`.`name`, (
|
||||
$result = $db->query("SELECT `main`.`id`, `main`.`name`, `main`.`logicalorder`, (
|
||||
SELECT COUNT(`sub`.`id`) FROM `" . TABLE_PANEL_TICKETS . "` `sub`
|
||||
WHERE `sub`.`category` = `main`.`id`
|
||||
AND `sub`.`answerto` = '0' AND `sub`.`adminid` = '" . $userinfo['adminid'] . "')
|
||||
@@ -481,6 +468,12 @@ elseif($page == 'categories'
|
||||
&& $_POST['send'] == 'send')
|
||||
{
|
||||
$category = validate($_POST['category'], 'category');
|
||||
$order = validate($_POST['logicalorder'], 'logicalorder');
|
||||
|
||||
if($order < 1 || $order >= 1000)
|
||||
{
|
||||
$order = 1;
|
||||
}
|
||||
|
||||
if($category == '')
|
||||
{
|
||||
@@ -488,7 +481,7 @@ elseif($page == 'categories'
|
||||
}
|
||||
else
|
||||
{
|
||||
ticket::addCategory($db, $category, $userinfo['adminid']);
|
||||
ticket::addCategory($db, $category, $userinfo['adminid'], $order);
|
||||
$log->logAction(ADM_ACTION, LOG_INFO, "added ticket-category '" . $category . "'");
|
||||
redirectTo($filename, Array('page' => $page, 's' => $s));
|
||||
}
|
||||
@@ -505,6 +498,12 @@ elseif($page == 'categories'
|
||||
&& $_POST['send'] == 'send')
|
||||
{
|
||||
$category = validate($_POST['category'], 'category');
|
||||
$order = validate($_POST['logicalorder'], 'logicalorder');
|
||||
|
||||
if($order < 1 || $order >= 1000)
|
||||
{
|
||||
$order = 1;
|
||||
}
|
||||
|
||||
if($category == '')
|
||||
{
|
||||
@@ -512,7 +511,7 @@ elseif($page == 'categories'
|
||||
}
|
||||
else
|
||||
{
|
||||
ticket::editCategory($db, $category, $id);
|
||||
ticket::editCategory($db, $category, $id, $order);
|
||||
$log->logAction(ADM_ACTION, LOG_INFO, "edited ticket-category '" . $category . "'");
|
||||
redirectTo($filename, Array('page' => $page, 's' => $s));
|
||||
}
|
||||
@@ -634,14 +633,15 @@ elseif($page == 'archive'
|
||||
if($_cid != $ticket['customerid'])
|
||||
{
|
||||
$cid = $ticket['customerid'];
|
||||
$usr = $db->query_first('SELECT `firstname`, `name`, `loginname` FROM `' . TABLE_PANEL_CUSTOMERS . '`
|
||||
$usr = $db->query_first('SELECT `firstname`, `name`, `company`, `loginname` FROM `' . TABLE_PANEL_CUSTOMERS . '`
|
||||
WHERE `customerid` = "' . (int)$cid . '"');
|
||||
|
||||
if(isset($usr['loginname'])) {
|
||||
$customer = $usr['firstname'] . " " . $usr['name'] . " (" . $usr['loginname'] . ")";
|
||||
$customer = getCorrectFullUserDetails($usr) . ' (' . $usr['loginname'] . ')';
|
||||
} else {
|
||||
$customer = $lng['ticket']['nonexistingcustomer'];
|
||||
}
|
||||
|
||||
eval("\$tickets.=\"" . getTemplate("ticket/tickets_customer") . "\";");
|
||||
}
|
||||
|
||||
@@ -718,18 +718,11 @@ elseif($page == 'archive'
|
||||
}
|
||||
|
||||
$customers = makeoption($lng['ticket']['nocustomer'], '-1', '-1');
|
||||
$result = $db->query_first('SELECT `customerid` FROM `' . TABLE_PANEL_CUSTOMERS . '` ' . ($userinfo['customers_see_all'] ? '' : ' WHERE `adminid` = "' . (int)$userinfo['adminid'] . '" ') . 'ORDER BY `name` ASC');
|
||||
$result_customers = $db->query("SELECT `customerid`, `loginname`, `name`, `firstname`, `company` FROM `" . TABLE_PANEL_CUSTOMERS . "` " . ($userinfo['customers_see_all'] ? '' : " WHERE `adminid` = '" . (int)$userinfo['adminid'] . "' ") . " ORDER BY `name` ASC");
|
||||
|
||||
if(isset($result['customerid'])
|
||||
&& $result['customerid'] != '')
|
||||
while($row_customer = $db->fetch_array($result_customers))
|
||||
{
|
||||
$result2 = $db->query('SELECT `customerid`, `loginname`, `firstname`, `name`
|
||||
FROM `' . TABLE_PANEL_CUSTOMERS . '` ' . ($userinfo['customers_see_all'] ? '' : ' WHERE `adminid` = "' . (int)$userinfo['adminid'] . '" ') . ' ORDER BY `name` ASC');
|
||||
|
||||
while($row = $db->fetch_array($result2))
|
||||
{
|
||||
$customers.= makeoption($row['name'] . ', ' . $row['firstname'] . ' (' . $row['loginname'] . ')', $row['customerid']);
|
||||
}
|
||||
$customers.= makeoption(getCorrectFullUserDetails($row_customer) . ' (' . $row_customer['loginname'] . ')', $row_customer['customerid']);
|
||||
}
|
||||
|
||||
eval("echo \"" . getTemplate("ticket/archive") . "\";");
|
||||
|
||||
@@ -72,7 +72,7 @@ if($page == 'overview')
|
||||
|
||||
include_once './install/updatesql.php';
|
||||
|
||||
$redirect_url = 'admin_index.php';
|
||||
$redirect_url = 'admin_index.php?s=' . $s;
|
||||
eval("echo \"" . getTemplate("update/update_end") . "\";");
|
||||
|
||||
updateCounters();
|
||||
@@ -116,7 +116,7 @@ if($page == 'overview')
|
||||
*/
|
||||
|
||||
$success_message = $lng['update']['noupdatesavail'];
|
||||
$redirect_url = 'admin_index.php';
|
||||
$redirect_url = 'admin_index.php?s=' . $s;
|
||||
eval("echo \"" . getTemplate("update/noupdatesavail") . "\";");
|
||||
}
|
||||
}
|
||||
|
||||
@@ -229,7 +229,8 @@ elseif($page == 'domains')
|
||||
|
||||
if($aliasdomain != 0)
|
||||
{
|
||||
$aliasdomain_check = $db->query_first('SELECT `id` FROM `' . TABLE_PANEL_DOMAINS . '` `d`,`' . TABLE_PANEL_CUSTOMERS . '` `c` WHERE `d`.`customerid`=\'' . (int)$userinfo['customerid'] . '\' AND `d`.`aliasdomain` IS NULL AND `d`.`id`<>`c`.`standardsubdomain` AND `c`.`customerid`=\'' . (int)$userinfo['customerid'] . '\' AND `d`.`id`=\'' . (int)$aliasdomain . '\'');
|
||||
// also check ip/port combination to be the same, #176
|
||||
$aliasdomain_check = $db->query_first('SELECT `id` FROM `' . TABLE_PANEL_DOMAINS . '` `d`,`' . TABLE_PANEL_CUSTOMERS . '` `c` WHERE `d`.`customerid`=\'' . (int)$userinfo['customerid'] . '\' AND `d`.`aliasdomain` IS NULL AND `d`.`id`<>`c`.`standardsubdomain` AND `c`.`customerid`=\'' . (int)$userinfo['customerid'] . '\' AND `d`.`id`=\'' . (int)$aliasdomain . '\' AND `d`.`ipandport` = \''.(int)$domain_check['ipandport'].'\'');
|
||||
}
|
||||
|
||||
if(isset($_POST['url'])
|
||||
@@ -480,7 +481,8 @@ elseif($page == 'domains')
|
||||
{
|
||||
$result['domain'] = $idna_convert->decode($result['domain']);
|
||||
$domains = makeoption($lng['domains']['noaliasdomain'], 0, $result['aliasdomain'], true);
|
||||
$result_domains = $db->query("SELECT `d`.`id`, `d`.`domain` FROM `" . TABLE_PANEL_DOMAINS . "` `d`, `" . TABLE_PANEL_CUSTOMERS . "` `c` WHERE `d`.`aliasdomain` IS NULL AND `d`.`id`<>'" . (int)$result['id'] . "' AND `c`.`standardsubdomain`<>`d`.`id` AND `d`.`customerid`='" . (int)$userinfo['customerid'] . "' AND `c`.`customerid`=`d`.`customerid` ORDER BY `d`.`domain` ASC");
|
||||
// also check ip/port combination to be the same, #176
|
||||
$result_domains = $db->query("SELECT `d`.`id`, `d`.`domain` FROM `" . TABLE_PANEL_DOMAINS . "` `d`, `" . TABLE_PANEL_CUSTOMERS . "` `c` WHERE `d`.`aliasdomain` IS NULL AND `d`.`id`<>'" . (int)$result['id'] . "' AND `c`.`standardsubdomain`<>`d`.`id` AND `d`.`customerid`='" . (int)$userinfo['customerid'] . "' AND `c`.`customerid`=`d`.`customerid` AND `d`.`ipandport` = '".(int)$result['ipandport']."' ORDER BY `d`.`domain` ASC");
|
||||
|
||||
while($row_domain = $db->fetch_array($result_domains))
|
||||
{
|
||||
|
||||
@@ -97,6 +97,11 @@ elseif($page == 'accounts')
|
||||
&& $_POST['send'] == 'send')
|
||||
{
|
||||
$db->query("UPDATE `" . TABLE_FTP_USERS . "` SET `up_count`=`up_count`+'" . (int)$result['up_count'] . "', `up_bytes`=`up_bytes`+'" . (int)$result['up_bytes'] . "', `down_count`=`down_count`+'" . (int)$result['down_count'] . "', `down_bytes`=`down_bytes`+'" . (int)$result['down_bytes'] . "' WHERE `username`='" . $db->escape($userinfo['loginname']) . "'");
|
||||
$result = $db->query("SELECT `username` FROM `" . TABLE_FTP_USERS . "` WHERE `customerid`='" . (int)$userinfo['customerid'] . "' AND `id`='" . (int)$id . "'");
|
||||
while($row = $db->fetch_array($result))
|
||||
{
|
||||
$db->query("DELETE FROM `" . TABLE_FTP_QUOTATALLIES . "` WHERE `name` = '" . $db->escape($row['username']) . "'");
|
||||
}
|
||||
$db->query("DELETE FROM `" . TABLE_FTP_USERS . "` WHERE `customerid`='" . (int)$userinfo['customerid'] . "' AND `id`='" . (int)$id . "'");
|
||||
$log->logAction(USR_ACTION, LOG_INFO, "deleted ftp-account '" . $result['username'] . "'");
|
||||
$db->query("UPDATE `" . TABLE_FTP_GROUPS . "` SET `members`=REPLACE(`members`,'," . $db->escape($result['username']) . "','') WHERE `customerid`='" . (int)$userinfo['customerid'] . "'");
|
||||
@@ -176,6 +181,11 @@ elseif($page == 'accounts')
|
||||
$path = makeCorrectDir($userinfo['documentroot'] . '/' . $path);
|
||||
|
||||
$db->query("INSERT INTO `" . TABLE_FTP_USERS . "` (`customerid`, `username`, `password`, `homedir`, `login_enabled`, `uid`, `gid`) VALUES ('" . (int)$userinfo['customerid'] . "', '" . $db->escape($username) . "', ENCRYPT('" . $db->escape($password) . "'), '" . $db->escape($path) . "', 'y', '" . (int)$userinfo['guid'] . "', '" . (int)$userinfo['guid'] . "')");
|
||||
$result = $db->query("SELECT `bytes_in_used` FROM `" . TABLE_FTP_QUOTATALLIES . "` WHERE `name` = '" . $userinfo['loginname'] . "'");
|
||||
while($row = $db->fetch_array($result))
|
||||
{
|
||||
$db->query("INSERT INTO `" . TABLE_FTP_QUOTATALLIES . "` (`name`, `quota_type`, `bytes_in_used`, `bytes_out_used`, `bytes_xfer_used`, `files_in_used`, `files_out_used`, `files_xfer_used`) VALUES ('" . $db->escape($username) . "', 'user', '" . $db->escape($row[bytes_in_used]) . "', '0', '0', '0', '0', '0')");
|
||||
}
|
||||
$db->query("UPDATE `" . TABLE_FTP_GROUPS . "` SET `members`=CONCAT_WS(',',`members`,'" . $db->escape($username) . "') WHERE `customerid`='" . $userinfo['customerid'] . "' AND `gid`='" . (int)$userinfo['guid'] . "'");
|
||||
$db->query("UPDATE `" . TABLE_PANEL_CUSTOMERS . "` SET `ftps_used`=`ftps_used`+1, `ftp_lastaccountnumber`=`ftp_lastaccountnumber`+1 WHERE `customerid`='" . (int)$userinfo['customerid'] . "'");
|
||||
|
||||
@@ -289,4 +299,4 @@ elseif($page == 'accounts')
|
||||
}
|
||||
}
|
||||
|
||||
?>
|
||||
?>
|
||||
|
||||
@@ -209,12 +209,12 @@ elseif($page == 'tickets')
|
||||
else
|
||||
{
|
||||
$categories = '';
|
||||
$result = $db->query_first('SELECT `id`, `name` FROM `' . TABLE_PANEL_TICKET_CATS . '` ORDER BY `name` ASC');
|
||||
$result = $db->query_first('SELECT `id`, `name` FROM `' . TABLE_PANEL_TICKET_CATS . '` ORDER BY `logicalorder`, `name` ASC');
|
||||
|
||||
if(isset($result['name'])
|
||||
&& $result['name'] != '')
|
||||
{
|
||||
$result2 = $db->query('SELECT `id`, `name` FROM `' . TABLE_PANEL_TICKET_CATS . '` ORDER BY `name` ASC');
|
||||
$result2 = $db->query('SELECT `id`, `name` FROM `' . TABLE_PANEL_TICKET_CATS . '` ORDER BY `logicalorder`, `name` ASC');
|
||||
|
||||
while($row = $db->fetch_array($result2))
|
||||
{
|
||||
@@ -226,9 +226,9 @@ elseif($page == 'tickets')
|
||||
$categories = makeoption($lng['ticket']['no_cat'], '0');
|
||||
}
|
||||
|
||||
$priorities = makeoption($lng['ticket']['unf_high'], '1');
|
||||
$priorities.= makeoption($lng['ticket']['unf_normal'], '2');
|
||||
$priorities.= makeoption($lng['ticket']['unf_low'], '3');
|
||||
$priorities = makeoption($lng['ticket']['unf_high'], '1', $settings['ticket']['default_priority']);
|
||||
$priorities.= makeoption($lng['ticket']['unf_normal'], '2', $settings['ticket']['default_priority']);
|
||||
$priorities.= makeoption($lng['ticket']['unf_low'], '3', $settings['ticket']['default_priority']);
|
||||
$ticketsopen = 0;
|
||||
$opentickets = $db->query_first('SELECT COUNT(`id`) as `count` FROM `' . TABLE_PANEL_TICKETS . '`
|
||||
WHERE `customerid` = "' . $userinfo['customerid'] . '"
|
||||
|
||||
@@ -178,9 +178,18 @@ else
|
||||
FROM `" . TABLE_PANEL_TRAFFIC . "`
|
||||
WHERE `customerid`='" . $userinfo['customerid'] . "'
|
||||
GROUP BY CONCAT(`year`,`month`) ORDER BY CONCAT(`year`,`month`) DESC LIMIT 12");
|
||||
$row = mysql_fetch_row($result);
|
||||
rsort($row);
|
||||
$traf['max'] = ($row[0] > $row[1] ? ($row[0] > $row[2] ? $row[0] : $row[2]) : ($row[1] > $row[2] ? $row[1] : $row[2]));
|
||||
|
||||
$nums = mysql_num_rows($result);
|
||||
if($nums > 0)
|
||||
{
|
||||
$row = mysql_fetch_row($result);
|
||||
rsort($row);
|
||||
$traf['max'] = ($row[0] > $row[1] ? ($row[0] > $row[2] ? $row[0] : $row[2]) : ($row[1] > $row[2] ? $row[1] : $row[2]));
|
||||
} else {
|
||||
// no records yet
|
||||
$traf['max'] = 0;
|
||||
}
|
||||
|
||||
$result = $db->query("SELECT `month`, `year`, SUM(`http`) AS http, SUM(`ftp_up`) AS ftp_up, SUM(`ftp_down`) AS ftp_down, SUM(`mail`) AS mail
|
||||
FROM `" . TABLE_PANEL_TRAFFIC . "` WHERE `customerid` = '" . $userinfo['customerid'] . "'
|
||||
GROUP BY CONCAT(`year`,`month`) ORDER BY CONCAT(`year`,`month`) DESC LIMIT 12");
|
||||
|
||||
@@ -451,7 +451,7 @@ INSERT INTO `panel_settings` (`settingid`, `settinggroup`, `varname`, `value`) V
|
||||
INSERT INTO `panel_settings` (`settingid`, `settinggroup`, `varname`, `value`) VALUES (18, 'system', 'vmail_homedir', '/var/customers/mail/');
|
||||
INSERT INTO `panel_settings` (`settingid`, `settinggroup`, `varname`, `value`) VALUES (19, 'system', 'bindconf_directory', '/etc/bind/');
|
||||
INSERT INTO `panel_settings` (`settingid`, `settinggroup`, `varname`, `value`) VALUES (20, 'system', 'bindreload_command', '/etc/init.d/bind9 reload');
|
||||
INSERT INTO `panel_settings` (`settingid`, `settinggroup`, `varname`, `value`) VALUES (22, 'panel', 'version', '0.9.4-svn2');
|
||||
INSERT INTO `panel_settings` (`settingid`, `settinggroup`, `varname`, `value`) VALUES (22, 'panel', 'version', '0.9.6');
|
||||
INSERT INTO `panel_settings` (`settingid`, `settinggroup`, `varname`, `value`) VALUES (23, 'system', 'hostname', 'SERVERNAME');
|
||||
INSERT INTO `panel_settings` (`settingid`, `settinggroup`, `varname`, `value`) VALUES (24, 'login', 'maxloginattempts', '3');
|
||||
INSERT INTO `panel_settings` (`settingid`, `settinggroup`, `varname`, `value`) VALUES (25, 'login', 'deactivatetime', '900');
|
||||
@@ -559,6 +559,16 @@ INSERT INTO `panel_settings` (`settingid`, `settinggroup`, `varname`, `value`) V
|
||||
INSERT INTO `panel_settings` (`settingid`, `settinggroup`, `varname`, `value`) VALUES (128, 'system', 'stdsubdomain', '');
|
||||
INSERT INTO `panel_settings` (`settingid`, `settinggroup`, `varname`, `value`) VALUES (129, 'system', 'awstats_path', '/usr/bin/');
|
||||
INSERT INTO `panel_settings` (`settingid`, `settinggroup`, `varname`, `value`) VALUES (130, 'system', 'awstats_conf', '/etc/awstats/');
|
||||
INSERT INTO `panel_settings` (`settingid`, `settinggroup`, `varname`, `value`) VALUES (131, 'system', 'defaultttl', '604800');
|
||||
INSERT INTO `panel_settings` (`settingid`, `settinggroup`, `varname`, `value`) VALUES (132, 'defaultwebsrverrhandler', 'enabled', '0');
|
||||
INSERT INTO `panel_settings` (`settingid`, `settinggroup`, `varname`, `value`) VALUES (133, 'defaultwebsrverrhandler', 'err401', '');
|
||||
INSERT INTO `panel_settings` (`settingid`, `settinggroup`, `varname`, `value`) VALUES (134, 'defaultwebsrverrhandler', 'err403', '');
|
||||
INSERT INTO `panel_settings` (`settingid`, `settinggroup`, `varname`, `value`) VALUES (135, 'defaultwebsrverrhandler', 'err404', '');
|
||||
INSERT INTO `panel_settings` (`settingid`, `settinggroup`, `varname`, `value`) VALUES (136, 'defaultwebsrverrhandler', 'err500', '');
|
||||
INSERT INTO `panel_settings` (`settingid`, `settinggroup`, `varname`, `value`) VALUES (137, 'ticket', 'default_priority', '2');
|
||||
INSERT INTO `panel_settings` (`settingid`, `settinggroup`, `varname`, `value`) VALUES (138, 'system', 'mod_fcgid_defaultini', '1');
|
||||
INSERT INTO `panel_settings` (`settingid`, `settinggroup`, `varname`, `value`) VALUES (139, 'system', 'ftpserver', 'proftpd');
|
||||
|
||||
|
||||
# --------------------------------------------------------
|
||||
|
||||
@@ -781,6 +791,7 @@ CREATE TABLE `panel_ticket_categories` (
|
||||
`id` smallint(5) unsigned NOT NULL auto_increment,
|
||||
`name` varchar(60) NOT NULL,
|
||||
`adminid` int(11) NOT NULL,
|
||||
`logicalorder` int(3) NOT NULL default '1',
|
||||
PRIMARY KEY (`id`)
|
||||
) ENGINE=MyISAM;
|
||||
|
||||
@@ -959,3 +970,45 @@ INSERT INTO `cronjobs_run` (`id`, `module`, `cronfile`, `interval`, `isactive`,
|
||||
INSERT INTO `cronjobs_run` (`id`, `module`, `cronfile`, `interval`, `isactive`, `desc_lng_key`) VALUES (6, 'froxlor/core', 'cron_traffic.php', '1 DAY', '1', 'cron_traffic');
|
||||
INSERT INTO `cronjobs_run` (`id`, `module`, `cronfile`, `interval`, `isactive`, `desc_lng_key`) VALUES (7, 'froxlor/ticket', 'cron_used_tickets_reset.php', '1 MONTH', '1', 'cron_ticketsreset');
|
||||
INSERT INTO `cronjobs_run` (`id`, `module`, `cronfile`, `interval`, `isactive`, `desc_lng_key`) VALUES (8, 'froxlor/ticket', 'cron_ticketarchive.php', '1 MONTH', '1', 'cron_ticketarchive');
|
||||
|
||||
# --------------------------------------------------------
|
||||
|
||||
#
|
||||
# Tabellenstruktur fuer Tabelle `ftp_quotalimits`
|
||||
#
|
||||
|
||||
CREATE TABLE IF NOT EXISTS `ftp_quotalimits` (
|
||||
`name` varchar(30) default NULL,
|
||||
`quota_type` enum('user','group','class','all') NOT NULL default 'user',
|
||||
`per_session` enum('false','true') NOT NULL default 'false',
|
||||
`limit_type` enum('soft','hard') NOT NULL default 'hard',
|
||||
`bytes_in_avail` float NOT NULL,
|
||||
`bytes_out_avail` float NOT NULL,
|
||||
`bytes_xfer_avail` float NOT NULL,
|
||||
`files_in_avail` int(10) unsigned NOT NULL,
|
||||
`files_out_avail` int(10) unsigned NOT NULL,
|
||||
`files_xfer_avail` int(10) unsigned NOT NULL
|
||||
) ENGINE=MyISAM;
|
||||
|
||||
#
|
||||
# Dumping data for table `ftp_quotalimits`
|
||||
#
|
||||
|
||||
INSERT INTO `ftp_quotalimits` (`name`, `quota_type`, `per_session`, `limit_type`, `bytes_in_avail`, `bytes_out_avail`, `bytes_xfer_avail`, `files_in_avail`, `files_out_avail`, `files_xfer_avail`) VALUES ('froxlor', 'user', 'false', 'hard', 0, 0, 0, 0, 0, 0);
|
||||
|
||||
# --------------------------------------------------------
|
||||
|
||||
#
|
||||
# Tabellenstruktur fuer Tabelle `ftp_quotatallies`
|
||||
#
|
||||
|
||||
CREATE TABLE IF NOT EXISTS `ftp_quotatallies` (
|
||||
`name` varchar(30) NOT NULL,
|
||||
`quota_type` enum('user','group','class','all') NOT NULL,
|
||||
`bytes_in_used` float NOT NULL,
|
||||
`bytes_out_used` float NOT NULL,
|
||||
`bytes_xfer_used` float NOT NULL,
|
||||
`files_in_used` int(10) unsigned NOT NULL,
|
||||
`files_out_used` int(10) unsigned NOT NULL,
|
||||
`files_xfer_used` int(10) unsigned NOT NULL
|
||||
) ENGINE=MyISAM;
|
||||
|
||||
@@ -503,7 +503,7 @@ if(isset($_POST['installstep'])
|
||||
|
||||
if($result)
|
||||
{
|
||||
$filename = "/tmp/froxlor_backup_" . date(YmdHi) . ".sql";
|
||||
$filename = "/tmp/froxlor_backup_" . date('YmdHi') . ".sql";
|
||||
|
||||
if(is_file("/usr/bin/mysqldump"))
|
||||
{
|
||||
|
||||
@@ -191,7 +191,15 @@ if(isFroxlorVersion('0.9-r1'))
|
||||
$db->query("INSERT INTO `" . TABLE_PANEL_SETTINGS . "` (`settinggroup`, `varname`, `value`) VALUES ('spf', 'use_spf', '0');");
|
||||
$db->query("INSERT INTO `" . TABLE_PANEL_SETTINGS . "` (`settinggroup`, `varname`, `value`) VALUES ('spf', 'spf_entry', '@ IN TXT \"v=spf1 a mx -all\"');");
|
||||
$db->query("UPDATE `" . TABLE_PANEL_SETTINGS . "` SET `varname` = 'froxlor_graphic' WHERE `varname` = 'syscp_graphic'");
|
||||
$settings['admin']['froxlor_graphic'] = $settings['admin']['syscp_graphic'];
|
||||
if(isset($settings['admin']['syscp_graphic'])
|
||||
&& $settings['admin']['syscp_graphic'] != ''
|
||||
){
|
||||
$settings['admin']['froxlor_graphic'] = $settings['admin']['syscp_graphic'];
|
||||
}
|
||||
else
|
||||
{
|
||||
$settings['admin']['froxlor_graphic'] = 'images/header.gif';
|
||||
}
|
||||
|
||||
lastStepStatus(0);
|
||||
|
||||
@@ -466,4 +474,191 @@ if(isFroxlorVersion('0.9.4-svn1'))
|
||||
updateToVersion('0.9.4-svn2');
|
||||
}
|
||||
|
||||
if(isFroxlorVersion('0.9.4-svn2'))
|
||||
{
|
||||
showUpdateStep("Updating from 0.9.4-svn2 to 0.9.5 final");
|
||||
lastStepStatus(0);
|
||||
updateToVersion('0.9.5');
|
||||
}
|
||||
|
||||
if(isFroxlorVersion('0.9.5'))
|
||||
{
|
||||
showUpdateStep("Updating from 0.9.5 to 0.9.6-svn1", false);
|
||||
|
||||
showUpdateStep("Adding time-to-live configuration setting");
|
||||
$db->query("INSERT INTO `" . TABLE_PANEL_SETTINGS . "` (`settinggroup`, `varname`, `value`) VALUES ('system', 'defaultttl', '604800');");
|
||||
lastStepStatus(0);
|
||||
|
||||
showUpdateStep("Updating database table structure for panel_ticket_categories");
|
||||
$db->query("ALTER TABLE `" . TABLE_PANEL_TICKET_CATS . "` ADD `logicalorder` int(3) NOT NULL default '1' AFTER `adminid`;");
|
||||
lastStepStatus(0);
|
||||
|
||||
updateToVersion('0.9.6-svn1');
|
||||
}
|
||||
|
||||
if(isFroxlorVersion('0.9.6-svn1'))
|
||||
{
|
||||
showUpdateStep("Updating from 0.9.6-svn1 to 0.9.6-svn2", false);
|
||||
|
||||
$update_adminmail = isset($_POST['update_adminmail']) ? validate($_POST['update_adminmail'], 'update_adminmail') : false;
|
||||
$do_update = true;
|
||||
|
||||
if($update_adminmail !== false)
|
||||
{
|
||||
showUpdateStep("Checking newly entered admin-mail");
|
||||
if(!PHPMailer::ValidateAddress($update_adminmail))
|
||||
{
|
||||
$do_update = false;
|
||||
lastStepStatus(2, 'E-Mail still not valid, go back and try again');
|
||||
}
|
||||
else
|
||||
{
|
||||
$db->query("UPDATE `" . TABLE_PANEL_SETTINGS . "` SET `value` = '".$db->escape($update_adminmail)."' WHERE `settinggroup` = 'panel' AND `varname` = 'adminmail';");
|
||||
lastStepStatus(0);
|
||||
}
|
||||
}
|
||||
|
||||
if($do_update)
|
||||
{
|
||||
updateToVersion('0.9.6-svn2');
|
||||
}
|
||||
}
|
||||
|
||||
if(isFroxlorVersion('0.9.6-svn2'))
|
||||
{
|
||||
showUpdateStep("Updating from 0.9.6-svn2 to 0.9.6-svn3", false);
|
||||
|
||||
$update_deferr_enable = isset($_POST['update_deferr_enable']) ? true : false;
|
||||
|
||||
$err500 = false;
|
||||
$err401 = false;
|
||||
$err403 = false;
|
||||
$err404 = false;
|
||||
|
||||
showUpdateStep("Adding new webserver configurations to database");
|
||||
if($update_deferr_enable == true)
|
||||
{
|
||||
$db->query("INSERT INTO `" . TABLE_PANEL_SETTINGS . "` (`settinggroup`, `varname`, `value`) VALUES ('defaultwebsrverrhandler', 'enabled', '1');");
|
||||
|
||||
if(isset($_POST['update_deferr_500'])
|
||||
&& trim($_POST['update_deferr_500']) != ''
|
||||
) {
|
||||
$db->query("INSERT INTO `" . TABLE_PANEL_SETTINGS . "` (`settinggroup`, `varname`, `value`) VALUES ('defaultwebsrverrhandler', 'err500', '".$db->escape($_POST['update_deferr_500'])."');");
|
||||
$err500 = true;
|
||||
}
|
||||
|
||||
if(isset($_POST['update_deferr_401'])
|
||||
&& trim($_POST['update_deferr_401']) != ''
|
||||
) {
|
||||
$db->query("INSERT INTO `" . TABLE_PANEL_SETTINGS . "` (`settinggroup`, `varname`, `value`) VALUES ('defaultwebsrverrhandler', 'err500', '".$db->escape($_POST['update_deferr_401'])."');");
|
||||
$err401 = true;
|
||||
}
|
||||
|
||||
if(isset($_POST['update_deferr_403'])
|
||||
&& trim($_POST['update_deferr_403']) != ''
|
||||
) {
|
||||
$db->query("INSERT INTO `" . TABLE_PANEL_SETTINGS . "` (`settinggroup`, `varname`, `value`) VALUES ('defaultwebsrverrhandler', 'err500', '".$db->escape($_POST['update_deferr_403'])."');");
|
||||
$err403 = true;
|
||||
}
|
||||
|
||||
if(isset($_POST['update_deferr_404'])
|
||||
&& trim($_POST['update_deferr_404']) != ''
|
||||
) {
|
||||
$db->query("INSERT INTO `" . TABLE_PANEL_SETTINGS . "` (`settinggroup`, `varname`, `value`) VALUES ('defaultwebsrverrhandler', 'err500', '".$db->escape($_POST['update_deferr_404'])."');");
|
||||
$err404 = true;
|
||||
}
|
||||
}
|
||||
|
||||
if(!$update_deferr_enable) {
|
||||
$db->query("INSERT INTO `" . TABLE_PANEL_SETTINGS . "` (`settinggroup`, `varname`, `value`) VALUES ('defaultwebsrverrhandler', 'enabled', '0');");
|
||||
}
|
||||
if(!$err401) {
|
||||
$db->query("INSERT INTO `" . TABLE_PANEL_SETTINGS . "` (`settinggroup`, `varname`, `value`) VALUES ('defaultwebsrverrhandler', 'err401', '');");
|
||||
}
|
||||
if(!$err403) {
|
||||
$db->query("INSERT INTO `" . TABLE_PANEL_SETTINGS . "` (`settinggroup`, `varname`, `value`) VALUES ('defaultwebsrverrhandler', 'err403', '');");
|
||||
}
|
||||
if(!$err404) {
|
||||
$db->query("INSERT INTO `" . TABLE_PANEL_SETTINGS . "` (`settinggroup`, `varname`, `value`) VALUES ('defaultwebsrverrhandler', 'err404', '');");
|
||||
}
|
||||
if(!$err500) {
|
||||
$db->query("INSERT INTO `" . TABLE_PANEL_SETTINGS . "` (`settinggroup`, `varname`, `value`) VALUES ('defaultwebsrverrhandler', 'err500', '');");
|
||||
}
|
||||
|
||||
lastStepStatus(0);
|
||||
|
||||
updateToVersion('0.9.6-svn3');
|
||||
}
|
||||
|
||||
if(isFroxlorVersion('0.9.6-svn3'))
|
||||
{
|
||||
showUpdateStep("Updating from 0.9.6-svn3 to 0.9.6-svn4", false);
|
||||
|
||||
$update_deftic_priority = isset($_POST['update_deftic_priority']) ? intval($_POST['update_deftic_priority']) : 2;
|
||||
|
||||
showUpdateStep("Setting default support-ticket priority");
|
||||
$db->query("INSERT INTO `" . TABLE_PANEL_SETTINGS . "` (`settinggroup`, `varname`, `value`) VALUES ('ticket', 'default_priority', '".(int)$update_deftic_priority."');");
|
||||
lastStepStatus(0);
|
||||
|
||||
updateToVersion('0.9.6-svn4');
|
||||
}
|
||||
|
||||
if(isFroxlorVersion('0.9.6-svn4'))
|
||||
{
|
||||
showUpdateStep("Updating from 0.9.6-svn4 to 0.9.6-svn5", false);
|
||||
|
||||
$update_defsys_phpconfig = isset($_POST['update_defsys_phpconfig']) ? intval($_POST['update_defsys_phpconfig']) : 1;
|
||||
|
||||
if($update_defsys_phpconfig != 1) {
|
||||
showUpdateStep("Setting default php-configuration to user defined config #".$update_defsys_phpconfig);
|
||||
} else {
|
||||
showUpdateStep("Adding default php-configuration setting to the database");
|
||||
}
|
||||
|
||||
$db->query("INSERT INTO `" . TABLE_PANEL_SETTINGS . "` (`settinggroup`, `varname`, `value`) VALUES ('system', 'mod_fcgid_defaultini', '".(int)$update_defsys_phpconfig."');");
|
||||
lastStepStatus(0);
|
||||
|
||||
updateToVersion('0.9.6-svn5');
|
||||
}
|
||||
|
||||
if(isFroxlorVersion('0.9.6-svn5'))
|
||||
{
|
||||
showUpdateStep("Updating from 0.9.6-svn5 to 0.9.6-svn6", false);
|
||||
|
||||
showUpdateStep("Adding new FTP-quota settings");
|
||||
|
||||
$update_defsys_ftpserver = isset($_POST['update_defsys_ftpserver']) ? intval($_POST['update_defsys_ftpserver']) : 'proftpd';
|
||||
|
||||
// add ftp server setting
|
||||
$db->query("INSERT INTO `panel_settings` SET `settinggroup` = 'system', `varname` = 'ftpserver', `value` = '".$db->escape($update_defsys_ftpserver)."';");
|
||||
|
||||
// add proftpd quota
|
||||
$db->query("CREATE TABLE`ftp_quotalimits` (`name` varchar(30) default NULL, `quota_type` enum('user','group','class','all') NOT NULL default 'user', `per_session` enum('false','true') NOT NULL default 'false', `limit_type` enum('soft','hard') NOT NULL default 'hard', `bytes_in_avail` float NOT NULL, `bytes_out_avail` float NOT NULL, `bytes_xfer_avail` float NOT NULL, `files_in_avail` int(10) unsigned NOT NULL, `files_out_avail` int(10) unsigned NOT NULL, `files_xfer_avail` int(10) unsigned NOT NULL) ENGINE=MyISAM;");
|
||||
|
||||
$db->query("INSERT INTO `ftp_quotalimits` (`name`, `quota_type`, `per_session`, `limit_type`, `bytes_in_avail`, `bytes_out_avail`, `bytes_xfer_avail`, `files_in_avail`, `files_out_avail`, `files_xfer_avail`) VALUES ('froxlor', 'user', 'false', 'hard', 0, 0, 0, 0, 0, 0);");
|
||||
|
||||
$db->query("CREATE TABLE `ftp_quotatallies` (`name` varchar(30) NOT NULL, `quota_type` enum('user','group','class','all') NOT NULL, `bytes_in_used` float NOT NULL, `bytes_out_used` float NOT NULL, `bytes_xfer_used` float NOT NULL, `files_in_used` int(10) unsigned NOT NULL, `files_out_used` int(10) unsigned NOT NULL, `files_xfer_used` int(10) unsigned NOT NULL ) ENGINE=MyISAM;");
|
||||
|
||||
// fill quota tallies
|
||||
$result_ftp_users = $db->query("SELECT username FROM `" . TABLE_FTP_USERS . "` WHERE 1;");
|
||||
|
||||
while($row_ftp_users = $db->fetch_array($result_ftp_users))
|
||||
{
|
||||
$result_ftp_quota = $db->query("SELECT diskspace_used FROM `" . TABLE_PANEL_CUSTOMERS . "` WHERE loginname = SUBSTRING_INDEX('" . $row_ftp_users['username'] . "', '" . $settings['customer']['ftpprefix'] . "', 1);");
|
||||
$row_ftp_quota = mysql_fetch_row($result_ftp_quota);
|
||||
$db->query("INSERT INTO `ftp_quotatallies` (`name`, `quota_type`, `bytes_in_used`, `bytes_out_used`, `bytes_xfer_used`, `files_in_used`, `files_out_used`, `files_xfer_used`) VALUES ('" . $row_ftp_users['username'] . "', 'user', '" . $row_ftp_quota[0] . "'*1024, '0', '0', '0', '0', '0');");
|
||||
}
|
||||
|
||||
lastStepStatus(0);
|
||||
|
||||
updateToVersion('0.9.6-svn6');
|
||||
}
|
||||
|
||||
if(isFroxlorVersion('0.9.6-svn6'))
|
||||
{
|
||||
showUpdateStep("Updating from 0.9.6-svn6 to 0.9.6 final");
|
||||
lastStepStatus(0);
|
||||
updateToVersion('0.9.6');
|
||||
}
|
||||
|
||||
?>
|
||||
|
||||
@@ -46,8 +46,11 @@ function getPreConfig($current_version)
|
||||
|
||||
function versionInUpdate($current_version, $version_to_check)
|
||||
{
|
||||
if (!isFroxlor()) {
|
||||
return true;
|
||||
}
|
||||
$pos_a = strpos($current_version, '-svn');
|
||||
$pos_b = strpos($current_version, '-svn');
|
||||
$pos_b = strpos($version_to_check, '-svn');
|
||||
// if we compare svn-versions, we have to add -svn0 to the version
|
||||
// to compare it correctly
|
||||
if($pos_a === false && $pos_b !== false)
|
||||
|
||||
@@ -26,13 +26,85 @@
|
||||
*/
|
||||
function parseAndOutputPreconfig(&$has_preconfig, &$return, $current_version)
|
||||
{
|
||||
global $settings, $lng;
|
||||
|
||||
if(versionInUpdate($current_version, '0.9.4-svn2'))
|
||||
{
|
||||
$has_preconfig = true;
|
||||
$return .= 'Froxlor now enables the usage of a domain-wildcard entry and subdomains for this domain at the same time (subdomains are parsed before the main-domain vhost container). ';
|
||||
$return .= 'This makes it possible to catch all non-existing subdomains with the main vhost but also have the ability to use subdomains for that domain.<br />';
|
||||
$return .= 'If you would like Froxlor to do so with your domains, the update script can set the correct values for existing domains for you. Note: future domains will have wildcard-entries enabled by default no matter how you decide here.<br /><br />';
|
||||
$return .= '<strong>Do you want to use wildcard-entries for existing domains?:</strong> ';
|
||||
$return .= makeyesno('update_domainwildcardentry', '1', '0', '1').'<br /><br />';
|
||||
$description = 'Froxlor now enables the usage of a domain-wildcard entry and subdomains for this domain at the same time (subdomains are parsed before the main-domain vhost container).';
|
||||
$description.= 'This makes it possible to catch all non-existing subdomains with the main vhost but also have the ability to use subdomains for that domain.<br />';
|
||||
$description.= 'If you would like Froxlor to do so with your domains, the update script can set the correct values for existing domains for you. Note: future domains will have wildcard-entries enabled by default no matter how you decide here.';
|
||||
$question = '<strong>Do you want to use wildcard-entries for existing domains?:</strong> ';
|
||||
$question.= makeyesno('update_domainwildcardentry', '1', '0', '1');
|
||||
|
||||
eval("\$return.=\"" . getTemplate("update/preconfigitem") . "\";");
|
||||
}
|
||||
|
||||
if(versionInUpdate($current_version, '0.9.6-svn2'))
|
||||
{
|
||||
if(!PHPMailer::ValidateAddress($settings['panel']['adminmail']))
|
||||
{
|
||||
$has_preconfig = true;
|
||||
$description = 'Froxlor uses a newer version of the phpMailerClass and determined that your current admin-mail address is invalid.';
|
||||
$question = '<strong>Please specify a new admin-email address:</strong> <input type="text" class="text" name="update_adminmail" value="'.$settings['panel']['adminmail'].'" />';
|
||||
eval("\$return.=\"" . getTemplate("update/preconfigitem") . "\";");
|
||||
}
|
||||
}
|
||||
|
||||
if(versionInUpdate($current_version, '0.9.6-svn3'))
|
||||
{
|
||||
$has_preconfig = true;
|
||||
$description = 'You now have the possibility to define default error-documents for your webserver which replace the default webserver error-messages.';
|
||||
$question = '<strong>Do you want to enable default error-documents?:</strong> ';
|
||||
$question .= makeyesno('update_deferr_enable', '1', '0', '0').'<br /><br />';
|
||||
if($settings['system']['webserver'] == 'apache2')
|
||||
{
|
||||
$question .= 'Path/URL for error 500: <input type="text" class="text" name="update_deferr_500" /><br /><br />';
|
||||
$question .= 'Path/URL for error 401: <input type="text" class="text" name="update_deferr_401" /><br /><br />';
|
||||
$question .= 'Path/URL for error 403: <input type="text" class="text" name="update_deferr_403" /><br /><br />';
|
||||
}
|
||||
$question .= 'Path/URL for error 404: <input type="text" class="text" name="update_deferr_404" />';
|
||||
eval("\$return.=\"" . getTemplate("update/preconfigitem") . "\";");
|
||||
}
|
||||
|
||||
if(versionInUpdate($current_version, '0.9.6-svn4'))
|
||||
{
|
||||
$has_preconfig = true;
|
||||
$description = 'You can define a default support-ticket priority level which is pre-selected for new support-tickets.';
|
||||
$question = '<strong>Which should be the default ticket-priority?:</strong> ';
|
||||
$question .= '<select name="update_deftic_priority">';
|
||||
$priorities = makeoption($lng['ticket']['unf_high'], '1', '2');
|
||||
$priorities.= makeoption($lng['ticket']['unf_normal'], '2', '2');
|
||||
$priorities.= makeoption($lng['ticket']['unf_low'], '3', '2');
|
||||
$question .= $priorities.'</select>';
|
||||
eval("\$return.=\"" . getTemplate("update/preconfigitem") . "\";");
|
||||
}
|
||||
|
||||
if(versionInUpdate($current_version, '0.9.6-svn5'))
|
||||
{
|
||||
$has_preconfig = true;
|
||||
$description = 'If you have more than one PHP-configurations defined in Froxlor you can know set a default one which will be used for every domain.';
|
||||
$question = '<strong>Select default PHP-configuration:</strong> ';
|
||||
$question .= '<select name="update_defsys_phpconfig">';
|
||||
$configs_array = getPhpConfigs();
|
||||
$configs = '';
|
||||
foreach($configs_array as $idx => $desc)
|
||||
{
|
||||
$configs .= makeoption($desc, $idx, '1');
|
||||
}
|
||||
$question .= $configs.'</select>';
|
||||
eval("\$return.=\"" . getTemplate("update/preconfigitem") . "\";");
|
||||
}
|
||||
|
||||
if(versionInUpdate($current_version, '0.9.6-svn6'))
|
||||
{
|
||||
$has_preconfig = true;
|
||||
$description = 'For the new FTP-quota feature, you can now chose the currently used ftpd-software.';
|
||||
$question = '<strong>Used FTPd-software:</strong> ';
|
||||
$question .= '<select name="update_defsys_ftpserver">';
|
||||
$question .= makeoption('ProFTPd', 'proftpd', 'proftpd');
|
||||
$question .= makeoption('PureFTPd', 'pureftpd', 'proftpd');
|
||||
$question .= '</select>';
|
||||
eval("\$return.=\"" . getTemplate("update/preconfigitem") . "\";");
|
||||
}
|
||||
}
|
||||
|
||||
@@ -344,12 +344,19 @@ class ticket
|
||||
* Add a support-categories
|
||||
*/
|
||||
|
||||
static public function addCategory($_db, $_category = null, $_admin = 1)
|
||||
static public function addCategory($_db, $_category = null, $_admin = 1, $_order = 1)
|
||||
{
|
||||
if($_category != null
|
||||
&& $_category != '')
|
||||
{
|
||||
$_db->query('INSERT INTO `' . TABLE_PANEL_TICKET_CATS . '` (`name`, `adminid`) VALUES ("' . $_db->escape($_category) . '", "' . (int)$_admin . '")');
|
||||
if($_order < 1) {
|
||||
$_order = 1;
|
||||
}
|
||||
|
||||
$_db->query('INSERT INTO `' . TABLE_PANEL_TICKET_CATS . '` SET
|
||||
`name` = "' . $_db->escape($_category) . '",
|
||||
`adminid` = "' . (int)$_admin . '",
|
||||
`logicalorder` = "' . (int)$_order . '"');
|
||||
return true;
|
||||
}
|
||||
|
||||
@@ -360,13 +367,19 @@ class ticket
|
||||
* Edit a support-categories
|
||||
*/
|
||||
|
||||
static public function editCategory($_db, $_category = null, $_id = 0)
|
||||
static public function editCategory($_db, $_category = null, $_id = 0, $_order = 1)
|
||||
{
|
||||
if($_category != null
|
||||
&& $_category != ''
|
||||
&& $_id != 0)
|
||||
{
|
||||
$_db->query('UPDATE `' . TABLE_PANEL_TICKET_CATS . '` SET `name` = "' . $_db->escape($_category) . '"
|
||||
if($_order < 1) {
|
||||
$_order = 1;
|
||||
}
|
||||
|
||||
$_db->query('UPDATE `' . TABLE_PANEL_TICKET_CATS . '` SET
|
||||
`name` = "' . $_db->escape($_category) . '",
|
||||
`logicalorder` = "' . (int)$_order . '"
|
||||
WHERE `id` = "' . (int)$_id . '"');
|
||||
return true;
|
||||
}
|
||||
|
||||
@@ -272,10 +272,11 @@ return Array(
|
||||
'label' => 'Awstats',
|
||||
'commands' => Array(
|
||||
'apt-get install awstats',
|
||||
'cp /usr/share/doc/awstats/examples/awstats_buildstaticpages.pl /usr/lib/cgi-bin/'
|
||||
'cp /usr/share/doc/awstats/examples/awstats_buildstaticpages.pl /usr/lib/cgi-bin/',
|
||||
'mv '.makeCorrectFile($settings['system']['awstats_conf'].'/awstats.conf').' '.makeCorrectFile($settings['system']['awstats_conf'].'/awstats.model.conf')
|
||||
),
|
||||
'files' => Array(
|
||||
'etc_awstats.model.conf' => makeCorrectFile($settings['system']['awstats_conf'].'/awstats.conf')
|
||||
'etc_awstats.model.conf' => makeCorrectFile($settings['system']['awstats_conf'].'/awstats.model.conf')
|
||||
),
|
||||
),
|
||||
'libnss' => Array(
|
||||
|
||||
@@ -89,9 +89,48 @@ return Array(
|
||||
'smtp' => Array(
|
||||
'label' => $lng['admin']['configfiles']['smtp'],
|
||||
'daemons' => Array(
|
||||
'postfix' => Array(
|
||||
'label' => 'Postfix',
|
||||
'postfix_courier' => Array(
|
||||
'label' => 'Postfix/Courier',
|
||||
'commands_1' => Array(
|
||||
'echo "mail-mta/postfix -dovecot-sasl sasl" >> /etc/portage/package.use',
|
||||
'emerge -av postfix',
|
||||
'mkdir -p ' . $settings['system']['vmail_homedir'],
|
||||
'chown -R vmail:vmail ' . $settings['system']['vmail_homedir'],
|
||||
'chmod 0750 ' . $settings['system']['vmail_homedir'],
|
||||
'mv /etc/postfix/main.cf /etc/postfix/main.cf.gentoo',
|
||||
'touch /etc/postfix/main.cf',
|
||||
'touch /etc/postfix/mysql-virtual_alias_maps.cf',
|
||||
'touch /etc/postfix/mysql-virtual_mailbox_domains.cf',
|
||||
'touch /etc/postfix/mysql-virtual_mailbox_maps.cf',
|
||||
'touch /etc/sasl2/smtpd.conf',
|
||||
'chown root:root /etc/postfix/main.cf',
|
||||
'chown root:postfix /etc/postfix/mysql-virtual_alias_maps.cf',
|
||||
'chown root:postfix /etc/postfix/mysql-virtual_mailbox_domains.cf',
|
||||
'chown root:postfix /etc/postfix/mysql-virtual_mailbox_maps.cf',
|
||||
'chown root:root /etc/sasl2/smtpd.conf',
|
||||
'chmod 0644 /etc/postfix/main.cf',
|
||||
'chmod 0640 /etc/postfix/mysql-virtual_alias_maps.cf',
|
||||
'chmod 0640 /etc/postfix/mysql-virtual_mailbox_domains.cf',
|
||||
'chmod 0640 /etc/postfix/mysql-virtual_mailbox_maps.cf',
|
||||
'chmod 0600 /etc/sasl2/smtpd.conf',
|
||||
),
|
||||
'files' => Array(
|
||||
'etc_postfix_main.cf' => '/etc/postfix/main.cf',
|
||||
'etc_postfix_mysql-virtual_alias_maps.cf' => '/etc/postfix/mysql-virtual_alias_maps.cf',
|
||||
'etc_postfix_mysql-virtual_mailbox_domains.cf' => '/etc/postfix/mysql-virtual_mailbox_domains.cf',
|
||||
'etc_postfix_mysql-virtual_mailbox_maps.cf' => '/etc/postfix/mysql-virtual_mailbox_maps.cf',
|
||||
'etc_sasl2_smtpd.conf' => '/etc/sasl2/smtpd.conf'
|
||||
),
|
||||
'restart' => Array(
|
||||
'rc-update add postfix default',
|
||||
'/etc/init.d/postfix restart'
|
||||
)
|
||||
),
|
||||
'postfix_dovecot' => Array(
|
||||
'label' => 'Postfix/Dovecot',
|
||||
'commands_1' => Array(
|
||||
'echo "mail-mta/postfix dovecot-sasl -sasl" >> /etc/portage/package.use',
|
||||
'emerge -av postfix',
|
||||
'mkdir -p ' . $settings['system']['vmail_homedir'],
|
||||
'chown -R vmail:vmail ' . $settings['system']['vmail_homedir'],
|
||||
'chmod 0750 ' . $settings['system']['vmail_homedir'],
|
||||
@@ -101,27 +140,23 @@ return Array(
|
||||
'touch /etc/postfix/mysql-virtual_alias_maps.cf',
|
||||
'touch /etc/postfix/mysql-virtual_mailbox_domains.cf',
|
||||
'touch /etc/postfix/mysql-virtual_mailbox_maps.cf',
|
||||
'touch /etc/sasl2/smtpd.conf',
|
||||
'chown root:root /etc/postfix/main.cf',
|
||||
'chown root:root /etc/postfix/master.cf',
|
||||
'chown root:postfix /etc/postfix/mysql-virtual_alias_maps.cf',
|
||||
'chown root:postfix /etc/postfix/mysql-virtual_mailbox_domains.cf',
|
||||
'chown root:postfix /etc/postfix/mysql-virtual_mailbox_maps.cf',
|
||||
'chown root:root /etc/sasl2/smtpd.conf',
|
||||
'chmod 0644 /etc/postfix/main.cf',
|
||||
'chmod 0644 /etc/postfix/master.cf',
|
||||
'chmod 0640 /etc/postfix/mysql-virtual_alias_maps.cf',
|
||||
'chmod 0640 /etc/postfix/mysql-virtual_mailbox_domains.cf',
|
||||
'chmod 0640 /etc/postfix/mysql-virtual_mailbox_maps.cf',
|
||||
'chmod 0600 /etc/sasl2/smtpd.conf',
|
||||
),
|
||||
'files' => Array(
|
||||
'etc_postfix_main.cf' => '/etc/postfix/main.cf',
|
||||
'etc_postfix_master.cf' => '/etc/postfix/master.cf',
|
||||
'etc_postfix_mysql-virtual_alias_maps.cf' => '/etc/postfix/mysql-virtual_alias_maps.cf',
|
||||
'etc_postfix_mysql-virtual_mailbox_domains.cf' => '/etc/postfix/mysql-virtual_mailbox_domains.cf',
|
||||
'etc_postfix_mysql-virtual_mailbox_maps.cf' => '/etc/postfix/mysql-virtual_mailbox_maps.cf',
|
||||
'etc_sasl2_smtpd.conf' => '/etc/sasl2/smtpd.conf'
|
||||
'etc_postfix_mysql-virtual_mailbox_maps.cf' => '/etc/postfix/mysql-virtual_mailbox_maps.cf'
|
||||
),
|
||||
'restart' => Array(
|
||||
'rc-update add postfix default',
|
||||
|
||||
@@ -95,30 +95,26 @@ return Array(
|
||||
'smtp' => Array(
|
||||
'label' => $lng['admin']['configfiles']['smtp'],
|
||||
'daemons' => Array(
|
||||
'postfix' => Array(
|
||||
'label' => 'Postfix',
|
||||
'commands_1' => Array(
|
||||
'mkdir -p /etc/postfix/sasl',
|
||||
'postfix_courier' => Array(
|
||||
'label' => 'Postfix/Courier',
|
||||
'commands' => Array(
|
||||
'apt-get install postfix postfix-mysql libsasl2-2 libsasl2-modules libsasl2-modules-sql',
|
||||
'mkdir -p /var/spool/postfix/etc/pam.d',
|
||||
'mkdir -p /var/spool/postfix/var/run/mysqld',
|
||||
'groupadd -g ' . $settings['system']['vmail_gid'] . ' vmail',
|
||||
'useradd -u ' . $settings['system']['vmail_uid'] . ' -g vmail vmail',
|
||||
'mkdir -p ' . $settings['system']['vmail_homedir'],
|
||||
'chown -R vmail:vmail ' . $settings['system']['vmail_homedir'],
|
||||
'mv /etc/postfix/main.cf /etc/postfix/main.cf.ubuntu',
|
||||
'touch /etc/postfix/main.cf',
|
||||
'touch /etc/postfix/mysql-virtual_alias_maps.cf',
|
||||
'touch /etc/postfix/mysql-virtual_mailbox_domains.cf',
|
||||
'touch /etc/postfix/mysql-virtual_mailbox_maps.cf',
|
||||
'touch /etc/postfix/sasl/smtpd.conf',
|
||||
'chown root:root /etc/postfix/main.cf',
|
||||
'chown root:root /etc/postfix/master.cf',
|
||||
'chown root:postfix /etc/postfix/mysql-virtual_alias_maps.cf',
|
||||
'chown root:postfix /etc/postfix/mysql-virtual_mailbox_domains.cf',
|
||||
'chown root:postfix /etc/postfix/mysql-virtual_mailbox_maps.cf',
|
||||
'chown root:root /etc/postfix/sasl/smtpd.conf',
|
||||
'chmod 0644 /etc/postfix/main.cf',
|
||||
'chmod 0644 /etc/postfix/master.cf',
|
||||
'chmod 0640 /etc/postfix/mysql-virtual_alias_maps.cf',
|
||||
'chmod 0640 /etc/postfix/mysql-virtual_mailbox_domains.cf',
|
||||
'chmod 0640 /etc/postfix/mysql-virtual_mailbox_maps.cf',
|
||||
@@ -126,7 +122,6 @@ return Array(
|
||||
),
|
||||
'files' => Array(
|
||||
'etc_postfix_main.cf' => '/etc/postfix/main.cf',
|
||||
'etc_postfix_master.cf' => '/etc/postfix/master.cf',
|
||||
'etc_postfix_mysql-virtual_alias_maps.cf' => '/etc/postfix/mysql-virtual_alias_maps.cf',
|
||||
'etc_postfix_mysql-virtual_mailbox_domains.cf' => '/etc/postfix/mysql-virtual_mailbox_domains.cf',
|
||||
'etc_postfix_mysql-virtual_mailbox_maps.cf' => '/etc/postfix/mysql-virtual_mailbox_maps.cf',
|
||||
@@ -137,6 +132,42 @@ return Array(
|
||||
'newaliases'
|
||||
)
|
||||
),
|
||||
'postfix_dovecot' => Array(
|
||||
'label' => 'Postfix/Dovecot',
|
||||
'commands' => Array(
|
||||
'apt-get install postfix postfix-mysql',
|
||||
'mkdir -p /var/spool/postfix/etc/pam.d',
|
||||
'mkdir -p /var/spool/postfix/var/run/mysqld',
|
||||
'groupadd -g ' . $settings['system']['vmail_gid'] . ' vmail',
|
||||
'useradd -u ' . $settings['system']['vmail_uid'] . ' -g vmail vmail',
|
||||
'mkdir -p ' . $settings['system']['vmail_homedir'],
|
||||
'chown -R vmail:vmail ' . $settings['system']['vmail_homedir'],
|
||||
'touch /etc/postfix/mysql-virtual_alias_maps.cf',
|
||||
'touch /etc/postfix/mysql-virtual_mailbox_domains.cf',
|
||||
'touch /etc/postfix/mysql-virtual_mailbox_maps.cf',
|
||||
'chown root:root /etc/postfix/main.cf',
|
||||
'chown root:root /etc/postfix/master.cf',
|
||||
'chown root:postfix /etc/postfix/mysql-virtual_alias_maps.cf',
|
||||
'chown root:postfix /etc/postfix/mysql-virtual_mailbox_domains.cf',
|
||||
'chown root:postfix /etc/postfix/mysql-virtual_mailbox_maps.cf',
|
||||
'chmod 0644 /etc/postfix/main.cf',
|
||||
'chmod 0644 /etc/postfix/master.cf',
|
||||
'chmod 0640 /etc/postfix/mysql-virtual_alias_maps.cf',
|
||||
'chmod 0640 /etc/postfix/mysql-virtual_mailbox_domains.cf',
|
||||
'chmod 0640 /etc/postfix/mysql-virtual_mailbox_maps.cf',
|
||||
),
|
||||
'files' => Array(
|
||||
'etc_postfix_main.cf' => '/etc/postfix/main.cf',
|
||||
'etc_postfix_master.cf' => '/etc/postfix/master.cf',
|
||||
'etc_postfix_mysql-virtual_alias_maps.cf' => '/etc/postfix/mysql-virtual_alias_maps.cf',
|
||||
'etc_postfix_mysql-virtual_mailbox_domains.cf' => '/etc/postfix/mysql-virtual_mailbox_domains.cf',
|
||||
'etc_postfix_mysql-virtual_mailbox_maps.cf' => '/etc/postfix/mysql-virtual_mailbox_maps.cf'
|
||||
),
|
||||
'restart' => Array(
|
||||
'/etc/init.d/postfix restart',
|
||||
'newaliases'
|
||||
)
|
||||
),
|
||||
'postfix_mxaccess' => Array(
|
||||
'label' => 'Postfix MX-Access (anti spam)',
|
||||
'files' => Array(
|
||||
@@ -266,10 +297,11 @@ return Array(
|
||||
'label' => 'Awstats',
|
||||
'commands' => Array(
|
||||
'apt-get install awstats',
|
||||
'cp /usr/share/doc/awstats/examples/awstats_buildstaticpages.pl /usr/lib/cgi-bin/'
|
||||
'cp /usr/share/doc/awstats/examples/awstats_buildstaticpages.pl /usr/lib/cgi-bin/',
|
||||
'mv '.makeCorrectFile($settings['system']['awstats_conf'].'/awstats.conf').' '.makeCorrectFile($settings['system']['awstats_conf'].'/awstats.model.conf')
|
||||
),
|
||||
'files' => Array(
|
||||
'etc_awstats.model.conf' => makeCorrectFile($settings['system']['awstats_conf'].'/awstats.conf')
|
||||
'etc_awstats.model.conf' => makeCorrectFile($settings['system']['awstats_conf'].'/awstats.model.conf')
|
||||
),
|
||||
),
|
||||
'libnss' => Array(
|
||||
|
||||
@@ -96,11 +96,10 @@ return Array(
|
||||
'smtp' => Array(
|
||||
'label' => $lng['admin']['configfiles']['smtp'],
|
||||
'daemons' => Array(
|
||||
'postfix' => Array(
|
||||
'label' => 'Postfix',
|
||||
'postfix_courier' => Array(
|
||||
'label' => 'Postfix/Courier',
|
||||
'commands' => Array(
|
||||
'apt-get install postfix postfix-mysql libsasl2-2 libsasl2-modules libsasl2-modules-sql',
|
||||
'mkdir -p /etc/postfix/sasl',
|
||||
'mkdir -p /var/spool/postfix/etc/pam.d',
|
||||
'mkdir -p /var/spool/postfix/var/run/mysqld',
|
||||
'groupadd -g ' . $settings['system']['vmail_gid'] . ' vmail',
|
||||
@@ -112,13 +111,11 @@ return Array(
|
||||
'touch /etc/postfix/mysql-virtual_mailbox_maps.cf',
|
||||
'touch /etc/postfix/sasl/smtpd.conf',
|
||||
'chown root:root /etc/postfix/main.cf',
|
||||
'chown root:root /etc/postfix/master.cf',
|
||||
'chown root:postfix /etc/postfix/mysql-virtual_alias_maps.cf',
|
||||
'chown root:postfix /etc/postfix/mysql-virtual_mailbox_domains.cf',
|
||||
'chown root:postfix /etc/postfix/mysql-virtual_mailbox_maps.cf',
|
||||
'chown root:root /etc/postfix/sasl/smtpd.conf',
|
||||
'chmod 0644 /etc/postfix/main.cf',
|
||||
'chmod 0644 /etc/postfix/master.cf',
|
||||
'chmod 0640 /etc/postfix/mysql-virtual_alias_maps.cf',
|
||||
'chmod 0640 /etc/postfix/mysql-virtual_mailbox_domains.cf',
|
||||
'chmod 0640 /etc/postfix/mysql-virtual_mailbox_maps.cf',
|
||||
@@ -126,7 +123,6 @@ return Array(
|
||||
),
|
||||
'files' => Array(
|
||||
'etc_postfix_main.cf' => '/etc/postfix/main.cf',
|
||||
'etc_postfix_master.cf' => '/etc/postfix/master.cf',
|
||||
'etc_postfix_mysql-virtual_alias_maps.cf' => '/etc/postfix/mysql-virtual_alias_maps.cf',
|
||||
'etc_postfix_mysql-virtual_mailbox_domains.cf' => '/etc/postfix/mysql-virtual_mailbox_domains.cf',
|
||||
'etc_postfix_mysql-virtual_mailbox_maps.cf' => '/etc/postfix/mysql-virtual_mailbox_maps.cf',
|
||||
@@ -137,6 +133,42 @@ return Array(
|
||||
'newaliases'
|
||||
)
|
||||
),
|
||||
'postfix_dovecot' => Array(
|
||||
'label' => 'Postfix/Dovecot',
|
||||
'commands' => Array(
|
||||
'apt-get install postfix postfix-mysql',
|
||||
'mkdir -p /var/spool/postfix/etc/pam.d',
|
||||
'mkdir -p /var/spool/postfix/var/run/mysqld',
|
||||
'groupadd -g ' . $settings['system']['vmail_gid'] . ' vmail',
|
||||
'useradd -u ' . $settings['system']['vmail_uid'] . ' -g vmail vmail',
|
||||
'mkdir -p ' . $settings['system']['vmail_homedir'],
|
||||
'chown -R vmail:vmail ' . $settings['system']['vmail_homedir'],
|
||||
'touch /etc/postfix/mysql-virtual_alias_maps.cf',
|
||||
'touch /etc/postfix/mysql-virtual_mailbox_domains.cf',
|
||||
'touch /etc/postfix/mysql-virtual_mailbox_maps.cf',
|
||||
'chown root:root /etc/postfix/main.cf',
|
||||
'chown root:root /etc/postfix/master.cf',
|
||||
'chown root:postfix /etc/postfix/mysql-virtual_alias_maps.cf',
|
||||
'chown root:postfix /etc/postfix/mysql-virtual_mailbox_domains.cf',
|
||||
'chown root:postfix /etc/postfix/mysql-virtual_mailbox_maps.cf',
|
||||
'chmod 0644 /etc/postfix/main.cf',
|
||||
'chmod 0644 /etc/postfix/master.cf',
|
||||
'chmod 0640 /etc/postfix/mysql-virtual_alias_maps.cf',
|
||||
'chmod 0640 /etc/postfix/mysql-virtual_mailbox_domains.cf',
|
||||
'chmod 0640 /etc/postfix/mysql-virtual_mailbox_maps.cf',
|
||||
),
|
||||
'files' => Array(
|
||||
'etc_postfix_main.cf' => '/etc/postfix/main.cf',
|
||||
'etc_postfix_master.cf' => '/etc/postfix/master.cf',
|
||||
'etc_postfix_mysql-virtual_alias_maps.cf' => '/etc/postfix/mysql-virtual_alias_maps.cf',
|
||||
'etc_postfix_mysql-virtual_mailbox_domains.cf' => '/etc/postfix/mysql-virtual_mailbox_domains.cf',
|
||||
'etc_postfix_mysql-virtual_mailbox_maps.cf' => '/etc/postfix/mysql-virtual_mailbox_maps.cf'
|
||||
),
|
||||
'restart' => Array(
|
||||
'/etc/init.d/postfix restart',
|
||||
'newaliases'
|
||||
)
|
||||
),
|
||||
'postfix_mxaccess' => Array(
|
||||
'label' => 'Postfix MX-Access (anti spam)',
|
||||
'files' => Array(
|
||||
@@ -273,10 +305,11 @@ return Array(
|
||||
'label' => 'Awstats',
|
||||
'commands' => Array(
|
||||
'apt-get install awstats',
|
||||
'cp /usr/share/doc/awstats/examples/awstats_buildstaticpages.pl /usr/lib/cgi-bin/'
|
||||
'cp /usr/share/doc/awstats/examples/awstats_buildstaticpages.pl /usr/lib/cgi-bin/',
|
||||
'mv '.makeCorrectFile($settings['system']['awstats_conf'].'/awstats.conf').' '.makeCorrectFile($settings['system']['awstats_conf'].'/awstats.model.conf')
|
||||
),
|
||||
'files' => Array(
|
||||
'etc_awstats.model.conf' => makeCorrectFile($settings['system']['awstats_conf'].'/awstats.conf')
|
||||
'etc_awstats.model.conf' => makeCorrectFile($settings['system']['awstats_conf'].'/awstats.model.conf')
|
||||
),
|
||||
),
|
||||
'libnss' => Array(
|
||||
|
||||
@@ -153,10 +153,11 @@ return Array(
|
||||
'awstats' => Array(
|
||||
'label' => 'Awstats',
|
||||
'commands' => Array(
|
||||
'awstats_configure.pl'
|
||||
'awstats_configure.pl',
|
||||
makeCorrectFile($settings['system']['awstats_conf'].'/awstats.conf').' '.makeCorrectFile($settings['system']['awstats_conf'].'/awstats.model.conf')
|
||||
),
|
||||
'files' => Array(
|
||||
'etc_awstats.model.conf' => makeCorrectFile($settings['system']['awstats_conf'].'/awstats.conf')
|
||||
'etc_awstats.model.conf' => makeCorrectFile($settings['system']['awstats_conf'].'/awstats.model.conf')
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
@@ -27,7 +27,7 @@
|
||||
* @author Florian Lippert <flo@syscp.org>
|
||||
*/
|
||||
|
||||
function isConfigDir($dir)
|
||||
function isConfigDir($dir, $ifexists = false)
|
||||
{
|
||||
if(file_exists($dir))
|
||||
{
|
||||
@@ -42,9 +42,16 @@ function isConfigDir($dir)
|
||||
}
|
||||
else
|
||||
{
|
||||
if(substr($dir, -1) == '/')
|
||||
if(!$ifexists)
|
||||
{
|
||||
$returnval = true;
|
||||
if(substr($dir, -1) == '/')
|
||||
{
|
||||
$returnval = true;
|
||||
}
|
||||
else
|
||||
{
|
||||
$returnval = false;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
|
||||
41
lib/functions/froxlor/function.getPhpConfigs.php
Normal file
41
lib/functions/froxlor/function.getPhpConfigs.php
Normal file
@@ -0,0 +1,41 @@
|
||||
<?php
|
||||
|
||||
/**
|
||||
* This file is part of the Froxlor project.
|
||||
* Copyright (c) 2010 the Froxlor Team (see authors).
|
||||
*
|
||||
* For the full copyright and license information, please view the COPYING
|
||||
* file that was distributed with this source code. You can also view the
|
||||
* COPYING file online at http://files.froxlor.org/misc/COPYING.txt
|
||||
*
|
||||
* @copyright (c) the authors
|
||||
* @author Froxlor team <team@froxlor.org> (2010-)
|
||||
* @license GPLv2 http://files.froxlor.org/misc/COPYING.txt
|
||||
* @package Functions
|
||||
* @version $Id$
|
||||
*/
|
||||
|
||||
/**
|
||||
* returns an array for the settings-array
|
||||
*
|
||||
* @return array
|
||||
*/
|
||||
function getPhpConfigs()
|
||||
{
|
||||
global $db;
|
||||
|
||||
$query = 'SELECT * FROM `' . TABLE_PANEL_PHPCONFIGS . '` ';
|
||||
$result = $db->query($query);
|
||||
$configs_array = array();
|
||||
|
||||
while($row = $db->fetch_array($result))
|
||||
{
|
||||
if(!isset($configs_array[$row['id']])
|
||||
&& !in_array($row['id'], $configs_array))
|
||||
{
|
||||
$configs_array[$row['id']] = html_entity_decode($row['description']);
|
||||
}
|
||||
}
|
||||
|
||||
return $configs_array;
|
||||
}
|
||||
@@ -43,7 +43,7 @@ function validateDomain($domainname)
|
||||
if(version_compare("5.2.13", PHP_VERSION, "=")
|
||||
|| version_compare("5.3.2", PHP_VERSION, "="))
|
||||
{
|
||||
$pattern = '/^([a-z0-9]([a-z0-9\-]{0,61}[a-z0-9])?\.)+[a-z]{2,6}$/i';
|
||||
$pattern = '/^http:\/\/([a-z0-9]([a-z0-9\-]{0,61}[a-z0-9])?\.)+[a-z]{2,6}$/i';
|
||||
if(preg_match($pattern, $domainname_tmp))
|
||||
{
|
||||
return $domainname;
|
||||
|
||||
@@ -29,44 +29,56 @@
|
||||
function validateUrl($url)
|
||||
{
|
||||
if(strtolower(substr($url, 0, 7)) != "http://"
|
||||
&& strtolower(substr($url, 0, 8)) != "https://")
|
||||
&& strtolower(substr($url, 0, 8)) != "https://")
|
||||
{
|
||||
$url = 'http://' . $url;
|
||||
}
|
||||
|
||||
if(filter_var($url, FILTER_VALIDATE_URL, FILTER_FLAG_SCHEME_REQUIRED) !== false)
|
||||
if(version_compare("5.2.13", PHP_VERSION, "=")
|
||||
|| version_compare("5.3.2", PHP_VERSION, "="))
|
||||
{
|
||||
return true;
|
||||
$pattern = '/^https?:\/\/([a-z0-9]([a-z0-9\-]{0,61}[a-z0-9])?\.)+[a-z]{2,6}$/i';
|
||||
if(preg_match($pattern, $url))
|
||||
{
|
||||
return true;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
if(strtolower(substr($url, 0, 7)) == "http://"
|
||||
|| strtolower(substr($url, 0, 8)) == "https://")
|
||||
if(filter_var($url, FILTER_VALIDATE_URL, FILTER_FLAG_SCHEME_REQUIRED) !== false)
|
||||
{
|
||||
if(strtolower(substr($url, 0, 7)) == "http://")
|
||||
{
|
||||
$ip = strtolower(substr($url, 7));
|
||||
}
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
if(strtolower(substr($url, 0, 8)) == "https://")
|
||||
{
|
||||
$ip = strtolower(substr($url, 8));
|
||||
}
|
||||
// not an fqdn
|
||||
if(strtolower(substr($url, 0, 7)) == "http://"
|
||||
|| strtolower(substr($url, 0, 8)) == "https://")
|
||||
{
|
||||
if(strtolower(substr($url, 0, 7)) == "http://")
|
||||
{
|
||||
$ip = strtolower(substr($url, 7));
|
||||
}
|
||||
|
||||
$ip = substr($ip, 0, strpos($ip, '/'));
|
||||
if(strtolower(substr($url, 0, 8)) == "https://")
|
||||
{
|
||||
$ip = strtolower(substr($url, 8));
|
||||
}
|
||||
|
||||
if(validate_ip($ip, true) !== false)
|
||||
{
|
||||
return true;
|
||||
}
|
||||
else
|
||||
{
|
||||
return false;
|
||||
}
|
||||
$ip = substr($ip, 0, strpos($ip, '/'));
|
||||
|
||||
if(validate_ip($ip, true) !== false)
|
||||
{
|
||||
return true;
|
||||
}
|
||||
else
|
||||
{
|
||||
return false;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
22
lib/init.php
22
lib/init.php
@@ -158,7 +158,15 @@ $settings = loadSettings($settings_data, $db);
|
||||
if(!isset($settings['admin']['froxlor_graphic'])
|
||||
|| $settings['admin']['froxlor_graphic'] == ''
|
||||
) {
|
||||
$settings['admin']['froxlor_graphic'] = ($settings['admin']['syscp_graphic'] != '') ? $settings['admin']['syscp_graphic'] : 'images/header.gif';
|
||||
if(isset($settings['admin']['syscp_graphic'])
|
||||
&& $settings['admin']['syscp_graphic'] != ''
|
||||
){
|
||||
$settings['admin']['froxlor_graphic'] = $settings['admin']['syscp_graphic'];
|
||||
}
|
||||
else
|
||||
{
|
||||
$settings['admin']['froxlor_graphic'] = 'images/header.gif';
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -414,12 +422,14 @@ if($page == '')
|
||||
/**
|
||||
* Initialize the mailingsystem
|
||||
*/
|
||||
|
||||
$mail = new PHPMailer();
|
||||
// set return-to address and custom sender-name, see #76
|
||||
$mail->SetFrom($settings['panel']['adminmail'], $settings['panel']['adminmail_defname']);
|
||||
if ($settings['panel']['adminmail_return'] != '') {
|
||||
$mail->AddReplyTo($settings['panel']['adminmail_return'], $settings['panel']['adminmail_defname']);
|
||||
if(PHPMailer::ValidateAddress($settings['panel']['adminmail']) !== false)
|
||||
{
|
||||
// set return-to address and custom sender-name, see #76
|
||||
$mail->SetFrom($settings['panel']['adminmail'], $settings['panel']['adminmail_defname']);
|
||||
if ($settings['panel']['adminmail_return'] != '') {
|
||||
$mail->AddReplyTo($settings['panel']['adminmail_return'], $settings['panel']['adminmail_defname']);
|
||||
}
|
||||
}
|
||||
|
||||
?>
|
||||
|
||||
@@ -19,6 +19,8 @@
|
||||
|
||||
define('TABLE_FTP_GROUPS', 'ftp_groups');
|
||||
define('TABLE_FTP_USERS', 'ftp_users');
|
||||
define('TABLE_FTP_QUOTALIMITS', 'ftp_quotalimits');
|
||||
define('TABLE_FTP_QUOTATALLIES', 'ftp_quotatallies');
|
||||
define('TABLE_MAIL_USERS', 'mail_users');
|
||||
define('TABLE_MAIL_VIRTUAL', 'mail_virtual');
|
||||
define('TABLE_PANEL_ADMINS', 'panel_admins');
|
||||
@@ -68,7 +70,7 @@ define('PACKAGE_ENABLED', 2);
|
||||
|
||||
// VERSION INFO
|
||||
|
||||
$version = '0.9.4-svn2';
|
||||
$version = '0.9.6';
|
||||
$dbversion = '2';
|
||||
$branding = '';
|
||||
|
||||
|
||||
@@ -227,7 +227,7 @@ $lng['error']['wwwnotallowed'] = 'www is not allowed for subdomains.';
|
||||
$lng['error']['subdomainiswrong'] = 'The subdomain %s contains invalid characters.';
|
||||
$lng['error']['domaincantbeempty'] = 'The domain-name can not be empty.';
|
||||
$lng['error']['domainexistalready'] = 'The domain %s already exists.';
|
||||
$lng['error']['domainisaliasorothercustomer'] = 'The selected alias domain is either itself an alias domain or belongs to another customer.';
|
||||
$lng['error']['domainisaliasorothercustomer'] = 'The selected alias domain is either itself an alias domain, has a different ip/port combination or belongs to another customer.';
|
||||
$lng['error']['emailexistalready'] = 'The e-mail-Address %s already exists.';
|
||||
$lng['error']['maindomainnonexist'] = 'The main-domain %s does not exist.';
|
||||
$lng['error']['destinationnonexist'] = 'Please create your forwarder in the field \'Destination\'.';
|
||||
@@ -1347,7 +1347,7 @@ $lng['cron']['changewarning'] = 'Changing these values can have a negative cause
|
||||
$lng['serversettings']['stdsubdomainhost']['title'] = 'Customer standard subdomain';
|
||||
$lng['serversettings']['stdsubdomainhost']['description'] = 'What hostname should be used to create standard subdomains for customer. If empty, the system-hostname is used.';
|
||||
|
||||
// ADDED IN FROXLOR 0.9.4-1
|
||||
// ADDED IN FROXLOR 0.9.4-svn1
|
||||
$lng['ftp']['account_edit'] = 'Edit ftp account';
|
||||
$lng['ftp']['editpassdescription'] = 'Set new password or leave blank for no change.';
|
||||
$lng['mysql']['sendinfomail'] = 'Send data via email to me';
|
||||
@@ -1362,4 +1362,33 @@ $lng['admin']['configfiles']['compactoverview'] = 'Compact-overview';
|
||||
$lng['admin']['lastlogin_succ'] = 'Last login';
|
||||
$lng['panel']['neverloggedin'] = 'No login yet';
|
||||
|
||||
// ADDED IN FROXLOR 0.9.6-svn1
|
||||
$lng['serversettings']['defaultttl'] = 'Domain TTL for bind in seconds (default \'604800\' = 1 week)';
|
||||
$lng['ticket']['logicalorder'] = 'Logical order';
|
||||
$lng['ticket']['orderdesc'] = 'Here you can define your own logical order for the ticket-category. Use 1 - 999, lower numbers are displayed first.';
|
||||
|
||||
// ADDED IN FROXLOR 0.9.6-svn3
|
||||
$lng['serversettings']['defaultwebsrverrhandler_enabled'] = 'Enable default errordocuments for all customers';
|
||||
$lng['serversettings']['defaultwebsrverrhandler_err401']['title'] = 'File/URL for error 401';
|
||||
$lng['serversettings']['defaultwebsrverrhandler_err401']['description'] = '<div style="color:red">'.$lng['panel']['not_supported'].'lighttpd</div>';
|
||||
$lng['serversettings']['defaultwebsrverrhandler_err403']['title'] = 'File/URL for error 403';
|
||||
$lng['serversettings']['defaultwebsrverrhandler_err403']['description'] = '<div style="color:red">'.$lng['panel']['not_supported'].'lighttpd</div>';
|
||||
$lng['serversettings']['defaultwebsrverrhandler_err404'] = 'File/URL for error 404';
|
||||
$lng['serversettings']['defaultwebsrverrhandler_err500']['title'] = 'File/URL for error 500';
|
||||
$lng['serversettings']['defaultwebsrverrhandler_err500']['description'] = '<div style="color:red">'.$lng['panel']['not_supported'].'lighttpd</div>';
|
||||
|
||||
// ADDED IN FROXLOR 0.9.6-svn4
|
||||
$lng['serversettings']['ticket']['default_priority'] = 'Default support-ticket priority';
|
||||
|
||||
// ADDED IN FROXLOR 0.9.6-svn5
|
||||
$lng['serversettings']['mod_fcgid']['defaultini'] = 'Default PHP configuration for new domains';
|
||||
|
||||
// ADDED IN FROXLOR 0.9.6-svn6
|
||||
$lng['admin']['ftpserver'] = 'FTP Server';
|
||||
$lng['admin']['ftpserversettings'] = 'FTP Server settings';
|
||||
$lng['serversettings']['ftpserver']['desc'] = 'If pureftpd is selected the .ftpquota files for user quotas are created and updated daily';
|
||||
|
||||
// CHANGED IN FROXLOR 0.9.6-svn6
|
||||
$lng['serversettings']['ftpprefix']['description'] = 'Which prefix should ftp accounts have?<br/><b>If you change this you also have to change the Quota SQL Query in your FTP Server config file in case you use it!</b> ';
|
||||
|
||||
?>
|
||||
|
||||
@@ -227,7 +227,7 @@ $lng['error']['wwwnotallowed'] = 'Ihre Subdomain darf nicht www heissen.';
|
||||
$lng['error']['subdomainiswrong'] = 'Die Subdomain %s enthält ungültige Zeichen.';
|
||||
$lng['error']['domaincantbeempty'] = 'Der Domain-Name darf nicht leer sein.';
|
||||
$lng['error']['domainexistalready'] = 'Die Domain %s existiert bereits.';
|
||||
$lng['error']['domainisaliasorothercustomer'] = 'Die ausgewählte Aliasdomain ist entweder selber eine Aliasdomain oder gehört zu einem anderen Kunden.';
|
||||
$lng['error']['domainisaliasorothercustomer'] = 'Die ausgewählte Aliasdomain ist entweder selber eine Aliasdomain, hat nicht die gleiche IP/Port Kombination oder gehört zu einem anderen Kunden.';
|
||||
$lng['error']['emailexistalready'] = 'Die E-Mail-Adresse %s existiert bereits.';
|
||||
$lng['error']['maindomainnonexist'] = 'Die Haupt-Domain %s existiert nicht.';
|
||||
$lng['error']['destinationnonexist'] = 'Bitte geben Sie Ihre Weiterleitungsadresse im Feld \'Nach\' ein.';
|
||||
@@ -1327,7 +1327,7 @@ $lng['cron']['changewarning'] = 'Änderungen an diesen Werten kann einen neg
|
||||
$lng['serversettings']['stdsubdomainhost']['title'] = 'Kunden Standard-Subdomain';
|
||||
$lng['serversettings']['stdsubdomainhost']['description'] = 'Welcher Hostname soll für das Erstellen der Kunden-Standard-Subdomain verwendet werden? Falls leer wird der System-Hostname verwendet.';
|
||||
|
||||
// ADDED IN FROXLOR 0.9.4-1
|
||||
// ADDED IN FROXLOR 0.9.4-svn1
|
||||
$lng['ftp']['account_edit'] = 'FTP Konto bearbeiten';
|
||||
$lng['ftp']['editpassdescription'] = 'Neues Passwort setzen oder leer für keine Änderung.';
|
||||
$lng['mysql']['sendinfomail'] = 'Daten per E-Mail an mich senden';
|
||||
@@ -1337,6 +1337,7 @@ $lng['customer']['mysql_add']['infomail_body']['main'] = "Hallo {CUST_NAME},\n\n
|
||||
$lng['error']['domains_cantdeletedomainwithapsinstances'] = 'Sie können keine Domain löschen, die noch von APS Paketen verwendet wird. Löschen Sie zuerst alle installierten APS Pakete dieser Domain.';
|
||||
$lng['serversettings']['awstats_path'] = 'Pfad zu AWStats \'awstats_buildstaticpages.pl\'';
|
||||
$lng['serversettings']['awstats_conf'] = 'AWStats Konfigurations-Pfad';
|
||||
$lng['error']['overviewsettingoptionisnotavalidfield'] = 'Hoppla, ein Feld, dass als Option in der Konfigurationsübersicht angezeigt werden soll, hat nicht den erwarteten Wert. Sie können den Entwicklern die Schuld geben. Dies sollte nicht passieren!';
|
||||
$lng['admin']['configfiles']['compactoverview'] = 'Kompakt-Übersicht';
|
||||
|
||||
$lng['mysql']['mysql_server'] = 'MySQL-Server';
|
||||
@@ -1357,4 +1358,33 @@ $lng['success']['settingssaved'] = 'Die Einstellungen wurden erfolgreich gespeic
|
||||
$lng['admin']['lastlogin_succ'] = 'Letzte Anmeldung';
|
||||
$lng['panel']['neverloggedin'] = 'Keine Anmeldung bisher';
|
||||
|
||||
// ADDED IN FROXLOR 0.9.6-svn1
|
||||
$lng['serversettings']['defaultttl'] = 'Domain TTL für Bind in Sekunden (default \'604800\' = 1 Woche)';
|
||||
$lng['ticket']['logicalorder'] = 'Logische Sortierung';
|
||||
$lng['ticket']['orderdesc'] = 'Hier kann eine logische Sortierung für die Ticket-Kategorien angegeben werden. Benutze 1 - 999, niedrigere Zahlen werden zuerst angezeigt.';
|
||||
|
||||
// ADDED IN FROXLOR 0.9.6-svn3
|
||||
$lng['serversettings']['defaultwebsrverrhandler_enabled'] = 'Verwende Standard-Fehlerdokumente für alle Kunden';
|
||||
$lng['serversettings']['defaultwebsrverrhandler_err401']['title'] = 'Datei/URL für Fehler 401';
|
||||
$lng['serversettings']['defaultwebsrverrhandler_err401']['description'] = '<div style="color:red">'.$lng['panel']['not_supported'].'lighttpd</div>';
|
||||
$lng['serversettings']['defaultwebsrverrhandler_err403']['title'] = 'Datei/URL für Fehler 403';
|
||||
$lng['serversettings']['defaultwebsrverrhandler_err403']['description'] = '<div style="color:red">'.$lng['panel']['not_supported'].'lighttpd</div>';
|
||||
$lng['serversettings']['defaultwebsrverrhandler_err404'] = 'Datei/URL für Fehler 404';
|
||||
$lng['serversettings']['defaultwebsrverrhandler_err500']['title'] = 'Datei/URL für Fehler 500';
|
||||
$lng['serversettings']['defaultwebsrverrhandler_err500']['description'] = '<div style="color:red">'.$lng['panel']['not_supported'].'lighttpd</div>';
|
||||
|
||||
// ADDED IN FROXLOR 0.9.6-svn4
|
||||
$lng['serversettings']['ticket']['default_priority'] = 'Voreingestellte Support-Ticket Priorität';
|
||||
|
||||
// ADDED IN FROXLOR 0.9.6-svn5
|
||||
$lng['serversettings']['mod_fcgid']['defaultini'] = 'Voreingestellte PHP Konfiguration für neue Domains';
|
||||
|
||||
// ADDED IN FROXLOR 0.9.6-svn5
|
||||
$lng['admin']['ftpserver'] = 'FTP Server';
|
||||
$lng['admin']['ftpserversettings'] = 'FTP Server Einstellungen';
|
||||
$lng['serversettings']['ftpserver']['desc'] = 'Wenn pureftpd ausgewählt ist, werden die .ftpquota Dateien für das Quota erstellt und täglich aktualisiert.';
|
||||
|
||||
// CHANGED IN FROXLOR 0.9.6-svn5
|
||||
$lng['serversettings']['ftpprefix']['description'] = 'Welchen Prefix sollen die FTP-Benutzerkonten haben?<br/><b>Wenn du das änderst, musst du auch das Quota SQL Query in der FTP Server Config ändern, solltest du FTP-Quotas benutzen!</b>';
|
||||
|
||||
?>
|
||||
|
||||
@@ -75,7 +75,7 @@ $lng['customer']['unlimited'] = 'bez limitu';
|
||||
* Customermenue
|
||||
*/
|
||||
|
||||
$lng['menue']['main']['main'] = 'Panel g<EFBFBD><EFBFBD>wny';
|
||||
$lng['menue']['main']['main'] = 'Panel gł<EFBFBD>wny';
|
||||
$lng['menue']['main']['changepassword'] = 'Zmień hasło';
|
||||
$lng['menue']['main']['changelanguage'] = 'Zmień język';
|
||||
$lng['menue']['email']['email'] = 'E-mail';
|
||||
@@ -218,16 +218,16 @@ $lng['error']['errordocpathdupe'] = 'Option for path %s already exists';
|
||||
$lng['error']['adduserfirst'] = 'Proszę w pierwszej kolejności utworzyć klienta';
|
||||
$lng['error']['domainalreadyexists'] = 'The domain %s is already assigned to a customer';
|
||||
$lng['error']['nolanguageselect'] = 'Nie wybrano języka.';
|
||||
$lng['error']['nosubjectcreate'] = 'Musisz zdefiniowa<EFBFBD> temat dla szablonu e-maila.';
|
||||
$lng['error']['nomailbodycreate'] = 'Musisz zdefiniowa<EFBFBD> tre<72><65> dla szablonu e-maila.';
|
||||
$lng['error']['templatenotfound'] = 'Szablon nie zosta<EFBFBD> znaleziony.';
|
||||
$lng['error']['nosubjectcreate'] = 'Musisz zdefiniować temat dla szablonu e-maila.';
|
||||
$lng['error']['nomailbodycreate'] = 'Musisz zdefiniować treść dla szablonu e-maila.';
|
||||
$lng['error']['templatenotfound'] = 'Szablon nie został znaleziony.';
|
||||
$lng['error']['alltemplatesdefined'] = 'You cant define more templates, all languages are supported already.';
|
||||
$lng['error']['wwwnotallowed'] = 'www is not allowed for subdomains.';
|
||||
$lng['error']['subdomainiswrong'] = 'The subdomain %s contains invalid characters.';
|
||||
$lng['error']['domaincantbeempty'] = 'Nazwa domeny nie mo<EFBFBD>e by<62> pusta.';
|
||||
$lng['error']['domainexistalready'] = 'Domena %s ju<EFBFBD> istnieje.';
|
||||
$lng['error']['domaincantbeempty'] = 'Nazwa domeny nie może być pusta.';
|
||||
$lng['error']['domainexistalready'] = 'Domena %s już istnieje.';
|
||||
$lng['error']['domainisaliasorothercustomer'] = 'The selected alias domain is either itself an alias domain or belongs to another customer.';
|
||||
$lng['error']['emailexistalready'] = 'Adres e-mail %s ju<EFBFBD> istnieje.';
|
||||
$lng['error']['emailexistalready'] = 'Adres e-mail %s już istnieje.';
|
||||
$lng['error']['maindomainnonexist'] = 'The main-domain %s does not exist.';
|
||||
$lng['error']['destinationnonexist'] = 'Please create your forwarder in the field \'Destination\'.';
|
||||
$lng['error']['destinationalreadyexistasmail'] = 'The forwarder to %s already exists as active EMail-Address.';
|
||||
@@ -242,7 +242,7 @@ $lng['error']['domainname'] = $lng['domains']['domainname'];
|
||||
$lng['question']['question'] = 'Pytanie bezpieczeństwa';
|
||||
$lng['question']['admin_customer_reallydelete'] = 'Czy na pewno chcesz skasować klienta %s? Ta czynność jest niedwracalna!';
|
||||
$lng['question']['admin_domain_reallydelete'] = 'Czy na pewno chcesz skasować domenę %s?';
|
||||
$lng['question']['admin_domain_reallydisablesecuritysetting'] = 'Czy na pewno chcesz deaktywowa<EFBFBD> ustawienia bezpiecze<EFBFBD>stwa (OpenBasedir i/lub SafeMode)?';
|
||||
$lng['question']['admin_domain_reallydisablesecuritysetting'] = 'Czy na pewno chcesz deaktywować ustawienia bezpieczeństwa (OpenBasedir i/lub SafeMode)?';
|
||||
$lng['question']['admin_admin_reallydelete'] = 'Czy na pewno chcesz skasować administratora %s? Wszystcy klienci i domeny zostaną przypisani do Twojego konta.';
|
||||
$lng['question']['admin_template_reallydelete'] = 'Czy na pewno chcesz skasować szablon \'%s\'?';
|
||||
$lng['question']['domains_reallydelete'] = 'Czy na pewno chcesz skasować domenę %s?';
|
||||
@@ -254,6 +254,7 @@ $lng['question']['extras_reallydelete_pathoptions'] = 'Do you really want to del
|
||||
$lng['question']['ftp_reallydelete'] = 'Czy na pewno chcesz skasować konto FTP %s?';
|
||||
$lng['question']['mysql_reallydelete'] = 'Czy na pewno chcesz skasować bazę danych %s? Ta czynność jest niedwracalna!';
|
||||
$lng['question']['admin_configs_reallyrebuild'] = 'Czy napewno chcesz przebudować pliki konfiguracyjne Apacha i Binda?';
|
||||
$lng['question']['admin_customer_alsoremovefiles'] = 'Remove user files too?';
|
||||
|
||||
/**
|
||||
* Mails
|
||||
@@ -328,17 +329,17 @@ $lng['admin']['webserver'] = 'Webserwer';
|
||||
*/
|
||||
|
||||
$lng['serversettings']['session_timeout']['title'] = 'Timeout Sesji';
|
||||
$lng['serversettings']['session_timeout']['description'] = 'jak d<EFBFBD>ugo u<>ytkownik mo<6D>e by<62> nieaktywny przed automatycznym wylogowaniem (sekund)?';
|
||||
$lng['serversettings']['session_timeout']['description'] = 'jak długo użytkownik może być nieaktywny przed automatycznym wylogowaniem (sekund)?';
|
||||
$lng['serversettings']['accountprefix']['title'] = 'Customer prefix';
|
||||
$lng['serversettings']['accountprefix']['description'] = 'Which prefix should customer accounts have?';
|
||||
$lng['serversettings']['mysqlprefix']['title'] = 'SQL Prefix';
|
||||
$lng['serversettings']['mysqlprefix']['description'] = 'Which prefix should mysql accounts have?';
|
||||
$lng['serversettings']['ftpprefix']['title'] = 'FTP Prefix';
|
||||
$lng['serversettings']['ftpprefix']['description'] = 'Which prefix should ftp accounts have?';
|
||||
$lng['serversettings']['documentroot_prefix']['title'] = 'Home directory';
|
||||
$lng['serversettings']['documentroot_prefix']['description'] = 'Where should all home directories be stored?';
|
||||
$lng['serversettings']['logfiles_directory']['title'] = 'Logfiles directory';
|
||||
$lng['serversettings']['logfiles_directory']['description'] = 'Where should all log files be stored?';
|
||||
$lng['serversettings']['documentroot_prefix']['title'] = 'Katalog domowy';
|
||||
$lng['serversettings']['documentroot_prefix']['description'] = 'Gdzie powinny być przechowywane wszystkie katalogi domowe?';
|
||||
$lng['serversettings']['logfiles_directory']['title'] = 'Katalog z logami';
|
||||
$lng['serversettings']['logfiles_directory']['description'] = 'Gdzie powinny być przechowywane wszystkie logi?';
|
||||
$lng['serversettings']['ipaddress']['title'] = 'Adres IP';
|
||||
$lng['serversettings']['ipaddress']['description'] = 'Jaki jest adres IP tego serwera?';
|
||||
$lng['serversettings']['hostname']['title'] = 'Hostname';
|
||||
@@ -356,20 +357,20 @@ $lng['serversettings']['vmail_uid']['description'] = 'Which UserID should mails
|
||||
$lng['serversettings']['vmail_gid']['title'] = 'Mails-GID';
|
||||
$lng['serversettings']['vmail_gid']['description'] = 'Which GroupID should mails have?';
|
||||
$lng['serversettings']['vmail_homedir']['title'] = 'Katalog domowy e-maili';
|
||||
$lng['serversettings']['vmail_homedir']['description'] = 'Gdzie maj<EFBFBD> by<62> sk<73>adowane wiadomo<EFBFBD>ci e-mail?';
|
||||
$lng['serversettings']['vmail_homedir']['description'] = 'Gdzie mają być składowane wiadomości e-mail?';
|
||||
$lng['serversettings']['adminmail']['title'] = 'Nadawca';
|
||||
$lng['serversettings']['adminmail']['description'] = 'Jaki jest adres nadawcy dla wiadomo<EFBFBD>ci wysy<EFBFBD>anych z panelu?';
|
||||
$lng['serversettings']['adminmail']['description'] = 'Jaki jest adres nadawcy dla wiadomości wysyłanych z panelu?';
|
||||
$lng['serversettings']['phpmyadmin_url']['title'] = 'URL do phpMyAdmina';
|
||||
$lng['serversettings']['phpmyadmin_url']['description'] = 'What\'s the URL to phpMyAdmin? (has to start with http(s)://)';
|
||||
$lng['serversettings']['webmail_url']['title'] = 'WebMail URL';
|
||||
$lng['serversettings']['webmail_url']['description'] = 'What\'s the URL to WebMail? (has to start with http(s)://)';
|
||||
$lng['serversettings']['webftp_url']['title'] = 'WebFTP URL';
|
||||
$lng['serversettings']['webftp_url']['description'] = 'What\'s the URL to WebFTP? (has to start with http(s)://)';
|
||||
$lng['serversettings']['language']['description'] = 'What\'s your standard server language?';
|
||||
$lng['serversettings']['phpmyadmin_url']['description'] = 'Jaki jest adres URL do phpMyAdmina? (Musi się rozpoczynać do http(s)://)';
|
||||
$lng['serversettings']['webmail_url']['title'] = 'URL do WebMaila';
|
||||
$lng['serversettings']['webmail_url']['description'] = 'Jaki jest adres URL do WebMaila? (Musi się rozpoczynać do http(s)://)';
|
||||
$lng['serversettings']['webftp_url']['title'] = 'URL do WebFTPa';
|
||||
$lng['serversettings']['webftp_url']['description'] = 'Jaki jest adres URL do WebFTPa? (Musi się rozpoczynać do http(s)://)';
|
||||
$lng['serversettings']['language']['description'] = 'Jaki jest standardowy język serwera?';
|
||||
$lng['serversettings']['maxloginattempts']['title'] = 'Max Login Attempts';
|
||||
$lng['serversettings']['maxloginattempts']['description'] = 'Maximum login attempts after which the account gets deactivated.';
|
||||
$lng['serversettings']['deactivatetime']['title'] = 'Czas zablokowania';
|
||||
$lng['serversettings']['deactivatetime']['description'] = 'Czas (sek.) zablokowania dost<EFBFBD>pu do konta po nieudanym logowaniu.';
|
||||
$lng['serversettings']['deactivatetime']['description'] = 'Czas (sek.) zablokowania dostępu do konta po nieudanym logowaniu.';
|
||||
$lng['serversettings']['pathedit']['title'] = 'Type of path input';
|
||||
$lng['serversettings']['pathedit']['description'] = 'Should a path be selected by a dropdown menu or by an input field?';
|
||||
$lng['serversettings']['nameservers']['title'] = 'Serwery Nazw (Nameserwery)';
|
||||
@@ -381,7 +382,7 @@ $lng['serversettings']['mxservers']['description'] = 'A comma seperated list con
|
||||
* CHANGED BETWEEN 1.2.12 and 1.2.13
|
||||
*/
|
||||
|
||||
$lng['mysql']['description'] = 'W tym miejscu mo<EFBFBD>esz tworzy<EFBFBD> i zmienia<EFBFBD> Twoje bazy MySQL.<br />The changes are made instantly and the database can be used immediately.<br />At the menu on the left side you find the tool phpMyAdmin with which you can easily administer your database.<br /><br />To use your databases in your own php-scripts use the following settings: (The data in <i>italics</i> have to be changed into the equivalents you typed in!)<br />Hostname: <b><SQL_HOST></b><br />Username: <b><i>Databasename</i></b><br />Password: <b><i>the password you\'ve chosen</i></b><br />Database: <b><i>Databasename</i></b>';
|
||||
$lng['mysql']['description'] = 'W tym miejscu możesz tworzyć i zmieniać Twoje bazy MySQL.<br />The changes are made instantly and the database can be used immediately.<br />At the menu on the left side you find the tool phpMyAdmin with which you can easily administer your database.<br /><br />To use your databases in your own php-scripts use the following settings: (The data in <i>italics</i> have to be changed into the equivalents you typed in!)<br />Hostname: <b><SQL_HOST></b><br />Username: <b><i>Databasename</i></b><br />Password: <b><i>the password you\'ve chosen</i></b><br />Database: <b><i>Databasename</i></b>';
|
||||
|
||||
/**
|
||||
* ADDED BETWEEN 1.2.12 and 1.2.13
|
||||
@@ -395,9 +396,9 @@ $lng['error']['cantdeletesystemip'] = 'You cannot delete the last system IP, eit
|
||||
$lng['error']['myipaddress'] = '\'IP\'';
|
||||
$lng['error']['myport'] = '\'Port\'';
|
||||
$lng['error']['myipdefault'] = 'You need to select an IP/Port combination that should become default.';
|
||||
$lng['error']['myipnotdouble'] = 'Kombinacja IP/Port ju<EFBFBD> istnieje.';
|
||||
$lng['error']['myipnotdouble'] = 'Kombinacja IP/Port już istnieje.';
|
||||
$lng['error']['admin_domain_emailsystemhostname'] = 'Sorry. You can not use the Server Hostname as email domain';
|
||||
$lng['question']['admin_ip_reallydelete'] = 'Czy na pewno chcesz skasowa<EFBFBD> adres IP %s?';
|
||||
$lng['question']['admin_ip_reallydelete'] = 'Czy na pewno chcesz skasować adres IP %s?';
|
||||
$lng['admin']['ipsandports']['ipsandports'] = 'IP i Porty';
|
||||
$lng['admin']['ipsandports']['add'] = 'Dodaj IP/Port';
|
||||
$lng['admin']['ipsandports']['edit'] = 'Edytuj IP/Port';
|
||||
@@ -533,7 +534,7 @@ $lng['admin']['configfiles']['choosedaemon'] = '-- Wybierz daemona --';
|
||||
// ADDED IN 1.2.16-svn10
|
||||
|
||||
$lng['serversettings']['ftpdomain']['title'] = 'konta FTP @domena';
|
||||
$lng['serversettings']['ftpdomain']['description'] = 'Klienci mog<EFBFBD> tworzy<EFBFBD> konta FTP uzytkownik@domenaklienta?';
|
||||
$lng['serversettings']['ftpdomain']['description'] = 'Klienci mogą tworzyć konta FTP uzytkownik@domenaklienta?';
|
||||
$lng['panel']['back'] = 'Back';
|
||||
|
||||
// ADDED IN 1.2.16-svn12
|
||||
@@ -581,9 +582,9 @@ $lng['admin']['ipsandports']['create_vhostcontainer_servername_statement'] = 'Cr
|
||||
$lng['admin']['webalizersettings'] = 'Usttawienia Webalizera';
|
||||
$lng['admin']['webalizer']['normal'] = 'Normalny';
|
||||
$lng['admin']['webalizer']['quiet'] = 'Cichy';
|
||||
$lng['admin']['webalizer']['veryquiet'] = 'Bez danych wyj<EFBFBD>cia';
|
||||
$lng['serversettings']['webalizer_quiet']['title'] = 'Dane wyj<EFBFBD>cia Webalizera';
|
||||
$lng['serversettings']['webalizer_quiet']['description'] = 'Gadatliwo<EFBFBD><EFBFBD> programu Webalizer';
|
||||
$lng['admin']['webalizer']['veryquiet'] = 'Bez danych wyjścia';
|
||||
$lng['serversettings']['webalizer_quiet']['title'] = 'Dane wyjścia Webalizera';
|
||||
$lng['serversettings']['webalizer_quiet']['description'] = 'Gadatliwość programu Webalizer';
|
||||
|
||||
// ADDED IN 1.2.18-svn3
|
||||
|
||||
@@ -596,7 +597,7 @@ $lng['menue']['ticket']['archive'] = 'Archiwum zgłoszeń';
|
||||
$lng['ticket']['description'] = 'Here you can send help-requests to your responsible administrator.<br />Notifications will be sent via e-mail.';
|
||||
$lng['ticket']['ticket_new'] = 'Utw<74>rz nowe zgłoszenie';
|
||||
$lng['ticket']['ticket_reply'] = 'Odpowiedź na zgłoszenie';
|
||||
$lng['ticket']['ticket_reopen'] = 'Ponownie otw<74>rz zg<EFBFBD>oszenie';
|
||||
$lng['ticket']['ticket_reopen'] = 'Ponownie otw<74>rz zgłoszenie';
|
||||
$lng['ticket']['ticket_newcateory'] = 'Utw<74>rz nową kategorię';
|
||||
$lng['ticket']['ticket_editcateory'] = 'Edytuj kategorię';
|
||||
$lng['ticket']['ticket_view'] = 'View ticketcourse';
|
||||
@@ -626,7 +627,7 @@ $lng['ticket']['reopen'] = 'Ponownie otw
|
||||
$lng['ticket']['archive'] = 'Zarchiwizuj';
|
||||
$lng['ticket']['ticket_delete'] = 'Kasuj zgłoszenie';
|
||||
$lng['ticket']['lastarchived'] = 'Recently archived tickets';
|
||||
$lng['ticket']['archivedtime'] = 'Archived';
|
||||
$lng['ticket']['archivedtime'] = 'Zarchiwizowano';
|
||||
$lng['ticket']['open'] = 'Otwarte';
|
||||
$lng['ticket']['wait_reply'] = 'czeka na odpowiedz';
|
||||
$lng['ticket']['replied'] = 'Replied';
|
||||
@@ -634,9 +635,9 @@ $lng['ticket']['closed'] = 'Zamknięte';
|
||||
$lng['ticket']['staff'] = 'Dział pomocy technicznej';
|
||||
$lng['ticket']['customer'] = 'Klient';
|
||||
$lng['ticket']['old_tickets'] = 'Ticket messages';
|
||||
$lng['ticket']['search'] = 'Search archive';
|
||||
$lng['ticket']['search'] = 'Przeszukaj archiwum';
|
||||
$lng['ticket']['nocustomer'] = 'Nie wybrano';
|
||||
$lng['ticket']['archivesearch'] = 'Archive searchresults';
|
||||
$lng['ticket']['archivesearch'] = 'Wynik przeszukiwania archiwum';
|
||||
$lng['ticket']['noresults'] = 'Nie znaleziono zgłoszeń';
|
||||
$lng['ticket']['notmorethanxopentickets'] = 'Due to spam-protection you cannot have more than %s open tickets';
|
||||
$lng['ticket']['supportstatus'] = 'Status wsparcia technicznego';
|
||||
@@ -689,7 +690,7 @@ $lng['customer']['tickets'] = 'Zgłoszenia wsparcia technicznego';
|
||||
|
||||
$lng['admin']['domain_nocustomeraddingavailable'] = 'Nie jest możliwe, by dodać teraz domenę. W pierwszej kolejności trzeba dodać klienta.';
|
||||
$lng['serversettings']['ticket']['enable'] = 'Wspracie techniczne włączone';
|
||||
$lng['serversettings']['ticket']['concurrentlyopen'] = 'Ile zg<EFBFBD>osze<EFBFBD> mo<6D>e by<62> otwartych w jednym czasie?';
|
||||
$lng['serversettings']['ticket']['concurrentlyopen'] = 'Ile zgłoszeń może być otwartych w jednym czasie?';
|
||||
$lng['error']['norepymailiswrong'] = 'The "Noreply-address" is wrong. Only a valid email-address is allowed.';
|
||||
$lng['error']['tadminmailiswrong'] = 'The "Ticketadmin-address" is wrong. Only a valid email-address is allowed.';
|
||||
$lng['ticket']['awaitingticketreply'] = 'Masz %s zgłoszeń do pomocy technicznej';
|
||||
@@ -765,7 +766,7 @@ $lng['logger']['truncate'] = 'Wyszyść logi';
|
||||
|
||||
// ADDED IN 1.2.19-svn7
|
||||
|
||||
$lng['serversettings']['ssl']['use_ssl'] = 'U<EFBFBD>yj SSL';
|
||||
$lng['serversettings']['ssl']['use_ssl'] = 'Użyj SSL';
|
||||
$lng['serversettings']['ssl']['ssl_cert_file'] = 'Gdzie jest zlokalizowany Certyfikat';
|
||||
$lng['serversettings']['ssl']['openssl_cnf'] = 'Standardowe dane do tworzenia pliku certyfikatu';
|
||||
$lng['panel']['reseller'] = 'reseller';
|
||||
@@ -775,7 +776,7 @@ $lng['error']['nomessagetosend'] = 'Nie wprowadzono wiadomości.';
|
||||
$lng['error']['noreceipientsgiven'] = 'Nie wprowadzono żadnego odbiorcy';
|
||||
$lng['admin']['emaildomain'] = 'Emaildomain';
|
||||
$lng['admin']['email_only'] = 'Only email?';
|
||||
$lng['admin']['wwwserveralias'] = 'Doda<EFBFBD> "www." ServerAlias';
|
||||
$lng['admin']['wwwserveralias'] = 'Dodać "www." ServerAlias';
|
||||
$lng['admin']['ipsandports']['enable_ssl'] = 'Is this an SSL Port?';
|
||||
$lng['admin']['ipsandports']['ssl_cert_file'] = 'Path to the SSL Certificate';
|
||||
$lng['panel']['send'] = 'send';
|
||||
@@ -824,8 +825,6 @@ $lng['error']['cannotuseawstatsandwebalizeratonetime'] = 'You cannot enable Weba
|
||||
$lng['serversettings']['webalizer_enabled'] = 'Enable webalizer statistics';
|
||||
$lng['serversettings']['awstats_enabled'] = 'Enable awstats statistics';
|
||||
$lng['admin']['awstatssettings'] = 'Ustawienia Awstats';
|
||||
$lng['serversettings']['awstats_domain_file']['title'] = 'Awstats domainfiles directory';
|
||||
$lng['serversettings']['awstats_model_file']['title'] = 'Awstats model file';
|
||||
|
||||
// ADDED IN 1.2.19-svn16
|
||||
|
||||
@@ -869,8 +868,8 @@ $lng['pwdreminder']['success'] = 'Password reset successfully.<br />You now shou
|
||||
|
||||
// ADDED IN 1.2.19-svn18
|
||||
|
||||
$lng['serversettings']['allow_preset'] = 'Allow password reset by customers';
|
||||
$lng['pwdreminder']['notallowed'] = 'Password reset is deactivated';
|
||||
$lng['serversettings']['allow_preset'] = 'Zezwalaj na resetowanie hasła przez klient<6E>w';
|
||||
$lng['pwdreminder']['notallowed'] = 'Resetowanie hasła jest nieaktywne';
|
||||
|
||||
// ADDED IN 1.2.19-svn20
|
||||
|
||||
@@ -903,18 +902,18 @@ $lng['domains']['topleveldomain'] = 'Top-Level-Domain';
|
||||
|
||||
// ADDED IN 1.2.19-svn22
|
||||
|
||||
$lng['serversettings']['allow_password_reset']['description'] = 'Customers can reset their password and a new password will be sent to their e-mail address';
|
||||
$lng['serversettings']['allow_password_reset_admin']['title'] = 'Allow password reset by admins';
|
||||
$lng['serversettings']['allow_password_reset_admin']['description'] = 'Admins/reseller can reset their password and a new password will be sent to their e-mail address';
|
||||
$lng['serversettings']['allow_password_reset']['description'] = 'Klienci mogą zresetować hasło, a nowe hasło zostanie wysłane na ich adres e-mail';
|
||||
$lng['serversettings']['allow_password_reset_admin']['title'] = 'Zezwalaj na resetowanie hasła przez administrator<6F>w';
|
||||
$lng['serversettings']['allow_password_reset_admin']['description'] = 'Administratorzy/Resellerzy mogą resetować hasło, a nowe hasło zostanie wysłane na ich adres e-mail';
|
||||
|
||||
// ADDED IN 1.2.19-svn25
|
||||
|
||||
$lng['emails']['quota'] = 'Quota';
|
||||
$lng['emails']['noquota'] = 'No quota';
|
||||
$lng['emails']['updatequota'] = 'Update Quota';
|
||||
$lng['serversettings']['mail_quota']['title'] = 'Mailbox-quota';
|
||||
$lng['serversettings']['mail_quota']['description'] = 'The default quota for a new created mailboxes (MegaByte).';
|
||||
$lng['serversettings']['mail_quota_enabled']['title'] = 'Use mailbox-quota for customers';
|
||||
$lng['emails']['noquota'] = 'Brak quoty';
|
||||
$lng['emails']['updatequota'] = 'Aktualizuj Quotę';
|
||||
$lng['serversettings']['mail_quota']['title'] = 'Quota skrzynki pocztowej';
|
||||
$lng['serversettings']['mail_quota']['description'] = 'Standardowa quota dla nowoutworzonych skrzynek pocztowych (MegaBajty).';
|
||||
$lng['serversettings']['mail_quota_enabled']['title'] = 'Użyj Quoty skrzynek pocztowych dla klient<6E>w';
|
||||
$lng['serversettings']['mail_quota_enabled']['description'] = 'Activate to use quotas on mailboxes. Default is <b>No</b> since this requires a special setup.';
|
||||
$lng['serversettings']['mail_quota_enabled']['removelink'] = 'Click here to wipe all quotas for mail accounts.';
|
||||
$lng['serversettings']['mail_quota_enabled']['enforcelink'] = 'Click here to enforce default quota to all User mail accounts.';
|
||||
@@ -949,7 +948,7 @@ $lng['error']['autoresponderalreadyexists'] = 'There is already an autoresponder
|
||||
$lng['error']['invalidautoresponder'] = 'The given account is invalid.';
|
||||
$lng['serversettings']['autoresponder_active']['title'] = 'Użyj modułu autorespondera';
|
||||
$lng['serversettings']['autoresponder_active']['description'] = 'Do you want to use the autoresponder module?';
|
||||
$lng['admin']['security_settings'] = 'Security Options';
|
||||
$lng['admin']['security_settings'] = 'Opcje bezpieczeństwa';
|
||||
$lng['admin']['know_what_youre_doing'] = 'Zmień TYLKO jeśli wiesz co robisz!';
|
||||
$lng['admin']['show_version_login']['title'] = 'Pokazuj wersję Froxlora przy logowaniu';
|
||||
$lng['admin']['show_version_login']['description'] = 'Pokazuj wersję Froxlora w stopce struno logowania';
|
||||
@@ -1144,29 +1143,29 @@ $lng['aps']['allpackages'] = 'All Packages';
|
||||
$lng['question']['reallyremovepackages'] = '<strong>Do you really want to delete these packages?</strong><br/><br/>Packages with dependencies can only be remove if the corresponding Instances have been removed!<br/><br/>';
|
||||
$lng['aps']['nopackagesinsystem'] = 'There were no packages installed in the system which could be managed.';
|
||||
$lng['aps']['packagenameandstatus'] = 'Packagename & Status';
|
||||
$lng['aps']['activate_aps']['title'] = 'Enable APS Installer';
|
||||
$lng['aps']['activate_aps']['title'] = 'Instalator aplikacji włączony';
|
||||
$lng['aps']['activate_aps']['description'] = 'Here the APS Installer can be enabled and disabled globaly.';
|
||||
$lng['aps']['packages_per_page']['title'] = 'Packages per page';
|
||||
$lng['aps']['packages_per_page']['title'] = 'Paczek na stronie';
|
||||
$lng['aps']['packages_per_page']['description'] = 'How many packages should be displayed per page for customers?';
|
||||
$lng['aps']['upload_fields']['title'] = 'Upload fields per page';
|
||||
$lng['aps']['upload_fields']['title'] = 'Ilość p<>l Uploadu na stronie';
|
||||
$lng['aps']['upload_fields']['description'] = 'How many upload fields should be displayed on the page to install new packages in the system?';
|
||||
$lng['aps']['exceptions']['title'] = 'Exceptions for Package validation';
|
||||
$lng['aps']['exceptions']['description'] = 'Some packages need special configuration parameters or modules. The Installer cannot always determine if this options/extensions are available. For this reason you can now define exceptions that packages can be installed in the system. Do only select options which match your real configuration setup. For further information about this problem look into the handbook for this module.';
|
||||
$lng['aps']['settings_php_extensions'] = 'PHP-Extensions';
|
||||
$lng['aps']['settings_php_configuration'] = 'PHP-Configuration';
|
||||
$lng['aps']['settings_webserver_modules'] = 'Webserver modules';
|
||||
$lng['aps']['settings_php_extensions'] = 'Rozszerzenia PHP';
|
||||
$lng['aps']['settings_php_configuration'] = 'Konfiguracja PHP';
|
||||
$lng['aps']['settings_webserver_modules'] = 'Moduły Webserwera';
|
||||
$lng['aps']['settings_webserver_misc'] = 'Webserver miscellaneous';
|
||||
$lng['aps']['specialoptions'] = 'Special options';
|
||||
$lng['aps']['removeunused'] = 'Remove unused packages';
|
||||
$lng['aps']['removeunused'] = 'Usuń nieuzywane paczki';
|
||||
$lng['aps']['enablenewest'] = 'Enabled newest version of package, lock others';
|
||||
$lng['aps']['installations'] = 'Installations';
|
||||
$lng['aps']['statistics'] = 'Statistics';
|
||||
$lng['aps']['installations'] = 'Instalacje';
|
||||
$lng['aps']['statistics'] = 'Statystyki';
|
||||
$lng['aps']['numerofpackagesinstalled'] = '%s Packages installed<br/>';
|
||||
$lng['aps']['numerofpackagesenabled'] = '%s Packages enabled<br/>';
|
||||
$lng['aps']['numerofpackageslocked'] = '%s Packages locked<br/>';
|
||||
$lng['aps']['numerofinstances'] = '%s Instances installed<br/>';
|
||||
$lng['question']['reallydoaction'] = '<strong>Do you really want to execute the selected actions?</strong><br/><br/>Data which can be lost by continuing, cannot be restored later.<br/><br/>';
|
||||
$lng['aps']['linktolicense'] = 'Link to license';
|
||||
$lng['aps']['linktolicense'] = 'Link do licencji';
|
||||
$lng['aps']['initerror_customer'] = 'There is currently a problem with this Froxlor extension. Contact your administrator for further information.';
|
||||
$lng['aps']['numerofinstances'] = '%s Installations at all<br/>';
|
||||
$lng['aps']['numerofinstancessuccess'] = '%s successful Installations<br/>';
|
||||
@@ -1191,11 +1190,11 @@ $lng['error']['admindoesntexist'] = 'The admin you have chosen doesn\'t exist.';
|
||||
|
||||
$lng['serversettings']['system_realtime_port']['title'] = 'Port for realtime Froxlor';
|
||||
$lng['serversettings']['system_realtime_port']['description'] = 'Froxlor connects to this port at localhost everytime a new cron task is scheduled. If value is 0 (zero), this feature is disabled.<br />See also: <a href="https://wiki.froxlor.org/contrib/realtime">Make Froxlor work in realtime (Froxlor Wiki)</a>';
|
||||
$lng['serversettings']['session_allow_multiple_login']['title'] = 'Allow multiple login';
|
||||
$lng['serversettings']['session_allow_multiple_login']['description'] = 'If activated a user could login multiple times.';
|
||||
$lng['serversettings']['panel_allow_domain_change_admin']['title'] = 'Allow moving domains between admins';
|
||||
$lng['serversettings']['session_allow_multiple_login']['title'] = 'Zezwalaj na jednoczesne logowanie';
|
||||
$lng['serversettings']['session_allow_multiple_login']['description'] = 'Jeśli jest zaznaczone użytkownik może zalogować się jednoczeście, wiele razy.';
|
||||
$lng['serversettings']['panel_allow_domain_change_admin']['title'] = 'Zezwalaj na przenoszenie domen pomiędzy administratorami';
|
||||
$lng['serversettings']['panel_allow_domain_change_admin']['description'] = 'If activated you can change the admin of a domain at domainsettings.<br /><b>Attention:</b> If a customer isn\'t assigned to the same admin as the domain, the admin can see every other domain of that customer!';
|
||||
$lng['serversettings']['panel_allow_domain_change_customer']['title'] = 'Allow moving domains between customers';
|
||||
$lng['serversettings']['panel_allow_domain_change_customer']['title'] = 'Zezwalaj na przenoszenie domen pomiędzy klientami';
|
||||
$lng['serversettings']['panel_allow_domain_change_customer']['description'] = 'If activated you can change the customer of a domain at domainsettings.<br /><b>Attention:</b> Froxlor won\'t change any paths. This could render a domain unusable!';
|
||||
$lng['domains']['associated_with_domain'] = 'Associated';
|
||||
$lng['domains']['aliasdomains'] = 'Alias domains';
|
||||
@@ -1212,17 +1211,17 @@ $lng['serversettings']['mod_fcgid']['maxrequests']['title'] = 'Maximum Requests
|
||||
$lng['serversettings']['mod_fcgid']['maxrequests']['description'] = 'How many requests should be allowed per domain?';
|
||||
|
||||
// fix bug #1124
|
||||
$lng['admin']['webserver'] = 'Webserver';
|
||||
$lng['admin']['webserver'] = 'Webserwer';
|
||||
$lng['error']['admin_domain_emailsystemhostname'] = 'The server-hostname cannot be used as email-domain.';
|
||||
$lng['aps']['license_link'] = 'Link to the license';
|
||||
$lng['aps']['license_link'] = 'Link do licencji';
|
||||
|
||||
// ADDED IN 1.4.2.1-1
|
||||
|
||||
$lng['mysql']['mysql_server'] = 'MySQL-Server';
|
||||
$lng['mysql']['mysql_server'] = 'Serwer MySQL';
|
||||
|
||||
// ADDED IN 1.4.2.1-2
|
||||
|
||||
$lng['admin']['ipsandports']['webserverdefaultconfig'] = 'Webserver Default Config';
|
||||
$lng['admin']['ipsandports']['webserverdefaultconfig'] = 'Domyślna Konfiguracja Webserwera';
|
||||
$lng['admin']['ipsandports']['webserverdomainconfig'] = 'Webserver Domain Config';
|
||||
$lng['admin']['ipsandports']['webserverssldomainconfig'] = 'Webserver SSL Config';
|
||||
$lng['admin']['ipsandports']['ssl_key_file'] = 'Path to the SSL Keyfile';
|
||||
@@ -1261,47 +1260,120 @@ $lng['update']['proceed'] = 'Proceed';
|
||||
$lng['update']['update_information']['part_a'] = 'The Froxlor files have been updated to version <strong>%newversion</strong>. The installed version is <strong>%curversion</strong>.';
|
||||
$lng['update']['update_information']['part_b'] = '<br /><br />Customers will not be able to log in until the update has been finished.<br /><strong>Proceed?</strong>';
|
||||
$lng['update']['noupdatesavail'] = '<strong>You already have the latest Froxlor version.</strong>';
|
||||
$lng['admin']['cron']['cronsettings'] = 'ustawienia Cronjob';
|
||||
$lng['cron']['cronname'] = 'cronjob-name';
|
||||
$lng['cron']['lastrun'] = 'last run';
|
||||
$lng['cron']['interval'] = 'interval';
|
||||
$lng['cron']['isactive'] = 'enabled';
|
||||
$lng['admin']['cron']['add'] = 'Add a new cronjob';
|
||||
$lng['cron']['description'] = 'description';
|
||||
$lng['crondesc']['cron_unknown_desc'] = 'no description given';
|
||||
$lng['crondesc']['cron_tasks'] = 'przebudowanie plik<69>w konfiguracyjnych';
|
||||
$lng['crondesc']['cron_legacy'] = 'legacy (old) cronjob';
|
||||
$lng['crondesc']['cron_apsinstaller'] = 'Instalator aplikacji';
|
||||
$lng['crondesc']['cron_autoresponder'] = 'e-mail autoresponder';
|
||||
$lng['crondesc']['cron_apsupdater'] = 'Aktualizacja pakiet<65>w instalatora aplikacji';
|
||||
$lng['crondesc']['cron_traffic'] = 'obliczanie ruchu';
|
||||
$lng['crondesc']['cron_ticketsreset'] = 'resetowanie licznika zgłoszeń';
|
||||
$lng['crondesc']['cron_ticketarchive'] = 'archiwizowanie starych zgłoszeń';
|
||||
$lng['admin']['specialsettingsforsubdomains'] = 'Apply specialsettings to all subdomains (*.example.com)';
|
||||
$lng['serversettings']['specialsettingsforsubdomains']['description'] = 'If yes these custom vhost-settings will be added to all subdomains; if no subdomain-specialsettings are being removed.';
|
||||
$lng['tasks']['outstanding_tasks'] = 'Outstanding cron-tasks';
|
||||
$lng['tasks']['rebuild_webserverconfig'] = 'Rebuilding webserver-configuration';
|
||||
$lng['tasks']['adding_customer'] = 'Adding new customer %loginname%';
|
||||
$lng['tasks']['rebuild_bindconfig'] = 'Rebuilding bind-configuration';
|
||||
$lng['tasks']['creating_ftpdir'] = 'Creating directory for new ftp-user';
|
||||
$lng['tasks']['deleting_customerfiles'] = 'Deleting customer-files %loginname%';
|
||||
$lng['tasks']['noneoutstanding'] = 'There are currently no outstanding tasks for Froxlor';
|
||||
$lng['ticket']['nonexistingcustomer'] = '(deleted customer)';
|
||||
$lng['tasks']['rebuild_webserverconfig'] = 'Przebudowanie konfiguracji webserwera';
|
||||
$lng['tasks']['adding_customer'] = 'Dodanie nowego klienta %loginname%';
|
||||
$lng['tasks']['rebuild_bindconfig'] = 'Przebudowanie konfiguracji binda';
|
||||
$lng['tasks']['creating_ftpdir'] = 'Tworzenie katalogu dla nowych użytkownik<69>w FTP';
|
||||
$lng['tasks']['deleting_customerfiles'] = 'Kasowanie plik<69>w klienta %loginname%';
|
||||
$lng['tasks']['noneoutstanding'] = 'Obecnie nie ma zaplanowanych zadań dla Froxlora';
|
||||
$lng['ticket']['nonexistingcustomer'] = '(usunięty klient)';
|
||||
$lng['admin']['ticket_nocustomeraddingavailable'] = 'It\'s not possible to open a new support-ticket currently. You first need to add at least one customer.';
|
||||
|
||||
// ADDED IN FROXLOR 0.9.1
|
||||
|
||||
$lng['admin']['accountdata'] = 'Account Data';
|
||||
$lng['admin']['contactdata'] = 'Contact Data';
|
||||
$lng['admin']['servicedata'] = 'Service Data';
|
||||
$lng['admin']['accountdata'] = 'Dane konta';
|
||||
$lng['admin']['contactdata'] = 'Dane kontaktowe';
|
||||
$lng['admin']['servicedata'] = 'Dane usługi';
|
||||
|
||||
// ADDED IN FROXLOR 0.9.2
|
||||
|
||||
$lng['admin']['newerversionavailable'] = 'There is a newer version of Froxlor available';
|
||||
$lng['admin']['newerversionavailable'] = 'Jest dostępna nowa wersja Froxlora';
|
||||
|
||||
// ADDED IN FROXLOR 0.9.3
|
||||
|
||||
$lng['emails']['noemaildomainaddedyet'] = 'You do not have a (email-)domain in your account yet.';
|
||||
$lng['error']['hiddenfieldvaluechanged'] = 'The value for the hidden field "%s" changed while editing the settings.<br /><br />This is usually not a big problem but the settings could not be saved because of this.';
|
||||
|
||||
?>
|
||||
// ADDED IN FROXLOR 0.9.3-svn1
|
||||
|
||||
$lng['serversettings']['panel_password_min_length']['title'] = 'Minimalna długość hasła';
|
||||
$lng['serversettings']['panel_password_min_length']['description'] = 'Here you can set a minimum length for passwords. \'0\' means: no minimum length required.';
|
||||
$lng['error']['notrequiredpasswordlength'] = 'The given password is too short. Please enter at least %s characters.';
|
||||
$lng['serversettings']['system_store_index_file_subs']['title'] = 'Store default index file also to new subfolders';
|
||||
$lng['serversettings']['system_store_index_file_subs']['description'] = 'If enabled, the default index-file is being stored to every subdomain-path newly created (not if the folder already exists!)';
|
||||
|
||||
// ADDED IN FROXLOR 0.9.3-svn2
|
||||
|
||||
$lng['serversettings']['adminmail_return']['title'] = 'Reply-To address';
|
||||
$lng['serversettings']['adminmail_return']['description'] = 'Define an e-mail address as reply-to-address for mails sent by the panel.';
|
||||
$lng['serversettings']['adminmail_defname'] = 'Panel e-mail sender name';
|
||||
|
||||
// ADDED IN FROXLOR 0.9.3-svn3
|
||||
$lng['dkim']['dkim_algorithm']['title'] = 'Allowed Hash Algorithms';
|
||||
$lng['dkim']['dkim_algorithm']['description'] = 'Define allowed hash algorithms, chose "All" for all algorithms or one or more from the other available algorithms';
|
||||
$lng['dkim']['dkim_servicetype'] = 'Service Types';
|
||||
$lng['dkim']['dkim_keylength']['title'] = 'Key-length';
|
||||
$lng['dkim']['dkim_keylength']['description'] = 'Attention: If you change this values, you need to delete all the private/public keys in "'.$settings['dkim']['dkim_prefix'].'"';
|
||||
$lng['dkim']['dkim_notes']['title'] = 'DKIM Notes';
|
||||
$lng['dkim']['dkim_notes']['description'] = 'Notes that might be of interest to a human, e.g. a URL like http://www.dnswatch.info. No interpretation is made by any program. This tag should be used sparingly due to space limitations in DNS. This is intended for use by administrators, not end users.';
|
||||
$lng['dkim']['dkim_add_adsp']['title'] = 'Add DKIM ADSP entry';
|
||||
$lng['dkim']['dkim_add_adsp']['description'] = 'If you don\'t know what this is, leave it "enabled"';
|
||||
$lng['dkim']['dkim_add_adsppolicy']['title'] = 'ADSP policy';
|
||||
$lng['dkim']['dkim_add_adsppolicy']['description'] = 'For more information about this setting see <a href="http://wiki.froxlor.org/contrib/dkim-adsp-policies">http://wiki.froxlor.org/contrib/dkim-adsp-policies</a>';
|
||||
|
||||
$lng['admin']['cron']['cronsettings'] = 'ustawienia zadań cyklicznych';
|
||||
$lng['cron']['cronname'] = 'cronjob-name';
|
||||
$lng['cron']['lastrun'] = 'ostatnio uruchomiony';
|
||||
$lng['cron']['interval'] = 'interwał';
|
||||
$lng['cron']['isactive'] = 'włączony';
|
||||
$lng['cron']['description'] = 'opis';
|
||||
$lng['crondesc']['cron_unknown_desc'] = 'no description given';
|
||||
$lng['admin']['cron']['add'] = 'Add cronjob';
|
||||
$lng['crondesc']['cron_tasks'] = 'przebudowanie plik<69>w konfiguracyjnych';
|
||||
$lng['crondesc']['cron_legacy'] = 'legacy (old) cronjob';
|
||||
$lng['crondesc']['cron_apsinstaller'] = 'Instalator aplikacji';
|
||||
$lng['crondesc']['cron_autoresponder'] = 'e-mail autoresponder';
|
||||
$lng['crondesc']['cron_apsupdater'] = 'Aktualizacja pakiet<65>w instalatora aplikacji';
|
||||
$lng['crondesc']['cron_traffic'] = 'obliczanie ruchu';
|
||||
$lng['crondesc']['cron_ticketsreset'] = 'resetowanie licznik<69>w zgłoszeń';
|
||||
$lng['crondesc']['cron_ticketarchive'] = 'archiwizowanie starych zgłoszeń';
|
||||
$lng['cronmgmt']['seconds'] = 'sekund';
|
||||
$lng['cronmgmt']['minutes'] = 'minut';
|
||||
$lng['cronmgmt']['hours'] = 'godzin';
|
||||
$lng['cronmgmt']['days'] = 'dni';
|
||||
$lng['cronmgmt']['weeks'] = 'tygodni';
|
||||
$lng['cronmgmt']['months'] = 'miesięcy';
|
||||
$lng['admin']['cronjob_edit'] = 'Edytuj zadania cykliczne';
|
||||
$lng['cronjob']['cronjobsettings'] = 'Ustawienia zadania cykliczne';
|
||||
$lng['cronjob']['cronjobinterval'] = 'Interwał uruchomienia';
|
||||
$lng['panel']['options'] = 'opcje';
|
||||
$lng['admin']['warning'] = 'WAŻNE - Przeczytaj to!';
|
||||
$lng['cron']['changewarning'] = 'Changing these values can have a negative cause to the behavior of Froxlor and its automated tasks.<br /><br />Please, only change values here if you are *damn sure* you know what you are doing.';
|
||||
|
||||
$lng['serversettings']['stdsubdomainhost']['title'] = 'Customer standard subdomain';
|
||||
$lng['serversettings']['stdsubdomainhost']['description'] = 'What hostname should be used to create standard subdomains for customer. If empty, the system-hostname is used.';
|
||||
|
||||
// ADDED IN FROXLOR 0.9.4-svn1
|
||||
$lng['ftp']['account_edit'] = 'Edytuj konto ftp';
|
||||
$lng['ftp']['editpassdescription'] = 'Ustal nowe hasło lub zostaw puste by nie zmieniać.';
|
||||
$lng['mysql']['sendinfomail'] = 'Send data via email to me';
|
||||
$lng['customer']['mysql_add']['infomail_subject'] = '[Froxlor] Nowa baza danych utworzona';
|
||||
$lng['customer']['mysql_add']['infomail_body']['pma'] = "\nMasz dostęp do Twojej bazy danych uzywając phpMyAdmina pod adresem {URI}\n";
|
||||
$lng['customer']['mysql_add']['infomail_body']['main'] = "Witaj {CUST_NAME},\n\nwłaśnie dodałeś nową bazę danych. Przesyłamy dane uruchomieniowe:\n\nBaza danych: {DB_NAME}\nHasło: {DB_PASS}\nOpis: {DB_DESC}\n{PMA_URI}\nZ poważaniem, Froxlor";
|
||||
$lng['error']['domains_cantdeletedomainwithapsinstances'] = 'Nie możesz usunąć domeny, ponieważ jest na niej zainstalowana aplikacja z instalatora aplikacji. W pierwszej kolejności odinstaluj tą aplikację.';
|
||||
$lng['serversettings']['awstats_path'] = '<27>cieżka do AWStats \'awstats_buildstaticpages.pl\'';
|
||||
$lng['serversettings']['awstats_conf'] = 'AWStats configuration path';
|
||||
$lng['error']['overviewsettingoptionisnotavalidfield'] = 'Woops, a field that should be displayed as an option in the settings-overview is not an excepted type. You can blame the developers for this. This should not happen!';
|
||||
$lng['admin']['configfiles']['compactoverview'] = 'Compact-overview';
|
||||
$lng['admin']['lastlogin_succ'] = 'Ostatnie logowanie';
|
||||
$lng['panel']['neverloggedin'] = 'Brak logowania do tej pory';
|
||||
|
||||
// ADDED IN FROXLOR 0.9.6-svn1
|
||||
$lng['serversettings']['defaultttl'] = 'TTL domeny dla binda w sekundach (domyślnie \'604800\' = 1 tydzień)';
|
||||
$lng['ticket']['logicalorder'] = 'Logical order';
|
||||
$lng['ticket']['orderdesc'] = 'Here you can define your own logical order for the ticket-category. Use 1 - 999, lower numbers are displayed first.';
|
||||
|
||||
// ADDED IN FROXLOR 0.9.6-svn3
|
||||
$lng['serversettings']['defaultwebsrverrhandler_enabled'] = 'Włączone standardowe strony błęd<31>w dla wszystkich klient<6E>w';
|
||||
$lng['serversettings']['defaultwebsrverrhandler_err401']['title'] = 'Plik/URL dla błędu 401';
|
||||
$lng['serversettings']['defaultwebsrverrhandler_err401']['description'] = '<div style="color:red">'.$lng['panel']['not_supported'].'lighttpd</div>';
|
||||
$lng['serversettings']['defaultwebsrverrhandler_err403']['title'] = 'Plik/URL dla błędu 403';
|
||||
$lng['serversettings']['defaultwebsrverrhandler_err403']['description'] = '<div style="color:red">'.$lng['panel']['not_supported'].'lighttpd</div>';
|
||||
$lng['serversettings']['defaultwebsrverrhandler_err404'] = 'Plik/URL dla błędu 404';
|
||||
$lng['serversettings']['defaultwebsrverrhandler_err500']['title'] = 'Plik/URL dla błędu 500';
|
||||
$lng['serversettings']['defaultwebsrverrhandler_err500']['description'] = '<div style="color:red">'.$lng['panel']['not_supported'].'lighttpd</div>';
|
||||
|
||||
?>
|
||||
@@ -183,7 +183,7 @@ class bind
|
||||
$date = date('Ymd');
|
||||
$bindserial = (preg_match('/^' . $date . '/', $domain['bindserial']) ? $domain['bindserial'] + 1 : $date . '00');
|
||||
$this->db->query('UPDATE `' . TABLE_PANEL_DOMAINS . '` SET `bindserial`=\'' . $bindserial . '\' WHERE `id`=\'' . $domain['id'] . '\'');
|
||||
$zonefile = '$TTL 1W' . "\n";
|
||||
$zonefile = '$TTL ' . (int)$this->settings['system']['defaultttl'] . "\n";
|
||||
|
||||
if(count($this->nameservers) == 0)
|
||||
{
|
||||
|
||||
@@ -69,16 +69,69 @@ class apache
|
||||
{
|
||||
$vhosts_filename = makeCorrectFile($this->settings['system']['apacheconf_vhost'] . '/05_froxlor_dirfix_nofcgid.conf');
|
||||
|
||||
if(!isset($this->virtualhosts_data[$vhosts_filename]))
|
||||
if($this->settings['system']['mod_fcgid'] == '1')
|
||||
{
|
||||
$this->virtualhosts_data[$vhosts_filename] = '';
|
||||
// if we use fcgid we don't need this file
|
||||
if(file_exists($vhosts_filename))
|
||||
{
|
||||
fwrite($this->debugHandler, ' apache::_createStandardDirectoryEntry: unlinking ' . basename($vhost_filename) . "\n");
|
||||
$this->logger->logAction(CRON_ACTION, LOG_NOTICE, 'unlinking ' . basename($vhost_filename));
|
||||
unlink(makeCorrectFile($vhost_filename));
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
if(!isset($this->virtualhosts_data[$vhosts_filename]))
|
||||
{
|
||||
$this->virtualhosts_data[$vhosts_filename] = '';
|
||||
}
|
||||
|
||||
$this->virtualhosts_data[$vhosts_filename].= '# ' . basename($vhosts_filename) . "\n" . '# Created ' . date('d.m.Y H:i') . "\n" . '# Do NOT manually edit this file, all changes will be deleted after the next domain change at the panel.' . "\n" . "\n";
|
||||
$this->virtualhosts_data[$vhosts_filename].= ' <Directory "' . $this->settings['system']['documentroot_prefix'] . '">' . "\n";
|
||||
$this->virtualhosts_data[$vhosts_filename].= ' Order allow,deny' . "\n";
|
||||
$this->virtualhosts_data[$vhosts_filename].= ' allow from all' . "\n";
|
||||
$this->virtualhosts_data[$vhosts_filename].= ' </Directory>' . "\n";
|
||||
$this->virtualhosts_data[$vhosts_filename].= ' <Directory "' . $this->settings['system']['documentroot_prefix'] . '">' . "\n";
|
||||
$this->virtualhosts_data[$vhosts_filename].= ' Order allow,deny' . "\n";
|
||||
$this->virtualhosts_data[$vhosts_filename].= ' allow from all' . "\n";
|
||||
$this->virtualhosts_data[$vhosts_filename].= ' </Directory>' . "\n";
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* define a default ErrorDocument-statement, bug #unknown-yet
|
||||
*/
|
||||
private function _createStandardErrorHandler()
|
||||
{
|
||||
if($this->settings['defaultwebsrverrhandler']['enabled'] == '1'
|
||||
&& ($this->settings['defaultwebsrverrhandler']['err401'] != ''
|
||||
|| $this->settings['defaultwebsrverrhandler']['err403'] != ''
|
||||
|| $this->settings['defaultwebsrverrhandler']['err404'] != ''
|
||||
|| $this->settings['defaultwebsrverrhandler']['err500'] != '')
|
||||
) {
|
||||
$vhosts_filename = makeCorrectFile($this->settings['system']['apacheconf_vhost'] . '/05_froxlor_default_errorhandler.conf');
|
||||
|
||||
if(!isset($this->virtualhosts_data[$vhosts_filename]))
|
||||
{
|
||||
$this->virtualhosts_data[$vhosts_filename] = '';
|
||||
}
|
||||
|
||||
if($this->settings['defaultwebsrverrhandler']['err401'] != '')
|
||||
{
|
||||
$this->virtualhosts_data[$vhosts_filename].= 'ErrorDocument 401 ' . $this->settings['defaultwebsrverrhandler']['err401'] . "\n";
|
||||
}
|
||||
|
||||
if($this->settings['defaultwebsrverrhandler']['err403'] != '')
|
||||
{
|
||||
$this->virtualhosts_data[$vhosts_filename].= 'ErrorDocument 403 ' . $this->settings['defaultwebsrverrhandler']['err403'] . "\n";
|
||||
}
|
||||
|
||||
if($this->settings['defaultwebsrverrhandler']['err404'] != '')
|
||||
{
|
||||
$this->virtualhosts_data[$vhosts_filename].= 'ErrorDocument 404 ' . $this->settings['defaultwebsrverrhandler']['err404'] . "\n";
|
||||
}
|
||||
|
||||
if($this->settings['defaultwebsrverrhandler']['err500'] != '')
|
||||
{
|
||||
$this->virtualhosts_data[$vhosts_filename].= 'ErrorDocument 500 ' . $this->settings['defaultwebsrverrhandler']['err500'] . "\n";
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
public function createIpPort()
|
||||
@@ -196,6 +249,11 @@ class apache
|
||||
* bug #32
|
||||
*/
|
||||
$this->_createStandardDirectoryEntry();
|
||||
|
||||
/**
|
||||
* bug #unknown-yet
|
||||
*/
|
||||
$this->_createStandardErrorHandler();
|
||||
}
|
||||
|
||||
/*
|
||||
@@ -856,14 +914,8 @@ class apache
|
||||
mkdir($this->settings['system']['apacheconf_htpasswddir'], 0751);
|
||||
umask($umask);
|
||||
}
|
||||
elseif(!is_dir($this->settings['system']['apacheconf_htpasswddir']))
|
||||
{
|
||||
fwrite($this->debugHandler, ' cron_tasks: WARNING!!! ' . $this->settings['system']['apacheconf_htpasswddir'] . ' is not a directory. htpasswd directory protection is disabled!!!' . "\n");
|
||||
echo 'WARNING!!! ' . $this->settings['system']['apacheconf_htpasswddir'] . ' is not a directory. htpasswd directory protection is disabled!!!';
|
||||
$this->logger->logAction(CRON_ACTION, LOG_WARNING, 'WARNING!!! ' . $this->settings['system']['apacheconf_htpasswddir'] . ' is not a directory. htpasswd directory protection is disabled!!!');
|
||||
}
|
||||
|
||||
if(is_dir($this->settings['system']['apacheconf_htpasswddir']))
|
||||
if(isConfigDir($this->settings['system']['apacheconf_htpasswddir'], true))
|
||||
{
|
||||
foreach($this->htpasswds_data as $htpasswd_filename => $htpasswd_file)
|
||||
{
|
||||
@@ -875,6 +927,12 @@ class apache
|
||||
|
||||
$this->wipeOutOldHtpasswdConfigs();
|
||||
}
|
||||
else
|
||||
{
|
||||
fwrite($this->debugHandler, ' cron_tasks: WARNING!!! ' . $this->settings['system']['apacheconf_htpasswddir'] . ' is not a directory. htpasswd directory protection is disabled!!!' . "\n");
|
||||
echo 'WARNING!!! ' . $this->settings['system']['apacheconf_htpasswddir'] . ' is not a directory. htpasswd directory protection is disabled!!!';
|
||||
$this->logger->logAction(CRON_ACTION, LOG_WARNING, 'WARNING!!! ' . $this->settings['system']['apacheconf_htpasswddir'] . ' is not a directory. htpasswd directory protection is disabled!!!');
|
||||
}
|
||||
}
|
||||
|
||||
// Write virtualhosts
|
||||
@@ -948,9 +1006,7 @@ class apache
|
||||
fwrite($this->debugHandler, ' apache::wipeOutOldVhostConfigs: cleaning ' . $this->settings['system']['apacheconf_vhost'] . "\n");
|
||||
$this->logger->logAction(CRON_ACTION, LOG_INFO, "cleaning " . $this->settings['system']['apacheconf_vhost']);
|
||||
|
||||
if(isConfigDir($this->settings['system']['apacheconf_vhost'])
|
||||
&& file_exists($this->settings['system']['apacheconf_vhost'])
|
||||
&& is_dir($this->settings['system']['apacheconf_vhost']))
|
||||
if(isConfigDir($this->settings['system']['apacheconf_vhost'], true))
|
||||
{
|
||||
$vhost_file_dirhandle = opendir($this->settings['system']['apacheconf_vhost']);
|
||||
|
||||
@@ -979,9 +1035,7 @@ class apache
|
||||
fwrite($this->debugHandler, ' apache::wipeOutOldDiroptionConfigs: cleaning ' . $this->settings['system']['apacheconf_diroptions'] . "\n");
|
||||
$this->logger->logAction(CRON_ACTION, LOG_INFO, "cleaning " . $this->settings['system']['apacheconf_diroptions']);
|
||||
|
||||
if(isConfigDir($this->settings['system']['apacheconf_diroptions'])
|
||||
&& file_exists($this->settings['system']['apacheconf_diroptions'])
|
||||
&& is_dir($this->settings['system']['apacheconf_diroptions']))
|
||||
if(isConfigDir($this->settings['system']['apacheconf_diroptions'], true))
|
||||
{
|
||||
$diroptions_file_dirhandle = opendir($this->settings['system']['apacheconf_diroptions']);
|
||||
|
||||
@@ -1010,16 +1064,14 @@ class apache
|
||||
fwrite($this->debugHandler, ' apache::wipeOutOldHtpasswdConfigs: cleaning ' . $this->settings['system']['apacheconf_htpasswddir'] . "\n");
|
||||
$this->logger->logAction(CRON_ACTION, LOG_INFO, "cleaning " . $this->settings['system']['apacheconf_htpasswddir']);
|
||||
|
||||
if(isConfigDir($this->settings['system']['apacheconf_htpasswddir'])
|
||||
&& file_exists($this->settings['system']['apacheconf_htpasswddir'])
|
||||
&& is_dir($this->settings['system']['apacheconf_htpasswddir']))
|
||||
if(isConfigDir($this->settings['system']['apacheconf_htpasswddir'], true))
|
||||
{
|
||||
$htpasswds_file_dirhandle = opendir($this->settings['system']['apacheconf_htpasswddir']);
|
||||
|
||||
while(false !== ($htpasswd_filename = readdir($htpasswds_file_dirhandle)))
|
||||
{
|
||||
if($htpasswd_filename != '.'
|
||||
&& $htpasswd_filename != '..'
|
||||
&& $htpasswd_filename != '..'
|
||||
&& !in_array($htpasswd_filename, $this->known_htpasswdsfilenames)
|
||||
&& file_exists(makeCorrectFile($this->settings['system']['apacheconf_htpasswddir'] . '/' . $htpasswd_filename)))
|
||||
{
|
||||
|
||||
@@ -151,6 +151,30 @@ class lighttpd
|
||||
|
||||
$this->lighttpd_data[$vhost_filename].= '}' . "\n";
|
||||
}
|
||||
|
||||
/**
|
||||
* bug #unknown-yet
|
||||
*/
|
||||
$this->_createStandardErrorHandler();
|
||||
}
|
||||
|
||||
/**
|
||||
* define a default server.error-handler-404-statement, bug #unknown-yet
|
||||
*/
|
||||
private function _createStandardErrorHandler()
|
||||
{
|
||||
if($this->settings['defaultwebsrverrhandler']['enabled'] == '1'
|
||||
&& $this->settings['defaultwebsrverrhandler']['err404'] != ''
|
||||
) {
|
||||
$vhosts_filename = makeCorrectFile($this->settings['system']['apacheconf_vhost'] . '/05_froxlor_default_errorhandler.conf');
|
||||
|
||||
if(!isset($this->lighttpd_data[$vhost_filename]))
|
||||
{
|
||||
$this->lighttpd_data[$vhost_filename] = '';
|
||||
}
|
||||
|
||||
$this->lighttpd_data[$vhost_filename] = 'server.error-handler-404 = "'.$this->settings['defaultwebsrverrhandler']['err404'].'"';
|
||||
}
|
||||
}
|
||||
|
||||
protected function create_htaccess($domain)
|
||||
@@ -807,9 +831,7 @@ class lighttpd
|
||||
fwrite($this->debugHandler, ' lighttpd::wipeOutOldConfigs: cleaning ' . $this->settings['system']['apacheconf_vhost'] . "\n");
|
||||
$this->logger->logAction(CRON_ACTION, LOG_INFO, "cleaning " . $this->settings['system']['apacheconf_vhost']);
|
||||
|
||||
if(isConfigDir($this->settings['system']['apacheconf_vhost'])
|
||||
&& file_exists($this->settings['system']['apacheconf_vhost'])
|
||||
&& is_dir($this->settings['system']['apacheconf_vhost']))
|
||||
if(isConfigDir($this->settings['system']['apacheconf_vhost'], true))
|
||||
{
|
||||
$vhost_file_dirhandle = opendir($this->settings['system']['apacheconf_vhost']);
|
||||
|
||||
|
||||
@@ -365,6 +365,31 @@ while($row = $db->fetch_array($result))
|
||||
|
||||
$diskusage = floatval($webspaceusage + $emailusage + $mysqlusage);
|
||||
$db->query("UPDATE `" . TABLE_PANEL_CUSTOMERS . "` SET `diskspace_used`='" . (float)$current_diskspace['all'] . "', `traffic_used`='" . (float)$sum_month_traffic['all'] . "' WHERE `customerid`='" . (int)$row['customerid'] . "'");
|
||||
|
||||
/**
|
||||
* Proftpd Quota
|
||||
*/
|
||||
|
||||
$db->query("UPDATE `" . TABLE_FTP_QUOTATALLIES . "` SET `bytes_in_used`='" . (float)$current_diskspace['all'] . "'*1024 WHERE `name` = '" . $row['loginname'] . "' OR `name` LIKE '" . $row['loginname'] . $settings['customer']['ftpprefix'] . "%'");
|
||||
|
||||
/**
|
||||
* Pureftpd Quota
|
||||
*/
|
||||
|
||||
if($settings['system']['ftpserver'] == "pureftpd")
|
||||
{
|
||||
$result_quota = $db->query("SELECT homedir FROM `" . TABLE_FTP_USERS . "` WHERE customerid = '" . $row['customerid'] . "'");
|
||||
|
||||
while($row_quota = $db->fetch_array($result_quota))
|
||||
{
|
||||
$quotafile = "" . $row_quota['homedir'] . ".ftpquota";
|
||||
$fh = fopen($quotafile, 'w');
|
||||
$stringdata = "0 " . $current_diskspace['all']*1024 . "";
|
||||
fwrite($fh, $stringdata);
|
||||
fclose($fh);
|
||||
safe_exec('chown ' . $row['loginname'] . ':' . $row['loginname'] . ' ' . escapeshellarg($quotafile) . '');
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -6,7 +6,7 @@ $header
|
||||
<table cellpadding="5" cellspacing="0" border="0" align="center" class="maintable">
|
||||
<tr>
|
||||
<td class="maintitle_search_left"><b><img src="images/title.gif" alt="" /> {$lng['menue']['ticket']['categories']}</b></td>
|
||||
<td class="maintitle_search_right" colspan="3">{$searchcode}</td>
|
||||
<td class="maintitle_search_right" colspan="4">{$searchcode}</td>
|
||||
</tr>
|
||||
<if 15 < $categories_count >
|
||||
<tr>
|
||||
@@ -15,17 +15,18 @@ $header
|
||||
</if>
|
||||
<tr>
|
||||
<td class="field_display_border_left">{$lng['ticket']['category']} {$arrowcode['name']}</td>
|
||||
<td class="field_display">{$lng['ticket']['logicalorder']} {$arrowcode['logicalorder']}</td>
|
||||
<td class="field_display">{$lng['ticket']['ticketcount']} <if $categories_count < 0 >{$arrowcode['ticketcount']}</if></td>
|
||||
<td class="field_display_search" colspan="2">{$sortcode}</td>
|
||||
</tr>
|
||||
$ticketcategories
|
||||
<if $pagingcode != ''>
|
||||
<tr>
|
||||
<td class="field_display_border_left" colspan="43" style=" text-align: center; ">{$pagingcode}</td>
|
||||
<td class="field_display_border_left" colspan="5" style=" text-align: center; ">{$pagingcode}</td>
|
||||
</tr>
|
||||
</if>
|
||||
<tr>
|
||||
<td class="field_display_border_left" colspan="4"><a href="$filename?page=categories&action=addcategory&s=$s">{$lng['ticket']['ticket_newcateory']}</a></td>
|
||||
<td class="field_display_border_left" colspan="5"><a href="$filename?page=categories&action=addcategory&s=$s">{$lng['ticket']['ticket_newcateory']}</a></td>
|
||||
</tr>
|
||||
</table>
|
||||
</form>
|
||||
|
||||
@@ -1,10 +1,11 @@
|
||||
<tr class="" onmouseover="this.className='RowOverSelected';" onmouseout="this.className='';">
|
||||
<tr class="" onmouseover="this.className='RowOverSelected';" onmouseout="this.className='';">
|
||||
<td class="field_name_border_left">{$row['name']}</td>
|
||||
<td class="field_name">{$row['ticketcount']} ({$row['ticketcountnotclosed']} {$lng['ticket']['open']} | {$closedtickets_count} {$lng['ticket']['closed']})</td>
|
||||
<td class="field_name">{$row['logicalorder']}</td>
|
||||
<td class="field_name">{$row['ticketcount']} ({$row['ticketcountnotclosed']} {$lng['ticket']['open']} | {$closedtickets_count} {$lng['ticket']['closed']})</td>
|
||||
<td class="field_name">
|
||||
<a href="$filename?page=categories&action=editcategory&id={$row['id']}&s=$s">{$lng['panel']['edit']}</a>
|
||||
</td>
|
||||
<td class="field_name">
|
||||
<a href="$filename?page=categories&action=deletecategory&id={$row['id']}&s=$s">{$lng['panel']['delete']}</a>
|
||||
</td>
|
||||
<a href="$filename?page=categories&action=editcategory&id={$row['id']}&s=$s">{$lng['panel']['edit']}</a>
|
||||
</td>
|
||||
<td class="field_name">
|
||||
<a href="$filename?page=categories&action=deletecategory&id={$row['id']}&s=$s">{$lng['panel']['delete']}</a>
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
@@ -9,9 +9,13 @@ $header
|
||||
<td class="maintitle" colspan="2"><b><img src="images/title.gif" alt="" /> {$lng['ticket']['ticket_editcateory']}</b></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="main_field_name">{$lng['ticket']['category']}:</td>
|
||||
<td class="main_field_name"><b>{$lng['ticket']['category']}:</b></td>
|
||||
<td class="main_field_display" nowrap="nowrap"><input type="text" class="text" name="category" maxlength="50" value="{$row['name']}" /></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="main_field_name"><b>{$lng['ticket']['logicalorder']}:</b><br />{$lng['ticket']['orderdesc']}</td>
|
||||
<td class="main_field_display" nowrap="nowrap"><input type="text" class="text" name="logicalorder" maxlength="3" value="{$row['logicalorder']}" /></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="main_field_confirm" colspan="2"><input type="hidden" name="send" value="send" /><input type="submit" class="bottom" value="{$lng['ticket']['ticket_editcateory']}" /></td>
|
||||
</tr>
|
||||
|
||||
@@ -8,9 +8,13 @@ $header
|
||||
<td class="maintitle" colspan="2"><b><img src="images/title.gif" alt="" /> {$lng['ticket']['ticket_newcateory']}</b></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="main_field_name">{$lng['ticket']['category']}:</td>
|
||||
<td class="main_field_name"><b>{$lng['ticket']['category']}:</b></td>
|
||||
<td class="main_field_display" nowrap="nowrap"><input type="text" class="text" name="category" maxlength="50" /></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="main_field_name"><b>{$lng['ticket']['logicalorder']}:</b><br />{$lng['ticket']['orderdesc']}</td>
|
||||
<td class="main_field_display" nowrap="nowrap"><input type="text" class="text" name="logicalorder" maxlength="3" value="1" /></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="main_field_confirm" colspan="2"><input type="hidden" name="send" value="send" /><input type="submit" class="bottom" value="{$lng['ticket']['ticket_newcateory']}" /></td>
|
||||
</tr>
|
||||
|
||||
6
templates/admin/update/preconfigitem.tpl
Normal file
6
templates/admin/update/preconfigitem.tpl
Normal file
@@ -0,0 +1,6 @@
|
||||
<div class="preconfigitem">
|
||||
<p>
|
||||
<span class="preconfdesc">{$description}</span>
|
||||
{$question}
|
||||
</p>
|
||||
</div>
|
||||
@@ -458,3 +458,14 @@ TR.RowOverSelected {
|
||||
margin-left: 15px;
|
||||
}
|
||||
|
||||
.preconfigitem
|
||||
{
|
||||
padding: 0.15em;
|
||||
border-bottom: 1px solid #cccccc;
|
||||
}
|
||||
|
||||
.preconfdesc
|
||||
{
|
||||
display: block;
|
||||
margin-bottom: 0.5em;
|
||||
}
|
||||
|
||||
@@ -1,3 +1,6 @@
|
||||
# Include local configuration options identical for all virtual hosts
|
||||
Include "{AWSTATS_CONF}awstats.model.conf"
|
||||
|
||||
LogFile="{LOG_FILE}"
|
||||
LogType=W
|
||||
LogFormat = 1
|
||||
@@ -5,6 +8,3 @@ LogSeparator=" "
|
||||
SiteDomain="{SITE_DOMAIN}"
|
||||
HostAliases="{HOST_ALIASES}"
|
||||
DirData="{CUSTOMER_DOCROOT}"
|
||||
|
||||
# Include local configuration options identical for all virtual hosts
|
||||
Include "{AWSTATS_CONF}awstats.model.conf"
|
||||
|
||||
@@ -1,3 +1,6 @@
|
||||
# Include local configuration options identical for all virtual hosts
|
||||
Include "{AWSTATS_CONF}awstats.model.conf"
|
||||
|
||||
LogFile="{LOG_FILE}"
|
||||
LogType=W
|
||||
LogFormat = "%host %virtualname %logname %time1 %methodurl %code %bytesd %refererquot %uaquot"
|
||||
@@ -6,5 +9,3 @@ SiteDomain="{SITE_DOMAIN}"
|
||||
HostAliases="{HOST_ALIASES}"
|
||||
DirData="{CUSTOMER_DOCROOT}"
|
||||
|
||||
# Include local configuration options identical for all virtual hosts
|
||||
Include "{AWSTATS_CONF}awstats.model.conf"
|
||||
|
||||
@@ -18,10 +18,10 @@ LoadModule mod_sql.c
|
||||
#LoadModule mod_ldap.c
|
||||
LoadModule mod_sql_mysql.c
|
||||
#LoadModule mod_sql_postgres.c
|
||||
#LoadModule mod_quotatab.c
|
||||
LoadModule mod_quotatab.c
|
||||
#LoadModule mod_quotatab_file.c
|
||||
#LoadModule mod_quotatab_ldap.c
|
||||
#LoadModule mod_quotatab_sql.c
|
||||
LoadModule mod_quotatab_sql.c
|
||||
#LoadModule mod_radius.c
|
||||
LoadModule mod_wrap.c
|
||||
LoadModule mod_rewrite.c
|
||||
|
||||
@@ -61,3 +61,15 @@ SQLNamedQuery download UPDATE "down_count=down_count+1, down_bytes=down_bytes+%b
|
||||
|
||||
SQLLog STOR upload
|
||||
SQLNamedQuery upload UPDATE "up_count=up_count+1, up_bytes=up_bytes+%b WHERE username='%u'" ftp_users
|
||||
|
||||
|
||||
QuotaEngine on
|
||||
QuotaShowQuotas on
|
||||
QuotaDisplayUnits Mb
|
||||
QuotaLock /var/lock/ftpd.quotatab.lock
|
||||
QuotaLimitTable sql:/get-quota-limit
|
||||
QuotaTallyTable sql:/get-quota-tally/update-quota-tally/insert-quota-tally
|
||||
SQLNamedQuery get-quota-limit SELECT "ftp_users.username AS name, ftp_quotalimits.quota_type, ftp_quotalimits.per_session, ftp_quotalimits.limit_type, panel_customers.diskspace*1024 AS bytes_in_avail, ftp_quotalimits.bytes_out_avail, ftp_quotalimits.bytes_xfer_avail, ftp_quotalimits.files_in_avail, ftp_quotalimits.files_out_avail, ftp_quotalimits.files_xfer_avail FROM ftp_users, ftp_quotalimits, panel_customers WHERE ftp_users.username = '%{0}' AND panel_customers.loginname = SUBSTRING_INDEX('%{0}', 'ftp', 1) AND quota_type ='%{1}'"
|
||||
SQLNamedQuery get-quota-tally SELECT "name, quota_type, bytes_in_used,bytes_out_used, bytes_xfer_used, files_in_used, files_out_used,files_xfer_used FROM ftp_quotatallies WHERE name = '%{0}' AND quota_type = '%{1}'"
|
||||
SQLNamedQuery update-quota-tally UPDATE "bytes_in_used = bytes_in_used + %{0}, bytes_out_used = bytes_out_used + %{1}, bytes_xfer_used = bytes_xfer_used + %{2}, files_in_used = files_in_used + %{3}, files_out_used= files_out_used + %{4}, files_xfer_used = files_xfer_used + %{5} WHERE name= '%{6}' AND quota_type = '%{7}'" ftp_quotatallies
|
||||
SQLNamedQuery insert-quota-tally INSERT "%{0}, %{1}, %{2}, %{3}, %{4},%{5}, %{6}, %{7}" ftp_quotatallies
|
||||
|
||||
@@ -8,3 +8,4 @@ MYSQLGetPW SELECT password FROM ftp_users WHERE username="\L" AND login_ena
|
||||
MYSQLGetUID SELECT uid FROM ftp_users WHERE username="\L" AND login_enabled="y"
|
||||
MYSQLGetGID SELECT gid FROM ftp_users WHERE username="\L" AND login_enabled="y"
|
||||
MYSQLGetDir SELECT homedir FROM ftp_users WHERE username="\L" AND login_enabled="y"
|
||||
MySQLGetQTASZ SELECT panel_customers.diskspace/1024 AS QuotaSize FROM panel_customers, ftp_users WHERE username = "\L" AND panel_customers.loginname = SUBSTRING_INDEX('\L', 'ftp', 1)
|
||||
|
||||
@@ -0,0 +1,77 @@
|
||||
## General Postfix configuration
|
||||
# should be the default domain from your provider eg. "server100.provider.tld"
|
||||
mydomain = <SERVERNAME>
|
||||
|
||||
# should be different from $mydomain eg. "mail.$mydomain"
|
||||
myhostname = <SERVERNAME>
|
||||
|
||||
mydestination = $myhostname,
|
||||
$mydomain,
|
||||
localhost.$myhostname,
|
||||
localhost.$mydomain,
|
||||
localhost
|
||||
mynetworks = 127.0.0.0/8
|
||||
inet_interfaces = all
|
||||
append_dot_mydomain = no
|
||||
biff = no
|
||||
|
||||
# Postfix performance settings
|
||||
default_destination_concurrency_limit = 20
|
||||
local_destination_concurrency_limit = 2
|
||||
|
||||
# SMTPD Settings
|
||||
smtpd_banner = $myhostname ESMTP $mail_name (Debian/GNU)
|
||||
smtpd_helo_required = yes
|
||||
smtpd_recipient_restrictions = permit_mynetworks,
|
||||
permit_sasl_authenticated,
|
||||
reject_unauth_destination,
|
||||
reject_unauth_pipelining,
|
||||
reject_non_fqdn_recipient
|
||||
smtpd_sender_restrictions = permit_mynetworks,
|
||||
permit_sasl_authenticated,
|
||||
reject_unknown_helo_hostname,
|
||||
reject_unknown_recipient_domain,
|
||||
reject_unknown_sender_domain
|
||||
smtpd_client_restrictions = permit_mynetworks,
|
||||
permit_sasl_authenticated,
|
||||
reject_unknown_client_hostname
|
||||
# Maximum size of Message in bytes (50MB)
|
||||
message_size_limit = 52428800
|
||||
|
||||
## SASL Auth Settings
|
||||
smtpd_sasl_auth_enable = yes
|
||||
smtpd_sasl_local_domain = $myhostname
|
||||
broken_sasl_auth_clients = yes
|
||||
|
||||
# Virtual delivery settings
|
||||
virtual_mailbox_base = <VIRTUAL_MAILBOX_BASE>
|
||||
virtual_mailbox_maps = mysql:/etc/postfix/mysql-virtual_mailbox_maps.cf
|
||||
virtual_mailbox_domains = mysql:/etc/postfix/mysql-virtual_mailbox_domains.cf
|
||||
virtual_alias_maps = mysql:/etc/postfix/mysql-virtual_alias_maps.cf
|
||||
virtual_uid_maps = static:<VIRTUAL_UID_MAPS>
|
||||
virtual_gid_maps = static:<VIRTUAL_GID_MAPS>
|
||||
|
||||
# Local delivery settings
|
||||
local_transport = local
|
||||
alias_maps = $alias_database
|
||||
|
||||
# Default Mailbox size, is set to 0 which means unlimited!
|
||||
mailbox_size_limit = 0
|
||||
virtual_mailbox_limit = 0
|
||||
|
||||
### TLS settings
|
||||
###
|
||||
## TLS for outgoing mails from the server to another server
|
||||
#smtp_tls_security_level = may
|
||||
#smtp_tls_note_starttls_offer = yes
|
||||
## TLS for email client
|
||||
#smtpd_tls_security_level = may
|
||||
#smtpd_tls_cert_file = /etc/ssl/server/<SERVERNAME>.pem
|
||||
#smtpd_tls_CAfile = /etc/ssl/certs/ca-certificates.crt
|
||||
#smtpd_tls_loglevel = 1
|
||||
#smtpd_tls_received_header = yes
|
||||
|
||||
debugger_command =
|
||||
PATH=/bin:/usr/bin:/usr/local/bin:/usr/X11R6/bin
|
||||
ddd $daemon_directory/$process_name $process_id & sleep 5
|
||||
|
||||
@@ -1,9 +1,3 @@
|
||||
# Postfix programs paths settings
|
||||
command_directory = /usr/sbin
|
||||
daemon_directory = /usr/lib/postfix
|
||||
program_directory = /usr/lib/postfix
|
||||
sendmail_path = /usr/sbin/sendmail
|
||||
|
||||
## General Postfix configuration
|
||||
# should be the default domain from your provider eg. "server100.provider.tld"
|
||||
mydomain = <SERVERNAME>
|
||||
@@ -35,25 +29,24 @@ smtpd_recipient_restrictions = permit_mynetworks,
|
||||
reject_non_fqdn_recipient
|
||||
smtpd_sender_restrictions = permit_mynetworks,
|
||||
permit_sasl_authenticated,
|
||||
reject_unknown_hostname,
|
||||
reject_unknown_helo_hostname,
|
||||
reject_unknown_recipient_domain,
|
||||
reject_unknown_sender_domain
|
||||
smtpd_client_restrictions = permit_mynetworks,
|
||||
permit_sasl_authenticated,
|
||||
reject_unknown_client
|
||||
reject_unknown_client_hostname
|
||||
# Maximum size of Message in bytes (50MB)
|
||||
message_size_limit = 52428800
|
||||
|
||||
## SASL Auth Settings
|
||||
smtpd_sasl_auth_enable = yes
|
||||
smtpd_sasl_local_domain = $myhostname
|
||||
smtpd_sasl_security_options = noanonymous
|
||||
broken_sasl_auth_clients = yes
|
||||
## Dovecot Settings for deliver, SASL Auth and virtual transport
|
||||
## uncomment those line to use Dovecot
|
||||
#mailbox_command = /usr/lib/dovecot/deliver
|
||||
#virtual_transport = dovecot
|
||||
#dovecot_destination_recipient_limit = 1
|
||||
smtpd_sasl_type = dovecot
|
||||
mailbox_command = /usr/lib/dovecot/deliver
|
||||
virtual_transport = dovecot
|
||||
dovecot_destination_recipient_limit = 1
|
||||
|
||||
# Virtual delivery settings
|
||||
virtual_mailbox_base = <VIRTUAL_MAILBOX_BASE>
|
||||
@@ -65,7 +58,6 @@ virtual_gid_maps = static:<VIRTUAL_GID_MAPS>
|
||||
|
||||
# Local delivery settings
|
||||
local_transport = local
|
||||
alias_database = hash:/etc/aliases
|
||||
alias_maps = $alias_database
|
||||
|
||||
# Default Mailbox size, is set to 0 which means unlimited!
|
||||
@@ -75,17 +67,14 @@ virtual_mailbox_limit = 0
|
||||
### TLS settings
|
||||
###
|
||||
## TLS for outgoing mails from the server to another server
|
||||
#smtp_use_tls = yes
|
||||
#smtp_tls_security_level = may
|
||||
#smtp_tls_note_starttls_offer = yes
|
||||
## TLS for email client
|
||||
#smtpd_tls_security_level = may
|
||||
#smtpd_tls_cert_file = /etc/ssl/server/<SERVERNAME>.pem
|
||||
#smtpd_tls_key_file = /etc/ssl/server/<SERVERNAME>.pem
|
||||
#smtpd_tls_CAfile = /etc/ssl/cacert.class3.crt # Just an example for CACert.org
|
||||
#smtpd_tls_auth_only = no
|
||||
#smtpd_tls_CAfile = /etc/ssl/certs/ca-certificates.crt
|
||||
#smtpd_tls_loglevel = 1
|
||||
#smtpd_tls_received_header = yes
|
||||
#smtpd_tls_session_cache_timeout = 3600s
|
||||
#tls_random_source = dev:/dev/urandom
|
||||
|
||||
debugger_command =
|
||||
PATH=/bin:/usr/bin:/usr/local/bin:/usr/X11R6/bin
|
||||
@@ -41,7 +41,7 @@ LoadModule mod_quotatab_file.c
|
||||
#LoadModule mod_quotatab_ldap.c
|
||||
|
||||
# Install proftpd-mod-pgsql or proftpd-mod-mysql to use this
|
||||
#LoadModule mod_quotatab_sql.c
|
||||
LoadModule mod_quotatab_sql.c
|
||||
LoadModule mod_quotatab_radius.c
|
||||
LoadModule mod_wrap.c
|
||||
LoadModule mod_rewrite.c
|
||||
|
||||
@@ -22,4 +22,16 @@ SQLNamedQuery download UPDATE "down_count=down_count+1, down_bytes=down_bytes+%b
|
||||
|
||||
SQLLog STOR upload
|
||||
SQLNamedQuery upload UPDATE "up_count=up_count+1, up_bytes=up_bytes+%b WHERE username='%u'" ftp_users
|
||||
</IfModule>
|
||||
|
||||
QuotaEngine on
|
||||
QuotaShowQuotas on
|
||||
QuotaDisplayUnits Mb
|
||||
QuotaLock /var/lock/ftpd.quotatab.lock
|
||||
QuotaLimitTable sql:/get-quota-limit
|
||||
QuotaTallyTable sql:/get-quota-tally/update-quota-tally/insert-quota-tally
|
||||
SQLNamedQuery get-quota-limit SELECT "ftp_users.username AS name, ftp_quotalimits.quota_type, ftp_quotalimits.per_session, ftp_quotalimits.limit_type, panel_customers.diskspace*1024 AS bytes_in_avail, ftp_quotalimits.bytes_out_avail, ftp_quotalimits.bytes_xfer_avail, ftp_quotalimits.files_in_avail, ftp_quotalimits.files_out_avail, ftp_quotalimits.files_xfer_avail FROM ftp_users, ftp_quotalimits, panel_customers WHERE ftp_users.username = '%{0}' AND panel_customers.loginname = SUBSTRING_INDEX('%{0}', 'ftp', 1) AND quota_type ='%{1}'"
|
||||
SQLNamedQuery get-quota-tally SELECT "name, quota_type, bytes_in_used,bytes_out_used, bytes_xfer_used, files_in_used, files_out_used,files_xfer_used FROM ftp_quotatallies WHERE name = '%{0}' AND quota_type = '%{1}'"
|
||||
SQLNamedQuery update-quota-tally UPDATE "bytes_in_used = bytes_in_used + %{0}, bytes_out_used = bytes_out_used + %{1}, bytes_xfer_used = bytes_xfer_used + %{2}, files_in_used = files_in_used + %{3}, files_out_used= files_out_used + %{4}, files_xfer_used = files_xfer_used + %{5} WHERE name= '%{6}' AND quota_type = '%{7}'" ftp_quotatallies
|
||||
SQLNamedQuery insert-quota-tally INSERT "%{0}, %{1}, %{2}, %{3}, %{4},%{5}, %{6}, %{7}" ftp_quotatallies
|
||||
|
||||
</IfModule>
|
||||
|
||||
@@ -8,3 +8,4 @@ MYSQLGetPW SELECT password FROM ftp_users WHERE username="\L" AND login_ena
|
||||
MYSQLGetUID SELECT uid FROM ftp_users WHERE username="\L" AND login_enabled="y"
|
||||
MYSQLGetGID SELECT gid FROM ftp_users WHERE username="\L" AND login_enabled="y"
|
||||
MYSQLGetDir SELECT homedir FROM ftp_users WHERE username="\L" AND login_enabled="y"
|
||||
MySQLGetQTASZ SELECT panel_customers.diskspace/1024 AS QuotaSize FROM panel_customers, ftp_users WHERE username = "\L" AND panel_customers.loginname = SUBSTRING_INDEX('\L', 'ftp', 1)
|
||||
|
||||
@@ -28,7 +28,10 @@ Group nogroup
|
||||
AllowOverwrite on
|
||||
|
||||
<IfModule mod_quotatab.c>
|
||||
QuotaEngine off
|
||||
QuotaEngine on
|
||||
QuotaShowQuotas on
|
||||
QuotaDisplayUnits Mb
|
||||
QuotaLock /var/lock/ftpd.quotatab.lock
|
||||
</IfModule>
|
||||
|
||||
<IfModule mod_ratio.c>
|
||||
@@ -61,6 +64,13 @@ AllowOverwrite on
|
||||
|
||||
SQLLog STOR upload
|
||||
SQLNamedQuery upload UPDATE "up_count=up_count+1, up_bytes=up_bytes+%b WHERE username='%u'" ftp_users
|
||||
|
||||
QuotaLimitTable sql:/get-quota-limit
|
||||
QuotaTallyTable sql:/get-quota-tally/update-quota-tally/insert-quota-tally
|
||||
SQLNamedQuery get-quota-limit SELECT "ftp_users.username AS name, ftp_quotalimits.quota_type, ftp_quotalimits.per_session, ftp_quotalimits.limit_type, panel_customers.diskspace*1024 AS bytes_in_avail, ftp_quotalimits.bytes_out_avail, ftp_quotalimits.bytes_xfer_avail, ftp_quotalimits.files_in_avail, ftp_quotalimits.files_out_avail, ftp_quotalimits.files_xfer_avail FROM ftp_users, ftp_quotalimits, panel_customers WHERE ftp_users.username = '%{0}' AND panel_customers.loginname = SUBSTRING_INDEX('%{0}', 'ftp', 1) AND quota_type ='%{1}'"
|
||||
SQLNamedQuery get-quota-tally SELECT "name, quota_type, bytes_in_used,bytes_out_used, bytes_xfer_used, files_in_used, files_out_used,files_xfer_used FROM ftp_quotatallies WHERE name = '%{0}' AND quota_type = '%{1}'"
|
||||
SQLNamedQuery update-quota-tally UPDATE "bytes_in_used = bytes_in_used + %{0}, bytes_out_used = bytes_out_used + %{1}, bytes_xfer_used = bytes_xfer_used + %{2}, files_in_used = files_in_used + %{3}, files_out_used= files_out_used + %{4}, files_xfer_used = files_xfer_used + %{5} WHERE name= '%{6}' AND quota_type = '%{7}'" ftp_quotatallies
|
||||
SQLNamedQuery insert-quota-tally INSERT "%{0}, %{1}, %{2}, %{3}, %{4},%{5}, %{6}, %{7}" ftp_quotatallies
|
||||
</IfModule>
|
||||
|
||||
|
||||
|
||||
@@ -0,0 +1,77 @@
|
||||
## General Postfix configuration
|
||||
# should be the default domain from your provider eg. "server100.provider.tld"
|
||||
mydomain = <SERVERNAME>
|
||||
|
||||
# should be different from $mydomain eg. "mail.$mydomain"
|
||||
myhostname = <SERVERNAME>
|
||||
|
||||
mydestination = $myhostname,
|
||||
$mydomain,
|
||||
localhost.$myhostname,
|
||||
localhost.$mydomain,
|
||||
localhost
|
||||
mynetworks = 127.0.0.0/8
|
||||
inet_interfaces = all
|
||||
append_dot_mydomain = no
|
||||
biff = no
|
||||
|
||||
# Postfix performance settings
|
||||
default_destination_concurrency_limit = 20
|
||||
local_destination_concurrency_limit = 2
|
||||
|
||||
# SMTPD Settings
|
||||
smtpd_banner = $myhostname ESMTP $mail_name ($mail_version)
|
||||
smtpd_helo_required = yes
|
||||
smtpd_recipient_restrictions = permit_mynetworks,
|
||||
permit_sasl_authenticated,
|
||||
reject_unauth_destination,
|
||||
reject_unauth_pipelining,
|
||||
reject_non_fqdn_recipient
|
||||
smtpd_sender_restrictions = permit_mynetworks,
|
||||
permit_sasl_authenticated,
|
||||
reject_unknown_helo_hostname,
|
||||
reject_unknown_recipient_domain,
|
||||
reject_unknown_sender_domain
|
||||
smtpd_client_restrictions = permit_mynetworks,
|
||||
permit_sasl_authenticated,
|
||||
reject_unknown_client_hostname
|
||||
# Maximum size of Message in bytes (50MB)
|
||||
message_size_limit = 52428800
|
||||
|
||||
## SASL Auth Settings
|
||||
smtpd_sasl_auth_enable = yes
|
||||
smtpd_sasl_local_domain = $myhostname
|
||||
broken_sasl_auth_clients = yes
|
||||
|
||||
# Virtual delivery settings
|
||||
virtual_mailbox_base = <VIRTUAL_MAILBOX_BASE>
|
||||
virtual_mailbox_maps = mysql:/etc/postfix/mysql-virtual_mailbox_maps.cf
|
||||
virtual_mailbox_domains = mysql:/etc/postfix/mysql-virtual_mailbox_domains.cf
|
||||
virtual_alias_maps = mysql:/etc/postfix/mysql-virtual_alias_maps.cf
|
||||
virtual_uid_maps = static:<VIRTUAL_UID_MAPS>
|
||||
virtual_gid_maps = static:<VIRTUAL_GID_MAPS>
|
||||
|
||||
# Local delivery settings
|
||||
local_transport = local
|
||||
alias_maps = $alias_database
|
||||
|
||||
# Default Mailbox size, is set to 0 which means unlimited!
|
||||
mailbox_size_limit = 0
|
||||
virtual_mailbox_limit = 0
|
||||
|
||||
### TLS settings
|
||||
###
|
||||
## TLS for outgoing mails from the server to another server
|
||||
#smtp_tls_security_level = may
|
||||
#smtp_tls_note_starttls_offer = yes
|
||||
## TLS for email client
|
||||
#smtpd_tls_security_level = may
|
||||
#smtpd_tls_cert_file = /etc/ssl/server/<SERVERNAME>.pem
|
||||
#smtpd_tls_CAfile = /etc/ssl/certs/ca-certificates.crt
|
||||
#smtpd_tls_loglevel = 1
|
||||
#smtpd_tls_received_header = yes
|
||||
|
||||
debugger_command =
|
||||
PATH=/bin:/usr/bin:/usr/local/bin:/usr/X11R6/bin
|
||||
ddd $daemon_directory/$process_name $process_id & sleep 5
|
||||
|
||||
@@ -50,12 +50,10 @@ smtpd_sasl_local_domain = $myhostname
|
||||
smtpd_sasl_security_options = noanonymous
|
||||
broken_sasl_auth_clients = yes
|
||||
## Dovecot Settings for deliver, SASL Auth and virtual transport
|
||||
## uncomment those line to use Dovecot
|
||||
#mailbox_command = /usr/libexec/dovecot/deliver
|
||||
#smtpd_sasl_type = dovecot
|
||||
#smtpd_sasl_path = private/auth
|
||||
#virtual_transport = dovecot
|
||||
#dovecot_destination_recipient_limit = 1
|
||||
mailbox_command = /usr/libexec/dovecot/deliver
|
||||
smtpd_sasl_path = private/auth
|
||||
virtual_transport = dovecot
|
||||
dovecot_destination_recipient_limit = 1
|
||||
|
||||
# Virtual delivery settings
|
||||
virtual_mailbox_base = <VIRTUAL_MAILBOX_BASE>
|
||||
@@ -90,14 +88,14 @@ virtual_mailbox_limit = 0
|
||||
#tls_random_source = dev:/dev/urandom
|
||||
|
||||
### Quota Settings with vda useflag
|
||||
## I use only virtual as localdelivery... This permit me to have full
|
||||
## virtual domain hosting without using a lots of maps
|
||||
## I use only virtual as localdelivery... This permits me to have full
|
||||
## virtual domain hosting without using a lot of maps
|
||||
#virtual_transport = virtual
|
||||
## Generate maildirsize files or not
|
||||
#virtual_create_maildirsize = yes
|
||||
## I use Courier IMAP compatibles files.
|
||||
#virtual_mailbox_extended = yes
|
||||
## Limits only INBOX part (usefull when
|
||||
## Limits only INBOX part (useful when
|
||||
## using when you have IMAP users)
|
||||
#virtual_mailbox_limit_inbox = yes
|
||||
## maps of soft disk quotas
|
||||
@@ -0,0 +1,8 @@
|
||||
user = <SQL_UNPRIVILEGED_USER>
|
||||
password = <SQL_UNPRIVILEGED_PASSWORD>
|
||||
dbname = <SQL_DB>
|
||||
table = mail_virtual
|
||||
select_field = destination
|
||||
where_field = email
|
||||
additional_conditions = and TRIM(destination) <> ''
|
||||
hosts = <SQL_HOST>
|
||||
@@ -0,0 +1,8 @@
|
||||
user = <SQL_UNPRIVILEGED_USER>
|
||||
password = <SQL_UNPRIVILEGED_PASSWORD>
|
||||
dbname = <SQL_DB>
|
||||
table = panel_domains
|
||||
select_field = domain
|
||||
where_field = domain
|
||||
additional_conditions = and isemaildomain = '1'
|
||||
hosts = <SQL_HOST>
|
||||
@@ -0,0 +1,7 @@
|
||||
user = <SQL_UNPRIVILEGED_USER>
|
||||
password = <SQL_UNPRIVILEGED_PASSWORD>
|
||||
dbname = <SQL_DB>
|
||||
table = mail_users
|
||||
select_field = (quota*1024*1024)
|
||||
where_field = email
|
||||
hosts = <SQL_HOST>
|
||||
@@ -0,0 +1,7 @@
|
||||
user = <SQL_UNPRIVILEGED_USER>
|
||||
password = <SQL_UNPRIVILEGED_PASSWORD>
|
||||
dbname = <SQL_DB>
|
||||
table = mail_users
|
||||
select_field = maildir
|
||||
where_field = email
|
||||
hosts = <SQL_HOST>
|
||||
@@ -59,6 +59,18 @@ SQLNamedQuery download UPDATE "down_count=down_count+1, down_bytes=down_bytes+%b
|
||||
SQLLog STOR upload
|
||||
SQLNamedQuery upload UPDATE "up_count=up_count+1, up_bytes=up_bytes+%b WHERE username='%u'" ftp_users
|
||||
|
||||
# Quota settings
|
||||
QuotaEngine on
|
||||
QuotaShowQuotas on
|
||||
QuotaDisplayUnits Mb
|
||||
QuotaLock /var/lock/ftpd.quotatab.lock
|
||||
QuotaLimitTable sql:/get-quota-limit
|
||||
QuotaTallyTable sql:/get-quota-tally/update-quota-tally/insert-quota-tally
|
||||
SQLNamedQuery get-quota-limit SELECT "ftp_users.username AS name, ftp_quotalimits.quota_type, ftp_quotalimits.per_session, ftp_quotalimits.limit_type, panel_customers.diskspace*1024 AS bytes_in_avail, ftp_quotalimits.bytes_out_avail, ftp_quotalimits.bytes_xfer_avail, ftp_quotalimits.files_in_avail, ftp_quotalimits.files_out_avail, ftp_quotalimits.files_xfer_avail FROM ftp_users, ftp_quotalimits, panel_customers WHERE ftp_users.username = '%{0}' AND panel_customers.loginname = SUBSTRING_INDEX('%{0}', 'ftp', 1) AND quota_type ='%{1}'"
|
||||
SQLNamedQuery get-quota-tally SELECT "name, quota_type, bytes_in_used,bytes_out_used, bytes_xfer_used, files_in_used, files_out_used,files_xfer_used FROM ftp_quotatallies WHERE name = '%{0}' AND quota_type = '%{1}'"
|
||||
SQLNamedQuery update-quota-tally UPDATE "bytes_in_used = bytes_in_used + %{0}, bytes_out_used = bytes_out_used + %{1}, bytes_xfer_used = bytes_xfer_used + %{2}, files_in_used = files_in_used + %{3}, files_out_used= files_out_used + %{4}, files_xfer_used = files_xfer_used + %{5} WHERE name= '%{6}' AND quota_type = '%{7}'" ftp_quotatallies
|
||||
SQLNamedQuery insert-quota-tally INSERT "%{0}, %{1}, %{2}, %{3}, %{4},%{5}, %{6}, %{7}" ftp_quotatallies
|
||||
|
||||
# TLS settings
|
||||
#<IfModule mod_tls.c>
|
||||
#TLSEngine on
|
||||
|
||||
@@ -18,10 +18,10 @@ LoadModule mod_sql.c
|
||||
#LoadModule mod_ldap.c
|
||||
LoadModule mod_sql_mysql.c
|
||||
#LoadModule mod_sql_postgres.c
|
||||
#LoadModule mod_quotatab.c
|
||||
LoadModule mod_quotatab.c
|
||||
#LoadModule mod_quotatab_file.c
|
||||
#LoadModule mod_quotatab_ldap.c
|
||||
#LoadModule mod_quotatab_sql.c
|
||||
LoadModule mod_quotatab_sql.c
|
||||
#LoadModule mod_radius.c
|
||||
LoadModule mod_wrap.c
|
||||
LoadModule mod_rewrite.c
|
||||
|
||||
@@ -67,3 +67,14 @@ SQLNamedQuery download UPDATE "down_count=down_count+1, down_bytes=down_bytes+%b
|
||||
|
||||
SQLLog STOR upload
|
||||
SQLNamedQuery upload UPDATE "up_count=up_count+1, up_bytes=up_bytes+%b WHERE username='%u'" ftp_users
|
||||
|
||||
QuotaEngine on
|
||||
QuotaShowQuotas on
|
||||
QuotaDisplayUnits Mb
|
||||
QuotaLock /var/lock/ftpd.quotatab.lock
|
||||
QuotaLimitTable sql:/get-quota-limit
|
||||
QuotaTallyTable sql:/get-quota-tally/update-quota-tally/insert-quota-tally
|
||||
SQLNamedQuery get-quota-limit SELECT "ftp_users.username AS name, ftp_quotalimits.quota_type, ftp_quotalimits.per_session, ftp_quotalimits.limit_type, panel_customers.diskspace*1024 AS bytes_in_avail, ftp_quotalimits.bytes_out_avail, ftp_quotalimits.bytes_xfer_avail, ftp_quotalimits.files_in_avail, ftp_quotalimits.files_out_avail, ftp_quotalimits.files_xfer_avail FROM ftp_users, ftp_quotalimits, panel_customers WHERE ftp_users.username = '%{0}' AND panel_customers.loginname = SUBSTRING_INDEX('%{0}', 'ftp', 1) AND quota_type ='%{1}'"
|
||||
SQLNamedQuery get-quota-tally SELECT "name, quota_type, bytes_in_used,bytes_out_used, bytes_xfer_used, files_in_used, files_out_used,files_xfer_used FROM ftp_quotatallies WHERE name = '%{0}' AND quota_type = '%{1}'"
|
||||
SQLNamedQuery update-quota-tally UPDATE "bytes_in_used = bytes_in_used + %{0}, bytes_out_used = bytes_out_used + %{1}, bytes_xfer_used = bytes_xfer_used + %{2}, files_in_used = files_in_used + %{3}, files_out_used= files_out_used + %{4}, files_xfer_used = files_xfer_used + %{5} WHERE name= '%{6}' AND quota_type = '%{7}'" ftp_quotatallies
|
||||
SQLNamedQuery insert-quota-tally INSERT "%{0}, %{1}, %{2}, %{3}, %{4},%{5}, %{6}, %{7}" ftp_quotatallies
|
||||
|
||||
@@ -0,0 +1,77 @@
|
||||
## General Postfix configuration
|
||||
# should be the default domain from your provider eg. "server100.provider.tld"
|
||||
mydomain = <SERVERNAME>
|
||||
|
||||
# should be different from $mydomain eg. "mail.$mydomain"
|
||||
myhostname = <SERVERNAME>
|
||||
|
||||
mydestination = $myhostname,
|
||||
$mydomain,
|
||||
localhost.$myhostname,
|
||||
localhost.$mydomain,
|
||||
localhost
|
||||
mynetworks = 127.0.0.0/8
|
||||
inet_interfaces = all
|
||||
append_dot_mydomain = no
|
||||
biff = no
|
||||
|
||||
# Postfix performance settings
|
||||
default_destination_concurrency_limit = 20
|
||||
local_destination_concurrency_limit = 2
|
||||
|
||||
# SMTPD Settings
|
||||
smtpd_banner = $myhostname ESMTP $mail_name (Ubuntu)
|
||||
smtpd_helo_required = yes
|
||||
smtpd_recipient_restrictions = permit_mynetworks,
|
||||
permit_sasl_authenticated,
|
||||
reject_unauth_destination,
|
||||
reject_unauth_pipelining,
|
||||
reject_non_fqdn_recipient
|
||||
smtpd_sender_restrictions = permit_mynetworks,
|
||||
permit_sasl_authenticated,
|
||||
reject_unknown_helo_hostname,
|
||||
reject_unknown_recipient_domain,
|
||||
reject_unknown_sender_domain
|
||||
smtpd_client_restrictions = permit_mynetworks,
|
||||
permit_sasl_authenticated,
|
||||
reject_unknown_client_hostname
|
||||
# Maximum size of Message in bytes (50MB)
|
||||
message_size_limit = 52428800
|
||||
|
||||
## SASL Auth Settings
|
||||
smtpd_sasl_auth_enable = yes
|
||||
smtpd_sasl_local_domain = $myhostname
|
||||
broken_sasl_auth_clients = yes
|
||||
|
||||
# Virtual delivery settings
|
||||
virtual_mailbox_base = <VIRTUAL_MAILBOX_BASE>
|
||||
virtual_mailbox_maps = mysql:/etc/postfix/mysql-virtual_mailbox_maps.cf
|
||||
virtual_mailbox_domains = mysql:/etc/postfix/mysql-virtual_mailbox_domains.cf
|
||||
virtual_alias_maps = mysql:/etc/postfix/mysql-virtual_alias_maps.cf
|
||||
virtual_uid_maps = static:<VIRTUAL_UID_MAPS>
|
||||
virtual_gid_maps = static:<VIRTUAL_GID_MAPS>
|
||||
|
||||
# Local delivery settings
|
||||
local_transport = local
|
||||
alias_maps = $alias_database
|
||||
|
||||
# Default Mailbox size, is set to 0 which means unlimited!
|
||||
mailbox_size_limit = 0
|
||||
virtual_mailbox_limit = 0
|
||||
|
||||
### TLS settings
|
||||
###
|
||||
## TLS for outgoing mails from the server to another server
|
||||
#smtp_tls_security_level = may
|
||||
#smtp_tls_note_starttls_offer = yes
|
||||
## TLS for email client
|
||||
#smtpd_tls_security_level = may
|
||||
#smtpd_tls_cert_file = /etc/ssl/server/<SERVERNAME>.pem
|
||||
#smtpd_tls_CAfile = /etc/ssl/certs/ca-certificates.crt
|
||||
#smtpd_tls_loglevel = 1
|
||||
#smtpd_tls_received_header = yes
|
||||
|
||||
debugger_command =
|
||||
PATH=/bin:/usr/bin:/usr/local/bin:/usr/X11R6/bin
|
||||
ddd $daemon_directory/$process_name $process_id & sleep 5
|
||||
|
||||
@@ -0,0 +1,8 @@
|
||||
user = <SQL_UNPRIVILEGED_USER>
|
||||
password = <SQL_UNPRIVILEGED_PASSWORD>
|
||||
dbname = <SQL_DB>
|
||||
table = mail_virtual
|
||||
select_field = destination
|
||||
where_field = email
|
||||
additional_conditions = and TRIM(destination) <> ''
|
||||
hosts = <SQL_HOST>
|
||||
@@ -0,0 +1,8 @@
|
||||
user = <SQL_UNPRIVILEGED_USER>
|
||||
password = <SQL_UNPRIVILEGED_PASSWORD>
|
||||
dbname = <SQL_DB>
|
||||
table = panel_domains
|
||||
select_field = domain
|
||||
where_field = domain
|
||||
additional_conditions = and isemaildomain = '1'
|
||||
hosts = <SQL_HOST>
|
||||
@@ -0,0 +1,7 @@
|
||||
user = <SQL_UNPRIVILEGED_USER>
|
||||
password = <SQL_UNPRIVILEGED_PASSWORD>
|
||||
dbname = <SQL_DB>
|
||||
table = mail_users
|
||||
select_field = maildir
|
||||
where_field = email
|
||||
hosts = <SQL_HOST>
|
||||
@@ -1,15 +1,9 @@
|
||||
# Postfix programs paths settings
|
||||
command_directory = /usr/sbin
|
||||
daemon_directory = /usr/lib/postfix
|
||||
program_directory = /usr/lib/postfix
|
||||
sendmail_path = /usr/sbin/sendmail
|
||||
|
||||
## General Postfix configuration
|
||||
# should be the default domain from your provider eg. "server100.provider.tld"
|
||||
mydomain = <SERVERNAME>
|
||||
|
||||
# should be different from $mydomain eg. "mail.$mydomain"
|
||||
myhostname = mail.<SERVERNAME>
|
||||
myhostname = <SERVERNAME>
|
||||
|
||||
mydestination = $myhostname,
|
||||
$mydomain,
|
||||
@@ -26,7 +20,7 @@ default_destination_concurrency_limit = 20
|
||||
local_destination_concurrency_limit = 2
|
||||
|
||||
# SMTPD Settings
|
||||
smtpd_banner = $myhostname ESMTP $mail_name (Ubuntu/GNU)
|
||||
smtpd_banner = $myhostname ESMTP $mail_name (Ubuntu)
|
||||
smtpd_helo_required = yes
|
||||
smtpd_recipient_restrictions = permit_mynetworks,
|
||||
permit_sasl_authenticated,
|
||||
@@ -35,25 +29,24 @@ smtpd_recipient_restrictions = permit_mynetworks,
|
||||
reject_non_fqdn_recipient
|
||||
smtpd_sender_restrictions = permit_mynetworks,
|
||||
permit_sasl_authenticated,
|
||||
reject_unknown_hostname,
|
||||
reject_unknown_helo_hostname,
|
||||
reject_unknown_recipient_domain,
|
||||
reject_unknown_sender_domain
|
||||
smtpd_client_restrictions = permit_mynetworks,
|
||||
permit_sasl_authenticated,
|
||||
reject_unknown_client
|
||||
reject_unknown_client_hostname
|
||||
# Maximum size of Message in bytes (50MB)
|
||||
message_size_limit = 52428800
|
||||
|
||||
## SASL Auth Settings
|
||||
smtpd_sasl_auth_enable = yes
|
||||
smtpd_sasl_local_domain = $myhostname
|
||||
smtpd_sasl_security_options = noanonymous
|
||||
broken_sasl_auth_clients = yes
|
||||
## Dovecot Settings for deliver, SASL Auth and virtual transport
|
||||
## uncomment those line to use Dovecot
|
||||
#mailbox_command = /usr/lib/dovecot/deliver
|
||||
#virtual_transport = dovecot
|
||||
#dovecot_destination_recipient_limit = 1
|
||||
smtpd_sasl_type = dovecot
|
||||
mailbox_command = /usr/lib/dovecot/deliver
|
||||
virtual_transport = dovecot
|
||||
dovecot_destination_recipient_limit = 1
|
||||
|
||||
# Virtual delivery settings
|
||||
virtual_mailbox_base = <VIRTUAL_MAILBOX_BASE>
|
||||
@@ -65,7 +58,6 @@ virtual_gid_maps = static:<VIRTUAL_GID_MAPS>
|
||||
|
||||
# Local delivery settings
|
||||
local_transport = local
|
||||
alias_database = hash:/etc/aliases
|
||||
alias_maps = $alias_database
|
||||
|
||||
# Default Mailbox size, is set to 0 which means unlimited!
|
||||
@@ -75,17 +67,14 @@ virtual_mailbox_limit = 0
|
||||
### TLS settings
|
||||
###
|
||||
## TLS for outgoing mails from the server to another server
|
||||
#smtp_use_tls = yes
|
||||
#smtp_tls_security_level = may
|
||||
#smtp_tls_note_starttls_offer = yes
|
||||
## TLS for email client
|
||||
#smtpd_tls_cert_file = /etc/ssl/server/<SERVERNAME>.crt
|
||||
#smtpd_tls_key_file = /etc/ssl/server/<SERVERNAME>.key
|
||||
#smtpd_tls_CAfile = /etc/ssl/cacert.class3.crt # Just an example for CACert.org
|
||||
#smtpd_tls_auth_only = no
|
||||
#smtpd_tls_security_level = may
|
||||
#smtpd_tls_cert_file = /etc/ssl/server/<SERVERNAME>.pem
|
||||
#smtpd_tls_CAfile = /etc/ssl/certs/ca-certificates.crt
|
||||
#smtpd_tls_loglevel = 1
|
||||
#smtpd_tls_received_header = yes
|
||||
#smtpd_tls_session_cache_timeout = 3600s
|
||||
#tls_random_source = dev:/dev/urandom
|
||||
|
||||
debugger_command =
|
||||
PATH=/bin:/usr/bin:/usr/local/bin:/usr/X11R6/bin
|
||||
@@ -0,0 +1,8 @@
|
||||
user = <SQL_UNPRIVILEGED_USER>
|
||||
password = <SQL_UNPRIVILEGED_PASSWORD>
|
||||
dbname = <SQL_DB>
|
||||
table = mail_virtual
|
||||
select_field = destination
|
||||
where_field = email
|
||||
additional_conditions = and TRIM(destination) <> ''
|
||||
hosts = <SQL_HOST>
|
||||
@@ -0,0 +1,8 @@
|
||||
user = <SQL_UNPRIVILEGED_USER>
|
||||
password = <SQL_UNPRIVILEGED_PASSWORD>
|
||||
dbname = <SQL_DB>
|
||||
table = panel_domains
|
||||
select_field = domain
|
||||
where_field = domain
|
||||
additional_conditions = and isemaildomain = '1'
|
||||
hosts = <SQL_HOST>
|
||||
@@ -0,0 +1,7 @@
|
||||
user = <SQL_UNPRIVILEGED_USER>
|
||||
password = <SQL_UNPRIVILEGED_PASSWORD>
|
||||
dbname = <SQL_DB>
|
||||
table = mail_users
|
||||
select_field = maildir
|
||||
where_field = email
|
||||
hosts = <SQL_HOST>
|
||||
@@ -18,10 +18,10 @@ LoadModule mod_sql.c
|
||||
#LoadModule mod_ldap.c
|
||||
LoadModule mod_sql_mysql.c
|
||||
#LoadModule mod_sql_postgres.c
|
||||
#LoadModule mod_quotatab.c
|
||||
LoadModule mod_quotatab.c
|
||||
#LoadModule mod_quotatab_file.c
|
||||
#LoadModule mod_quotatab_ldap.c
|
||||
#LoadModule mod_quotatab_sql.c
|
||||
LoadModule mod_quotatab_sql.c
|
||||
#LoadModule mod_radius.c
|
||||
LoadModule mod_wrap.c
|
||||
LoadModule mod_rewrite.c
|
||||
|
||||
@@ -62,3 +62,14 @@ SQLNamedQuery download UPDATE "down_count=down_count+1, down_bytes=down_bytes+%b
|
||||
|
||||
SQLLog STOR upload
|
||||
SQLNamedQuery upload UPDATE "up_count=up_count+1, up_bytes=up_bytes+%b WHERE username='%u'" ftp_users
|
||||
|
||||
QuotaEngine on
|
||||
QuotaShowQuotas on
|
||||
QuotaDisplayUnits Mb
|
||||
QuotaLock /var/lock/ftpd.quotatab.lock
|
||||
QuotaLimitTable sql:/get-quota-limit
|
||||
QuotaTallyTable sql:/get-quota-tally/update-quota-tally/insert-quota-tally
|
||||
SQLNamedQuery get-quota-limit SELECT "ftp_users.username AS name, ftp_quotalimits.quota_type, ftp_quotalimits.per_session, ftp_quotalimits.limit_type, panel_customers.diskspace*1024 AS bytes_in_avail, ftp_quotalimits.bytes_out_avail, ftp_quotalimits.bytes_xfer_avail, ftp_quotalimits.files_in_avail, ftp_quotalimits.files_out_avail, ftp_quotalimits.files_xfer_avail FROM ftp_users, ftp_quotalimits, panel_customers WHERE ftp_users.username = '%{0}' AND panel_customers.loginname = SUBSTRING_INDEX('%{0}', 'ftp', 1) AND quota_type ='%{1}'"
|
||||
SQLNamedQuery get-quota-tally SELECT "name, quota_type, bytes_in_used,bytes_out_used, bytes_xfer_used, files_in_used, files_out_used,files_xfer_used FROM ftp_quotatallies WHERE name = '%{0}' AND quota_type = '%{1}'"
|
||||
SQLNamedQuery update-quota-tally UPDATE "bytes_in_used = bytes_in_used + %{0}, bytes_out_used = bytes_out_used + %{1}, bytes_xfer_used = bytes_xfer_used + %{2}, files_in_used = files_in_used + %{3}, files_out_used= files_out_used + %{4}, files_xfer_used = files_xfer_used + %{5} WHERE name= '%{6}' AND quota_type = '%{7}'" ftp_quotatallies
|
||||
SQLNamedQuery insert-quota-tally INSERT "%{0}, %{1}, %{2}, %{3}, %{4},%{5}, %{6}, %{7}" ftp_quotatallies
|
||||
|
||||
@@ -8,3 +8,4 @@ MYSQLGetPW SELECT password FROM ftp_users WHERE username="\L" AND login_ena
|
||||
MYSQLGetUID SELECT uid FROM ftp_users WHERE username="\L" AND login_enabled="y"
|
||||
MYSQLGetGID SELECT gid FROM ftp_users WHERE username="\L" AND login_enabled="y"
|
||||
MYSQLGetDir SELECT homedir FROM ftp_users WHERE username="\L" AND login_enabled="y"
|
||||
MySQLGetQTASZ SELECT panel_customers.diskspace/1024 AS QuotaSize FROM panel_customers, ftp_users WHERE username = "\L" AND panel_customers.loginname = SUBSTRING_INDEX('\L', 'ftp', 1)
|
||||
|
||||
Reference in New Issue
Block a user