Merged revisions 1216 - 1279 from trunk
191 files added
230 files modified
1 files deleted
| | |
| | | |
| | | 7) Install Jailkit (optional, only needed if you want to use chrroting for SSH users) |
| | | |
| | | apt-get install build-essential autoconf automake1.9 libtool flex bison |
| | | apt-get install build-essential autoconf automake1.9 libtool flex bison debhelper |
| | | cd /tmp |
| | | wget http://olivier.sessink.nl/jailkit/jailkit-2.5.tar.gz |
| | | tar xvfz jailkit-2.5.tar.gz |
| | | cd jailkit-2.5 |
| | | ./configure |
| | | make |
| | | make install |
| | | rm -rf jailkit-2.5* |
| | | wget http://olivier.sessink.nl/jailkit/jailkit-2.7.tar.gz |
| | | tar xvfz jailkit-2.7.tar.gz |
| | | cd jailkit-2.7 |
| | | ./debian/rules binary |
| | | cd .. |
| | | dpkg -i jailkit_2.7-1_i386.deb |
| | | rm -rf jailkit-2.7* |
| | | |
| | | 8) Install fail2ban (optional but recomended, because the monitor tries to show the log) |
| | | More info at: http://www.howtoforge.com/fail2ban_debian_etch |
| | |
| | | |
| | | a2enmod suexec rewrite ssl actions include |
| | | |
| | | # Secure phpMyAdmin by deleting setuppassword-file |
| | | # and removing/commenting Setup Authorization from apache.conf |
| | | |
| | | rm /etc/phpmyadmin/htpasswd.setup |
| | | |
| | | vi /etc/phpmyadmin/apache.conf |
| | | |
| | | # delete/comment following lines (between the ----- lines): |
| | | ------------------------------------------------------ |
| | | # Authorize for setup |
| | | <Files setup.php> |
| | | # For Apache 1.3 and 2.0 |
| | | <IfModule mod_auth.c> |
| | | AuthType Basic |
| | | AuthName "phpMyAdmin Setup" |
| | | AuthUserFile /etc/phpmyadmin/htpasswd.setup |
| | | </IfModule> |
| | | # For Apache 2.2 |
| | | <IfModule mod_authn_file.c> |
| | | AuthType Basic |
| | | AuthName "phpMyAdmin Setup" |
| | | AuthUserFile /etc/phpmyadmin/htpasswd.setup |
| | | </IfModule> |
| | | Require valid-user |
| | | </Files> |
| | | ------------------------------------------------------ |
| | | |
| | | # restart apache before continuing |
| | | |
| | | /etc/init.d/apache2 restart |
| | |
| | | |
| | | 7) Install Jailkit (optional, only needed if you want to use chrroting for SSH users) |
| | | |
| | | apt-get install build-essential autoconf automake1.9 libtool flex bison |
| | | apt-get install build-essential autoconf automake1.9 libtool flex bison debhelper |
| | | cd /tmp |
| | | wget http://olivier.sessink.nl/jailkit/jailkit-2.5.tar.gz |
| | | tar xvfz jailkit-2.5.tar.gz |
| | | cd jailkit-2.5 |
| | | ./configure |
| | | make |
| | | make install |
| | | wget http://olivier.sessink.nl/jailkit/jailkit-2.7.tar.gz |
| | | tar xvfz jailkit-2.7.tar.gz |
| | | cd jailkit-2.7 |
| | | ./debian/rules binary |
| | | cd .. |
| | | rm -rf jailkit-2.5* |
| | | dpkg -i jailkit_2.7-1_i386.deb |
| | | rm -rf jailkit-2.7* |
| | | |
| | | 8) Install fail2ban (optional but recomended, because the monitor tries to show the log) |
| | | More info at: http://www.howtoforge.com/fail2ban_debian_etch |
| | |
| | | |
| | | set docroot to: |
| | | ### |
| | | docroot=/var/clients |
| | | docroot=/var/www/clients |
| | | ### |
| | | |
| | | Change: application/x-httpd-php=php:/usr/bin/php-cgi to: |
| | |
| | | 7.1) OPTIONAL: Installing Jailkit |
| | | ******************************************************************************* |
| | | ___ |
| | | apt-get install build-essential autoconf automake1.9 libtool flex bison |
| | | apt-get install build-essential autoconf automake1.9 libtool flex bison debhelper |
| | | cd /tmp |
| | | wget http://olivier.sessink.nl/jailkit/jailkit-2.5.tar.gz |
| | | tar xvfz jailkit-2.5.tar.gz |
| | | cd jailkit-2.5 |
| | | ./configure |
| | | make |
| | | make install |
| | | wget http://olivier.sessink.nl/jailkit/jailkit-2.7.tar.gz |
| | | tar xvfz jailkit-2.7.tar.gz |
| | | cd jailkit-2.7 |
| | | ./debian/rules binary |
| | | cd .. |
| | | dpkg -i jailkit_2.7-1_i386.deb |
| | | rm -rf jailkit-2.7* |
| | | ___ |
| | | |
| | | |
| | |
| | | $conf['jailkit']['jk_init'] = 'jk_init.ini';
|
| | | $conf['jailkit']['jk_chrootsh'] = 'jk_chrootsh.ini';
|
| | | $conf['jailkit']['jailkit_chroot_app_programs'] = '/usr/bin/groups /usr/bin/id /usr/bin/dircolors /bin/basename /usr/bin/dirname /usr/bin/nano';
|
| | | $conf['jailkit']['jailkit_chroot_cron_programs'] = '/usr/bin/php /usr/bin/perl /usr/share/perl /usr/share/php';
|
| | |
|
| | | //* vlogger
|
| | | $conf['vlogger']['config_dir'] = '/etc';
|
| | |
|
| | | //* cron
|
| | | $conf['cron']['init_script'] = 'crond';
|
| | | $conf['cron']['crontab_dir'] = '/etc/cron.d';
|
| | | $conf['cron']['wget'] = '/usr/bin/wget';
|
| | |
|
| | | ?> |
| | |
| | | $conf['jailkit']['jk_init'] = 'jk_init.ini'; |
| | | $conf['jailkit']['jk_chrootsh'] = 'jk_chrootsh.ini'; |
| | | $conf['jailkit']['jailkit_chroot_app_programs'] = '/usr/bin/groups /usr/bin/id /usr/bin/dircolors /bin/basename /usr/bin/dirname /usr/bin/nano'; |
| | | $conf['jailkit']['jailkit_chroot_cron_programs'] = '/usr/bin/php /usr/bin/perl /usr/share/perl /usr/share/php'; |
| | | |
| | | //* vlogger |
| | | $conf['vlogger']['config_dir'] = '/etc'; |
| | | |
| | | //* cron |
| | | $conf['cron']['init_script'] = 'crond'; |
| | | $conf['cron']['crontab_dir'] = '/etc/cron.d'; |
| | | $conf['cron']['wget'] = '/usr/bin/wget'; |
| | | |
| | | ?> |
| | |
| | | $conf['jailkit']['jk_init'] = 'jk_init.ini';
|
| | | $conf['jailkit']['jk_chrootsh'] = 'jk_chrootsh.ini';
|
| | | $conf['jailkit']['jailkit_chroot_app_programs'] = '/usr/bin/groups /usr/bin/id /usr/bin/dircolors /usr/bin/lesspipe /usr/bin/basename /usr/bin/dirname /usr/bin/nano /usr/bin/pico';
|
| | | $conf['jailkit']['jailkit_chroot_cron_programs'] = '/usr/bin/php /usr/bin/perl /usr/share/perl /usr/share/php';
|
| | |
|
| | | //* vlogger
|
| | | $conf['vlogger']['config_dir'] = '/etc';
|
| | |
|
| | | //* cron
|
| | | $conf['cron']['init_script'] = 'cron';
|
| | | $conf['cron']['crontab_dir'] = '/etc/cron.d';
|
| | | $conf['cron']['wget'] = '/usr/bin/wget';
|
| | |
|
| | | ?> |
| | |
| | | $conf['jailkit']['jk_init'] = 'jk_init.ini';
|
| | | $conf['jailkit']['jk_chrootsh'] = 'jk_chrootsh.ini';
|
| | | $conf['jailkit']['jailkit_chroot_app_programs'] = '/usr/bin/groups /usr/bin/id /usr/bin/dircolors /bin/basename /usr/bin/dirname /usr/bin/nano';
|
| | | $conf['jailkit']['jailkit_chroot_cron_programs'] = '/usr/bin/php /usr/bin/perl /usr/share/perl /usr/share/php';
|
| | |
|
| | | //* vlogger
|
| | | $conf['vlogger']['config_dir'] = '/etc';
|
| | |
|
| | | //* cron
|
| | | $conf['cron']['init_script'] = 'crond';
|
| | | $conf['cron']['crontab_dir'] = '/etc/cron.d';
|
| | | $conf['cron']['wget'] = '/usr/bin/wget';
|
| | |
|
| | | ?> |
| | |
| | | $conf['jailkit']['jk_init'] = 'jk_init.ini'; |
| | | $conf['jailkit']['jk_chrootsh'] = 'jk_chrootsh.ini'; |
| | | $conf['jailkit']['jailkit_chroot_app_programs'] = '/usr/bin/groups /usr/bin/id /usr/bin/dircolors /usr/bin/lesspipe /usr/bin/basename /usr/bin/dirname /usr/bin/nano /usr/bin/pico'; |
| | | $conf['jailkit']['jailkit_chroot_cron_programs'] = '/usr/bin/php /usr/bin/perl /usr/share/perl /usr/share/php'; |
| | | |
| | | //* vlogger |
| | | $conf['vlogger']['config_dir'] = '/etc'; |
| | | |
| | | //* cron |
| | | $conf['cron']['init_script'] = 'cron'; |
| | | $conf['cron']['crontab_dir'] = '/etc/cron.d'; |
| | | $conf['cron']['wget'] = '/usr/bin/wget'; |
| | | |
| | | ?> |
| | |
| | | $conf['jailkit']['jk_init'] = 'jk_init.ini';
|
| | | $conf['jailkit']['jk_chrootsh'] = 'jk_chrootsh.ini';
|
| | | $conf['jailkit']['jailkit_chroot_app_programs'] = '/usr/bin/groups /usr/bin/id /usr/bin/dircolors /usr/bin/basename /usr/bin/dirname /usr/bin/nano /usr/bin/pico';
|
| | | $conf['jailkit']['jailkit_chroot_cron_programs'] = '/usr/bin/php /usr/bin/perl /usr/share/perl /usr/share/php';
|
| | |
|
| | | //* vlogger
|
| | | $conf['vlogger']['config_dir'] = '/etc';
|
| | |
|
| | | //* cron
|
| | | $conf['cron']['init_script'] = 'cron';
|
| | | $conf['cron']['crontab_dir'] = '/etc/cron.d';
|
| | | $conf['cron']['wget'] = '/usr/bin/wget';
|
| | |
|
| | | ?> |
| | |
| | | if(is_file('/etc/suphp.conf')) { |
| | | //replaceLine('/etc/suphp.conf','php=php:/usr/bin','x-httpd-suphp=php:/usr/bin/php-cgi',0); |
| | | replaceLine('/etc/suphp.conf','docroot=','docroot=/var/www',0); |
| | | replaceLine('/etc/suphp.conf','umask=0077','umask=0022',0); |
| | | } |
| | | |
| | | //* Create the logging directory for the vhost logfiles |
| | |
| | | exec("ln -s ".$vhost_conf_dir."/ispconfig.conf ".$vhost_conf_enabled_dir."/000-ispconfig.conf"); |
| | | } |
| | | |
| | | //* make sure that webalizer finds its config file when it is directly in /etc |
| | | if(@is_file('/etc/webalizer.conf') && !@is_dir('/etc/webalizer')) { |
| | | exec('mkdir /etc/webalizer'); |
| | | exec('ln -s /etc/webalizer.conf /etc/webalizer/webalizer.conf'); |
| | | } |
| | | |
| | | if(is_file('/etc/webalizer/webalizer.conf')) { |
| | | // Change webalizer mode to incremental |
| | | replaceLine('/etc/webalizer/webalizer.conf','Incremental no','Incremental yes',0,0); |
| | | replaceLine('/etc/webalizer/webalizer.conf','IncrementalName webalizer.current','IncrementalName webalizer.current',0,0); |
| | | replaceLine('/etc/webalizer/webalizer.conf','HistoryName webalizer.hist','HistoryName webalizer.hist',0,0); |
| | | } |
| | | |
| | | //* add a sshusers group |
| | | $command = 'groupadd sshusers'; |
| | | if(!is_group('sshusers')) caselog($command.' &> /dev/null 2> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command"); |
| | | |
| | | } |
| | | |
| | | public function configure_firewall() |
| | |
| | | //if(is_file('/etc/suphp.conf')) { |
| | | replaceLine('/etc/suphp.conf','php=php','x-httpd-suphp=php:/srv/www/cgi-bin/php5',0,0); |
| | | replaceLine('/etc/suphp.conf','docroot=','docroot=/srv/www',0,0); |
| | | replaceLine('/etc/suphp.conf','umask=0077','umask=0022',0); |
| | | //} |
| | | |
| | | // Sites enabled and avaulable dirs |
| | |
| | | exec("ln -s ".$vhost_conf_dir."/ispconfig.conf ".$vhost_conf_enabled_dir."/000-ispconfig.conf"); |
| | | } |
| | | |
| | | //* make sure that webalizer finds its config file when it is directly in /etc |
| | | if(@is_file('/etc/webalizer.conf') && !@is_dir('/etc/webalizer')) { |
| | | exec('mkdir /etc/webalizer'); |
| | | exec('ln -s /etc/webalizer.conf /etc/webalizer/webalizer.conf'); |
| | | } |
| | | |
| | | if(is_file('/etc/webalizer/webalizer.conf')) { |
| | | // Change webalizer mode to incremental |
| | | replaceLine('/etc/webalizer/webalizer.conf','Incremental no','Incremental yes',0,0); |
| | | replaceLine('/etc/webalizer/webalizer.conf','IncrementalName webalizer.current','IncrementalName webalizer.current',0,0); |
| | | replaceLine('/etc/webalizer/webalizer.conf','HistoryName webalizer.hist','HistoryName webalizer.hist',0,0); |
| | | } |
| | | |
| | | //* add a sshusers group |
| | | $command = 'groupadd sshusers'; |
| | | if(!is_group('sshusers')) caselog($command.' &> /dev/null 2> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command"); |
| | | |
| | | } |
| | | |
| | | public function configure_firewall() |
| | |
| | | //** Include the base class of the installer class |
| | | require_once('lib/installer_base.lib.php'); |
| | | |
| | | //** Ensure that current working directory is install directory |
| | | $cur_dir = getcwd(); |
| | | if(realpath(dirname(__FILE__)) != $cur_dir) die("Please run installation/update from _inside_ the install directory!\n"); |
| | | |
| | | //** Install logfile |
| | | define('ISPC_LOG_FILE', '/var/log/ispconfig_install.log'); |
| | | define('ISPC_INSTALL_ROOT', realpath(dirname(__FILE__).'/../')); |
| | |
| | | swriteln('Configuring Apache'); |
| | | $inst->configure_apache(); |
| | | |
| | | //** Configure vlogger |
| | | swriteln('Configuring vlogger'); |
| | | $inst->configure_vlogger(); |
| | | |
| | | //* Configure Firewall |
| | | swriteln('Configuring Firewall'); |
| | | $inst->configure_firewall(); |
| | |
| | | $conf['services']['web'] = true; |
| | | swriteln('Configuring Apache'); |
| | | $inst->configure_apache(); |
| | | |
| | | //** Configure vlogger |
| | | swriteln('Configuring vlogger'); |
| | | $inst->configure_vlogger(); |
| | | } |
| | | |
| | | //** Configure Firewall |
| | |
| | | $tpl_ini_array['web']['website_basedir'] = $conf['web']['website_basedir']; |
| | | $tpl_ini_array['web']['website_path'] = $conf['web']['website_path']; |
| | | $tpl_ini_array['web']['website_symlinks'] = $conf['web']['website_symlinks']; |
| | | |
| | | $tpl_ini_array['cron']['crontab_dir'] = $conf['cron']['crontab_dir']; |
| | | $tpl_ini_array['web']['security_level'] = 20; |
| | | $tpl_ini_array['web']['user'] = $conf['apache']['user']; |
| | | $tpl_ini_array['web']['group'] = $conf['apache']['group']; |
| | | |
| | | $server_ini_content = array_to_ini($tpl_ini_array); |
| | | $server_ini_content = mysql_real_escape_string($server_ini_content); |
| | | |
| | |
| | | $sql = "INSERT INTO `server` (`server_id`, `sys_userid`, `sys_groupid`, `sys_perm_user`, `sys_perm_group`, `sys_perm_other`, `server_name`, `mail_server`, `web_server`, `dns_server`, `file_server`, `db_server`, `vserver_server`, `config`, `updated`, `active`) VALUES ('".$conf['server_id']."',1, 1, 'riud', 'riud', 'r', '".$conf['hostname']."', '$mail_server_enabled', '$web_server_enabled', '$dns_server_enabled', '$file_server_enabled', '$db_server_enabled', '$vserver_server_enabled', '$server_ini_content', 0, 1);"; |
| | | $this->db->query($sql); |
| | | |
| | | //* insert the ispconfig user in the remote server |
| | | $from_host = $conf['hostname']; |
| | | $from_ip = gethostbyname($conf['hostname']); |
| | | |
| | | //* username for the ispconfig user |
| | | $conf['mysql']['master_ispconfig_user'] = 'ispcsrv'.$conf['server_id']; |
| | | |
| | | //* Delete ISPConfig user in the master database, in case that it exists |
| | | $this->dbmaster->query("DELETE FROM mysql.user WHERE User = '".$conf['mysql']['master_ispconfig_user']."' AND Host = '".$from_host."';"); |
| | | $this->dbmaster->query("DELETE FROM mysql.db WHERE Db = '".$conf['mysql']['master_database']."' AND Host = '".$from_host."';"); |
| | | $this->dbmaster->query("DELETE FROM mysql.user WHERE User = '".$conf['mysql']['master_ispconfig_user']."' AND Host = '".$from_ip."';"); |
| | | $this->dbmaster->query("DELETE FROM mysql.db WHERE Db = '".$conf['mysql']['master_database']."' AND Host = '".$from_ip."';"); |
| | | $this->dbmaster->query('FLUSH PRIVILEGES;'); |
| | | |
| | | //* Create the ISPConfig database user in the remote database |
| | | $query = 'GRANT SELECT, INSERT, UPDATE, DELETE ON '.$conf['mysql']['master_database'].".* " |
| | | ."TO '".$conf['mysql']['master_ispconfig_user']."'@'".$from_host."' " |
| | | ."IDENTIFIED BY '".$conf['mysql']['master_ispconfig_password']."';"; |
| | | if(!$this->dbmaster->query($query)) { |
| | | $this->error('Unable to create database user in master database: '.$conf['mysql']['master_ispconfig_user'].' Error: '.$this->dbmaster->errorMessage); |
| | | } |
| | | $query = 'GRANT SELECT, INSERT, UPDATE, DELETE ON '.$conf['mysql']['master_database'].".* " |
| | | ."TO '".$conf['mysql']['master_ispconfig_user']."'@'".$from_ip."' " |
| | | ."IDENTIFIED BY '".$conf['mysql']['master_ispconfig_password']."';"; |
| | | if(!$this->dbmaster->query($query)) { |
| | | $this->error('Unable to create database user in master database: '.$conf['mysql']['master_ispconfig_user'].' Error: '.$this->dbmaster->errorMessage); |
| | | } |
| | | |
| | | $this->grant_master_database_rights(); |
| | | |
| | | } else { |
| | | //* Insert the server, if its not a mster / slave setup |
| | |
| | | |
| | | } |
| | | |
| | | public function grant_master_database_rights() |
| | | { |
| | | global $conf; |
| | | |
| | | if($conf['mysql']['master_slave_setup'] != 'y') return; |
| | | |
| | | //* insert the ispconfig user in the remote server |
| | | $from_host = $conf['hostname']; |
| | | $from_ip = gethostbyname($conf['hostname']); |
| | | |
| | | //* Delete ISPConfig user in the master database, in case that it exists |
| | | $this->dbmaster->query("DELETE FROM mysql.user WHERE User = '".$conf['mysql']['master_ispconfig_user']."' AND Host = '".$from_host."';"); |
| | | $this->dbmaster->query("DELETE FROM mysql.db WHERE Db = '".$conf['mysql']['master_database']."' AND Host = '".$from_host."';"); |
| | | $this->dbmaster->query("DELETE FROM mysql.user WHERE User = '".$conf['mysql']['master_ispconfig_user']."' AND Host = '".$from_ip."';"); |
| | | $this->dbmaster->query("DELETE FROM mysql.db WHERE Db = '".$conf['mysql']['master_database']."' AND Host = '".$from_ip."';"); |
| | | $this->dbmaster->query('FLUSH PRIVILEGES;'); |
| | | |
| | | $hosts = array($from_host, $from_ip); |
| | | |
| | | foreach($hosts as $src_host) { |
| | | //* Create the ISPConfig database user in the remote database |
| | | $query = "GRANT SELECT ON ".$conf['mysql']['master_database'].".`server` " |
| | | ."TO '".$conf['mysql']['master_ispconfig_user']."'@'".$src_host."' " |
| | | ."IDENTIFIED BY '".$conf['mysql']['master_ispconfig_password']."';"; |
| | | if(!$this->dbmaster->query($query)) { |
| | | $this->error('Unable to create database user in master database: '.$conf['mysql']['master_ispconfig_user'].' Error: '.$this->dbmaster->errorMessage); |
| | | } |
| | | |
| | | $query = "GRANT SELECT, INSERT ON ".$conf['mysql']['master_database'].".`sys_log` " |
| | | ."TO '".$conf['mysql']['master_ispconfig_user']."'@'".$src_host."' " |
| | | ."IDENTIFIED BY '".$conf['mysql']['master_ispconfig_password']."';"; |
| | | if(!$this->dbmaster->query($query)) { |
| | | $this->error('Unable to create database user in master database: '.$conf['mysql']['master_ispconfig_user'].' Error: '.$this->dbmaster->errorMessage); |
| | | } |
| | | |
| | | $query = "GRANT SELECT, UPDATE(`status`) ON ".$conf['mysql']['master_database'].".`sys_datalog` " |
| | | ."TO '".$conf['mysql']['master_ispconfig_user']."'@'".$src_host."' " |
| | | ."IDENTIFIED BY '".$conf['mysql']['master_ispconfig_password']."';"; |
| | | if(!$this->dbmaster->query($query)) { |
| | | $this->error('Unable to create database user in master database: '.$conf['mysql']['master_ispconfig_user'].' Error: '.$this->dbmaster->errorMessage); |
| | | } |
| | | |
| | | $query = "GRANT UPDATE(`status`) ON ".$conf['mysql']['master_database'].".`software_update_inst` " |
| | | ."TO '".$conf['mysql']['master_ispconfig_user']."'@'".$src_host."' " |
| | | ."IDENTIFIED BY '".$conf['mysql']['master_ispconfig_password']."';"; |
| | | if(!$this->dbmaster->query($query)) { |
| | | $this->error('Unable to create database user in master database: '.$conf['mysql']['master_ispconfig_user'].' Error: '.$this->dbmaster->errorMessage); |
| | | } |
| | | |
| | | $query = "GRANT UPDATE (`ssl_request`, `ssl_cert`, `ssl_action`) ON ".$conf['mysql']['master_database'].".`web_domain` " |
| | | ."TO '".$conf['mysql']['master_ispconfig_user']."'@'".$src_host."' " |
| | | ."IDENTIFIED BY '".$conf['mysql']['master_ispconfig_password']."';"; |
| | | if(!$this->dbmaster->query($query)) { |
| | | $this->error('Unable to create database user in master database: '.$conf['mysql']['master_ispconfig_user'].' Error: '.$this->dbmaster->errorMessage); |
| | | } |
| | | |
| | | $query = "GRANT SELECT ON ".$conf['mysql']['master_database'].".`sys_group` " |
| | | ."TO '".$conf['mysql']['master_ispconfig_user']."'@'".$src_host."' " |
| | | ."IDENTIFIED BY '".$conf['mysql']['master_ispconfig_password']."';"; |
| | | if(!$this->dbmaster->query($query)) { |
| | | $this->error('Unable to create database user in master database: '.$conf['mysql']['master_ispconfig_user'].' Error: '.$this->dbmaster->errorMessage); |
| | | } |
| | | |
| | | $query = "GRANT INSERT , DELETE ON ".$conf['mysql']['master_database'].".`monitor_data` " |
| | | ."TO '".$conf['mysql']['master_ispconfig_user']."'@'".$src_host."' " |
| | | ."IDENTIFIED BY '".$conf['mysql']['master_ispconfig_password']."';"; |
| | | if(!$this->dbmaster->query($query)) { |
| | | $this->error('Unable to create database user in master database: '.$conf['mysql']['master_ispconfig_user'].' Error: '.$this->dbmaster->errorMessage); |
| | | } |
| | | |
| | | $query = "GRANT SELECT, INSERT, UPDATE ON ".$conf['mysql']['master_database'].".`mail_traffic` " |
| | | ."TO '".$conf['mysql']['master_ispconfig_user']."'@'".$src_host."' " |
| | | ."IDENTIFIED BY '".$conf['mysql']['master_ispconfig_password']."';"; |
| | | if(!$this->dbmaster->query($query)) { |
| | | $this->error('Unable to create database user in master database: '.$conf['mysql']['master_ispconfig_user'].' Error: '.$this->dbmaster->errorMessage); |
| | | } |
| | | |
| | | $query = "GRANT SELECT, INSERT, UPDATE ON ".$conf['mysql']['master_database'].".`web_traffic` " |
| | | ."TO '".$conf['mysql']['master_ispconfig_user']."'@'".$src_host."' " |
| | | ."IDENTIFIED BY '".$conf['mysql']['master_ispconfig_password']."';"; |
| | | if(!$this->dbmaster->query($query)) { |
| | | $this->error('Unable to create database user in master database: '.$conf['mysql']['master_ispconfig_user'].' Error: '.$this->dbmaster->errorMessage); |
| | | } |
| | | |
| | | } |
| | | |
| | | } |
| | | |
| | | //** writes postfix configuration files |
| | | public function process_postfix_config($configfile) |
| | |
| | | if(is_file('/etc/suphp/suphp.conf')) { |
| | | replaceLine('/etc/suphp/suphp.conf','php=php:/usr/bin','x-httpd-suphp=php:/usr/bin/php-cgi',0); |
| | | //replaceLine('/etc/suphp/suphp.conf','docroot=','docroot=/var/clients',0); |
| | | replaceLine('/etc/suphp/suphp.conf','umask=0077','umask=0022',0); |
| | | } |
| | | |
| | | if(is_file('/etc/apache2/sites-enabled/000-default')) { |
| | |
| | | if(!@is_link($vhost_conf_enabled_dir."/000-ispconfig.conf")) { |
| | | exec("ln -s ".$vhost_conf_dir."/ispconfig.conf ".$vhost_conf_enabled_dir."/000-ispconfig.conf"); |
| | | } |
| | | |
| | | //* make sure that webalizer finds its config file when it is directly in /etc |
| | | if(@is_file('/etc/webalizer.conf') && !@is_dir('/etc/webalizer')) { |
| | | exec('mkdir /etc/webalizer'); |
| | | exec('ln -s /etc/webalizer.conf /etc/webalizer/webalizer.conf'); |
| | | } |
| | | |
| | | if(is_file('/etc/webalizer/webalizer.conf')) { |
| | | // Change webalizer mode to incremental |
| | | replaceLine('/etc/webalizer/webalizer.conf','Incremental no','Incremental yes',0,0); |
| | | replaceLine('/etc/webalizer/webalizer.conf','IncrementalName webalizer.current','IncrementalName webalizer.current',0,0); |
| | | replaceLine('/etc/webalizer/webalizer.conf','HistoryName webalizer.hist','HistoryName webalizer.hist',0,0); |
| | | } |
| | | |
| | | //* add a sshusers group |
| | | $command = 'groupadd sshusers'; |
| | | if(!is_group('sshusers')) caselog($command.' &> /dev/null 2> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command"); |
| | | |
| | | } |
| | | |
| | |
| | | |
| | | } |
| | | |
| | | |
| | | public function configure_vlogger() |
| | | { |
| | | global $conf; |
| | | |
| | | //** Configure vlogger to use traffic logging to mysql (master) db |
| | | $configfile = 'vlogger-dbi.conf'; |
| | | if(is_file($conf["vlogger"]["config_dir"].'/'.$configfile)) copy($conf["vlogger"]["config_dir"].'/'.$configfile,$conf["vlogger"]["config_dir"].'/'.$configfile.'~'); |
| | | if(is_file($conf["vlogger"]["config_dir"].'/'.$configfile.'~')) exec('chmod 400 '.$conf["vlogger"]["config_dir"].'/'.$configfile.'~'); |
| | | $content = rf("tpl/".$configfile.".master"); |
| | | if($conf['mysql']['master_slave_setup'] == 'y') { |
| | | $content = str_replace('{mysql_server_ispconfig_user}',$conf['mysql']['master_ispconfig_user'],$content); |
| | | $content = str_replace('{mysql_server_ispconfig_password}',$conf['mysql']['master_ispconfig_password'], $content); |
| | | $content = str_replace('{mysql_server_database}',$conf['mysql']['master_database'],$content); |
| | | $content = str_replace('{mysql_server_ip}',$conf["mysql"]["master_host"],$content); |
| | | } else { |
| | | $content = str_replace('{mysql_server_ispconfig_user}',$conf['mysql']['ispconfig_user'],$content); |
| | | $content = str_replace('{mysql_server_ispconfig_password}',$conf['mysql']['ispconfig_password'], $content); |
| | | $content = str_replace('{mysql_server_database}',$conf['mysql']['database'],$content); |
| | | $content = str_replace('{mysql_server_ip}',$conf["mysql"]["host"],$content); |
| | | } |
| | | wf($conf["vlogger"]["config_dir"].'/'.$configfile,$content); |
| | | exec('chmod 600 '.$conf["vlogger"]["config_dir"].'/'.$configfile); |
| | | exec('chown root:root '.$conf["vlogger"]["config_dir"].'/'.$configfile); |
| | | |
| | | } |
| | | |
| | | public function install_ispconfig() |
| | | { |
| | | global $conf; |
| | |
| | | `limit_dns_record` int(11) NOT NULL default '-1', |
| | | `default_dbserver` int(11) NOT NULL default '1', |
| | | `limit_database` int(11) NOT NULL default '-1', |
| | | `limit_cron` int(11) NOT NULL default '0', |
| | | `limit_cron_type` enum('url','chrooted','full') NOT NULL default 'url', |
| | | `limit_cron_frequency` int(11) NOT NULL default '5', |
| | | `limit_client` int(11) NOT NULL default '0', |
| | | `parent_client_id` int(11) unsigned NOT NULL default '0', |
| | | `username` varchar(64) default NULL, |
| | |
| | | `limit_dns_zone` int(11) NOT NULL default '-1', |
| | | `limit_dns_record` int(11) NOT NULL default '-1', |
| | | `limit_database` int(11) NOT NULL default '-1', |
| | | `limit_cron` int(11) NOT NULL default '0', |
| | | `limit_cron_type` enum('url','chrooted','full') NOT NULL default 'url', |
| | | `limit_cron_frequency` int(11) NOT NULL default '5', |
| | | `limit_client` int(11) NOT NULL default '0', |
| | | PRIMARY KEY (`template_id`) |
| | | ) ENGINE=MyISAM AUTO_INCREMENT=1; |
| | | |
| | | |
| | | -- -------------------------------------------------------- |
| | | |
| | | -- |
| | | -- Table structure for table `dns_rr` |
| | | -- |
| | | CREATE TABLE `cron` ( |
| | | `id` int(11) unsigned NOT NULL auto_increment, |
| | | `sys_userid` int(11) unsigned NOT NULL default '0', |
| | | `sys_groupid` int(11) unsigned NOT NULL default '0', |
| | | `sys_perm_user` varchar(5) NULL default NULL, |
| | | `sys_perm_group` varchar(5) NULL default NULL, |
| | | `sys_perm_other` varchar(5) NULL default NULL, |
| | | `server_id` int(11) unsigned NOT NULL default '0', |
| | | `parent_domain_id` int(11) unsigned NOT NULL default '0', |
| | | `type` enum('url','chrooted','full') NOT NULL default 'url', |
| | | `command` varchar(255) NOT NULL, |
| | | `run_min` varchar(100) NULL, |
| | | `run_hour` varchar(100) NULL, |
| | | `run_mday` varchar(100) NULL, |
| | | `run_month` varchar(100) NULL, |
| | | `run_wday` varchar(100) NULL, |
| | | `active` enum('n','y') NOT NULL default 'y', |
| | | PRIMARY KEY (`id`) |
| | | ) ENGINE=MyISAM AUTO_INCREMENT=1; |
| | | |
| | | |
| | | -- -------------------------------------------------------- |
| | | |
| | |
| | | `database_password` varchar(64) default NULL, |
| | | `database_charset` varchar(64) default NULL, |
| | | `remote_access` enum('n','y') NOT NULL default 'y', |
| | | `remote_ips` text NOT NULL, |
| | | `active` enum('n','y') NOT NULL default 'y', |
| | | PRIMARY KEY (`database_id`) |
| | | ) ENGINE=MyISAM AUTO_INCREMENT=1; |
| | | |
| | | |
| | | -- -------------------------------------------------------- |
| | | |
| | | -- |
| | | -- Table structure for table `web_traffic` |
| | | -- |
| | | |
| | | CREATE TABLE `web_traffic` ( |
| | | `hostname` varchar(255) NOT NULL, |
| | | `traffic_date` date NOT NULL, |
| | | `traffic_bytes` bigint(32) unsigned NOT NULL default '0', |
| | | PRIMARY KEY (`hostname`,`traffic_date`) |
| | | ) ENGINE=MyISAM; |
| | | |
| | | |
| | | -- -------------------------------------------------------- |
| | |
| | | -- Dumping data for table `sys_config` |
| | | -- |
| | | |
| | | INSERT INTO sys_config VALUES ('1','db','db_version','3.0.1.3'); |
| | | INSERT INTO sys_config VALUES ('1','db','db_version','3.0.1.4'); |
| | | |
| | | -- -------------------------------------------------------- |
| | | |
| | |
| | | ################################################ |
| | | |
| | | LogFormat "%v %h %l %u %t \"%r\" %>s %B \"%{Referer}i\" \"%{User-Agent}i\"" combined_ispconfig |
| | | CustomLog "| /usr/sbin/vlogger -s access.log -t \"%Y%m%d-access.log\" /var/log/ispconfig/httpd" combined_ispconfig |
| | | CustomLog "| /usr/local/ispconfig/server/scripts/vlogger -s access.log -t \"%Y%m%d-access.log\" -d \"/etc/vlogger-dbi.conf\" /var/log/ispconfig/httpd" combined_ispconfig |
| | | |
| | | <Directory /var/www/clients> |
| | | AllowOverride None |
| | |
| | | |
| | | //** Application |
| | | define('ISPC_APP_TITLE', 'ISPConfig'); |
| | | define('ISPC_APP_VERSION', '3.0.1.3'); |
| | | define('ISPC_APP_VERSION', '3.0.1.4'); |
| | | |
| | | |
| | | //** Database |
| | |
| | | website_symlinks=/var/www/[website_domain]/:/var/www/clients/client[client_id]/[website_domain]/ |
| | | vhost_conf_dir=/etc/apache2/sites-available |
| | | vhost_conf_enabled_dir=/etc/apache2/sites-enabled |
| | | security_level=10 |
| | | user=www-data |
| | | group=www-data |
| | | |
| | | [fastcgi] |
| | | fastcgi_starter_path=/var/www/php-fcgi-scripts/[system_user]/ |
| | |
| | | jailkit_chroot_home=/home/[username] |
| | | jailkit_chroot_app_sections=basicshell editors extendedshell netutils ssh sftp scp groups jk_lsh |
| | | jailkit_chroot_app_programs=/usr/bin/groups /usr/bin/id /usr/bin/dircolors /usr/bin/lesspipe /usr/bin/basename /usr/bin/dirname /usr/bin/nano /usr/bin/pico |
| | | jailkit_chroot_cron_programs=/usr/bin/php /usr/bin/perl /usr/share/perl /usr/share/php |
| | | |
| | | [vlogger] |
| | | config_dir=/etc |
| | | |
| | | [cron] |
| | | init_script=cron |
| | | crontab_dir=/etc/cron.d |
| | | wget=/usr/bin/wget |
New file |
| | |
| | | dsn DBI:mysql:database={mysql_server_database};host={mysql_server_ip}:3306 |
| | | user {mysql_server_ispconfig_user} |
| | | pass {mysql_server_ispconfig_password} |
| | | dump 30 |
| | |
| | | //** Include the base class of the installer class |
| | | require_once('lib/installer_base.lib.php'); |
| | | |
| | | //** Ensure that current working directory is install directory |
| | | $cur_dir = getcwd(); |
| | | if(realpath(dirname(__FILE__)) != $cur_dir) die("Please run installation/update from _inside_ the install directory!\n"); |
| | | |
| | | //** Install logfile |
| | | define('ISPC_LOG_FILE', '/var/log/ispconfig_install.log'); |
| | | define('ISPC_INSTALL_ROOT', realpath(dirname(__FILE__).'/../')); |
| | |
| | | |
| | | //** Create the mysql database |
| | | $inst->configure_database(); |
| | | |
| | | //** Update master database rights |
| | | $inst->grant_master_database_rights(); |
| | | |
| | | //** empty all databases |
| | | $db_tables = $inst->db->getTables(); |
| | |
| | | //** Configure Apache |
| | | swriteln('Configuring Apache'); |
| | | $inst->configure_apache(); |
| | | |
| | | //** Configure vlogger |
| | | swriteln('Configuring vlogger'); |
| | | $inst->configure_vlogger(); |
| | | } |
| | | |
| | | |
| | |
| | | public function lng($text) |
| | | { |
| | | if($this->_language_inc != 1) { |
| | | //* loading global and module Wordbook |
| | | // TODO: this need to be made clearer somehow - pedro |
| | | //@include_once(ISPC_ROOT_PATH.'/lib/lang/'.$_SESSION['s']['language'].'.lng'); |
| | | //* loading global Wordbook |
| | | $this->load_language_file('/lib/lang/'.$_SESSION['s']['language'].'.lng'); |
| | | //* Load module wordbook, if it exists |
| | | if(isset($_SESSION['s']['module']['name']) && isset($_SESSION['s']['language'])) { |
| | | $lng_file = '/web/'.$_SESSION['s']['module']['name'].'/lib/lang/'.$_SESSION['s']['language'].'.lng'; |
| | | if(!file_exists($lng_file)) $lng_file = '/web/'.$_SESSION['s']['module']['name'].'/lib/lang/en.lng'; |
| | | //@include_once($lng_file); |
| | | if(!file_exists(ISPC_ROOT_PATH.$lng_file)) $lng_file = '/web/'.$_SESSION['s']['module']['name'].'/lib/lang/en.lng'; |
| | | $this->load_language_file($lng_file); |
| | | } |
| | | //if(isset($wb)) $this->_wb = $wb; |
| | | $this->_language_inc = 1; |
| | | } |
| | | if(!empty($this->_wb[$text])) { |
| | |
| | | public function tpl_defaults() |
| | | { |
| | | $this->tpl->setVar('app_title', $this->_conf['app_title']); |
| | | $this->tpl->setVar('app_version', $this->_conf['app_version']); |
| | | if(isset($_SESSION['s']['user'])) { |
| | | $this->tpl->setVar('app_version', $this->_conf['app_version']); |
| | | } else { |
| | | $this->tpl->setVar('app_version', ''); |
| | | } |
| | | $this->tpl->setVar('app_link', $this->_conf['app_link']); |
| | | if(isset($this->_conf['app_logo']) && $this->_conf['app_logo'] != '' && @is_file($this->_conf['app_logo'])){ |
| | | $this->tpl->setVar('app_logo', '<img src="'.$this->_conf['app_logo'].'">'); |
| | |
| | | } |
| | | return $records_new; |
| | | } |
| | | |
| | | function dns_servers($field, $record) { |
| | | global $app, $conf; |
| | | |
| | | if($_SESSION["s"]["user"]["typ"] == 'user') { |
| | | // Get the limits of the client |
| | | $client_group_id = $_SESSION["s"]["user"]["default_group"]; |
| | | $client = $app->db->queryOneRecord("SELECT default_dnsserver FROM sys_group, client WHERE sys_group.client_id = client.client_id and sys_group.groupid = $client_group_id"); |
| | | $sql = "SELECT server_id,server_name FROM server WHERE server_id = ".$client['default_dnsserver']; |
| | | } else { |
| | | $sql = "SELECT server_id,server_name FROM server WHERE dns_server = 1 ORDER BY server_name"; |
| | | } |
| | | $records = $app->db->queryAllRecords($sql); |
| | | $records_new = array(); |
| | | if(is_array($records)) { |
| | | foreach($records as $rec) { |
| | | $key = $rec['server_id']; |
| | | $records_new[$key] = $rec['server_name']; |
| | | } |
| | | } |
| | | return $records_new; |
| | | } |
| | | |
| | | |
| | | function client_servers($field, $record) { |
| | | global $app, $conf; |
| | | |
| | | $server_type = $field['name']; |
| | | |
| | | if($_SESSION["s"]["user"]["typ"] == 'user') { |
| | | // Get the limits of the client |
| | | $client_group_id = $_SESSION["s"]["user"]["default_group"]; |
| | | $sql = "SELECT $server_type as server_id FROM sys_group, client WHERE sys_group.client_id = client.client_id and sys_group.groupid = $client_group_id"; |
| | | $client = $app->db->queryOneRecord($sql); |
| | | $sql = "SELECT server_id,server_name FROM server WHERE server_id = ".$client['server_id']; |
| | | } else { |
| | | $sql = "SELECT server_id,server_name FROM server WHERE dns_server = 1 ORDER BY server_name"; |
| | | } |
| | | $records = $app->db->queryAllRecords($sql); |
| | | $records_new = array(); |
| | | if(is_array($records)) { |
| | | foreach($records as $rec) { |
| | | $key = $rec['server_id']; |
| | | $records_new[$key] = $rec['server_name']; |
| | | } |
| | | } |
| | | return $records_new; |
| | | } |
| | | |
| | | |
| | | |
| | | } |
| | | |
| | |
| | | } |
| | | } |
| | | |
| | | //* values are limited to a field in the reseller settings |
| | | if($limit_parts[0] == 'reseller') { |
| | | if($_SESSION["s"]["user"]["typ"] == 'admin') { |
| | | return $values; |
| | | } else { |
| | | //* Get the limits of the client that is currently logged in |
| | | $client_group_id = $_SESSION["s"]["user"]["default_group"]; |
| | | $client = $app->db->queryOneRecord("SELECT parent_client_id FROM sys_group, client WHERE sys_group.client_id = client.client_id and sys_group.groupid = $client_group_id"); |
| | | //echo "SELECT parent_client_id FROM sys_group, client WHERE sys_group.client_id = client.client_id and sys_group.groupid = $client_group_id"; |
| | | //* If the client belongs to a reseller, we will check against the reseller Limit too |
| | | if($client['parent_client_id'] != 0) { |
| | | |
| | | //* first we need to know the groups of this reseller |
| | | $tmp = $app->db->queryOneRecord("SELECT userid, groups FROM sys_user WHERE client_id = ".$client['parent_client_id']); |
| | | $reseller_groups = $tmp["groups"]; |
| | | $reseller_userid = $tmp["userid"]; |
| | | |
| | | // Get the limits of the reseller of the logged in client |
| | | $client_group_id = $_SESSION["s"]["user"]["default_group"]; |
| | | $reseller = $app->db->queryOneRecord("SELECT ".$limit_parts[1]." as lm FROM client WHERE client_id = ".$client['parent_client_id']); |
| | | $allowed = explode(',',$reseller['lm']); |
| | | } else { |
| | | return $values; |
| | | } |
| | | } // end if admin |
| | | } // end if reseller |
| | | |
| | | //* values are limited to a field in the system settings |
| | | if($limit_parts[0] == 'system') { |
| | | $app->uses('getconf'); |
| | |
| | | } |
| | | |
| | | } |
| | | |
| | | function checkClientLimit($limit_name,$sql_where = '') { |
| | | global $app; |
| | | |
| | | $check_passed = true; |
| | | $limit_name = $app->db->quote($limit_name); |
| | | if($limit_name == '') $app->error('Limit name missing in function checkClientLimit.'); |
| | | |
| | | // Get the limits of the client that is currently logged in |
| | | $client_group_id = $_SESSION["s"]["user"]["default_group"]; |
| | | $client = $app->db->queryOneRecord("SELECT $limit_name as number, parent_client_id FROM sys_group, client WHERE sys_group.client_id = client.client_id and sys_group.groupid = $client_group_id"); |
| | | |
| | | // Check if the user may add another item |
| | | if($client["number"] >= 0) { |
| | | $sql = "SELECT count(".$this->formDef['db_table_idx'].") as number FROM ".$this->formDef['db_table']." WHERE ".$this->getAuthSQL('u'); |
| | | if($sql_where != '') $sql .= ' and '.$sql_where; |
| | | $tmp = $app->db->queryOneRecord($sql); |
| | | if($tmp["number"] >= $client["number"]) $check_passed = false; |
| | | } |
| | | |
| | | return $check_passed; |
| | | } |
| | | |
| | | function checkResellerLimit($limit_name,$sql_where = '') { |
| | | global $app; |
| | | |
| | | $check_passed = true; |
| | | $limit_name = $app->db->quote($limit_name); |
| | | if($limit_name == '') $app->error('Limit name missing in function checkClientLimit.'); |
| | | |
| | | // Get the limits of the client that is currently logged in |
| | | $client_group_id = $_SESSION["s"]["user"]["default_group"]; |
| | | $client = $app->db->queryOneRecord("SELECT parent_client_id FROM sys_group, client WHERE sys_group.client_id = client.client_id and sys_group.groupid = $client_group_id"); |
| | | |
| | | //* If the client belongs to a reseller, we will check against the reseller Limit too |
| | | if($client['parent_client_id'] != 0) { |
| | | |
| | | //* first we need to know the groups of this reseller |
| | | $tmp = $app->db->queryOneRecord("SELECT userid, groups FROM sys_user WHERE client_id = ".$client['parent_client_id']); |
| | | $reseller_groups = $tmp["groups"]; |
| | | $reseller_userid = $tmp["userid"]; |
| | | |
| | | // Get the limits of the reseller of the logged in client |
| | | $client_group_id = $_SESSION["s"]["user"]["default_group"]; |
| | | $reseller = $app->db->queryOneRecord("SELECT $limit_name as number FROM client WHERE client_id = ".$client['parent_client_id']); |
| | | |
| | | // Check if the user may add another item |
| | | if($reseller["number"] >= 0) { |
| | | $sql = "SELECT count(".$this->formDef['db_table_idx'].") as number FROM ".$this->formDef['db_table']." WHERE (sys_groupid IN (".$reseller_groups.") or sys_userid = ".$reseller_userid.")"; |
| | | if($sql_where != '') $sql .= ' and '.$sql_where; |
| | | $tmp = $app->db->queryOneRecord($sql); |
| | | if($tmp["number"] >= $reseller["number"]) $check_passed = false; |
| | | } |
| | | } |
| | | |
| | | return $check_passed; |
| | | } |
| | | |
| | | } |
| | | |
| | |
| | | if($app->tform->formDef['auth'] == 'no') { |
| | | $sql = "SELECT * FROM ".$app->tform->formDef['db_table']." WHERE ".$app->tform->formDef['db_table_idx']." = ".$this->id; |
| | | } else { |
| | | $sql = "SELECT * FROM ".$app->tform->formDef['db_table']." WHERE ".$app->tform->formDef['db_table_idx']." = ".$this->id." AND ".$app->tform->getAuthSQL('u'); |
| | | $sql = "SELECT * FROM ".$app->tform->formDef['db_table']." WHERE ".$app->tform->formDef['db_table_idx']." = ".$this->id." AND ".$app->tform->getAuthSQL('r'); |
| | | } |
| | | if(!$record = $app->db->queryOneRecord($sql)) $app->error($app->lng('error_no_view_permission')); |
| | | |
| | |
| | | if($app->tform->formDef['auth'] == 'no') { |
| | | $sql = "SELECT * FROM ".$app->tform->formDef['db_table']." WHERE ".$app->tform->formDef['db_table_idx']." = ".$this->id; |
| | | } else { |
| | | $sql = "SELECT * FROM ".$app->tform->formDef['db_table']." WHERE ".$app->tform->formDef['db_table_idx']." = ".$this->id." AND ".$app->tform->getAuthSQL('u'); |
| | | $sql = "SELECT * FROM ".$app->tform->formDef['db_table']." WHERE ".$app->tform->formDef['db_table_idx']." = ".$this->id." AND ".$app->tform->getAuthSQL('r'); |
| | | } |
| | | if(!$record = $app->db->queryOneRecord($sql)) $app->error($app->lng('error_no_view_permission')); |
| | | |
| | |
| | | if($app->tform->formDef['auth'] == 'no') { |
| | | $sql = "SELECT * FROM ".$app->tform->formDef['db_table']." WHERE ".$app->tform->formDef['db_table_idx']." = ".$this->id; |
| | | } else { |
| | | $sql = "SELECT * FROM ".$app->tform->formDef['db_table']." WHERE ".$app->tform->formDef['db_table_idx']." = ".$this->id." AND ".$app->tform->getAuthSQL('u'); |
| | | $sql = "SELECT * FROM ".$app->tform->formDef['db_table']." WHERE ".$app->tform->formDef['db_table_idx']." = ".$this->id." AND ".$app->tform->getAuthSQL('r'); |
| | | } |
| | | if(!$record = $app->db->queryOneRecord($sql)) $app->error($app->lng('error_no_view_permission')); |
| | | |
| | |
| | | // bestehenden Datensatz anzeigen |
| | | if($app->tform->errorMessage == '') { |
| | | if($app->tform->formDef['auth'] == 'yes' && $_SESSION["s"]["user"]["typ"] != 'admin') { |
| | | $sql = "SELECT * FROM ".$app->tform->formDef['db_table']." WHERE ".$app->tform->formDef['db_table_idx']." = ".$this->id." AND ".$app->tform->getAuthSQL('u'); |
| | | $sql = "SELECT * FROM ".$app->tform->formDef['db_table']." WHERE ".$app->tform->formDef['db_table_idx']." = ".$this->id." AND ".$app->tform->getAuthSQL('r'); |
| | | } else { |
| | | $sql = "SELECT * FROM ".$app->tform->formDef['db_table']." WHERE ".$app->tform->formDef['db_table_idx']." = ".$this->id; |
| | | } |
| | |
| | | $num_rec = $app->db->queryOneRecord("SELECT count(*) as number FROM sys_user WHERE username = '".$app->db->quote($field_value)."'"); |
| | | if($num_rec["number"] > 0) { |
| | | $errmsg = $validator['errmsg']; |
| | | if(isset($this->wordbook[$errmsg])) { |
| | | if(isset($app->tform->wordbook[$errmsg])) { |
| | | return $app->tform->wordbook[$errmsg]."<br>\r\n"; |
| | | } else { |
| | | return $errmsg."<br>\r\n"; |
New file |
| | |
| | | <?php |
| | | |
| | | /* |
| | | Copyright (c) 2007, Till Brehm, projektfarm Gmbh |
| | | Modified 2009, Marius Cramer, pixcept KG |
| | | All rights reserved. |
| | | |
| | | Redistribution and use in source and binary forms, with or without modification, |
| | | are permitted provided that the following conditions are met: |
| | | |
| | | * Redistributions of source code must retain the above copyright notice, |
| | | this list of conditions and the following disclaimer. |
| | | * Redistributions in binary form must reproduce the above copyright notice, |
| | | this list of conditions and the following disclaimer in the documentation |
| | | and/or other materials provided with the distribution. |
| | | * Neither the name of ISPConfig nor the names of its contributors |
| | | may be used to endorse or promote products derived from this software without |
| | | specific prior written permission. |
| | | |
| | | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND |
| | | ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED |
| | | WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. |
| | | IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, |
| | | INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, |
| | | BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, |
| | | DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY |
| | | OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING |
| | | NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, |
| | | EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
| | | */ |
| | | |
| | | class validate_cron { |
| | | |
| | | function get_error($errmsg) { |
| | | global $app; |
| | | |
| | | if(isset($app->tform->wordbook[$errmsg])) { |
| | | return $app->tform->wordbook[$errmsg]."<br>\r\n"; |
| | | } else { |
| | | return $errmsg."<br>\r\n"; |
| | | } |
| | | } |
| | | |
| | | /* |
| | | Validator function to check if a given cron command is in correct form (url only). |
| | | */ |
| | | function command_format($field_name, $field_value, $validator) { |
| | | if(preg_match("'^(\w+):\/\/'", $field_value, $matches)) { |
| | | |
| | | $parsed = parse_url($field_value); |
| | | if($parsed === false) return $this->get_error($validator['errmsg']); |
| | | |
| | | if($parsed["scheme"] != "http" && $parsed["scheme"] != "https") return $this->get_error($validator['errmsg']); |
| | | |
| | | if(preg_match("'^([a-z0-9][a-z0-9-]{0,62}\.)+([a-z]{2,4})$'i", $parsed["host"]) == false) return $this->get_error($validator['errmsg']); |
| | | } |
| | | } |
| | | |
| | | /* |
| | | Validator function to check if a given cron time is in correct form. |
| | | */ |
| | | function run_time_format($field_name, $field_value, $validator) { |
| | | global $app; |
| | | |
| | | //* check general form |
| | | $is_ok = true; |
| | | $field_value = str_replace(" ", "", $field_value); // spaces are not needed |
| | | $used_times = array(); |
| | | |
| | | if(preg_match("'^[0-9\-\,\/\*]+$'", $field_value) == false) return $this->get_error($validator['errmsg']); // allowed characters are 0-9, comma, *, -, / |
| | | elseif(preg_match("'[\-\,\/][\-\,\/]'", $field_value) == true) return $this->get_error($validator['errmsg']); // comma, - and / never stand together |
| | | //* now split list and check each entry. store used values in array for later limit-check |
| | | $time_list = split(",", $field_value); |
| | | if(count($time_list) < 1) return $this->get_error($validator['errmsg']); |
| | | |
| | | $max_entry = 0; |
| | | $min_entry = 0; |
| | | $in_minutes = 1; |
| | | //* get maximum value of entry for each field type (name) |
| | | switch($field_name) { |
| | | case "run_min": |
| | | $max_entry = 59; |
| | | break; |
| | | case "run_hour": |
| | | $max_entry = 23; |
| | | $in_minutes = 60; |
| | | break; |
| | | case "run_mday": |
| | | $max_entry = 31; |
| | | $min_entry = 1; |
| | | $in_minutes = 1440; |
| | | break; |
| | | case "run_month": |
| | | $max_entry = 12; |
| | | $min_entry = 1; |
| | | $in_minutes = 1440 * 28; // not exactly but enough |
| | | break; |
| | | case "run_wday": |
| | | $max_entry = 7; |
| | | $in_minutes = 1440; |
| | | break; |
| | | } |
| | | |
| | | if($max_entry == 0) return $this->get_error('unknown_fieldtype_error'); |
| | | |
| | | foreach($time_list as $entry) { |
| | | //* possible value combinations: |
| | | //* x => ^(\d+)$ |
| | | //* x-y => ^(\d+)\-(\d+)$ |
| | | //* x/y => ^(\d+)\/([1-9]\d*)$ |
| | | //* x-y/z => ^(\d+)\-(\d+)\/([1-9]\d*)$ |
| | | //* */x => ^\*\/([1-9]\d*)$ |
| | | //* combined regex => ^(\d+|\*)(\-(\d+))?(\/([1-9]\d*))?$ |
| | | |
| | | if(preg_match("'^(((\d+)(\-(\d+))?)|\*)(\/([1-9]\d*))?$'", $entry, $matches) == false) { |
| | | return $this->get_error($validator['errmsg']); |
| | | } |
| | | |
| | | //* matches contains: |
| | | //* 1 => * or value or x-y range |
| | | //* 2 => unused |
| | | //* 3 => value if [1] != * |
| | | //* 4 => empty if no range was used |
| | | //* 5 => 2nd value of range if [1] != * and range was used |
| | | //* 6 => empty if step was not used |
| | | //* 7 => step |
| | | |
| | | $loop_step = 1; |
| | | $loop_from = $min_entry; |
| | | $loop_to = $max_entry; |
| | | |
| | | //* calculate used values |
| | | if($matches[1] == "*") { |
| | | //* not to check |
| | | } else { |
| | | if($matches[3] < $min_entry || $matches[3] > $max_entry) { |
| | | //* check if value is in allowed range |
| | | return $this->get_error($validator['errmsg']); |
| | | } elseif($matches[4] && ($matches[5] < $min_entry || $matches[5] > $max_entry || $matches[5] <= $matches[3])) { |
| | | //* check if value is in allowed range and not less or equal to first value |
| | | return $this->get_error($validator['errmsg']); |
| | | } |
| | | |
| | | $loop_from = $matches[3]; |
| | | $loop_to = $matches[3]; |
| | | if($matches[4]) $loop_to = $matches[5]; |
| | | } |
| | | if($matches[6] && ($matches[7] < 2 || $matches[7] > $max_entry - 1)) { |
| | | //* check if step value is valid |
| | | return $this->get_error($validator['errmsg']); |
| | | } |
| | | if($matches[7]) $loop_step = $matches[7]; |
| | | |
| | | //* loop through values to set used times |
| | | for($t = $loop_from; $t <= $loop_to; $t = $t + $loop_step) { |
| | | $used_times[] = $t; |
| | | } |
| | | } //* end foreach entry loop |
| | | |
| | | //* sort used times and erase doubles |
| | | sort($used_times); |
| | | $used_times = array_unique($used_times); |
| | | |
| | | //* get minimum frequency and store it in $app->tform->cron_min_freq for usage in onUpdateSave and onInsertSave! |
| | | $min_freq = -1; |
| | | $prev_time = -1; |
| | | foreach($used_times as $curtime) { |
| | | if($prev_time != -1) { |
| | | $freq = $curtime - $prev_time; |
| | | if($min_freq == -1 || $freq < $min_freq) $min_freq = $freq; |
| | | } |
| | | $prev_time = $curtime; |
| | | } |
| | | |
| | | //* check last against first (needed because e.g. wday 1,4,7 has diff 1 not 3 |
| | | $prev_time = $used_times[0]; |
| | | $freq = ($prev_time - $min_entry) + ($max_entry - $curtime) + 1; |
| | | if($min_freq == -1 || $freq < $min_freq) $min_freq = $freq; |
| | | |
| | | if($min_freq > 0 && $min_freq <= $max_entry) { //* only store if > 1 && < $max_entry! |
| | | $min_freq = $min_freq * $in_minutes; // we have to overwrite $app->tform->cron_min_freq if this is higher value |
| | | if(!$app->tform->cron_min_freq || $app->tform->cron_min_freq > $min_freq) $app->tform->cron_min_freq = $min_freq; |
| | | } |
| | | |
| | | //return "DEBUG: " . $app->tform->cron_min_freq . " ($min_freq) --- " . var_export($used_times, true) . "<br />"; |
| | | } |
| | | |
| | | |
| | | |
| | | |
| | | } |
New file |
| | |
| | | <?php |
| | | |
| | | /* |
| | | Copyright (c) 2007, Till Brehm, projektfarm Gmbh |
| | | All rights reserved. |
| | | |
| | | Redistribution and use in source and binary forms, with or without modification, |
| | | are permitted provided that the following conditions are met: |
| | | |
| | | * Redistributions of source code must retain the above copyright notice, |
| | | this list of conditions and the following disclaimer. |
| | | * Redistributions in binary form must reproduce the above copyright notice, |
| | | this list of conditions and the following disclaimer in the documentation |
| | | and/or other materials provided with the distribution. |
| | | * Neither the name of ISPConfig nor the names of its contributors |
| | | may be used to endorse or promote products derived from this software without |
| | | specific prior written permission. |
| | | |
| | | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND |
| | | ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED |
| | | WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. |
| | | IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, |
| | | INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, |
| | | BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, |
| | | DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY |
| | | OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING |
| | | NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, |
| | | EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
| | | */ |
| | | |
| | | class validate_database { |
| | | |
| | | /* |
| | | Validator function to check if a given list of ips is ok. |
| | | */ |
| | | function valid_ip_list($field_name, $field_value, $validator) { |
| | | global $app; |
| | | |
| | | if($_POST["remote_access"] == "y") { |
| | | if(trim($field_value) == "") return; |
| | | |
| | | $values = split(",", $field_value); |
| | | foreach($values as $cur_value) { |
| | | $cur_value = trim($cur_value); |
| | | |
| | | $valid = true; |
| | | if(preg_match("/^[0-9]{1,3}(\.)[0-9]{1,3}(\.)[0-9]{1,3}(\.)[0-9]{1,3}$/", $cur_value)) { |
| | | $groups = explode(".", $cur_value); |
| | | foreach($groups as $group){ |
| | | if($group<0 OR $group>255) |
| | | $valid=false; |
| | | } |
| | | } else { |
| | | $valid = false; |
| | | } |
| | | |
| | | if($valid == false) { |
| | | $errmsg = $validator['errmsg']; |
| | | if(isset($app->tform->wordbook[$errmsg])) { |
| | | return $app->tform->wordbook[$errmsg]."<br>\r\n"; |
| | | } else { |
| | | return $errmsg."<br>\r\n"; |
| | | } |
| | | } |
| | | } |
| | | } |
| | | } |
| | | |
| | | |
| | | |
| | | |
| | | } |
New file |
| | |
| | | <?php |
| | | |
| | | /* |
| | | Copyright (c) 2007, Till Brehm, projektfarm Gmbh |
| | | All rights reserved. |
| | | |
| | | Redistribution and use in source and binary forms, with or without modification, |
| | | are permitted provided that the following conditions are met: |
| | | |
| | | * Redistributions of source code must retain the above copyright notice, |
| | | this list of conditions and the following disclaimer. |
| | | * Redistributions in binary form must reproduce the above copyright notice, |
| | | this list of conditions and the following disclaimer in the documentation |
| | | and/or other materials provided with the distribution. |
| | | * Neither the name of ISPConfig nor the names of its contributors |
| | | may be used to endorse or promote products derived from this software without |
| | | specific prior written permission. |
| | | |
| | | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND |
| | | ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED |
| | | WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. |
| | | IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, |
| | | INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, |
| | | BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, |
| | | DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY |
| | | OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING |
| | | NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, |
| | | EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
| | | */ |
| | | |
| | | class validate_ftpuser { |
| | | |
| | | /* |
| | | Validator function to check if a given dir is ok. |
| | | */ |
| | | function ftp_dir($field_name, $field_value, $validator) { |
| | | global $app; |
| | | |
| | | if($app->tform->primary_id == 0) { |
| | | $errmsg = $validator['errmsg']; |
| | | if(isset($app->tform->wordbook[$errmsg])) { |
| | | return $app->tform->wordbook[$errmsg]."<br>\r\n"; |
| | | } else { |
| | | return $errmsg."<br>\r\n"; |
| | | } |
| | | } |
| | | |
| | | |
| | | $ftp_data = $app->db->queryOneRecord("SELECT parent_domain_id FROM ftp_user WHERE ftp_user_id = '".$app->db->quote($app->tform->primary_id)."'"); |
| | | if(!$ftp_data["parent_domain_id"]) { |
| | | $errmsg = $validator['errmsg']; |
| | | if(isset($app->tform->wordbook[$errmsg])) { |
| | | return $app->tform->wordbook[$errmsg]."<br>\r\n"; |
| | | } else { |
| | | return $errmsg."<br>\r\n"; |
| | | } |
| | | } |
| | | |
| | | $domain_data = $app->db->queryOneRecord("SELECT domain_id, document_root FROM web_domain WHERE domain_id = '".$app->db->quote($ftp_data["parent_domain_id"])."'"); |
| | | if(!$domain_data["domain_id"]) { |
| | | $errmsg = $validator['errmsg']; |
| | | if(isset($app->tform->wordbook[$errmsg])) { |
| | | return $app->tform->wordbook[$errmsg]."<br>\r\n"; |
| | | } else { |
| | | return $errmsg."<br>\r\n"; |
| | | } |
| | | } |
| | | |
| | | $doc_root = $domain_data["document_root"]; |
| | | $is_ok = false; |
| | | if($doc_root == $field_value) $is_ok = true; |
| | | |
| | | $doc_root .= "/"; |
| | | if(substr($field_value, 0, strlen($doc_root)) == $doc_root) $is_ok = true; |
| | | |
| | | if($is_ok == false) { |
| | | $errmsg = $validator['errmsg']; |
| | | if(isset($app->tform->wordbook[$errmsg])) { |
| | | return $app->tform->wordbook[$errmsg]."<br>\r\n"; |
| | | } else { |
| | | return $errmsg."<br>\r\n"; |
| | | } |
| | | } |
| | | } |
| | | |
| | | |
| | | |
| | | |
| | | } |
New file |
| | |
| | | <?php |
| | | |
| | | /* |
| | | Copyright (c) 2007 - 2009, Till Brehm, projektfarm Gmbh |
| | | All rights reserved. |
| | | |
| | | Redistribution and use in source and binary forms, with or without modification, |
| | | are permitted provided that the following conditions are met: |
| | | |
| | | * Redistributions of source code must retain the above copyright notice, |
| | | this list of conditions and the following disclaimer. |
| | | * Redistributions in binary form must reproduce the above copyright notice, |
| | | this list of conditions and the following disclaimer in the documentation |
| | | and/or other materials provided with the distribution. |
| | | * Neither the name of ISPConfig nor the names of its contributors |
| | | may be used to endorse or promote products derived from this software without |
| | | specific prior written permission. |
| | | |
| | | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND |
| | | ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED |
| | | WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. |
| | | IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, |
| | | INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, |
| | | BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, |
| | | DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY |
| | | OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING |
| | | NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, |
| | | EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
| | | */ |
| | | |
| | | class validate_reseller { |
| | | |
| | | /* |
| | | Validator function to check if a given cron command is in correct form (url only). |
| | | */ |
| | | function limit_client($field_name, $field_value, $validator) { |
| | | global $app; |
| | | |
| | | if($field_value <= 0) { |
| | | return $app->tform->lng('limit_client_error_positive'); |
| | | } else { |
| | | return ''; |
| | | } |
| | | } |
| | | |
| | | |
| | | } |
New file |
| | |
| | | <?php |
| | | $wb['conf_format_dateshort'] = 'd/m/Y'; |
| | | $wb['conf_format_datelong'] = 'l dS of F Y'; |
| | | $wb['conf_format_timeshort'] = 'H:i'; |
| | | $wb['conf_format_timelong'] = 'H:i:s'; |
| | | $wb['conf_format_datetime'] = 'd/m/Y H:i'; |
| | | $wb['301'] = 'Módulo não permitido para o usuário corrente.'; |
| | | $wb['302'] = 'Módulo Inválido'; |
| | | $wb['1001'] = 'O nome de usuário e senha não podem estar em branco!'; |
| | | $wb['1002'] = 'Nome de usuário ou senha incorretos!'; |
| | | $wb['1003'] = 'O Usuário está inativo!'; |
| | | $wb['delete_confirmation'] = 'Tem certeza de que deseja remover este registro?'; |
| | | $wb['error_no_view_permission'] = 'Você não tem permissão para ver este registro ou o mesmo não existe!'; |
| | | $wb['error_no_delete_permission'] = 'Você não tem permissão para remover este registro!'; |
| | | $wb['page_txt'] = 'Página'; |
| | | $wb['page_of_txt'] = 'de'; |
| | | $wb['page_next_txt'] = 'Próximo'; |
| | | $wb['page_back_txt'] = 'Voltar'; |
| | | $wb['delete_txt'] = 'Remover'; |
| | | $wb['filter_txt'] = 'Filtrar'; |
| | | $wb['add_new_record_txt'] = 'Adcionar novo registro'; |
| | | $wb['btn_save_txt'] = 'Salvar'; |
| | | $wb['btn_cancel_txt'] = 'Voltar'; |
| | | ?> |
| | | |
| | |
| | | ) |
| | | ); |
| | | |
| | | |
| | | /* |
| | | $form["tabs"]['config'] = array ( |
| | | 'title' => "Config", |
| | | 'width' => 100, |
| | |
| | | ################################## |
| | | ) |
| | | ); |
| | | |
| | | */ |
| | | |
| | | ?> |
| | |
| | | 'width' => '40', |
| | | 'maxlength' => '255' |
| | | ), |
| | | 'security_level' => array ( |
| | | 'datatype' => 'VARCHAR', |
| | | 'formtype' => 'SELECT', |
| | | 'default' => '20', |
| | | 'value' => array('10' => 'Medium', '20' => 'High') |
| | | ), |
| | | 'user' => array ( |
| | | 'datatype' => 'VARCHAR', |
| | | 'formtype' => 'TEXT', |
| | | 'default' => '', |
| | | 'validators' => array ( 0 => array ( 'type' => 'NOTEMPTY', |
| | | 'errmsg'=> 'apache_user_error_empty'), |
| | | ), |
| | | 'value' => '', |
| | | 'width' => '40', |
| | | 'maxlength' => '255' |
| | | ), |
| | | 'group' => array ( |
| | | 'datatype' => 'VARCHAR', |
| | | 'formtype' => 'TEXT', |
| | | 'default' => '', |
| | | 'validators' => array ( 0 => array ( 'type' => 'NOTEMPTY', |
| | | 'errmsg'=> 'apache_group_error_empty'), |
| | | ), |
| | | 'value' => '', |
| | | 'width' => '40', |
| | | 'maxlength' => '255' |
| | | ), |
| | | ################################## |
| | | # ENDE Datatable fields |
| | | ################################## |
| | |
| | | 'width' => '40', |
| | | 'maxlength' => '1000' |
| | | ), |
| | | 'jailkit_chroot_cron_programs' => array ( |
| | | 'datatype' => 'VARCHAR', |
| | | 'formtype' => 'TEXT', |
| | | 'default' => '', |
| | | 'validators' => array ( 0 => array ( 'type' => 'NOTEMPTY', |
| | | 'errmsg'=> 'jailkit_chroot_cron_programs_error_empty'), |
| | | ), |
| | | 'value' => '', |
| | | 'width' => '40', |
| | | 'maxlength' => '1000' |
| | | ), |
| | | ################################## |
| | | # ENDE Datatable fields |
| | | ################################## |
| | |
| | | ); |
| | | |
| | | |
| | | $form["tabs"]['vlogger'] = array ( |
| | | 'title' => "vlogger", |
| | | 'width' => 80, |
| | | 'template' => "templates/server_config_vlogger_edit.htm", |
| | | 'fields' => array ( |
| | | ################################## |
| | | # Begin Datatable fields |
| | | ################################## |
| | | 'config_dir' => array ( |
| | | 'datatype' => 'VARCHAR', |
| | | 'formtype' => 'TEXT', |
| | | 'default' => '', |
| | | 'validators' => array ( 0 => array ( 'type' => 'NOTEMPTY', |
| | | 'errmsg'=> 'vlogger_config_dir_error_empty'), |
| | | ), |
| | | 'value' => '', |
| | | 'width' => '40', |
| | | 'maxlength' => '255' |
| | | ), |
| | | ################################## |
| | | # ENDE Datatable fields |
| | | ################################## |
| | | ) |
| | | ); |
| | | |
| | | |
| | | |
| | | |
| | | $form["tabs"]['cron'] = array ( |
| | | 'title' => "Cron", |
| | | 'width' => 80, |
| | | 'template' => "templates/server_config_cron_edit.htm", |
| | | 'fields' => array ( |
| | | ################################## |
| | | # Begin Datatable fields |
| | | ################################## |
| | | 'init_script' => array ( |
| | | 'datatype' => 'VARCHAR', |
| | | 'formtype' => 'TEXT', |
| | | 'default' => '', |
| | | 'validators' => array ( 0 => array ( 'type' => 'NOTEMPTY', |
| | | 'errmsg'=> 'cron_init_script_error_empty'), |
| | | ), |
| | | 'value' => '', |
| | | 'width' => '40', |
| | | 'maxlength' => '255' |
| | | ), |
| | | 'crontab_dir' => array ( |
| | | 'datatype' => 'VARCHAR', |
| | | 'formtype' => 'TEXT', |
| | | 'default' => '', |
| | | 'validators' => array ( 0 => array ( 'type' => 'NOTEMPTY', |
| | | 'errmsg'=> 'crontab_dir_error_empty'), |
| | | ), |
| | | 'value' => '', |
| | | 'width' => '40', |
| | | 'maxlength' => '255' |
| | | ), |
| | | 'wget' => array ( |
| | | 'datatype' => 'VARCHAR', |
| | | 'formtype' => 'TEXT', |
| | | 'default' => '', |
| | | 'validators' => array ( 0 => array ( 'type' => 'NOTEMPTY', |
| | | 'errmsg'=> 'cron_wget_error_empty'), |
| | | ), |
| | | 'value' => '', |
| | | 'width' => '40', |
| | | 'maxlength' => '255' |
| | | ), |
| | | ################################## |
| | | # ENDE Datatable fields |
| | | ################################## |
| | | ) |
| | | ); |
| | | |
| | | |
| | | |
| | |
| | | $wb['gateway_error_wrong'] = 'Invalid Gateway format.'; |
| | | $wb['hostname_error_empty'] = 'Hostname is empty.'; |
| | | $wb['nameservers_error_empty'] = 'Nameserver is empty.'; |
| | | $wb['jailkit_chroot_cron_programs_txt'] = 'Jailkit cron chrooted applications'; |
| | | $wb['config_dir_txt'] = 'Config directory'; |
| | | $wb['init_script_txt'] = 'Cron init script name'; |
| | | $wb['crontab_dir_txt'] = 'Path for individual crontabs'; |
| | | $wb['wget_txt'] = 'Path to wget program'; |
| | | $wb['security_level_txt'] = 'Security level'; |
| | | ?> |
New file |
| | |
| | | <?php |
| | | $wb['1001'] = 'Por favor, preencha o nome do usuário e senha!'; |
| | | $wb['1002'] = 'Nome do usuário ou senha incorretos!'; |
| | | $wb['Firewall'] = 'Firewall'; |
| | | $wb['Groups'] = 'Grupos'; |
| | | $wb['groups_description'] = 'Formulário para edição dos Grupos de usuários do sistema.'; |
| | | $wb['Server'] = 'Servidor'; |
| | | $wb['Services'] = 'Serviços'; |
| | | $wb['Config'] = 'Configuração'; |
| | | $wb['Server Config'] = 'Configuração do Servidor'; |
| | | $wb['Mail'] = 'Mail'; |
| | | $wb['Getmail'] = 'Getmail'; |
| | | $wb['Web'] = 'Web'; |
| | | $wb['FastCGI'] = 'FastCGI'; |
| | | $wb['Jailkit'] = 'Jailkit'; |
| | | $wb['System'] = 'Sistema'; |
| | | $wb['Add user'] = 'Adicionar Usuário'; |
| | | $wb['Edit user'] = 'Editar Usuário'; |
| | | $wb['CP Users'] = 'Usuários Visar'; |
| | | $wb['Add group'] = 'Adicionar Grupo'; |
| | | $wb['Edit group'] = 'Editar Grupo'; |
| | | $wb['Edit server'] = 'Editar Servidor'; |
| | | $wb['Edit Server IP'] = 'Editar Endereço IP do Servidor'; |
| | | $wb['Servers'] = 'Servidores'; |
| | | $wb['Sync. Now'] = 'Sincronizar agora'; |
| | | $wb['DB Sync.'] = 'Sincronizar Bando de Dados'; |
| | | $wb['Languages'] = 'Idiomas'; |
| | | $wb['New Language'] = 'Novo Idioma'; |
| | | $wb['Export'] = 'Exportar'; |
| | | $wb['Import'] = 'Importar'; |
| | | $wb['Language Editor'] = 'Editor de Idiomas'; |
| | | $wb['Software'] = 'Software'; |
| | | $wb['Repositories'] = 'Repositórios'; |
| | | ?> |
| | | |
New file |
| | |
| | | <?php |
| | | $wb['server_id_txt'] = 'Servidor'; |
| | | $wb['tcp_port_txt'] = 'Portas TCP abertas'; |
| | | $wb['udp_port_txt'] = 'Portas UDP abertas'; |
| | | $wb['tcp_port_help_txt'] = 'Separado por vírgula'; |
| | | $wb['udp_port_help_txt'] = 'Separado por vírgula'; |
| | | $wb['active_txt'] = 'Ativo'; |
| | | $wb['firewall_error_unique'] = 'Já existe uma regra de firewall para este servidor!'; |
| | | ?> |
| | | |
New file |
| | |
| | | <?php |
| | | $wb["list_head_txt"] = 'Firewall'; |
| | | $wb["active_txt"] = 'Ativo'; |
| | | $wb["server_id_txt"] = 'Servidor'; |
| | | $wb["tcp_port_txt"] = 'Portas TCP abertas'; |
| | | $wb["udp_port_txt"] = 'Portas UDP abertas'; |
| | | $wb["add_new_record_txt"] = 'Adcionar registro de firewall'; |
| | | ?> |
New file |
| | |
| | | <?php |
| | | $wb['description_txt'] = 'Descrição'; |
| | | $wb['name_txt'] = 'Grupo'; |
| | | $wb['name_err'] = 'O Nome do Grupo deve conter de 1 a 30 caracteres!'; |
| | | ?> |
| | | |
New file |
| | |
| | | <?php |
| | | $wb['list_head_txt'] = 'Grupos de usuários do sistema'; |
| | | $wb['description_txt'] = 'Descrição'; |
| | | $wb['name_txt'] = 'Grupo'; |
| | | $wb['add_new_record_txt'] = 'Adicionar novo Grupo'; |
| | | ?> |
| | | |
New file |
| | |
| | | <?php |
| | | $wb['list_head_txt'] = 'Adcionar novo idioma'; |
| | | $wb['language_select_txt'] = 'Selecione o idioma base'; |
| | | $wb['language_new_txt'] = 'Novo Idioma'; |
| | | $wb['language_new_hint_txt'] = '2 letras código ISO 639-1 (Veja http://en.wikipedia.org/wiki/List_of_ISO_639-1_codes)'; |
| | | $wb['btn_save_txt'] = 'Criar um novo conjunto de idioma'; |
| | | $wb['btn_cancel_txt'] = 'Voltar'; |
| | | ?> |
| | | |
New file |
| | |
| | | <?php |
| | | $wb['list_head_txt'] = 'Mesclar Idioma'; |
| | | $wb['list_desc_txt'] = 'Mesclar o arquivo de idioma selecionado com o arquivo de idioma principal (em inglês). <br />Isto permite completar qualquer falha de tradução, com o arquivo principal original em inglês.'; |
| | | $wb['language_select_txt'] = 'Selecionar Idioma'; |
| | | $wb['btn_save_txt'] = 'Mesclar arquivos agora'; |
| | | $wb['btn_cancel_txt'] = 'Voltar'; |
| | | ?> |
| | | |
New file |
| | |
| | | <?php |
| | | $wb['list_head_txt'] = 'Editor de Arquivos de Idioma'; |
| | | $wb['language_select_txt'] = 'Selecione o idioma'; |
| | | $wb['module_txt'] = 'Módulo'; |
| | | $wb['lang_file_txt'] = 'Arquivo de Idioma'; |
| | | $wb['btn_save_txt'] = 'Salvar'; |
| | | $wb['btn_cancel_txt'] = 'Voltar'; |
| | | ?> |
| | | |
New file |
| | |
| | | <?php |
| | | $wb['list_head_txt'] = 'Exportar arquivos de idioma'; |
| | | $wb['language_select_txt'] = 'Selecione o idioma'; |
| | | $wb['btn_save_txt'] = 'Exportar idioma selecionado para um arquivo'; |
| | | $wb['btn_cancel_txt'] = 'Voltar'; |
| | | ?> |
| | | |
New file |
| | |
| | | <?php |
| | | $wb["list_head_txt"] = 'Importar arquivo de idioma'; |
| | | $wb["language_import_txt"] = 'Buscar arquivo de idioma'; |
| | | $wb['btn_save_txt'] = 'Importar Arquivo de Idioma Selecionado'; |
| | | $wb["language_overwrite_txt"] = 'Sobre escrever o arquivo se existir.'; |
| | | $wb['btn_cancel_txt'] = 'Voltar'; |
| | | ?> |
New file |
| | |
| | | <?php |
| | | $wb['list_head_txt'] = 'Editor de arquivo de idioma'; |
| | | $wb['language_select_txt'] = 'Selecione o idioma'; |
| | | $wb['module_txt'] = 'Módulo'; |
| | | $wb['lang_file_txt'] = 'Arquido de Idioma'; |
| | | $wb['lang_file_date_txt'] = 'Ultima Modificação'; |
| | | ?> |
| | | |
New file |
| | |
| | | <?php |
| | | $wb['config_txt'] = 'Configuração'; |
| | | $wb['server_name_txt'] = 'Nome do Servidor'; |
| | | $wb['mail_server_txt'] = 'Servidor de Mail'; |
| | | $wb['web_server_txt'] = 'Servidor Web'; |
| | | $wb['dns_server_txt'] = 'Servidor DNS'; |
| | | $wb['file_server_txt'] = 'Servidor de Arquivo'; |
| | | $wb['db_server_txt'] = 'Servidor de Banco de Dados'; |
| | | $wb['vserver_server_txt'] = 'Servidor VServer'; |
| | | $wb['active_txt'] = 'Ativado'; |
| | | ?> |
| | | |
New file |
| | |
| | | <?php |
| | | $wb['jailkit_chroot_home_txt'] = 'Chroot Jailkit home'; |
| | | $wb['jailkit_chroot_app_sections_txt'] = 'Aplicações Jailkit chroot (Sessões)'; |
| | | $wb['jailkit_chroot_app_programs_txt'] = 'Aplicações Jailkit em ambiente chroot'; |
| | | $wb['website_path_txt'] = 'Website path'; |
| | | $wb['website_symlinks_txt'] = 'Website symlinks: link simbólico'; |
| | | $wb['website_basedir_txt'] = 'Website basedir: Diretório base '; |
| | | $wb['vhost_conf_dir_txt'] = 'Vhost config dir'; |
| | | $wb['vhost_conf_enabled_dir_txt'] = 'Vhost diretório de configuração ativo'; |
| | | $wb['getmail_config_dir_txt'] = 'Getmail config dir'; |
| | | $wb['fastcgi_starter_path_txt'] = 'FastCGI: Caminho diretório inicial'; |
| | | $wb['fastcgi_starter_script_txt'] = 'FastCGI: Script inicial'; |
| | | $wb['fastcgi_alias_txt'] = 'FastCGI: Alias'; |
| | | $wb['fastcgi_phpini_path_txt'] = 'FastCGI: Caminho do php.ini '; |
| | | $wb['fastcgi_children_txt'] = 'FastCGI: Filhos'; |
| | | $wb['fastcgi_max_requests_txt'] = 'FastCGI: Requisições máximas'; |
| | | $wb['fastcgi_bin_txt'] = 'FastCGI Bin'; |
| | | $wb['module_txt'] = 'Módulo'; |
| | | $wb['maildir_path_txt'] = 'Caminho do diretório Maildir'; |
| | | $wb['homedir_path_txt'] = 'Caminho do diretório Home'; |
| | | $wb['mailuser_uid_txt'] = 'UID usuário de email'; |
| | | $wb['mailuser_gid_txt'] = 'GID usuário de email'; |
| | | $wb['mailuser_name_txt'] = 'Nome usuário de email'; |
| | | $wb['mailuser_group_txt'] = 'Grupo usuário de email'; |
| | | $wb['relayhost_txt'] = 'Host Relay'; |
| | | $wb['relayhost_user_txt'] = 'Usuário do Host Relay'; |
| | | $wb['relayhost_password_txt'] = 'Senha do Host Relay'; |
| | | $wb['mailbox_size_limit_txt'] = 'Tamanho máximo da Caixa Postal'; |
| | | $wb['message_size_limit_txt'] = 'Tamanho máximo de mensagem'; |
| | | $wb['ip_address_txt'] = 'Endereço IP'; |
| | | $wb['netmask_txt'] = 'Máscara de Rede'; |
| | | $wb['gateway_txt'] = 'Gateway'; |
| | | $wb['hostname_txt'] = 'Nome do Host'; |
| | | $wb['nameservers_txt'] = 'Servidores DNS'; |
| | | $wb['auto_network_configuration_txt'] = 'Configuração de Rede'; |
| | | $wb['ip_address_error_wrong'] = 'Formato do Endereço IP inválido!'; |
| | | $wb['netmask_error_wrong'] = 'Formato da Máscara de Rede inválio!'; |
| | | $wb['gateway_error_wrong'] = 'Gateway inválido!'; |
| | | $wb['hostname_error_empty'] = 'Por favor, entre com o nome do Host.'; |
| | | $wb['nameservers_error_empty'] = 'Por favor, entre com o Servidor DNS.'; |
| | | ?> |
| | | |
New file |
| | |
| | | <?php |
| | | $wb['list_head_txt'] = 'Configuração do Servidor'; |
| | | $wb['server_name_txt'] = 'Servidor'; |
| | | ?> |
| | | |
New file |
| | |
| | | <?php |
| | | $wb['server_id_txt'] = 'Servidor'; |
| | | $wb['ip_address_txt'] = 'Endereço IP'; |
| | | $wb['virtualhost_txt'] = 'Nome VirtualHost HTTP'; |
| | | $wb['ip_err'] = 'Endereço IP inválido!'; |
| | | ?> |
| | | |
New file |
| | |
| | | <?php |
| | | $wb['list_head_txt'] = 'Endereço IP'; |
| | | $wb['server_id_txt'] = 'Servidor'; |
| | | $wb['ip_address_txt'] = 'Endereço IP'; |
| | | $wb['add_new_record_txt'] = 'Adicionar novo Endereço IP'; |
| | | ?> |
| | | |
New file |
| | |
| | | <?php |
| | | $wb['list_head_txt'] = 'Servidor'; |
| | | $wb['server_name_txt'] = 'Nome'; |
| | | $wb['mail_server_txt'] = 'Mail'; |
| | | $wb['web_server_txt'] = 'Web'; |
| | | $wb['dns_server_txt'] = 'DNS'; |
| | | $wb['file_server_txt'] = 'Arquivo'; |
| | | $wb['db_server_txt'] = 'Banco de Dados'; |
| | | $wb['vserver_server_txt'] = 'VServer'; |
| | | $wb['add_new_record_txt'] = 'Adicionar novo Servidor'; |
| | | ?> |
| | | |
New file |
| | |
| | | <?php |
| | | $wb['list_head_txt'] = 'Pacotes de Software'; |
| | | $wb['installed_txt'] = 'Status'; |
| | | $wb['package_title_txt'] = 'Pacote'; |
| | | $wb['package_description_txt'] = 'Descrição'; |
| | | $wb['action_txt'] = 'Acão'; |
| | | ?> |
| | | |
New file |
| | |
| | | <?php |
| | | $wb['repo_name_txt'] = 'Repositório'; |
| | | $wb['repo_url_txt'] = 'URL'; |
| | | $wb['repo_username_txt'] = 'Usuário (opcional)'; |
| | | $wb['repo_password_txt'] = 'Senha (opcional)'; |
| | | $wb['active_txt'] = 'Ativo'; |
| | | ?> |
| | | |
New file |
| | |
| | | <?php |
| | | $wb["list_head_txt"] = 'Repositório'; |
| | | $wb["active_txt"] = 'Ativo'; |
| | | $wb["repo_name_txt"] = 'Repositório'; |
| | | $wb["repo_url_txt"] = 'URL'; |
| | | ?> |
New file |
| | |
| | | <?php |
| | | $wb['list_head_txt'] = 'Atualizações de Programas'; |
| | | $wb['server_select_txt'] = 'Selecione o servidor'; |
| | | $wb['installed_txt'] = 'Ações'; |
| | | $wb['update_title_txt'] = 'Atualizar'; |
| | | $wb['version_txt'] = 'Versão'; |
| | | $wb['action_txt'] = 'Ação'; |
| | | ?> |
| | | |
New file |
| | |
| | | <?php |
| | | $wb['warning'] = 'Edite estes valores com cuidado! Não remova os prefixos em um sistema com mais de um cliente!!'; |
| | | $wb['dbname_prefix_txt'] = 'Prefixo Nome do Banco de Dados'; |
| | | $wb['dbuser_prefix_txt'] = 'Prefixo Usuário do Banco de Dados'; |
| | | $wb['shelluser_prefix_txt'] = 'Prefixo Usuário de Shell'; |
| | | $wb['ftpuser_prefix_txt'] = 'Prefixo Usuário FTP'; |
| | | $wb['dbname_prefix_error_regex'] = 'Caractere não permitido para o prefixo do nome do Banco de Dados!'; |
| | | $wb['dbuser_prefix_error_regex'] = 'Caractere não permitido para o prefixo do Usuário do Banco de Dados!'; |
| | | $wb['ftpuser_prefix_error_regex'] = 'Caractere não permitido para o prefixo do Usuário FTP!'; |
| | | $wb['shelluser_prefix_error_regex'] = 'Caractere não permitido para o prefixo do Usuário Shell!'; |
| | | $wb['dblist_phpmyadmin_link_txt'] = 'Link para phpmyadmin'; |
| | | $wb['mailboxlist_webmail_link_txt'] = 'Link para o webmail'; |
| | | ?> |
| | | |
New file |
| | |
| | | <?php |
| | | $wb['username_txt'] = 'Usuário'; |
| | | $wb['username_err'] = 'O Nome do Usuário é muito longo ou contém caracteres inválidos!'; |
| | | $wb['username_empty'] = 'Por favor, entre com o nome do Usuário.'; |
| | | $wb['username_unique'] = 'Já existe um Usuário com este nome!'; |
| | | $wb['passwort_txt'] = 'Senha'; |
| | | $wb['password_strength_txt'] = 'Segurança da Senha'; |
| | | $wb['modules_txt'] = 'Módulos'; |
| | | $wb['startmodule_txt'] = 'Módulo Inicial'; |
| | | $wb['app_theme_txt'] = 'Tema'; |
| | | $wb['typ_txt'] = 'Tipo'; |
| | | $wb['active_txt'] = 'Ativo'; |
| | | $wb['language_txt'] = 'Idioma'; |
| | | $wb['name_txt'] = 'Nome'; |
| | | $wb['vorname_txt'] = 'Sobrenome'; |
| | | $wb['unternehmen_txt'] = 'Empresa'; |
| | | $wb['strasse_txt'] = 'Endereço'; |
| | | $wb['ort_txt'] = 'Cidade'; |
| | | $wb['plz_txt'] = 'CEP'; |
| | | $wb['land_txt'] = 'País'; |
| | | $wb['email_txt'] = 'E-mail'; |
| | | $wb['url_txt'] = 'Site'; |
| | | $wb['telefon_txt'] = 'Telefone'; |
| | | $wb['fax_txt'] = 'Fax'; |
| | | $wb['groups_txt'] = 'Grupos'; |
| | | $wb['default_group_txt'] = 'Grupo Padrão'; |
| | | $wb['startmodule_err'] = 'O módulo inicial não está contido nos módulos.'; |
| | | ?> |
| | | |
New file |
| | |
| | | <?php |
| | | $wb["list_head_txt"] = 'Usuários'; |
| | | $wb["username_txt"] = 'Nome de Usuário'; |
| | | $wb["name_txt"] = 'Nome'; |
| | | $wb["vorname_txt"] = 'Sobrenome'; |
| | | $wb["ort_txt"] = 'cidade'; |
| | | $wb["add_new_record_txt"] = 'Adcionar novo usuário'; |
| | | ?> |
| | |
| | | $wb['jailkit_chroot_home_txt'] = 'Jailkit chroot home'; |
| | | $wb['jailkit_chroot_app_sections_txt'] = 'Jailkit chroot app sections'; |
| | | $wb['jailkit_chroot_app_programs_txt'] = 'Jailkit chrooted applications'; |
| | | $wb['jailkit_chroot_cron_programs_txt'] = 'Jailkit cron chrooted applications'; |
| | | $wb['website_path_txt'] = 'Website path'; |
| | | $wb['website_symlinks_txt'] = 'Website symlinks'; |
| | | $wb['vhost_conf_dir_txt'] = 'Vhost config dir'; |
| | |
| | | $wb['gateway_error_wrong'] = 'Invalid Gateway format.'; |
| | | $wb['hostname_error_empty'] = 'Hostname is empty.'; |
| | | $wb['nameservers_error_empty'] = 'Nameserver is empty.'; |
| | | $wb['config_dir_txt'] = 'Config directory'; |
| | | $wb['init_script_txt'] = 'Cron init script name'; |
| | | $wb['crontab_dir_txt'] = 'Path for individual crontabs'; |
| | | $wb['wget_txt'] = 'Path to wget program'; |
| | | $wb['security_level_txt'] = 'Security level'; |
| | | ?> |
| | |
| | | $wb["udp_port_help_txt"] = 'Separated by comma'; |
| | | $wb["active_txt"] = 'Active'; |
| | | $wb["firewall_error_unique"] = 'There is already a firewall record for this server.'; |
| | | $wb["active_txt"] = 'Active'; |
| | | $wb["tcp_ports_error_regex"] = 'Character not allowed in tcp port definition. Allowed characters are numbers, ":" and ",".'; |
| | | $wb["udp_ports_error_regex"] = 'Character not allowed in udp port definition. Allowed characters are numbers, ":" and ",".'; |
| | | ?> |
| | |
| | | $wb["jailkit_chroot_home_txt"] = 'Jailkit chroot home'; |
| | | $wb["jailkit_chroot_app_sections_txt"] = 'Jailkit chroot app sections'; |
| | | $wb["jailkit_chroot_app_programs_txt"] = 'Jailkit chrooted applications'; |
| | | $wb['jailkit_chroot_cron_programs_txt'] = 'Jailkit cron chrooted applications'; |
| | | $wb["website_path_txt"] = 'Website path'; |
| | | $wb["website_symlinks_txt"] = 'Website symlinks'; |
| | | $wb["website_basedir_txt"] = 'Website basedir'; |
| | |
| | | $wb["gateway_error_wrong"] = 'Invalid Gateway format.'; |
| | | $wb["hostname_error_empty"] = 'Hostname is empty.'; |
| | | $wb["nameservers_error_empty"] = 'Nameserver is empty.'; |
| | | $wb["config_dir_txt"] = 'Config directory'; |
| | | $wb["init_script_txt"] = 'Cron init script name'; |
| | | $wb["crontab_dir_txt"] = 'Path for individual crontabs'; |
| | | $wb["wget_txt"] = 'Path to wget program'; |
| | | $wb["web_user_txt"] = 'Apache user'; |
| | | $wb["web_group_txt"] = 'Apache group'; |
| | | ?> |
| | |
| | | $wb['gateway_error_wrong'] = 'Invalid Gateway format.'; |
| | | $wb['hostname_error_empty'] = 'Hostname is empty.'; |
| | | $wb['nameservers_error_empty'] = 'Nameserver is empty.'; |
| | | $wb['jailkit_chroot_cron_programs_txt'] = 'Jailkit cron chrooted applications'; |
| | | $wb['config_dir_txt'] = 'Config directory'; |
| | | $wb['init_script_txt'] = 'Cron init script name'; |
| | | $wb['crontab_dir_txt'] = 'Path for individual crontabs'; |
| | | $wb['wget_txt'] = 'Path to wget program'; |
| | | $wb['security_level_txt'] = 'Security level'; |
| | | ?> |
| | |
| | | $wb['gateway_error_wrong'] = 'Invalid Gateway format.'; |
| | | $wb['hostname_error_empty'] = 'Hostname is empty.'; |
| | | $wb['nameservers_error_empty'] = 'Nameserver is empty.'; |
| | | $wb['jailkit_chroot_cron_programs_txt'] = 'Jailkit cron chrooted applications'; |
| | | $wb['config_dir_txt'] = 'Config directory'; |
| | | $wb['init_script_txt'] = 'Cron init script name'; |
| | | $wb['crontab_dir_txt'] = 'Path for individual crontabs'; |
| | | $wb['wget_txt'] = 'Path to wget program'; |
| | | $wb['security_level_txt'] = 'Security level'; |
| | | ?> |
| | |
| | | $wb['gateway_error_wrong'] = 'Invalid Gateway format.'; |
| | | $wb['hostname_error_empty'] = 'Hostname is empty.'; |
| | | $wb['nameservers_error_empty'] = 'Nameserver is empty.'; |
| | | $wb['jailkit_chroot_cron_programs_txt'] = 'Jailkit cron chrooted applications'; |
| | | $wb['config_dir_txt'] = 'Config directory'; |
| | | $wb['init_script_txt'] = 'Cron init script name'; |
| | | $wb['crontab_dir_txt'] = 'Path for individual crontabs'; |
| | | $wb['wget_txt'] = 'Path to wget program'; |
| | | $wb['security_level_txt'] = 'Security level'; |
| | | ?> |
| | |
| | | $wb['gateway_error_wrong'] = 'Invalid Gateway format.'; |
| | | $wb['hostname_error_empty'] = 'Hostname is empty.'; |
| | | $wb['nameservers_error_empty'] = 'Nameserver is empty.'; |
| | | $wb['jailkit_chroot_cron_programs_txt'] = 'Jailkit cron chrooted applications'; |
| | | $wb['config_dir_txt'] = 'Config directory'; |
| | | $wb['init_script_txt'] = 'Cron init script name'; |
| | | $wb['crontab_dir_txt'] = 'Path for individual crontabs'; |
| | | $wb['wget_txt'] = 'Path to wget program'; |
| | | $wb['security_level_txt'] = 'Security level'; |
| | | ?> |
| | |
| | | $wb['gateway_error_wrong'] = 'Invalid Gateway format.'; |
| | | $wb['hostname_error_empty'] = 'Hostname is empty.'; |
| | | $wb['nameservers_error_empty'] = 'Nameserver is empty.'; |
| | | $wb['jailkit_chroot_cron_programs_txt'] = 'Jailkit cron chrooted applications'; |
| | | $wb['config_dir_txt'] = 'Config directory'; |
| | | $wb['init_script_txt'] = 'Cron init script name'; |
| | | $wb['crontab_dir_txt'] = 'Path for individual crontabs'; |
| | | $wb['wget_txt'] = 'Path to wget program'; |
| | | $wb['security_level_txt'] = 'Security level'; |
| | | ?> |
| | |
| | | $wb['gateway_error_wrong'] = 'Invalid Gateway format.'; |
| | | $wb['hostname_error_empty'] = 'Hostname is empty.'; |
| | | $wb['nameservers_error_empty'] = 'Nameserver is empty.'; |
| | | $wb['jailkit_chroot_cron_programs_txt'] = 'Jailkit cron chrooted applications'; |
| | | $wb['config_dir_txt'] = 'Config directory'; |
| | | $wb['init_script_txt'] = 'Cron init script name'; |
| | | $wb['crontab_dir_txt'] = 'Path for individual crontabs'; |
| | | $wb['wget_txt'] = 'Path to wget program'; |
| | | $wb['security_level_txt'] = 'Security level'; |
| | | ?> |
| | |
| | | $wb['gateway_error_wrong'] = 'Invalid Gateway format.'; |
| | | $wb['hostname_error_empty'] = 'Hostname is empty.'; |
| | | $wb['nameservers_error_empty'] = 'Nameserver is empty.'; |
| | | $wb['jailkit_chroot_cron_programs_txt'] = 'Jailkit cron chrooted applications'; |
| | | $wb['config_dir_txt'] = 'Config directory'; |
| | | $wb['init_script_txt'] = 'Cron init script name'; |
| | | $wb['crontab_dir_txt'] = 'Path for individual crontabs'; |
| | | $wb['wget_txt'] = 'Path to wget program'; |
| | | $wb['security_level_txt'] = 'Security level'; |
| | | ?> |
| | |
| | | } |
| | | } |
| | | } |
| | | |
| | | |
| | | $packages = $app->db->queryAllRecords("SELECT software_package.package_name, v1, v2, v3, v4 FROM software_package LEFT JOIN software_update ON ( software_package.package_name = software_update.package_name ) GROUP BY package_name ORDER BY v1 DESC , v2 DESC , v3 DESC , v4 DESC"); |
| | | if(is_array($packages)) { |
| | | foreach($packages as $p) { |
| | | |
| | | $version = $p['v1'].'.'.$p['v2'].'.'.$p['v3'].'.'.$p['v4']; |
| | | $updates = $client->get_updates($p['package_name'], $version,$repo['repo_username'], $repo['repo_password']); |
| | | |
| | | if(is_array($updates)) { |
| | | foreach($updates as $u) { |
| | | |
| | | $version_array = explode('.',$u['version']); |
| | | $v1 = intval($version_array[0]); |
| | | $v2 = intval($version_array[1]); |
| | | $v3 = intval($version_array[2]); |
| | | $v4 = intval($version_array[3]); |
| | | |
| | | $package_name = $app->db->quote($u['package_name']); |
| | | $software_repo_id = intval($repo['software_repo_id']); |
| | | $update_url = $app->db->quote($u['url']); |
| | | $update_md5 = $app->db->quote($u['md5']); |
| | | $update_dependencies = (isset($u['dependencies']))?$app->db->quote($u['dependencies']):''; |
| | | $update_title = $app->db->quote($u['title']); |
| | | $type = $app->db->quote($u['type']); |
| | | |
| | | // Check that we do not have this update in the database yet |
| | | $sql = "SELECT * FROM software_update WHERE package_name = '$package_name' and v1 = '$v1' and v2 = '$v2' and v3 = '$v3' and v4 = '$v4'"; |
| | | $tmp = $app->db->queryOneRecord($sql); |
| | | if(!isset($tmp['software_update_id'])) { |
| | | // Insert the update in the datbase |
| | | $sql = "INSERT INTO software_update (software_repo_id, package_name, update_url, update_md5, update_dependencies, update_title, v1, v2, v3, v4, type) |
| | | VALUES ($software_repo_id, '$package_name', '$update_url', '$update_md5', '$update_dependencies', '$update_title', '$v1', '$v2', '$v3', '$v4', '$type')"; |
| | | //die($sql); |
| | | $app->db->query($sql); |
| | | } |
| | | |
| | | } |
| | | } |
| | | } |
| | | } |
| | | } |
| | | } |
| | | |
| | |
| | | $tmp = $app->db->queryOneRecord($sql); |
| | | $software_update_id = $tmp['software_update_id']; |
| | | |
| | | // $insert_data = "(package_name, server_id, software_update_id, status) VALUES ('$package_name', '$server_id', '$software_update_id','installing')"; |
| | | $insert_data = "(package_name, server_id, software_update_id, status) VALUES ('$package_name', '$server_id', '$software_update_id','installed')"; |
| | | $insert_data = "(package_name, server_id, software_update_id, status) VALUES ('$package_name', '$server_id', '$software_update_id','installing')"; |
| | | // $insert_data = "(package_name, server_id, software_update_id, status) VALUES ('$package_name', '$server_id', '$software_update_id','installed')"; |
| | | $app->db->datalogInsert('software_update_inst', $insert_data, 'software_update_inst_id'); |
| | | |
| | | } |
| | |
| | | |
| | | if($inst['status'] == 'installed') { |
| | | $installed_txt .= $s['server_name'].": Installed version $version<br />"; |
| | | } elseif ($inst['status'] == 'installing') { |
| | | $installed_txt .= $s['server_name'].": Installation in progress<br />"; |
| | | } elseif ($inst['status'] == 'installing') { |
| | | $installed_txt .= $s['server_name'].": Installation in progress<br />"; |
| | | } elseif ($inst['status'] == 'failed') { |
| | | $installed_txt .= $s['server_name'].": Installation failed<br />"; |
| | | } elseif ($inst['status'] == 'deleting') { |
| | | $installed_txt .= $s['server_name'].": Deletion in progress<br />"; |
| | | } else { |
| | |
| | | $server_id = intval($_GET['server_id']); |
| | | $software_update_id = intval($_GET['id']); |
| | | |
| | | // $insert_data = "(package_name, server_id, software_update_id, status) VALUES ('$package_name', '$server_id', '$software_update_id','installing')"; |
| | | $insert_data = "(package_name, server_id, software_update_id, status) VALUES ('$package_name', '$server_id', '$software_update_id','installed')"; |
| | | $insert_data = "(package_name, server_id, software_update_id, status) VALUES ('$package_name', '$server_id', '$software_update_id','installing')"; |
| | | // $insert_data = "(package_name, server_id, software_update_id, status) VALUES ('$package_name', '$server_id', '$software_update_id','installed')"; |
| | | $app->db->datalogInsert('software_update_inst', $insert_data, 'software_update_inst_id'); |
| | | |
| | | } |
| | |
| | | <h2><tmpl_var name="list_head_txt"></h2>
|
| | | <p><tmpl_var name="list_desc_txt"></p>
|
| | |
|
| | | <div class="panel panel_language_export">
|
| | | |
| | | <div class="pnl_formsarea">
|
| | | <fieldset class="inlineLabels"><legend>Language Export</legend>
|
| | | <div class="ctrlHolder">
|
| | | <label for="lng_select">{tmpl_var name='language_select_txt'}</label>
|
| | | <select name="lng_select" id="language" class="selectInput withicons">
|
| | | {tmpl_var name='language_option'}
|
| | | </select>
|
| | | </div>
|
| | | </fieldset>
|
| | |
|
| | | <input type="hidden" name="id" value="{tmpl_var name='id'}">
|
| | |
|
| | | <div class="buttonHolder buttons">
|
| | | <button class="positive iconstxt icoPositive" type="button" value="{tmpl_var name='btn_save_txt'}" onClick="submitForm('pageForm','admin/language_export.php');"><span>{tmpl_var name='btn_save_txt'}</span></button>
|
| | | <button class="negative iconstxt icoNegative" type="button" value="{tmpl_var name='btn_cancel_txt'}" onClick="loadContent('admin/language_list.php');"><span>{tmpl_var name='btn_cancel_txt'}</span></button>
|
| | | </div>
|
| | | </div>
|
| | | |
| | | </div>
|
| | | <h2><tmpl_var name="list_head_txt"></h2> |
| | | <p><tmpl_var name="list_desc_txt"></p> |
| | | |
| | | <div class="panel panel_language_export"> |
| | | |
| | | <div class="pnl_formsarea"> |
| | | <fieldset class="inlineLabels"><legend>Language Export</legend> |
| | | <div class="ctrlHolder"> |
| | | <label for="lng_select">{tmpl_var name='language_select_txt'}</label> |
| | | <select name="lng_select" id="lng_select" class="selectInput withicons"> |
| | | {tmpl_var name='language_option'} |
| | | </select> |
| | | </div> |
| | | </fieldset> |
| | | |
| | | <tmpl_if name="msg"> |
| | | <div id="OKMsg"><p><tmpl_var name="msg"></p></div> |
| | | </tmpl_if> |
| | | |
| | | <input type="hidden" name="id" value="{tmpl_var name='id'}"> |
| | | |
| | | <div class="buttonHolder buttons"> |
| | | <button class="positive iconstxt icoPositive" type="button" value="{tmpl_var name='btn_save_txt'}" onClick="submitForm('pageForm','admin/language_export.php');"><span>{tmpl_var name='btn_save_txt'}</span></button> |
| | | <button class="negative iconstxt icoNegative" type="button" value="{tmpl_var name='btn_cancel_txt'}" onClick="loadContent('admin/language_list.php');"><span>{tmpl_var name='btn_cancel_txt'}</span></button> |
| | | </div> |
| | | </div> |
| | | |
| | | </div> |
| | |
| | | <h2><tmpl_var name="list_head_txt"></h2>
|
| | | <p><tmpl_var name="list_desc_txt"></p>
|
| | |
|
| | | <div class="panel panel_language_import">
|
| | | |
| | | <div class="pnl_formsarea">
|
| | | <fieldset class="inlineLabels"><legend>Language Import</legend>
|
| | | <div class="ctrlHolder">
|
| | | <label for="lng_select"><em>*</em> {tmpl_var name='language_import_txt'}</label>
|
| | | <input name="file" id="file" size="30" type="file" class="fileUpload" />
|
| | | </div>
|
| | | <div class="ctrlHolder">
|
| | | <p class="label">{tmpl_var name='language_overwrite_txt'}</p>
|
| | | <div class="multiField">
|
| | | <input id="overwrite" type="checkbox" value="1" name="overwrite"/>
|
| | | </div>
|
| | | </div>
|
| | | </fieldset>
|
| | |
|
| | | <input type="hidden" name="id" value="{tmpl_var name='id'}">
|
| | |
|
| | | <div class="buttonHolder buttons">
|
| | | <button class="positive iconstxt icoPositive" type="button" value="{tmpl_var name='btn_save_txt'}" onClick="submitUploadForm('pageForm','admin/language_import.php');"><span>{tmpl_var name='btn_save_txt'}</span></button>
|
| | | <button class="negative iconstxt icoNegative" type="button" value="{tmpl_var name='btn_cancel_txt'}" onClick="loadContent('admin/language_list.php');"><span>{tmpl_var name='btn_cancel_txt'}</span></button>
|
| | | </div>
|
| | | </div>
|
| | | |
| | | </div>
|
| | | <h2><tmpl_var name="list_head_txt"></h2> |
| | | <p><tmpl_var name="list_desc_txt"></p> |
| | | |
| | | <div class="panel panel_language_import"> |
| | | |
| | | <div class="pnl_formsarea"> |
| | | <fieldset class="inlineLabels"><legend>Language Import</legend> |
| | | <div class="ctrlHolder"> |
| | | <label for="lng_select"><em>*</em> {tmpl_var name='language_import_txt'}</label> |
| | | <input name="file" id="file" size="30" type="file" class="fileUpload" /> |
| | | </div> |
| | | <div class="ctrlHolder"> |
| | | <p class="label">{tmpl_var name='language_overwrite_txt'}</p> |
| | | <div class="multiField"> |
| | | <input id="overwrite" type="checkbox" value="1" name="overwrite"/> |
| | | </div> |
| | | </div> |
| | | </fieldset> |
| | | |
| | | <tmpl_if name="msg"> |
| | | <div id="OKMsg"><p><tmpl_var name="msg"></p></div> |
| | | </tmpl_if> |
| | | <tmpl_if name="error"> |
| | | <div id="errorMsg"><h3>ERROR</h3><ol><tmpl_var name="error"></ol></div> |
| | | </tmpl_if> |
| | | |
| | | <input type="hidden" name="id" value="{tmpl_var name='id'}"> |
| | | |
| | | <div class="buttonHolder buttons"> |
| | | <button class="positive iconstxt icoPositive" type="button" value="{tmpl_var name='btn_save_txt'}" onClick="submitUploadForm('pageForm','admin/language_import.php');"><span>{tmpl_var name='btn_save_txt'}</span></button> |
| | | <button class="negative iconstxt icoNegative" type="button" value="{tmpl_var name='btn_cancel_txt'}" onClick="loadContent('admin/language_list.php');"><span>{tmpl_var name='btn_cancel_txt'}</span></button> |
| | | </div> |
| | | </div> |
| | | |
| | | </div> |
New file |
| | |
| | | <h2><tmpl_var name="list_head_txt"></h2>
|
| | | <p><tmpl_var name="list_desc_txt"></p>
|
| | |
|
| | | <div class="panel panel_server_config">
|
| | | |
| | | <div class="pnl_formsarea">
|
| | | <fieldset class="inlineLabels">
|
| | | <div class="ctrlHolder">
|
| | | <label for="init_script">{tmpl_var name='init_script_txt'}</label>
|
| | | <input name="init_script" id="init_script" value="{tmpl_var name='init_script'}" size="40" maxlength="255" type="text" class="textInput" />
|
| | | </div>
|
| | | <div class="ctrlHolder">
|
| | | <label for="crontab_dir">{tmpl_var name='crontab_dir_txt'}</label>
|
| | | <input name="crontab_dir" id="crontab_dir" value="{tmpl_var name='crontab_dir'}" size="40" maxlength="255" type="text" class="textInput" />
|
| | | </div>
|
| | | <div class="ctrlHolder">
|
| | | <label for="wget">{tmpl_var name='wget_txt'}</label>
|
| | | <input name="wget" id="wget" value="{tmpl_var name='wget'}" size="40" maxlength="255" type="text" class="textInput" />
|
| | | </div>
|
| | | </fieldset>
|
| | |
|
| | | <input type="hidden" name="id" value="{tmpl_var name='id'}">
|
| | |
|
| | | <div class="buttonHolder buttons">
|
| | | <button class="positive iconstxt icoPositive" type="button" value="{tmpl_var name='btn_save_txt'}" onClick="submitForm('pageForm','admin/server_config_edit.php');"><span>{tmpl_var name='btn_save_txt'}</span></button>
|
| | | <button class="negative iconstxt icoNegative" type="button" value="{tmpl_var name='btn_cancel_txt'}" onClick="loadContent('admin/server_config_list.php');"><span>{tmpl_var name='btn_cancel_txt'}</span></button>
|
| | | </div>
|
| | | </div>
|
| | | |
| | | </div>
|
| | |
| | | <label for="jailkit_chroot_app_programs">{tmpl_var name='jailkit_chroot_app_programs_txt'}</label>
|
| | | <input name="jailkit_chroot_app_programs" id="jailkit_chroot_app_programs" value="{tmpl_var name='jailkit_chroot_app_programs'}" size="40" maxlength="1000" type="text" class="textInput" />
|
| | | </div>
|
| | | <div class="ctrlHolder">
|
| | | <label for="jailkit_chroot_cron_programs">{tmpl_var name='jailkit_chroot_cron_programs_txt'}</label>
|
| | | <input name="jailkit_chroot_cron_programs" id="jailkit_chroot_cron_programs" value="{tmpl_var name='jailkit_chroot_cron_programs'}" size="40" maxlength="1000" type="text" class="textInput" />
|
| | | </div>
|
| | | </fieldset>
|
| | |
|
| | | <input type="hidden" name="id" value="{tmpl_var name='id'}">
|
| | |
| | | <h2><tmpl_var name="list_head_txt"></h2>
|
| | | <p><tmpl_var name="list_desc_txt"></p>
|
| | |
|
| | | <div class="panel panel_list_server_config">
|
| | |
|
| | | <div class="pnl_toolsarea">
|
| | | <fieldset><legend>Tools</legend>
|
| | | <div class="buttons">
|
| | | <button class="iconstxt icoAdd" type="button" onClick="loadContent('admin/server_config_edit.php');">
|
| | | <span>{tmpl_var name="add_new_record_txt"}</span>
|
| | | </button>
|
| | | </div>
|
| | | </fieldset>
|
| | | </div>
|
| | |
|
| | | <div class="pnl_listarea">
|
| | | <fieldset><legend><tmpl_var name="list_head_txt"></legend>
|
| | | <table class="list">
|
| | | <thead>
|
| | | <tr>
|
| | | <th class="tbl_col_server_name" scope="col"><tmpl_var name="server_name_txt"></th>
|
| | | <th class="tbl_col_buttons" scope="col"> </th>
|
| | | </tr>
|
| | | <tr>
|
| | | <td class="tbl_col_server_name"><input type="text" name="search_server_name" value="{tmpl_var name='search_server_name'}" /></td>
|
| | | <td class="tbl_col_buttons"><div class="buttons"><button type="button" class="icons16 icoFilter" name="Filter" id="Filter" value="{tmpl_var name="filter_txt"}" onClick="submitForm('pageForm','admin/server_config_list.php');"><span>{tmpl_var name="filter_txt"}</span></button></div></td>
|
| | | </tr>
|
| | | </thead>
|
| | | <tbody>
|
| | | <tmpl_loop name="records">
|
| | | <tr class="tbl_row_<tmpl_if name='__EVEN__'}even<tmpl_else>uneven</tmpl_if>">
|
| | | <td class="tbl_col_server_name"><a href="#" onClick="loadContent('admin/server_config_edit.php?id={tmpl_var name='id'}');">{tmpl_var name="server_name"}</a></td>
|
| | | <td class="tbl_col_buttons">
|
| | | <div class="buttons icons16"> |
| | | <a class="icons16 icoDelete" href="javascript: del_record('admin/server_config_del.php?id={tmpl_var name='id'}&phpsessid={tmpl_var name='phpsessid'}','{tmpl_var name='delete_confirmation'}');"><span>{tmpl_var name='delete_txt'}</span></a>
|
| | | </div>
|
| | | </td>
|
| | | </tr>
|
| | | </tmpl_loop>
|
| | | </tbody>
|
| | | <tfoot>
|
| | | <tr>
|
| | | <td class="tbl_footer tbl_paging" colspan="2"><tmpl_var name="paging"></td>
|
| | | </tr>
|
| | | </tfoot>
|
| | | </table>
|
| | | </fieldset>
|
| | | </div>
|
| | |
|
| | | </div>
|
| | | <h2><tmpl_var name="list_head_txt"></h2> |
| | | <p><tmpl_var name="list_desc_txt"></p> |
| | | |
| | | <div class="panel panel_list_server_config"> |
| | | |
| | | <div class="pnl_listarea"> |
| | | <fieldset><legend><tmpl_var name="list_head_txt"></legend> |
| | | <table class="list"> |
| | | <thead> |
| | | <tr> |
| | | <th class="tbl_col_server_name" scope="col"><tmpl_var name="server_name_txt"></th> |
| | | <th class="tbl_col_buttons" scope="col"> </th> |
| | | </tr> |
| | | <tr> |
| | | <td class="tbl_col_server_name"><input type="text" name="search_server_name" value="{tmpl_var name='search_server_name'}" /></td> |
| | | <td class="tbl_col_buttons"><div class="buttons"><button type="button" class="icons16 icoFilter" name="Filter" id="Filter" value="{tmpl_var name="filter_txt"}" onClick="submitForm('pageForm','admin/server_config_list.php');"><span>{tmpl_var name="filter_txt"}</span></button></div></td> |
| | | </tr> |
| | | </thead> |
| | | <tbody> |
| | | <tmpl_loop name="records"> |
| | | <tr class="tbl_row_<tmpl_if name='__EVEN__'}even<tmpl_else>uneven</tmpl_if>"> |
| | | <td class="tbl_col_server_name"><a href="#" onClick="loadContent('admin/server_config_edit.php?id={tmpl_var name='id'}');">{tmpl_var name="server_name"}</a></td> |
| | | <td class="tbl_col_buttons"> |
| | | <div class="buttons icons16"> |
| | | <a class="icons16 icoDelete" href="javascript: del_record('admin/server_config_del.php?id={tmpl_var name='id'}&phpsessid={tmpl_var name='phpsessid'}','{tmpl_var name='delete_confirmation'}');"><span>{tmpl_var name='delete_txt'}</span></a> |
| | | </div> |
| | | </td> |
| | | </tr> |
| | | </tmpl_loop> |
| | | </tbody> |
| | | <tfoot> |
| | | <tr> |
| | | <td class="tbl_footer tbl_paging" colspan="2"><tmpl_var name="paging"></td> |
| | | </tr> |
| | | </tfoot> |
| | | </table> |
| | | </fieldset> |
| | | </div> |
| | | |
| | | </div> |
New file |
| | |
| | | <h2><tmpl_var name="list_head_txt"></h2>
|
| | | <p><tmpl_var name="list_desc_txt"></p>
|
| | |
|
| | | <div class="panel panel_server_config">
|
| | | |
| | | <div class="pnl_formsarea">
|
| | | <fieldset class="inlineLabels">
|
| | | <div class="ctrlHolder">
|
| | | <label for="config_dir">{tmpl_var name='config_dir_txt'}</label>
|
| | | <input name="config_dir" id="config_dir" value="{tmpl_var name='config_dir'}" size="40" maxlength="255" type="text" class="textInput" />
|
| | | </div>
|
| | | </fieldset>
|
| | |
|
| | | <input type="hidden" name="id" value="{tmpl_var name='id'}">
|
| | |
|
| | | <div class="buttonHolder buttons">
|
| | | <button class="positive iconstxt icoPositive" type="button" value="{tmpl_var name='btn_save_txt'}" onClick="submitForm('pageForm','admin/server_config_edit.php');"><span>{tmpl_var name='btn_save_txt'}</span></button>
|
| | | <button class="negative iconstxt icoNegative" type="button" value="{tmpl_var name='btn_cancel_txt'}" onClick="loadContent('admin/server_config_list.php');"><span>{tmpl_var name='btn_cancel_txt'}</span></button>
|
| | | </div>
|
| | | </div>
|
| | | |
| | | </div>
|
| | |
| | | <label for="vhost_conf_enabled_dir">{tmpl_var name='vhost_conf_enabled_dir_txt'}</label> |
| | | <input name="vhost_conf_enabled_dir" id="vhost_conf_enabled_dir" value="{tmpl_var name='vhost_conf_enabled_dir'}" size="40" maxlength="255" type="text" class="textInput" /> |
| | | </div> |
| | | <div class="ctrlHolder"> |
| | | <p class="label">{tmpl_var name='security_level_txt'}</p> |
| | | <div class="multiField"> |
| | | <select name="security_level" id="security_level" class="selectInput"> |
| | | {tmpl_var name='security_level'} |
| | | </select> |
| | | </div> |
| | | </div> |
| | | <div class="ctrlHolder"> |
| | | <label for="user">{tmpl_var name='web_user_txt'}</label> |
| | | <input name="user" id="user" value="{tmpl_var name='user'}" size="40" maxlength="255" type="text" class="textInput" /> |
| | | </div> |
| | | <div class="ctrlHolder"> |
| | | <label for="group">{tmpl_var name='web_group_txt'}</label> |
| | | <input name="group" id="group" value="{tmpl_var name='group'}" size="40" maxlength="255" type="text" class="textInput" /> |
| | | </div> |
| | | </fieldset> |
| | | |
| | | <input type="hidden" name="id" value="{tmpl_var name='id'}"> |
| | |
| | | <h2><tmpl_var name="list_head_txt"></h2>
|
| | | <p><tmpl_var name="list_desc_txt"></p>
|
| | |
|
| | | <div class="panel panel_list_server">
|
| | |
|
| | | <div class="pnl_toolsarea">
|
| | | <fieldset><legend>Tools</legend>
|
| | | <div class="buttons">
|
| | | <button class="iconstxt icoAdd" type="button" onClick="loadContent('admin/server_edit.php');">
|
| | | <span>{tmpl_var name="add_new_record_txt"}</span>
|
| | | </button>
|
| | | </div>
|
| | | </fieldset>
|
| | | </div>
|
| | |
|
| | | <div class="pnl_listarea">
|
| | | <fieldset><legend><tmpl_var name="list_head_txt"></legend>
|
| | | <table class="list">
|
| | | <thead>
|
| | | <tr>
|
| | | <th class="tbl_col_server_name" scope="col"><tmpl_var name="server_name_txt"></th>
|
| | | <th class="tbl_col_mail_server" scope="col"><tmpl_var name="mail_server_txt"></th>
|
| | | <th class="tbl_col_web_server" scope="col"><tmpl_var name="web_server_txt"></th>
|
| | | <th class="tbl_col_dns_server" scope="col"><tmpl_var name="dns_server_txt"></th>
|
| | | <th class="tbl_col_file_server" scope="col"><tmpl_var name="file_server_txt"></th>
|
| | | <th class="tbl_col_db_server" scope="col"><tmpl_var name="db_server_txt"></th>
|
| | | <th class="tbl_col_vserver_server" scope="col"><tmpl_var name="vserver_server_txt"></th>
|
| | | <th class="tbl_col_buttons" scope="col"> </th>
|
| | | </tr>
|
| | | <tr>
|
| | | <td class="tbl_col_server_name"><input type="text" name="search_server_name" value="{tmpl_var name='search_server_name'}" /></td>
|
| | | <td class="tbl_col_mail_server"><select name="search_active" onChange="submitForm('pageForm','admin/server_list.php');">{tmpl_var name='search_mail_server'}</select></td>
|
| | | <td class="tbl_col_web_server"><select name="search_active" onChange="submitForm('pageForm','admin/server_list.php');">{tmpl_var name='search_web_server'}</select></td>
|
| | | <td class="tbl_col_dns_server"><select name="search_active" onChange="submitForm('pageForm','admin/server_list.php');">{tmpl_var name='search_dns_server'}</select></td>
|
| | | <td class="tbl_col_file_server"><select name="search_active" onChange="submitForm('pageForm','admin/server_list.php');">{tmpl_var name='search_file_server'}</select></td>
|
| | | <td class="tbl_col_db_server"><select name="search_active" onChange="submitForm('pageForm','admin/server_list.php');">{tmpl_var name='search_db_server'}</select></td>
|
| | | <td class="tbl_col_vserver_server"><select name="search_active" onChange="submitForm('pageForm','admin/server_list.php');">{tmpl_var name='search_vserver_server'}</select></td>
|
| | | <td class="tbl_col_buttons"><div class="buttons"><button type="button" class="icons16 icoFilter" name="Filter" id="Filter" value="{tmpl_var name="filter_txt"}" onClick="submitForm('pageForm','admin/server_list.php');"><span>{tmpl_var name="filter_txt"}</span></button></div></td>
|
| | | </tr>
|
| | | </thead>
|
| | | <tbody>
|
| | | <tmpl_loop name="records">
|
| | | <tr class="tbl_row_<tmpl_if name='__EVEN__'}even<tmpl_else>uneven</tmpl_if>">
|
| | | <td class="tbl_col_server_name"><a href="#" onClick="loadContent('admin/server_edit.php?id={tmpl_var name='id'}');">{tmpl_var name="server_name"}</a></td>
|
| | | <td class="tbl_col_mail_server">{tmpl_var name="mail_server"}</td>
|
| | | <td class="tbl_col_web_server">{tmpl_var name="web_server"}</td>
|
| | | <td class="tbl_col_dns_server">{tmpl_var name="dns_server"}</td>
|
| | | <td class="tbl_col_file_server">{tmpl_var name="file_server"}</td>
|
| | | <td class="tbl_col_db_server">{tmpl_var name="db_server"}</td>
|
| | | <td class="tbl_col_vserver_server">{tmpl_var name="vserver_server"}</td>
|
| | | <td class="tbl_col_buttons">
|
| | | <div class="buttons icons16"> |
| | | <a class="icons16 icoDelete" href="javascript: del_record('admin/server_del.php?id={tmpl_var name='id'}&phpsessid={tmpl_var name='phpsessid'}','{tmpl_var name='delete_confirmation'}');"><span>{tmpl_var name='delete_txt'}</span></a>
|
| | | </div>
|
| | | </td>
|
| | | </tr>
|
| | | </tmpl_loop>
|
| | | </tbody>
|
| | | <tfoot>
|
| | | <tr>
|
| | | <td class="tbl_footer tbl_paging" colspan="8"><tmpl_var name="paging"></td>
|
| | | </tr>
|
| | | </tfoot>
|
| | | </table>
|
| | | </fieldset>
|
| | | </div>
|
| | |
|
| | | </div>
|
| | | <h2><tmpl_var name="list_head_txt"></h2> |
| | | <p><tmpl_var name="list_desc_txt"></p> |
| | | |
| | | <div class="panel panel_list_server"> |
| | | |
| | | <div class="pnl_listarea"> |
| | | <fieldset><legend><tmpl_var name="list_head_txt"></legend> |
| | | <table class="list"> |
| | | <thead> |
| | | <tr> |
| | | <th class="tbl_col_server_name" scope="col"><tmpl_var name="server_name_txt"></th> |
| | | <th class="tbl_col_mail_server" scope="col"><tmpl_var name="mail_server_txt"></th> |
| | | <th class="tbl_col_web_server" scope="col"><tmpl_var name="web_server_txt"></th> |
| | | <th class="tbl_col_dns_server" scope="col"><tmpl_var name="dns_server_txt"></th> |
| | | <th class="tbl_col_file_server" scope="col"><tmpl_var name="file_server_txt"></th> |
| | | <th class="tbl_col_db_server" scope="col"><tmpl_var name="db_server_txt"></th> |
| | | <th class="tbl_col_vserver_server" scope="col"><tmpl_var name="vserver_server_txt"></th> |
| | | <th class="tbl_col_buttons" scope="col"> </th> |
| | | </tr> |
| | | <tr> |
| | | <td class="tbl_col_server_name"><input type="text" name="search_server_name" value="{tmpl_var name='search_server_name'}" /></td> |
| | | <td class="tbl_col_mail_server"><select name="search_active" onChange="submitForm('pageForm','admin/server_list.php');">{tmpl_var name='search_mail_server'}</select></td> |
| | | <td class="tbl_col_web_server"><select name="search_active" onChange="submitForm('pageForm','admin/server_list.php');">{tmpl_var name='search_web_server'}</select></td> |
| | | <td class="tbl_col_dns_server"><select name="search_active" onChange="submitForm('pageForm','admin/server_list.php');">{tmpl_var name='search_dns_server'}</select></td> |
| | | <td class="tbl_col_file_server"><select name="search_active" onChange="submitForm('pageForm','admin/server_list.php');">{tmpl_var name='search_file_server'}</select></td> |
| | | <td class="tbl_col_db_server"><select name="search_active" onChange="submitForm('pageForm','admin/server_list.php');">{tmpl_var name='search_db_server'}</select></td> |
| | | <td class="tbl_col_vserver_server"><select name="search_active" onChange="submitForm('pageForm','admin/server_list.php');">{tmpl_var name='search_vserver_server'}</select></td> |
| | | <td class="tbl_col_buttons"><div class="buttons"><button type="button" class="icons16 icoFilter" name="Filter" id="Filter" value="{tmpl_var name="filter_txt"}" onClick="submitForm('pageForm','admin/server_list.php');"><span>{tmpl_var name="filter_txt"}</span></button></div></td> |
| | | </tr> |
| | | </thead> |
| | | <tbody> |
| | | <tmpl_loop name="records"> |
| | | <tr class="tbl_row_<tmpl_if name='__EVEN__'}even<tmpl_else>uneven</tmpl_if>"> |
| | | <td class="tbl_col_server_name"><a href="#" onClick="loadContent('admin/server_edit.php?id={tmpl_var name='id'}');">{tmpl_var name="server_name"}</a></td> |
| | | <td class="tbl_col_mail_server">{tmpl_var name="mail_server"}</td> |
| | | <td class="tbl_col_web_server">{tmpl_var name="web_server"}</td> |
| | | <td class="tbl_col_dns_server">{tmpl_var name="dns_server"}</td> |
| | | <td class="tbl_col_file_server">{tmpl_var name="file_server"}</td> |
| | | <td class="tbl_col_db_server">{tmpl_var name="db_server"}</td> |
| | | <td class="tbl_col_vserver_server">{tmpl_var name="vserver_server"}</td> |
| | | <td class="tbl_col_buttons"> |
| | | <div class="buttons icons16"> |
| | | <a class="icons16 icoDelete" href="javascript: del_record('admin/server_del.php?id={tmpl_var name='id'}&phpsessid={tmpl_var name='phpsessid'}','{tmpl_var name='delete_confirmation'}');"><span>{tmpl_var name='delete_txt'}</span></a> |
| | | </div> |
| | | </td> |
| | | </tr> |
| | | </tmpl_loop> |
| | | </tbody> |
| | | <tfoot> |
| | | <tr> |
| | | <td class="tbl_footer tbl_paging" colspan="8"><tmpl_var name="paging"></td> |
| | | </tr> |
| | | </tfoot> |
| | | </table> |
| | | </fieldset> |
| | | </div> |
| | | |
| | | </div> |
| | |
| | | <h2><tmpl_var name="list_head_txt"></h2>
|
| | | <p><tmpl_var name="list_desc_txt"></p>
|
| | |
|
| | | <div class="panel panel_list_users">
|
| | |
|
| | | <div class="pnl_toolsarea">
|
| | | <fieldset><legend>Tools</legend>
|
| | | <div class="buttons">
|
| | | <button class="iconstxt icoAdd" type="button" onClick="loadContent('admin/users_edit.php');">
|
| | | <span>{tmpl_var name="add_new_record_txt"}</span>
|
| | | </button>
|
| | | </div>
|
| | | </fieldset>
|
| | | </div>
|
| | |
|
| | | <div class="pnl_listarea">
|
| | | <fieldset><legend><tmpl_var name="list_head_txt"></legend>
|
| | | <table class="list">
|
| | | <thead>
|
| | | <tr>
|
| | | <th class="tbl_col_username" scope="col"><tmpl_var name="username_txt"></th>
|
| | | <th class="tbl_col_vorname" scope="col"><tmpl_var name="vorname_txt"></th>
|
| | | <th class="tbl_col_name" scope="col"><tmpl_var name="name_txt"></th>
|
| | | <th class="tbl_col_ort" scope="col"><tmpl_var name="ort_txt"></th>
|
| | | <th class="tbl_col_buttons" scope="col"> </th>
|
| | | </tr>
|
| | | <tr>
|
| | | <td class="tbl_col_username"><input type="text" name="search_username" value="{tmpl_var name='search_username'}" /></td>
|
| | | <td class="tbl_col_vorname"><input type="text" name="search_vorname" value="{tmpl_var name='search_vorname'}" /></td>
|
| | | <td class="tbl_col_name"><input type="text" name="search_name" value="{tmpl_var name='search_name'}" /></td>
|
| | | <td class="tbl_col_ort"><input type="text" name="search_ort" value="{tmpl_var name='search_ort'}" /></td>
|
| | | <td class="tbl_col_buttons"><div class="buttons"><button type="button" class="icons16 icoFilter" name="Filter" id="Filter" value="{tmpl_var name="filter_txt"}" onClick="submitForm('pageForm','admin/users_list.php');"><span>{tmpl_var name="filter_txt"}</span></button></div></td>
|
| | | </tr>
|
| | | </thead>
|
| | | <tbody>
|
| | | <tmpl_loop name="records">
|
| | | <tr class="tbl_row_<tmpl_if name='__EVEN__'}even<tmpl_else>uneven</tmpl_if>">
|
| | | <td class="tbl_col_username"><a href="#" onClick="loadContent('admin/users_edit.php?id={tmpl_var name='id'}');">{tmpl_var name="username"}</a></td>
|
| | | <td class="tbl_col_vorname"><a href="#" onClick="loadContent('admin/users_edit.php?id={tmpl_var name='id'}');">{tmpl_var name="vorname"}</a></td>
|
| | | <td class="tbl_col_name"><a href="#" onClick="loadContent('admin/users_edit.php?id={tmpl_var name='id'}');">{tmpl_var name="name"}</a></td>
|
| | | <td class="tbl_col_ort"><a href="#" onClick="loadContent('admin/users_edit.php?id={tmpl_var name='id'}');">{tmpl_var name="ort"}</a></td>
|
| | | <td class="tbl_col_buttons">
|
| | | <div class="buttons icons16"> |
| | | <a class="icons16 icoLoginAs" href="#" onclick="loadContent('admin/login_as.php?id={tmpl_var name='id'}');"><span>{tmpl_var name='login_as_txt'}</span></a>
|
| | | <a class="icons16 icoDelete" href="javascript: del_record('admin/users_del.php?id={tmpl_var name='id'}&phpsessid={tmpl_var name='phpsessid'}','{tmpl_var name='delete_confirmation'}');"><span>{tmpl_var name='delete_txt'}</span></a>
|
| | | </div>
|
| | | </td>
|
| | | </tr>
|
| | | </tmpl_loop>
|
| | | </tbody>
|
| | | <tfoot>
|
| | | <tr>
|
| | | <td class="tbl_footer tbl_paging" colspan="5"><tmpl_var name="paging"></td>
|
| | | </tr>
|
| | | </tfoot>
|
| | | </table>
|
| | | </fieldset>
|
| | | </div>
|
| | |
|
| | | </div>
|
| | | <h2><tmpl_var name="list_head_txt"></h2> |
| | | <p><tmpl_var name="list_desc_txt"></p> |
| | | |
| | | <div class="panel panel_list_users"> |
| | | |
| | | <div class="pnl_toolsarea"> |
| | | <fieldset><legend>Tools</legend> |
| | | <div class="buttons"> |
| | | <button class="iconstxt icoAdd" type="button" onClick="loadContent('admin/users_edit.php');"> |
| | | <span>{tmpl_var name="add_new_record_txt"}</span> |
| | | </button> |
| | | </div> |
| | | </fieldset> |
| | | </div> |
| | | |
| | | <div class="pnl_listarea"> |
| | | <fieldset><legend><tmpl_var name="list_head_txt"></legend> |
| | | <table class="list"> |
| | | <thead> |
| | | <tr> |
| | | <th class="tbl_col_username" scope="col"><tmpl_var name="username_txt"></th> |
| | | <th class="tbl_col_vorname" scope="col"><tmpl_var name="vorname_txt"></th> |
| | | <th class="tbl_col_name" scope="col"><tmpl_var name="name_txt"></th> |
| | | <th class="tbl_col_ort" scope="col"><tmpl_var name="ort_txt"></th> |
| | | <th class="tbl_col_buttons" scope="col"> </th> |
| | | </tr> |
| | | <tr> |
| | | <td class="tbl_col_username"><input type="text" name="search_username" value="{tmpl_var name='search_username'}" /></td> |
| | | <td class="tbl_col_vorname"><input type="text" name="search_vorname" value="{tmpl_var name='search_vorname'}" /></td> |
| | | <td class="tbl_col_name"><input type="text" name="search_name" value="{tmpl_var name='search_name'}" /></td> |
| | | <td class="tbl_col_ort"><input type="text" name="search_ort" value="{tmpl_var name='search_ort'}" /></td> |
| | | <td class="tbl_col_buttons"><div class="buttons"><button type="button" class="icons16 icoFilter" name="Filter" id="Filter" value="{tmpl_var name="filter_txt"}" onClick="submitForm('pageForm','admin/users_list.php');"><span>{tmpl_var name="filter_txt"}</span></button></div></td> |
| | | </tr> |
| | | </thead> |
| | | <tbody> |
| | | <tmpl_loop name="records"> |
| | | <tr class="tbl_row_<tmpl_if name='__EVEN__'}even<tmpl_else>uneven</tmpl_if>"> |
| | | <td class="tbl_col_username"><a href="#" onClick="loadContent('admin/users_edit.php?id={tmpl_var name='id'}');">{tmpl_var name="username"}</a></td> |
| | | <td class="tbl_col_vorname"><a href="#" onClick="loadContent('admin/users_edit.php?id={tmpl_var name='id'}');">{tmpl_var name="vorname"}</a></td> |
| | | <td class="tbl_col_name"><a href="#" onClick="loadContent('admin/users_edit.php?id={tmpl_var name='id'}');">{tmpl_var name="name"}</a></td> |
| | | <td class="tbl_col_ort"><a href="#" onClick="loadContent('admin/users_edit.php?id={tmpl_var name='id'}');">{tmpl_var name="ort"}</a></td> |
| | | <td class="tbl_col_buttons"> |
| | | <div class="buttons icons16"> |
| | | <tmpl_if name="username" op="!=" value="admin"><a class="icons16 icoLoginAs" href="#" onclick="loadContent('admin/login_as.php?id={tmpl_var name='id'}');"><span>{tmpl_var name='login_as_txt'}</span></a> |
| | | <a class="icons16 icoDelete" href="javascript: del_record('admin/users_del.php?id={tmpl_var name='id'}&phpsessid={tmpl_var name='phpsessid'}','{tmpl_var name='delete_confirmation'}');"><span>{tmpl_var name='delete_txt'}</span></a></tmpl_if> |
| | | </div> |
| | | </td> |
| | | </tr> |
| | | </tmpl_loop> |
| | | </tbody> |
| | | <tfoot> |
| | | <tr> |
| | | <td class="tbl_footer tbl_paging" colspan="5"><tmpl_var name="paging"></td> |
| | | </tr> |
| | | </tfoot> |
| | | </table> |
| | | </fieldset> |
| | | </div> |
| | | |
| | | </div> |
| | |
| | | $app->uses('listform_actions'); |
| | | |
| | | $app->listform_actions->SQLOrderBy = 'ORDER BY company_name, contact_name, client_id'; |
| | | $app->listform_actions->SQLExtWhere = "limit_client = 0"; |
| | | $app->listform_actions->onLoad(); |
| | | |
| | | |
| | |
| | | <?php
|
| | |
|
| | | /*
|
| | | Form Definition
|
| | |
|
| | | Tabledefinition
|
| | |
|
| | | Datatypes:
|
| | | - INTEGER (Forces the input to Int)
|
| | | - DOUBLE
|
| | | - CURRENCY (Formats the values to currency notation)
|
| | | - VARCHAR (no format check, maxlength: 255)
|
| | | - TEXT (no format check)
|
| | | - DATE (Dateformat, automatic conversion to timestamps)
|
| | |
|
| | | Formtype:
|
| | | - TEXT (Textfield)
|
| | | - TEXTAREA (Textarea)
|
| | | - PASSWORD (Password textfield, input is not shown when edited)
|
| | | - SELECT (Select option field)
|
| | | - RADIO
|
| | | - CHECKBOX
|
| | | - CHECKBOXARRAY
|
| | | - FILE
|
| | |
|
| | | VALUE:
|
| | | - Wert oder Array
|
| | |
|
| | | Hint:
|
| | | The ID field of the database table is not part of the datafield definition.
|
| | | The ID field must be always auto incement (int or bigint).
|
| | |
|
| | |
|
| | | */
|
| | |
|
| | | $form["title"] = "Client";
|
| | | $form["description"] = "";
|
| | | $form["name"] = "client";
|
| | | $form["action"] = "client_edit.php";
|
| | | $form["db_table"] = "client";
|
| | | $form["db_table_idx"] = "client_id";
|
| | | $form["db_history"] = "yes";
|
| | | $form["tab_default"] = "address";
|
| | | $form["list_default"] = "client_list.php";
|
| | | $form["auth"] = 'yes';
|
| | |
|
| | | $form["auth_preset"]["userid"] = 0; // 0 = id of the user, > 0 id must match with id of current user
|
| | | $form["auth_preset"]["groupid"] = 0; // 0 = default groupid of the user, > 0 id must match with groupid of current user
|
| | | $form["auth_preset"]["perm_user"] = 'riud'; //r = read, i = insert, u = update, d = delete
|
| | | $form["auth_preset"]["perm_group"] = 'riud'; //r = read, i = insert, u = update, d = delete
|
| | | $form["auth_preset"]["perm_other"] = ''; //r = read, i = insert, u = update, d = delete
|
| | |
|
| | | //* Languages
|
| | | $language_list = array();
|
| | | $handle = @opendir(ISPC_ROOT_PATH.'/lib/lang');
|
| | | while ($file = @readdir ($handle)) {
|
| | | if ($file != '.' && $file != '..') {
|
| | | if(@is_file(ISPC_ROOT_PATH.'/lib/lang/'.$file) and substr($file,-4,4) == '.lng') {
|
| | | $tmp = substr($file, 0, 2);
|
| | | $language_list[$tmp] = $tmp;
|
| | | }
|
| | | }
|
| | | }
|
| | |
|
| | | $form["tabs"]['address'] = array (
|
| | | 'title' => "Address",
|
| | | 'width' => 100,
|
| | | 'template' => "templates/client_edit_address.htm",
|
| | | 'fields' => array (
|
| | | ##################################
|
| | | # Begin Datatable fields
|
| | | ##################################
|
| | | 'company_name' => array (
|
| | | 'datatype' => 'VARCHAR',
|
| | | 'formtype' => 'TEXT',
|
| | | 'default' => '',
|
| | | 'value' => '',
|
| | | 'separator' => '',
|
| | | 'width' => '30',
|
| | | 'maxlength' => '255',
|
| | | 'rows' => '',
|
| | | 'cols' => ''
|
| | | ),
|
| | | 'contact_name' => array (
|
| | | 'datatype' => 'VARCHAR',
|
| | | 'formtype' => 'TEXT',
|
| | | 'validators' => array ( 0 => array ( 'type' => 'NOTEMPTY',
|
| | | 'errmsg'=> 'contact_error_empty'),
|
| | | ),
|
| | | 'default' => '',
|
| | | 'value' => '',
|
| | | 'separator' => '',
|
| | | 'width' => '30',
|
| | | 'maxlength' => '255',
|
| | | 'rows' => '',
|
| | | 'cols' => ''
|
| | | ),
|
| | | 'username' => array (
|
| | | 'datatype' => 'VARCHAR',
|
| | | 'formtype' => 'TEXT',
|
| | | 'validators' => array ( 0 => array ( 'type' => 'NOTEMPTY',
|
| | | 'errmsg'=> 'username_error_empty'),
|
| | | 1 => array ( 'type' => 'CUSTOM',
|
| | | 'class' => 'validate_client',
|
| | | 'function' => 'username_unique',
|
| | | 'errmsg'=> 'username_error_unique'),
|
| | | 2 => array ( 'type' => 'REGEX',
|
| | | 'regex' => '/^[\w\.\-\_]{0,64}$/',
|
| | | 'errmsg'=> 'username_error_regex'),
|
| | | ),
|
| | | 'default' => '',
|
| | | 'value' => '',
|
| | | 'separator' => '',
|
| | | 'width' => '30',
|
| | | 'maxlength' => '255',
|
| | | 'rows' => '',
|
| | | 'cols' => ''
|
| | | ),
|
| | | 'password' => array (
|
| | | 'datatype' => 'VARCHAR',
|
| | | 'formtype' => 'PASSWORD',
|
| | | 'encryption'=> 'CRYPT',
|
| | | 'default' => '',
|
| | | 'value' => '',
|
| | | 'separator' => '',
|
| | | 'width' => '30',
|
| | | 'maxlength' => '255',
|
| | | 'rows' => '',
|
| | | 'cols' => ''
|
| | | ),
|
| | | 'language' => array (
|
| | | 'datatype' => 'VARCHAR',
|
| | | 'formtype' => 'SELECT',
|
| | | 'default' => $conf["language"],
|
| | | 'value' => $language_list,
|
| | | 'separator' => '',
|
| | | 'width' => '30',
|
| | | 'maxlength' => '255',
|
| | | 'rows' => '',
|
| | | 'cols' => ''
|
| | | ),
|
| | | 'usertheme' => array (
|
| | | 'datatype' => 'VARCHAR',
|
| | | 'formtype' => 'SELECT',
|
| | | 'default' => 'default',
|
| | | 'value' => array('default' => 'default'),
|
| | | 'separator' => '',
|
| | | 'width' => '30',
|
| | | 'maxlength' => '255',
|
| | | 'rows' => '',
|
| | | 'cols' => ''
|
| | | ),
|
| | | 'street' => array (
|
| | | 'datatype' => 'VARCHAR',
|
| | | 'formtype' => 'TEXT',
|
| | | 'default' => '',
|
| | | 'value' => '',
|
| | | 'separator' => '',
|
| | | 'width' => '30',
|
| | | 'maxlength' => '255',
|
| | | 'rows' => '',
|
| | | 'cols' => ''
|
| | | ),
|
| | | 'zip' => array (
|
| | | 'datatype' => 'VARCHAR',
|
| | | 'formtype' => 'TEXT',
|
| | | 'default' => '',
|
| | | 'value' => '',
|
| | | 'separator' => '',
|
| | | 'width' => '10',
|
| | | 'maxlength' => '255',
|
| | | 'rows' => '',
|
| | | 'cols' => ''
|
| | | ),
|
| | | 'city' => array (
|
| | | 'datatype' => 'VARCHAR',
|
| | | 'formtype' => 'TEXT',
|
| | | 'default' => '',
|
| | | 'value' => '',
|
| | | 'separator' => '',
|
| | | 'width' => '30',
|
| | | 'maxlength' => '255',
|
| | | 'rows' => '',
|
| | | 'cols' => ''
|
| | | ),
|
| | | 'state' => array (
|
| | | 'datatype' => 'VARCHAR',
|
| | | 'formtype' => 'TEXT',
|
| | | 'default' => '',
|
| | | 'value' => '',
|
| | | 'separator' => '',
|
| | | 'width' => '30',
|
| | | 'maxlength' => '255',
|
| | | 'rows' => '',
|
| | | 'cols' => ''
|
| | | ),
|
| | | 'country' => array (
|
| | | 'datatype' => 'VARCHAR',
|
| | |
|
| | | 'formtype' => 'SELECT',
|
| | | 'default' => 'DE',
|
| | | 'datasource' => array ( 'type' => 'SQL',
|
| | | 'querystring' => 'SELECT iso,printable_name FROM country ORDER BY printable_name',
|
| | | 'keyfield'=> 'iso',
|
| | | 'valuefield'=> 'printable_name'
|
| | | ),
|
| | | 'value' => ''
|
| | | ),
|
| | | 'telephone' => array (
|
| | | 'datatype' => 'VARCHAR',
|
| | | 'formtype' => 'TEXT',
|
| | | 'default' => '',
|
| | | 'value' => '',
|
| | | 'separator' => '',
|
| | | 'width' => '30',
|
| | | 'maxlength' => '255',
|
| | | 'rows' => '',
|
| | | 'cols' => ''
|
| | | ),
|
| | | 'mobile' => array (
|
| | | 'datatype' => 'VARCHAR',
|
| | | 'formtype' => 'TEXT',
|
| | | 'default' => '',
|
| | | 'value' => '',
|
| | | 'separator' => '',
|
| | | 'width' => '30',
|
| | | 'maxlength' => '255',
|
| | | 'rows' => '',
|
| | | 'cols' => ''
|
| | | ),
|
| | | 'fax' => array (
|
| | | 'datatype' => 'VARCHAR',
|
| | | 'formtype' => 'TEXT',
|
| | | 'default' => '',
|
| | | 'value' => '',
|
| | | 'separator' => '',
|
| | | 'width' => '30',
|
| | | 'maxlength' => '255',
|
| | | 'rows' => '',
|
| | | 'cols' => ''
|
| | | ),
|
| | | 'email' => array (
|
| | | 'datatype' => 'VARCHAR',
|
| | | 'formtype' => 'TEXT',
|
| | | 'default' => '',
|
| | | 'value' => '',
|
| | | 'separator' => '',
|
| | | 'width' => '30',
|
| | | 'maxlength' => '255',
|
| | | 'rows' => '',
|
| | | 'cols' => ''
|
| | | ),
|
| | | 'internet' => array (
|
| | | 'datatype' => 'VARCHAR',
|
| | | 'formtype' => 'TEXT',
|
| | | 'default' => 'http://',
|
| | | 'value' => '',
|
| | | 'separator' => '',
|
| | | 'width' => '30',
|
| | | 'maxlength' => '255',
|
| | | 'rows' => '',
|
| | | 'cols' => ''
|
| | | ),
|
| | | 'icq' => array (
|
| | | 'datatype' => 'VARCHAR',
|
| | | 'formtype' => 'TEXT',
|
| | | 'default' => '',
|
| | | 'value' => '',
|
| | | 'separator' => '',
|
| | | 'width' => '30',
|
| | | 'maxlength' => '255',
|
| | | 'rows' => '',
|
| | | 'cols' => ''
|
| | | ),
|
| | | 'notes' => array (
|
| | | 'datatype' => 'TEXT',
|
| | | 'formtype' => 'TEXTAREA',
|
| | | 'default' => '',
|
| | | 'value' => '',
|
| | | 'separator' => '',
|
| | | 'width' => '',
|
| | | 'maxlength' => '',
|
| | | 'rows' => '10',
|
| | | 'cols' => '30'
|
| | | ),
|
| | | ##################################
|
| | | # END Datatable fields
|
| | | ##################################
|
| | | )
|
| | | );
|
| | |
|
| | | $form["tabs"]['limits'] = array (
|
| | | 'title' => "Limits",
|
| | | 'width' => 80,
|
| | | 'template' => "templates/client_edit_limits.htm",
|
| | | 'fields' => array (
|
| | | ##################################
|
| | | # Begin Datatable fields
|
| | | ##################################
|
| | | 'template_master' => array (
|
| | | 'datatype' => 'INTEGER',
|
| | | 'formtype' => 'SELECT',
|
| | | 'default' => '1',
|
| | | 'datasource' => array ( 'type' => 'CUSTOM',
|
| | | 'class'=> 'custom_datasource',
|
| | | 'function'=> 'master_templates'
|
| | | ),
|
| | | 'value' => ''
|
| | | ),
|
| | | 'template_additional' => array (
|
| | | 'datatype' => 'VARCHAR',
|
| | | 'formtype' => 'TEXT',
|
| | | ),
|
| | | 'default_mailserver' => array (
|
| | | 'datatype' => 'INTEGER',
|
| | | 'formtype' => 'SELECT',
|
| | | 'default' => '1',
|
| | | 'datasource' => array ( 'type' => 'SQL',
|
| | | 'querystring' => 'SELECT server_id,server_name FROM server WHERE mail_server = 1 AND {AUTHSQL} ORDER BY server_name',
|
| | | 'keyfield'=> 'server_id',
|
| | | 'valuefield'=> 'server_name'
|
| | | ),
|
| | | 'value' => ''
|
| | | ),
|
| | | 'limit_maildomain' => array (
|
| | | 'datatype' => 'INTEGER',
|
| | | 'formtype' => 'TEXT',
|
| | | 'validators' => array ( 0 => array ( 'type' => 'ISINT',
|
| | | 'errmsg'=> 'limit_maildomain_error_notint'),
|
| | | ),
|
| | | 'default' => '-1',
|
| | | 'value' => '',
|
| | | 'separator' => '',
|
| | | 'width' => '10',
|
| | | 'maxlength' => '10',
|
| | | 'rows' => '',
|
| | | 'cols' => ''
|
| | | ),
|
| | | 'limit_mailbox' => array (
|
| | | 'datatype' => 'INTEGER',
|
| | | 'formtype' => 'TEXT',
|
| | | 'validators' => array ( 0 => array ( 'type' => 'ISINT',
|
| | | 'errmsg'=> 'limit_mailbox_error_notint'),
|
| | | ),
|
| | | 'default' => '-1',
|
| | | 'value' => '',
|
| | | 'separator' => '',
|
| | | 'width' => '10',
|
| | | 'maxlength' => '10',
|
| | | 'rows' => '',
|
| | | 'cols' => ''
|
| | | ),
|
| | | 'limit_mailalias' => array (
|
| | | 'datatype' => 'INTEGER',
|
| | | 'formtype' => 'TEXT',
|
| | | 'validators' => array ( 0 => array ( 'type' => 'ISINT',
|
| | | 'errmsg'=> 'limit_mailalias_error_notint'),
|
| | | ),
|
| | | 'default' => '-1',
|
| | | 'value' => '',
|
| | | 'separator' => '',
|
| | | 'width' => '10',
|
| | | 'maxlength' => '10',
|
| | | 'rows' => '',
|
| | | 'cols' => ''
|
| | | ),
|
| | | 'limit_mailforward' => array (
|
| | | 'datatype' => 'INTEGER',
|
| | | 'formtype' => 'TEXT',
|
| | | 'validators' => array ( 0 => array ( 'type' => 'ISINT',
|
| | | 'errmsg'=> 'limit_mailforward_error_notint'),
|
| | | ),
|
| | | 'default' => '-1',
|
| | | 'value' => '',
|
| | | 'separator' => '',
|
| | | 'width' => '10',
|
| | | 'maxlength' => '10',
|
| | | 'rows' => '',
|
| | | 'cols' => ''
|
| | | ),
|
| | | 'limit_mailcatchall' => array (
|
| | | 'datatype' => 'INTEGER',
|
| | | 'formtype' => 'TEXT',
|
| | | 'validators' => array ( 0 => array ( 'type' => 'ISINT',
|
| | | 'errmsg'=> 'limit_mailcatchall_error_notint'),
|
| | | ),
|
| | | 'default' => '-1',
|
| | | 'value' => '',
|
| | | 'separator' => '',
|
| | | 'width' => '10',
|
| | | 'maxlength' => '10',
|
| | | 'rows' => '',
|
| | | 'cols' => ''
|
| | | ),
|
| | | 'limit_mailrouting' => array (
|
| | | 'datatype' => 'INTEGER',
|
| | | 'formtype' => 'TEXT',
|
| | | 'validators' => array ( 0 => array ( 'type' => 'ISINT',
|
| | | 'errmsg'=> 'limit_mailrouting_error_notint'),
|
| | | ),
|
| | | 'default' => '0',
|
| | | 'value' => '',
|
| | | 'separator' => '',
|
| | | 'width' => '10',
|
| | | 'maxlength' => '10',
|
| | | 'rows' => '',
|
| | | 'cols' => ''
|
| | | ),
|
| | | 'limit_mailfilter' => array (
|
| | | 'datatype' => 'INTEGER',
|
| | | 'formtype' => 'TEXT',
|
| | | 'validators' => array ( 0 => array ( 'type' => 'ISINT',
|
| | | 'errmsg'=> 'limit_mailfilter_error_notint'),
|
| | | ),
|
| | | 'default' => '-1',
|
| | | 'value' => '',
|
| | | 'separator' => '',
|
| | | 'width' => '10',
|
| | | 'maxlength' => '10',
|
| | | 'rows' => '',
|
| | | 'cols' => ''
|
| | | ),
|
| | | 'limit_fetchmail' => array (
|
| | | 'datatype' => 'INTEGER',
|
| | | 'formtype' => 'TEXT',
|
| | | 'validators' => array ( 0 => array ( 'type' => 'ISINT',
|
| | | 'errmsg'=> 'limit_mailfetchmail_error_notint'),
|
| | | ),
|
| | | 'default' => '-1',
|
| | | 'value' => '',
|
| | | 'separator' => '',
|
| | | 'width' => '10',
|
| | | 'maxlength' => '10',
|
| | | 'rows' => '',
|
| | | 'cols' => ''
|
| | | ),
|
| | | 'limit_mailquota' => array (
|
| | | 'datatype' => 'INTEGER',
|
| | | 'formtype' => 'TEXT',
|
| | | 'validators' => array ( 0 => array ( 'type' => 'ISINT',
|
| | | 'errmsg'=> 'limit_mailquota_error_notint'),
|
| | | ),
|
| | | 'default' => '-1',
|
| | | 'value' => '',
|
| | | 'separator' => '',
|
| | | 'width' => '10',
|
| | | 'maxlength' => '10',
|
| | | 'rows' => '',
|
| | | 'cols' => ''
|
| | | ),
|
| | | 'limit_spamfilter_wblist' => array (
|
| | | 'datatype' => 'INTEGER',
|
| | | 'formtype' => 'TEXT',
|
| | | 'validators' => array ( 0 => array ( 'type' => 'ISINT',
|
| | | 'errmsg'=> 'limit_spamfilter_wblist_error_notint'),
|
| | | ),
|
| | | 'default' => '-1',
|
| | | 'value' => '',
|
| | | 'separator' => '',
|
| | | 'width' => '10',
|
| | | 'maxlength' => '10',
|
| | | 'rows' => '',
|
| | | 'cols' => ''
|
| | | ),
|
| | | 'limit_spamfilter_user' => array (
|
| | | 'datatype' => 'INTEGER',
|
| | | 'formtype' => 'TEXT',
|
| | | 'validators' => array ( 0 => array ( 'type' => 'ISINT',
|
| | | 'errmsg'=> 'limit_spamfilter_user_error_notint'),
|
| | | ),
|
| | | 'default' => '-1',
|
| | | 'value' => '',
|
| | | 'separator' => '',
|
| | | 'width' => '10',
|
| | | 'maxlength' => '10',
|
| | | 'rows' => '',
|
| | | 'cols' => ''
|
| | | ),
|
| | | 'limit_spamfilter_policy' => array (
|
| | | 'datatype' => 'INTEGER',
|
| | | 'formtype' => 'TEXT',
|
| | | 'validators' => array ( 0 => array ( 'type' => 'ISINT',
|
| | | 'errmsg'=> 'limit_spamfilter_policy_error_notint'),
|
| | | ),
|
| | | 'default' => '-1',
|
| | | 'value' => '',
|
| | | 'separator' => '',
|
| | | 'width' => '10',
|
| | | 'maxlength' => '10',
|
| | | 'rows' => '',
|
| | | 'cols' => ''
|
| | | ),
|
| | | 'default_webserver' => array (
|
| | | 'datatype' => 'INTEGER',
|
| | | 'formtype' => 'SELECT',
|
| | | 'default' => '1',
|
| | | 'datasource' => array ( 'type' => 'SQL',
|
| | | 'querystring' => 'SELECT server_id,server_name FROM server WHERE web_server = 1 AND {AUTHSQL} ORDER BY server_name',
|
| | | 'keyfield'=> 'server_id',
|
| | | 'valuefield'=> 'server_name'
|
| | | ),
|
| | | 'value' => ''
|
| | | ),
|
| | | 'limit_web_domain' => array (
|
| | | 'datatype' => 'INTEGER',
|
| | | 'formtype' => 'TEXT',
|
| | | 'validators' => array ( 0 => array ( 'type' => 'ISINT',
|
| | | 'errmsg'=> 'limit_web_domain_error_notint'),
|
| | | ),
|
| | | 'default' => '-1',
|
| | | 'value' => '',
|
| | | 'separator' => '',
|
| | | 'width' => '10',
|
| | | 'maxlength' => '10',
|
| | | 'rows' => '',
|
| | | 'cols' => ''
|
| | | ),
|
| | | 'web_php_options' => array (
|
| | | 'datatype' => 'VARCHAR',
|
| | | 'formtype' => 'CHECKBOXARRAY',
|
| | | 'default' => '',
|
| | | 'separator' => ',',
|
| | | 'value' => array('no' => 'Disabled', 'fast-cgi' => 'Fast-CGI', 'cgi' => 'CGI', 'mod' => 'Mod-PHP', 'suphp' => 'SuPHP')
|
| | | ),
|
| | | 'limit_web_aliasdomain' => array (
|
| | | 'datatype' => 'INTEGER',
|
| | | 'formtype' => 'TEXT',
|
| | | 'validators' => array ( 0 => array ( 'type' => 'ISINT',
|
| | | 'errmsg'=> 'limit_web_aliasdomain_error_notint'),
|
| | | ),
|
| | | 'default' => '-1',
|
| | | 'value' => '',
|
| | | 'separator' => '',
|
| | | 'width' => '10',
|
| | | 'maxlength' => '10',
|
| | | 'rows' => '',
|
| | | 'cols' => ''
|
| | | ),
|
| | | 'limit_web_subdomain' => array (
|
| | | 'datatype' => 'INTEGER',
|
| | | 'formtype' => 'TEXT',
|
| | | 'validators' => array ( 0 => array ( 'type' => 'ISINT',
|
| | | 'errmsg'=> 'limit_web_subdomain_error_notint'),
|
| | | ),
|
| | | 'default' => '-1',
|
| | | 'value' => '',
|
| | | 'separator' => '',
|
| | | 'width' => '10',
|
| | | 'maxlength' => '10',
|
| | | 'rows' => '',
|
| | | 'cols' => ''
|
| | | ),
|
| | | 'limit_ftp_user' => array (
|
| | | 'datatype' => 'INTEGER',
|
| | | 'formtype' => 'TEXT',
|
| | | 'validators' => array ( 0 => array ( 'type' => 'ISINT',
|
| | | 'errmsg'=> 'limit_ftp_user_error_notint'),
|
| | | ),
|
| | | 'default' => '-1',
|
| | | 'value' => '',
|
| | | 'separator' => '',
|
| | | 'width' => '10',
|
| | | 'maxlength' => '10',
|
| | | 'rows' => '',
|
| | | 'cols' => ''
|
| | | ),
|
| | | 'limit_shell_user' => array (
|
| | | 'datatype' => 'INTEGER',
|
| | | 'formtype' => 'TEXT',
|
| | | 'validators' => array ( 0 => array ( 'type' => 'ISINT',
|
| | | 'errmsg'=> 'limit_shell_user_error_notint'),
|
| | | ),
|
| | | 'default' => '-1',
|
| | | 'value' => '',
|
| | | 'separator' => '',
|
| | | 'width' => '10',
|
| | | 'maxlength' => '10',
|
| | | 'rows' => '',
|
| | | 'cols' => ''
|
| | | ),
|
| | | 'ssh_chroot' => array (
|
| | | 'datatype' => 'VARCHAR',
|
| | | 'formtype' => 'CHECKBOXARRAY',
|
| | | 'default' => '',
|
| | | 'separator' => ',',
|
| | | 'value' => array('no' => 'None', 'jailkit' => 'Jailkit')
|
| | | ),
|
| | | 'default_dnsserver' => array (
|
| | | 'datatype' => 'INTEGER',
|
| | | 'formtype' => 'SELECT',
|
| | | 'default' => '1',
|
| | | 'datasource' => array ( 'type' => 'SQL',
|
| | | 'querystring' => 'SELECT server_id,server_name FROM server WHERE dns_server = 1 AND {AUTHSQL} ORDER BY server_name',
|
| | | 'keyfield'=> 'server_id',
|
| | | 'valuefield'=> 'server_name'
|
| | | ),
|
| | | 'value' => ''
|
| | | ),
|
| | | 'limit_dns_zone' => array (
|
| | | 'datatype' => 'INTEGER',
|
| | | 'formtype' => 'TEXT',
|
| | | 'validators' => array ( 0 => array ( 'type' => 'ISINT',
|
| | | 'errmsg'=> 'limit_dns_zone_error_notint'),
|
| | | ),
|
| | | 'default' => '-1',
|
| | | 'value' => '',
|
| | | 'separator' => '',
|
| | | 'width' => '10',
|
| | | 'maxlength' => '10',
|
| | | 'rows' => '',
|
| | | 'cols' => ''
|
| | | ),
|
| | | 'limit_dns_record' => array (
|
| | | 'datatype' => 'INTEGER',
|
| | | 'formtype' => 'TEXT',
|
| | | 'validators' => array ( 0 => array ( 'type' => 'ISINT',
|
| | | 'errmsg'=> 'limit_dns_record_error_notint'),
|
| | | ),
|
| | | 'default' => '-1',
|
| | | 'value' => '',
|
| | | 'separator' => '',
|
| | | 'width' => '10',
|
| | | 'maxlength' => '10',
|
| | | 'rows' => '',
|
| | | 'cols' => ''
|
| | | ),
|
| | | 'limit_client' => array (
|
| | | 'datatype' => 'INTEGER',
|
| | | 'formtype' => 'TEXT',
|
| | | 'validators' => array ( 0 => array ( 'type' => 'ISINT',
|
| | | 'errmsg'=> 'limit_client_error_notint'),
|
| | | ),
|
| | | 'default' => '0',
|
| | | 'value' => '',
|
| | | 'separator' => '',
|
| | | 'width' => '10',
|
| | | 'maxlength' => '10',
|
| | | 'rows' => '',
|
| | | 'cols' => ''
|
| | | ),
|
| | | 'default_dbserver' => array (
|
| | | 'datatype' => 'INTEGER',
|
| | | 'formtype' => 'SELECT',
|
| | | 'default' => '1',
|
| | | 'datasource' => array ( 'type' => 'SQL',
|
| | | 'querystring' => 'SELECT server_id,server_name FROM server WHERE db_server = 1 AND {AUTHSQL} ORDER BY server_name',
|
| | | 'keyfield'=> 'server_id',
|
| | | 'valuefield'=> 'server_name'
|
| | | ),
|
| | | 'value' => ''
|
| | | ),
|
| | | 'limit_database' => array (
|
| | | 'datatype' => 'INTEGER',
|
| | | 'formtype' => 'TEXT',
|
| | | 'validators' => array ( 0 => array ( 'type' => 'ISINT',
|
| | | 'errmsg'=> 'limit_database_error_notint'),
|
| | | ),
|
| | | 'default' => '-1',
|
| | | 'value' => '',
|
| | | 'separator' => '',
|
| | | 'width' => '10',
|
| | | 'maxlength' => '10',
|
| | | 'rows' => '',
|
| | | 'cols' => ''
|
| | | ),
|
| | | ##################################
|
| | | # END Datatable fields
|
| | | ##################################
|
| | | )
|
| | | );
|
| | |
|
| | | /*
|
| | | $form["tabs"]['ipaddress'] = array (
|
| | | 'title' => "IP Addresses",
|
| | | 'width' => 100,
|
| | | 'template' => "templates/client_edit_ipaddress.htm",
|
| | | 'fields' => array (
|
| | | ##################################
|
| | | # Beginn Datatable fields
|
| | | ##################################
|
| | | 'ip_address' => array (
|
| | | 'datatype' => 'TEXT',
|
| | | 'formtype' => 'CHECKBOXARRAY',
|
| | | 'default' => '',
|
| | | 'value' => array('192.168.0.1' => '192.168.0.1', '192.168.0.2' => '192.168.0.2'),
|
| | | 'separator' => ';'
|
| | | ),
|
| | | ##################################
|
| | | # ENDE Datatable fields
|
| | | ##################################
|
| | | )
|
| | | );
|
| | | */
|
| | |
|
| | |
|
| | | <?php |
| | | |
| | | /* |
| | | Form Definition |
| | | |
| | | Tabledefinition |
| | | |
| | | Datatypes: |
| | | - INTEGER (Forces the input to Int) |
| | | - DOUBLE |
| | | - CURRENCY (Formats the values to currency notation) |
| | | - VARCHAR (no format check, maxlength: 255) |
| | | - TEXT (no format check) |
| | | - DATE (Dateformat, automatic conversion to timestamps) |
| | | |
| | | Formtype: |
| | | - TEXT (Textfield) |
| | | - TEXTAREA (Textarea) |
| | | - PASSWORD (Password textfield, input is not shown when edited) |
| | | - SELECT (Select option field) |
| | | - RADIO |
| | | - CHECKBOX |
| | | - CHECKBOXARRAY |
| | | - FILE |
| | | |
| | | VALUE: |
| | | - Wert oder Array |
| | | |
| | | Hint: |
| | | The ID field of the database table is not part of the datafield definition. |
| | | The ID field must be always auto incement (int or bigint). |
| | | |
| | | |
| | | */ |
| | | |
| | | $form["title"] = "Client"; |
| | | $form["description"] = ""; |
| | | $form["name"] = "client"; |
| | | $form["action"] = "client_edit.php"; |
| | | $form["db_table"] = "client"; |
| | | $form["db_table_idx"] = "client_id"; |
| | | $form["db_history"] = "yes"; |
| | | $form["tab_default"] = "address"; |
| | | $form["list_default"] = "client_list.php"; |
| | | $form["auth"] = 'yes'; |
| | | |
| | | $form["auth_preset"]["userid"] = 0; // 0 = id of the user, > 0 id must match with id of current user |
| | | $form["auth_preset"]["groupid"] = 0; // 0 = default groupid of the user, > 0 id must match with groupid of current user |
| | | $form["auth_preset"]["perm_user"] = 'riud'; //r = read, i = insert, u = update, d = delete |
| | | $form["auth_preset"]["perm_group"] = 'riud'; //r = read, i = insert, u = update, d = delete |
| | | $form["auth_preset"]["perm_other"] = ''; //r = read, i = insert, u = update, d = delete |
| | | |
| | | //* Languages |
| | | $language_list = array(); |
| | | $handle = @opendir(ISPC_ROOT_PATH.'/lib/lang'); |
| | | while ($file = @readdir ($handle)) { |
| | | if ($file != '.' && $file != '..') { |
| | | if(@is_file(ISPC_ROOT_PATH.'/lib/lang/'.$file) and substr($file,-4,4) == '.lng') { |
| | | $tmp = substr($file, 0, 2); |
| | | $language_list[$tmp] = $tmp; |
| | | } |
| | | } |
| | | } |
| | | |
| | | $form["tabs"]['address'] = array ( |
| | | 'title' => "Address", |
| | | 'width' => 100, |
| | | 'template' => "templates/client_edit_address.htm", |
| | | 'fields' => array ( |
| | | ################################## |
| | | # Begin Datatable fields |
| | | ################################## |
| | | 'company_name' => array ( |
| | | 'datatype' => 'VARCHAR', |
| | | 'formtype' => 'TEXT', |
| | | 'default' => '', |
| | | 'value' => '', |
| | | 'separator' => '', |
| | | 'width' => '30', |
| | | 'maxlength' => '255', |
| | | 'rows' => '', |
| | | 'cols' => '' |
| | | ), |
| | | 'contact_name' => array ( |
| | | 'datatype' => 'VARCHAR', |
| | | 'formtype' => 'TEXT', |
| | | 'validators' => array ( 0 => array ( 'type' => 'NOTEMPTY', |
| | | 'errmsg'=> 'contact_error_empty'), |
| | | ), |
| | | 'default' => '', |
| | | 'value' => '', |
| | | 'separator' => '', |
| | | 'width' => '30', |
| | | 'maxlength' => '255', |
| | | 'rows' => '', |
| | | 'cols' => '' |
| | | ), |
| | | 'username' => array ( |
| | | 'datatype' => 'VARCHAR', |
| | | 'formtype' => 'TEXT', |
| | | 'validators' => array ( 0 => array ( 'type' => 'NOTEMPTY', |
| | | 'errmsg'=> 'username_error_empty'), |
| | | 1 => array ( 'type' => 'CUSTOM', |
| | | 'class' => 'validate_client', |
| | | 'function' => 'username_unique', |
| | | 'errmsg'=> 'username_error_unique'), |
| | | 2 => array ( 'type' => 'REGEX', |
| | | 'regex' => '/^[\w\.\-\_]{0,64}$/', |
| | | 'errmsg'=> 'username_error_regex'), |
| | | ), |
| | | 'default' => '', |
| | | 'value' => '', |
| | | 'separator' => '', |
| | | 'width' => '30', |
| | | 'maxlength' => '255', |
| | | 'rows' => '', |
| | | 'cols' => '' |
| | | ), |
| | | 'password' => array ( |
| | | 'datatype' => 'VARCHAR', |
| | | 'formtype' => 'PASSWORD', |
| | | 'encryption'=> 'CRYPT', |
| | | 'default' => '', |
| | | 'value' => '', |
| | | 'separator' => '', |
| | | 'width' => '30', |
| | | 'maxlength' => '255', |
| | | 'rows' => '', |
| | | 'cols' => '' |
| | | ), |
| | | 'language' => array ( |
| | | 'datatype' => 'VARCHAR', |
| | | 'formtype' => 'SELECT', |
| | | 'default' => $conf["language"], |
| | | 'value' => $language_list, |
| | | 'separator' => '', |
| | | 'width' => '30', |
| | | 'maxlength' => '255', |
| | | 'rows' => '', |
| | | 'cols' => '' |
| | | ), |
| | | 'usertheme' => array ( |
| | | 'datatype' => 'VARCHAR', |
| | | 'formtype' => 'SELECT', |
| | | 'default' => 'default', |
| | | 'value' => array('default' => 'default'), |
| | | 'separator' => '', |
| | | 'width' => '30', |
| | | 'maxlength' => '255', |
| | | 'rows' => '', |
| | | 'cols' => '' |
| | | ), |
| | | 'street' => array ( |
| | | 'datatype' => 'VARCHAR', |
| | | 'formtype' => 'TEXT', |
| | | 'default' => '', |
| | | 'value' => '', |
| | | 'separator' => '', |
| | | 'width' => '30', |
| | | 'maxlength' => '255', |
| | | 'rows' => '', |
| | | 'cols' => '' |
| | | ), |
| | | 'zip' => array ( |
| | | 'datatype' => 'VARCHAR', |
| | | 'formtype' => 'TEXT', |
| | | 'default' => '', |
| | | 'value' => '', |
| | | 'separator' => '', |
| | | 'width' => '10', |
| | | 'maxlength' => '255', |
| | | 'rows' => '', |
| | | 'cols' => '' |
| | | ), |
| | | 'city' => array ( |
| | | 'datatype' => 'VARCHAR', |
| | | 'formtype' => 'TEXT', |
| | | 'default' => '', |
| | | 'value' => '', |
| | | 'separator' => '', |
| | | 'width' => '30', |
| | | 'maxlength' => '255', |
| | | 'rows' => '', |
| | | 'cols' => '' |
| | | ), |
| | | 'state' => array ( |
| | | 'datatype' => 'VARCHAR', |
| | | 'formtype' => 'TEXT', |
| | | 'default' => '', |
| | | 'value' => '', |
| | | 'separator' => '', |
| | | 'width' => '30', |
| | | 'maxlength' => '255', |
| | | 'rows' => '', |
| | | 'cols' => '' |
| | | ), |
| | | 'country' => array ( |
| | | 'datatype' => 'VARCHAR', |
| | | |
| | | 'formtype' => 'SELECT', |
| | | 'default' => 'DE', |
| | | 'datasource' => array ( 'type' => 'SQL', |
| | | 'querystring' => 'SELECT iso,printable_name FROM country ORDER BY printable_name', |
| | | 'keyfield'=> 'iso', |
| | | 'valuefield'=> 'printable_name' |
| | | ), |
| | | 'value' => '' |
| | | ), |
| | | 'telephone' => array ( |
| | | 'datatype' => 'VARCHAR', |
| | | 'formtype' => 'TEXT', |
| | | 'default' => '', |
| | | 'value' => '', |
| | | 'separator' => '', |
| | | 'width' => '30', |
| | | 'maxlength' => '255', |
| | | 'rows' => '', |
| | | 'cols' => '' |
| | | ), |
| | | 'mobile' => array ( |
| | | 'datatype' => 'VARCHAR', |
| | | 'formtype' => 'TEXT', |
| | | 'default' => '', |
| | | 'value' => '', |
| | | 'separator' => '', |
| | | 'width' => '30', |
| | | 'maxlength' => '255', |
| | | 'rows' => '', |
| | | 'cols' => '' |
| | | ), |
| | | 'fax' => array ( |
| | | 'datatype' => 'VARCHAR', |
| | | 'formtype' => 'TEXT', |
| | | 'default' => '', |
| | | 'value' => '', |
| | | 'separator' => '', |
| | | 'width' => '30', |
| | | 'maxlength' => '255', |
| | | 'rows' => '', |
| | | 'cols' => '' |
| | | ), |
| | | 'email' => array ( |
| | | 'datatype' => 'VARCHAR', |
| | | 'formtype' => 'TEXT', |
| | | 'default' => '', |
| | | 'value' => '', |
| | | 'separator' => '', |
| | | 'width' => '30', |
| | | 'maxlength' => '255', |
| | | 'rows' => '', |
| | | 'cols' => '' |
| | | ), |
| | | 'internet' => array ( |
| | | 'datatype' => 'VARCHAR', |
| | | 'formtype' => 'TEXT', |
| | | 'default' => 'http://', |
| | | 'value' => '', |
| | | 'separator' => '', |
| | | 'width' => '30', |
| | | 'maxlength' => '255', |
| | | 'rows' => '', |
| | | 'cols' => '' |
| | | ), |
| | | 'icq' => array ( |
| | | 'datatype' => 'VARCHAR', |
| | | 'formtype' => 'TEXT', |
| | | 'default' => '', |
| | | 'value' => '', |
| | | 'separator' => '', |
| | | 'width' => '30', |
| | | 'maxlength' => '255', |
| | | 'rows' => '', |
| | | 'cols' => '' |
| | | ), |
| | | 'notes' => array ( |
| | | 'datatype' => 'TEXT', |
| | | 'formtype' => 'TEXTAREA', |
| | | 'default' => '', |
| | | 'value' => '', |
| | | 'separator' => '', |
| | | 'width' => '', |
| | | 'maxlength' => '', |
| | | 'rows' => '10', |
| | | 'cols' => '30' |
| | | ), |
| | | ################################## |
| | | # END Datatable fields |
| | | ################################## |
| | | ) |
| | | ); |
| | | |
| | | $form["tabs"]['limits'] = array ( |
| | | 'title' => "Limits", |
| | | 'width' => 80, |
| | | 'template' => "templates/client_edit_limits.htm", |
| | | 'fields' => array ( |
| | | ################################## |
| | | # Begin Datatable fields |
| | | ################################## |
| | | 'template_master' => array ( |
| | | 'datatype' => 'INTEGER', |
| | | 'formtype' => 'SELECT', |
| | | 'default' => '1', |
| | | 'datasource' => array ( 'type' => 'CUSTOM', |
| | | 'class'=> 'custom_datasource', |
| | | 'function'=> 'master_templates' |
| | | ), |
| | | 'value' => '' |
| | | ), |
| | | 'template_additional' => array ( |
| | | 'datatype' => 'VARCHAR', |
| | | 'formtype' => 'TEXT', |
| | | ), |
| | | 'default_mailserver' => array ( |
| | | 'datatype' => 'INTEGER', |
| | | 'formtype' => 'SELECT', |
| | | 'default' => '1', |
| | | 'datasource' => array ( 'type' => 'CUSTOM', |
| | | 'class'=> 'custom_datasource', |
| | | 'function'=> 'client_servers' |
| | | ), |
| | | 'value' => '', |
| | | 'name' => 'default_mailserver' |
| | | ), |
| | | 'limit_maildomain' => array ( |
| | | 'datatype' => 'INTEGER', |
| | | 'formtype' => 'TEXT', |
| | | 'validators' => array ( 0 => array ( 'type' => 'ISINT', |
| | | 'errmsg'=> 'limit_maildomain_error_notint'), |
| | | ), |
| | | 'default' => '-1', |
| | | 'value' => '', |
| | | 'separator' => '', |
| | | 'width' => '10', |
| | | 'maxlength' => '10', |
| | | 'rows' => '', |
| | | 'cols' => '' |
| | | ), |
| | | 'limit_mailbox' => array ( |
| | | 'datatype' => 'INTEGER', |
| | | 'formtype' => 'TEXT', |
| | | 'validators' => array ( 0 => array ( 'type' => 'ISINT', |
| | | 'errmsg'=> 'limit_mailbox_error_notint'), |
| | | ), |
| | | 'default' => '-1', |
| | | 'value' => '', |
| | | 'separator' => '', |
| | | 'width' => '10', |
| | | 'maxlength' => '10', |
| | | 'rows' => '', |
| | | 'cols' => '' |
| | | ), |
| | | 'limit_mailalias' => array ( |
| | | 'datatype' => 'INTEGER', |
| | | 'formtype' => 'TEXT', |
| | | 'validators' => array ( 0 => array ( 'type' => 'ISINT', |
| | | 'errmsg'=> 'limit_mailalias_error_notint'), |
| | | ), |
| | | 'default' => '-1', |
| | | 'value' => '', |
| | | 'separator' => '', |
| | | 'width' => '10', |
| | | 'maxlength' => '10', |
| | | 'rows' => '', |
| | | 'cols' => '' |
| | | ), |
| | | 'limit_mailforward' => array ( |
| | | 'datatype' => 'INTEGER', |
| | | 'formtype' => 'TEXT', |
| | | 'validators' => array ( 0 => array ( 'type' => 'ISINT', |
| | | 'errmsg'=> 'limit_mailforward_error_notint'), |
| | | ), |
| | | 'default' => '-1', |
| | | 'value' => '', |
| | | 'separator' => '', |
| | | 'width' => '10', |
| | | 'maxlength' => '10', |
| | | 'rows' => '', |
| | | 'cols' => '' |
| | | ), |
| | | 'limit_mailcatchall' => array ( |
| | | 'datatype' => 'INTEGER', |
| | | 'formtype' => 'TEXT', |
| | | 'validators' => array ( 0 => array ( 'type' => 'ISINT', |
| | | 'errmsg'=> 'limit_mailcatchall_error_notint'), |
| | | ), |
| | | 'default' => '-1', |
| | | 'value' => '', |
| | | 'separator' => '', |
| | | 'width' => '10', |
| | | 'maxlength' => '10', |
| | | 'rows' => '', |
| | | 'cols' => '' |
| | | ), |
| | | 'limit_mailrouting' => array ( |
| | | 'datatype' => 'INTEGER', |
| | | 'formtype' => 'TEXT', |
| | | 'validators' => array ( 0 => array ( 'type' => 'ISINT', |
| | | 'errmsg'=> 'limit_mailrouting_error_notint'), |
| | | ), |
| | | 'default' => '0', |
| | | 'value' => '', |
| | | 'separator' => '', |
| | | 'width' => '10', |
| | | 'maxlength' => '10', |
| | | 'rows' => '', |
| | | 'cols' => '' |
| | | ), |
| | | 'limit_mailfilter' => array ( |
| | | 'datatype' => 'INTEGER', |
| | | 'formtype' => 'TEXT', |
| | | 'validators' => array ( 0 => array ( 'type' => 'ISINT', |
| | | 'errmsg'=> 'limit_mailfilter_error_notint'), |
| | | ), |
| | | 'default' => '-1', |
| | | 'value' => '', |
| | | 'separator' => '', |
| | | 'width' => '10', |
| | | 'maxlength' => '10', |
| | | 'rows' => '', |
| | | 'cols' => '' |
| | | ), |
| | | 'limit_fetchmail' => array ( |
| | | 'datatype' => 'INTEGER', |
| | | 'formtype' => 'TEXT', |
| | | 'validators' => array ( 0 => array ( 'type' => 'ISINT', |
| | | 'errmsg'=> 'limit_mailfetchmail_error_notint'), |
| | | ), |
| | | 'default' => '-1', |
| | | 'value' => '', |
| | | 'separator' => '', |
| | | 'width' => '10', |
| | | 'maxlength' => '10', |
| | | 'rows' => '', |
| | | 'cols' => '' |
| | | ), |
| | | 'limit_mailquota' => array ( |
| | | 'datatype' => 'INTEGER', |
| | | 'formtype' => 'TEXT', |
| | | 'validators' => array ( 0 => array ( 'type' => 'ISINT', |
| | | 'errmsg'=> 'limit_mailquota_error_notint'), |
| | | ), |
| | | 'default' => '-1', |
| | | 'value' => '', |
| | | 'separator' => '', |
| | | 'width' => '10', |
| | | 'maxlength' => '10', |
| | | 'rows' => '', |
| | | 'cols' => '' |
| | | ), |
| | | 'limit_spamfilter_wblist' => array ( |
| | | 'datatype' => 'INTEGER', |
| | | 'formtype' => 'TEXT', |
| | | 'validators' => array ( 0 => array ( 'type' => 'ISINT', |
| | | 'errmsg'=> 'limit_spamfilter_wblist_error_notint'), |
| | | ), |
| | | 'default' => '-1', |
| | | 'value' => '', |
| | | 'separator' => '', |
| | | 'width' => '10', |
| | | 'maxlength' => '10', |
| | | 'rows' => '', |
| | | 'cols' => '' |
| | | ), |
| | | 'limit_spamfilter_user' => array ( |
| | | 'datatype' => 'INTEGER', |
| | | 'formtype' => 'TEXT', |
| | | 'validators' => array ( 0 => array ( 'type' => 'ISINT', |
| | | 'errmsg'=> 'limit_spamfilter_user_error_notint'), |
| | | ), |
| | | 'default' => '-1', |
| | | 'value' => '', |
| | | 'separator' => '', |
| | | 'width' => '10', |
| | | 'maxlength' => '10', |
| | | 'rows' => '', |
| | | 'cols' => '' |
| | | ), |
| | | 'limit_spamfilter_policy' => array ( |
| | | 'datatype' => 'INTEGER', |
| | | 'formtype' => 'TEXT', |
| | | 'validators' => array ( 0 => array ( 'type' => 'ISINT', |
| | | 'errmsg'=> 'limit_spamfilter_policy_error_notint'), |
| | | ), |
| | | 'default' => '-1', |
| | | 'value' => '', |
| | | 'separator' => '', |
| | | 'width' => '10', |
| | | 'maxlength' => '10', |
| | | 'rows' => '', |
| | | 'cols' => '' |
| | | ), |
| | | 'default_webserver' => array ( |
| | | 'datatype' => 'INTEGER', |
| | | 'formtype' => 'SELECT', |
| | | 'default' => '1', |
| | | 'datasource' => array ( 'type' => 'CUSTOM', |
| | | 'class'=> 'custom_datasource', |
| | | 'function'=> 'client_servers' |
| | | ), |
| | | 'value' => '', |
| | | 'name' => 'default_webserver' |
| | | ), |
| | | 'limit_web_domain' => array ( |
| | | 'datatype' => 'INTEGER', |
| | | 'formtype' => 'TEXT', |
| | | 'validators' => array ( 0 => array ( 'type' => 'ISINT', |
| | | 'errmsg'=> 'limit_web_domain_error_notint'), |
| | | ), |
| | | 'default' => '-1', |
| | | 'value' => '', |
| | | 'separator' => '', |
| | | 'width' => '10', |
| | | 'maxlength' => '10', |
| | | 'rows' => '', |
| | | 'cols' => '' |
| | | ), |
| | | 'web_php_options' => array ( |
| | | 'datatype' => 'VARCHAR', |
| | | 'formtype' => 'CHECKBOXARRAY', |
| | | 'default' => '', |
| | | 'separator' => ',', |
| | | 'valuelimit' => 'client:web_php_options', |
| | | 'value' => array('no' => 'Disabled', 'fast-cgi' => 'Fast-CGI', 'cgi' => 'CGI', 'mod' => 'Mod-PHP', 'suphp' => 'SuPHP') |
| | | ), |
| | | 'limit_web_aliasdomain' => array ( |
| | | 'datatype' => 'INTEGER', |
| | | 'formtype' => 'TEXT', |
| | | 'validators' => array ( 0 => array ( 'type' => 'ISINT', |
| | | 'errmsg'=> 'limit_web_aliasdomain_error_notint'), |
| | | ), |
| | | 'default' => '-1', |
| | | 'value' => '', |
| | | 'separator' => '', |
| | | 'width' => '10', |
| | | 'maxlength' => '10', |
| | | 'rows' => '', |
| | | 'cols' => '' |
| | | ), |
| | | 'limit_web_subdomain' => array ( |
| | | 'datatype' => 'INTEGER', |
| | | 'formtype' => 'TEXT', |
| | | 'validators' => array ( 0 => array ( 'type' => 'ISINT', |
| | | 'errmsg'=> 'limit_web_subdomain_error_notint'), |
| | | ), |
| | | 'default' => '-1', |
| | | 'value' => '', |
| | | 'separator' => '', |
| | | 'width' => '10', |
| | | 'maxlength' => '10', |
| | | 'rows' => '', |
| | | 'cols' => '' |
| | | ), |
| | | 'limit_ftp_user' => array ( |
| | | 'datatype' => 'INTEGER', |
| | | 'formtype' => 'TEXT', |
| | | 'validators' => array ( 0 => array ( 'type' => 'ISINT', |
| | | 'errmsg'=> 'limit_ftp_user_error_notint'), |
| | | ), |
| | | 'default' => '-1', |
| | | 'value' => '', |
| | | 'separator' => '', |
| | | 'width' => '10', |
| | | 'maxlength' => '10', |
| | | 'rows' => '', |
| | | 'cols' => '' |
| | | ), |
| | | 'limit_shell_user' => array ( |
| | | 'datatype' => 'INTEGER', |
| | | 'formtype' => 'TEXT', |
| | | 'validators' => array ( 0 => array ( 'type' => 'ISINT', |
| | | 'errmsg'=> 'limit_shell_user_error_notint'), |
| | | ), |
| | | 'default' => '-1', |
| | | 'value' => '', |
| | | 'separator' => '', |
| | | 'width' => '10', |
| | | 'maxlength' => '10', |
| | | 'rows' => '', |
| | | 'cols' => '' |
| | | ), |
| | | 'ssh_chroot' => array ( |
| | | 'datatype' => 'VARCHAR', |
| | | 'formtype' => 'CHECKBOXARRAY', |
| | | 'default' => '', |
| | | 'separator' => ',', |
| | | 'valuelimit' => 'client:ssh_chroot', |
| | | 'value' => array('no' => 'None', 'jailkit' => 'Jailkit') |
| | | ), |
| | | 'default_dnsserver' => array ( |
| | | 'datatype' => 'INTEGER', |
| | | 'formtype' => 'SELECT', |
| | | 'default' => '1', |
| | | 'datasource' => array ( 'type' => 'CUSTOM', |
| | | 'class'=> 'custom_datasource', |
| | | 'function'=> 'client_servers' |
| | | ), |
| | | 'value' => '', |
| | | 'name' => 'default_dnsserver' |
| | | ), |
| | | 'limit_dns_zone' => array ( |
| | | 'datatype' => 'INTEGER', |
| | | 'formtype' => 'TEXT', |
| | | 'validators' => array ( 0 => array ( 'type' => 'ISINT', |
| | | 'errmsg'=> 'limit_dns_zone_error_notint'), |
| | | ), |
| | | 'default' => '-1', |
| | | 'value' => '', |
| | | 'separator' => '', |
| | | 'width' => '10', |
| | | 'maxlength' => '10', |
| | | 'rows' => '', |
| | | 'cols' => '' |
| | | ), |
| | | 'limit_dns_record' => array ( |
| | | 'datatype' => 'INTEGER', |
| | | 'formtype' => 'TEXT', |
| | | 'validators' => array ( 0 => array ( 'type' => 'ISINT', |
| | | 'errmsg'=> 'limit_dns_record_error_notint'), |
| | | ), |
| | | 'default' => '-1', |
| | | 'value' => '', |
| | | 'separator' => '', |
| | | 'width' => '10', |
| | | 'maxlength' => '10', |
| | | 'rows' => '', |
| | | 'cols' => '' |
| | | ), |
| | | 'limit_client' => array ( |
| | | 'datatype' => 'INTEGER', |
| | | 'formtype' => 'TEXT', |
| | | 'validators' => array ( 0 => array ( 'type' => 'ISINT', |
| | | 'errmsg'=> 'limit_client_error_notint'), |
| | | ), |
| | | 'default' => '0', |
| | | 'value' => '', |
| | | 'separator' => '', |
| | | 'width' => '10', |
| | | 'maxlength' => '10', |
| | | 'rows' => '', |
| | | 'cols' => '' |
| | | ), |
| | | 'default_dbserver' => array ( |
| | | 'datatype' => 'INTEGER', |
| | | 'formtype' => 'SELECT', |
| | | 'default' => '1', |
| | | 'datasource' => array ( 'type' => 'CUSTOM', |
| | | 'class'=> 'custom_datasource', |
| | | 'function'=> 'client_servers' |
| | | ), |
| | | 'value' => '', |
| | | 'name' => 'default_dbserver' |
| | | ), |
| | | 'limit_database' => array ( |
| | | 'datatype' => 'INTEGER', |
| | | 'formtype' => 'TEXT', |
| | | 'validators' => array ( 0 => array ( 'type' => 'ISINT', |
| | | 'errmsg'=> 'limit_database_error_notint'), |
| | | ), |
| | | 'default' => '-1', |
| | | 'value' => '', |
| | | 'separator' => '', |
| | | 'width' => '10', |
| | | 'maxlength' => '10', |
| | | 'rows' => '', |
| | | 'cols' => '' |
| | | ), |
| | | 'limit_cron' => array ( |
| | | 'datatype' => 'INTEGER', |
| | | 'formtype' => 'TEXT', |
| | | 'validators' => array ( 0 => array ( 'type' => 'ISINT', |
| | | 'errmsg'=> 'limit_cron_error_notint'), |
| | | ), |
| | | 'default' => '0', |
| | | 'value' => '', |
| | | 'separator' => '', |
| | | 'width' => '10', |
| | | 'maxlength' => '10', |
| | | 'rows' => '', |
| | | 'cols' => '' |
| | | ), |
| | | 'limit_cron_type' => array ( |
| | | 'datatype' => 'VARCHAR', |
| | | 'formtype' => 'SELECT', |
| | | 'default' => '', |
| | | 'value' => array('full' => 'Full Cron','chrooted' => 'Chrooted Cron','url' => 'URL Cron') |
| | | ), |
| | | 'limit_cron_frequency' => array ( |
| | | 'datatype' => 'INTEGER', |
| | | 'formtype' => 'TEXT', |
| | | 'validators' => array ( 0 => array ( 'type' => 'ISINT', |
| | | 'errmsg'=> 'limit_cron_error_frequency'), |
| | | ), |
| | | 'default' => '-1', |
| | | 'value' => '', |
| | | 'separator' => '', |
| | | 'width' => '10', |
| | | 'maxlength' => '10', |
| | | 'rows' => '', |
| | | 'cols' => '' |
| | | ), |
| | | ################################## |
| | | # END Datatable fields |
| | | ################################## |
| | | ) |
| | | ); |
| | | |
| | | /* |
| | | $form["tabs"]['ipaddress'] = array ( |
| | | 'title' => "IP Addresses", |
| | | 'width' => 100, |
| | | 'template' => "templates/client_edit_ipaddress.htm", |
| | | 'fields' => array ( |
| | | ################################## |
| | | # Beginn Datatable fields |
| | | ################################## |
| | | 'ip_address' => array ( |
| | | 'datatype' => 'TEXT', |
| | | 'formtype' => 'CHECKBOXARRAY', |
| | | 'default' => '', |
| | | 'value' => array('192.168.0.1' => '192.168.0.1', '192.168.0.2' => '192.168.0.2'), |
| | | 'separator' => ';' |
| | | ), |
| | | ################################## |
| | | # ENDE Datatable fields |
| | | ################################## |
| | | ) |
| | | ); |
| | | */ |
| | | |
| | | |
| | | ?> |
| | |
| | | 'rows' => '', |
| | | 'cols' => '' |
| | | ), |
| | | /* |
| | | 'limit_client' => array ( |
| | | 'datatype' => 'INTEGER', |
| | | 'formtype' => 'TEXT', |
| | |
| | | 'rows' => '', |
| | | 'cols' => '' |
| | | ), |
| | | */ |
| | | 'limit_database' => array ( |
| | | 'datatype' => 'INTEGER', |
| | | 'formtype' => 'TEXT', |
| | |
| | | 'rows' => '', |
| | | 'cols' => '' |
| | | ), |
| | | 'limit_cron' => array ( |
| | | 'datatype' => 'INTEGER', |
| | | 'formtype' => 'TEXT', |
| | | 'validators' => array ( 0 => array ( 'type' => 'ISINT', |
| | | 'errmsg'=> 'limit_cron_error_notint'), |
| | | ), |
| | | 'default' => '0', |
| | | 'value' => '', |
| | | 'separator' => '', |
| | | 'width' => '10', |
| | | 'maxlength' => '10', |
| | | 'rows' => '', |
| | | 'cols' => '' |
| | | ), |
| | | 'limit_cron_type' => array ( |
| | | 'datatype' => 'VARCHAR', |
| | | 'formtype' => 'SELECT', |
| | | 'default' => '', |
| | | 'value' => array('full' => 'Full Cron','chrooted' => 'Chrooted Cron','url' => 'URL Cron') |
| | | ), |
| | | 'limit_cron_frequency' => array ( |
| | | 'datatype' => 'INTEGER', |
| | | 'formtype' => 'TEXT', |
| | | 'validators' => array ( 0 => array ( 'type' => 'ISINT', |
| | | 'errmsg'=> 'limit_cron_error_frequency'), |
| | | ), |
| | | 'default' => '-1', |
| | | 'value' => '', |
| | | 'separator' => '', |
| | | 'width' => '10', |
| | | 'maxlength' => '10', |
| | | 'rows' => '', |
| | | 'cols' => '' |
| | | ), |
| | | ################################## |
| | | # END Datatable fields |
| | | ################################## |
New file |
| | |
| | | <?php |
| | | |
| | | /* |
| | | Form Definition |
| | | |
| | | Tabledefinition |
| | | |
| | | Datatypes: |
| | | - INTEGER (Forces the input to Int) |
| | | - DOUBLE |
| | | - CURRENCY (Formats the values to currency notation) |
| | | - VARCHAR (no format check, maxlength: 255) |
| | | - TEXT (no format check) |
| | | - DATE (Dateformat, automatic conversion to timestamps) |
| | | |
| | | Formtype: |
| | | - TEXT (Textfield) |
| | | - TEXTAREA (Textarea) |
| | | - PASSWORD (Password textfield, input is not shown when edited) |
| | | - SELECT (Select option field) |
| | | - RADIO |
| | | - CHECKBOX |
| | | - CHECKBOXARRAY |
| | | - FILE |
| | | |
| | | VALUE: |
| | | - Wert oder Array |
| | | |
| | | Hint: |
| | | The ID field of the database table is not part of the datafield definition. |
| | | The ID field must be always auto incement (int or bigint). |
| | | |
| | | |
| | | */ |
| | | |
| | | $form["title"] = "Reseller"; |
| | | $form["description"] = ""; |
| | | $form["name"] = "reseller"; |
| | | $form["action"] = "reseller_edit.php"; |
| | | $form["db_table"] = "client"; |
| | | $form["db_table_idx"] = "client_id"; |
| | | $form["db_history"] = "yes"; |
| | | $form["tab_default"] = "address"; |
| | | $form["list_default"] = "reseller_list.php"; |
| | | $form["auth"] = 'yes'; |
| | | |
| | | $form["auth_preset"]["userid"] = 0; // 0 = id of the user, > 0 id must match with id of current user |
| | | $form["auth_preset"]["groupid"] = 0; // 0 = default groupid of the user, > 0 id must match with groupid of current user |
| | | $form["auth_preset"]["perm_user"] = 'riud'; //r = read, i = insert, u = update, d = delete |
| | | $form["auth_preset"]["perm_group"] = 'riud'; //r = read, i = insert, u = update, d = delete |
| | | $form["auth_preset"]["perm_other"] = ''; //r = read, i = insert, u = update, d = delete |
| | | |
| | | //* Languages |
| | | $language_list = array(); |
| | | $handle = @opendir(ISPC_ROOT_PATH.'/lib/lang'); |
| | | while ($file = @readdir ($handle)) { |
| | | if ($file != '.' && $file != '..') { |
| | | if(@is_file(ISPC_ROOT_PATH.'/lib/lang/'.$file) and substr($file,-4,4) == '.lng') { |
| | | $tmp = substr($file, 0, 2); |
| | | $language_list[$tmp] = $tmp; |
| | | } |
| | | } |
| | | } |
| | | |
| | | $form["tabs"]['address'] = array ( |
| | | 'title' => "Address", |
| | | 'width' => 100, |
| | | 'template' => "templates/reseller_edit_address.htm", |
| | | 'fields' => array ( |
| | | ################################## |
| | | # Begin Datatable fields |
| | | ################################## |
| | | 'company_name' => array ( |
| | | 'datatype' => 'VARCHAR', |
| | | 'formtype' => 'TEXT', |
| | | 'default' => '', |
| | | 'value' => '', |
| | | 'separator' => '', |
| | | 'width' => '30', |
| | | 'maxlength' => '255', |
| | | 'rows' => '', |
| | | 'cols' => '' |
| | | ), |
| | | 'contact_name' => array ( |
| | | 'datatype' => 'VARCHAR', |
| | | 'formtype' => 'TEXT', |
| | | 'validators' => array ( 0 => array ( 'type' => 'NOTEMPTY', |
| | | 'errmsg'=> 'contact_error_empty'), |
| | | ), |
| | | 'default' => '', |
| | | 'value' => '', |
| | | 'separator' => '', |
| | | 'width' => '30', |
| | | 'maxlength' => '255', |
| | | 'rows' => '', |
| | | 'cols' => '' |
| | | ), |
| | | 'username' => array ( |
| | | 'datatype' => 'VARCHAR', |
| | | 'formtype' => 'TEXT', |
| | | 'validators' => array ( 0 => array ( 'type' => 'NOTEMPTY', |
| | | 'errmsg'=> 'username_error_empty'), |
| | | 1 => array ( 'type' => 'CUSTOM', |
| | | 'class' => 'validate_client', |
| | | 'function' => 'username_unique', |
| | | 'errmsg'=> 'username_error_unique'), |
| | | 2 => array ( 'type' => 'REGEX', |
| | | 'regex' => '/^[\w\.\-\_]{0,64}$/', |
| | | 'errmsg'=> 'username_error_regex'), |
| | | ), |
| | | 'default' => '', |
| | | 'value' => '', |
| | | 'separator' => '', |
| | | 'width' => '30', |
| | | 'maxlength' => '255', |
| | | 'rows' => '', |
| | | 'cols' => '' |
| | | ), |
| | | 'password' => array ( |
| | | 'datatype' => 'VARCHAR', |
| | | 'formtype' => 'PASSWORD', |
| | | 'encryption'=> 'CRYPT', |
| | | 'default' => '', |
| | | 'value' => '', |
| | | 'separator' => '', |
| | | 'width' => '30', |
| | | 'maxlength' => '255', |
| | | 'rows' => '', |
| | | 'cols' => '' |
| | | ), |
| | | 'language' => array ( |
| | | 'datatype' => 'VARCHAR', |
| | | 'formtype' => 'SELECT', |
| | | 'default' => $conf["language"], |
| | | 'value' => $language_list, |
| | | 'separator' => '', |
| | | 'width' => '30', |
| | | 'maxlength' => '255', |
| | | 'rows' => '', |
| | | 'cols' => '' |
| | | ), |
| | | 'usertheme' => array ( |
| | | 'datatype' => 'VARCHAR', |
| | | 'formtype' => 'SELECT', |
| | | 'default' => 'default', |
| | | 'value' => array('default' => 'default'), |
| | | 'separator' => '', |
| | | 'width' => '30', |
| | | 'maxlength' => '255', |
| | | 'rows' => '', |
| | | 'cols' => '' |
| | | ), |
| | | 'street' => array ( |
| | | 'datatype' => 'VARCHAR', |
| | | 'formtype' => 'TEXT', |
| | | 'default' => '', |
| | | 'value' => '', |
| | | 'separator' => '', |
| | | 'width' => '30', |
| | | 'maxlength' => '255', |
| | | 'rows' => '', |
| | | 'cols' => '' |
| | | ), |
| | | 'zip' => array ( |
| | | 'datatype' => 'VARCHAR', |
| | | 'formtype' => 'TEXT', |
| | | 'default' => '', |
| | | 'value' => '', |
| | | 'separator' => '', |
| | | 'width' => '10', |
| | | 'maxlength' => '255', |
| | | 'rows' => '', |
| | | 'cols' => '' |
| | | ), |
| | | 'city' => array ( |
| | | 'datatype' => 'VARCHAR', |
| | | 'formtype' => 'TEXT', |
| | | 'default' => '', |
| | | 'value' => '', |
| | | 'separator' => '', |
| | | 'width' => '30', |
| | | 'maxlength' => '255', |
| | | 'rows' => '', |
| | | 'cols' => '' |
| | | ), |
| | | 'state' => array ( |
| | | 'datatype' => 'VARCHAR', |
| | | 'formtype' => 'TEXT', |
| | | 'default' => '', |
| | | 'value' => '', |
| | | 'separator' => '', |
| | | 'width' => '30', |
| | | 'maxlength' => '255', |
| | | 'rows' => '', |
| | | 'cols' => '' |
| | | ), |
| | | 'country' => array ( |
| | | 'datatype' => 'VARCHAR', |
| | | |
| | | 'formtype' => 'SELECT', |
| | | 'default' => 'DE', |
| | | 'datasource' => array ( 'type' => 'SQL', |
| | | 'querystring' => 'SELECT iso,printable_name FROM country ORDER BY printable_name', |
| | | 'keyfield'=> 'iso', |
| | | 'valuefield'=> 'printable_name' |
| | | ), |
| | | 'value' => '' |
| | | ), |
| | | 'telephone' => array ( |
| | | 'datatype' => 'VARCHAR', |
| | | 'formtype' => 'TEXT', |
| | | 'default' => '', |
| | | 'value' => '', |
| | | 'separator' => '', |
| | | 'width' => '30', |
| | | 'maxlength' => '255', |
| | | 'rows' => '', |
| | | 'cols' => '' |
| | | ), |
| | | 'mobile' => array ( |
| | | 'datatype' => 'VARCHAR', |
| | | 'formtype' => 'TEXT', |
| | | 'default' => '', |
| | | 'value' => '', |
| | | 'separator' => '', |
| | | 'width' => '30', |
| | | 'maxlength' => '255', |
| | | 'rows' => '', |
| | | 'cols' => '' |
| | | ), |
| | | 'fax' => array ( |
| | | 'datatype' => 'VARCHAR', |
| | | 'formtype' => 'TEXT', |
| | | 'default' => '', |
| | | 'value' => '', |
| | | 'separator' => '', |
| | | 'width' => '30', |
| | | 'maxlength' => '255', |
| | | 'rows' => '', |
| | | 'cols' => '' |
| | | ), |
| | | 'email' => array ( |
| | | 'datatype' => 'VARCHAR', |
| | | 'formtype' => 'TEXT', |
| | | 'default' => '', |
| | | 'value' => '', |
| | | 'separator' => '', |
| | | 'width' => '30', |
| | | 'maxlength' => '255', |
| | | 'rows' => '', |
| | | 'cols' => '' |
| | | ), |
| | | 'internet' => array ( |
| | | 'datatype' => 'VARCHAR', |
| | | 'formtype' => 'TEXT', |
| | | 'default' => 'http://', |
| | | 'value' => '', |
| | | 'separator' => '', |
| | | 'width' => '30', |
| | | 'maxlength' => '255', |
| | | 'rows' => '', |
| | | 'cols' => '' |
| | | ), |
| | | 'icq' => array ( |
| | | 'datatype' => 'VARCHAR', |
| | | 'formtype' => 'TEXT', |
| | | 'default' => '', |
| | | 'value' => '', |
| | | 'separator' => '', |
| | | 'width' => '30', |
| | | 'maxlength' => '255', |
| | | 'rows' => '', |
| | | 'cols' => '' |
| | | ), |
| | | 'notes' => array ( |
| | | 'datatype' => 'TEXT', |
| | | 'formtype' => 'TEXTAREA', |
| | | 'default' => '', |
| | | 'value' => '', |
| | | 'separator' => '', |
| | | 'width' => '', |
| | | 'maxlength' => '', |
| | | 'rows' => '10', |
| | | 'cols' => '30' |
| | | ), |
| | | ################################## |
| | | # END Datatable fields |
| | | ################################## |
| | | ) |
| | | ); |
| | | |
| | | $form["tabs"]['limits'] = array ( |
| | | 'title' => "Limits", |
| | | 'width' => 80, |
| | | 'template' => "templates/reseller_edit_limits.htm", |
| | | 'fields' => array ( |
| | | ################################## |
| | | # Begin Datatable fields |
| | | ################################## |
| | | 'template_master' => array ( |
| | | 'datatype' => 'INTEGER', |
| | | 'formtype' => 'SELECT', |
| | | 'default' => '1', |
| | | 'datasource' => array ( 'type' => 'CUSTOM', |
| | | 'class'=> 'custom_datasource', |
| | | 'function'=> 'master_templates' |
| | | ), |
| | | 'value' => '' |
| | | ), |
| | | 'template_additional' => array ( |
| | | 'datatype' => 'VARCHAR', |
| | | 'formtype' => 'TEXT', |
| | | ), |
| | | 'default_mailserver' => array ( |
| | | 'datatype' => 'INTEGER', |
| | | 'formtype' => 'SELECT', |
| | | 'default' => '1', |
| | | 'datasource' => array ( 'type' => 'SQL', |
| | | 'querystring' => 'SELECT server_id,server_name FROM server WHERE mail_server = 1 AND {AUTHSQL} ORDER BY server_name', |
| | | 'keyfield'=> 'server_id', |
| | | 'valuefield'=> 'server_name' |
| | | ), |
| | | 'value' => '' |
| | | ), |
| | | 'limit_maildomain' => array ( |
| | | 'datatype' => 'INTEGER', |
| | | 'formtype' => 'TEXT', |
| | | 'validators' => array ( 0 => array ( 'type' => 'ISINT', |
| | | 'errmsg'=> 'limit_maildomain_error_notint'), |
| | | ), |
| | | 'default' => '-1', |
| | | 'value' => '', |
| | | 'separator' => '', |
| | | 'width' => '10', |
| | | 'maxlength' => '10', |
| | | 'rows' => '', |
| | | 'cols' => '' |
| | | ), |
| | | 'limit_mailbox' => array ( |
| | | 'datatype' => 'INTEGER', |
| | | 'formtype' => 'TEXT', |
| | | 'validators' => array ( 0 => array ( 'type' => 'ISINT', |
| | | 'errmsg'=> 'limit_mailbox_error_notint'), |
| | | ), |
| | | 'default' => '-1', |
| | | 'value' => '', |
| | | 'separator' => '', |
| | | 'width' => '10', |
| | | 'maxlength' => '10', |
| | | 'rows' => '', |
| | | 'cols' => '' |
| | | ), |
| | | 'limit_mailalias' => array ( |
| | | 'datatype' => 'INTEGER', |
| | | 'formtype' => 'TEXT', |
| | | 'validators' => array ( 0 => array ( 'type' => 'ISINT', |
| | | 'errmsg'=> 'limit_mailalias_error_notint'), |
| | | ), |
| | | 'default' => '-1', |
| | | 'value' => '', |
| | | 'separator' => '', |
| | | 'width' => '10', |
| | | 'maxlength' => '10', |
| | | 'rows' => '', |
| | | 'cols' => '' |
| | | ), |
| | | 'limit_mailforward' => array ( |
| | | 'datatype' => 'INTEGER', |
| | | 'formtype' => 'TEXT', |
| | | 'validators' => array ( 0 => array ( 'type' => 'ISINT', |
| | | 'errmsg'=> 'limit_mailforward_error_notint'), |
| | | ), |
| | | 'default' => '-1', |
| | | 'value' => '', |
| | | 'separator' => '', |
| | | 'width' => '10', |
| | | 'maxlength' => '10', |
| | | 'rows' => '', |
| | | 'cols' => '' |
| | | ), |
| | | 'limit_mailcatchall' => array ( |
| | | 'datatype' => 'INTEGER', |
| | | 'formtype' => 'TEXT', |
| | | 'validators' => array ( 0 => array ( 'type' => 'ISINT', |
| | | 'errmsg'=> 'limit_mailcatchall_error_notint'), |
| | | ), |
| | | 'default' => '-1', |
| | | 'value' => '', |
| | | 'separator' => '', |
| | | 'width' => '10', |
| | | 'maxlength' => '10', |
| | | 'rows' => '', |
| | | 'cols' => '' |
| | | ), |
| | | 'limit_mailrouting' => array ( |
| | | 'datatype' => 'INTEGER', |
| | | 'formtype' => 'TEXT', |
| | | 'validators' => array ( 0 => array ( 'type' => 'ISINT', |
| | | 'errmsg'=> 'limit_mailrouting_error_notint'), |
| | | ), |
| | | 'default' => '0', |
| | | 'value' => '', |
| | | 'separator' => '', |
| | | 'width' => '10', |
| | | 'maxlength' => '10', |
| | | 'rows' => '', |
| | | 'cols' => '' |
| | | ), |
| | | 'limit_mailfilter' => array ( |
| | | 'datatype' => 'INTEGER', |
| | | 'formtype' => 'TEXT', |
| | | 'validators' => array ( 0 => array ( 'type' => 'ISINT', |
| | | 'errmsg'=> 'limit_mailfilter_error_notint'), |
| | | ), |
| | | 'default' => '-1', |
| | | 'value' => '', |
| | | 'separator' => '', |
| | | 'width' => '10', |
| | | 'maxlength' => '10', |
| | | 'rows' => '', |
| | | 'cols' => '' |
| | | ), |
| | | 'limit_fetchmail' => array ( |
| | | 'datatype' => 'INTEGER', |
| | | 'formtype' => 'TEXT', |
| | | 'validators' => array ( 0 => array ( 'type' => 'ISINT', |
| | | 'errmsg'=> 'limit_mailfetchmail_error_notint'), |
| | | ), |
| | | 'default' => '-1', |
| | | 'value' => '', |
| | | 'separator' => '', |
| | | 'width' => '10', |
| | | 'maxlength' => '10', |
| | | 'rows' => '', |
| | | 'cols' => '' |
| | | ), |
| | | 'limit_mailquota' => array ( |
| | | 'datatype' => 'INTEGER', |
| | | 'formtype' => 'TEXT', |
| | | 'validators' => array ( 0 => array ( 'type' => 'ISINT', |
| | | 'errmsg'=> 'limit_mailquota_error_notint'), |
| | | ), |
| | | 'default' => '-1', |
| | | 'value' => '', |
| | | 'separator' => '', |
| | | 'width' => '10', |
| | | 'maxlength' => '10', |
| | | 'rows' => '', |
| | | 'cols' => '' |
| | | ), |
| | | 'limit_spamfilter_wblist' => array ( |
| | | 'datatype' => 'INTEGER', |
| | | 'formtype' => 'TEXT', |
| | | 'validators' => array ( 0 => array ( 'type' => 'ISINT', |
| | | 'errmsg'=> 'limit_spamfilter_wblist_error_notint'), |
| | | ), |
| | | 'default' => '-1', |
| | | 'value' => '', |
| | | 'separator' => '', |
| | | 'width' => '10', |
| | | 'maxlength' => '10', |
| | | 'rows' => '', |
| | | 'cols' => '' |
| | | ), |
| | | 'limit_spamfilter_user' => array ( |
| | | 'datatype' => 'INTEGER', |
| | | 'formtype' => 'TEXT', |
| | | 'validators' => array ( 0 => array ( 'type' => 'ISINT', |
| | | 'errmsg'=> 'limit_spamfilter_user_error_notint'), |
| | | ), |
| | | 'default' => '-1', |
| | | 'value' => '', |
| | | 'separator' => '', |
| | | 'width' => '10', |
| | | 'maxlength' => '10', |
| | | 'rows' => '', |
| | | 'cols' => '' |
| | | ), |
| | | 'limit_spamfilter_policy' => array ( |
| | | 'datatype' => 'INTEGER', |
| | | 'formtype' => 'TEXT', |
| | | 'validators' => array ( 0 => array ( 'type' => 'ISINT', |
| | | 'errmsg'=> 'limit_spamfilter_policy_error_notint'), |
| | | ), |
| | | 'default' => '-1', |
| | | 'value' => '', |
| | | 'separator' => '', |
| | | 'width' => '10', |
| | | 'maxlength' => '10', |
| | | 'rows' => '', |
| | | 'cols' => '' |
| | | ), |
| | | 'default_webserver' => array ( |
| | | 'datatype' => 'INTEGER', |
| | | 'formtype' => 'SELECT', |
| | | 'default' => '1', |
| | | 'datasource' => array ( 'type' => 'SQL', |
| | | 'querystring' => 'SELECT server_id,server_name FROM server WHERE web_server = 1 AND {AUTHSQL} ORDER BY server_name', |
| | | 'keyfield'=> 'server_id', |
| | | 'valuefield'=> 'server_name' |
| | | ), |
| | | 'value' => '' |
| | | ), |
| | | 'limit_web_domain' => array ( |
| | | 'datatype' => 'INTEGER', |
| | | 'formtype' => 'TEXT', |
| | | 'validators' => array ( 0 => array ( 'type' => 'ISINT', |
| | | 'errmsg'=> 'limit_web_domain_error_notint'), |
| | | ), |
| | | 'default' => '-1', |
| | | 'value' => '', |
| | | 'separator' => '', |
| | | 'width' => '10', |
| | | 'maxlength' => '10', |
| | | 'rows' => '', |
| | | 'cols' => '' |
| | | ), |
| | | 'web_php_options' => array ( |
| | | 'datatype' => 'VARCHAR', |
| | | 'formtype' => 'CHECKBOXARRAY', |
| | | 'default' => '', |
| | | 'separator' => ',', |
| | | 'value' => array('no' => 'Disabled', 'fast-cgi' => 'Fast-CGI', 'cgi' => 'CGI', 'mod' => 'Mod-PHP', 'suphp' => 'SuPHP') |
| | | ), |
| | | 'limit_web_aliasdomain' => array ( |
| | | 'datatype' => 'INTEGER', |
| | | 'formtype' => 'TEXT', |
| | | 'validators' => array ( 0 => array ( 'type' => 'ISINT', |
| | | 'errmsg'=> 'limit_web_aliasdomain_error_notint'), |
| | | ), |
| | | 'default' => '-1', |
| | | 'value' => '', |
| | | 'separator' => '', |
| | | 'width' => '10', |
| | | 'maxlength' => '10', |
| | | 'rows' => '', |
| | | 'cols' => '' |
| | | ), |
| | | 'limit_web_subdomain' => array ( |
| | | 'datatype' => 'INTEGER', |
| | | 'formtype' => 'TEXT', |
| | | 'validators' => array ( 0 => array ( 'type' => 'ISINT', |
| | | 'errmsg'=> 'limit_web_subdomain_error_notint'), |
| | | ), |
| | | 'default' => '-1', |
| | | 'value' => '', |
| | | 'separator' => '', |
| | | 'width' => '10', |
| | | 'maxlength' => '10', |
| | | 'rows' => '', |
| | | 'cols' => '' |
| | | ), |
| | | 'limit_ftp_user' => array ( |
| | | 'datatype' => 'INTEGER', |
| | | 'formtype' => 'TEXT', |
| | | 'validators' => array ( 0 => array ( 'type' => 'ISINT', |
| | | 'errmsg'=> 'limit_ftp_user_error_notint'), |
| | | ), |
| | | 'default' => '-1', |
| | | 'value' => '', |
| | | 'separator' => '', |
| | | 'width' => '10', |
| | | 'maxlength' => '10', |
| | | 'rows' => '', |
| | | 'cols' => '' |
| | | ), |
| | | 'limit_shell_user' => array ( |
| | | 'datatype' => 'INTEGER', |
| | | 'formtype' => 'TEXT', |
| | | 'validators' => array ( 0 => array ( 'type' => 'ISINT', |
| | | 'errmsg'=> 'limit_shell_user_error_notint'), |
| | | ), |
| | | 'default' => '-1', |
| | | 'value' => '', |
| | | 'separator' => '', |
| | | 'width' => '10', |
| | | 'maxlength' => '10', |
| | | 'rows' => '', |
| | | 'cols' => '' |
| | | ), |
| | | 'ssh_chroot' => array ( |
| | | 'datatype' => 'VARCHAR', |
| | | 'formtype' => 'CHECKBOXARRAY', |
| | | 'default' => '', |
| | | 'separator' => ',', |
| | | 'value' => array('no' => 'None', 'jailkit' => 'Jailkit') |
| | | ), |
| | | 'default_dnsserver' => array ( |
| | | 'datatype' => 'INTEGER', |
| | | 'formtype' => 'SELECT', |
| | | 'default' => '1', |
| | | 'datasource' => array ( 'type' => 'SQL', |
| | | 'querystring' => 'SELECT server_id,server_name FROM server WHERE dns_server = 1 AND {AUTHSQL} ORDER BY server_name', |
| | | 'keyfield'=> 'server_id', |
| | | 'valuefield'=> 'server_name' |
| | | ), |
| | | 'value' => '' |
| | | ), |
| | | 'limit_dns_zone' => array ( |
| | | 'datatype' => 'INTEGER', |
| | | 'formtype' => 'TEXT', |
| | | 'validators' => array ( 0 => array ( 'type' => 'ISINT', |
| | | 'errmsg'=> 'limit_dns_zone_error_notint'), |
| | | ), |
| | | 'default' => '-1', |
| | | 'value' => '', |
| | | 'separator' => '', |
| | | 'width' => '10', |
| | | 'maxlength' => '10', |
| | | 'rows' => '', |
| | | 'cols' => '' |
| | | ), |
| | | 'limit_dns_record' => array ( |
| | | 'datatype' => 'INTEGER', |
| | | 'formtype' => 'TEXT', |
| | | 'validators' => array ( 0 => array ( 'type' => 'ISINT', |
| | | 'errmsg'=> 'limit_dns_record_error_notint'), |
| | | ), |
| | | 'default' => '-1', |
| | | 'value' => '', |
| | | 'separator' => '', |
| | | 'width' => '10', |
| | | 'maxlength' => '10', |
| | | 'rows' => '', |
| | | 'cols' => '' |
| | | ), |
| | | 'limit_client' => array ( |
| | | 'datatype' => 'INTEGER', |
| | | 'formtype' => 'TEXT', |
| | | 'validators' => array ( 0 => array ( 'type' => 'ISINT', |
| | | 'errmsg'=> 'limit_client_error_notint'), |
| | | 1 => array ( 'type' => 'CUSTOM', |
| | | 'class' => 'validate_reseller', |
| | | 'function' => 'limit_client'), |
| | | ), |
| | | 'default' => '1', |
| | | 'value' => '', |
| | | 'separator' => '', |
| | | 'width' => '10', |
| | | 'maxlength' => '10', |
| | | 'rows' => '', |
| | | 'cols' => '' |
| | | ), |
| | | 'default_dbserver' => array ( |
| | | 'datatype' => 'INTEGER', |
| | | 'formtype' => 'SELECT', |
| | | 'default' => '1', |
| | | 'datasource' => array ( 'type' => 'SQL', |
| | | 'querystring' => 'SELECT server_id,server_name FROM server WHERE db_server = 1 AND {AUTHSQL} ORDER BY server_name', |
| | | 'keyfield'=> 'server_id', |
| | | 'valuefield'=> 'server_name' |
| | | ), |
| | | 'value' => '' |
| | | ), |
| | | 'limit_database' => array ( |
| | | 'datatype' => 'INTEGER', |
| | | 'formtype' => 'TEXT', |
| | | 'validators' => array ( 0 => array ( 'type' => 'ISINT', |
| | | 'errmsg'=> 'limit_database_error_notint'), |
| | | ), |
| | | 'default' => '-1', |
| | | 'value' => '', |
| | | 'separator' => '', |
| | | 'width' => '10', |
| | | 'maxlength' => '10', |
| | | 'rows' => '', |
| | | 'cols' => '' |
| | | ), |
| | | 'limit_cron' => array ( |
| | | 'datatype' => 'INTEGER', |
| | | 'formtype' => 'TEXT', |
| | | 'validators' => array ( 0 => array ( 'type' => 'ISINT', |
| | | 'errmsg'=> 'limit_cron_error_notint'), |
| | | ), |
| | | 'default' => '0', |
| | | 'value' => '', |
| | | 'separator' => '', |
| | | 'width' => '10', |
| | | 'maxlength' => '10', |
| | | 'rows' => '', |
| | | 'cols' => '' |
| | | ), |
| | | 'limit_cron_type' => array ( |
| | | 'datatype' => 'VARCHAR', |
| | | 'formtype' => 'SELECT', |
| | | 'default' => '', |
| | | 'value' => array('full' => 'Full Cron','chrooted' => 'Chrooted Cron','url' => 'URL Cron') |
| | | ), |
| | | 'limit_cron_frequency' => array ( |
| | | 'datatype' => 'INTEGER', |
| | | 'formtype' => 'TEXT', |
| | | 'validators' => array ( 0 => array ( 'type' => 'ISINT', |
| | | 'errmsg'=> 'limit_cron_error_frequency'), |
| | | ), |
| | | 'default' => '-1', |
| | | 'value' => '', |
| | | 'separator' => '', |
| | | 'width' => '10', |
| | | 'maxlength' => '10', |
| | | 'rows' => '', |
| | | 'cols' => '' |
| | | ), |
| | | ################################## |
| | | # END Datatable fields |
| | | ################################## |
| | | ) |
| | | ); |
| | | |
| | | /* |
| | | $form["tabs"]['ipaddress'] = array ( |
| | | 'title' => "IP Addresses", |
| | | 'width' => 100, |
| | | 'template' => "templates/client_edit_ipaddress.htm", |
| | | 'fields' => array ( |
| | | ################################## |
| | | # Beginn Datatable fields |
| | | ################################## |
| | | 'ip_address' => array ( |
| | | 'datatype' => 'TEXT', |
| | | 'formtype' => 'CHECKBOXARRAY', |
| | | 'default' => '', |
| | | 'value' => array('192.168.0.1' => '192.168.0.1', '192.168.0.2' => '192.168.0.2'), |
| | | 'separator' => ';' |
| | | ), |
| | | ################################## |
| | | # ENDE Datatable fields |
| | | ################################## |
| | | ) |
| | | ); |
| | | */ |
| | | |
| | | |
| | | ?> |
| | |
| | | $wb['template_additional_txt'] = 'Addon'; |
| | | $wb['ssh_chroot_txt'] = 'SSH-Chroot Options'; |
| | | $wb['web_php_options_txt'] = 'PHP Options'; |
| | | $wb['limit_cron_txt'] = 'Max. number of cron jobs'; |
| | | $wb['limit_cron_type_txt'] = 'Max. type of cron jobs (chrooted and full implies url)'; |
| | | $wb['limit_cron_frequency_txt'] = 'Min. delay between executions'; |
| | | $wb['limit_cron_error_notint'] = 'The cron limit must be a number.'; |
| | | $wb['limit_cron_error_frequency'] = 'The cron frequency limit must be a number.'; |
| | | $wb['limit_client_error'] = 'The max. number of clients is reached.'; |
| | | ?> |
| | |
| | | $wb['limit_dns_zone_error_notint'] = 'The dns record limit must be a number.'; |
| | | $wb['limit_database_error_notint'] = 'The database limit must be a number.'; |
| | | $wb['error_template_name_empty'] = 'Please enter a Template name'; |
| | | $wb['limit_cron_txt'] = 'Max. number of cron jobs'; |
| | | $wb['limit_cron_type_txt'] = 'Max. type of cron jobs (chrooted and full implies url)'; |
| | | $wb['limit_cron_frequency_txt'] = 'Min. delay between executions'; |
| | | $wb['limit_cron_error_notint'] = 'The cron limit must be a number.'; |
| | | $wb['limit_cron_error_frequency'] = 'The cron frequency limit must be a number.'; |
| | | ?> |
New file |
| | |
| | | <?php |
| | | $wb['Client'] = 'Cliente'; |
| | | $wb['Address'] = 'Endereço'; |
| | | $wb['Limits'] = 'Limites'; |
| | | $wb['Add Client'] = 'Adcionar Cliente'; |
| | | $wb['Edit Client'] = 'Editar Cliente'; |
| | | $wb['Clients'] = 'Clientes'; |
| | | $wb['Edit Client-Templates'] = 'Editar Gabaritos de Clientes'; |
| | | ?> |
| | | |
New file |
| | |
| | | <?php |
| | | $wb['limit_maildomain_txt'] = 'Número máximo de domínios de correio'; |
| | | $wb['limit_mailbox_txt'] = 'Número máximo de caixas de correio'; |
| | | $wb['limit_mailalias_txt'] = 'Número máximo de aliases de correio'; |
| | | $wb['limit_mailforward_txt'] = 'Número máximo de redirecionamento de correio'; |
| | | $wb['limit_mailcatchall_txt'] = 'Número máximo de catchall de correio'; |
| | | $wb['limit_mailrouting_txt'] = 'Número máximo de rotas de correio'; |
| | | $wb['limit_mailfilter_txt'] = 'Número máximo de filtros de correio'; |
| | | $wb['limit_fetchmail_txt'] = 'Número máximo de fetchmail de correio'; |
| | | $wb['limit_mailquota_txt'] = 'Quota de Correio'; |
| | | $wb['limit_spamfilter_wblist_txt'] = 'Número máximo de filtros spam lista branca / negra'; |
| | | $wb['limit_spamfilter_user_txt'] = 'Número máximo de usuários de filtros spam'; |
| | | $wb['limit_spamfilter_policy_txt'] = 'Número máximo de políticas de filtros spam'; |
| | | $wb['default_mailserver_txt'] = 'Servidor de Correio Padrão'; |
| | | $wb['company_name_txt'] = 'Empresa'; |
| | | $wb['contact_name_txt'] = 'Contato'; |
| | | $wb['username_txt'] = 'Nome de Usuário'; |
| | | $wb['password_txt'] = 'Senha'; |
| | | $wb['password_strength_txt'] = 'Segurança da senha'; |
| | | $wb['language_txt'] = 'Idioma'; |
| | | $wb['usertheme_txt'] = 'Tema'; |
| | | $wb['street_txt'] = 'Rua'; |
| | | $wb['zip_txt'] = 'CEP'; |
| | | $wb['city_txt'] = 'Cidade'; |
| | | $wb['state_txt'] = 'Estado'; |
| | | $wb['country_txt'] = 'Pais'; |
| | | $wb['telephone_txt'] = 'Telefone'; |
| | | $wb['mobile_txt'] = 'Celular'; |
| | | $wb['fax_txt'] = 'Fax'; |
| | | $wb['email_txt'] = 'Correio Eletrônico'; |
| | | $wb['internet_txt'] = 'Internet'; |
| | | $wb['icq_txt'] = 'ICQ'; |
| | | $wb['notes_txt'] = 'Notas'; |
| | | $wb['company_txt'] = 'Empresa'; |
| | | $wb['title_txt'] = 'Título'; |
| | | $wb['firstname_txt'] = 'Nome'; |
| | | $wb['surname_txt'] = 'Sobrenome'; |
| | | $wb['limit_domain_txt'] = 'limite_dominio'; |
| | | $wb['limit_subdomain_txt'] = 'limit_subdominio'; |
| | | $wb['limit_webquota_txt'] = 'limit_webquota'; |
| | | $wb['limit_database_txt'] = 'Número máximo de banco de dados'; |
| | | $wb['ip_address_txt'] = 'endereco_ip'; |
| | | $wb['limit_client_error_notint'] = 'O limite de um sub-cliente deve ser um número'; |
| | | $wb['firstname_error_empty'] = 'Nome está em branco.'; |
| | | $wb['contact_error_empty'] = 'Contato está em branco.'; |
| | | $wb['default_webserver_txt'] = 'Servidor Web Padrão'; |
| | | $wb['limit_web_domain_txt'] = 'Número máximo de domínios web'; |
| | | $wb['limit_web_aliasdomain_txt'] = 'Número máximo de domínios alias'; |
| | | $wb['limit_web_subdomain_txt'] = 'Número máximo de sub-domínios'; |
| | | $wb['limit_ftp_user_txt'] = 'Número máximo de usuários FTP'; |
| | | $wb['default_dnsserver_txt'] = 'Servidor de Nomes Padrão'; |
| | | $wb['limit_dns_zone_txt'] = 'Número máximo de zonas DNS'; |
| | | $wb['limit_dns_record_txt'] = 'Número máximo de registros DNS'; |
| | | $wb['limit_shell_user_txt'] = 'Número máximo de usuários de shell'; |
| | | $wb['limit_client_txt'] = 'Número máximo de clientes'; |
| | | $wb['username_error_empty'] = 'Nome do usuário está em branco'; |
| | | $wb['username_error_unique'] = 'O nome do usuário deve ser único'; |
| | | $wb['limit_maildomain_error_notint'] = 'O limite de caixas de correio no domínio deve ser um número.'; |
| | | $wb['limit_mailbox_error_notint'] = 'Limite da caixa de correio deve ser um número.'; |
| | | $wb['limit_mailalias_error_notint'] = 'Limite do aliase de correio deve ser um número.'; |
| | | $wb['limit_mailforward_error_notint'] = 'Limite de redirecionamento de correio deve ser um número'; |
| | | $wb['limit_mailcatchall_error_notint'] = 'Limite de catchall deve ser um número.'; |
| | | $wb['limit_mailrouting_error_notint'] = 'Limite de rotas de correio deve ser um número.'; |
| | | $wb['limit_mailfilter_error_notint'] = 'Limite de filtros de correio deve ser um número.'; |
| | | $wb['limit_mailfetchmail_error_notint'] = 'Limite de fetchmail deve ser um número.'; |
| | | $wb['limit_mailquota_error_notint'] = 'A quota de correio deve ser um número'; |
| | | $wb['limit_spamfilter_wblist_error_notint'] = 'O limite de filtros spam lista branca / negra deve ser um número.'; |
| | | $wb['limit_spamfilter_user_error_notint'] = 'O limite de filtros spam do usuário deve ser um número.'; |
| | | $wb['limit_spamfilter_policy_error_notint'] = 'O limite de políticas de filtros spam deve ser um número.'; |
| | | $wb['limit_web_domain_error_notint'] = 'O limite de sites deve ser um número.'; |
| | | $wb['limit_web_aliasdomain_error_notint'] = 'O limite de alias de domínios de sites deve ser um número.'; |
| | | $wb['limit_web_subdomain_error_notint'] = 'O limite de sub-domínios de sites deve ser um número'; |
| | | $wb['limit_ftp_user_error_notint'] = 'O limite de usuários de FTP deve ser um número.'; |
| | | $wb['limit_shell_user_error_notint'] = 'O limite de usuários de Shell deve ser um número.'; |
| | | $wb['limit_dns_zone_error_notint'] = 'O limite de registros de DNS deve ser um número'; |
| | | $wb['default_dbserver_txt'] = 'Servidor de Banco de Dados Padrão'; |
| | | $wb['limit_database_error_notint'] = 'O limite de banco de dados deve ser um número'; |
| | | $wb['username_error_regex'] = 'O nome de usuário contem caracteres inválidos.'; |
| | | $wb['template_master_txt'] = 'Gabarito Principal'; |
| | | $wb['template_additional_txt'] = 'Template Adcional'; |
| | | $wb['ssh_chroot_txt'] = 'Opções de SSH Chroot'; |
| | | $wb['web_php_options_txt'] = 'Opções do PHP'; |
| | | $wb['limit_client_error'] = 'O número máximo de clientes foi atingido.'; |
| | | ?> |
| | | |
New file |
| | |
| | | <?php |
| | | $wb['limit_client_error_notint'] = 'O limite do cliente não é um número.'; |
| | | $wb['limit_maildomain_txt'] = 'Limite Máximo de domínios de correio'; |
| | | $wb['limit_mailbox_txt'] = 'Limite Máximo de caixas de correio'; |
| | | $wb['limit_mailalias_txt'] = 'Limite Máximo de alias de correio'; |
| | | $wb['limit_mailforward_txt'] = 'Limite Máximo de redirecionamentos de correio'; |
| | | $wb['limit_mailcatchall_txt'] = 'Limite máximo de contas catchall'; |
| | | $wb['limit_mailrouting_txt'] = 'Limite máximo de rotas de Correio'; |
| | | $wb['limit_mailfilter_txt'] = 'Número Máximo de Filtros de Correio'; |
| | | $wb['limit_fetchmail_txt'] = 'Número Máximo de Contas fetchmail'; |
| | | $wb['limit_mailquota_txt'] = 'Espaço de Caixa de Correio'; |
| | | $wb['limit_spamfilter_wblist_txt'] = 'Número máximo de spamfilter permitidos /lista negra'; |
| | | $wb['limit_spamfilter_user_txt'] = 'Número máx de usuários spamfilter'; |
| | | $wb['limit_spamfilter_policy_txt'] = 'Número máx de políticas spamfilter'; |
| | | $wb['limit_domain_txt'] = 'limite_dominio'; |
| | | $wb['limit_subdomain_txt'] = 'limite_subdominio'; |
| | | $wb['limit_webquota_txt'] = 'limite_webquota'; |
| | | $wb['limit_database_txt'] = 'Número máximo de banco de dados'; |
| | | $wb['limit_web_domain_txt'] = 'Número máximo de domínios web'; |
| | | $wb['limit_web_aliasdomain_txt'] = 'Número maximo de apelidos web'; |
| | | $wb['limit_web_subdomain_txt'] = 'Número máximo de sub-domínios'; |
| | | $wb['limit_ftp_user_txt'] = 'Número máximo de usuários de FTP'; |
| | | $wb['limit_dns_zone_txt'] = 'Número máximo de zonas DNS'; |
| | | $wb['limit_dns_record_txt'] = 'Número máximo de registros DNS'; |
| | | $wb['limit_shell_user_txt'] = 'Número máximo de usuários de Shell'; |
| | | $wb['limit_client_txt'] = 'Número máximo de clientes'; |
| | | $wb['limit_maildomain_error_notint'] = 'O limite de correio de domínio deve ser numérico'; |
| | | $wb['limit_mailbox_error_notint'] = 'O limite da caixa de correio deve ser numérico'; |
| | | $wb['limit_mailalias_error_notint'] = 'O limite do apelido de correio deve ser númerico'; |
| | | $wb['limit_mailforward_error_notint'] = 'O limite de direcionamento de correio deve ser um número'; |
| | | $wb['limit_mailcatchall_error_notint'] = 'O limite de catchall do domínio deve ser um número'; |
| | | $wb['limit_mailrouting_error_notint'] = 'Limite de rota de correio deve ser um número'; |
| | | $wb['limit_mailfilter_error_notint'] = 'O limite de filtro de correio deve ser um número.'; |
| | | $wb['limit_mailfetchmail_error_notint'] = 'Limite fetchmail deve ser um número.'; |
| | | $wb['limit_mailquota_error_notint'] = 'Cota de correio deve ser um número.'; |
| | | $wb['limit_spamfilter_wblist_error_notint'] = 'O limite de spamfilter permitido / lista negra deve ser um número'; |
| | | $wb['limit_spamfilter_user_error_notint'] = 'O limite do spamfilter deve ser um número.'; |
| | | $wb['limit_spamfilter_policy_error_notint'] = 'O limite da política do spamfilter deve ser um número.'; |
| | | $wb['limit_web_domain_error_notint'] = 'O limite de websites deve ser um número'; |
| | | $wb['limit_web_aliasdomain_error_notint'] = 'O limite de apelidos de domínio deve ser um número'; |
| | | $wb['limit_web_subdomain_error_notint'] = 'O limite de sub-domínios deve ser um número'; |
| | | $wb['limit_ftp_user_error_notint'] = 'O limite de contas FTP deve ser um número'; |
| | | $wb['limit_shell_user_error_notint'] = 'O limite de contas shell DNS deve ser um número'; |
| | | $wb['limit_dns_zone_error_notint'] = 'O limite de zonas DNS deve ser um número'; |
| | | $wb['limit_database_error_notint'] = 'O limite dos bancos de dados deve ser um número'; |
| | | $wb['error_template_name_empty'] = 'Por favor insira o nome do gabarito'; |
| | | ?> |
| | | |
New file |
| | |
| | | <?php |
| | | $wb['list_head_txt'] = 'Gabarito de Cliente '; |
| | | $wb['template_type_txt'] = 'Tipo'; |
| | | $wb['template_name_txt'] = 'Nome do Gabarito'; |
| | | ?> |
| | | |
New file |
| | |
| | | <?php |
| | | $wb['list_head_txt'] = 'Clientes'; |
| | | $wb['client_id_txt'] = 'ID'; |
| | | $wb['company_name_txt'] = 'Empresa'; |
| | | $wb['contact_name_txt'] = 'Nome do contato'; |
| | | $wb['city_txt'] = 'Cidade'; |
| | | $wb['country_txt'] = 'Pais'; |
| | | $wb['add_new_record_txt'] = 'Adcionar novo cliente'; |
| | | ?> |
| | | |
| | |
| | | $wb['limit_subdomain_txt'] = 'Max. Anzahl an Subdomains'; |
| | | $wb['limit_webquota_txt'] = 'Max. Webquota'; |
| | | $wb['limit_database_txt'] = 'Max. Anzahl an Datenbanken'; |
| | | $wb['limit_cron_txt'] = 'Max. Anzahl Cron Jobs'; |
| | | $wb['limit_cron_type_txt'] = 'Max. erlaubter Typ von Cron Jobs (chrooted und full erlauben auch url)'; |
| | | $wb['limit_cron_frequency_txt'] = 'Min. Abstand zwischen Ausführungen'; |
| | | $wb['ip_address_txt'] = 'IP Adresse'; |
| | | $wb['limit_client_error_notint'] = 'The sub client limit must be a number.'; |
| | | $wb['firstname_error_empty'] = 'Vorname ist leer.'; |
| | |
| | | $wb['limit_dns_zone_error_notint'] = 'Das DNS Einträge Limit muss eine Nummer sein.'; |
| | | $wb['default_dbserver_txt'] = 'Standarddatenbankserver'; |
| | | $wb['limit_database_error_notint'] = 'Das Datenbank Limit muss eine Nummer sein.'; |
| | | $wb['limit_cron_error_notint'] = 'Das Cron Job Limit muss eine Zahl sein.'; |
| | | $wb['limit_cron_error_frequency'] = 'Das Cron Job Intervall-Limit muss eine Zahl sein.'; |
| | | $wb['username_error_regex'] = 'Der Benutzername enthält ungültige Zeichen.'; |
| | | $wb['password_strength_txt'] = 'Passwortkomplexität'; |
| | | $wb['template_master_txt'] = 'Master'; |
| | | $wb['template_additional_txt'] = 'Addons'; |
| | | $wb['ssh_chroot_txt'] = 'SSH-Chroot Optionen'; |
| | | $wb['web_php_options_txt'] = 'PHP Optionen'; |
| | | $wb['limit_client_error'] = 'The max. number of clients is reached.'; |
| | | ?> |
| | |
| | | $wb['limit_subdomain_txt'] = 'Max. Anzahl an Subdomains'; |
| | | $wb['limit_webquota_txt'] = 'Max. Webquota'; |
| | | $wb['limit_database_txt'] = 'Max. Anzahl an Datenbanken'; |
| | | $wb['limit_cron_txt'] = 'Max. Anzahl Cron Jobs'; |
| | | $wb['limit_cron_type_txt'] = 'Max. erlaubter Typ von Cron Jobs (chrooted und full erlauben auch url)'; |
| | | $wb['limit_cron_frequency_txt'] = 'Min. Abstand zwischen Ausführungen'; |
| | | $wb['limit_web_domain_txt'] = 'Max. Anzahl an Web Domains'; |
| | | $wb['limit_web_aliasdomain_txt'] = 'Max. Anzahl an Web Aliasdomains'; |
| | | $wb['limit_web_subdomain_txt'] = 'Max. Anzahl an Web Subdomains'; |
| | |
| | | $wb['limit_shell_user_error_notint'] = 'Das Shell Benutzer Limit muss eine Nummer sein.'; |
| | | $wb['limit_dns_zone_error_notint'] = 'Das DNS Einträge Limit muss eine Nummer sein.'; |
| | | $wb['limit_database_error_notint'] = 'Das Datenbanken Limit muss eine Nummer sein.'; |
| | | $wb['limit_cron_error_notint'] = 'Das Cron Job Limit muss eine Zahl sein.'; |
| | | $wb['limit_cron_error_frequency'] = 'Das Cron Job Intervall-Limit muss eine Zahl sein.'; |
| | | $wb['error_template_name_empty'] = 'Bitte geben sie einen Vorlagenamen ein'; |
| | | ?> |
| | |
| | | $wb['Edit Client'] = 'Edit Client'; |
| | | $wb['Clients'] = 'Clients'; |
| | | $wb['Edit Client-Templates'] = 'Edit Client-Templates'; |
| | | $wb['Add Reseller'] = 'Add Reseller'; |
| | | $wb['Edit Reseller'] = 'Edit Reseller'; |
| | | $wb['Resellers'] = 'Resellers'; |
| | | ?> |
| | |
| | | $wb["limit_subdomain_txt"] = 'limit_subdomain'; |
| | | $wb["limit_webquota_txt"] = 'limit_webquota'; |
| | | $wb["limit_database_txt"] = 'limit_database'; |
| | | $wb["limit_cron_txt"] = 'Max. number of cron jobs'; |
| | | $wb["limit_cron_type_txt"] = 'Max. type of cron jobs (chrooted and full implies url)'; |
| | | $wb["limit_cron_frequency_txt"] = 'Min. delay between executions'; |
| | | $wb["ip_address_txt"] = 'ip_address'; |
| | | $wb["limit_client_error_notint"] = 'Client Limit is not a number.'; |
| | | $wb["firstname_error_empty"] = 'Firstname is empty.'; |
| | |
| | | $wb["default_dbserver_txt"] = 'Default Database Server'; |
| | | $wb["limit_database_txt"] = 'Max. number of Databases'; |
| | | $wb["limit_database_error_notint"] = 'The database limit must be a number.'; |
| | | $wb["limit_cron_error_notint"] = 'The cron limit must be a number.'; |
| | | $wb["limit_cron_error_frequency"] = 'The cron frequency limit must be a number.'; |
| | | $wb["username_error_regex"] = 'The Username contains invalid chracaters.'; |
| | | $wb["template_master_txt"] = 'Master template'; |
| | | $wb["template_additional_txt"] = 'Addon template'; |
| | |
| | | $wb["limit_subdomain_txt"] = 'limit_subdomain';
|
| | | $wb["limit_webquota_txt"] = 'limit_webquota';
|
| | | $wb["limit_database_txt"] = 'limit_database';
|
| | | $wb["limit_cron_txt"] = 'Max. number of cron jobs';
|
| | | $wb["limit_cron_type_txt"] = 'Max. type of cron jobs (chrooted and full implies url)';
|
| | | $wb["limit_cron_frequency_txt"] = 'Min. delay between executions';
|
| | | $wb["limit_web_domain_txt"] = 'Max. number of web domains';
|
| | | $wb["limit_web_aliasdomain_txt"] = 'Max. number of web aliasdomains';
|
| | | $wb["limit_web_subdomain_txt"] = 'Max. number of web subdomains';
|
| | |
| | | $wb["limit_dns_zone_error_notint"] = 'The dns record limit must be a number.';
|
| | | $wb["limit_database_txt"] = 'Max. number of Databases';
|
| | | $wb["limit_database_error_notint"] = 'The database limit must be a number.';
|
| | | $wb["limit_cron_error_notint"] = 'The cron limit must be a number.';
|
| | | $wb["limit_cron_error_frequency"] = 'The cron frequency limit must be a number.';
|
| | | $wb["error_template_name_empty"] = 'Please enter a Template name';
|
| | | ?> |
New file |
| | |
| | | <?php |
| | | $wb["limit_maildomain_txt"] = 'Max. number of email domains'; |
| | | $wb["limit_mailbox_txt"] = 'Max. number of mailboxes'; |
| | | $wb["limit_mailalias_txt"] = 'Max. number of email aliases'; |
| | | $wb["limit_mailforward_txt"] = 'Max. number of email forwarders'; |
| | | $wb["limit_mailcatchall_txt"] = 'Max. number of email catchall accounts'; |
| | | $wb["limit_mailrouting_txt"] = 'Max. number of email routes'; |
| | | $wb["limit_mailfilter_txt"] = 'Max. number of email filters'; |
| | | $wb["limit_fetchmail_txt"] = 'Max. number of fetchmail accounts'; |
| | | $wb["limit_mailquota_txt"] = 'Mailbox quota'; |
| | | $wb["limit_spamfilter_wblist_txt"] = 'Max. number of spamfilter white / blacklist filters'; |
| | | $wb["limit_spamfilter_user_txt"] = 'Max. number of spamfilter users'; |
| | | $wb["limit_spamfilter_policy_txt"] = 'Max. number of spamfilter policys'; |
| | | $wb["default_mailserver_txt"] = 'Default Mailserver'; |
| | | $wb["company_name_txt"] = 'Company name'; |
| | | $wb["contact_name_txt"] = 'Contact name'; |
| | | $wb["username_txt"] = 'Username'; |
| | | $wb["password_txt"] = 'Password'; |
| | | $wb["password_strength_txt"] = 'Password strength'; |
| | | $wb["language_txt"] = 'Language'; |
| | | $wb["usertheme_txt"] = 'Theme'; |
| | | $wb["street_txt"] = 'Street'; |
| | | $wb["zip_txt"] = 'ZIP'; |
| | | $wb["city_txt"] = 'City'; |
| | | $wb["state_txt"] = 'State'; |
| | | $wb["country_txt"] = 'Country'; |
| | | $wb["telephone_txt"] = 'Telephone'; |
| | | $wb["mobile_txt"] = 'Mobile'; |
| | | $wb["fax_txt"] = 'Fax'; |
| | | $wb["email_txt"] = 'Email'; |
| | | $wb["internet_txt"] = 'Internet'; |
| | | $wb["icq_txt"] = 'ICQ'; |
| | | $wb["notes_txt"] = 'Notes'; |
| | | $wb["company_txt"] = 'Company'; |
| | | $wb["title_txt"] = 'Title'; |
| | | $wb["firstname_txt"] = 'Firstname'; |
| | | $wb["surname_txt"] = 'Surname'; |
| | | $wb["limit_domain_txt"] = 'limit_domain'; |
| | | $wb["limit_subdomain_txt"] = 'limit_subdomain'; |
| | | $wb["limit_webquota_txt"] = 'limit_webquota'; |
| | | $wb["limit_database_txt"] = 'limit_database'; |
| | | $wb["limit_cron_txt"] = 'Max. number of cron jobs'; |
| | | $wb["limit_cron_type_txt"] = 'Max. type of cron jobs (chrooted and full implies url)'; |
| | | $wb["limit_cron_frequency_txt"] = 'Min. delay between executions'; |
| | | $wb["ip_address_txt"] = 'ip_address'; |
| | | $wb["limit_client_error_notint"] = 'Client Limit is not a number.'; |
| | | $wb["firstname_error_empty"] = 'Firstname is empty.'; |
| | | $wb["contact_error_empty"] = 'Contact name is empty.'; |
| | | $wb["default_webserver_txt"] = 'Default Webserver'; |
| | | $wb["limit_web_domain_txt"] = 'Max. number of web domains'; |
| | | $wb["limit_web_aliasdomain_txt"] = 'Max. number of web aliasdomains'; |
| | | $wb["limit_web_subdomain_txt"] = 'Max. number of web subdomains'; |
| | | $wb["limit_ftp_user_txt"] = 'Max. number of FTP users'; |
| | | $wb["default_dnsserver_txt"] = 'Default DNS Server'; |
| | | $wb["limit_dns_zone_txt"] = 'Max. number of DNS zones'; |
| | | $wb["limit_dns_record_txt"] = 'Max. number DNS records'; |
| | | $wb["limit_shell_user_txt"] = 'Max. number of Shell users'; |
| | | $wb["limit_client_txt"] = 'Max. number of Clients'; |
| | | $wb["username_error_empty"] = 'Username is empty.'; |
| | | $wb["username_error_unique"] = 'The username must be unique.'; |
| | | $wb["limit_maildomain_error_notint"] = 'The email domain limit must be a number.'; |
| | | $wb["limit_mailbox_error_notint"] = 'The mailbox limit must be a number.'; |
| | | $wb["limit_mailalias_error_notint"] = 'The email alias limit must be a number.'; |
| | | $wb["limit_mailforward_error_notint"] = 'The email forward limit must be a number.'; |
| | | $wb["limit_mailcatchall_error_notint"] = 'The email catchall limit must be a number.'; |
| | | $wb["limit_mailrouting_error_notint"] = 'The email routing limit must be a number.'; |
| | | $wb["limit_mailfilter_error_notint"] = 'The email filter limit must be a number.'; |
| | | $wb["limit_mailfetchmail_error_notint"] = 'The fetchmail limit must be a number.'; |
| | | $wb["limit_mailquota_error_notint"] = 'The email quota limit must be a number.'; |
| | | $wb["limit_spamfilter_wblist_error_notint"] = 'The spamfilter white / blacklist limit must be a number.'; |
| | | $wb["limit_spamfilter_user_error_notint"] = 'The spamfilter user limit must be a number.'; |
| | | $wb["limit_spamfilter_policy_error_notint"] = 'The spamfilter policy limit must be a number.'; |
| | | $wb["limit_web_domain_error_notint"] = 'The website limit must be a number.'; |
| | | $wb["limit_web_aliasdomain_error_notint"] = 'The website alias domain limit must be a number.'; |
| | | $wb["limit_web_subdomain_error_notint"] = 'The website subdomain limit must be a number.'; |
| | | $wb["limit_ftp_user_error_notint"] = 'The ftp user limit must be a number.'; |
| | | $wb["limit_shell_user_error_notint"] = 'The shell user limit must be a number.'; |
| | | $wb["limit_dns_zone_error_notint"] = 'The dns zone limit must be a number.'; |
| | | $wb["limit_dns_zone_error_notint"] = 'The dns record limit must be a number.'; |
| | | $wb["limit_client_error_notint"] = 'The sub client limit must be a number.'; |
| | | $wb["default_dbserver_txt"] = 'Default Database Server'; |
| | | $wb["limit_database_txt"] = 'Max. number of Databases'; |
| | | $wb["limit_database_error_notint"] = 'The database limit must be a number.'; |
| | | $wb["limit_cron_error_notint"] = 'The cron limit must be a number.'; |
| | | $wb["limit_cron_error_frequency"] = 'The cron frequency limit must be a number.'; |
| | | $wb["username_error_regex"] = 'The Username contains invalid chracaters.'; |
| | | $wb["template_master_txt"] = 'Master template'; |
| | | $wb["template_additional_txt"] = 'Addon template'; |
| | | $wb["ssh_chroot_txt"] = 'SSH-Chroot Options'; |
| | | $wb["web_php_options_txt"] = 'PHP Options'; |
| | | $wb["limit_client_error"] = 'The max. number of clients is reached.'; |
| | | $wb["limit_client_error_positive"] = 'The number of clients must be > 0'; |
| | | ?> |
New file |
| | |
| | | <?php |
| | | $wb["list_head_txt"] = 'Resellers'; |
| | | $wb["client_id_txt"] = 'ID'; |
| | | $wb["company_name_txt"] = 'Company name'; |
| | | $wb["contact_name_txt"] = 'Contact name'; |
| | | $wb["city_txt"] = 'City'; |
| | | $wb["country_txt"] = 'Country'; |
| | | $wb["add_new_record_txt"] = 'Add new reseller'; |
| | | ?> |
| | |
| | | $wb['template_additional_txt'] = 'Addon'; |
| | | $wb['ssh_chroot_txt'] = 'SSH-Chroot Options'; |
| | | $wb['web_php_options_txt'] = 'PHP Options'; |
| | | $wb['limit_cron_txt'] = 'Max. number of cron jobs'; |
| | | $wb['limit_cron_type_txt'] = 'Max. type of cron jobs (chrooted and full implies url)'; |
| | | $wb['limit_cron_frequency_txt'] = 'Min. delay between executions'; |
| | | $wb['limit_cron_error_notint'] = 'The cron limit must be a number.'; |
| | | $wb['limit_cron_error_frequency'] = 'The cron frequency limit must be a number.'; |
| | | $wb['limit_client_error'] = 'The max. number of clients is reached.'; |
| | | ?> |
| | |
| | | $wb['limit_dns_zone_error_notint'] = 'The dns record limit must be a number.'; |
| | | $wb['limit_database_error_notint'] = 'The database limit must be a number.'; |
| | | $wb['error_template_name_empty'] = 'Please enter a Template name'; |
| | | $wb['limit_cron_txt'] = 'Max. number of cron jobs'; |
| | | $wb['limit_cron_type_txt'] = 'Max. type of cron jobs (chrooted and full implies url)'; |
| | | $wb['limit_cron_frequency_txt'] = 'Min. delay between executions'; |
| | | $wb['limit_cron_error_notint'] = 'The cron limit must be a number.'; |
| | | $wb['limit_cron_error_frequency'] = 'The cron frequency limit must be a number.'; |
| | | ?> |
| | |
| | | $wb['template_additional_txt'] = 'Lisämalli'; |
| | | $wb['ssh_chroot_txt'] = 'SSH-Chroot Options'; |
| | | $wb['web_php_options_txt'] = 'PHP Options'; |
| | | $wb['limit_cron_txt'] = 'Max. number of cron jobs'; |
| | | $wb['limit_cron_type_txt'] = 'Max. type of cron jobs (chrooted and full implies url)'; |
| | | $wb['limit_cron_frequency_txt'] = 'Min. delay between executions'; |
| | | $wb['limit_cron_error_notint'] = 'The cron limit must be a number.'; |
| | | $wb['limit_cron_error_frequency'] = 'The cron frequency limit must be a number.'; |
| | | $wb['limit_client_error'] = 'The max. number of clients is reached.'; |
| | | ?> |
| | |
| | | $wb['limit_dns_zone_error_notint'] = 'DNS-tietueiden raja-arvon pitää olla numero.'; |
| | | $wb['limit_database_error_notint'] = 'Tietokantojen raja-arvon pitää olla numero.'; |
| | | $wb['error_template_name_empty'] = 'Anna mallilomakkeen nimi'; |
| | | $wb['limit_cron_txt'] = 'Max. number of cron jobs'; |
| | | $wb['limit_cron_type_txt'] = 'Max. type of cron jobs (chrooted and full implies url)'; |
| | | $wb['limit_cron_frequency_txt'] = 'Min. delay between executions'; |
| | | $wb['limit_cron_error_notint'] = 'The cron limit must be a number.'; |
| | | $wb['limit_cron_error_frequency'] = 'The cron frequency limit must be a number.'; |
| | | ?> |
| | |
| | | $wb['template_additional_txt'] = 'Addon'; |
| | | $wb['ssh_chroot_txt'] = 'SSH-Chroot Options'; |
| | | $wb['web_php_options_txt'] = 'PHP Options'; |
| | | $wb['limit_cron_txt'] = 'Max. number of cron jobs'; |
| | | $wb['limit_cron_type_txt'] = 'Max. type of cron jobs (chrooted and full implies url)'; |
| | | $wb['limit_cron_frequency_txt'] = 'Min. delay between executions'; |
| | | $wb['limit_cron_error_notint'] = 'The cron limit must be a number.'; |
| | | $wb['limit_cron_error_frequency'] = 'The cron frequency limit must be a number.'; |
| | | $wb['limit_client_error'] = 'The max. number of clients is reached.'; |
| | | ?> |
| | |
| | | $wb['limit_dns_zone_error_notint'] = 'The dns record limit must be a number.'; |
| | | $wb['limit_database_error_notint'] = 'The database limit must be a number.'; |
| | | $wb['error_template_name_empty'] = 'Please enter a Template name'; |
| | | $wb['limit_cron_txt'] = 'Max. number of cron jobs'; |
| | | $wb['limit_cron_type_txt'] = 'Max. type of cron jobs (chrooted and full implies url)'; |
| | | $wb['limit_cron_frequency_txt'] = 'Min. delay between executions'; |
| | | $wb['limit_cron_error_notint'] = 'The cron limit must be a number.'; |
| | | $wb['limit_cron_error_frequency'] = 'The cron frequency limit must be a number.'; |
| | | ?> |
| | |
| | | $wb['template_additional_txt'] = 'Aggiuntivo'; |
| | | $wb['ssh_chroot_txt'] = 'SSH-Chroot Options'; |
| | | $wb['web_php_options_txt'] = 'PHP Options'; |
| | | $wb['limit_cron_txt'] = 'Max. number of cron jobs'; |
| | | $wb['limit_cron_type_txt'] = 'Max. type of cron jobs (chrooted and full implies url)'; |
| | | $wb['limit_cron_frequency_txt'] = 'Min. delay between executions'; |
| | | $wb['limit_cron_error_notint'] = 'The cron limit must be a number.'; |
| | | $wb['limit_cron_error_frequency'] = 'The cron frequency limit must be a number.'; |
| | | $wb['limit_client_error'] = 'The max. number of clients is reached.'; |
| | | ?> |
| | |
| | | $wb['limit_dns_zone_error_notint'] = 'The dns record limit must be a number.'; |
| | | $wb['limit_database_error_notint'] = 'The database limit must be a number.'; |
| | | $wb['error_template_name_empty'] = 'Devi inserire il nome del modello'; |
| | | $wb['limit_cron_txt'] = 'Max. number of cron jobs'; |
| | | $wb['limit_cron_type_txt'] = 'Max. type of cron jobs (chrooted and full implies url)'; |
| | | $wb['limit_cron_frequency_txt'] = 'Min. delay between executions'; |
| | | $wb['limit_cron_error_notint'] = 'The cron limit must be a number.'; |
| | | $wb['limit_cron_error_frequency'] = 'The cron frequency limit must be a number.'; |
| | | ?> |
| | |
| | | $wb['template_additional_txt'] = 'Addon'; |
| | | $wb['ssh_chroot_txt'] = 'SSH-Chroot Options'; |
| | | $wb['web_php_options_txt'] = 'PHP Options'; |
| | | $wb['limit_cron_txt'] = 'Max. number of cron jobs'; |
| | | $wb['limit_cron_type_txt'] = 'Max. type of cron jobs (chrooted and full implies url)'; |
| | | $wb['limit_cron_frequency_txt'] = 'Min. delay between executions'; |
| | | $wb['limit_cron_error_notint'] = 'The cron limit must be a number.'; |
| | | $wb['limit_cron_error_frequency'] = 'The cron frequency limit must be a number.'; |
| | | $wb['limit_client_error'] = 'The max. number of clients is reached.'; |
| | | ?> |
| | |
| | | $wb['limit_dns_zone_error_notint'] = 'De dns record limiet moet een numerieke waarde zijn.'; |
| | | $wb['limit_database_error_notint'] = 'De database limiet moet een numerieke waarde zijn.'; |
| | | $wb['error_template_name_empty'] = 'Voer a.u.b. de template naam in.'; |
| | | $wb['limit_cron_txt'] = 'Max. number of cron jobs'; |
| | | $wb['limit_cron_type_txt'] = 'Max. type of cron jobs (chrooted and full implies url)'; |
| | | $wb['limit_cron_frequency_txt'] = 'Min. delay between executions'; |
| | | $wb['limit_cron_error_notint'] = 'The cron limit must be a number.'; |
| | | $wb['limit_cron_error_frequency'] = 'The cron frequency limit must be a number.'; |
| | | ?> |
| | |
| | | $wb['template_additional_txt'] = 'Addon'; |
| | | $wb['ssh_chroot_txt'] = 'SSH-Chroot Options'; |
| | | $wb['web_php_options_txt'] = 'PHP Options'; |
| | | $wb['limit_cron_txt'] = 'Max. number of cron jobs'; |
| | | $wb['limit_cron_type_txt'] = 'Max. type of cron jobs (chrooted and full implies url)'; |
| | | $wb['limit_cron_frequency_txt'] = 'Min. delay between executions'; |
| | | $wb['limit_cron_error_notint'] = 'The cron limit must be a number.'; |
| | | $wb['limit_cron_error_frequency'] = 'The cron frequency limit must be a number.'; |
| | | $wb['limit_client_error'] = 'The max. number of clients is reached.'; |
| | | ?> |
| | |
| | | $wb['limit_dns_zone_error_notint'] = 'The dns record limit must be a number.'; |
| | | $wb['limit_database_error_notint'] = 'The database limit must be a number.'; |
| | | $wb['error_template_name_empty'] = 'Please enter a Template name'; |
| | | $wb['limit_cron_txt'] = 'Max. number of cron jobs'; |
| | | $wb['limit_cron_type_txt'] = 'Max. type of cron jobs (chrooted and full implies url)'; |
| | | $wb['limit_cron_frequency_txt'] = 'Min. delay between executions'; |
| | | $wb['limit_cron_error_notint'] = 'The cron limit must be a number.'; |
| | | $wb['limit_cron_error_frequency'] = 'The cron frequency limit must be a number.'; |
| | | ?> |
| | |
| | | $wb['template_additional_txt'] = 'Addon'; |
| | | $wb['ssh_chroot_txt'] = 'SSH-Chroot Options'; |
| | | $wb['web_php_options_txt'] = 'PHP Options'; |
| | | $wb['limit_cron_txt'] = 'Max. number of cron jobs'; |
| | | $wb['limit_cron_type_txt'] = 'Max. type of cron jobs (chrooted and full implies url)'; |
| | | $wb['limit_cron_frequency_txt'] = 'Min. delay between executions'; |
| | | $wb['limit_cron_error_notint'] = 'The cron limit must be a number.'; |
| | | $wb['limit_cron_error_frequency'] = 'The cron frequency limit must be a number.'; |
| | | $wb['limit_client_error'] = 'The max. number of clients is reached.'; |
| | | ?> |
| | |
| | | $wb['limit_dns_zone_error_notint'] = 'The dns record limit must be a number.'; |
| | | $wb['limit_database_error_notint'] = 'The database limit must be a number.'; |
| | | $wb['error_template_name_empty'] = 'Please enter a Template name'; |
| | | $wb['limit_cron_txt'] = 'Max. number of cron jobs'; |
| | | $wb['limit_cron_type_txt'] = 'Max. type of cron jobs (chrooted and full implies url)'; |
| | | $wb['limit_cron_frequency_txt'] = 'Min. delay between executions'; |
| | | $wb['limit_cron_error_notint'] = 'The cron limit must be a number.'; |
| | | $wb['limit_cron_error_frequency'] = 'The cron frequency limit must be a number.'; |
| | | ?> |
| | |
| | | $module["nav"][] = array( 'title' => 'Clients', |
| | | 'open' => 1, |
| | | 'items' => $items); |
| | | |
| | | unset($items); |
| | | |
| | | |
| | | if($_SESSION["s"]["user"]["typ"] == 'admin'){ |
| | | |
| | | $items[] = array( 'title' => "Add Reseller", |
| | | 'target' => 'content', |
| | | 'link' => 'client/reseller_edit.php'); |
| | | |
| | | $items[] = array( 'title' => "Edit Reseller", |
| | | 'target' => 'content', |
| | | 'link' => 'client/reseller_list.php'); |
| | | |
| | | $module["nav"][] = array( 'title' => 'Resellers', |
| | | 'open' => 1, |
| | | 'items' => $items); |
| | | } |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | ?> |
New file |
| | |
| | | <?php |
| | | |
| | | /* |
| | | Datatypes: |
| | | - INTEGER |
| | | - DOUBLE |
| | | - CURRENCY |
| | | - VARCHAR |
| | | - TEXT |
| | | - DATE |
| | | */ |
| | | |
| | | |
| | | |
| | | // Name of the list |
| | | $liste["name"] = "resellers"; |
| | | |
| | | // Database table |
| | | $liste["table"] = "client"; |
| | | |
| | | // Index index field of the database table |
| | | $liste["table_idx"] = "client_id"; |
| | | |
| | | // Search Field Prefix |
| | | $liste["search_prefix"] = "search_"; |
| | | |
| | | // Records per page |
| | | $liste["records_per_page"] = 15; |
| | | |
| | | // Script File of the list |
| | | $liste["file"] = "reseller_list.php"; |
| | | |
| | | // Script file of the edit form |
| | | $liste["edit_file"] = "reseller_edit.php"; |
| | | |
| | | // Script File of the delete script |
| | | $liste["delete_file"] = "reseller_del.php"; |
| | | |
| | | // Paging Template |
| | | $liste["paging_tpl"] = "templates/paging.tpl.htm"; |
| | | |
| | | // Enable authe |
| | | $liste["auth"] = "yes"; |
| | | |
| | | |
| | | /***************************************************** |
| | | * Suchfelder |
| | | *****************************************************/ |
| | | |
| | | $liste["item"][] = array( 'field' => "company_name", |
| | | 'datatype' => "VARCHAR", |
| | | 'formtype' => "TEXT", |
| | | 'op' => "like", |
| | | 'prefix' => "%", |
| | | 'suffix' => "%", |
| | | 'width' => "", |
| | | 'value' => ""); |
| | | |
| | | $liste["item"][] = array( 'field' => "contact_name", |
| | | 'datatype' => "VARCHAR", |
| | | 'formtype' => "TEXT", |
| | | 'op' => "like", |
| | | 'prefix' => "%", |
| | | 'suffix' => "%", |
| | | 'width' => "", |
| | | 'value' => ""); |
| | | |
| | | $liste["item"][] = array( 'field' => "city", |
| | | 'datatype' => "VARCHAR", |
| | | 'formtype' => "TEXT", |
| | | 'op' => "like", |
| | | 'prefix' => "%", |
| | | 'suffix' => "%", |
| | | 'width' => "", |
| | | 'value' => ""); |
| | | |
| | | $liste["item"][] = array( 'field' => "country", |
| | | 'datatype' => "VARCHAR", |
| | | 'formtype' => "TEXT", |
| | | 'op' => "like", |
| | | 'prefix' => "%", |
| | | 'suffix' => "%", |
| | | 'width' => "", |
| | | 'value' => ""); |
| | | |
| | | |
| | | ?> |
New file |
| | |
| | | <?php |
| | | |
| | | /* |
| | | Copyright (c) 2005 - 2009, Till Brehm, projektfarm Gmbh |
| | | All rights reserved. |
| | | |
| | | Redistribution and use in source and binary forms, with or without modification, |
| | | are permitted provided that the following conditions are met: |
| | | |
| | | * Redistributions of source code must retain the above copyright notice, |
| | | this list of conditions and the following disclaimer. |
| | | * Redistributions in binary form must reproduce the above copyright notice, |
| | | this list of conditions and the following disclaimer in the documentation |
| | | and/or other materials provided with the distribution. |
| | | * Neither the name of ISPConfig nor the names of its contributors |
| | | may be used to endorse or promote products derived from this software without |
| | | specific prior written permission. |
| | | |
| | | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND |
| | | ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED |
| | | WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. |
| | | IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, |
| | | INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, |
| | | BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, |
| | | DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY |
| | | OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING |
| | | NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, |
| | | EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
| | | */ |
| | | |
| | | /****************************************** |
| | | * Begin Form configuration |
| | | ******************************************/ |
| | | |
| | | $list_def_file = "list/reseller.list.php"; |
| | | $tform_def_file = "form/reseller.tform.php"; |
| | | |
| | | /****************************************** |
| | | * End Form configuration |
| | | ******************************************/ |
| | | |
| | | require_once('../../lib/config.inc.php'); |
| | | require_once('../../lib/app.inc.php'); |
| | | |
| | | //* Check permissions for module |
| | | $app->auth->check_module_permissions('client'); |
| | | |
| | | if($_SESSION["s"]["user"]["typ"] != 'admin') die('Access only for administrators.'); |
| | | |
| | | $app->uses('tpl,tform'); |
| | | $app->load('tform_actions'); |
| | | |
| | | class page_action extends tform_actions { |
| | | function onAfterDelete() { |
| | | global $app, $conf; |
| | | |
| | | $client_id = intval($this->dataRecord['client_id']); |
| | | |
| | | if($client_id > 0) { |
| | | // TODO: Delete all records (sub-clients, mail, web, etc....) of this client. |
| | | |
| | | // remove the group of the client from the resellers group |
| | | $parent_client_id = intval($this->dataRecord['parent_client_id']); |
| | | $parent_user = $app->db->queryOneRecord("SELECT userid FROM sys_user WHERE client_id = $parent_client_id"); |
| | | $client_group = $app->db->queryOneRecord("SELECT groupid FROM sys_group WHERE client_id = $client_id"); |
| | | $app->auth->remove_group_from_user($parent_user['userid'],$client_group['groupid']); |
| | | |
| | | // delete the group of the client |
| | | $app->db->query("DELETE FROM sys_group WHERE client_id = $client_id"); |
| | | |
| | | // delete the sys user(s) of the client |
| | | $app->db->query("DELETE FROM sys_user WHERE client_id = $client_id"); |
| | | } |
| | | |
| | | } |
| | | } |
| | | |
| | | $page = new page_action; |
| | | $page->onDelete() |
| | | |
| | | ?> |
New file |
| | |
| | | <?php |
| | | /* |
| | | Copyright (c) 2005 - 2009, Till Brehm, projektfarm Gmbh |
| | | All rights reserved. |
| | | |
| | | Redistribution and use in source and binary forms, with or without modification, |
| | | are permitted provided that the following conditions are met: |
| | | |
| | | * Redistributions of source code must retain the above copyright notice, |
| | | this list of conditions and the following disclaimer. |
| | | * Redistributions in binary form must reproduce the above copyright notice, |
| | | this list of conditions and the following disclaimer in the documentation |
| | | and/or other materials provided with the distribution. |
| | | * Neither the name of ISPConfig nor the names of its contributors |
| | | may be used to endorse or promote products derived from this software without |
| | | specific prior written permission. |
| | | |
| | | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND |
| | | ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED |
| | | WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. |
| | | IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, |
| | | INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, |
| | | BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, |
| | | DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY |
| | | OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING |
| | | NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, |
| | | EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
| | | */ |
| | | |
| | | |
| | | /****************************************** |
| | | * Begin Form configuration |
| | | ******************************************/ |
| | | |
| | | $tform_def_file = "form/reseller.tform.php"; |
| | | |
| | | /****************************************** |
| | | * End Form configuration |
| | | ******************************************/ |
| | | |
| | | require_once('../../lib/config.inc.php'); |
| | | require_once('../../lib/app.inc.php'); |
| | | require_once('tools.inc.php'); |
| | | |
| | | //* Check permissions for module |
| | | $app->auth->check_module_permissions('client'); |
| | | |
| | | if($_SESSION["s"]["user"]["typ"] != 'admin') die('Access only for administrators.'); |
| | | |
| | | // Loading classes |
| | | $app->uses('tpl,tform,tform_actions'); |
| | | $app->load('tform_actions'); |
| | | |
| | | class page_action extends tform_actions { |
| | | |
| | | |
| | | function onShowNew() { |
| | | global $app, $conf; |
| | | |
| | | // we will check only users, not admins |
| | | if($_SESSION["s"]["user"]["typ"] == 'user') { |
| | | |
| | | // Get the limits of the client |
| | | $client_group_id = $_SESSION["s"]["user"]["default_group"]; |
| | | $client = $app->db->queryOneRecord("SELECT limit_client FROM sys_group, client WHERE sys_group.client_id = client.client_id and sys_group.groupid = $client_group_id"); |
| | | |
| | | // Check if the user may add another website. |
| | | if($client["limit_client"] >= 0) { |
| | | $tmp = $app->db->queryOneRecord("SELECT count(client_id) as number FROM client WHERE sys_groupid = $client_group_id"); |
| | | if($tmp["number"] >= $client["limit_client"]) { |
| | | $app->error($app->tform->wordbook["limit_client_txt"]); |
| | | } |
| | | } |
| | | } |
| | | |
| | | parent::onShowNew(); |
| | | } |
| | | |
| | | |
| | | function onSubmit() { |
| | | global $app, $conf; |
| | | |
| | | // we will check only users, not admins |
| | | if($_SESSION["s"]["user"]["typ"] == 'user' && $this->id == 0) { |
| | | |
| | | // Get the limits of the client |
| | | $client_group_id = $_SESSION["s"]["user"]["default_group"]; |
| | | $client = $app->db->queryOneRecord("SELECT limit_client FROM sys_group, client WHERE sys_group.client_id = client.client_id and sys_group.groupid = $client_group_id"); |
| | | |
| | | // Check if the user may add another website. |
| | | if($client["limit_client"] >= 0) { |
| | | $tmp = $app->db->queryOneRecord("SELECT count(client_id) as number FROM client WHERE sys_groupid = $client_group_id"); |
| | | if($tmp["number"] >= $client["limit_client"]) { |
| | | $app->error($app->tform->wordbook["limit_client_txt"]); |
| | | } |
| | | } |
| | | } |
| | | |
| | | parent::onSubmit(); |
| | | } |
| | | |
| | | |
| | | function onShowEnd() { |
| | | |
| | | global $app; |
| | | |
| | | $sql = "SELECT template_id,template_name FROM client_template WHERE template_type = 'a'"; |
| | | $tpls = $app->db->queryAllRecords($sql); |
| | | $option = ''; |
| | | $tpl = array(); |
| | | foreach($tpls as $item){ |
| | | $option .= '<option value="' . $item['template_id'] . '|' . $item['template_name'] . '">' . $item['template_name'] . '</option>'; |
| | | $tpl[$item['template_id']] = $item['template_name']; |
| | | } |
| | | $app->tpl->setVar('tpl_add_select',$option); |
| | | |
| | | $sql = "SELECT template_additional FROM client WHERE client_id = " . $this->id; |
| | | $result = $app->db->queryOneRecord($sql); |
| | | $tplAdd = explode("/", $result['template_additional']); |
| | | $text = ''; |
| | | foreach($tplAdd as $item){ |
| | | if (trim($item) != ''){ |
| | | if ($text != '') $text .= '<br />'; |
| | | $text .= $tpl[$item]; |
| | | } |
| | | } |
| | | |
| | | $app->tpl->setVar('template_additional_list', $text); |
| | | |
| | | parent::onShowEnd(); |
| | | |
| | | } |
| | | |
| | | /* |
| | | This function is called automatically right after |
| | | the data was successful inserted in the database. |
| | | */ |
| | | function onAfterInsert() { |
| | | global $app; |
| | | // Create the group for the reseller |
| | | $groupid = $app->db->datalogInsert('sys_group', "(name,description,client_id) VALUES ('".mysql_real_escape_string($this->dataRecord["username"])."','',".$this->id.")", 'groupid'); |
| | | $groups = $groupid; |
| | | |
| | | $username = $app->db->quote($this->dataRecord["username"]); |
| | | $password = $app->db->quote($this->dataRecord["password"]); |
| | | $modules = ISPC_INTERFACE_MODULES_ENABLED.',client'; |
| | | $startmodule = 'client'; |
| | | $usertheme = $app->db->quote($this->dataRecord["usertheme"]); |
| | | $type = 'user'; |
| | | $active = 1; |
| | | $language = $app->db->quote($this->dataRecord["language"]); |
| | | |
| | | // Create the controlpaneluser for the reseller |
| | | $sql = "INSERT INTO sys_user (username,passwort,modules,startmodule,app_theme,typ,active,language,groups,default_group,client_id) |
| | | VALUES ('$username',md5('$password'),'$modules','$startmodule','$usertheme','$type','$active','$language',$groups,$groupid,".$this->id.")"; |
| | | $app->db->query($sql); |
| | | |
| | | //* set the number of clients to 1 |
| | | $app->db->query("UPDATE client SET limit_client = 1 WHERE client_id = ".$this->id); |
| | | |
| | | /* If there is a client-template, process it */ |
| | | applyClientTemplates($this->id); |
| | | |
| | | parent::onAfterInsert(); |
| | | } |
| | | |
| | | |
| | | /* |
| | | This function is called automatically right after |
| | | the data was successful updated in the database. |
| | | */ |
| | | function onAfterUpdate() { |
| | | global $app; |
| | | |
| | | // username changed |
| | | if(isset($this->dataRecord['username']) && $this->dataRecord['username'] != '' && $this->oldDataRecord['username'] != $this->dataRecord['username']) { |
| | | $username = $app->db->quote($this->dataRecord["username"]); |
| | | $client_id = $this->id; |
| | | $sql = "UPDATE sys_user SET username = '$username' WHERE client_id = $client_id"; |
| | | $app->db->query($sql); |
| | | |
| | | $tmp = $app->db->queryOneRecord("SELECT * FROM sys_group WHERE client_id = $client_id"); |
| | | $app->db->datalogUpdate("sys_group", "name = '$username'", 'groupid', $tmp['groupid']); |
| | | unset($tmp); |
| | | } |
| | | |
| | | // password changed |
| | | if(isset($this->dataRecord["password"]) && $this->dataRecord["password"] != '') { |
| | | $password = $app->db->quote($this->dataRecord["password"]); |
| | | $client_id = $this->id; |
| | | $sql = "UPDATE sys_user SET passwort = md5('$password') WHERE client_id = $client_id"; |
| | | $app->db->query($sql); |
| | | } |
| | | |
| | | // reseller status changed |
| | | if(isset($this->dataRecord["limit_client"]) && $this->dataRecord["limit_client"] != $this->oldDataRecord["limit_client"]) { |
| | | $modules = ISPC_INTERFACE_MODULES_ENABLED.',client'; |
| | | $modules = $app->db->quote($modules); |
| | | $client_id = $this->id; |
| | | $sql = "UPDATE sys_user SET modules = '$modules' WHERE client_id = $client_id"; |
| | | $app->db->query($sql); |
| | | } |
| | | /* |
| | | * If there is a client-template, process it */ |
| | | applyClientTemplates($this->id); |
| | | |
| | | parent::onAfterUpdate(); |
| | | } |
| | | } |
| | | |
| | | $page = new page_action; |
| | | $page->onLoad(); |
| | | |
| | | ?> |
New file |
| | |
| | | <?php |
| | | /* |
| | | Copyright (c) 2005 - 2009, Till Brehm, projektfarm Gmbh |
| | | All rights reserved. |
| | | |
| | | Redistribution and use in source and binary forms, with or without modification, |
| | | are permitted provided that the following conditions are met: |
| | | |
| | | * Redistributions of source code must retain the above copyright notice, |
| | | this list of conditions and the following disclaimer. |
| | | * Redistributions in binary form must reproduce the above copyright notice, |
| | | this list of conditions and the following disclaimer in the documentation |
| | | and/or other materials provided with the distribution. |
| | | * Neither the name of ISPConfig nor the names of its contributors |
| | | may be used to endorse or promote products derived from this software without |
| | | specific prior written permission. |
| | | |
| | | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND |
| | | ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED |
| | | WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. |
| | | IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, |
| | | INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, |
| | | BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, |
| | | DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY |
| | | OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING |
| | | NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, |
| | | EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
| | | */ |
| | | |
| | | require_once('../../lib/config.inc.php'); |
| | | require_once('../../lib/app.inc.php'); |
| | | |
| | | /****************************************** |
| | | * Begin Form configuration |
| | | ******************************************/ |
| | | |
| | | $list_def_file = "list/reseller.list.php"; |
| | | |
| | | /****************************************** |
| | | * End Form configuration |
| | | ******************************************/ |
| | | |
| | | //* Check permissions for module |
| | | $app->auth->check_module_permissions('client'); |
| | | |
| | | if($_SESSION["s"]["user"]["typ"] != 'admin') die('Access only for administrators.'); |
| | | |
| | | $app->uses('listform_actions'); |
| | | |
| | | $app->listform_actions->SQLOrderBy = 'ORDER BY company_name, contact_name, client_id'; |
| | | $app->listform_actions->SQLExtWhere = "limit_client > 0"; |
| | | $app->listform_actions->onLoad(); |
| | | |
| | | |
| | | ?> |
| | |
| | | <input name="limit_dns_record" id="limit_dns_record" value="{tmpl_var name='limit_dns_record'}" size="10" maxlength="10" type="text" class="textInput formLengthLimit" /> |
| | | </div> |
| | | <div class="ctrlHolder"> |
| | | <label for="limit_client">{tmpl_var name='limit_client_txt'}</label> |
| | | <input name="limit_client" id="limit_client" value="{tmpl_var name='limit_client'}" size="10" maxlength="10" type="text" class="textInput formLengthLimit" /> |
| | | </div> |
| | | <div class="ctrlHolder"> |
| | | <label for="default_dbserver">{tmpl_var name='default_dbserver_txt'}</label> |
| | | <select name="default_dbserver" id="default_dbserver" class="selectInput"> |
| | | {tmpl_var name='default_dbserver'} |
| | |
| | | <label for="limit_database">{tmpl_var name='limit_database_txt'}</label> |
| | | <input name="limit_database" id="limit_database" value="{tmpl_var name='limit_database'}" size="10" maxlength="10" type="text" class="textInput formLengthLimit" /> |
| | | </div> |
| | | <div class="ctrlHolder"> |
| | | <label for="limit_cron">{tmpl_var name='limit_cron_txt'}</label> |
| | | <input name="limit_cron" id="limit_cron" value="{tmpl_var name='limit_cron'}" size="10" maxlength="10" type="text" class="textInput formLengthLimit" /> |
| | | </div> |
| | | <div class="ctrlHolder"> |
| | | <label for="limit_cron_type">{tmpl_var name='limit_cron_type_txt'}</label> |
| | | <select name="limit_cron_type" id="limit_cron_type" class="selectInput formLengthHalf"> |
| | | {tmpl_var name='limit_cron_type'} |
| | | </select> |
| | | </div> |
| | | <div class="ctrlHolder"> |
| | | <label for="limit_cron_frequency">{tmpl_var name='limit_cron_frequency_txt'}</label> |
| | | <input name="limit_cron_frequency" id="limit_cron_frequency" value="{tmpl_var name='limit_cron_frequency'}" size="10" maxlength="10" type="text" class="textInput formLengthLimit" /> |
| | | </div> |
| | | </fieldset> |
| | | |
| | | <input type="hidden" name="id" value="{tmpl_var name='id'}"> |
| | |
| | | <h2><tmpl_var name="list_head_txt"></h2>
|
| | | <p><tmpl_var name="list_desc_txt"></p>
|
| | |
|
| | | <div class="panel panel_client_template">
|
| | |
|
| | | <div class="pnl_formsarea">
|
| | | <fieldset class="inlineLabels"><legend>Limits</legend>
|
| | | <div class="ctrlHolder">
|
| | | <label for="limit_maildomain">{tmpl_var name='limit_maildomain_txt'}</label>
|
| | | <input name="limit_maildomain" id="limit_maildomain" value="{tmpl_var name='limit_maildomain'}" size="10" maxlength="10" type="text" class="textInput formLengthLimit" />
|
| | | </div>
|
| | | <div class="ctrlHolder">
|
| | | <label for="limit_mailbox">{tmpl_var name='limit_mailbox_txt'}</label>
|
| | | <input name="limit_mailbox" id="limit_mailbox" value="{tmpl_var name='limit_mailbox'}" size="10" maxlength="10" type="text" class="textInput formLengthLimit" />
|
| | | </div>
|
| | | <div class="ctrlHolder">
|
| | | <label for="limit_mailalias">{tmpl_var name='limit_mailalias_txt'}</label>
|
| | | <input name="limit_mailalias" id="limit_mailalias" value="{tmpl_var name='limit_mailalias'}" size="10" maxlength="10" type="text" class="textInput formLengthLimit" />
|
| | | </div>
|
| | | <div class="ctrlHolder">
|
| | | <label for="limit_mailforward">{tmpl_var name='limit_mailforward_txt'}</label>
|
| | | <input name="limit_mailforward" id="limit_mailforward" value="{tmpl_var name='limit_mailforward'}" size="10" maxlength="10" type="text" class="textInput formLengthLimit" />
|
| | | </div>
|
| | | <div class="ctrlHolder">
|
| | | <label for="limit_mailcatchall">{tmpl_var name='limit_mailcatchall_txt'}</label>
|
| | | <input name="limit_mailcatchall" id="limit_mailcatchall" value="{tmpl_var name='limit_mailcatchall'}" size="10" maxlength="10" type="text" class="textInput formLengthLimit" />
|
| | | </div>
|
| | | <div class="ctrlHolder">
|
| | | <label for="limit_mailrouting">{tmpl_var name='limit_mailrouting_txt'}</label>
|
| | | <input name="limit_mailrouting" id="limit_mailrouting" value="{tmpl_var name='limit_mailrouting'}" size="10" maxlength="10" type="text" class="textInput formLengthLimit" />
|
| | | </div>
|
| | | <div class="ctrlHolder">
|
| | | <label for="limit_mailfilter">{tmpl_var name='limit_mailfilter_txt'}</label>
|
| | | <input name="limit_mailfilter" id="limit_mailfilter" value="{tmpl_var name='limit_mailfilter'}" size="10" maxlength="10" type="text" class="textInput formLengthLimit" />
|
| | | </div>
|
| | | <div class="ctrlHolder">
|
| | | <label for="limit_fetchmail">{tmpl_var name='limit_fetchmail_txt'}</label>
|
| | | <input name="limit_fetchmail" id="limit_fetchmail" value="{tmpl_var name='limit_fetchmail'}" size="10" maxlength="10" type="text" class="textInput formLengthLimit" />
|
| | | </div>
|
| | | <div class="ctrlHolder">
|
| | | <label for="limit_mailquota">{tmpl_var name='limit_mailquota_txt'}</label>
|
| | | <input name="limit_mailquota" id="limit_mailquota" value="{tmpl_var name='limit_mailquota'}" size="10" maxlength="10" type="text" class="textInput formLengthLimit" />
|
| | | </div>
|
| | | <div class="ctrlHolder">
|
| | | <label for="limit_spamfilter_wblist">{tmpl_var name='limit_spamfilter_wblist_txt'}</label>
|
| | | <input name="limit_spamfilter_wblist" id="limit_spamfilter_wblist" value="{tmpl_var name='limit_spamfilter_wblist'}" size="10" maxlength="10" type="text" class="textInput formLengthLimit" />
|
| | | </div>
|
| | | <div class="ctrlHolder">
|
| | | <label for="limit_spamfilter_user">{tmpl_var name='limit_spamfilter_user_txt'}</label>
|
| | | <input name="limit_spamfilter_user" id="limit_spamfilter_user" value="{tmpl_var name='limit_spamfilter_user'}" size="10" maxlength="10" type="text" class="textInput formLengthLimit" />
|
| | | </div>
|
| | | <div class="ctrlHolder">
|
| | | <label for="limit_spamfilter_policy">{tmpl_var name='limit_spamfilter_policy_txt'}</label>
|
| | | <input name="limit_spamfilter_policy" id="limit_spamfilter_policy" value="{tmpl_var name='limit_spamfilter_policy'}" size="10" maxlength="10" type="text" class="textInput formLengthLimit" />
|
| | | </div>
|
| | | <div class="ctrlHolder">
|
| | | <label for="limit_web_domain">{tmpl_var name='limit_web_domain_txt'}</label>
|
| | | <input name="limit_web_domain" id="limit_web_domain" value="{tmpl_var name='limit_web_domain'}" size="10" maxlength="10" type="text" class="textInput formLengthLimit" />
|
| | | </div>
|
| | | <div class="ctrlHolder">
|
| | | <label for="limit_web_aliasdomain">{tmpl_var name='limit_web_aliasdomain_txt'}</label>
|
| | | <input name="limit_web_aliasdomain" id="limit_web_aliasdomain" value="{tmpl_var name='limit_web_aliasdomain'}" size="10" maxlength="10" type="text" class="textInput formLengthLimit" />
|
| | | </div>
|
| | | <div class="ctrlHolder">
|
| | | <label for="limit_web_subdomain">{tmpl_var name='limit_web_subdomain_txt'}</label>
|
| | | <input name="limit_web_subdomain" id="limit_web_subdomain" value="{tmpl_var name='limit_web_subdomain'}" size="10" maxlength="10" type="text" class="textInput formLengthLimit" />
|
| | | </div>
|
| | | <div class="ctrlHolder">
|
| | | <label for="limit_ftp_user">{tmpl_var name='limit_ftp_user_txt'}</label>
|
| | | <input name="limit_ftp_user" id="limit_ftp_user" value="{tmpl_var name='limit_ftp_user'}" size="10" maxlength="10" type="text" class="textInput formLengthLimit" />
|
| | | </div>
|
| | | <div class="ctrlHolder">
|
| | | <label for="limit_shell_user">{tmpl_var name='limit_shell_user_txt'}</label>
|
| | | <input name="limit_shell_user" id="limit_shell_user" value="{tmpl_var name='limit_shell_user'}" size="10" maxlength="10" type="text" class="textInput formLengthLimit" />
|
| | | </div>
|
| | | <div class="ctrlHolder">
|
| | | <label for="limit_dns_zone">{tmpl_var name='limit_dns_zone_txt'}</label>
|
| | | <input name="limit_dns_zone" id="limit_dns_zone" value="{tmpl_var name='limit_dns_zone'}" size="10" maxlength="10" type="text" class="textInput formLengthLimit" />
|
| | | </div>
|
| | | <div class="ctrlHolder">
|
| | | <label for="limit_dns_record">{tmpl_var name='limit_dns_record_txt'}</label>
|
| | | <input name="limit_dns_record" id="limit_dns_record" value="{tmpl_var name='limit_dns_record'}" size="10" maxlength="10" type="text" class="textInput formLengthLimit" />
|
| | | </div>
|
| | | <div class="ctrlHolder">
|
| | | <label for="limit_client">{tmpl_var name='limit_client_txt'}</label>
|
| | | <input name="limit_client" id="limit_client" value="{tmpl_var name='limit_client'}" size="10" maxlength="10" type="text" class="textInput formLengthLimit" />
|
| | | </div>
|
| | | <div class="ctrlHolder">
|
| | | <label for="limit_database">{tmpl_var name='limit_database_txt'}</label>
|
| | | <input name="limit_database" id="limit_database" value="{tmpl_var name='limit_database'}" size="10" maxlength="10" type="text" class="textInput formLengthLimit" />
|
| | | </div>
|
| | | </fieldset>
|
| | |
|
| | | <input type="hidden" name="id" value="{tmpl_var name='id'}">
|
| | |
|
| | | <div class="buttonHolder buttons">
|
| | | <button class="positive iconstxt icoPositive" type="button" value="{tmpl_var name='btn_save_txt'}" onClick="submitForm('pageForm','client/client_template_edit.php');"><span>{tmpl_var name='btn_save_txt'}</span></button>
|
| | | <button class="negative iconstxt icoNegative" type="button" value="{tmpl_var name='btn_cancel_txt'}" onClick="loadContent('client/client_template_list.php');"><span>{tmpl_var name='btn_cancel_txt'}</span></button>
|
| | | </div>
|
| | | </div>
|
| | | |
| | | </div>
|
| | | <h2><tmpl_var name="list_head_txt"></h2> |
| | | <p><tmpl_var name="list_desc_txt"></p> |
| | | |
| | | <div class="panel panel_client_template"> |
| | | |
| | | <div class="pnl_formsarea"> |
| | | <fieldset class="inlineLabels"><legend>Limits</legend> |
| | | <div class="ctrlHolder"> |
| | | <label for="limit_maildomain">{tmpl_var name='limit_maildomain_txt'}</label> |
| | | <input name="limit_maildomain" id="limit_maildomain" value="{tmpl_var name='limit_maildomain'}" size="10" maxlength="10" type="text" class="textInput formLengthLimit" /> |
| | | </div> |
| | | <div class="ctrlHolder"> |
| | | <label for="limit_mailbox">{tmpl_var name='limit_mailbox_txt'}</label> |
| | | <input name="limit_mailbox" id="limit_mailbox" value="{tmpl_var name='limit_mailbox'}" size="10" maxlength="10" type="text" class="textInput formLengthLimit" /> |
| | | </div> |
| | | <div class="ctrlHolder"> |
| | | <label for="limit_mailalias">{tmpl_var name='limit_mailalias_txt'}</label> |
| | | <input name="limit_mailalias" id="limit_mailalias" value="{tmpl_var name='limit_mailalias'}" size="10" maxlength="10" type="text" class="textInput formLengthLimit" /> |
| | | </div> |
| | | <div class="ctrlHolder"> |
| | | <label for="limit_mailforward">{tmpl_var name='limit_mailforward_txt'}</label> |
| | | <input name="limit_mailforward" id="limit_mailforward" value="{tmpl_var name='limit_mailforward'}" size="10" maxlength="10" type="text" class="textInput formLengthLimit" /> |
| | | </div> |
| | | <div class="ctrlHolder"> |
| | | <label for="limit_mailcatchall">{tmpl_var name='limit_mailcatchall_txt'}</label> |
| | | <input name="limit_mailcatchall" id="limit_mailcatchall" value="{tmpl_var name='limit_mailcatchall'}" size="10" maxlength="10" type="text" class="textInput formLengthLimit" /> |
| | | </div> |
| | | <div class="ctrlHolder"> |
| | | <label for="limit_mailrouting">{tmpl_var name='limit_mailrouting_txt'}</label> |
| | | <input name="limit_mailrouting" id="limit_mailrouting" value="{tmpl_var name='limit_mailrouting'}" size="10" maxlength="10" type="text" class="textInput formLengthLimit" /> |
| | | </div> |
| | | <div class="ctrlHolder"> |
| | | <label for="limit_mailfilter">{tmpl_var name='limit_mailfilter_txt'}</label> |
| | | <input name="limit_mailfilter" id="limit_mailfilter" value="{tmpl_var name='limit_mailfilter'}" size="10" maxlength="10" type="text" class="textInput formLengthLimit" /> |
| | | </div> |
| | | <div class="ctrlHolder"> |
| | | <label for="limit_fetchmail">{tmpl_var name='limit_fetchmail_txt'}</label> |
| | | <input name="limit_fetchmail" id="limit_fetchmail" value="{tmpl_var name='limit_fetchmail'}" size="10" maxlength="10" type="text" class="textInput formLengthLimit" /> |
| | | </div> |
| | | <div class="ctrlHolder"> |
| | | <label for="limit_mailquota">{tmpl_var name='limit_mailquota_txt'}</label> |
| | | <input name="limit_mailquota" id="limit_mailquota" value="{tmpl_var name='limit_mailquota'}" size="10" maxlength="10" type="text" class="textInput formLengthLimit" /> |
| | | </div> |
| | | <div class="ctrlHolder"> |
| | | <label for="limit_spamfilter_wblist">{tmpl_var name='limit_spamfilter_wblist_txt'}</label> |
| | | <input name="limit_spamfilter_wblist" id="limit_spamfilter_wblist" value="{tmpl_var name='limit_spamfilter_wblist'}" size="10" maxlength="10" type="text" class="textInput formLengthLimit" /> |
| | | </div> |
| | | <div class="ctrlHolder"> |
| | | <label for="limit_spamfilter_user">{tmpl_var name='limit_spamfilter_user_txt'}</label> |
| | | <input name="limit_spamfilter_user" id="limit_spamfilter_user" value="{tmpl_var name='limit_spamfilter_user'}" size="10" maxlength="10" type="text" class="textInput formLengthLimit" /> |
| | | </div> |
| | | <div class="ctrlHolder"> |
| | | <label for="limit_spamfilter_policy">{tmpl_var name='limit_spamfilter_policy_txt'}</label> |
| | | <input name="limit_spamfilter_policy" id="limit_spamfilter_policy" value="{tmpl_var name='limit_spamfilter_policy'}" size="10" maxlength="10" type="text" class="textInput formLengthLimit" /> |
| | | </div> |
| | | <div class="ctrlHolder"> |
| | | <label for="limit_web_domain">{tmpl_var name='limit_web_domain_txt'}</label> |
| | | <input name="limit_web_domain" id="limit_web_domain" value="{tmpl_var name='limit_web_domain'}" size="10" maxlength="10" type="text" class="textInput formLengthLimit" /> |
| | | </div> |
| | | <div class="ctrlHolder"> |
| | | <label for="limit_web_aliasdomain">{tmpl_var name='limit_web_aliasdomain_txt'}</label> |
| | | <input name="limit_web_aliasdomain" id="limit_web_aliasdomain" value="{tmpl_var name='limit_web_aliasdomain'}" size="10" maxlength="10" type="text" class="textInput formLengthLimit" /> |
| | | </div> |
| | | <div class="ctrlHolder"> |
| | | <label for="limit_web_subdomain">{tmpl_var name='limit_web_subdomain_txt'}</label> |
| | | <input name="limit_web_subdomain" id="limit_web_subdomain" value="{tmpl_var name='limit_web_subdomain'}" size="10" maxlength="10" type="text" class="textInput formLengthLimit" /> |
| | | </div> |
| | | <div class="ctrlHolder"> |
| | | <label for="limit_ftp_user">{tmpl_var name='limit_ftp_user_txt'}</label> |
| | | <input name="limit_ftp_user" id="limit_ftp_user" value="{tmpl_var name='limit_ftp_user'}" size="10" maxlength="10" type="text" class="textInput formLengthLimit" /> |
| | | </div> |
| | | <div class="ctrlHolder"> |
| | | <label for="limit_shell_user">{tmpl_var name='limit_shell_user_txt'}</label> |
| | | <input name="limit_shell_user" id="limit_shell_user" value="{tmpl_var name='limit_shell_user'}" size="10" maxlength="10" type="text" class="textInput formLengthLimit" /> |
| | | </div> |
| | | <div class="ctrlHolder"> |
| | | <label for="limit_dns_zone">{tmpl_var name='limit_dns_zone_txt'}</label> |
| | | <input name="limit_dns_zone" id="limit_dns_zone" value="{tmpl_var name='limit_dns_zone'}" size="10" maxlength="10" type="text" class="textInput formLengthLimit" /> |
| | | </div> |
| | | <div class="ctrlHolder"> |
| | | <label for="limit_dns_record">{tmpl_var name='limit_dns_record_txt'}</label> |
| | | <input name="limit_dns_record" id="limit_dns_record" value="{tmpl_var name='limit_dns_record'}" size="10" maxlength="10" type="text" class="textInput formLengthLimit" /> |
| | | </div> |
| | | <div class="ctrlHolder"> |
| | | <label for="limit_database">{tmpl_var name='limit_database_txt'}</label> |
| | | <input name="limit_database" id="limit_database" value="{tmpl_var name='limit_database'}" size="10" maxlength="10" type="text" class="textInput formLengthLimit" /> |
| | | </div> |
| | | <div class="ctrlHolder"> |
| | | <label for="limit_cron">{tmpl_var name='limit_cron_txt'}</label> |
| | | <input name="limit_cron" id="limit_cron" value="{tmpl_var name='limit_cron'}" size="10" maxlength="10" type="text" class="textInput formLengthLimit" /> |
| | | </div> |
| | | <div class="ctrlHolder"> |
| | | <label for="limit_cron_type">{tmpl_var name='limit_cron_type_txt'}</label> |
| | | <select name="limit_cron_type" id="limit_cron_type" class="selectInput formLengthHalf"> |
| | | {tmpl_var name='limit_cron_type'} |
| | | </select> |
| | | </div> |
| | | <div class="ctrlHolder"> |
| | | <label for="limit_cron_frequency">{tmpl_var name='limit_cron_frequency_txt'}</label> |
| | | <input name="limit_cron_frequency" id="limit_cron_frequency" value="{tmpl_var name='limit_cron_frequency'}" size="10" maxlength="10" type="text" class="textInput formLengthLimit" /> |
| | | </div> |
| | | </fieldset> |
| | | |
| | | <input type="hidden" name="id" value="{tmpl_var name='id'}"> |
| | | |
| | | <div class="buttonHolder buttons"> |
| | | <button class="positive iconstxt icoPositive" type="button" value="{tmpl_var name='btn_save_txt'}" onClick="submitForm('pageForm','client/client_template_edit.php');"><span>{tmpl_var name='btn_save_txt'}</span></button> |
| | | <button class="negative iconstxt icoNegative" type="button" value="{tmpl_var name='btn_cancel_txt'}" onClick="loadContent('client/client_template_list.php');"><span>{tmpl_var name='btn_cancel_txt'}</span></button> |
| | | </div> |
| | | </div> |
| | | |
| | | </div> |
New file |
| | |
| | | <h2><tmpl_var name="list_head_txt"></h2> |
| | | <p><tmpl_var name="list_desc_txt"></p> |
| | | |
| | | <div class="panel panel_client"> |
| | | |
| | | <div class="pnl_formsarea"> |
| | | <fieldset class="inlineLabels"><legend>Address</legend> |
| | | <div class="ctrlHolder"> |
| | | <label for="company_name">{tmpl_var name='company_name_txt'}</label> |
| | | <input name="company_name" id="company_name" value="{tmpl_var name='company_name'}" size="30" maxlength="255" type="text" class="textInput" /> |
| | | </div> |
| | | <div class="ctrlHolder"> |
| | | <label for="contact_name">{tmpl_var name='contact_name_txt'}</label> |
| | | <input name="contact_name" id="contact_name" value="{tmpl_var name='contact_name'}" size="30" maxlength="255" type="text" class="textInput" /> |
| | | </div> |
| | | <div class="ctrlHolder"> |
| | | <label for="username">{tmpl_var name='username_txt'}</label> |
| | | <input name="username" id="username" value="{tmpl_var name='username'}" size="30" maxlength="255" type="text" class="textInput" /> |
| | | </div> |
| | | <div class="ctrlHolder"> |
| | | <label for="password">{tmpl_var name='password_txt'}</label> |
| | | <input name="password" id="password" value="{tmpl_var name='password'}" size="30" maxlength="255" type="password" class="textInput" onkeyup="pass_check(this.value)" /> |
| | | </div> |
| | | <div class="ctrlHolder"> |
| | | <p class="label">{tmpl_var name='password_strength_txt'}</p> |
| | | <div id="passBar"></div> |
| | | <p class="formHint"><span id="passText"> </span></p> |
| | | </div> |
| | | <div class="ctrlHolder"> |
| | | <label for="language">{tmpl_var name='language_txt'}</label> |
| | | <select name="language" id="language" class="selectInput withicons"> |
| | | {tmpl_var name='language'} |
| | | </select> |
| | | </div> |
| | | <div class="ctrlHolder"> |
| | | <label for="usertheme">{tmpl_var name='usertheme_txt'}</label> |
| | | <select name="usertheme" id="usertheme" class="selectInput"> |
| | | {tmpl_var name='usertheme'} |
| | | </select> |
| | | </div> |
| | | <div class="ctrlHolder"> |
| | | <label for="street">{tmpl_var name='street_txt'}</label> |
| | | <input name="street" id="street" value="{tmpl_var name='street'}" size="30" maxlength="255" type="text" class="textInput" /> |
| | | </div> |
| | | <div class="ctrlHolder"> |
| | | <label for="zip">{tmpl_var name='zip_txt'}</label> |
| | | <input name="zip" id="zip" value="{tmpl_var name='zip'}" size="10" maxlength="255" type="text" class="textInput" /> |
| | | </div> |
| | | <div class="ctrlHolder"> |
| | | <label for="city">{tmpl_var name='city_txt'}</label> |
| | | <input name="city" id="city" value="{tmpl_var name='city'}" size="30" maxlength="255" type="text" class="textInput" /> |
| | | </div> |
| | | <div class="ctrlHolder"> |
| | | <label for="state">{tmpl_var name='state_txt'}</label> |
| | | <input name="state" id="state" value="{tmpl_var name='state'}" size="30" maxlength="255" type="text" class="textInput" /> |
| | | </div> |
| | | <div class="ctrlHolder"> |
| | | <label for="country">{tmpl_var name='country_txt'}</label> |
| | | <select name="country" id="country" class="selectInput withicons"> |
| | | {tmpl_var name='country'} |
| | | </select> |
| | | </div> |
| | | <div class="ctrlHolder"> |
| | | <label for="telephone">{tmpl_var name='telephone_txt'}</label> |
| | | <input name="telephone" id="telephone" value="{tmpl_var name='telephone'}" size="30" maxlength="255" type="text" class="textInput" /> |
| | | </div> |
| | | <div class="ctrlHolder"> |
| | | <label for="mobile">{tmpl_var name='mobile_txt'}</label> |
| | | <input name="mobile" id="mobile" value="{tmpl_var name='mobile'}" size="30" maxlength="255" type="text" class="textInput" /> |
| | | </div> |
| | | <div class="ctrlHolder"> |
| | | <label for="fax">{tmpl_var name='fax_txt'}</label> |
| | | <input name="fax" id="fax" value="{tmpl_var name='fax'}" size="30" maxlength="255" type="text" class="textInput" /> |
| | | </div> |
| | | <div class="ctrlHolder"> |
| | | <label for="email">{tmpl_var name='email_txt'}</label> |
| | | <input name="email" id="email" value="{tmpl_var name='email'}" size="30" maxlength="255" type="text" class="textInput" /> |
| | | </div> |
| | | <div class="ctrlHolder"> |
| | | <label for="internet">{tmpl_var name='internet_txt'}</label> |
| | | <input name="internet" id="internet" value="{tmpl_var name='internet'}" size="30" maxlength="255" type="text" class="textInput" /> |
| | | </div> |
| | | <div class="ctrlHolder"> |
| | | <label for="icq">{tmpl_var name='icq_txt'}</label> |
| | | <input name="icq" id="icq" value="{tmpl_var name='icq'}" size="30" maxlength="255" type="text" class="textInput" /> |
| | | </div> |
| | | <div class="ctrlHolder"> |
| | | <label for="notes">{tmpl_var name='notes_txt'}</label> |
| | | <textarea name="notes" id="notes" rows='10' cols='30'>{tmpl_var name='notes'}</textarea> |
| | | </div> |
| | | </fieldset> |
| | | |
| | | <input type="hidden" name="id" value="{tmpl_var name='id'}"> |
| | | |
| | | <div class="buttonHolder buttons"> |
| | | <button class="positive iconstxt icoPositive" type="button" value="{tmpl_var name='btn_save_txt'}" onClick="submitForm('pageForm','client/reseller_edit.php');"><span>{tmpl_var name='btn_save_txt'}</span></button> |
| | | <button class="negative iconstxt icoNegative" type="button" value="{tmpl_var name='btn_cancel_txt'}" onClick="loadContent('client/reseller_list.php');"><span>{tmpl_var name='btn_cancel_txt'}</span></button> |
| | | </div> |
| | | </div> |
| | | |
| | | </div> |
New file |
| | |
| | | <h2><tmpl_var name="list_head_txt"></h2> |
| | | <p><tmpl_var name="list_desc_txt"></p> |
| | | |
| | | <div class="panel panel_client"> |
| | | |
| | | <div class="pnl_formsarea"> |
| | | <fieldset class="inlineLabels"><legend>Limits</legend> |
| | | <tmpl_if name="is_admin"> |
| | | <div class="ctrlHolder"> |
| | | <label for="template_master">{tmpl_var name='template_master_txt'}</label> |
| | | <select name="template_master" id="template_master" class="selectInput"> |
| | | {tmpl_var name='template_master'} |
| | | </select> |
| | | </div> |
| | | <div class="ctrlHolder"> |
| | | <label for="template_additional">{tmpl_var name='template_additional_txt'}</label> |
| | | <select name="tpl_add_select" id="tpl_add_select" class="selectInput"> |
| | | {tmpl_var name='tpl_add_select'} |
| | | </select> |
| | | <span id="template_additional_list">{tmpl_var name='template_additional_list'}</span> |
| | | <input type="hidden" id="template_additional" name="template_additional" value="{tmpl_var name='template_additional'}"> |
| | | </div> |
| | | <div class="ctrlHolder"> |
| | | |
| | | </div> |
| | | </tmpl_if> |
| | | <div class="ctrlHolder"> |
| | | <label for="default_mailserver">{tmpl_var name='default_mailserver_txt'}</label> |
| | | <select name="default_mailserver" id="default_mailserver" class="selectInput"> |
| | | {tmpl_var name='default_mailserver'} |
| | | </select> |
| | | </div> |
| | | <div class="ctrlHolder"> |
| | | <label for="limit_maildomain">{tmpl_var name='limit_maildomain_txt'}</label> |
| | | <input name="limit_maildomain" id="limit_maildomain" value="{tmpl_var name='limit_maildomain'}" size="10" maxlength="10" type="text" class="textInput formLengthLimit" /> |
| | | </div> |
| | | <div class="ctrlHolder"> |
| | | <label for="limit_mailbox">{tmpl_var name='limit_mailbox_txt'}</label> |
| | | <input name="limit_mailbox" id="limit_mailbox" value="{tmpl_var name='limit_mailbox'}" size="10" maxlength="10" type="text" class="textInput formLengthLimit" /> |
| | | </div> |
| | | <div class="ctrlHolder"> |
| | | <label for="limit_mailalias">{tmpl_var name='limit_mailalias_txt'}</label> |
| | | <input name="limit_mailalias" id="limit_mailalias" value="{tmpl_var name='limit_mailalias'}" size="10" maxlength="10" type="text" class="textInput formLengthLimit" /> |
| | | </div> |
| | | <div class="ctrlHolder"> |
| | | <label for="limit_mailforward">{tmpl_var name='limit_mailforward_txt'}</label> |
| | | <input name="limit_mailforward" id="limit_mailforward" value="{tmpl_var name='limit_mailforward'}" size="10" maxlength="10" type="text" class="textInput formLengthLimit" /> |
| | | </div> |
| | | <div class="ctrlHolder"> |
| | | <label for="limit_mailcatchall">{tmpl_var name='limit_mailcatchall_txt'}</label> |
| | | <input name="limit_mailcatchall" id="limit_mailcatchall" value="{tmpl_var name='limit_mailcatchall'}" size="10" maxlength="10" type="text" class="textInput formLengthLimit" /> |
| | | </div> |
| | | <div class="ctrlHolder"> |
| | | <label for="limit_mailrouting">{tmpl_var name='limit_mailrouting_txt'}</label> |
| | | <input name="limit_mailrouting" id="limit_mailrouting" value="{tmpl_var name='limit_mailrouting'}" size="10" maxlength="10" type="text" class="textInput formLengthLimit" /> |
| | | </div> |
| | | <div class="ctrlHolder"> |
| | | <label for="limit_mailfilter">{tmpl_var name='limit_mailfilter_txt'}</label> |
| | | <input name="limit_mailfilter" id="limit_mailfilter" value="{tmpl_var name='limit_mailfilter'}" size="10" maxlength="10" type="text" class="textInput formLengthLimit" /> |
| | | </div> |
| | | <div class="ctrlHolder"> |
| | | <label for="limit_fetchmail">{tmpl_var name='limit_fetchmail_txt'}</label> |
| | | <input name="limit_fetchmail" id="limit_fetchmail" value="{tmpl_var name='limit_fetchmail'}" size="10" maxlength="10" type="text" class="textInput formLengthLimit" /> |
| | | </div> |
| | | <div class="ctrlHolder"> |
| | | <label for="limit_mailquota">{tmpl_var name='limit_mailquota_txt'}</label> |
| | | <input name="limit_mailquota" id="limit_mailquota" value="{tmpl_var name='limit_mailquota'}" size="10" maxlength="10" type="text" class="textInput formLengthLimit" /> MB |
| | | </div> |
| | | <div class="ctrlHolder"> |
| | | <label for="limit_spamfilter_wblist">{tmpl_var name='limit_spamfilter_wblist_txt'}</label> |
| | | <input name="limit_spamfilter_wblist" id="limit_spamfilter_wblist" value="{tmpl_var name='limit_spamfilter_wblist'}" size="10" maxlength="10" type="text" class="textInput formLengthLimit" /> |
| | | </div> |
| | | <div class="ctrlHolder"> |
| | | <label for="limit_spamfilter_user">{tmpl_var name='limit_spamfilter_user_txt'}</label> |
| | | <input name="limit_spamfilter_user" id="limit_spamfilter_user" value="{tmpl_var name='limit_spamfilter_user'}" size="10" maxlength="10" type="text" class="textInput formLengthLimit" /> |
| | | </div> |
| | | <div class="ctrlHolder"> |
| | | <label for="limit_spamfilter_policy">{tmpl_var name='limit_spamfilter_policy_txt'}</label> |
| | | <input name="limit_spamfilter_policy" id="limit_spamfilter_policy" value="{tmpl_var name='limit_spamfilter_policy'}" size="10" maxlength="10" type="text" class="textInput formLengthLimit" /> |
| | | </div> |
| | | <div class="ctrlHolder"> |
| | | <label for="default_webserver">{tmpl_var name='default_webserver_txt'}</label> |
| | | <select name="default_webserver" id="default_webserver" class="selectInput"> |
| | | {tmpl_var name='default_webserver'} |
| | | </select> |
| | | </div> |
| | | <div class="ctrlHolder"> |
| | | <label for="limit_web_domain">{tmpl_var name='limit_web_domain_txt'}</label> |
| | | <input name="limit_web_domain" id="limit_web_domain" value="{tmpl_var name='limit_web_domain'}" size="10" maxlength="10" type="text" class="textInput formLengthLimit" /> |
| | | </div> |
| | | <div class="ctrlHolder"> |
| | | <p class="label">{tmpl_var name='web_php_options_txt'}</p> |
| | | <div class="multiField"> |
| | | {tmpl_var name='web_php_options'} |
| | | </div> |
| | | </div> |
| | | <div class="ctrlHolder"> |
| | | <label for="limit_web_aliasdomain">{tmpl_var name='limit_web_aliasdomain_txt'}</label> |
| | | <input name="limit_web_aliasdomain" id="limit_web_aliasdomain" value="{tmpl_var name='limit_web_aliasdomain'}" size="10" maxlength="10" type="text" class="textInput formLengthLimit" /> |
| | | </div> |
| | | <div class="ctrlHolder"> |
| | | <label for="limit_web_subdomain">{tmpl_var name='limit_web_subdomain_txt'}</label> |
| | | <input name="limit_web_subdomain" id="limit_web_subdomain" value="{tmpl_var name='limit_web_subdomain'}" size="10" maxlength="10" type="text" class="textInput formLengthLimit" /> |
| | | </div> |
| | | <div class="ctrlHolder"> |
| | | <label for="limit_ftp_user">{tmpl_var name='limit_ftp_user_txt'}</label> |
| | | <input name="limit_ftp_user" id="limit_ftp_user" value="{tmpl_var name='limit_ftp_user'}" size="10" maxlength="10" type="text" class="textInput formLengthLimit" /> |
| | | </div> |
| | | <div class="ctrlHolder"> |
| | | <label for="limit_shell_user">{tmpl_var name='limit_shell_user_txt'}</label> |
| | | <input name="limit_shell_user" id="limit_shell_user" value="{tmpl_var name='limit_shell_user'}" size="10" maxlength="10" type="text" class="textInput formLengthLimit" /> |
| | | </div> |
| | | <div class="ctrlHolder"> |
| | | <p class="label">{tmpl_var name='ssh_chroot_txt'}</p> |
| | | <div class="multiField"> |
| | | {tmpl_var name='ssh_chroot'} |
| | | </div> |
| | | </div> |
| | | <div class="ctrlHolder"> |
| | | <label for="default_dnsserver">{tmpl_var name='default_dnsserver_txt'}</label> |
| | | <select name="default_dnsserver" id="default_dnsserver" class="selectInput"> |
| | | {tmpl_var name='default_dnsserver'} |
| | | </select> |
| | | </div> |
| | | <div class="ctrlHolder"> |
| | | <label for="limit_dns_zone">{tmpl_var name='limit_dns_zone_txt'}</label> |
| | | <input name="limit_dns_zone" id="limit_dns_zone" value="{tmpl_var name='limit_dns_zone'}" size="10" maxlength="10" type="text" class="textInput formLengthLimit" /> |
| | | </div> |
| | | <div class="ctrlHolder"> |
| | | <label for="limit_dns_record">{tmpl_var name='limit_dns_record_txt'}</label> |
| | | <input name="limit_dns_record" id="limit_dns_record" value="{tmpl_var name='limit_dns_record'}" size="10" maxlength="10" type="text" class="textInput formLengthLimit" /> |
| | | </div> |
| | | <div class="ctrlHolder"> |
| | | <label for="limit_client">{tmpl_var name='limit_client_txt'}</label> |
| | | <input name="limit_client" id="limit_client" value="{tmpl_var name='limit_client'}" size="10" maxlength="10" type="text" class="textInput formLengthLimit" /> |
| | | </div> |
| | | <div class="ctrlHolder"> |
| | | <label for="default_dbserver">{tmpl_var name='default_dbserver_txt'}</label> |
| | | <select name="default_dbserver" id="default_dbserver" class="selectInput"> |
| | | {tmpl_var name='default_dbserver'} |
| | | </select> |
| | | </div> |
| | | <div class="ctrlHolder"> |
| | | <label for="limit_database">{tmpl_var name='limit_database_txt'}</label> |
| | | <input name="limit_database" id="limit_database" value="{tmpl_var name='limit_database'}" size="10" maxlength="10" type="text" class="textInput formLengthLimit" /> |
| | | </div> |
| | | <div class="ctrlHolder"> |
| | | <label for="limit_cron">{tmpl_var name='limit_cron_txt'}</label> |
| | | <input name="limit_cron" id="limit_cron" value="{tmpl_var name='limit_cron'}" size="10" maxlength="10" type="text" class="textInput formLengthLimit" /> |
| | | </div> |
| | | <div class="ctrlHolder"> |
| | | <label for="limit_cron_type">{tmpl_var name='limit_cron_type_txt'}</label> |
| | | <select name="limit_cron_type" id="limit_cron_type" class="selectInput formLengthHalf"> |
| | | {tmpl_var name='limit_cron_type'} |
| | | </select> |
| | | </div> |
| | | <div class="ctrlHolder"> |
| | | <label for="limit_cron_frequency">{tmpl_var name='limit_cron_frequency_txt'}</label> |
| | | <input name="limit_cron_frequency" id="limit_cron_frequency" value="{tmpl_var name='limit_cron_frequency'}" size="10" maxlength="10" type="text" class="textInput formLengthLimit" /> |
| | | </div> |
| | | </fieldset> |
| | | |
| | | <input type="hidden" name="id" value="{tmpl_var name='id'}"> |
| | | |
| | | <div class="buttonHolder buttons"> |
| | | <button class="positive iconstxt icoPositive" type="button" value="{tmpl_var name='btn_save_txt'}" onClick="submitForm('pageForm','client/reseller_edit.php');"><span>{tmpl_var name='btn_save_txt'}</span></button> |
| | | <button class="negative iconstxt icoNegative" type="button" value="{tmpl_var name='btn_cancel_txt'}" onClick="loadContent('client/reseller_list.php');"><span>{tmpl_var name='btn_cancel_txt'}</span></button> |
| | | </div> |
| | | </div> |
| | | |
| | | </div> |
New file |
| | |
| | | <h2><tmpl_var name="list_head_txt"></h2> |
| | | <p><tmpl_var name="list_desc_txt"></p> |
| | | |
| | | <div class="panel panel_list_clients"> |
| | | |
| | | <div class="pnl_toolsarea"> |
| | | <fieldset><legend>Tools</legend> |
| | | <div class="buttons"> |
| | | <button class="iconstxt icoAdd" type="button" onClick="loadContent('client/reseller_edit.php');"> |
| | | <span>{tmpl_var name="add_new_record_txt"}</span> |
| | | </button> |
| | | </div> |
| | | </fieldset> |
| | | </div> |
| | | |
| | | <div class="pnl_listarea"> |
| | | <fieldset><legend><tmpl_var name="list_head_txt"></legend> |
| | | <table class="list"> |
| | | <thead> |
| | | <tr> |
| | | <th class="tbl_col_client_id" scope="col"><tmpl_var name="client_id_txt"></th> |
| | | <th class="tbl_col_company_name" scope="col"><tmpl_var name="company_name_txt"></th> |
| | | <th class="tbl_col_contact_name" scope="col"><tmpl_var name="contact_name_txt"></th> |
| | | <th class="tbl_col_city" scope="col"><tmpl_var name="city_txt"></th> |
| | | <th class="tbl_col_country" scope="col"><tmpl_var name="country_txt"></th> |
| | | <th class="tbl_col_country" scope="col"> </th> |
| | | </tr> |
| | | <tr> |
| | | <td class="tbl_col_client_id"><input type="text" name="search_client_id" value="{tmpl_var name='search_client_id'}" /></td> |
| | | <td class="tbl_col_company_name"><input type="text" name="search_company_name" value="{tmpl_var name='search_company_name'}" /></td> |
| | | <td class="tbl_col_contact_name"><input type="text" name="search_contact_name" value="{tmpl_var name='search_contact_name'}" /></td> |
| | | <td class="tbl_col_city"><input type="text" name="search_city" value="{tmpl_var name='search_city'}" /></td> |
| | | <td class="tbl_col_country"><input type="text" name="search_country" value="{tmpl_var name='search_country'}" /></td> |
| | | <td class="tbl_col_buttons"><div class="buttons"><button type="button" class="icons16 icoFilter" name="Filter" id="Filter" value="{tmpl_var name="filter_txt"}" onClick="submitForm('pageForm','client/reseller_list.php');"><span>{tmpl_var name="filter_txt"}</span></button></div></td> |
| | | </tr> |
| | | </thead> |
| | | <tbody> |
| | | <tmpl_loop name="records"> |
| | | <tr class="tbl_row_<tmpl_if name='__EVEN__'}even<tmpl_else>uneven</tmpl_if>"> |
| | | <td class="tbl_col_client_id"><a href="#" onClick="loadContent('client/reseller_edit.php?id={tmpl_var name='id'}');">{tmpl_var name="client_id"}</a></td> |
| | | <td class="tbl_col_company_name"><a href="#" onClick="loadContent('client/reseller_edit.php?id={tmpl_var name='id'}');">{tmpl_var name="company_name"}</a></td> |
| | | <td class="tbl_col_contact_name"><a href="#" onClick="loadContent('client/reseller_edit.php?id={tmpl_var name='id'}');">{tmpl_var name="contact_name"}</a></td> |
| | | <td class="tbl_col_city"><a href="#" onClick="loadContent('client/reseller_edit.php?id={tmpl_var name='id'}');">{tmpl_var name="city"}</a></td> |
| | | <td class="tbl_col_country"><a href="#" onClick="loadContent('client/reseller_edit.php?id={tmpl_var name='id'}');">{tmpl_var name="country"}</a></td> |
| | | <td class="tbl_col_buttons"> |
| | | <div class="buttons icons16"> |
| | | <a class="icons16 icoDelete" href="javascript: del_record('client/reseller_del.php?id={tmpl_var name='id'}&phpsessid={tmpl_var name='phpsessid'}','{tmpl_var name='delete_confirmation'}');"><span>{tmpl_var name='delete_txt'}</span></a> |
| | | </div> |
| | | </td> |
| | | </tr> |
| | | </tmpl_loop> |
| | | </tbody> |
| | | <tfoot> |
| | | <tr> |
| | | <td class="tbl_footer tbl_paging" colspan="6"><tmpl_var name="paging"></td> |
| | | </tr> |
| | | </tfoot> |
| | | </table> |
| | | </fieldset> |
| | | </div> |
| | | |
| | | </div> |
New file |
| | |
| | | <?php |
| | | $wb["name_txt"] = 'Nome do Formulário'; |
| | | $wb["title_txt"] = 'Título do Formulário'; |
| | | $wb["template_txt"] = 'Gabarito'; |
| | | $wb["navframe_txt"] = 'Frame de Navegação'; |
| | | $wb["startpage_txt"] = 'Página Inicial'; |
| | | $wb["tab_width_txt"] = 'Tamanho da aba'; |
| | | $wb["save_txt"] = 'Salvar'; |
| | | $wb["cancel_txt"] = 'Cancelar'; |
| | | $wb["header_txt"] = 'Propriedades do Formulário'; |
| | | $wb["description_txt"] = 'Descrição'; |
| | | $wb["action_txt"] = 'Ação (script)'; |
| | | $wb["db_table_txt"] = 'Tabela do DB'; |
| | | $wb["db_table_idx_txt"] = 'Indíce da tabela do DB'; |
| | | $wb["db_history_txt"] = 'Desfazer Log'; |
| | | $wb["tab_default_txt"] = 'Aba Padrão'; |
| | | $wb["list_default_txt"] = 'Exibir Padrão'; |
| | | $wb["tab_width_txt"] = 'Tamanho da aba'; |
| | | $wb["auth_txt"] = 'Permissões'; |
| | | $wb["auth_preset_userid_txt"] = 'Usuário(ID)'; |
| | | $wb["auth_preset_groupid_txt"] = 'Grupo(ID)'; |
| | | $wb["auth_preset_perm_user_txt"] = 'Perm. Usuário'; |
| | | $wb["auth_preset_perm_group_txt"] = 'Perm. Grupo'; |
| | | $wb["auth_preset_perm_other_txt"] = 'Perm. Outros'; |
| | | |
| | | ?> |
New file |
| | |
| | | <?php |
| | | $wb["list_head_txt"] = 'Formulário de Backend'; |
| | | $wb["form_txt"] = 'Formulário'; |
| | | $wb["module_txt"] = 'Módulo'; |
| | | $wb["title_txt"] = 'Título'; |
| | | $wb["description_txt"] = 'Descrição'; |
| | | ?> |
New file |
| | |
| | | <?php |
| | | $wb["header_txt"] = 'Editor de Formulários'; |
| | | $wb["title_txt"] = 'Título do Formulário'; |
| | | $wb["name_txt"] = 'Nome do Formulário'; |
| | | $wb["delete_txt"] = 'Remover'; |
| | | $wb["properties_txt"] = 'Propriedades'; |
| | | $wb["new_tab_txt"] = 'Nova Aba'; |
| | | $wb["edit_txt"] = 'Editar'; |
| | | $wb["new_txt"] = 'Novo'; |
| | | $wb["up_txt"] = '^'; |
| | | $wb["down_txt"] = 'v'; |
| | | $wb["module_txt"] = 'Módulo'; |
| | | $wb["form_txt"] = 'Formulário'; |
| | | $wb["description_txt"] = 'Descrição'; |
| | | $wb["module_del_txt"] = "Remover o módulo e todos seus sub-diretórios?"; |
| | | $wb["menu_del_txt"] = "Remover o menu e todos os seus itens?"; |
| | | $wb["item_del_txt"] = "Remover o item de menu?"; |
| | | ?> |
New file |
| | |
| | | <?php |
| | | $wb["name_txt"] = 'Nome do Módulo'; |
| | | $wb["title_txt"] = 'Título do Módulo'; |
| | | $wb["template_txt"] = 'Arquivo de Gabarito'; |
| | | $wb["navframe_txt"] = 'Frame de Navegação'; |
| | | $wb["startpage_txt"] = 'Página Padrão'; |
| | | $wb["tab_width_txt"] = 'Tamanho da Aba'; |
| | | $wb["save_txt"] = 'Salvar'; |
| | | $wb["cancel_txt"] = 'Cancelar'; |
| | | $wb["header_txt"] = 'Propriedades do Módulo'; |
| | | $wb["description_txt"] = ' |
| | | <b>Descrição</b> |
| | | <br><br> |
| | | <b>Nome do Módulo:</b> Nome do diretório do módulo. Somente números, letras e underscores são permitidos.<br> |
| | | <b>Título do Módulo:</b> Será exibido em caixa alta no menu de navegação.<br> |
| | | <b>Arquivo de Gabarito:</b> Arquivo de Gabarito do Módulo Disponível: modulo.tpl.htm e modulo_tree.tpl.htm. O padrão é modulo.tpl.htm.<br> |
| | | <b>Frame de Navegação:</b> Se modulo_tree.tpl.htm foi selecionado como arquivo de gabarito, insira aqui o caminho do script para o frame a esquerda.<br> |
| | | <b>Página Padrão:</b> Esta página será exibida quando o módulo for aberto.<br> |
| | | <b>Tamanho da Aba:</b> Tamanho das abas na navegação principal. Este campo fica em branco por padrão. Você pode informar valores absolutos em pixels (ex.: 20) ou valores relativos (ex.: 20%).<br> |
| | | <b>Dica:</b> Todos os caminhos são relativos ao diretório "web". |
| | | '; |
| | | |
| | | ?> |
New file |
| | |
| | | <?php |
| | | $wb["list_head_txt"] = 'Módulo do Backend'; |
| | | $wb["module_txt"] = 'Módulo'; |
| | | $wb["title_txt"] = 'Título'; |
| | | ?> |
New file |
| | |
| | | <?php |
| | | $wb["title_txt"] = 'Título'; |
| | | $wb["header_txt"] = 'Propriedades de Navegação'; |
| | | $wb["save_txt"] = 'Salvar'; |
| | | $wb["cancel_txt"] = 'Cancelar'; |
| | | ?> |
New file |
| | |
| | | <?php |
| | | $wb["title_txt"] = 'Título'; |
| | | $wb["target_txt"] = 'Target'; |
| | | $wb["link_txt"] = 'Link'; |
| | | $wb["header_txt"] = 'Propriedades de Navegação'; |
| | | $wb["save_txt"] = 'Salvar'; |
| | | $wb["cancel_txt"] = 'Cancelar'; |
| | | ?> |
New file |
| | |
| | | <?php |
| | | $wb["header_txt"] = 'Editor de Menu'; |
| | | $wb["title_txt"] = 'Título'; |
| | | $wb["name_txt"] = 'Módulo'; |
| | | $wb["delete_txt"] = 'Remover'; |
| | | $wb["properties_txt"] = 'Propriedades'; |
| | | $wb["new_menu_txt"] = 'Novo Menu'; |
| | | $wb["edit_txt"] = 'Editar'; |
| | | $wb["delete_txt"] = 'Remover'; |
| | | $wb["new_txt"] = 'Novo'; |
| | | $wb["up_txt"] = 'Subir'; |
| | | $wb["down_txt"] = 'Descer'; |
| | | $wb["module_txt"] = 'Módulo'; |
| | | $wb['module_del_txt'] = 'Deseja eliminar este módulo e todos os arquivos contidos no diretório?'; |
| | | $wb['menu_del_txt'] = 'Deseja apagar este menu e todos seus elementos?'; |
| | | $wb['item_del_txt'] = 'Deseja apagar este elemento do menu?'; |
| | | ?> |
| | |
| | | } |
| | | } // end if user is not admin |
| | | |
| | | //* Check for duplicates where IP and hostname are the same |
| | | $tmp = $app->db->queryOneRecord("SELECT count(id) as number FROM dns_rr WHERE zone = '".$this->dataRecord["zone"]."' and data = '".$this->dataRecord["data"]."' and id != ".$this->id); |
| | | if($tmp['number'] > 0) $app->tform->errorMessage .= $app->tform->lng("data_error_duplicate")."<br>"; |
| | | unset($tmp); |
| | | |
| | | |
| | | // Set the server ID of the rr record to the same server ID as the parent record. |
| | | $this->dataRecord["server_id"] = $soa["server_id"]; |
| | |
| | | |
| | | // we will check only users, not admins |
| | | if($_SESSION["s"]["user"]["typ"] == 'user') { |
| | | |
| | | // Get the limits of the client |
| | | $client_group_id = $_SESSION["s"]["user"]["default_group"]; |
| | | $client = $app->db->queryOneRecord("SELECT limit_dns_zone FROM sys_group, client WHERE sys_group.client_id = client.client_id and sys_group.groupid = $client_group_id"); |
| | | |
| | | // Check if the user may add another maildomain. |
| | | if($client["limit_dns_zone"] >= 0) { |
| | | $tmp = $app->db->queryOneRecord("SELECT count(id) as number FROM dns_soa WHERE sys_groupid = $client_group_id"); |
| | | if($tmp["number"] >= $client["limit_dns_zone"]) { |
| | | $app->error($app->tform->wordbook["limit_dns_zone_txt"]); |
| | | } |
| | | if(!$app->tform->checkClientLimit('limit_dns_zone')) { |
| | | $app->error($app->tform->wordbook["limit_dns_zone_txt"]); |
| | | } |
| | | if(!$app->tform->checkResellerLimit('limit_dns_zone')) { |
| | | $app->error('Reseller: '.$app->tform->wordbook["limit_dns_zone_txt"]); |
| | | } |
| | | } |
| | | |
| | |
| | | global $app, $conf; |
| | | |
| | | // If user is admin, we will allow him to select to whom this record belongs |
| | | if($_SESSION["s"]["user"]["typ"] == 'admin' || $app->auth->has_clients($_SESSION['s']['user']['userid'])) { |
| | | if($_SESSION["s"]["user"]["typ"] == 'admin') { |
| | | // Getting Domains of the user |
| | | $sql = "SELECT groupid, name FROM sys_group WHERE client_id > 0"; |
| | | $clients = $app->db->queryAllRecords($sql); |
| | |
| | | } |
| | | } |
| | | $app->tpl->setVar("client_group_id",$client_select); |
| | | } else if($app->auth->has_clients($_SESSION['s']['user']['userid'])) { |
| | | |
| | | // Get the limits of the client |
| | | $client_group_id = $_SESSION["s"]["user"]["default_group"]; |
| | | $client = $app->db->queryOneRecord("SELECT client.client_id, client.contact_name FROM sys_group, client WHERE sys_group.client_id = client.client_id and sys_group.groupid = $client_group_id"); |
| | | |
| | | // Fill the client select field |
| | | $sql = "SELECT groupid, name FROM sys_group, client WHERE sys_group.client_id = client.client_id AND client.parent_client_id = ".$client['client_id']; |
| | | $clients = $app->db->queryAllRecords($sql); |
| | | $client_select = '<option value="'.$client['client_id'].'">'.$client['contact_name'].'</option>'; |
| | | if(is_array($clients)) { |
| | | foreach( $clients as $client) { |
| | | $selected = @($client["groupid"] == $this->dataRecord["sys_groupid"])?'SELECTED':''; |
| | | $client_select .= "<option value='$client[groupid]' $selected>$client[name]</option>\r\n"; |
| | | } |
| | | } |
| | | $app->tpl->setVar("client_group_id",$client_select); |
| | | |
| | | } |
| | | |
| | | parent::onShowEnd(); |
| | |
| | | $this->dataRecord["serial"] = $app->validate_dns->increase_serial($soa["serial"]); |
| | | |
| | | //* Check if soa, ns and mbox have a dot at the end |
| | | if(substr($this->dataRecord["origin"],-1,1) != '.') $this->dataRecord["origin"] .= '.'; |
| | | if(substr($this->dataRecord["ns"],-1,1) != '.') $this->dataRecord["ns"] .= '.'; |
| | | if(substr($this->dataRecord["mbox"],-1,1) != '.') $this->dataRecord["mbox"] .= '.'; |
| | | if(strlen($this->dataRecord["origin"]) > 0 && substr($this->dataRecord["origin"],-1,1) != '.') $this->dataRecord["origin"] .= '.'; |
| | | if(strlen($this->dataRecord["ns"]) > 0 && substr($this->dataRecord["ns"],-1,1) != '.') $this->dataRecord["ns"] .= '.'; |
| | | if(strlen($this->dataRecord["mbox"]) > 0 && substr($this->dataRecord["mbox"],-1,1) != '.') $this->dataRecord["mbox"] .= '.'; |
| | | |
| | | //* Replace @ in mbox |
| | | if(stristr($this->dataRecord["mbox"],'@')) { |
| | |
| | | <?php
|
| | | /*
|
| | | Copyright (c) 2007, Till Brehm, projektfarm Gmbh
|
| | | All rights reserved.
|
| | |
|
| | | Redistribution and use in source and binary forms, with or without modification,
|
| | | are permitted provided that the following conditions are met:
|
| | |
|
| | | * Redistributions of source code must retain the above copyright notice,
|
| | | this list of conditions and the following disclaimer.
|
| | | * Redistributions in binary form must reproduce the above copyright notice,
|
| | | this list of conditions and the following disclaimer in the documentation
|
| | | and/or other materials provided with the distribution.
|
| | | * Neither the name of ISPConfig nor the names of its contributors
|
| | | may be used to endorse or promote products derived from this software without
|
| | | specific prior written permission.
|
| | |
|
| | | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
|
| | | ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
|
| | | WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
|
| | | IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
|
| | | INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
|
| | | BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
|
| | | DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
|
| | | OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
|
| | | NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
|
| | | EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
| | | */
|
| | |
|
| | |
|
| | | /******************************************
|
| | | * Begin Form configuration
|
| | | ******************************************/
|
| | |
|
| | | $tform_def_file = "form/dns_template.tform.php";
|
| | |
|
| | | /******************************************
|
| | | * End Form configuration
|
| | | ******************************************/
|
| | |
|
| | | require_once('../../lib/config.inc.php');
|
| | | require_once('../../lib/app.inc.php');
|
| | |
|
| | | //* Check permissions for module
|
| | | $app->auth->check_module_permissions('dns');
|
| | |
|
| | | // Loading classes
|
| | | $app->uses('tpl,tform,tform_actions');
|
| | | $app->load('tform_actions');
|
| | |
|
| | | class page_action extends tform_actions {
|
| | | |
| | | }
|
| | |
|
| | | $page = new page_action;
|
| | | $page->onLoad();
|
| | |
|
| | | <?php |
| | | /* |
| | | Copyright (c) 2007, Till Brehm, projektfarm Gmbh |
| | | All rights reserved. |
| | | |
| | | Redistribution and use in source and binary forms, with or without modification, |
| | | are permitted provided that the following conditions are met: |
| | | |
| | | * Redistributions of source code must retain the above copyright notice, |
| | | this list of conditions and the following disclaimer. |
| | | * Redistributions in binary form must reproduce the above copyright notice, |
| | | this list of conditions and the following disclaimer in the documentation |
| | | and/or other materials provided with the distribution. |
| | | * Neither the name of ISPConfig nor the names of its contributors |
| | | may be used to endorse or promote products derived from this software without |
| | | specific prior written permission. |
| | | |
| | | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND |
| | | ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED |
| | | WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. |
| | | IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, |
| | | INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, |
| | | BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, |
| | | DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY |
| | | OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING |
| | | NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, |
| | | EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
| | | */ |
| | | |
| | | |
| | | /****************************************** |
| | | * Begin Form configuration |
| | | ******************************************/ |
| | | |
| | | $tform_def_file = "form/dns_template.tform.php"; |
| | | |
| | | /****************************************** |
| | | * End Form configuration |
| | | ******************************************/ |
| | | |
| | | require_once('../../lib/config.inc.php'); |
| | | require_once('../../lib/app.inc.php'); |
| | | |
| | | //* Check permissions for module |
| | | $app->auth->check_module_permissions('dns'); |
| | | |
| | | // Loading classes |
| | | $app->uses('tpl,tform,tform_actions'); |
| | | $app->load('tform_actions'); |
| | | |
| | | if($_SESSION["s"]["user"]["typ"] != 'admin') die('Access denied for non admin users.'); |
| | | |
| | | class page_action extends tform_actions { |
| | | |
| | | } |
| | | |
| | | $page = new page_action; |
| | | $page->onLoad(); |
| | | |
| | | ?> |
| | |
| | | } |
| | | |
| | | $app->tpl->setVar("client_group_id",$client_select); |
| | | |
| | | } |
| | | |
| | | if ($_SESSION["s"]["user"]["typ"] != 'admin' && $app->auth->has_clients($_SESSION['s']['user']['userid'])) { |
| | | |
| | | // Get the limits of the client |
| | | $client_group_id = $_SESSION["s"]["user"]["default_group"]; |
| | | $client = $app->db->queryOneRecord("SELECT client.client_id, contact_name FROM sys_group, client WHERE sys_group.client_id = client.client_id and sys_group.groupid = $client_group_id"); |
| | | |
| | | |
| | | // load the list of clients |
| | | $sql = "SELECT groupid, name FROM sys_group, client WHERE sys_group.client_id = client.client_id AND client.parent_client_id = ".$client['client_id']; |
| | | $clients = $app->db->queryAllRecords($sql); |
| | | $client_select = '<option value="'.$client['client_id'].'">'.$client['contact_name'].'</option>'; |
| | | if(is_array($clients)) { |
| | | foreach( $clients as $client) { |
| | | $selected = ($client["groupid"] == $sys_groupid)?'SELECTED':''; |
| | | $client_select .= "<option value='$client[groupid]' $selected>$client[name]</option>\r\n"; |
| | | } |
| | | } |
| | | |
| | | $app->tpl->setVar("client_group_id",$client_select); |
| | | } |
| | | |
| | | |
| | | $template_record = $app->db->queryOneRecord("SELECT * FROM dns_template WHERE template_id = '$template_id'"); |
| | | $fields = explode(',',$template_record['fields']); |
| | |
| | | if(isset($_POST['ns2']) && $_POST['ns2'] == '') $error .= $app->lng('error_ns2_empty').'<br />'; |
| | | if(isset($_POST['email']) && $_POST['email'] == '') $error .= $app->lng('error_email_empty').'<br />'; |
| | | |
| | | $tform_def_file = "form/dns_soa.tform.php"; |
| | | $app->uses('tform'); |
| | | $app->tform->loadFormDef($tform_def_file); |
| | | |
| | | |
| | | if(!$app->tform->checkClientLimit('limit_dns_zone')) { |
| | | $error .= $app->tform->wordbook["limit_dns_zone_txt"]; |
| | | } |
| | | if(!$app->tform->checkResellerLimit('limit_dns_zone')) { |
| | | $error .= $app->tform->wordbook["limit_dns_zone_txt"]; |
| | | } |
| | | |
| | | |
| | | // replace template placeholders |
| | | $tpl_content = $template_record['template']; |
| | |
| | | $wb['name_error_regex'] = 'The hostname has the wrong format.'; |
| | | $wb['data_error_empty'] = 'IP-Address empty'; |
| | | $wb['data_error_regex'] = 'IP-Address format invalid'; |
| | | $wb['data_error_duplicate'] = 'Duplicate A-Record'; |
| | | ?> |
New file |
| | |
| | | <?php |
| | | $wb['server_id_txt'] = 'Server'; |
| | | $wb['zone_txt'] = 'Zone'; |
| | | $wb['name_txt'] = 'Hostname'; |
| | | $wb['type_txt'] = 'type'; |
| | | $wb['data_txt'] = 'IPv6-Address'; |
| | | $wb['ttl_txt'] = 'TTL'; |
| | | $wb['active_txt'] = 'Active'; |
| | | $wb['limit_dns_record_txt'] = 'The max. number of DNS records for your account is reached.'; |
| | | $wb['no_zone_perm'] = 'You do not have the permission to add a record to this DNS zone.'; |
| | | $wb['name_error_empty'] = 'The hostname is empty.'; |
| | | $wb['name_error_regex'] = 'The hostname has the wrong format.'; |
| | | $wb['data_error_empty'] = 'IP-Address empty'; |
| | | $wb['data_error_regex'] = 'IP-Address format invalid'; |
| | | ?> |
| | |
| | | $wb['ns2_txt'] = 'NS 2'; |
| | | $wb['ip_txt'] = 'IP Address'; |
| | | $wb['error_origin_empty'] = 'Origin empty.'; |
| | | $wb['error_ns_empty'] = 'NS empty.'; |
| | | $wb['error_mbox_empty'] = 'Mbox empty.'; |
| | | $wb['error_refresh_empty'] = 'Refresh empty.'; |
| | | $wb['error_retry_empty'] = 'Retry empty.'; |
| | | $wb['error_expire_empty'] = 'Expire empty.'; |
| | | $wb['error_minimum_empty'] = 'Minimum empty.'; |
| | | $wb['error_ttl_empty'] = 'TTL empty.'; |
| | | $wb['error_domain_empty'] = 'Domain empty'; |
| | | $wb['error_ip_empty'] = 'IP empty.'; |
| | | $wb['error_ns1_empty'] = 'NS1 empty.'; |
| | | $wb['error_ns2_empty'] = 'NS2 empty.'; |
| | | $wb['error_email_empty'] = 'EMail empty.'; |
| | | ?> |
New file |
| | |
| | | <?php |
| | | |
| | | $wb['DNS'] = 'DNS'; |
| | | $wb['Zones'] = 'Zonas'; |
| | | $wb['DNS A'] = 'DNS A'; |
| | | $wb['DNS ALIAS'] = 'ALIAS DNS'; |
| | | $wb['DNS CNAME'] = 'CNAME DNS'; |
| | | $wb['DNS hinfo'] = 'hinfo DNS'; |
| | | $wb['DNS mx'] = 'mx DNS'; |
| | | $wb['DNS ns'] = 'ns DNS'; |
| | | $wb['DNS ptr'] = 'ptr DNS'; |
| | | $wb['DNS RP'] = 'RP DNS'; |
| | | $wb['DNS Zone'] = 'Zona DNS'; |
| | | $wb['Records'] = 'Registros'; |
| | | $wb['DNS SRV'] = 'SRV DNS'; |
| | | $wb['DNS TXT Record'] = 'Registro TXT DNS'; |
| | | $wb['DNS TXT'] = 'TXT DNS'; |
| | | |
| | | ?> |
New file |
| | |
| | | <?php |
| | | $wb["server_id_txt"] = 'Servidor'; |
| | | $wb["zone_txt"] = 'Zona'; |
| | | $wb["name_txt"] = 'Hostname'; |
| | | $wb["type_txt"] = 'tipo'; |
| | | $wb["data_txt"] = 'Endereço-IP'; |
| | | $wb["ttl_txt"] = 'TTL'; |
| | | $wb["active_txt"] = 'Ativo'; |
| | | $wb["limit_dns_record_txt"] = 'O número máximo de zonas DNS para sua conta foi atingido.'; |
| | | $wb["no_zone_perm"] = 'Você não tem permição para adcionar registros a está zona DNS.'; |
| | | $wb["name_error_empty"] = 'Hostname em branco.'; |
| | | $wb["name_error_regex"] = 'Hostname tem um formato inválido.'; |
| | | $wb["data_error_empty"] = 'Endereço-IP em branco'; |
| | | $wb["data_error_regex"] = 'Endereço-IP formato inválido'; |
| | | ?> |
New file |
| | |
| | | <?php |
| | | $wb["list_head_txt"] = 'Registro (A)'; |
| | | $wb["active_txt"] = 'Ativo'; |
| | | $wb["server_id_txt"] = 'Servidor'; |
| | | $wb["zone_txt"] = 'Zona'; |
| | | $wb["name_txt"] = 'Nome'; |
| | | $wb["data_txt"] = 'Data'; |
| | | $wb["aux_txt"] = 'Prioridade'; |
| | | $wb["type_txt"] = 'Tipo'; |
| | | $wb["add_new_record_txt"] = 'Adcionar um novo registro DNS (A)'; |
| | | $wb["page_txt"] = 'Página'; |
| | | $wb["page_of_txt"] = 'de'; |
| | | $wb['delete_confirmation'] = 'Tem certeza que deseja remover este registro?'; |
| | | ?> |
New file |
| | |
| | | <?php |
| | | $wb["server_id_txt"] = 'Server'; |
| | | $wb["zone_txt"] = 'Zone'; |
| | | $wb["name_txt"] = 'Hostname'; |
| | | $wb["type_txt"] = 'type'; |
| | | $wb["data_txt"] = 'IPv6-Address'; |
| | | $wb["ttl_txt"] = 'TTL'; |
| | | $wb["active_txt"] = 'Active'; |
| | | $wb["limit_dns_record_txt"] = 'The max. number of DNS records for your account is reached.'; |
| | | $wb["no_zone_perm"] = 'You do not have the permission to add a record to this DNS zone.'; |
| | | $wb["name_error_empty"] = 'The hostname is empty.'; |
| | | $wb["name_error_regex"] = 'The hostname has the wrong format.'; |
| | | $wb["data_error_empty"] = 'IP-Address empty'; |
| | | $wb["data_error_regex"] = 'IP-Address format invalid'; |
| | | ?> |
New file |
| | |
| | | <?php |
| | | $wb["server_id_txt"] = 'Servidor'; |
| | | $wb["zone_txt"] = 'Zona'; |
| | | $wb["name_txt"] = 'Hostname'; |
| | | $wb["type_txt"] = 'tipo'; |
| | | $wb["data_txt"] = 'Hostname Alvo'; |
| | | $wb["ttl_txt"] = 'TTL'; |
| | | $wb["active_txt"] = 'Ativo'; |
| | | $wb["limit_dns_record_txt"] = 'O número máximo de registros DNS para sua conta foi atingido.'; |
| | | $wb["no_zone_perm"] = 'Você não tem permição para adcionar registros a está zona DNS.'; |
| | | $wb["name_error_empty"] = 'Hostname está em branco.'; |
| | | $wb["name_error_regex"] = 'O hostname está em um formato inválido.'; |
| | | $wb["data_error_empty"] = 'Hostname de destino está em branco'; |
| | | $wb["data_error_regex"] = 'O hostname de destino está em um formato inválido.'; |
| | | ?> |
New file |
| | |
| | | <?php |
| | | $wb["server_id_txt"] = 'Servidor'; |
| | | $wb["zone_txt"] = 'Zona'; |
| | | $wb["name_txt"] = 'Hostname'; |
| | | $wb["type_txt"] = 'tipo'; |
| | | $wb["data_txt"] = 'Hostname de Destino'; |
| | | $wb["ttl_txt"] = 'TTL'; |
| | | $wb["active_txt"] = 'Ativo'; |
| | | $wb["limit_dns_record_txt"] = 'O número máximo de registros DNS para sua conta foi atingido.'; |
| | | $wb["no_zone_perm"] = 'Você não tem permição para adcionar registros a está zona DNS.'; |
| | | $wb["name_error_empty"] = 'Hostname está em branco.'; |
| | | $wb["name_error_regex"] = 'O hostname está em um formato inválido.'; |
| | | $wb["data_error_empty"] = 'Hostname de destino está em branco'; |
| | | $wb["data_error_regex"] = 'O hostname de destino está em um formato inválido.'; |
| | | ?> |
New file |
| | |
| | | <?php |
| | | $wb["server_id_txt"] = 'Servidor'; |
| | | $wb["zone_txt"] = 'Zona'; |
| | | $wb["name_txt"] = 'Hostname'; |
| | | $wb["type_txt"] = 'tipo'; |
| | | $wb["data_txt"] = 'Informações do Host'; |
| | | $wb["ttl_txt"] = 'TTL'; |
| | | $wb["active_txt"] = 'Ativo'; |
| | | $wb["limit_dns_record_txt"] = 'O número máximo de zonas DNS para sua conta foi atingido.'; |
| | | $wb["no_zone_perm"] = 'Você não tem permição para adcionar registros a está zona DNS.'; |
| | | $wb["name_error_empty"] = 'Hostname em branco.'; |
| | | $wb["name_error_regex"] = 'Hostname tem um formato inválido.'; |
| | | $wb["data_error_empty"] = 'Endereço-IP em branco'; |
| | | $wb["data_error_regex"] = 'Endereço-IP formato inválido'; |
| | | ?> |
New file |
| | |
| | | <?php |
| | | $wb["server_id_txt"] = 'Servidor'; |
| | | $wb["zone_txt"] = 'Zona'; |
| | | $wb["name_txt"] = 'Hostname'; |
| | | $wb["type_txt"] = 'tipo'; |
| | | $wb["data_txt"] = 'Hostname do servidor de correio'; |
| | | $wb["aux_txt"] = 'Prioridade'; |
| | | $wb["ttl_txt"] = 'TTL'; |
| | | $wb["active_txt"] = 'Ativo'; |
| | | $wb["limit_dns_record_txt"] = 'O número máximo de zonas DNS para sua conta foi atingido.'; |
| | | $wb["no_zone_perm"] = 'Você não tem permição para adcionar registros a está zona DNS.'; |
| | | $wb["name_error_empty"] = 'Hostname em branco.'; |
| | | $wb["name_error_regex"] = 'Hostname tem um formato inválido.'; |
| | | $wb["data_error_empty"] = 'Hostname do servidor de correio em branco'; |
| | | $wb["data_error_regex"] = 'Hostname do servidor de correio formato inválido'; |
| | | ?> |
New file |
| | |
| | | <?php |
| | | $wb["server_id_txt"] = 'Servidor'; |
| | | $wb["zone_txt"] = 'Zona'; |
| | | $wb["name_txt"] = 'Zona'; |
| | | $wb["type_txt"] = 'tipo'; |
| | | $wb["data_txt"] = 'Hostname Servidor de Nomes'; |
| | | $wb["ttl_txt"] = 'TTL'; |
| | | $wb["active_txt"] = 'Ativo'; |
| | | $wb["limit_dns_record_txt"] = 'O número máximo de zonas DNS para sua conta foi atingido.'; |
| | | $wb["no_zone_perm"] = 'Você não tem permição para adcionar registros a está zona DNS.'; |
| | | $wb["name_error_empty"] = 'A zona está em branco.'; |
| | | $wb["name_error_regex"] = 'A zona está com formato inválido.'; |
| | | $wb["data_error_empty"] = 'Servidor de nomes em branco'; |
| | | $wb["data_error_regex"] = 'Servidor de nomes com formato inválido'; |
| | | ?> |
New file |
| | |
| | | <?php |
| | | $wb["server_id_txt"] = 'Servidor'; |
| | | $wb["zone_txt"] = 'Zona'; |
| | | $wb["name_txt"] = 'Nnome'; |
| | | $wb["type_txt"] = 'tipo'; |
| | | $wb["data_txt"] = 'Hostname Canônico'; |
| | | $wb["ttl_txt"] = 'TTL'; |
| | | $wb["active_txt"] = 'Ativo'; |
| | | $wb["limit_dns_record_txt"] = 'O número máximo de zonas DNS para sua conta foi atingido.'; |
| | | $wb["no_zone_perm"] = 'Você não tem permição para adcionar registros a está zona DNS.'; |
| | | $wb["name_error_empty"] = 'Hostname em branco.'; |
| | | $wb["name_error_regex"] = 'Hostname tem um formato inválido.'; |
| | | $wb["data_error_empty"] = 'Endereço-IP em branco'; |
| | | $wb["data_error_regex"] = 'Endereço-IP formato inválido'; |
| | | ?> |
New file |
| | |
| | | <?php |
| | | $wb["server_id_txt"] = 'Servidor'; |
| | | $wb["zone_txt"] = 'Zona'; |
| | | $wb["name_txt"] = 'Hostname'; |
| | | $wb["type_txt"] = 'tipo'; |
| | | $wb["data_txt"] = 'Pessoa Responsável'; |
| | | $wb["ttl_txt"] = 'TTL'; |
| | | $wb["active_txt"] = 'Ativo'; |
| | | $wb["limit_dns_record_txt"] = 'O número máximo de zonas DNS para sua conta foi atingido.'; |
| | | $wb["no_zone_perm"] = 'Você não tem permição para adcionar registros a está zona DNS.'; |
| | | $wb["name_error_empty"] = 'O Hostname está em branco.'; |
| | | $wb["name_error_regex"] = 'O Hostname está com formato inválido.'; |
| | | $wb["data_error_empty"] = 'Pessoa responsável em branco'; |
| | | $wb["data_error_regex"] = 'Pessoa responsável formato inválido'; |
| | | ?> |
New file |
| | |
| | | <?php |
| | | $wb["server_id_txt"] = 'Servidor'; |
| | | $wb["origin_txt"] = 'Zona (SOA)'; |
| | | $wb["ns_txt"] = 'NS'; |
| | | $wb["mbox_txt"] = 'Correio'; |
| | | $wb["serial_txt"] = 'Serial'; |
| | | $wb["refresh_txt"] = 'Refresh'; |
| | | $wb["retry_txt"] = 'Retry'; |
| | | $wb["expire_txt"] = 'Expire'; |
| | | $wb["minimum_txt"] = 'Minimum'; |
| | | $wb["ttl_txt"] = 'TTL'; |
| | | $wb["xfer_txt"] = 'Permitir transferências de zona para <br />estes IPs (lista separada por ponto e vírgula)'; |
| | | $wb["active_txt"] = 'Ativo'; |
| | | $wb["limit_dns_zone_txt"] = 'O número máximo de zonas DNS para sua conta foi atingido.'; |
| | | $wb["client_txt"] = 'Cliente'; |
| | | $wb["no_zone_perm"] = 'Você não tem permição para adcionar registros a está zona DNS.'; |
| | | $wb["server_id_error_empty"] = 'Servidor não selecionado'; |
| | | $wb["origin_error_empty"] = 'Zona vazia.'; |
| | | $wb["origin_error_unique"] = 'Este registro já existe nesta zona.'; |
| | | $wb["origin_error_regex"] = 'Formato de zona inválido.'; |
| | | $wb["ns_error_regex"] = 'NS tem um formato inválido.'; |
| | | $wb["mbox_error_empty"] = 'Correio está em branco.'; |
| | | $wb["mbox_error_regex"] = 'Correio com formato inválido.'; |
| | | ?> |
New file |
| | |
| | | <?php |
| | | $wb["list_head_txt"] = 'Zonas DNS'; |
| | | $wb["active_txt"] = 'Ativo'; |
| | | $wb["server_id_txt"] = 'Servidor'; |
| | | $wb["origin_txt"] = 'Zona'; |
| | | $wb["ns_txt"] = 'NS'; |
| | | $wb["mbox_txt"] = 'Correio'; |
| | | $wb["add_new_record_txt"] = 'Adcionar uma nova zona dns (SOA)'; |
| | | ?> |
New file |
| | |
| | | <?php |
| | | $wb["server_id_txt"] = 'Servidor'; |
| | | $wb["zone_txt"] = 'Zona'; |
| | | $wb["name_txt"] = 'Hostname'; |
| | | $wb["type_txt"] = 'tipo'; |
| | | $wb["data_txt"] = 'Registro do Servidor'; |
| | | $wb["ttl_txt"] = 'TTL'; |
| | | $wb["active_txt"] = 'Ativo'; |
| | | $wb["limit_dns_record_txt"] = 'O número máximo de zonas DNS para sua conta foi atingido.'; |
| | | $wb["no_zone_perm"] = 'Você não tem permição para adcionar registros a está zona DNS.'; |
| | | $wb["name_error_empty"] = 'O Hostname está em branco.'; |
| | | $wb["name_error_regex"] = 'O Hostname está com formato inválido.'; |
| | | $wb["data_error_empty"] = 'Registro do Servidor em branco'; |
| | | $wb["data_error_regex"] = 'Registro do Servidor com formato inválido'; |
| | | ?> |
New file |
| | |
| | | <?php |
| | | $wb["name_txt"] = 'Nome'; |
| | | $wb["fields_txt"] = 'Campos'; |
| | | $wb["template_txt"] = 'Gabarito'; |
| | | $wb["visible_txt"] = 'Visível'; |
| | | ?> |
New file |
| | |
| | | <?php |
| | | $wb["list_head_txt"] = 'Assistente de Gabaritos DNS'; |
| | | $wb["visible_txt"] = 'Visível'; |
| | | $wb["name_txt"] = 'Nome'; |
| | | $wb["add_new_record_txt"] = 'Adcionar novo registro'; |
| | | ?> |
New file |
| | |
| | | <?php |
| | | $wb["server_id_txt"] = 'Servidor'; |
| | | $wb["zone_txt"] = 'Zona'; |
| | | $wb["name_txt"] = 'Hostname'; |
| | | $wb["type_txt"] = 'tipo'; |
| | | $wb["data_txt"] = 'Text'; |
| | | $wb["ttl_txt"] = 'TTL'; |
| | | $wb["active_txt"] = 'Ativo'; |
| | | $wb["limit_dns_record_txt"] = 'O número máximo de zonas DNS para sua conta foi atingido.'; |
| | | $wb["no_zone_perm"] = 'Você não tem permição para adcionar registros a está zona DNS.'; |
| | | $wb["name_error_empty"] = 'Hostname em branco.'; |
| | | $wb["name_error_regex"] = 'Hostname tem um formato inválido.'; |
| | | $wb["data_error_empty"] = 'Endereço-IP em branco'; |
| | | $wb["data_error_regex"] = 'Endereço-IP formato inválido'; |
| | | ?> |
New file |
| | |
| | | <?php |
| | | |
| | | $wb['template_id_txt'] = 'Gabarito'; |
| | | $wb['server_id_txt'] = 'Servidor'; |
| | | $wb['client_txt'] = 'Cliente'; |
| | | $wb["btn_save_txt"] = 'Criar Registro DNS'; |
| | | $wb["btn_cancel_txt"] = 'Cancelar'; |
| | | $wb['domain_txt'] = 'Domínio'; |
| | | $wb['email_txt'] = 'Correio'; |
| | | $wb['ns1_txt'] = 'NS 1'; |
| | | $wb['ns2_txt'] = 'NS 2'; |
| | | $wb['ip_txt'] = 'Endereço IP'; |
| | | |
| | | $wb['error_origin_empty'] = 'Origem em branco.'; |
| | | |
| | | ?> |
| | |
| | | $wb['name_error_regex'] = 'Der Hostname hat das falsche Format.'; |
| | | $wb['data_error_empty'] = 'IP Adresse ist leer'; |
| | | $wb['data_error_regex'] = 'Format der IP Adresse ist ungültig'; |
| | | $wb['data_error_duplicate'] = 'Duplicate A-Record'; |
| | | ?> |
New file |
| | |
| | | <?php |
| | | $wb['server_id_txt'] = 'Server'; |
| | | $wb['zone_txt'] = 'Zone'; |
| | | $wb['name_txt'] = 'Hostname'; |
| | | $wb['type_txt'] = 'type'; |
| | | $wb['data_txt'] = 'IPv6-Address'; |
| | | $wb['ttl_txt'] = 'TTL'; |
| | | $wb['active_txt'] = 'Active'; |
| | | $wb['limit_dns_record_txt'] = 'The max. number of DNS records for your account is reached.'; |
| | | $wb['no_zone_perm'] = 'You do not have the permission to add a record to this DNS zone.'; |
| | | $wb['name_error_empty'] = 'The hostname is empty.'; |
| | | $wb['name_error_regex'] = 'The hostname has the wrong format.'; |
| | | $wb['data_error_empty'] = 'IP-Address empty'; |
| | | $wb['data_error_regex'] = 'IP-Address format invalid'; |
| | | ?> |
| | |
| | | $wb['ns2_txt'] = 'NS 2'; |
| | | $wb['ip_txt'] = 'IP Address'; |
| | | $wb['error_origin_empty'] = 'Origin empty.'; |
| | | $wb['error_ns_empty'] = 'NS empty.'; |
| | | $wb['error_mbox_empty'] = 'Mbox empty.'; |
| | | $wb['error_refresh_empty'] = 'Refresh empty.'; |
| | | $wb['error_retry_empty'] = 'Retry empty.'; |
| | | $wb['error_expire_empty'] = 'Expire empty.'; |
| | | $wb['error_minimum_empty'] = 'Minimum empty.'; |
| | | $wb['error_ttl_empty'] = 'TTL empty.'; |
| | | $wb['error_domain_empty'] = 'Domain empty'; |
| | | $wb['error_ip_empty'] = 'IP empty.'; |
| | | $wb['error_ns1_empty'] = 'NS1 empty.'; |
| | | $wb['error_ns2_empty'] = 'NS2 empty.'; |
| | | $wb['error_email_empty'] = 'EMail empty.'; |
| | | ?> |
| | |
| | | $wb["name_error_regex"] = 'The hostname has the wrong format.'; |
| | | $wb["data_error_empty"] = 'IP-Address empty'; |
| | | $wb["data_error_regex"] = 'IP-Address format invalid'; |
| | | $wb["data_error_duplicate"] = 'Duplicate A-Record'; |
| | | ?> |
| | |
| | | $wb['name_error_regex'] = 'El formato del nombre de máquina es incorrecto.'; |
| | | $wb['data_error_empty'] = 'Dirección IP vacía'; |
| | | $wb['data_error_regex'] = 'El formato de la dirección IP es inválido.'; |
| | | $wb['data_error_duplicate'] = 'Duplicate A-Record'; |
| | | ?> |
New file |
| | |
| | | <?php |
| | | $wb["server_id_txt"] = 'Server'; |
| | | $wb["zone_txt"] = 'Zone'; |
| | | $wb["name_txt"] = 'Hostname'; |
| | | $wb["type_txt"] = 'type'; |
| | | $wb["data_txt"] = 'IPv6-Address'; |
| | | $wb["ttl_txt"] = 'TTL'; |
| | | $wb["active_txt"] = 'Active'; |
| | | $wb["limit_dns_record_txt"] = 'The max. number of DNS records for your account is reached.'; |
| | | $wb["no_zone_perm"] = 'You do not have the permission to add a record to this DNS zone.'; |
| | | $wb["name_error_empty"] = 'The hostname is empty.'; |
| | | $wb["name_error_regex"] = 'The hostname has the wrong format.'; |
| | | $wb["data_error_empty"] = 'IP-Address empty'; |
| | | $wb["data_error_regex"] = 'IP-Address format invalid'; |
| | | ?> |
| | |
| | | $wb['ns2_txt'] = 'NS 2'; |
| | | $wb['ip_txt'] = 'Dirección IP'; |
| | | $wb['error_origin_empty'] = 'Origen vacío.'; |
| | | $wb['error_ns_empty'] = 'NS empty.'; |
| | | $wb['error_mbox_empty'] = 'Mbox empty.'; |
| | | $wb['error_refresh_empty'] = 'Refresh empty.'; |
| | | $wb['error_retry_empty'] = 'Retry empty.'; |
| | | $wb['error_expire_empty'] = 'Expire empty.'; |
| | | $wb['error_minimum_empty'] = 'Minimum empty.'; |
| | | $wb['error_ttl_empty'] = 'TTL empty.'; |
| | | $wb['error_domain_empty'] = 'Domain empty'; |
| | | $wb['error_ip_empty'] = 'IP empty.'; |
| | | $wb['error_ns1_empty'] = 'NS1 empty.'; |
| | | $wb['error_ns2_empty'] = 'NS2 empty.'; |
| | | $wb['error_email_empty'] = 'EMail empty.'; |
| | | ?> |
| | |
| | | $wb['name_error_regex'] = 'Verkkotunnus on vääränlainen.'; |
| | | $wb['data_error_empty'] = 'IP-osoite tyhjä'; |
| | | $wb['data_error_regex'] = 'IP-osoite on vääränlainen'; |
| | | $wb['data_error_duplicate'] = 'Duplicate A-Record'; |
| | | ?> |
New file |
| | |
| | | <?php |
| | | $wb["server_id_txt"] = 'Server'; |
| | | $wb["zone_txt"] = 'Zone'; |
| | | $wb["name_txt"] = 'Hostname'; |
| | | $wb["type_txt"] = 'type'; |
| | | $wb["data_txt"] = 'IPv6-Address'; |
| | | $wb["ttl_txt"] = 'TTL'; |
| | | $wb["active_txt"] = 'Active'; |
| | | $wb["limit_dns_record_txt"] = 'The max. number of DNS records for your account is reached.'; |
| | | $wb["no_zone_perm"] = 'You do not have the permission to add a record to this DNS zone.'; |
| | | $wb["name_error_empty"] = 'The hostname is empty.'; |
| | | $wb["name_error_regex"] = 'The hostname has the wrong format.'; |
| | | $wb["data_error_empty"] = 'IP-Address empty'; |
| | | $wb["data_error_regex"] = 'IP-Address format invalid'; |
| | | ?> |
| | |
| | | $wb['ns2_txt'] = '2. nimipalvelin'; |
| | | $wb['ip_txt'] = 'IP-osoite'; |
| | | $wb['error_origin_empty'] = 'Verkkotunnusta ei ole annettu.'; |
| | | $wb['error_ns_empty'] = 'NS empty.'; |
| | | $wb['error_mbox_empty'] = 'Mbox empty.'; |
| | | $wb['error_refresh_empty'] = 'Refresh empty.'; |
| | | $wb['error_retry_empty'] = 'Retry empty.'; |
| | | $wb['error_expire_empty'] = 'Expire empty.'; |
| | | $wb['error_minimum_empty'] = 'Minimum empty.'; |
| | | $wb['error_ttl_empty'] = 'TTL empty.'; |
| | | $wb['error_domain_empty'] = 'Domain empty'; |
| | | $wb['error_ip_empty'] = 'IP empty.'; |
| | | $wb['error_ns1_empty'] = 'NS1 empty.'; |
| | | $wb['error_ns2_empty'] = 'NS2 empty.'; |
| | | $wb['error_email_empty'] = 'EMail empty.'; |
| | | ?> |
| | |
| | | $wb['name_error_regex'] = 'The hostname has the wrong format.'; |
| | | $wb['data_error_empty'] = 'IP-Address empty'; |
| | | $wb['data_error_regex'] = 'IP-Address format invalid'; |
| | | $wb['data_error_duplicate'] = 'Duplicate A-Record'; |
| | | ?> |
New file |
| | |
| | | <?php |
| | | $wb['server_id_txt'] = 'Server'; |
| | | $wb['zone_txt'] = 'Zone'; |
| | | $wb['name_txt'] = 'Hostname'; |
| | | $wb['type_txt'] = 'type'; |
| | | $wb['data_txt'] = 'IPv6-Address'; |
| | | $wb['ttl_txt'] = 'TTL'; |
| | | $wb['active_txt'] = 'Active'; |
| | | $wb['limit_dns_record_txt'] = 'The max. number of DNS records for your account is reached.'; |
| | | $wb['no_zone_perm'] = 'You do not have the permission to add a record to this DNS zone.'; |
| | | $wb['name_error_empty'] = 'The hostname is empty.'; |
| | | $wb['name_error_regex'] = 'The hostname has the wrong format.'; |
| | | $wb['data_error_empty'] = 'IP-Address empty'; |
| | | $wb['data_error_regex'] = 'IP-Address format invalid'; |
| | | ?> |
| | |
| | | $wb['ns2_txt'] = 'NS 2'; |
| | | $wb['ip_txt'] = 'IP Address'; |
| | | $wb['error_origin_empty'] = 'Origin empty.'; |
| | | $wb['error_ns_empty'] = 'NS empty.'; |
| | | $wb['error_mbox_empty'] = 'Mbox empty.'; |
| | | $wb['error_refresh_empty'] = 'Refresh empty.'; |
| | | $wb['error_retry_empty'] = 'Retry empty.'; |
| | | $wb['error_expire_empty'] = 'Expire empty.'; |
| | | $wb['error_minimum_empty'] = 'Minimum empty.'; |
| | | $wb['error_ttl_empty'] = 'TTL empty.'; |
| | | $wb['error_domain_empty'] = 'Domain empty'; |
| | | $wb['error_ip_empty'] = 'IP empty.'; |
| | | $wb['error_ns1_empty'] = 'NS1 empty.'; |
| | | $wb['error_ns2_empty'] = 'NS2 empty.'; |
| | | $wb['error_email_empty'] = 'EMail empty.'; |
| | | ?> |
| | |
| | | $wb['name_error_regex'] = 'The hostname has the wrong format.'; |
| | | $wb['data_error_empty'] = 'IP-Address empty'; |
| | | $wb['data_error_regex'] = 'IP-Address format invalid'; |
| | | $wb['data_error_duplicate'] = 'Duplicate A-Record'; |
| | | ?> |
New file |
| | |
| | | <?php |
| | | $wb["server_id_txt"] = 'Server'; |
| | | $wb["zone_txt"] = 'Zone'; |
| | | $wb["name_txt"] = 'Hostname'; |
| | | $wb["type_txt"] = 'type'; |
| | | $wb["data_txt"] = 'IPv6-Address'; |
| | | $wb["ttl_txt"] = 'TTL'; |
| | | $wb["active_txt"] = 'Active'; |
| | | $wb["limit_dns_record_txt"] = 'The max. number of DNS records for your account is reached.'; |
| | | $wb["no_zone_perm"] = 'You do not have the permission to add a record to this DNS zone.'; |
| | | $wb["name_error_empty"] = 'The hostname is empty.'; |
| | | $wb["name_error_regex"] = 'The hostname has the wrong format.'; |
| | | $wb["data_error_empty"] = 'IP-Address empty'; |
| | | $wb["data_error_regex"] = 'IP-Address format invalid'; |
| | | ?> |
| | |
| | | $wb['ns2_txt'] = 'NS 2'; |
| | | $wb['ip_txt'] = 'IP Address'; |
| | | $wb['error_origin_empty'] = 'Origin empty.'; |
| | | $wb['error_ns_empty'] = 'NS empty.'; |
| | | $wb['error_mbox_empty'] = 'Mbox empty.'; |
| | | $wb['error_refresh_empty'] = 'Refresh empty.'; |
| | | $wb['error_retry_empty'] = 'Retry empty.'; |
| | | $wb['error_expire_empty'] = 'Expire empty.'; |
| | | $wb['error_minimum_empty'] = 'Minimum empty.'; |
| | | $wb['error_ttl_empty'] = 'TTL empty.'; |
| | | $wb['error_domain_empty'] = 'Domain empty'; |
| | | $wb['error_ip_empty'] = 'IP empty.'; |
| | | $wb['error_ns1_empty'] = 'NS1 empty.'; |
| | | $wb['error_ns2_empty'] = 'NS2 empty.'; |
| | | $wb['error_email_empty'] = 'EMail empty.'; |
| | | ?> |
| | |
| | | $wb['name_error_regex'] = 'De hostname has the wrong format.'; |
| | | $wb['data_error_empty'] = 'IP-Adres is leeg.'; |
| | | $wb['data_error_regex'] = 'IP-Adres formaat ongeldig.'; |
| | | $wb['data_error_duplicate'] = 'Duplicate A-Record'; |
| | | ?> |
New file |
| | |
| | | <?php |
| | | $wb["server_id_txt"] = 'Server'; |
| | | $wb["zone_txt"] = 'Zone'; |
| | | $wb["name_txt"] = 'Hostname'; |
| | | $wb["type_txt"] = 'type'; |
| | | $wb["data_txt"] = 'IPv6-Address'; |
| | | $wb["ttl_txt"] = 'TTL'; |
| | | $wb["active_txt"] = 'Active'; |
| | | $wb["limit_dns_record_txt"] = 'The max. number of DNS records for your account is reached.'; |
| | | $wb["no_zone_perm"] = 'You do not have the permission to add a record to this DNS zone.'; |
| | | $wb["name_error_empty"] = 'The hostname is empty.'; |
| | | $wb["name_error_regex"] = 'The hostname has the wrong format.'; |
| | | $wb["data_error_empty"] = 'IP-Address empty'; |
| | | $wb["data_error_regex"] = 'IP-Address format invalid'; |
| | | ?> |
| | |
| | | $wb['ns2_txt'] = 'NS 2'; |
| | | $wb['ip_txt'] = 'IP Address'; |
| | | $wb['error_origin_empty'] = 'Origin empty.'; |
| | | $wb['error_ns_empty'] = 'NS empty.'; |
| | | $wb['error_mbox_empty'] = 'Mbox empty.'; |
| | | $wb['error_refresh_empty'] = 'Refresh empty.'; |
| | | $wb['error_retry_empty'] = 'Retry empty.'; |
| | | $wb['error_expire_empty'] = 'Expire empty.'; |
| | | $wb['error_minimum_empty'] = 'Minimum empty.'; |
| | | $wb['error_ttl_empty'] = 'TTL empty.'; |
| | | $wb['error_domain_empty'] = 'Domain empty'; |
| | | $wb['error_ip_empty'] = 'IP empty.'; |
| | | $wb['error_ns1_empty'] = 'NS1 empty.'; |
| | | $wb['error_ns2_empty'] = 'NS2 empty.'; |
| | | $wb['error_email_empty'] = 'EMail empty.'; |
| | | ?> |
| | |
| | | $wb['name_error_regex'] = 'Имя узла имеет неправильный формат.'; |
| | | $wb['data_error_empty'] = 'IP-адрес пустой'; |
| | | $wb['data_error_regex'] = 'Формат IP-адреса неправилен'; |
| | | $wb['data_error_duplicate'] = 'Duplicate A-Record'; |
| | | ?> |
New file |
| | |
| | | <?php |
| | | $wb["server_id_txt"] = 'Server'; |
| | | $wb["zone_txt"] = 'Zone'; |
| | | $wb["name_txt"] = 'Hostname'; |
| | | $wb["type_txt"] = 'type'; |
| | | $wb["data_txt"] = 'IPv6-Address'; |
| | | $wb["ttl_txt"] = 'TTL'; |
| | | $wb["active_txt"] = 'Active'; |
| | | $wb["limit_dns_record_txt"] = 'The max. number of DNS records for your account is reached.'; |
| | | $wb["no_zone_perm"] = 'You do not have the permission to add a record to this DNS zone.'; |
| | | $wb["name_error_empty"] = 'The hostname is empty.'; |
| | | $wb["name_error_regex"] = 'The hostname has the wrong format.'; |
| | | $wb["data_error_empty"] = 'IP-Address empty'; |
| | | $wb["data_error_regex"] = 'IP-Address format invalid'; |
| | | ?> |
| | |
| | | $wb['ns2_txt'] = 'NS 2'; |
| | | $wb['ip_txt'] = 'IP Address'; |
| | | $wb['error_origin_empty'] = 'Origin empty.'; |
| | | $wb['error_ns_empty'] = 'NS empty.'; |
| | | $wb['error_mbox_empty'] = 'Mbox empty.'; |
| | | $wb['error_refresh_empty'] = 'Refresh empty.'; |
| | | $wb['error_retry_empty'] = 'Retry empty.'; |
| | | $wb['error_expire_empty'] = 'Expire empty.'; |
| | | $wb['error_minimum_empty'] = 'Minimum empty.'; |
| | | $wb['error_ttl_empty'] = 'TTL empty.'; |
| | | $wb['error_domain_empty'] = 'Domain empty'; |
| | | $wb['error_ip_empty'] = 'IP empty.'; |
| | | $wb['error_ns1_empty'] = 'NS1 empty.'; |
| | | $wb['error_ns2_empty'] = 'NS2 empty.'; |
| | | $wb['error_email_empty'] = 'EMail empty.'; |
| | | ?> |
| | |
| | | $wb['name_error_regex'] = 'The hostname has the wrong format.'; |
| | | $wb['data_error_empty'] = 'IP-Address empty'; |
| | | $wb['data_error_regex'] = 'IP-Address format invalid'; |
| | | $wb['data_error_duplicate'] = 'Duplicate A-Record'; |
| | | ?> |
New file |
| | |
| | | <?php |
| | | $wb["server_id_txt"] = 'Server'; |
| | | $wb["zone_txt"] = 'Zone'; |
| | | $wb["name_txt"] = 'Hostname'; |
| | | $wb["type_txt"] = 'type'; |
| | | $wb["data_txt"] = 'IPv6-Address'; |
| | | $wb["ttl_txt"] = 'TTL'; |
| | | $wb["active_txt"] = 'Active'; |
| | | $wb["limit_dns_record_txt"] = 'The max. number of DNS records for your account is reached.'; |
| | | $wb["no_zone_perm"] = 'You do not have the permission to add a record to this DNS zone.'; |
| | | $wb["name_error_empty"] = 'The hostname is empty.'; |
| | | $wb["name_error_regex"] = 'The hostname has the wrong format.'; |
| | | $wb["data_error_empty"] = 'IP-Address empty'; |
| | | $wb["data_error_regex"] = 'IP-Address format invalid'; |
| | | ?> |
| | |
| | | $wb['ns2_txt'] = 'NS 2'; |
| | | $wb['ip_txt'] = 'IP Address'; |
| | | $wb['error_origin_empty'] = 'Origin empty.'; |
| | | $wb['error_ns_empty'] = 'NS empty.'; |
| | | $wb['error_mbox_empty'] = 'Mbox empty.'; |
| | | $wb['error_refresh_empty'] = 'Refresh empty.'; |
| | | $wb['error_retry_empty'] = 'Retry empty.'; |
| | | $wb['error_expire_empty'] = 'Expire empty.'; |
| | | $wb['error_minimum_empty'] = 'Minimum empty.'; |
| | | $wb['error_ttl_empty'] = 'TTL empty.'; |
| | | $wb['error_domain_empty'] = 'Domain empty'; |
| | | $wb['error_ip_empty'] = 'IP empty.'; |
| | | $wb['error_ns1_empty'] = 'NS1 empty.'; |
| | | $wb['error_ns2_empty'] = 'NS2 empty.'; |
| | | $wb['error_email_empty'] = 'EMail empty.'; |
| | | ?> |
| | |
| | | $module["startpage"] = "dns/dns_soa_list.php"; |
| | | $module["tab_width"] = ''; |
| | | |
| | | |
| | | $items[] = array( 'title' => "Add DNS Zone", |
| | | 'target' => 'content', |
| | | 'link' => 'dns/dns_wizard.php'); |
| | | |
| | | if($_SESSION["s"]["user"]["typ"] == 'admin') { |
| | | |
| | | $items[] = array( 'title' => "Templates", |
| | | 'target' => 'content', |
| | | 'link' => 'dns/dns_template_list.php'); |
| | | } |
| | | |
| | | |
| | | $module["nav"][] = array( 'title' => 'DNS Wizard', |
| | | 'open' => 1, |
| | | 'items' => $items); |
| | | |
| | | |
| | | unset($items); |
| | | |
| | | /* |
| | | Email accounts menu |
| | | */ |
| | |
| | | 'items' => $items); |
| | | |
| | | unset($items); |
| | | |
| | | |
| | | $items[] = array( 'title' => "Add DNS Zone", |
| | | 'target' => 'content', |
| | | 'link' => 'dns/dns_wizard.php'); |
| | | |
| | | |
| | | $items[] = array( 'title' => "Templates", |
| | | 'target' => 'content', |
| | | 'link' => 'dns/dns_template_list.php'); |
| | | |
| | | |
| | | |
| | | $module["nav"][] = array( 'title' => 'DNS Wizard', |
| | | 'open' => 1, |
| | | 'items' => $items); |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | |
| | | 'op' => "like", |
| | | 'prefix' => "%", |
| | | 'suffix' => "%", |
| | | 'datasource' => array ( 'type' => 'SQL', |
| | | 'querystring' => 'SELECT server_id,server_name FROM server WHERE {AUTHSQL} ORDER BY server_name', |
| | | 'keyfield'=> 'server_id', |
| | | 'valuefield'=> 'server_name' |
| | | 'datasource' => array ( 'type' => 'CUSTOM', |
| | | 'class'=> 'custom_datasource', |
| | | 'function'=> 'dns_servers' |
| | | ), |
| | | 'width' => "", |
| | | 'value' => ""); |
| | |
| | | <h2><tmpl_var name="list_head_txt"></h2>
|
| | | <p><tmpl_var name="list_desc_txt"></p>
|
| | |
|
| | | <div class="panel panel_dns_a">
|
| | |
|
| | | <div class="pnl_formsarea">
|
| | | <fieldset class="inlineLabels">
|
| | | <div class="ctrlHolder">
|
| | | <label for="name">{tmpl_var name='name_txt'}</label>
|
| | | <input name="name" id="name" value="{tmpl_var name='name'}" size="30" maxlength="255" type="text" class="textInput" />
|
| | | <p class="formHint">{tmpl_var name='name_hint_txt'}</p>
|
| | | </div>
|
| | | <div class="ctrlHolder">
|
| | | <label for="data">{tmpl_var name='data_txt'}</label>
|
| | | <input name="data" id="data" value="{tmpl_var name='data'}" size="30" maxlength="255" type="text" class="textInput formLengthIPv4" />
|
| | | </div>
|
| | | <div class="ctrlHolder">
|
| | | <label for="ttl">{tmpl_var name='ttl_txt'}</label>
|
| | | <input name="ttl" id="ttl" value="{tmpl_var name='ttl'}" size="10" maxlength="10" type="text" class="textInput" />
|
| | | </div>
|
| | | <div class="ctrlHolder">
|
| | | <p class="label">{tmpl_var name='active_txt'}</p>
|
| | | <div class="multiField">
|
| | | {tmpl_var name='active'}
|
| | | </div>
|
| | | </div>
|
| | | </fieldset>
|
| | |
|
| | | <input type="hidden" name="id" value="{tmpl_var name='id'}">
|
| | | <input type="hidden" name="zone" value="{tmpl_var name='zone'}">
|
| | | <input type="hidden" name="type" value="{tmpl_var name='type'}">
|
| | |
|
| | | <div class="buttonHolder buttons">
|
| | | <button class="positive iconstxt icoPositive" type="button" value="{tmpl_var name='btn_save_txt'}" onClick="submitForm('pageForm','dns/dns_a_edit.php');"><span>{tmpl_var name='btn_save_txt'}</span></button>
|
| | | <button class="negative iconstxt icoNegative" type="button" value="{tmpl_var name='btn_cancel_txt'}" onClick="loadContent('dns/dns_soa_list.php');"><span>{tmpl_var name='btn_cancel_txt'}</span></button>
|
| | | </div>
|
| | | </div>
|
| | | |
| | | </div>
|
| | | <h2><tmpl_var name="list_head_txt"></h2> |
| | | <p><tmpl_var name="list_desc_txt"></p> |
| | | |
| | | <div class="panel panel_dns_a"> |
| | | |
| | | <div class="pnl_formsarea"> |
| | | <fieldset class="inlineLabels"> |
| | | <div class="ctrlHolder"> |
| | | <label for="name">{tmpl_var name='name_txt'}</label> |
| | | <input name="name" id="name" value="{tmpl_var name='name'}" size="30" maxlength="255" type="text" class="textInput" /> |
| | | <p class="formHint">{tmpl_var name='name_hint_txt'}</p> |
| | | </div> |
| | | <div class="ctrlHolder"> |
| | | <label for="data">{tmpl_var name='data_txt'}</label> |
| | | <input name="data" id="data" value="{tmpl_var name='data'}" size="30" maxlength="255" type="text" class="textInput formLengthIPv4" /> |
| | | </div> |
| | | <div class="ctrlHolder"> |
| | | <label for="ttl">{tmpl_var name='ttl_txt'}</label> |
| | | <input name="ttl" id="ttl" value="{tmpl_var name='ttl'}" size="10" maxlength="10" type="text" class="textInput" /> |
| | | </div> |
| | | <div class="ctrlHolder"> |
| | | <p class="label">{tmpl_var name='active_txt'}</p> |
| | | <div class="multiField"> |
| | | {tmpl_var name='active'} |
| | | </div> |
| | | </div> |
| | | </fieldset> |
| | | |
| | | <input type="hidden" name="id" value="{tmpl_var name='id'}"> |
| | | <input type="hidden" name="zone" value="{tmpl_var name='zone'}"> |
| | | <input type="hidden" name="type" value="{tmpl_var name='type'}"> |
| | | |
| | | <div class="buttonHolder buttons"> |
| | | <button class="positive iconstxt icoPositive" type="button" value="{tmpl_var name='btn_save_txt'}" onClick="submitForm('pageForm','dns/dns_a_edit.php');"><span>{tmpl_var name='btn_save_txt'}</span></button> |
| | | <button class="negative iconstxt icoNegative" type="button" value="{tmpl_var name='btn_cancel_txt'}" onClick="loadContent('dns/dns_soa_edit.php?id={tmpl_var name='zone'}');"><span>{tmpl_var name='btn_cancel_txt'}</span></button> |
| | | </div> |
| | | </div> |
| | | |
| | | </div> |
| | |
| | | |
| | | <div class="buttonHolder buttons"> |
| | | <button class="positive iconstxt icoPositive" type="button" value="{tmpl_var name='btn_save_txt'}" onClick="submitForm('pageForm','dns/dns_aaaa_edit.php');"><span>{tmpl_var name='btn_save_txt'}</span></button> |
| | | <button class="negative iconstxt icoNegative" type="button" value="{tmpl_var name='btn_cancel_txt'}" onClick="loadContent('dns/dns_soa_list.php');"><span>{tmpl_var name='btn_cancel_txt'}</span></button> |
| | | <button class="negative iconstxt icoNegative" type="button" value="{tmpl_var name='btn_cancel_txt'}" onClick="loadContent('dns/dns_soa_edit.php?id={tmpl_var name='zone'}');"><span>{tmpl_var name='btn_cancel_txt'}</span></button> |
| | | </div> |
| | | </div> |
| | | |
| | |
| | | <h2><tmpl_var name="list_head_txt"></h2>
|
| | | <p><tmpl_var name="list_desc_txt"></p>
|
| | |
|
| | | <div class="panel panel_dns_alias">
|
| | |
|
| | | <div class="pnl_formsarea">
|
| | | <fieldset class="inlineLabels">
|
| | | <div class="ctrlHolder">
|
| | | <label for="name">{tmpl_var name='name_txt'}</label>
|
| | | <input name="name" id="name" value="{tmpl_var name='name'}" size="30" maxlength="255" type="text" class="textInput" />
|
| | | </div>
|
| | | <div class="ctrlHolder">
|
| | | <label for="data">{tmpl_var name='data_txt'}</label>
|
| | | <input name="data" id="data" value="{tmpl_var name='data'}" size="30" maxlength="255" type="text" class="textInput" />
|
| | | </div>
|
| | | <div class="ctrlHolder">
|
| | | <label for="ttl">{tmpl_var name='ttl_txt'}</label>
|
| | | <input name="ttl" id="ttl" value="{tmpl_var name='ttl'}" size="10" maxlength="10" type="text" class="textInput" />
|
| | | </div>
|
| | | <div class="ctrlHolder">
|
| | | <p class="label">{tmpl_var name='active_txt'}</p>
|
| | | <div class="multiField">
|
| | | {tmpl_var name='active'}
|
| | | </div>
|
| | | </div>
|
| | | </fieldset>
|
| | |
|
| | | <input type="hidden" name="id" value="{tmpl_var name='id'}">
|
| | | <input type="hidden" name="zone" value="{tmpl_var name='zone'}">
|
| | | <input type="hidden" name="type" value="{tmpl_var name='type'}">
|
| | |
|
| | | <div class="buttonHolder buttons">
|
| | | <button class="positive iconstxt icoPositive" type="button" value="{tmpl_var name='btn_save_txt'}" onClick="submitForm('pageForm','dns/dns_alias_edit.php');"><span>{tmpl_var name='btn_save_txt'}</span></button>
|
| | | <button class="negative iconstxt icoNegative" type="button" value="{tmpl_var name='btn_cancel_txt'}" onClick="loadContent('dns/dns_soa_list.php');"><span>{tmpl_var name='btn_cancel_txt'}</span></button>
|
| | | </div>
|
| | | </div>
|
| | | |
| | | </div>
|
| | | <h2><tmpl_var name="list_head_txt"></h2> |
| | | <p><tmpl_var name="list_desc_txt"></p> |
| | | |
| | | <div class="panel panel_dns_alias"> |
| | | |
| | | <div class="pnl_formsarea"> |
| | | <fieldset class="inlineLabels"> |
| | | <div class="ctrlHolder"> |
| | | <label for="name">{tmpl_var name='name_txt'}</label> |
| | | <input name="name" id="name" value="{tmpl_var name='name'}" size="30" maxlength="255" type="text" class="textInput" /> |
| | | </div> |
| | | <div class="ctrlHolder"> |
| | | <label for="data">{tmpl_var name='data_txt'}</label> |
| | | <input name="data" id="data" value="{tmpl_var name='data'}" size="30" maxlength="255" type="text" class="textInput" /> |
| | | </div> |
| | | <div class="ctrlHolder"> |
| | | <label for="ttl">{tmpl_var name='ttl_txt'}</label> |
| | | <input name="ttl" id="ttl" value="{tmpl_var name='ttl'}" size="10" maxlength="10" type="text" class="textInput" /> |
| | | </div> |
| | | <div class="ctrlHolder"> |
| | | <p class="label">{tmpl_var name='active_txt'}</p> |
| | | <div class="multiField"> |
| | | {tmpl_var name='active'} |
| | | </div> |
| | | </div> |
| | | </fieldset> |
| | | |
| | | <input type="hidden" name="id" value="{tmpl_var name='id'}"> |
| | | <input type="hidden" name="zone" value="{tmpl_var name='zone'}"> |
| | | <input type="hidden" name="type" value="{tmpl_var name='type'}"> |
| | | |
| | | <div class="buttonHolder buttons"> |
| | | <button class="positive iconstxt icoPositive" type="button" value="{tmpl_var name='btn_save_txt'}" onClick="submitForm('pageForm','dns/dns_alias_edit.php');"><span>{tmpl_var name='btn_save_txt'}</span></button> |
| | | <button class="negative iconstxt icoNegative" type="button" value="{tmpl_var name='btn_cancel_txt'}" onClick="loadContent('dns/dns_soa_edit.php?id={tmpl_var name='zone'}');"><span>{tmpl_var name='btn_cancel_txt'}</span></button> |
| | | </div> |
| | | </div> |
| | | |
| | | </div> |
| | |
| | | <h2><tmpl_var name="list_head_txt"></h2>
|
| | | <p><tmpl_var name="list_desc_txt"></p>
|
| | |
|
| | | <div class="panel panel_dns_cname">
|
| | |
|
| | | <div class="pnl_formsarea">
|
| | | <fieldset class="inlineLabels">
|
| | | <div class="ctrlHolder">
|
| | | <label for="name">{tmpl_var name='name_txt'}</label>
|
| | | <input name="name" id="name" value="{tmpl_var name='name'}" size="30" maxlength="255" type="text" class="textInput" />
|
| | | </div>
|
| | | <div class="ctrlHolder">
|
| | | <label for="data">{tmpl_var name='data_txt'}</label>
|
| | | <input name="data" id="data" value="{tmpl_var name='data'}" size="30" maxlength="255" type="text" class="textInput" />
|
| | | </div>
|
| | | <div class="ctrlHolder">
|
| | | <label for="ttl">{tmpl_var name='ttl_txt'}</label>
|
| | | <input name="ttl" id="ttl" value="{tmpl_var name='ttl'}" size="10" maxlength="10" type="text" class="textInput" />
|
| | | </div>
|
| | | <div class="ctrlHolder">
|
| | | <p class="label">{tmpl_var name='active_txt'}</p>
|
| | | <div class="multiField">
|
| | | {tmpl_var name='active'}
|
| | | </div>
|
| | | </div>
|
| | | </fieldset>
|
| | |
|
| | | <input type="hidden" name="id" value="{tmpl_var name='id'}">
|
| | | <input type="hidden" name="zone" value="{tmpl_var name='zone'}">
|
| | | <input type="hidden" name="type" value="{tmpl_var name='type'}">
|
| | |
|
| | | <div class="buttonHolder buttons">
|
| | | <button class="positive iconstxt icoPositive" type="button" value="{tmpl_var name='btn_save_txt'}" onClick="submitForm('pageForm','dns/dns_cname_edit.php');"><span>{tmpl_var name='btn_save_txt'}</span></button>
|
| | | <button class="negative iconstxt icoNegative" type="button" value="{tmpl_var name='btn_cancel_txt'}" onClick="loadContent('dns/dns_soa_list.php');"><span>{tmpl_var name='btn_cancel_txt'}</span></button>
|
| | | </div>
|
| | | </div>
|
| | | |
| | | </div>
|
| | | <h2><tmpl_var name="list_head_txt"></h2> |
| | | <p><tmpl_var name="list_desc_txt"></p> |
| | | |
| | | <div class="panel panel_dns_cname"> |
| | | |
| | | <div class="pnl_formsarea"> |
| | | <fieldset class="inlineLabels"> |
| | | <div class="ctrlHolder"> |
| | | <label for="name">{tmpl_var name='name_txt'}</label> |
| | | <input name="name" id="name" value="{tmpl_var name='name'}" size="30" maxlength="255" type="text" class="textInput" /> |
| | | </div> |
| | | <div class="ctrlHolder"> |
| | | <label for="data">{tmpl_var name='data_txt'}</label> |
| | | <input name="data" id="data" value="{tmpl_var name='data'}" size="30" maxlength="255" type="text" class="textInput" /> |
| | | </div> |
| | | <div class="ctrlHolder"> |
| | | <label for="ttl">{tmpl_var name='ttl_txt'}</label> |
| | | <input name="ttl" id="ttl" value="{tmpl_var name='ttl'}" size="10" maxlength="10" type="text" class="textInput" /> |
| | | </div> |
| | | <div class="ctrlHolder"> |
| | | <p class="label">{tmpl_var name='active_txt'}</p> |
| | | <div class="multiField"> |
| | | {tmpl_var name='active'} |
| | | </div> |
| | | </div> |
| | | </fieldset> |
| | | |
| | | <input type="hidden" name="id" value="{tmpl_var name='id'}"> |
| | | <input type="hidden" name="zone" value="{tmpl_var name='zone'}"> |
| | | <input type="hidden" name="type" value="{tmpl_var name='type'}"> |
| | | |
| | | <div class="buttonHolder buttons"> |
| | | <button class="positive iconstxt icoPositive" type="button" value="{tmpl_var name='btn_save_txt'}" onClick="submitForm('pageForm','dns/dns_cname_edit.php');"><span>{tmpl_var name='btn_save_txt'}</span></button> |
| | | <button class="negative iconstxt icoNegative" type="button" value="{tmpl_var name='btn_cancel_txt'}" onClick="loadContent('dns/dns_soa_edit.php?id={tmpl_var name='zone'}');"><span>{tmpl_var name='btn_cancel_txt'}</span></button> |
| | | </div> |
| | | </div> |
| | | |
| | | </div> |
| | |
| | | <h2><tmpl_var name="list_head_txt"></h2>
|
| | | <p><tmpl_var name="list_desc_txt"></p>
|
| | |
|
| | | <div class="panel panel_dns_hinfo">
|
| | |
|
| | | <div class="pnl_formsarea">
|
| | | <fieldset class="inlineLabels">
|
| | | <div class="ctrlHolder">
|
| | | <label for="name">{tmpl_var name='name_txt'}</label>
|
| | | <input name="name" id="name" value="{tmpl_var name='name'}" size="30" maxlength="255" type="text" class="textInput" />
|
| | | </div>
|
| | | <div class="ctrlHolder">
|
| | | <label for="data">{tmpl_var name='data_txt'}</label>
|
| | | <input name="data" id="data" value="{tmpl_var name='data'}" size="30" maxlength="255" type="text" class="textInput" />
|
| | | </div>
|
| | | <div class="ctrlHolder">
|
| | | <label for="ttl">{tmpl_var name='ttl_txt'}</label>
|
| | | <input name="ttl" id="ttl" value="{tmpl_var name='ttl'}" size="10" maxlength="10" type="text" class="textInput" />
|
| | | </div>
|
| | | <div class="ctrlHolder">
|
| | | <p class="label">{tmpl_var name='active_txt'}</p>
|
| | | <div class="multiField">
|
| | | {tmpl_var name='active'}
|
| | | </div>
|
| | | </div>
|
| | | </fieldset>
|
| | |
|
| | | <input type="hidden" name="id" value="{tmpl_var name='id'}">
|
| | | <input type="hidden" name="zone" value="{tmpl_var name='zone'}">
|
| | | <input type="hidden" name="type" value="{tmpl_var name='type'}">
|
| | |
|
| | | <div class="buttonHolder buttons">
|
| | | <button class="positive iconstxt icoPositive" type="button" value="{tmpl_var name='btn_save_txt'}" onClick="submitForm('pageForm','dns/dns_hinfo_edit.php');"><span>{tmpl_var name='btn_save_txt'}</span></button>
|
| | | <button class="negative iconstxt icoNegative" type="button" value="{tmpl_var name='btn_cancel_txt'}" onClick="loadContent('dns/dns_soa_list.php');"><span>{tmpl_var name='btn_cancel_txt'}</span></button>
|
| | | </div>
|
| | | </div>
|
| | | |
| | | </div>
|
| | | <h2><tmpl_var name="list_head_txt"></h2> |
| | | <p><tmpl_var name="list_desc_txt"></p> |
| | | |
| | | <div class="panel panel_dns_hinfo"> |
| | | |
| | | <div class="pnl_formsarea"> |
| | | <fieldset class="inlineLabels"> |
| | | <div class="ctrlHolder"> |
| | | <label for="name">{tmpl_var name='name_txt'}</label> |
| | | <input name="name" id="name" value="{tmpl_var name='name'}" size="30" maxlength="255" type="text" class="textInput" /> |
| | | </div> |
| | | <div class="ctrlHolder"> |
| | | <label for="data">{tmpl_var name='data_txt'}</label> |
| | | <input name="data" id="data" value="{tmpl_var name='data'}" size="30" maxlength="255" type="text" class="textInput" /> |
| | | </div> |
| | | <div class="ctrlHolder"> |
| | | <label for="ttl">{tmpl_var name='ttl_txt'}</label> |
| | | <input name="ttl" id="ttl" value="{tmpl_var name='ttl'}" size="10" maxlength="10" type="text" class="textInput" /> |
| | | </div> |
| | | <div class="ctrlHolder"> |
| | | <p class="label">{tmpl_var name='active_txt'}</p> |
| | | <div class="multiField"> |
| | | {tmpl_var name='active'} |
| | | </div> |
| | | </div> |
| | | </fieldset> |
| | | |
| | | <input type="hidden" name="id" value="{tmpl_var name='id'}"> |
| | | <input type="hidden" name="zone" value="{tmpl_var name='zone'}"> |
| | | <input type="hidden" name="type" value="{tmpl_var name='type'}"> |
| | | |
| | | <div class="buttonHolder buttons"> |
| | | <button class="positive iconstxt icoPositive" type="button" value="{tmpl_var name='btn_save_txt'}" onClick="submitForm('pageForm','dns/dns_hinfo_edit.php');"><span>{tmpl_var name='btn_save_txt'}</span></button> |
| | | <button class="negative iconstxt icoNegative" type="button" value="{tmpl_var name='btn_cancel_txt'}" onClick="loadContent('dns/dns_soa_edit.php?id={tmpl_var name='zone'}');"><span>{tmpl_var name='btn_cancel_txt'}</span></button> |
| | | </div> |
| | | </div> |
| | | |
| | | </div> |
| | |
| | | <h2><tmpl_var name="list_head_txt"></h2>
|
| | | <p><tmpl_var name="list_desc_txt"></p>
|
| | |
|
| | | <div class="panel panel_dns_mx">
|
| | |
|
| | | <div class="pnl_formsarea">
|
| | | <fieldset class="inlineLabels">
|
| | | <div class="ctrlHolder">
|
| | | <label for="name">{tmpl_var name='name_txt'}</label>
|
| | | <input name="name" id="name" value="{tmpl_var name='name'}" size="30" maxlength="255" type="text" class="textInput" />
|
| | | </div>
|
| | | <div class="ctrlHolder">
|
| | | <label for="data">{tmpl_var name='data_txt'}</label>
|
| | | <input name="data" id="data" value="{tmpl_var name='data'}" size="30" maxlength="255" type="text" class="textInput" />
|
| | | </div>
|
| | | <div class="ctrlHolder">
|
| | | <label for="aux">{tmpl_var name='aux_txt'}</label>
|
| | | <input name="aux" id="aux" value="{tmpl_var name='aux'}" size="10" maxlength="10" type="text" class="textInput formLengthLimit" />
|
| | | </div>
|
| | | <div class="ctrlHolder">
|
| | | <label for="ttl">{tmpl_var name='ttl_txt'}</label>
|
| | | <input name="ttl" id="ttl" value="{tmpl_var name='ttl'}" size="10" maxlength="10" type="text" class="textInput" />
|
| | | </div>
|
| | | <div class="ctrlHolder">
|
| | | <p class="label">{tmpl_var name='active_txt'}</p>
|
| | | <div class="multiField">
|
| | | {tmpl_var name='active'}
|
| | | </div>
|
| | | </div>
|
| | | </fieldset>
|
| | |
|
| | | <input type="hidden" name="id" value="{tmpl_var name='id'}">
|
| | | <input type="hidden" name="zone" value="{tmpl_var name='zone'}">
|
| | | <input type="hidden" name="type" value="{tmpl_var name='type'}">
|
| | |
|
| | | <div class="buttonHolder buttons">
|
| | | <button class="positive iconstxt icoPositive" type="button" value="{tmpl_var name='btn_save_txt'}" onClick="submitForm('pageForm','dns/dns_mx_edit.php');"><span>{tmpl_var name='btn_save_txt'}</span></button>
|
| | | <button class="negative iconstxt icoNegative" type="button" value="{tmpl_var name='btn_cancel_txt'}" onClick="loadContent('dns/dns_soa_list.php');"><span>{tmpl_var name='btn_cancel_txt'}</span></button>
|
| | | </div>
|
| | | </div>
|
| | | |
| | | </div>
|
| | | <h2><tmpl_var name="list_head_txt"></h2> |
| | | <p><tmpl_var name="list_desc_txt"></p> |
| | | |
| | | <div class="panel panel_dns_mx"> |
| | | |
| | | <div class="pnl_formsarea"> |
| | | <fieldset class="inlineLabels"> |
| | | <div class="ctrlHolder"> |
| | | <label for="name">{tmpl_var name='name_txt'}</label> |
| | | <input name="name" id="name" value="{tmpl_var name='name'}" size="30" maxlength="255" type="text" class="textInput" /> |
| | | </div> |
| | | <div class="ctrlHolder"> |
| | | <label for="data">{tmpl_var name='data_txt'}</label> |
| | | <input name="data" id="data" value="{tmpl_var name='data'}" size="30" maxlength="255" type="text" class="textInput" /> |
| | | </div> |
| | | <div class="ctrlHolder"> |
| | | <label for="aux">{tmpl_var name='aux_txt'}</label> |
| | | <input name="aux" id="aux" value="{tmpl_var name='aux'}" size="10" maxlength="10" type="text" class="textInput formLengthLimit" /> |
| | | </div> |
| | | <div class="ctrlHolder"> |
| | | <label for="ttl">{tmpl_var name='ttl_txt'}</label> |
| | | <input name="ttl" id="ttl" value="{tmpl_var name='ttl'}" size="10" maxlength="10" type="text" class="textInput" /> |
| | | </div> |
| | | <div class="ctrlHolder"> |
| | | <p class="label">{tmpl_var name='active_txt'}</p> |
| | | <div class="multiField"> |
| | | {tmpl_var name='active'} |
| | | </div> |
| | | </div> |
| | | </fieldset> |
| | | |
| | | <input type="hidden" name="id" value="{tmpl_var name='id'}"> |
| | | <input type="hidden" name="zone" value="{tmpl_var name='zone'}"> |
| | | <input type="hidden" name="type" value="{tmpl_var name='type'}"> |
| | | |
| | | <div class="buttonHolder buttons"> |
| | | <button class="positive iconstxt icoPositive" type="button" value="{tmpl_var name='btn_save_txt'}" onClick="submitForm('pageForm','dns/dns_mx_edit.php');"><span>{tmpl_var name='btn_save_txt'}</span></button> |
| | | <button class="negative iconstxt icoNegative" type="button" value="{tmpl_var name='btn_cancel_txt'}" onClick="loadContent('dns/dns_soa_edit.php?id={tmpl_var name='zone'}');"><span>{tmpl_var name='btn_cancel_txt'}</span></button> |
| | | </div> |
| | | </div> |
| | | |
| | | </div> |
| | |
| | | <h2><tmpl_var name="list_head_txt"></h2>
|
| | | <p><tmpl_var name="list_desc_txt"></p>
|
| | |
|
| | | <div class="panel panel_dns_ns">
|
| | |
|
| | | <div class="pnl_formsarea">
|
| | | <fieldset class="inlineLabels">
|
| | | <div class="ctrlHolder">
|
| | | <label for="name">{tmpl_var name='name_txt'}</label>
|
| | | <input name="name" id="name" value="{tmpl_var name='name'}" size="30" maxlength="255" type="text" class="textInput" />
|
| | | </div>
|
| | | <div class="ctrlHolder">
|
| | | <label for="data">{tmpl_var name='data_txt'}</label>
|
| | | <input name="data" id="data" value="{tmpl_var name='data'}" size="30" maxlength="255" type="text" class="textInput" />
|
| | | </div>
|
| | | <div class="ctrlHolder">
|
| | | <label for="ttl">{tmpl_var name='ttl_txt'}</label>
|
| | | <input name="ttl" id="ttl" value="{tmpl_var name='ttl'}" size="10" maxlength="10" type="text" class="textInput" />
|
| | | </div>
|
| | | <div class="ctrlHolder">
|
| | | <p class="label">{tmpl_var name='active_txt'}</p>
|
| | | <div class="multiField">
|
| | | {tmpl_var name='active'}
|
| | | </div>
|
| | | </div>
|
| | | </fieldset>
|
| | |
|
| | | <input type="hidden" name="id" value="{tmpl_var name='id'}">
|
| | | <input type="hidden" name="zone" value="{tmpl_var name='zone'}">
|
| | | <input type="hidden" name="type" value="{tmpl_var name='type'}">
|
| | |
|
| | | <div class="buttonHolder buttons">
|
| | | <button class="positive iconstxt icoPositive" type="button" value="{tmpl_var name='btn_save_txt'}" onClick="submitForm('pageForm','dns/dns_ns_edit.php');"><span>{tmpl_var name='btn_save_txt'}</span></button>
|
| | | <button class="negative iconstxt icoNegative" type="button" value="{tmpl_var name='btn_cancel_txt'}" onClick="loadContent('dns/dns_soa_list.php');"><span>{tmpl_var name='btn_cancel_txt'}</span></button>
|
| | | </div>
|
| | | </div>
|
| | | |
| | | </div>
|
| | | <h2><tmpl_var name="list_head_txt"></h2> |
| | | <p><tmpl_var name="list_desc_txt"></p> |
| | | |
| | | <div class="panel panel_dns_ns"> |
| | | |
| | | <div class="pnl_formsarea"> |
| | | <fieldset class="inlineLabels"> |
| | | <div class="ctrlHolder"> |
| | | <label for="name">{tmpl_var name='name_txt'}</label> |
| | | <input name="name" id="name" value="{tmpl_var name='name'}" size="30" maxlength="255" type="text" class="textInput" /> |
| | | </div> |
| | | <div class="ctrlHolder"> |
| | | <label for="data">{tmpl_var name='data_txt'}</label> |
| | | <input name="data" id="data" value="{tmpl_var name='data'}" size="30" maxlength="255" type="text" class="textInput" /> |
| | | </div> |
| | | <div class="ctrlHolder"> |
| | | <label for="ttl">{tmpl_var name='ttl_txt'}</label> |
| | | <input name="ttl" id="ttl" value="{tmpl_var name='ttl'}" size="10" maxlength="10" type="text" class="textInput" /> |
| | | </div> |
| | | <div class="ctrlHolder"> |
| | | <p class="label">{tmpl_var name='active_txt'}</p> |
| | | <div class="multiField"> |
| | | {tmpl_var name='active'} |
| | | </div> |
| | | </div> |
| | | </fieldset> |
| | | |
| | | <input type="hidden" name="id" value="{tmpl_var name='id'}"> |
| | | <input type="hidden" name="zone" value="{tmpl_var name='zone'}"> |
| | | <input type="hidden" name="type" value="{tmpl_var name='type'}"> |
| | | |
| | | <div class="buttonHolder buttons"> |
| | | <button class="positive iconstxt icoPositive" type="button" value="{tmpl_var name='btn_save_txt'}" onClick="submitForm('pageForm','dns/dns_ns_edit.php');"><span>{tmpl_var name='btn_save_txt'}</span></button> |
| | | <button class="negative iconstxt icoNegative" type="button" value="{tmpl_var name='btn_cancel_txt'}" onClick="loadContent('dns/dns_soa_edit.php?id={tmpl_var name='zone'}');"><span>{tmpl_var name='btn_cancel_txt'}</span></button> |
| | | </div> |
| | | </div> |
| | | |
| | | </div> |
| | |
| | | <h2><tmpl_var name="list_head_txt"></h2>
|
| | | <p><tmpl_var name="list_desc_txt"></p>
|
| | |
|
| | | <div class="panel panel_dns_ptr">
|
| | |
|
| | | <div class="pnl_formsarea">
|
| | | <fieldset class="inlineLabels">
|
| | | <div class="ctrlHolder">
|
| | | <label for="name">{tmpl_var name='name_txt'}</label>
|
| | | <input name="name" id="name" value="{tmpl_var name='name'}" size="30" maxlength="255" type="text" class="textInput" />
|
| | | </div>
|
| | | <div class="ctrlHolder">
|
| | | <label for="data">{tmpl_var name='data_txt'}</label>
|
| | | <input name="data" id="data" value="{tmpl_var name='data'}" size="30" maxlength="255" type="text" class="textInput" />
|
| | | </div>
|
| | | <div class="ctrlHolder">
|
| | | <label for="ttl">{tmpl_var name='ttl_txt'}</label>
|
| | | <input name="ttl" id="ttl" value="{tmpl_var name='ttl'}" size="10" maxlength="10" type="text" class="textInput" />
|
| | | </div>
|
| | | <div class="ctrlHolder">
|
| | | <p class="label">{tmpl_var name='active_txt'}</p>
|
| | | <div class="multiField">
|
| | | {tmpl_var name='active'}
|
| | | </div>
|
| | | </div>
|
| | | </fieldset>
|
| | |
|
| | | <input type="hidden" name="id" value="{tmpl_var name='id'}">
|
| | | <input type="hidden" name="zone" value="{tmpl_var name='zone'}">
|
| | | <input type="hidden" name="type" value="{tmpl_var name='type'}">
|
| | |
|
| | | <div class="buttonHolder buttons">
|
| | | <button class="positive iconstxt icoPositive" type="button" value="{tmpl_var name='btn_save_txt'}" onClick="submitForm('pageForm','dns/dns_ptr_edit.php');"><span>{tmpl_var name='btn_save_txt'}</span></button>
|
| | | <button class="negative iconstxt icoNegative" type="button" value="{tmpl_var name='btn_cancel_txt'}" onClick="loadContent('dns/dns_soa_list.php');"><span>{tmpl_var name='btn_cancel_txt'}</span></button>
|
| | | </div>
|
| | | </div>
|
| | | |
| | | </div>
|
| | | <h2><tmpl_var name="list_head_txt"></h2> |
| | | <p><tmpl_var name="list_desc_txt"></p> |
| | | |
| | | <div class="panel panel_dns_ptr"> |
| | | |
| | | <div class="pnl_formsarea"> |
| | | <fieldset class="inlineLabels"> |
| | | <div class="ctrlHolder"> |
| | | <label for="name">{tmpl_var name='name_txt'}</label> |
| | | <input name="name" id="name" value="{tmpl_var name='name'}" size="30" maxlength="255" type="text" class="textInput" /> |
| | | </div> |
| | | <div class="ctrlHolder"> |
| | | <label for="data">{tmpl_var name='data_txt'}</label> |
| | | <input name="data" id="data" value="{tmpl_var name='data'}" size="30" maxlength="255" type="text" class="textInput" /> |
| | | </div> |
| | | <div class="ctrlHolder"> |
| | | <label for="ttl">{tmpl_var name='ttl_txt'}</label> |
| | | <input name="ttl" id="ttl" value="{tmpl_var name='ttl'}" size="10" maxlength="10" type="text" class="textInput" /> |
| | | </div> |
| | | <div class="ctrlHolder"> |
| | | <p class="label">{tmpl_var name='active_txt'}</p> |
| | | <div class="multiField"> |
| | | {tmpl_var name='active'} |
| | | </div> |
| | | </div> |
| | | </fieldset> |
| | | |
| | | <input type="hidden" name="id" value="{tmpl_var name='id'}"> |
| | | <input type="hidden" name="zone" value="{tmpl_var name='zone'}"> |
| | | <input type="hidden" name="type" value="{tmpl_var name='type'}"> |
| | | |
| | | <div class="buttonHolder buttons"> |
| | | <button class="positive iconstxt icoPositive" type="button" value="{tmpl_var name='btn_save_txt'}" onClick="submitForm('pageForm','dns/dns_ptr_edit.php');"><span>{tmpl_var name='btn_save_txt'}</span></button> |
| | | <button class="negative iconstxt icoNegative" type="button" value="{tmpl_var name='btn_cancel_txt'}" onClick="loadContent('dns/dns_soa_edit.php?id={tmpl_var name='zone'}');"><span>{tmpl_var name='btn_cancel_txt'}</span></button> |
| | | </div> |
| | | </div> |
| | | |
| | | </div> |
| | |
| | | <h2><tmpl_var name="list_head_txt"></h2>
|
| | | <p><tmpl_var name="list_desc_txt"></p>
|
| | |
|
| | | <div class="panel panel_dns_rp">
|
| | |
|
| | | <div class="pnl_formsarea">
|
| | | <fieldset class="inlineLabels">
|
| | | <div class="ctrlHolder">
|
| | | <label for="name">{tmpl_var name='name_txt'}</label>
|
| | | <input name="name" id="name" value="{tmpl_var name='name'}" size="30" maxlength="255" type="text" class="textInput" />
|
| | | </div>
|
| | | <div class="ctrlHolder">
|
| | | <label for="data">{tmpl_var name='data_txt'}</label>
|
| | | <input name="data" id="data" value="{tmpl_var name='data'}" size="30" maxlength="255" type="text" class="textInput" />
|
| | | </div>
|
| | | <div class="ctrlHolder">
|
| | | <label for="ttl">{tmpl_var name='ttl_txt'}</label>
|
| | | <input name="ttl" id="ttl" value="{tmpl_var name='ttl'}" size="10" maxlength="10" type="text" class="textInput" />
|
| | | </div>
|
| | | <div class="ctrlHolder">
|
| | | <p class="label">{tmpl_var name='active_txt'}</p>
|
| | | <div class="multiField">
|
| | | {tmpl_var name='active'}
|
| | | </div>
|
| | | </div>
|
| | | </fieldset>
|
| | |
|
| | | <input type="hidden" name="id" value="{tmpl_var name='id'}">
|
| | | <input type="hidden" name="zone" value="{tmpl_var name='zone'}">
|
| | | <input type="hidden" name="type" value="{tmpl_var name='type'}">
|
| | |
|
| | | <div class="buttonHolder buttons">
|
| | | <button class="positive iconstxt icoPositive" type="button" value="{tmpl_var name='btn_save_txt'}" onClick="submitForm('pageForm','dns/dns_rp_edit.php');"><span>{tmpl_var name='btn_save_txt'}</span></button>
|
| | | <button class="negative iconstxt icoNegative" type="button" value="{tmpl_var name='btn_cancel_txt'}" onClick="loadContent('dns/dns_soa_list.php');"><span>{tmpl_var name='btn_cancel_txt'}</span></button>
|
| | | </div>
|
| | | </div>
|
| | | |
| | | </div>
|
| | | <h2><tmpl_var name="list_head_txt"></h2> |
| | | <p><tmpl_var name="list_desc_txt"></p> |
| | | |
| | | <div class="panel panel_dns_rp"> |
| | | |
| | | <div class="pnl_formsarea"> |
| | | <fieldset class="inlineLabels"> |
| | | <div class="ctrlHolder"> |
| | | <label for="name">{tmpl_var name='name_txt'}</label> |
| | | <input name="name" id="name" value="{tmpl_var name='name'}" size="30" maxlength="255" type="text" class="textInput" /> |
| | | </div> |
| | | <div class="ctrlHolder"> |
| | | <label for="data">{tmpl_var name='data_txt'}</label> |
| | | <input name="data" id="data" value="{tmpl_var name='data'}" size="30" maxlength="255" type="text" class="textInput" /> |
| | | </div> |
| | | <div class="ctrlHolder"> |
| | | <label for="ttl">{tmpl_var name='ttl_txt'}</label> |
| | | <input name="ttl" id="ttl" value="{tmpl_var name='ttl'}" size="10" maxlength="10" type="text" class="textInput" /> |
| | | </div> |
| | | <div class="ctrlHolder"> |
| | | <p class="label">{tmpl_var name='active_txt'}</p> |
| | | <div class="multiField"> |
| | | {tmpl_var name='active'} |
| | | </div> |
| | | </div> |
| | | </fieldset> |
| | | |
| | | <input type="hidden" name="id" value="{tmpl_var name='id'}"> |
| | | <input type="hidden" name="zone" value="{tmpl_var name='zone'}"> |
| | | <input type="hidden" name="type" value="{tmpl_var name='type'}"> |
| | | |
| | | <div class="buttonHolder buttons"> |
| | | <button class="positive iconstxt icoPositive" type="button" value="{tmpl_var name='btn_save_txt'}" onClick="submitForm('pageForm','dns/dns_rp_edit.php');"><span>{tmpl_var name='btn_save_txt'}</span></button> |
| | | <button class="negative iconstxt icoNegative" type="button" value="{tmpl_var name='btn_cancel_txt'}" onClick="loadContent('dns/dns_soa_edit.php?id={tmpl_var name='zone'}');"><span>{tmpl_var name='btn_cancel_txt'}</span></button> |
| | | </div> |
| | | </div> |
| | | |
| | | </div> |
| | |
| | | <h2><tmpl_var name="list_head_txt"></h2>
|
| | | <p><tmpl_var name="list_desc_txt"></p>
|
| | |
|
| | | <div class="panel panel_dns_srv">
|
| | |
|
| | | <div class="pnl_formsarea">
|
| | | <fieldset class="inlineLabels">
|
| | | <div class="ctrlHolder">
|
| | | <label for="name">{tmpl_var name='name_txt'}</label>
|
| | | <input name="name" id="name" value="{tmpl_var name='name'}" size="30" maxlength="255" type="text" class="textInput" />
|
| | | </div>
|
| | | <div class="ctrlHolder">
|
| | | <label for="data">{tmpl_var name='data_txt'}</label>
|
| | | <input name="data" id="data" value="{tmpl_var name='data'}" size="30" maxlength="255" type="text" class="textInput" />
|
| | | </div>
|
| | | <div class="ctrlHolder">
|
| | | <label for="ttl">{tmpl_var name='ttl_txt'}</label>
|
| | | <input name="ttl" id="ttl" value="{tmpl_var name='ttl'}" size="10" maxlength="10" type="text" class="textInput" />
|
| | | </div>
|
| | | <div class="ctrlHolder">
|
| | | <p class="label">{tmpl_var name='active_txt'}</p>
|
| | | <div class="multiField">
|
| | | {tmpl_var name='active'}
|
| | | </div>
|
| | | </div>
|
| | | </fieldset>
|
| | |
|
| | | <input type="hidden" name="id" value="{tmpl_var name='id'}">
|
| | | <input type="hidden" name="zone" value="{tmpl_var name='zone'}">
|
| | | <input type="hidden" name="type" value="{tmpl_var name='type'}">
|
| | |
|
| | | <div class="buttonHolder buttons">
|
| | | <button class="positive iconstxt icoPositive" type="button" value="{tmpl_var name='btn_save_txt'}" onClick="submitForm('pageForm','dns/dns_srv_edit.php');"><span>{tmpl_var name='btn_save_txt'}</span></button>
|
| | | <button class="negative iconstxt icoNegative" type="button" value="{tmpl_var name='btn_cancel_txt'}" onClick="loadContent('dns/dns_soa_list.php');"><span>{tmpl_var name='btn_cancel_txt'}</span></button>
|
| | | </div>
|
| | | </div>
|
| | | |
| | | </div>
|
| | | <h2><tmpl_var name="list_head_txt"></h2> |
| | | <p><tmpl_var name="list_desc_txt"></p> |
| | | |
| | | <div class="panel panel_dns_srv"> |
| | | |
| | | <div class="pnl_formsarea"> |
| | | <fieldset class="inlineLabels"> |
| | | <div class="ctrlHolder"> |
| | | <label for="name">{tmpl_var name='name_txt'}</label> |
| | | <input name="name" id="name" value="{tmpl_var name='name'}" size="30" maxlength="255" type="text" class="textInput" /> |
| | | </div> |
| | | <div class="ctrlHolder"> |
| | | <label for="data">{tmpl_var name='data_txt'}</label> |
| | | <input name="data" id="data" value="{tmpl_var name='data'}" size="30" maxlength="255" type="text" class="textInput" /> |
| | | </div> |
| | | <div class="ctrlHolder"> |
| | | <label for="ttl">{tmpl_var name='ttl_txt'}</label> |
| | | <input name="ttl" id="ttl" value="{tmpl_var name='ttl'}" size="10" maxlength="10" type="text" class="textInput" /> |
| | | </div> |
| | | <div class="ctrlHolder"> |
| | | <p class="label">{tmpl_var name='active_txt'}</p> |
| | | <div class="multiField"> |
| | | {tmpl_var name='active'} |
| | | </div> |
| | | </div> |
| | | </fieldset> |
| | | |
| | | <input type="hidden" name="id" value="{tmpl_var name='id'}"> |
| | | <input type="hidden" name="zone" value="{tmpl_var name='zone'}"> |
| | | <input type="hidden" name="type" value="{tmpl_var name='type'}"> |
| | | |
| | | <div class="buttonHolder buttons"> |
| | | <button class="positive iconstxt icoPositive" type="button" value="{tmpl_var name='btn_save_txt'}" onClick="submitForm('pageForm','dns/dns_srv_edit.php');"><span>{tmpl_var name='btn_save_txt'}</span></button> |
| | | <button class="negative iconstxt icoNegative" type="button" value="{tmpl_var name='btn_cancel_txt'}" onClick="loadContent('dns/dns_soa_edit.php?id={tmpl_var name='zone'}');"><span>{tmpl_var name='btn_cancel_txt'}</span></button> |
| | | </div> |
| | | </div> |
| | | |
| | | </div> |
| | |
| | | <h2><tmpl_var name="list_head_txt"></h2>
|
| | | <p><tmpl_var name="list_desc_txt"></p>
|
| | |
|
| | | <div class="panel panel_dns_txt">
|
| | |
|
| | | <div class="pnl_formsarea">
|
| | | <fieldset class="inlineLabels">
|
| | | <div class="ctrlHolder">
|
| | | <label for="name">{tmpl_var name='name_txt'}</label>
|
| | | <input name="name" id="name" value="{tmpl_var name='name'}" size="30" maxlength="255" type="text" class="textInput" />
|
| | | </div>
|
| | | <div class="ctrlHolder">
|
| | | <label for="data">{tmpl_var name='data_txt'}</label>
|
| | | <input name="data" id="data" value="{tmpl_var name='data'}" size="30" maxlength="255" type="text" class="textInput" />
|
| | | </div>
|
| | | <div class="ctrlHolder">
|
| | | <label for="ttl">{tmpl_var name='ttl_txt'}</label>
|
| | | <input name="ttl" id="ttl" value="{tmpl_var name='ttl'}" size="10" maxlength="10" type="text" class="textInput" />
|
| | | </div>
|
| | | <div class="ctrlHolder">
|
| | | <p class="label">{tmpl_var name='active_txt'}</p>
|
| | | <div class="multiField">
|
| | | {tmpl_var name='active'}
|
| | | </div>
|
| | | </div>
|
| | | </fieldset>
|
| | |
|
| | | <input type="hidden" name="id" value="{tmpl_var name='id'}">
|
| | | <input type="hidden" name="zone" value="{tmpl_var name='zone'}">
|
| | | <input type="hidden" name="type" value="{tmpl_var name='type'}">
|
| | |
|
| | | <div class="buttonHolder buttons">
|
| | | <button class="positive iconstxt icoPositive" type="button" value="{tmpl_var name='btn_save_txt'}" onClick="submitForm('pageForm','dns/dns_txt_edit.php');"><span>{tmpl_var name='btn_save_txt'}</span></button>
|
| | | <button class="negative iconstxt icoNegative" type="button" value="{tmpl_var name='btn_cancel_txt'}" onClick="loadContent('dns/dns_soa_list.php');"><span>{tmpl_var name='btn_cancel_txt'}</span></button>
|
| | | </div>
|
| | | </div>
|
| | | |
| | | </div>
|
| | | <h2><tmpl_var name="list_head_txt"></h2> |
| | | <p><tmpl_var name="list_desc_txt"></p> |
| | | |
| | | <div class="panel panel_dns_txt"> |
| | | |
| | | <div class="pnl_formsarea"> |
| | | <fieldset class="inlineLabels"> |
| | | <div class="ctrlHolder"> |
| | | <label for="name">{tmpl_var name='name_txt'}</label> |
| | | <input name="name" id="name" value="{tmpl_var name='name'}" size="30" maxlength="255" type="text" class="textInput" /> |
| | | </div> |
| | | <div class="ctrlHolder"> |
| | | <label for="data">{tmpl_var name='data_txt'}</label> |
| | | <input name="data" id="data" value="{tmpl_var name='data'}" size="30" maxlength="255" type="text" class="textInput" /> |
| | | </div> |
| | | <div class="ctrlHolder"> |
| | | <label for="ttl">{tmpl_var name='ttl_txt'}</label> |
| | | <input name="ttl" id="ttl" value="{tmpl_var name='ttl'}" size="10" maxlength="10" type="text" class="textInput" /> |
| | | </div> |
| | | <div class="ctrlHolder"> |
| | | <p class="label">{tmpl_var name='active_txt'}</p> |
| | | <div class="multiField"> |
| | | {tmpl_var name='active'} |
| | | </div> |
| | | </div> |
| | | </fieldset> |
| | | |
| | | <input type="hidden" name="id" value="{tmpl_var name='id'}"> |
| | | <input type="hidden" name="zone" value="{tmpl_var name='zone'}"> |
| | | <input type="hidden" name="type" value="{tmpl_var name='type'}"> |
| | | |
| | | <div class="buttonHolder buttons"> |
| | | <button class="positive iconstxt icoPositive" type="button" value="{tmpl_var name='btn_save_txt'}" onClick="submitForm('pageForm','dns/dns_txt_edit.php');"><span>{tmpl_var name='btn_save_txt'}</span></button> |
| | | <button class="negative iconstxt icoNegative" type="button" value="{tmpl_var name='btn_cancel_txt'}" onClick="loadContent('dns/dns_soa_edit.php?id={tmpl_var name='zone'}');"><span>{tmpl_var name='btn_cancel_txt'}</span></button> |
| | | </div> |
| | | </div> |
| | | |
| | | </div> |
| | |
| | | </select> |
| | | </div> |
| | | </tmpl_if> |
| | | <tmpl_if name="is_reseller"> |
| | | <div class="ctrlHolder"> |
| | | <label for="client_group_id">{tmpl_var name='client_txt'}</label> |
| | | <select name="client_group_id" id="client_group_id" class="selectInput"> |
| | | {tmpl_var name='client_group_id'} |
| | | </select> |
| | | </div> |
| | | </tmpl_if> |
| | | <tmpl_if name="DOMAIN_VISIBLE"> |
| | | <div class="ctrlHolder"> |
| | | <label for="domain">{tmpl_var name='domain_txt'}</label> |
New file |
| | |
| | | <?php |
| | | $wb['Support Message'] = 'Mensagem de Suporte'; |
| | | $wb['Message'] = 'Mensagem'; |
| | | $wb['Send message'] = 'Enviar Mensagem'; |
| | | $wb['View messages'] = 'Ver Mensagem'; |
| | | $wb['Support'] = 'Suporte'; |
| | | ?> |
| | | |
New file |
| | |
| | | <?php |
| | | $wb['recipient_id_txt'] = 'Para'; |
| | | $wb['sender_id_txt'] = 'De'; |
| | | $wb['subject_txt'] = 'Assunto'; |
| | | $wb['message_txt'] = 'Mensagem'; |
| | | $wb['tstamp_txt'] = 'Data'; |
| | | ?> |
| | | |
New file |
| | |
| | | <?php |
| | | $wb['list_head_txt'] = 'Mensagens de Suporte'; |
| | | $wb['sender_id_txt'] = 'De'; |
| | | $wb['subject_txt'] = 'Assunto'; |
| | | $wb['add_new_record_txt'] = 'Crie uma nova mensagem de suporte'; |
| | | ?> |
| | | |
New file |
| | |
| | | <?php |
| | | $wb['1001'] = 'Nome de usuário ou senha em branco.'; |
| | | $wb['1002'] = 'Nome de usuário ou senha inválido.'; |
| | | $wb['1003'] = 'O usuário está bloqueado!'; |
| | | $wb['1004'] = 'Várias tentativas sem sucesso de login. Por favor tente novamente daqui a 15 minutos.'; |
| | | $wb['pass_reset_txt'] = 'Uma nova senha foi gerada e será enviada para você via correio eletrônico cadastrado no sistema.'; |
| | | $wb['pw_reset'] = 'Senha restabelecida! Será enviada para você via correio eletrônico cadastrado no sistema.'; |
| | | $wb['pw_error'] = 'Nome de usuário ou correio eletrônico não coincidem.'; |
| | | $wb['pw_error_noinput'] = 'Favor informar nome de usuário e endereço de correio válidos.'; |
| | | $wb['pw_reset_mail_msg'] = 'Sua senha do painel de controle foi restabelecida. A sua nova senha é: '; |
| | | $wb['pw_reset_mail_title'] = 'Sua senha do painel de controle foi restabelecida.'; |
| | | $wb['user_regex_error'] = 'O nome de usuário contém mais de 64 caracteres ou contém caracteres inválidos.'; |
| | | $wb['pw_error_length'] = 'Tamanho da senha não pode ser maior do que 64 caracteres.'; |
| | | ?> |
| | | |
| | |
| | | $wb['no_domain_perm'] = 'You have no permission for this domain.'; |
| | | $wb['destination_error_isemail'] = 'Destination Emailaddress is invalid.'; |
| | | $wb['limit_mailalias_txt'] = 'The max. number of email aliases for your account is reached.'; |
| | | $wb['duplicate_mailbox_txt'] = 'There is already a mailbox with this email address'; |
| | | ?> |
| | |
| | | $wb['destination_txt'] = 'Destination Email'; |
| | | $wb['active_txt'] = 'Active'; |
| | | $wb['limit_mailforward_txt'] = 'The max. number of email forwarders for your account is reached.'; |
| | | $wb['duplicate_mailbox_txt'] = 'There is already a mailbox with this email address'; |
| | | ?> |
| | |
| | | $wb['disablepop3_txt'] = 'Disable POP3'; |
| | | $wb['welcome_mail_fromname_txt'] = 'ISPConfig3'; |
| | | $wb['welcome_mail_fromemail_txt'] = 'webmaster@localhost.tld'; |
| | | $wb['duplicate_alias_or_forward_txt'] = 'There is already an alias or forwrd with this email address.'; |
| | | ?> |
| | |
| | | $wb['add_new_record_txt'] = 'Add new Filter'; |
| | | $wb['page_txt'] = 'Page'; |
| | | $wb['page_of_txt'] = 'of'; |
| | | $wb['delete_confirmation'] = 'Do you really want to Delete the mailfilter?'; |
| | | ?> |
| | |
| | | $wb['email_txt'] = 'Email'; |
| | | $wb['priority_txt'] = 'Priority'; |
| | | $wb['active_txt'] = 'Active'; |
| | | $wb['limit_spamfilter_wblist_txt'] = 'The max. number of White- or Blacklist records for your account is reached.'; |
| | | ?> |
| | |
| | | $wb['email_txt'] = 'Email'; |
| | | $wb['priority_txt'] = 'Priority'; |
| | | $wb['active_txt'] = 'Active'; |
| | | $wb['limit_spamfilter_wblist_txt'] = 'The max. number of White- or Blacklist records for your account is reached.'; |
| | | ?> |
New file |
| | |
| | | <?php |
| | | $wb['Email Alias'] = 'Aliases de Correio'; |
| | | $wb['Email Blacklist'] = 'Lista Negra de Correio'; |
| | | $wb['Blacklist'] = 'Lista Negra'; |
| | | $wb['Mail Content Filter'] = 'Filtro de Conteúdo de Correio'; |
| | | $wb['Filter'] = 'Filtro'; |
| | | $wb['Mail Domain'] = 'Domínio de Correio'; |
| | | $wb['Domain'] = 'Domínio'; |
| | | $wb['Email Catchall'] = 'Correio Catchall'; |
| | | $wb['Email Forward'] = 'Encaminhamento de Correio'; |
| | | $wb['Get Email'] = 'Get Email'; |
| | | $wb['Spamfilter'] = 'Filtro de Spam'; |
| | | $wb['Email Routing'] = 'Rota de Correio'; |
| | | $wb['Email transport'] = 'Transporte de Correio'; |
| | | $wb['Mailbox'] = 'Caixa de Correio'; |
| | | $wb['Autoresponder'] = 'Autoresponder'; |
| | | $wb['Mail Filter'] = 'Filtro de Correio'; |
| | | $wb['Custom Rules'] = 'Regras Personalizadas'; |
| | | $wb['Email filter'] = 'Filtro de Correio'; |
| | | $wb['Email Whitelist'] = 'Lista Branca de Correio'; |
| | | $wb['Whitelist'] = 'Lista Branca'; |
| | | $wb['Spamfilter blacklist'] = 'Filtro Spam (Lista Negra)'; |
| | | $wb['Blacklist'] = 'Lista Negra'; |
| | | $wb['Spamfilter Config'] = 'Configuração do Filtro Spam'; |
| | | $wb['Server'] = 'Servidor'; |
| | | $wb['Spamfilter policy'] = 'Políticas de Filtro Spam'; |
| | | $wb['Policy'] = 'Política'; |
| | | $wb['Quarantine'] = 'Quarentena'; |
| | | $wb['Tag-Level'] = 'Tag-Level'; |
| | | $wb['Other'] = 'Outros'; |
| | | $wb['Spamfilter users'] = 'Usuários de Filtro Spam'; |
| | | $wb['Users'] = 'Usuários'; |
| | | $wb['Spamfilter Whitelist'] = 'Filtro Spam Lista Branca'; |
| | | $wb['Whitelist'] = 'Lista Branca'; |
| | | $wb['Email'] = 'Correio'; |
| | | $wb['Email Mailbox'] = 'Caixa de Correio'; |
| | | $wb['Email Accounts'] = 'Contas de Correio'; |
| | | $wb['User / Domain'] = 'Usuário / Domínio'; |
| | | $wb['Server Settings'] = 'Configurações do Servidor'; |
| | | $wb['Spamfilter'] = 'Filtro Spam'; |
| | | $wb['Fetchmail'] = 'Fetchmail'; |
| | | $wb['Mailbox traffic'] = 'Tráfego de Correio'; |
| | | $wb['Statistics'] = 'Estatísticas'; |
| | | $wb['Postfix Whitelist'] = 'Postfix (Lista Branca)'; |
| | | $wb['Postfix Blacklist'] = 'Postfix (Lista Negra)'; |
| | | $wb['Content Filter'] = 'Filtros de Conteúdo'; |
| | | $wb['Global Filters'] = 'Filtros Globais'; |
| | | |
| | | ?> |
New file |
| | |
| | | <?php |
| | | $wb["email_txt"] = 'Correio'; |
| | | $wb["destination_txt"] = 'Destino'; |
| | | $wb["active_txt"] = 'Ativo'; |
| | | $wb["email_error_isemail"] = 'Endereço de correio inválido.'; |
| | | $wb["email_error_unique"] = 'Endereço de correio duplicado.'; |
| | | $wb["no_domain_perm"] = "Você não tem permissão para este domínio."; |
| | | $wb["destination_error_isemail"] = 'Endereço de destino inválido'; |
| | | $wb["limit_mailalias_txt"] = 'O número máximo de aliases para sua conta foi atingido.'; |
| | | ?> |
New file |
| | |
| | | <?php |
| | | $wb["list_head_txt"] = 'Email Alias'; |
| | | $wb["active_txt"] = 'Active'; |
| | | $wb["source_txt"] = 'source'; |
| | | $wb["destination_txt"] = 'Destination'; |
| | | $wb["email_txt"] = 'Email'; |
| | | $wb["add_new_record_txt"] = 'Add new Email alias'; |
| | | ?> |
New file |
| | |
| | | <?php |
| | | $wb["server_id_txt"] = 'Servidor'; |
| | | $wb["source_txt"] = 'Endereço Lista Negra'; |
| | | $wb["recipient_txt"] = 'Recipiente'; |
| | | $wb["active_txt"] = 'Ativo'; |
| | | $wb["source_error_notempty"] = 'Endereço em branco.'; |
| | | $wb["type_txt"] = 'Tipo'; |
| | | $wb["limit_mailfilter_txt"] = 'O número máximo de filtros de correio para sua conta foi atingido..'; |
| | | ?> |
New file |
| | |
| | | <?php |
| | | $wb["list_head_txt"] = 'Correio Lista Negra'; |
| | | $wb["active_txt"] = 'Ativo'; |
| | | $wb["server_id_txt"] = 'Servidor'; |
| | | $wb["source_txt"] = 'Correio na lista negra'; |
| | | $wb["type_txt"] = 'Tipo'; |
| | | $wb["recipient_txt"] = 'Recipiente'; |
| | | $wb["add_new_record_txt"] = 'Adcionar novo registro a lista'; |
| | | $wb["access_txt"] = 'acesso'; |
| | | ?> |
New file |
| | |
| | | <?php |
| | | $wb["server_id_txt"] = 'Servidor'; |
| | | $wb["type_txt"] = 'Filtro'; |
| | | $wb["pattern_txt"] = 'Padrão de Expressão Regular.'; |
| | | $wb["data_txt"] = 'Data'; |
| | | $wb["action_txt"] = 'Ação'; |
| | | $wb["active_txt"] = 'Ativo'; |
| | | $wb["pattern_error_empty"] = 'Padrão em branco'; |
| | | ?> |
New file |
| | |
| | | <?php |
| | | $wb["list_head_txt"] = 'Cabeçalhos Postfix e Body Checks'; |
| | | $wb["active_txt"] = 'Ativo'; |
| | | $wb["server_id_txt"] = 'Servidor'; |
| | | $wb["pattern_txt"] = 'Padrão'; |
| | | $wb["action_txt"] = 'Ação'; |
| | | $wb["add_new_record_txt"] = 'Adcionar um novo filtro de conteúdo'; |
| | | ?> |
New file |
| | |
| | | <?php |
| | | $wb['server_id_txt'] = 'Servidor'; |
| | | $wb['domain_txt'] = 'Domínio'; |
| | | $wb['type_txt'] = 'Tipo'; |
| | | $wb['active_txt'] = 'Ativo'; |
| | | $wb['domain_error_empty'] = 'Domínio em branco.'; |
| | | $wb['domain_error_unique'] = 'Domínio duplicado'; |
| | | $wb['domain_error_regex'] = 'Nome de domínio inválido'; |
| | | $wb['client_txt'] = 'Cliente'; |
| | | $wb['limit_maildomain_txt'] = 'O número máximo de contas de correio eletrônico para este domínio foi atingido.'; |
| | | $wb['policy_txt'] = 'Filtro Anti-Spam'; |
| | | $wb['no_policy'] = '- desativado -'; |
| | | ?> |
| | | |
New file |
| | |
| | | <?php |
| | | $wb["domain_txt"] = 'Domínio'; |
| | | $wb["destination_txt"] = 'Destino'; |
| | | $wb["active_txt"] = 'Ativo'; |
| | | $wb["domain_error_unique"] = "Já existe um registro de Catchall para este domínio."; |
| | | $wb["no_domain_perm"] = "Você não tem permissão para este domínio."; |
| | | $wb["domain_error_regex"] = 'O nome do domínio contém caracteres inválidos'; |
| | | $wb["limit_mailcatchall_txt"] = 'O número máximo de catchall para este domínio foi atingido.'; |
| | | ?> |
New file |
| | |
| | | <?php |
| | | $wb["list_head_txt"] = 'Catchall de Correio'; |
| | | $wb["active_txt"] = 'Ativo'; |
| | | $wb["source_txt"] = 'origem'; |
| | | $wb["destination_txt"] = 'Endereço de destino'; |
| | | $wb["server_id_txt"] = 'Servidor'; |
| | | $wb["domain_txt"] = 'Domínio'; |
| | | $wb["add_new_record_txt"] = 'Adcionar novo Catchall'; |
| | | ?> |
New file |
| | |
| | | <?php |
| | | $wb["list_head_txt"] = 'Domínio de Correio'; |
| | | $wb["server_id_txt"] = 'Servidor'; |
| | | $wb["domain_txt"] = 'Domínio'; |
| | | $wb["add_new_record_txt"] = 'Adcionar novo domínio'; |
| | | $wb["active_txt"] = 'Ativo'; |
| | | ?> |
New file |
| | |
| | | <?php |
| | | $wb["email_txt"] = 'Correio'; |
| | | $wb["destination_txt"] = 'Correio de Destino'; |
| | | $wb["active_txt"] = 'Ativo'; |
| | | $wb["limit_mailforward_txt"] = 'O número máximo de encaminhamentos para sua conta foi atingido.'; |
| | | ?> |
New file |
| | |
| | | <?php |
| | | $wb["list_head_txt"] = 'Encaminhamento de Correio'; |
| | | $wb["active_txt"] = 'Ativo'; |
| | | $wb["source_txt"] = 'origem'; |
| | | $wb["destination_txt"] = 'Destino'; |
| | | $wb["email_txt"] = 'Correio'; |
| | | $wb["add_new_record_txt"] = 'Adcionar novo encaminhamento'; |
| | | ?> |
New file |
| | |
| | | <?php |
| | | $wb["server_id_txt"] = 'Servidor'; |
| | | $wb["type_txt"] = 'Tipo'; |
| | | $wb["source_server_txt"] = 'Servidor Pop3/Imap'; |
| | | $wb["source_username_txt"] = 'Usuário'; |
| | | $wb["source_password_txt"] = 'Senha'; |
| | | $wb["source_delete_txt"] = 'Remover mensagens da origem após o recebimento'; |
| | | $wb["destination_txt"] = 'Destino'; |
| | | $wb["active_txt"] = 'Ativo'; |
| | | $wb["limit_fetchmail_txt"] = 'O número máximo de Fetchmail para sua conta foi atingido.'; |
| | | $wb["source_server_error_isempty"] = 'Servidor em branco.'; |
| | | $wb["source_username_error_isempty"] = 'Usuário em branco.'; |
| | | $wb["source_password_error_isempty"] = 'Senha em branco.'; |
| | | $wb["destination_error_isemail"] = 'Destino não selecionado.'; |
| | | ?> |
New file |
| | |
| | | <?php |
| | | $wb["list_head_txt"] = 'Fetch de mensagens de um servidor POP3 / IMAP'; |
| | | $wb["active_txt"] = 'Ativo'; |
| | | $wb["server_id_txt"] = 'Servidor'; |
| | | $wb["source_server_txt"] = 'Servidor Externo'; |
| | | $wb["source_username_txt"] = 'Usuário'; |
| | | $wb["destination_txt"] = 'Destino'; |
| | | $wb["add_new_record_txt"] = 'Adcionar nova Conta'; |
| | | ?> |
New file |
| | |
| | | <?php |
| | | $wb["email_txt"] = 'Email'; |
| | | $wb["spam_rewrite_score_int_txt"] = 'Pontução de Rewrite'; |
| | | $wb["spam_redirect_score_int_txt"] = 'Pontuação de Redirecionamento'; |
| | | $wb["spam_delete_score_int_txt"] = 'Remover Pontuação'; |
| | | $wb["spam_rewrite_subject_txt"] = 'Re-escrever assunto'; |
| | | $wb["spam_redirect_maildir_txt"] = 'Redirecionar Caixa de Correio'; |
| | | $wb["active_txt"] = 'Active'; |
| | | $wb["spam_rewrite_txt"] = 'Re-escrever assunto da mensagem depois desta pontuação.'; |
| | | $wb["spam_redirect_txt"] = 'Redirecione esta mensagem depois desta pontuação para esta caixa postal'; |
| | | $wb["spam_delete_txt"] = 'Remover esta mensagem depois desta pontuação.'; |
| | | $wb["disable_txt"] = 'Dica: Para desativar uma opção de filtro, configure a pontuação como 0.00.'; |
| | | $wb["email_error_isemail"] = 'Endereço de correio inválido.'; |
| | | $wb["email_error_unique"] = 'Já existem registros de spamfilter para esta caixa de correio.'; |
| | | $wb["spam_redirect_maildir_purge_txt"] = 'Remover Maildir depois'; |
| | | $wb["days_txt"] = 'Dias.'; |
| | | ?> |
New file |
| | |
| | | <?php |
| | | $wb['list_head_txt'] = 'Filtro Anti-Spam'; |
| | | $wb['active_txt'] = 'Ativo'; |
| | | $wb['server_id_txt'] = 'Servidor'; |
| | | $wb['server_name_txt'] = 'nome_servidor'; |
| | | $wb['email_txt'] = 'Correio'; |
| | | $wb['add_new_record_txt'] = 'Adcionar novo filtro anti-spam'; |
| | | ?> |
| | | |
New file |
| | |
| | | <?php |
| | | $wb["server_id_txt"] = 'Servidor'; |
| | | $wb["domain_txt"] = 'Domínio'; |
| | | $wb["destination_txt"] = 'Destino'; |
| | | $wb["type_txt"] = 'Tipo'; |
| | | $wb["mx_txt"] = 'Sem MX lookup'; |
| | | $wb["sort_order_txt"] = 'Ordenar por'; |
| | | $wb["active_txt"] = 'Ativo'; |
| | | $wb["limit_mailrouting_txt"] = 'O número máximo de rotas para sua conta foi atingido.'; |
| | | ?> |
New file |
| | |
| | | <?php |
| | | $wb["list_head_txt"] = 'Rota Avançada de Correio'; |
| | | $wb["active_txt"] = 'Ativa'; |
| | | $wb["server_id_txt"] = 'Servidor'; |
| | | $wb["domain_txt"] = 'Domínio'; |
| | | $wb["transport_txt"] = 'Transporte'; |
| | | $wb["sort_order_txt"] = 'Ordenar por'; |
| | | $wb["add_new_record_txt"] = 'Adcionar um novo transporte'; |
| | | ?> |
New file |
| | |
| | | <?php |
| | | $wb["custom_mailfilter_txt"] = 'Formula de filtro de correio'; |
| | | $wb["email_txt"] = 'Correio'; |
| | | $wb["cryptpwd_txt"] = 'Senha'; |
| | | $wb["password_strength_txt"] = 'Tamanho da Senha'; |
| | | $wb["active_txt"] = 'Ativo'; |
| | | $wb["email_error_isemail"] = 'Endereço de Correio Inválido.'; |
| | | $wb["email_error_unique"] = 'Endereço de Correio Duplicado.'; |
| | | $wb["autoresponder_text_txt"] = 'Texto'; |
| | | $wb["autoresponder_txt"] = 'Autoresponder'; |
| | | $wb["no_domain_perm"] = 'Sem permissão para este domínio.'; |
| | | $wb["error_no_pwd"] = 'Senha em branco.'; |
| | | $wb["quota_error_isint"] = 'O tamanho da caixa de correio deve ser um número.'; |
| | | $wb["quota_txt"] = 'Quota'; |
| | | $wb["server_id_txt"] = 'Aerver_id'; |
| | | $wb["password_txt"] = 'Senha'; |
| | | $wb["maildir_txt"] = 'Maildir'; |
| | | $wb["postfix_txt"] = 'Habilitar Recebimento'; |
| | | $wb["access_txt"] = 'Habilitar Acesso'; |
| | | $wb["policy_txt"] = 'Spamfilter'; |
| | | $wb["no_policy"] = '- desativado -'; |
| | | $wb["limit_mailbox_txt"] = 'O número máximo de caixas de correio para sua conta foi atingido.'; |
| | | $wb["limit_mailquota_txt"] = 'O espaço em disco disponível para criação de contas foi atingido.'; |
| | | $wb["welcome_mail_fromname_txt"] = 'ISPConfig3'; |
| | | $wb["welcome_mail_fromemail_txt"] = "webmaster@localhost.tld"; |
| | | $wb["welcome_mail_subject"] = 'Parabéns sua conta de correio foi criada.'; |
| | | $wb["welcome_mail_message"] = "Parabéns sua conta de correio foi criada. Att. Seu webmaster."; |
| | | $wb["disableimap_txt"] = 'Desativar IMAP'; |
| | | $wb["disablepop3_txt"] = 'Disativar POP3'; |
| | | ?> |
| | | |
New file |
| | |
| | | <?php |
| | | $wb["rulename_txt"] = 'Nome'; |
| | | $wb["action_txt"] = 'Ação'; |
| | | $wb["target_txt"] = 'Pasta'; |
| | | $wb["active_txt"] = 'Ativo'; |
| | | $wb["rulename_error_empty"] = 'Nome está em branco.'; |
| | | $wb["searchterm_is_empty"] = 'Termo de busca em branco.'; |
| | | $wb["source_txt"] = 'Origem'; |
| | | ?> |
New file |
| | |
| | | <?php |
| | | $wb["rulename_txt"] = 'Nome'; |
| | | $wb["add_new_record_txt"] = 'Adcionar novo filtro'; |
| | | $wb["page_txt"] = 'Página'; |
| | | $wb["page_of_txt"] = 'de'; |
| | | ?> |
New file |
| | |
| | | <?php |
| | | $wb["list_head_txt"] = 'Caixa de Correio'; |
| | | $wb["email_txt"] = 'Correio'; |
| | | $wb["autoresponder_txt"] = 'Autoresponder'; |
| | | $wb["add_new_record_txt"] = 'Adcionar nova caixa de correio'; |
| | | ?> |
New file |
| | |
| | | <?php |
| | | $wb["list_head_txt"] = 'Tráfego de Correio'; |
| | | $wb["email_txt"] = 'Correio'; |
| | | $wb["this_month_txt"] = 'Este Mês'; |
| | | $wb["last_month_txt"] = 'Último Mês'; |
| | | $wb["this_year_txt"] = 'Este Ano'; |
| | | $wb["last_year_txt"] = 'Último Ano'; |
| | | ?> |
New file |
| | |
| | | <?php |
| | | $wb["server_id_txt"] = 'Servidor'; |
| | | $wb["source_txt"] = 'Endereço Lista Branca'; |
| | | $wb["recipient_txt"] = 'Recipiente'; |
| | | $wb["active_txt"] = 'Activo'; |
| | | $wb["source_error_notempty"] = 'Endereço em Branco.'; |
| | | $wb["type_txt"] = 'Tipo'; |
| | | $wb["limit_mailfilter_txt"] = 'O número máximo de filtros para sua conta foi atingido.'; |
| | | ?> |
New file |
| | |
| | | <?php |
| | | $wb["list_head_txt"] = 'Correio Lista Branca'; |
| | | $wb["active_txt"] = 'Ativo'; |
| | | $wb["server_id_txt"] = 'Servidor'; |
| | | $wb["source_txt"] = 'Endereços na Lista Branca'; |
| | | $wb["type_txt"] = 'Tipo'; |
| | | $wb["recipient_txt"] = 'Recipiente'; |
| | | $wb["add_new_record_txt"] = 'Adcionar um novo registro a lista'; |
| | | $wb["access_txt"] = 'acesso'; |
| | | ?> |
New file |
| | |
| | | <?php |
| | | $wb["server_id_txt"] = 'Servidor'; |
| | | $wb["wb_txt"] = 'wb'; |
| | | $wb["rid_txt"] = 'Usuário'; |
| | | $wb["email_txt"] = 'Email'; |
| | | $wb["priority_txt"] = 'Prioridade'; |
| | | $wb["active_txt"] = 'Ativo'; |
| | | ?> |
New file |
| | |
| | | <?php |
| | | $wb["list_head_txt"] = 'Spamfilter Lista Negra'; |
| | | $wb["active_txt"] = 'Ativo'; |
| | | $wb["server_id_txt"] = 'Servidor'; |
| | | $wb["priority_txt"] = 'Prioridade'; |
| | | $wb["rid_txt"] = 'Usuário'; |
| | | $wb["email_txt"] = 'Correio na Lista Negra'; |
| | | $wb["add_new_record_txt"] = 'Adcionar novo registro a lista'; |
| | | ?> |
New file |
| | |
| | | <?php |
| | | $wb['getmail_config_dir_txt'] = 'Caminho de Configuração Getmail '; |
| | | $wb['ip_address_txt'] = 'Endereço IP'; |
| | | $wb['netmask_txt'] = 'Mascara de Rede'; |
| | | $wb['gateway_txt'] = 'Gateway'; |
| | | $wb['hostname_txt'] = 'Hostname'; |
| | | $wb['nameservers_txt'] = 'Servidor de Nomes'; |
| | | $wb['module_txt'] = 'Server Module'; |
| | | $wb['maildir_path_txt'] = 'Caminho do Maildir'; |
| | | $wb['homedir_path_txt'] = 'Caminho do Homedir'; |
| | | $wb['mailuser_uid_txt'] = 'Usuário de Correio UID'; |
| | | $wb['mailuser_gid_txt'] = 'Usuário de Correio GID'; |
| | | $wb['mailuser_name_txt'] = 'Nome do Usuário de Correio'; |
| | | $wb['mailuser_group_txt'] = 'Grupo do Usuário de Correio'; |
| | | $wb['relayhost_txt'] = 'Host Relay'; |
| | | $wb['relayhost_user_txt'] = 'Usuário Host Relay'; |
| | | $wb['relayhost_password_txt'] = 'Senha Host Relay'; |
| | | $wb['mailbox_size_limit_txt'] = 'Tamanho Caixa de Correio'; |
| | | $wb['message_size_limit_txt'] = 'Tamanho da Mensagem'; |
| | | ?> |
| | | |
New file |
| | |
| | | <?php |
| | | $wb["list_head_txt"] = 'Configurações do Servidor'; |
| | | $wb["server_name_txt"] = 'Servidor'; |
| | | $wb["server_id_txt"] = 'id_servidor'; |
| | | ?> |
New file |
| | |
| | | <?php |
| | | $wb["policy_name_txt"] = 'Nome da Regra'; |
| | | $wb["virus_lover_txt"] = 'Virusl lover'; |
| | | $wb["spam_lover_txt"] = 'SPAM lover'; |
| | | $wb["banned_files_lover_txt"] = 'Banned files lover'; |
| | | $wb["bad_header_lover_txt"] = 'Bad header lover'; |
| | | $wb["bypass_virus_checks_txt"] = 'Bypass virus checks'; |
| | | $wb["bypass_banned_checks_txt"] = 'Bypass banned checks'; |
| | | $wb["bypass_header_checks_txt"] = 'Bypass header checks'; |
| | | $wb["virus_quarantine_to_txt"] = 'Forward virus to email'; |
| | | $wb["spam_quarantine_to_txt"] = 'Forward spam to email'; |
| | | $wb["banned_quarantine_to_txt"] = 'Forward banned to email'; |
| | | $wb["bad_header_quarantine_to_txt"] = 'Forward bad header to email'; |
| | | $wb["clean_quarantine_to_txt"] = 'Forward clean to email'; |
| | | $wb["other_quarantine_to_txt"] = 'Forward other to email'; |
| | | $wb["spam_tag_level_txt"] = 'SPAM tag level'; |
| | | $wb["spam_tag2_level_txt"] = 'SPAM tag2 level'; |
| | | $wb["spam_kill_level_txt"] = 'SPAM kill level'; |
| | | $wb["spam_dsn_cutoff_level_txt"] = 'SPAM dsn cutoff level'; |
| | | $wb["spam_quarantine_cutoff_level_txt"] = 'SPAM quarantine cutoff level'; |
| | | $wb["spam_modifies_subj_txt"] = 'SPAM modifies subject'; |
| | | $wb["spam_subject_tag_txt"] = 'SPAM subject tag'; |
| | | $wb["spam_subject_tag2_txt"] = 'SPAM subject tag2'; |
| | | $wb["addr_extension_virus_txt"] = 'Addr. extension virus'; |
| | | $wb["addr_extension_spam_txt"] = 'Addr. extension SPAM'; |
| | | $wb["addr_extension_banned_txt"] = 'Addr. extension banned'; |
| | | $wb["addr_extension_bad_header_txt"] = 'Addr extension bad header'; |
| | | $wb["warnvirusrecip_txt"] = 'Warn virus recip.'; |
| | | $wb["warnbannedrecip_txt"] = 'Warn banned recip.'; |
| | | $wb["warnbadhrecip_txt"] = 'Warn bad header recip.'; |
| | | $wb["newvirus_admin_txt"] = 'Newvirus admin'; |
| | | $wb["virus_admin_txt"] = 'Virus admin'; |
| | | $wb["banned_admin_txt"] = 'Banned admin'; |
| | | $wb["bad_header_admin_txt"] = 'Bad header admin'; |
| | | $wb["spam_admin_txt"] = 'SPAM admin'; |
| | | $wb["message_size_limit_txt"] = 'Message size limit'; |
| | | $wb["banned_rulenames_txt"] = 'Banned rulenames'; |
| | | ?> |
New file |
| | |
| | | <?php |
| | | $wb["list_head_txt"] = 'Políticas de Spam'; |
| | | $wb["policy_name_txt"] = 'Nome'; |
| | | $wb["virus_lover_txt"] = 'Virus lover'; |
| | | $wb["spam_lover_txt"] = 'Spam lover'; |
| | | $wb["banned_files_lover_txt"] = 'Banned Files lover'; |
| | | $wb["bad_header_lover_txt"] = 'Bad Header lover'; |
| | | $wb["add_new_record_txt"] = 'Adcionar Registro'; |
| | | ?> |
New file |
| | |
| | | <?php |
| | | $wb["server_id_txt"] = 'Servidor'; |
| | | $wb["priority_txt"] = 'Prioridade'; |
| | | $wb["policy_id_txt"] = 'Política'; |
| | | $wb["email_txt"] = 'Correio (Padrão)'; |
| | | $wb["fullname_txt"] = 'Nome'; |
| | | $wb["local_txt"] = 'Local'; |
| | | ?> |
New file |
| | |
| | | <?php |
| | | $wb["list_head_txt"] = 'Filtro Anti-Spam Usuários'; |
| | | $wb["local_txt"] = 'Local'; |
| | | $wb["server_id_txt"] = 'Servidor'; |
| | | $wb["priority_txt"] = 'Prioridade'; |
| | | $wb["policy_id_txt"] = 'Políticas'; |
| | | $wb["fullname_txt"] = 'Nome'; |
| | | $wb["email_txt"] = 'Email'; |
| | | $wb["add_new_record_txt"] = 'Adcionar Usuário'; |
| | | ?> |
New file |
| | |
| | | <?php |
| | | $wb["server_id_txt"] = 'Server'; |
| | | $wb["wb_txt"] = 'wb'; |
| | | $wb["rid_txt"] = 'User'; |
| | | $wb["email_txt"] = 'Email'; |
| | | $wb["priority_txt"] = 'Priority'; |
| | | $wb["active_txt"] = 'Active'; |
| | | ?> |
New file |
| | |
| | | <?php |
| | | $wb["list_head_txt"] = 'Spamfilter Lista Branca'; |
| | | $wb["active_txt"] = 'Ativo'; |
| | | $wb["server_id_txt"] = 'Servidor'; |
| | | $wb["priority_txt"] = 'Prioridade'; |
| | | $wb["rid_txt"] = 'Usuário'; |
| | | $wb["email_txt"] = 'Correio na lista branca'; |
| | | $wb["add_new_record_txt"] = 'Adcionar um novo correio'; |
| | | ?> |
| | |
| | | $wb['no_domain_perm'] = 'Sie haben keine Berechtigung für diese Domain.'; |
| | | $wb['destination_error_isemail'] = 'Ziel Emailadresse ist ungültig.'; |
| | | $wb['limit_mailalias_txt'] = 'The max. number of email aliases for your account is reached.'; |
| | | $wb['duplicate_mailbox_txt'] = 'There is already a mailbox with this email address'; |
| | | ?> |
| | |
| | | $wb['destination_txt'] = 'Ziel Emailadresse'; |
| | | $wb['active_txt'] = 'Aktiv'; |
| | | $wb['limit_mailforward_txt'] = 'Die max. Anzahl an Emailweiterleitungen für ihren Account wurde erreicht.'; |
| | | $wb['duplicate_mailbox_txt'] = 'There is already a mailbox with this email address'; |
| | | ?> |
| | |
| | | $wb['password_strength_txt'] = 'Passwortkomplexität'; |
| | | $wb['welcome_mail_fromname_txt'] = 'ISPConfig3'; |
| | | $wb['welcome_mail_fromemail_txt'] = 'webmaster@ihredomain.at'; |
| | | $wb['duplicate_alias_or_forward_txt'] = 'There is already an alias or forwrd with this email address.'; |
| | | ?> |
| | |
| | | $wb['add_new_record_txt'] = 'Neuen Filter hinzufügen'; |
| | | $wb['page_txt'] = 'Seite'; |
| | | $wb['page_of_txt'] = 'von'; |
| | | $wb['delete_confirmation'] = 'Do you really want to Delete the mailfilter?'; |
| | | ?> |
| | |
| | | $wb['email_txt'] = 'Emailadresse'; |
| | | $wb['priority_txt'] = 'Priorität'; |
| | | $wb['active_txt'] = 'Aktiv'; |
| | | $wb['limit_spamfilter_wblist_txt'] = 'The max. number of White- or Blacklist records for your account is reached.'; |
| | | ?> |
| | |
| | | $wb['email_txt'] = 'Email'; |
| | | $wb['priority_txt'] = 'Priorität'; |
| | | $wb['active_txt'] = 'Aktiv'; |
| | | $wb['limit_spamfilter_wblist_txt'] = 'The max. number of White- or Blacklist records for your account is reached.'; |
| | | ?> |
| | |
| | | $wb["no_domain_perm"] = "You have no permission for this domain."; |
| | | $wb["destination_error_isemail"] = 'Destination Emailaddress is invalid.'; |
| | | $wb["limit_mailalias_txt"] = 'The max. number of email aliases for your account is reached.'; |
| | | $wb["duplicate_mailbox_txt"] = 'There is already a mailbox with this email address'; |
| | | ?> |
| | |
| | | $wb["destination_txt"] = 'Destination Email'; |
| | | $wb["active_txt"] = 'Active'; |
| | | $wb["limit_mailforward_txt"] = 'The max. number of email forwarders for your account is reached.'; |
| | | $wb["duplicate_mailbox_txt"] = 'There is already a mailbox with this email address'; |
| | | ?> |
| | |
| | | $wb["welcome_mail_message"] = "Welcome to your new email account. Your webmaster."; |
| | | $wb["disableimap_txt"] = 'Disable IMAP'; |
| | | $wb["disablepop3_txt"] = 'Disable POP3'; |
| | | $wb["duplicate_alias_or_forward_txt"] = 'There is already an alias or forwrd with this email address.'; |
| | | ?> |
| | |
| | | $wb["add_new_record_txt"] = 'Add new Filter'; |
| | | $wb["page_txt"] = 'Page'; |
| | | $wb["page_of_txt"] = 'of'; |
| | | $wb["delete_confirmation"] = 'Do you really want to Delete the mailfilter?'; |
| | | ?> |
| | |
| | | $wb['no_domain_perm'] = 'No tiene permiso para este dominio'; |
| | | $wb['destination_error_isemail'] = 'La dirección de correo de destino no es válida'; |
| | | $wb['limit_mailalias_txt'] = 'Ha alcanzado el número máximo de alias de correo para esta cuenta'; |
| | | $wb['duplicate_mailbox_txt'] = 'There is already a mailbox with this email address'; |
| | | ?> |
| | |
| | | $wb['destination_txt'] = 'Correo de destino'; |
| | | $wb['active_txt'] = 'Activar'; |
| | | $wb['limit_mailforward_txt'] = 'Se ha alcanzado el número máximo de reenvíos para esta cuenta'; |
| | | $wb['duplicate_mailbox_txt'] = 'There is already a mailbox with this email address'; |
| | | ?> |
| | |
| | | $wb['disablepop3_txt'] = 'Disable POP3'; |
| | | $wb['welcome_mail_fromname_txt'] = 'ISPConfig3'; |
| | | $wb['welcome_mail_fromemail_txt'] = 'webmaster@localhost.tld'; |
| | | $wb['duplicate_alias_or_forward_txt'] = 'There is already an alias or forwrd with this email address.'; |
| | | ?> |
| | |
| | | $wb['add_new_record_txt'] = 'Añadir nuevo filtro'; |
| | | $wb['page_txt'] = 'Page'; |
| | | $wb['page_of_txt'] = 'of'; |
| | | $wb['delete_confirmation'] = 'Do you really want to Delete the mailfilter?'; |
| | | ?> |
| | |
| | | $wb['email_txt'] = 'Correo'; |
| | | $wb['priority_txt'] = 'Prioridad'; |
| | | $wb['active_txt'] = 'Activar'; |
| | | $wb['limit_spamfilter_wblist_txt'] = 'The max. number of White- or Blacklist records for your account is reached.'; |
| | | ?> |
| | |
| | | $wb['email_txt'] = 'Correo'; |
| | | $wb['priority_txt'] = 'Prioridad'; |
| | | $wb['active_txt'] = 'Activar'; |
| | | $wb['limit_spamfilter_wblist_txt'] = 'The max. number of White- or Blacklist records for your account is reached.'; |
| | | ?> |
| | |
| | | $wb['no_domain_perm'] = 'Käyttäjätunnuksella ei ole oikeuksia tähän verkkotunnukseen.'; |
| | | $wb['destination_error_isemail'] = 'Kohteena oleva sähköpostiosoite on vääränlainen.'; |
| | | $wb['limit_mailalias_txt'] = 'Käyttäjätunnuksella on jo sallittu määrä aliasosoitteita.'; |
| | | $wb['duplicate_mailbox_txt'] = 'There is already a mailbox with this email address'; |
| | | ?> |
| | |
| | | $wb['destination_txt'] = 'Vastaanottajan sähköposti'; |
| | | $wb['active_txt'] = 'Käytössä'; |
| | | $wb['limit_mailforward_txt'] = 'Käyttäjätunnuksella on jo sallittu määrä edelleenlähetysosoitteita.'; |
| | | $wb['duplicate_mailbox_txt'] = 'There is already a mailbox with this email address'; |
| | | ?> |
| | |
| | | $wb['disableimap_txt'] = 'Estä IMAP'; |
| | | $wb['disablepop3_txt'] = 'Estä POP3'; |
| | | $wb['password_strength_txt'] = 'Salasanan vahvuus'; |
| | | $wb['duplicate_alias_or_forward_txt'] = 'There is already an alias or forwrd with this email address.'; |
| | | ?> |
| | |
| | | $wb['add_new_record_txt'] = 'Lisää uusi suodatussääntö'; |
| | | $wb['page_txt'] = 'Page'; |
| | | $wb['page_of_txt'] = 'of'; |
| | | $wb['delete_confirmation'] = 'Do you really want to Delete the mailfilter?'; |
| | | ?> |
| | |
| | | $wb['email_txt'] = 'Sähköpostiosoite'; |
| | | $wb['priority_txt'] = 'Tärkeysjärjestys'; |
| | | $wb['active_txt'] = 'Käytössä'; |
| | | $wb['limit_spamfilter_wblist_txt'] = 'The max. number of White- or Blacklist records for your account is reached.'; |
| | | ?> |
| | |
| | | $wb['email_txt'] = 'Sähköpostiosoite'; |
| | | $wb['priority_txt'] = 'Tärkeysjärjestys'; |
| | | $wb['active_txt'] = 'Käytössä'; |
| | | $wb['limit_spamfilter_wblist_txt'] = 'The max. number of White- or Blacklist records for your account is reached.'; |
| | | ?> |
| | |
| | | $wb['no_domain_perm'] = 'You have no permission for this domain.'; |
| | | $wb['destination_error_isemail'] = 'Destination Emailaddress is invalid.'; |
| | | $wb['limit_mailalias_txt'] = 'The max. number of email aliases for your account is reached.'; |
| | | $wb['duplicate_mailbox_txt'] = 'There is already a mailbox with this email address'; |
| | | ?> |
| | |
| | | $wb['destination_txt'] = 'Destination Email'; |
| | | $wb['active_txt'] = 'Active'; |
| | | $wb['limit_mailforward_txt'] = 'The max. number of email forwarders for your account is reached.'; |
| | | $wb['duplicate_mailbox_txt'] = 'There is already a mailbox with this email address'; |
| | | ?> |
| | |
| | | $wb['disablepop3_txt'] = 'Disable POP3'; |
| | | $wb['welcome_mail_fromname_txt'] = 'ISPConfig3'; |
| | | $wb['welcome_mail_fromemail_txt'] = 'webmaster@localhost.tld'; |
| | | $wb['duplicate_alias_or_forward_txt'] = 'There is already an alias or forwrd with this email address.'; |
| | | ?> |
| | |
| | | $wb['add_new_record_txt'] = 'Add new Filter'; |
| | | $wb['page_txt'] = 'Page'; |
| | | $wb['page_of_txt'] = 'of'; |
| | | $wb['delete_confirmation'] = 'Do you really want to Delete the mailfilter?'; |
| | | ?> |
| | |
| | | $wb['email_txt'] = 'Email'; |
| | | $wb['priority_txt'] = 'Priority'; |
| | | $wb['active_txt'] = 'Active'; |
| | | $wb['limit_spamfilter_wblist_txt'] = 'The max. number of White- or Blacklist records for your account is reached.'; |
| | | ?> |
| | |
| | | $wb['email_txt'] = 'Email'; |
| | | $wb['priority_txt'] = 'Priority'; |
| | | $wb['active_txt'] = 'Active'; |
| | | $wb['limit_spamfilter_wblist_txt'] = 'The max. number of White- or Blacklist records for your account is reached.'; |
| | | ?> |
| | |
| | | $wb['no_domain_perm'] = 'You have no permission for this domain.'; |
| | | $wb['destination_error_isemail'] = 'Destination Emailaddress is invalid.'; |
| | | $wb['limit_mailalias_txt'] = 'The max. number of email aliases for your account is reached.'; |
| | | $wb['duplicate_mailbox_txt'] = 'There is already a mailbox with this email address'; |
| | | ?> |
| | |
| | | $wb['destination_txt'] = 'Destination Email'; |
| | | $wb['active_txt'] = 'Active'; |
| | | $wb['limit_mailforward_txt'] = 'The max. number of email forwarders for your account is reached.'; |
| | | $wb['duplicate_mailbox_txt'] = 'There is already a mailbox with this email address'; |
| | | ?> |
| | |
| | | $wb['disablepop3_txt'] = 'Disable POP3'; |
| | | $wb['welcome_mail_fromname_txt'] = 'ISPConfig3'; |
| | | $wb['welcome_mail_fromemail_txt'] = 'webmaster@localhost.tld'; |
| | | $wb['duplicate_alias_or_forward_txt'] = 'There is already an alias or forwrd with this email address.'; |
| | | ?> |
| | |
| | | $wb['add_new_record_txt'] = 'Add new Filter'; |
| | | $wb['page_txt'] = 'Page'; |
| | | $wb['page_of_txt'] = 'of'; |
| | | $wb['delete_confirmation'] = 'Do you really want to Delete the mailfilter?'; |
| | | ?> |
| | |
| | | $wb['email_txt'] = 'Email'; |
| | | $wb['priority_txt'] = 'Priority'; |
| | | $wb['active_txt'] = 'Active'; |
| | | $wb['limit_spamfilter_wblist_txt'] = 'The max. number of White- or Blacklist records for your account is reached.'; |
| | | ?> |
| | |
| | | $wb['email_txt'] = 'Email'; |
| | | $wb['priority_txt'] = 'Priority'; |
| | | $wb['active_txt'] = 'Active'; |
| | | $wb['limit_spamfilter_wblist_txt'] = 'The max. number of White- or Blacklist records for your account is reached.'; |
| | | ?> |
| | |
| | | $wb['no_domain_perm'] = 'U heeft geen toestemming voor dit domain.'; |
| | | $wb['destination_error_isemail'] = 'Emailadres geadresseerde is ongeldig.'; |
| | | $wb['limit_mailalias_txt'] = 'Het max. aantal emailaliassen voor uw account is bereikt.'; |
| | | $wb['duplicate_mailbox_txt'] = 'There is already a mailbox with this email address'; |
| | | ?> |
| | |
| | | $wb['destination_txt'] = 'Emailadres geadresseerde'; |
| | | $wb['active_txt'] = 'Actief'; |
| | | $wb['limit_mailforward_txt'] = 'Het max. aantal email forwarders voor uw account is bereikt.'; |
| | | $wb['duplicate_mailbox_txt'] = 'There is already a mailbox with this email address'; |
| | | ?> |
| | |
| | | $wb['disablepop3_txt'] = 'Uitschakelen POP3'; |
| | | $wb['welcome_mail_fromname_txt'] = 'ISPConfig3'; |
| | | $wb['welcome_mail_fromemail_txt'] = 'webmaster@localhost.tld'; |
| | | $wb['duplicate_alias_or_forward_txt'] = 'There is already an alias or forwrd with this email address.'; |
| | | ?> |
| | |
| | | $wb['add_new_record_txt'] = 'Toevoegen Filter'; |
| | | $wb['page_txt'] = 'Page'; |
| | | $wb['page_of_txt'] = 'of'; |
| | | $wb['delete_confirmation'] = 'Do you really want to Delete the mailfilter?'; |
| | | ?> |
| | |
| | | $wb['email_txt'] = 'Email'; |
| | | $wb['priority_txt'] = 'Prioriteit'; |
| | | $wb['active_txt'] = 'Actief'; |
| | | $wb['limit_spamfilter_wblist_txt'] = 'The max. number of White- or Blacklist records for your account is reached.'; |
| | | ?> |
| | |
| | | $wb['email_txt'] = 'Email'; |
| | | $wb['priority_txt'] = 'Prioriteit'; |
| | | $wb['active_txt'] = 'Actief'; |
| | | $wb['limit_spamfilter_wblist_txt'] = 'The max. number of White- or Blacklist records for your account is reached.'; |
| | | ?> |
| | |
| | | $wb['no_domain_perm'] = 'Вы не имеете прав для этого домена.'; |
| | | $wb['destination_error_isemail'] = 'Email получателя неправилен.'; |
| | | $wb['limit_mailalias_txt'] = 'Максимальное число алиасов достигнуто.'; |
| | | $wb['duplicate_mailbox_txt'] = 'There is already a mailbox with this email address'; |
| | | ?> |
| | |
| | | $wb['destination_txt'] = 'Получатель Email'; |
| | | $wb['active_txt'] = 'Активный'; |
| | | $wb['limit_mailforward_txt'] = 'Максимальное число forwarders достигнуто.'; |
| | | $wb['duplicate_mailbox_txt'] = 'There is already a mailbox with this email address'; |
| | | ?> |
| | |
| | | $wb['disablepop3_txt'] = 'Disable POP3'; |
| | | $wb['welcome_mail_fromname_txt'] = 'ISPConfig3'; |
| | | $wb['welcome_mail_fromemail_txt'] = 'webmaster@localhost.tld'; |
| | | $wb['duplicate_alias_or_forward_txt'] = 'There is already an alias or forwrd with this email address.'; |
| | | ?> |
| | |
| | | $wb['add_new_record_txt'] = 'Добавить новый Фильтр'; |
| | | $wb['page_txt'] = 'Page'; |
| | | $wb['page_of_txt'] = 'of'; |
| | | $wb['delete_confirmation'] = 'Do you really want to Delete the mailfilter?'; |
| | | ?> |
| | |
| | | $wb['email_txt'] = 'Email'; |
| | | $wb['priority_txt'] = 'Приоритет'; |
| | | $wb['active_txt'] = 'Активный'; |
| | | $wb['limit_spamfilter_wblist_txt'] = 'The max. number of White- or Blacklist records for your account is reached.'; |
| | | ?> |
| | |
| | | $wb['email_txt'] = 'Email'; |
| | | $wb['priority_txt'] = 'Приоритет'; |
| | | $wb['active_txt'] = 'Активный'; |
| | | $wb['limit_spamfilter_wblist_txt'] = 'The max. number of White- or Blacklist records for your account is reached.'; |
| | | ?> |
| | |
| | | $wb['no_domain_perm'] = 'Du har ingen behörighet för denna domänen.'; |
| | | $wb['destination_error_isemail'] = 'Destination Emailaddress is invalid.'; |
| | | $wb['limit_mailalias_txt'] = 'The max. number of email aliases for your account is reached.'; |
| | | $wb['duplicate_mailbox_txt'] = 'There is already a mailbox with this email address'; |
| | | ?> |
| | |
| | | $wb['destination_txt'] = 'Mottagande Epost'; |
| | | $wb['active_txt'] = 'Aktiv'; |
| | | $wb['limit_mailforward_txt'] = 'The max. number of email forwarders for your account is reached.'; |
| | | $wb['duplicate_mailbox_txt'] = 'There is already a mailbox with this email address'; |
| | | ?> |
| | |
| | | $wb['disablepop3_txt'] = 'Disable POP3'; |
| | | $wb['welcome_mail_fromname_txt'] = 'ISPConfig3'; |
| | | $wb['welcome_mail_fromemail_txt'] = 'webmaster@localhost.tld'; |
| | | $wb['duplicate_alias_or_forward_txt'] = 'There is already an alias or forwrd with this email address.'; |
| | | ?> |
| | |
| | | $wb['add_new_record_txt'] = 'Add new Filter'; |
| | | $wb['page_txt'] = 'Page'; |
| | | $wb['page_of_txt'] = 'of'; |
| | | $wb['delete_confirmation'] = 'Do you really want to Delete the mailfilter?'; |
| | | ?> |
| | |
| | | $wb['email_txt'] = 'Email'; |
| | | $wb['priority_txt'] = 'Priority'; |
| | | $wb['active_txt'] = 'Active'; |
| | | $wb['limit_spamfilter_wblist_txt'] = 'The max. number of White- or Blacklist records for your account is reached.'; |
| | | ?> |
| | |
| | | $wb['email_txt'] = 'Email'; |
| | | $wb['priority_txt'] = 'Priority'; |
| | | $wb['active_txt'] = 'Active'; |
| | | $wb['limit_spamfilter_wblist_txt'] = 'The max. number of White- or Blacklist records for your account is reached.'; |
| | | ?> |
| | |
| | | <?php |
| | | /* |
| | | Copyright (c) 2005, Till Brehm, projektfarm Gmbh |
| | | Copyright (c) 2005 - 2009, Till Brehm, projektfarm Gmbh |
| | | All rights reserved. |
| | | |
| | | Redistribution and use in source and binary forms, with or without modification, |
| | |
| | | |
| | | // we will check only users, not admins |
| | | if($_SESSION["s"]["user"]["typ"] == 'user') { |
| | | |
| | | // Get the limits of the client |
| | | $client_group_id = $_SESSION["s"]["user"]["default_group"]; |
| | | $client = $app->db->queryOneRecord("SELECT limit_mailalias FROM sys_group, client WHERE sys_group.client_id = client.client_id and sys_group.groupid = $client_group_id"); |
| | | |
| | | // Check if the user may add another mailbox. |
| | | if($client["limit_mailalias"] >= 0) { |
| | | $tmp = $app->db->queryOneRecord("SELECT count(forwarding_id) as number FROM mail_forwarding WHERE sys_groupid = $client_group_id and type = 'alias'"); |
| | | if($tmp["number"] >= $client["limit_mailalias"]) { |
| | | $app->error($app->tform->wordbook["limit_mailalias_txt"]); |
| | | } |
| | | if(!$app->tform->checkClientLimit('limit_mailalias',"type = 'alias'")) { |
| | | $app->error($app->tform->wordbook["limit_mailalias_txt"]); |
| | | } |
| | | if(!$app->tform->checkResellerLimit('limit_mailalias',"type = 'alias'")) { |
| | | $app->error('Reseller: '.$app->tform->wordbook["limit_mailalias_txt"]); |
| | | } |
| | | } |
| | | |
| | |
| | | $app->tpl->setVar("email_local_part",$email_parts[0]); |
| | | |
| | | // Getting Domains of the user |
| | | $sql = "SELECT domain FROM mail_domain WHERE ".$app->tform->getAuthSQL('r'); |
| | | $sql = "SELECT domain FROM mail_domain WHERE ".$app->tform->getAuthSQL('r').' ORDER BY domain'; |
| | | $domains = $app->db->queryAllRecords($sql); |
| | | $domain_select = ''; |
| | | if(is_array($domains)) { |
| | |
| | | unset($this->dataRecord["email_local_part"]); |
| | | unset($this->dataRecord["email_domain"]); |
| | | |
| | | //* Check if there is no mailbox with this address |
| | | $tmp = $app->db->queryOneRecord("SELECT count(mailuser_id) as number FROM mail_user WHERE email = '".$app->db->quote($this->dataRecord["source"])."'"); |
| | | if($tmp['number'] > 0) $app->tform->errorMessage .= $app->tform->lng("duplicate_mailbox_txt")."<br>"; |
| | | unset($tmp); |
| | | |
| | | parent::onSubmit(); |
| | | } |
| | | |
| | |
| | | |
| | | // we will check only users, not admins |
| | | if($_SESSION["s"]["user"]["typ"] == 'user') { |
| | | |
| | | // Get the limits of the client |
| | | $client_group_id = $_SESSION["s"]["user"]["default_group"]; |
| | | $client = $app->db->queryOneRecord("SELECT limit_mailfilter FROM sys_group, client WHERE sys_group.client_id = client.client_id and sys_group.groupid = $client_group_id"); |
| | | |
| | | // Check if the user may add another mailbox. |
| | | if($client["limit_mailfilter"] >= 0) { |
| | | $tmp = $app->db->queryOneRecord("SELECT count(access_id) as number FROM mail_access WHERE sys_groupid = $client_group_id"); |
| | | if($tmp["number"] >= $client["limit_mailfilter"]) { |
| | | $app->error($app->tform->wordbook["limit_mailfilter_txt"]); |
| | | } |
| | | if(!$app->tform->checkClientLimit('limit_mailfilter')) { |
| | | $app->error($app->tform->wordbook["limit_mailfilter_txt"]); |
| | | } |
| | | if(!$app->tform->checkResellerLimit('limit_mailfilter')) { |
| | | $app->error('Reseller: '.$app->tform->wordbook["limit_mailfilter_txt"]); |
| | | } |
| | | } |
| | | |
| | |
| | | |
| | | // we will check only users, not admins |
| | | if($_SESSION["s"]["user"]["typ"] == 'user') { |
| | | |
| | | // Get the limits of the client |
| | | $client_group_id = $_SESSION["s"]["user"]["default_group"]; |
| | | $client = $app->db->queryOneRecord("SELECT limit_mailcatchall FROM sys_group, client WHERE sys_group.client_id = client.client_id and sys_group.groupid = $client_group_id"); |
| | | |
| | | // Check if the user may add another mailbox. |
| | | if($client["limit_mailcatchall"] >= 0) { |
| | | $tmp = $app->db->queryOneRecord("SELECT count(forwarding_id) as number FROM mail_forwarding WHERE sys_groupid = $client_group_id and type = 'catchall'"); |
| | | if($tmp["number"] >= $client["limit_mailcatchall"]) { |
| | | $app->error($app->tform->wordbook["limit_mailcatchall_txt"]); |
| | | } |
| | | if(!$app->tform->checkClientLimit('limit_mailcatchall',"type = 'catchall'")) { |
| | | $app->error($app->tform->wordbook["limit_mailcatchall_txt"]); |
| | | } |
| | | if(!$app->tform->checkResellerLimit('limit_mailcatchall',"type = 'catchall'")) { |
| | | $app->error('Reseller: '.$app->tform->wordbook["limit_mailcatchall_txt"]); |
| | | } |
| | | } |
| | | |
| | |
| | | |
| | | // we will check only users, not admins |
| | | if($_SESSION["s"]["user"]["typ"] == 'user') { |
| | | |
| | | // Get the limits of the client |
| | | $client_group_id = $_SESSION["s"]["user"]["default_group"]; |
| | | $client = $app->db->queryOneRecord("SELECT limit_maildomain FROM sys_group, client WHERE sys_group.client_id = client.client_id and sys_group.groupid = $client_group_id"); |
| | | |
| | | // Check if the user may add another maildomain. |
| | | if($client["limit_maildomain"] >= 0) { |
| | | $tmp = $app->db->queryOneRecord("SELECT count(domain_id) as number FROM mail_domain WHERE sys_groupid = $client_group_id"); |
| | | if($tmp["number"] >= $client["limit_maildomain"]) { |
| | | $app->error($app->tform->wordbook["limit_maildomain_txt"]); |
| | | } |
| | | if(!$app->tform->checkClientLimit('limit_maildomain')) { |
| | | $app->error($app->tform->wordbook["limit_maildomain_txt"]); |
| | | } |
| | | if(!$app->tform->checkResellerLimit('limit_maildomain')) { |
| | | $app->error('Reseller: '.$app->tform->wordbook["limit_maildomain_txt"]); |
| | | } |
| | | } |
| | | |
| | |
| | | |
| | | // Get the limits of the client |
| | | $client_group_id = $_SESSION["s"]["user"]["default_group"]; |
| | | $client = $app->db->queryOneRecord("SELECT client.client_id, limit_web_domain, default_webserver FROM sys_group, client WHERE sys_group.client_id = client.client_id and sys_group.groupid = $client_group_id"); |
| | | $client = $app->db->queryOneRecord("SELECT client.client_id, contact_name FROM sys_group, client WHERE sys_group.client_id = client.client_id and sys_group.groupid = $client_group_id"); |
| | | |
| | | // Set the webserver to the default server of the client |
| | | $tmp = $app->db->queryOneRecord("SELECT server_name FROM server WHERE server_id = $client[default_webserver]"); |
| | |
| | | // Fill the client select field |
| | | $sql = "SELECT groupid, name FROM sys_group, client WHERE sys_group.client_id = client.client_id AND client.parent_client_id = ".$client['client_id']; |
| | | $clients = $app->db->queryAllRecords($sql); |
| | | $client_select = ''; |
| | | $client_select = '<option value="'.$client['client_id'].'">'.$client['contact_name'].'</option>'; |
| | | if(is_array($clients)) { |
| | | foreach( $clients as $client) { |
| | | $selected = @($client["groupid"] == $this->dataRecord["sys_groupid"])?'SELECTED':''; |
| | |
| | | // Clients may not set the client_group_id, so we unset them if user is not a admin |
| | | if(!$app->auth->has_clients($_SESSION['s']['user']['userid'])) unset($this->dataRecord["client_group_id"]); |
| | | } |
| | | |
| | | //* make sure that the email domain is lowercase |
| | | if(isset($this->dataRecord["domain"])) $this->dataRecord["domain"] = strtolower($this->dataRecord["domain"]); |
| | | |
| | | |
| | | parent::onSubmit(); |
| | | } |
| | | |
| | |
| | | //* Check if the server has been changed |
| | | // We do this only for the admin or reseller users, as normal clients can not change the server ID anyway |
| | | if($_SESSION["s"]["user"]["typ"] == 'admin' || $app->auth->has_clients($_SESSION['s']['user']['userid'])) { |
| | | $rec = $app->db->queryOneRecord("SELECT server_id from mail_domain WHERE domain_id = ".$this->id); |
| | | $rec = $app->db->queryOneRecord("SELECT server_id, domain from mail_domain WHERE domain_id = ".$this->id); |
| | | if($rec['server_id'] != $this->dataRecord["server_id"]) { |
| | | //* Add a error message and switch back to old server |
| | | $app->tform->errorMessage .= $app->lng('The Server can not be changed.'); |
| | | $this->dataRecord["server_id"] = $rec['server_id']; |
| | | } |
| | | unset($rec); |
| | | //* If the user is neither admin nor reseller |
| | | } else { |
| | | //* We do not allow users to change a domain which has been created by the admin |
| | | $rec = $app->db->queryOneRecord("SELECT domain from mail_domain WHERE domain_id = ".$this->id); |
| | | if($rec['domain'] != $this->dataRecord["domain"] && $app->tform->checkPerm($this->id,'u')) { |
| | | //* Add a error message and switch back to old server |
| | | $app->tform->errorMessage .= $app->lng('The Domain can not be changed. Please ask your Administrator if you want to change the domain name.'); |
| | | $this->dataRecord["domain"] = $rec['domain']; |
| | | } |
| | | unset($rec); |
| | | } |
| | |
| | | } |
| | | } |
| | | |
| | | //* Delete the old spamfilter record |
| | | $tmp = $app->db->queryOneRecord("SELECT id FROM spamfilter_users WHERE email = '@".mysql_real_escape_string($this->oldDataRecord["domain"])."'"); |
| | | $app->db->datalogDelete('spamfilter_users', 'id', $tmp["id"]); |
| | | unset($tmp); |
| | | |
| | | } // end if domain name changed |
| | | |
| | | } |
| | |
| | | <?php |
| | | /* |
| | | Copyright (c) 2005, Till Brehm, projektfarm Gmbh |
| | | Copyright (c) 2005 - 2009, Till Brehm, projektfarm Gmbh |
| | | All rights reserved. |
| | | |
| | | Redistribution and use in source and binary forms, with or without modification, |
| | |
| | | |
| | | // we will check only users, not admins |
| | | if($_SESSION["s"]["user"]["typ"] == 'user') { |
| | | |
| | | // Get the limits of the client |
| | | $client_group_id = $_SESSION["s"]["user"]["default_group"]; |
| | | $client = $app->db->queryOneRecord("SELECT limit_mailforward FROM sys_group, client WHERE sys_group.client_id = client.client_id and sys_group.groupid = $client_group_id"); |
| | | |
| | | // Check if the user may add another mailbox. |
| | | if($client["limit_mailforward"] >= 0) { |
| | | $tmp = $app->db->queryOneRecord("SELECT count(forwarding_id) as number FROM mail_forwarding WHERE sys_groupid = $client_group_id and type = 'forward'"); |
| | | if($tmp["number"] >= $client["limit_mailforward"]) { |
| | | $app->error($app->tform->wordbook["limit_mailforward_txt"]); |
| | | } |
| | | if(!$app->tform->checkClientLimit('limit_mailforward',"type = 'forward'")) { |
| | | $app->error($app->tform->wordbook["limit_mailforward_txt"]); |
| | | } |
| | | if(!$app->tform->checkResellerLimit('limit_mailforward',"type = 'forward'")) { |
| | | $app->error('Reseller: '.$app->tform->wordbook["limit_mailforward_txt"]); |
| | | } |
| | | } |
| | | |
| | |
| | | $app->tpl->setVar("email_local_part",$email_parts[0]); |
| | | |
| | | // Getting Domains of the user |
| | | $sql = "SELECT domain FROM mail_domain WHERE ".$app->tform->getAuthSQL('r'); |
| | | $sql = "SELECT domain FROM mail_domain WHERE ".$app->tform->getAuthSQL('r').' ORDER BY domain'; |
| | | $domains = $app->db->queryAllRecords($sql); |
| | | $domain_select = ''; |
| | | foreach( $domains as $domain) { |
| | |
| | | unset($this->dataRecord["email_local_part"]); |
| | | unset($this->dataRecord["email_domain"]); |
| | | |
| | | //* Check if there is no mailbox with this address |
| | | $tmp = $app->db->queryOneRecord("SELECT count(mailuser_id) as number FROM mail_user WHERE email = '".$app->db->quote($this->dataRecord["source"])."'"); |
| | | if($tmp['number'] > 0) $app->tform->errorMessage .= $app->tform->lng("duplicate_mailbox_txt")."<br>"; |
| | | unset($tmp); |
| | | |
| | | parent::onSubmit(); |
| | | } |
| | | |
| | |
| | | |
| | | // we will check only users, not admins |
| | | if($_SESSION["s"]["user"]["typ"] == 'user') { |
| | | |
| | | // Get the limits of the client |
| | | $client_group_id = $_SESSION["s"]["user"]["default_group"]; |
| | | $client = $app->db->queryOneRecord("SELECT limit_fetchmail FROM sys_group, client WHERE sys_group.client_id = client.client_id and sys_group.groupid = $client_group_id"); |
| | | |
| | | // Check if the user may add another transport. |
| | | if($client["limit_fetchmail"] >= 0) { |
| | | $tmp = $app->db->queryOneRecord("SELECT count(mailget_id) as number FROM mail_get WHERE sys_groupid = $client_group_id"); |
| | | if($tmp["number"] >= $client["limit_fetchmail"]) { |
| | | $app->error($app->tform->wordbook["limit_fetchmail_txt"]); |
| | | } |
| | | if(!$app->tform->checkClientLimit('limit_fetchmail')) { |
| | | $app->error($app->tform->wordbook["limit_fetchmail_txt"]); |
| | | } |
| | | if(!$app->tform->checkResellerLimit('limit_fetchmail')) { |
| | | $app->error('Reseller: '.$app->tform->wordbook["limit_fetchmail_txt"]); |
| | | } |
| | | } |
| | | |
| | |
| | | |
| | | // we will check only users, not admins |
| | | if($_SESSION["s"]["user"]["typ"] == 'user') { |
| | | |
| | | // Get the limits of the client |
| | | $client_group_id = $_SESSION["s"]["user"]["default_group"]; |
| | | $client = $app->db->queryOneRecord("SELECT limit_mailrouting FROM sys_group, client WHERE sys_group.client_id = client.client_id and sys_group.groupid = $client_group_id"); |
| | | |
| | | // Check if the user may add another transport. |
| | | if($client["limit_mailrouting"] >= 0) { |
| | | $tmp = $app->db->queryOneRecord("SELECT count(transport_id) as number FROM mail_transport WHERE sys_groupid = $client_group_id"); |
| | | if($tmp["number"] >= $client["limit_mailrouting"]) { |
| | | $app->error($app->tform->wordbook["limit_mailrouting_txt"]); |
| | | } |
| | | if(!$app->tform->checkClientLimit('limit_mailrouting')) { |
| | | $app->error($app->tform->wordbook["limit_mailrouting_txt"]); |
| | | } |
| | | if(!$app->tform->checkResellerLimit('limit_mailrouting')) { |
| | | $app->error('Reseller: '.$app->tform->wordbook["limit_mailrouting_txt"]); |
| | | } |
| | | } |
| | | |
| | |
| | | <?php |
| | | /* |
| | | Copyright (c) 2005, Till Brehm, projektfarm Gmbh |
| | | Copyright (c) 2005 - 2009, Till Brehm, projektfarm Gmbh |
| | | All rights reserved. |
| | | |
| | | Redistribution and use in source and binary forms, with or without modification, |
| | |
| | | |
| | | // we will check only users, not admins |
| | | if($_SESSION["s"]["user"]["typ"] == 'user') { |
| | | |
| | | // Get the limits of the client |
| | | $client_group_id = $_SESSION["s"]["user"]["default_group"]; |
| | | $client = $app->db->queryOneRecord("SELECT limit_mailbox FROM sys_group, client WHERE sys_group.client_id = client.client_id and sys_group.groupid = $client_group_id"); |
| | | |
| | | // Check if the user may add another mailbox. |
| | | if($client["limit_mailbox"] >= 0) { |
| | | $tmp = $app->db->queryOneRecord("SELECT count(mailuser_id) as number FROM mail_user WHERE sys_groupid = $client_group_id"); |
| | | if($tmp["number"] >= $client["limit_mailbox"]) { |
| | | $app->error($app->tform->wordbook["limit_mailbox_txt"]); |
| | | } |
| | | if(!$app->tform->checkClientLimit('limit_mailbox')) { |
| | | $app->error($app->tform->wordbook["limit_mailbox_txt"]); |
| | | } |
| | | if(!$app->tform->checkResellerLimit('limit_mailbox')) { |
| | | $app->error('Reseller: '.$app->tform->wordbook["limit_mailbox_txt"]); |
| | | } |
| | | } |
| | | |
| | |
| | | $app->tpl->setVar("email_local_part",$email_parts[0]); |
| | | |
| | | // Getting Domains of the user |
| | | $sql = "SELECT domain FROM mail_domain WHERE ".$app->tform->getAuthSQL('r'); |
| | | $sql = "SELECT domain FROM mail_domain WHERE ".$app->tform->getAuthSQL('r').' ORDER BY domain'; |
| | | $domains = $app->db->queryAllRecords($sql); |
| | | $domain_select = ''; |
| | | if(is_array($domains)) { |
| | |
| | | $tmp_user = $app->db->queryOneRecord("SELECT policy_id FROM spamfilter_users WHERE email = '".$this->dataRecord["email"]."'"); |
| | | $sql = "SELECT id, policy_name FROM spamfilter_policy WHERE ".$app->tform->getAuthSQL('r'); |
| | | $policys = $app->db->queryAllRecords($sql); |
| | | $policy_select = "<option value='0'>".$app->tform->wordbook["no_policy"]."</option>"; |
| | | $policy_select = "<option value='0'>".$app->tform->lng("no_policy")."</option>"; |
| | | if(is_array($policys)) { |
| | | foreach( $policys as $p) { |
| | | $selected = ($p["id"] == $tmp_user["policy_id"])?'SELECTED':''; |
| | |
| | | function onSubmit() { |
| | | global $app, $conf; |
| | | |
| | | // Check if Domain belongs to user |
| | | //* Check if Domain belongs to user |
| | | if(isset($_POST["email_domain"])) { |
| | | $domain = $app->db->queryOneRecord("SELECT server_id, domain FROM mail_domain WHERE domain = '".$app->db->quote($_POST["email_domain"])."' AND ".$app->tform->getAuthSQL('r')); |
| | | if($domain["domain"] != $_POST["email_domain"]) $app->tform->errorMessage .= $app->tform->wordbook["no_domain_perm"]; |
| | | if($domain["domain"] != $_POST["email_domain"]) $app->tform->errorMessage .= $app->tform->lng("no_domain_perm"); |
| | | } |
| | | |
| | | |
| | | // if its an insert, check that the password is not empty |
| | | //* if its an insert, check that the password is not empty |
| | | if($this->id == 0 && $_POST["password"] == '') { |
| | | $app->tform->errorMessage .= $app->tform->wordbook["error_no_pwd"]."<br>"; |
| | | $app->tform->errorMessage .= $app->tform->lng("error_no_pwd")."<br>"; |
| | | } |
| | | |
| | | // Check the client limits, if user is not the admin |
| | | //* Check the client limits, if user is not the admin |
| | | if($_SESSION["s"]["user"]["typ"] != 'admin') { // if user is not admin |
| | | // Get the limits of the client |
| | | $client_group_id = $_SESSION["s"]["user"]["default_group"]; |
| | |
| | | if($this->id == 0 && $client["limit_mailbox"] >= 0) { |
| | | $tmp = $app->db->queryOneRecord("SELECT count(mailuser_id) as number FROM mail_user WHERE sys_groupid = $client_group_id"); |
| | | if($tmp["number"] >= $client["limit_mailbox"]) { |
| | | $app->tform->errorMessage .= $app->tform->wordbook["limit_mailbox_txt"]."<br>"; |
| | | $app->tform->errorMessage .= $app->tform->lng("limit_mailbox_txt")."<br>"; |
| | | } |
| | | unset($tmp); |
| | | } |
| | |
| | | $new_mailbox_quota = intval($this->dataRecord["quota"]); |
| | | if($mailquota + $new_mailbox_quota > $client["limit_mailquota"]) { |
| | | $max_free_quota = $client["limit_mailquota"] - $mailquota; |
| | | $app->tform->errorMessage .= $app->tform->wordbook["limit_mailquota_txt"].": ".$max_free_quota."<br>"; |
| | | $app->tform->errorMessage .= $app->tform->lng("limit_mailquota_txt").": ".$max_free_quota."<br>"; |
| | | // Set the quota field to the max free space |
| | | $this->dataRecord["quota"] = $max_free_quota; |
| | | } |
| | |
| | | } // end if user is not admin |
| | | |
| | | |
| | | // compose the email field |
| | | //* compose the email field |
| | | if(isset($_POST["email_local_part"]) && isset($_POST["email_domain"])) { |
| | | $this->dataRecord["email"] = $_POST["email_local_part"]."@".$_POST["email_domain"]; |
| | | $this->dataRecord["email"] = strtolower($_POST["email_local_part"]."@".$_POST["email_domain"]); |
| | | |
| | | // Set the server id of the mailbox = server ID of mail domain. |
| | | $this->dataRecord["server_id"] = $domain["server_id"]; |
| | |
| | | $this->dataRecord["homedir"] = $mail_config["homedir_path"]; |
| | | $this->dataRecord["uid"] = $mail_config["mailuser_uid"]; |
| | | $this->dataRecord["gid"] = $mail_config["mailuser_gid"]; |
| | | |
| | | //* Check if there is no alias or forward with this address |
| | | $tmp = $app->db->queryOneRecord("SELECT count(forwarding_id) as number FROM mail_forwarding WHERE source = '".$app->db->quote($this->dataRecord["email"])."'"); |
| | | if($tmp['number'] > 0) $app->tform->errorMessage .= $app->tform->lng("duplicate_alias_or_forward_txt")."<br>"; |
| | | unset($tmp); |
| | | |
| | | } |
| | | |
| | | |
| | | parent::onSubmit(); |
| | | } |
| | |
| | | // mail($this->dataRecord["email"],$app->tform->wordbook["welcome_mail_subject"],$app->tform->wordbook["welcome_mail_message"]); |
| | | |
| | | // tries to detect current charset, and encode subject-header and body from it to ISO-8859-1. |
| | | $fromCharset = mb_detect_encoding($app->tform->wordbook["welcome_mail_subject"]); |
| | | $fromCharset = mb_detect_encoding($app->tform->lng("welcome_mail_subject")); |
| | | $iconvPreferences = array("input-charset" => $fromCharset, |
| | | "output-charset" => "ISO-8859-1", |
| | | "line-length" => 76, |
| | | "line-break-chars" => "\n", |
| | | "scheme" => "Q"); |
| | | |
| | | $welcomeFromName = $app->tform->wordbook["welcome_mail_fromname_txt"]; |
| | | $welcomeFromEmail = $app->tform->wordbook["welcome_mail_fromemail_txt"]; |
| | | $welcomeFromName = $app->tform->lng("welcome_mail_fromname_txt"); |
| | | $welcomeFromEmail = $app->tform->lng("welcome_mail_fromemail_txt"); |
| | | $mailHeaders = "MIME-Version: 1.0" . "\n"; |
| | | $mailHeaders .= "Content-type: text/plain; charset=iso-8859-1" . "\n"; |
| | | $mailHeaders .= "From: $welcomeFromName <$welcomeFromEmail>" . "\n"; |
| | | $mailHeaders .= "Reply-To: <$welcomeFromEmail>" . "\n"; |
| | | $mailTarget = $this->dataRecord["email"]; |
| | | $mailSubject = iconv_mime_encode("trimoff", $app->tform->wordbook["welcome_mail_subject"], $iconvPreferences); |
| | | $mailSubject = iconv_mime_encode("trimoff", $app->tform->lng("welcome_mail_subject"), $iconvPreferences); |
| | | $mailSubject = str_replace("trimoff: ", "", $mailSubject); |
| | | $mailBody = iconv ($fromCharset, "ISO-8859-1", $app->tform->wordbook["welcome_mail_message"]); |
| | | $mailBody = iconv ($fromCharset, "ISO-8859-1", $app->tform->lng("welcome_mail_message")); |
| | | |
| | | mail($mailTarget, $mailSubject, $mailBody, $mailHeaders); |
| | | |
| | |
| | | |
| | | $content = ''; |
| | | $content .= '### BEGIN FILTER_ID:'.$this->id."\n"; |
| | | |
| | | |
| | | $TargetNoQuotes = $this->dataRecord["target"]; |
| | | $TargetQuotes = "\"$TargetNoQuotes\""; |
| | | |
| | | $TestChDirNoQuotes = '$DEFAULT/.'.$TargetNoQuotes; |
| | | $TestChDirQuotes = "\"$TestChDirNoQuotes\""; |
| | | |
| | | $MailDirMakeNoQuotes = $TargetQuotes.' $DEFAULT'; |
| | | |
| | | $EchoTargetFinal = $TargetNoQuotes; |
| | | |
| | | |
| | | if($this->dataRecord["action"] == 'move') { |
| | | |
| | | |
| | | $content .= " |
| | | `test -e ".'$DEFAULT/.'.$this->dataRecord["target"]."` |
| | | if ( ".'$RETURNCODE'." != 0 ) |
| | | `test -e ".$TestChDirQuotes." && exit 1 || exit 0` |
| | | if ( ".'$RETURNCODE'." != 1 ) |
| | | { |
| | | `maildirmake -f ".$this->dataRecord["target"].' $DEFAULT'."` |
| | | `chmod -R 0700 ".'$DEFAULT/'.$this->dataRecord["target"]."` |
| | | `echo INBOX.".$this->dataRecord["target"]." >> ".'$DEFAULT'."/courierimapsubscribed` |
| | | `maildirmake -f $MailDirMakeNoQuotes` |
| | | `chmod -R 0700 ".$TestChDirQuotes."` |
| | | `echo \"INBOX.$EchoTargetFinal\" >> ".'$DEFAULT'."/courierimapsubscribed` |
| | | } |
| | | "; |
| | | "; |
| | | } |
| | | |
| | | |
| | | $content .= "if (/^".$this->dataRecord["source"].":"; |
| | | |
| | | |
| | | $searchterm = preg_quote($this->dataRecord["searchterm"]); |
| | | |
| | | |
| | | if($this->dataRecord["op"] == 'contains') { |
| | | $content .= ".*".$searchterm."/:h)\n"; |
| | | } elseif ($this->dataRecord["op"] == 'is') { |
| | |
| | | } elseif ($this->dataRecord["op"] == 'ends') { |
| | | $content .= ".*".$searchterm."$/:h)\n"; |
| | | } |
| | | |
| | | |
| | | $content .= "{\n"; |
| | | $content .= "exception {\n"; |
| | | |
| | | |
| | | if($this->dataRecord["action"] == 'move') { |
| | | $content .= 'to $DEFAULT/.'.$this->dataRecord["target"]."/\n"; |
| | | $content .= 'ID' . "$this->id" . 'EndFolder = "$DEFAULT/.' . $this->dataRecord['target'] . '/"' . "\n"; |
| | | $content .= "to ". '$ID' . "$this->id" . 'EndFolder' . "\n"; |
| | | } else { |
| | | $content .= "to /dev/null\n"; |
| | | } |
| | | |
| | | $content .= "}\n"; |
| | | $content .= "}\n"; |
| | | |
| | | $content .= "}\n"; |
| | | $content .= "}\n"; |
| | | //} |
| | | |
| | | $content .= '### END FILTER_ID:'.$this->id."\n"; |
| | | |
| | |
| | | |
| | | // we will check only users, not admins |
| | | if($_SESSION["s"]["user"]["typ"] == 'user') { |
| | | |
| | | // Get the limits of the client |
| | | $client_group_id = $_SESSION["s"]["user"]["default_group"]; |
| | | $client = $app->db->queryOneRecord("SELECT limit_mailfilter FROM sys_group, client WHERE sys_group.client_id = client.client_id and sys_group.groupid = $client_group_id"); |
| | | |
| | | // Check if the user may add another mailbox. |
| | | if($client["limit_mailfilter"] >= 0) { |
| | | $tmp = $app->db->queryOneRecord("SELECT count(access_id) as number FROM mail_access WHERE sys_groupid = $client_group_id"); |
| | | if($tmp["number"] >= $client["limit_mailfilter"]) { |
| | | $app->error($app->tform->wordbook["limit_mailfilter_txt"]); |
| | | } |
| | | if(!$app->tform->checkClientLimit('limit_mailfilter')) { |
| | | $app->error($app->tform->wordbook["limit_mailfilter_txt"]); |
| | | } |
| | | if(!$app->tform->checkResellerLimit('limit_mailfilter')) { |
| | | $app->error('Reseller: '.$app->tform->wordbook["limit_mailfilter_txt"]); |
| | | } |
| | | } |
| | | |
| | |
| | | |
| | | // we will check only users, not admins |
| | | if($_SESSION["s"]["user"]["typ"] == 'user') { |
| | | |
| | | // Get the limits of the client |
| | | $client_group_id = $_SESSION["s"]["user"]["default_group"]; |
| | | $client = $app->db->queryOneRecord("SELECT limit_spamfilter_wblist FROM sys_group, client WHERE sys_group.client_id = client.client_id and sys_group.groupid = $client_group_id"); |
| | | |
| | | // Check if the user may add another mailbox. |
| | | if($client["limit_spamfilter_wblist"] >= 0) { |
| | | $tmp = $app->db->queryOneRecord("SELECT count(wblist_id) as number FROM spamfilter_wblist WHERE sys_groupid = $client_group_id"); |
| | | if($tmp["number"] >= $client["limit_spamfilter_wblist"]) { |
| | | $app->error($app->tform->lng("limit_spamfilter_wblist_txt")); |
| | | } |
| | | if(!$app->tform->checkClientLimit('limit_spamfilter_wblist')) { |
| | | $app->error($app->tform->wordbook["limit_spamfilter_wblist_txt"]); |
| | | } |
| | | if(!$app->tform->checkResellerLimit('limit_spamfilter_wblist')) { |
| | | $app->error('Reseller: '.$app->tform->wordbook["limit_spamfilter_wblist_txt"]); |
| | | } |
| | | } |
| | | |
| | |
| | | |
| | | // we will check only users, not admins |
| | | if($_SESSION["s"]["user"]["typ"] == 'user') { |
| | | |
| | | // Get the limits of the client |
| | | $client_group_id = $_SESSION["s"]["user"]["default_group"]; |
| | | $client = $app->db->queryOneRecord("SELECT limit_spamfilter_policy FROM sys_group, client WHERE sys_group.client_id = client.client_id and sys_group.groupid = $client_group_id"); |
| | | |
| | | // Check if the user may add another mailbox. |
| | | if($client["limit_limit_spamfilter_policy"] >= 0) { |
| | | $tmp = $app->db->queryOneRecord("SELECT count(id) as number FROM spamfilter_policy WHERE sys_groupid = $client_group_id"); |
| | | if($tmp["number"] >= $client["limit_spamfilter_policy"]) { |
| | | $app->error($app->tform->wordbook["limit_spamfilter_policy_txt"]); |
| | | } |
| | | if(!$app->tform->checkClientLimit('limit_spamfilter_policy')) { |
| | | $app->error($app->tform->wordbook["limit_spamfilter_policy_txt"]); |
| | | } |
| | | if(!$app->tform->checkResellerLimit('limit_spamfilter_policy')) { |
| | | $app->error('Reseller: '.$app->tform->wordbook["limit_spamfilter_policy_txt"]); |
| | | } |
| | | } |
| | | |
| | |
| | | |
| | | // we will check only users, not admins |
| | | if($_SESSION["s"]["user"]["typ"] == 'user') { |
| | | |
| | | // Get the limits of the client |
| | | $client_group_id = $_SESSION["s"]["user"]["default_group"]; |
| | | $client = $app->db->queryOneRecord("SELECT limit_spamfilter_user FROM sys_group, client WHERE sys_group.client_id = client.client_id and sys_group.groupid = $client_group_id"); |
| | | |
| | | // Check if the user may add another mailbox. |
| | | if($client["limit_limit_spamfilter_user"] >= 0) { |
| | | $tmp = $app->db->queryOneRecord("SELECT count(id) as number FROM spamfilter_users WHERE sys_groupid = $client_group_id"); |
| | | if($tmp["number"] >= $client["limit_spamfilter_user"]) { |
| | | $app->error($app->tform->wordbook["limit_spamfilter_user_txt"]); |
| | | } |
| | | if(!$app->tform->checkClientLimit('limit_spamfilter_user')) { |
| | | $app->error($app->tform->wordbook["limit_spamfilter_user_txt"]); |
| | | } |
| | | if(!$app->tform->checkResellerLimit('limit_spamfilter_user')) { |
| | | $app->error('Reseller: '.$app->tform->wordbook["limit_spamfilter_user_txt"]); |
| | | } |
| | | } |
| | | |
| | |
| | | |
| | | // we will check only users, not admins |
| | | if($_SESSION["s"]["user"]["typ"] == 'user') { |
| | | |
| | | // Get the limits of the client |
| | | $client_group_id = $_SESSION["s"]["user"]["default_group"]; |
| | | $client = $app->db->queryOneRecord("SELECT limit_spamfilter_wblist FROM sys_group, client WHERE sys_group.client_id = client.client_id and sys_group.groupid = $client_group_id"); |
| | | |
| | | // Check if the user may add another mailbox. |
| | | if($client["limit_spamfilter_wblist"] >= 0) { |
| | | $tmp = $app->db->queryOneRecord("SELECT count(wblist_id) as number FROM spamfilter_wblist WHERE sys_groupid = $client_group_id"); |
| | | if($tmp["number"] >= $client["limit_spamfilter_wblist"]) { |
| | | $app->error($app->tform->lng("limit_spamfilter_wblist_txt")); |
| | | } |
| | | if(!$app->tform->checkClientLimit('limit_spamfilter_wblist')) { |
| | | $app->error($app->tform->wordbook["limit_spamfilter_wblist_txt"]); |
| | | } |
| | | if(!$app->tform->checkResellerLimit('limit_spamfilter_wblist')) { |
| | | $app->error('Reseller: '.$app->tform->wordbook["limit_spamfilter_wblist_txt"]); |
| | | } |
| | | } |
| | | |
New file |
| | |
| | | <?php |
| | | $wb['Server online since'] = 'Servidor online desde'; |
| | | $wb['Users online'] = 'Usuários Online'; |
| | | $wb['System load 1 minute'] = 'Sistema carregado 1 Min'; |
| | | $wb['System load 5 minutes'] = 'Sistema carregado 5 Min'; |
| | | $wb['System load 15 minutes'] = 'Sistema carregado 15 Min'; |
| | | $wb['Server Load'] = 'Servidor carregado'; |
| | | $wb['Disk usage'] = 'Uso do disco'; |
| | | $wb['Memory usage'] = 'Uso da memória'; |
| | | $wb['no_data_serverload_txt'] = 'Sem registro carga do servidor disponíveis no momento. Tente novamente mais tarde.'; |
| | | $wb['no_data_memusage_txt'] = 'Sem registro uso de memória disponíveis no momento. Tente novamente mais tarde.'; |
| | | $wb['no_data_diskusage_txt'] = 'Sem registro de uso de disco disponíveis no momento. Tente novamente mais tarde.'; |
| | | $wb['no_data_cpuinfo_txt'] = 'Sem registro de CPU disponíveis no momento. Tente novamente mais tarde.'; |
| | | $wb['no_data_services_txt'] = 'Sem registro sobre os serviços disponíveis no momento. Tente novamente mais tarde.'; |
| | | $wb['no_data_updates_txt'] = 'Sem atualização de dados disponíveis no momento. Tente novamente mais tarde.'; |
| | | $wb['no_data_raid_txt'] = 'Sem registro de RAID disponível no momento. Tente novamente mais tarde.'; |
| | | $wb['no_data_rkhunter_txt'] = 'Sem registro de RKHUNTER disponível no momento. Tente novamente mais tarde.'; |
| | | $wb['no_data_mailq_txt'] = 'Sem registro de fila de correio disponível no momento. Tente novamente mais tarde.'; |
| | | $wb['no_logdata_txt'] = 'Sem registro de log disponível no momento. Tente novamente mais tarde.'; |
| | | $wb['Monitoring'] = 'Monitoramento'; |
| | | $wb['Server to Monitor'] = 'Servidor a monitorar'; |
| | | $wb['Logfiles'] = 'Arquivos de log'; |
| | | $wb['Status of services'] = 'Status dos serviços'; |
| | | $wb['No Refresh'] = 'Não atualize'; |
| | | $wb['minutes'] = 'minutos'; |
| | | $wb['Show Overview'] = 'Exibir Visão Geral'; |
| | | $wb['System State (All Servers)'] = 'Estado do Sistema (Todos os Servidores)'; |
| | | $wb['Hardware-Information'] = 'Informação de Hardware'; |
| | | $wb['Show CPU info'] = 'Exibir informações da UCP'; |
| | | $wb['Server State'] = 'Estado do Servidor'; |
| | | $wb['Show Update State'] = 'Exiba Status Atualizado'; |
| | | $wb['Show RAID state'] = 'Exiba Status do RAID'; |
| | | $wb['Show Server load'] = 'Exiba Carga do Servidor'; |
| | | $wb['Show Disk usage'] = 'Exiba Uso de Disco'; |
| | | $wb['Show Memory usage'] = 'Exiba Uso de Memória'; |
| | | $wb['Show Services'] = 'Exibir Serviços'; |
| | | $wb['Show Mail-Queue'] = 'Exibir Fila de Correio'; |
| | | $wb['Show Mail-Log'] = 'Exibir Log de Correio'; |
| | | $wb['Show Mail warn-Log'] = 'Exibir Log de Avisos de Correio'; |
| | | $wb['Show Mail err-Log'] = 'Exibir Log de Erros de Correio'; |
| | | $wb['Show System-Log'] = 'Exibir Log de Sistema'; |
| | | $wb['Show ISPC Cron-Log'] = 'Exibir ISPC Log do Cron'; |
| | | $wb['Show Freshclam-Log'] = 'Exibir Log do Freshclam'; |
| | | $wb['Show Clamav-Log'] = 'Exibir Log do Clamav'; |
| | | $wb['Show ISPConfig-Log'] = 'Exibir Log do ISPConfig'; |
| | | $wb['Show RKHunter-Log'] = 'Exibir Log do RKHunter'; |
| | | $wb['Show Jobqueue'] = 'Exibir Fila de Trabalho'; |
| | | $wb['monitor_general_serverstate_txt'] = 'Estado do Servidor'; |
| | | $wb['monitor_general_systemstate_txt'] = 'Estado do Sistema'; |
| | | $wb['monitor_diskusage_filesystem_txt'] = 'Sistema de Arquivos'; |
| | | $wb['monitor_diskusage_type_txt'] = 'Tipo'; |
| | | $wb['monitor_diskusage_size_txt'] = 'Tamanho'; |
| | | $wb['monitor_diskusage_used_txt'] = 'Usado'; |
| | | $wb['monitor_diskusage_available_txt'] = 'Disponível'; |
| | | $wb['monitor_diskusage_usage_txt'] = 'Uso %'; |
| | | $wb['monitor_diskusage_mounted_txt'] = 'Montado em'; |
| | | $wb['monitor_logs_mail_txt'] = 'Log de Correio'; |
| | | $wb['monitor_logs_mailwarn_txt'] = 'Log de Avisos'; |
| | | $wb['monitor_logs_mailerr_txt'] = 'Log de Erros'; |
| | | $wb['monitor_logs_messages_txt'] = 'Log de Sistema'; |
| | | $wb['monitor_logs_ispccron_txt'] = 'Log do ISPConfig Cron'; |
| | | $wb['monitor_logs_freshclam_txt'] = 'Logo do Freshclam'; |
| | | $wb['monitor_logs_clamav_txt'] = 'Log do Clamav '; |
| | | $wb['monitor_logs_ispc_txt'] = 'Log do ISPConfig'; |
| | | $wb['monitor_nomdadm_txt'] = 'mdadm não está instalado ou seu servidor não suporta RAID'; |
| | | $wb['monitor_norkhunter_txt'] = 'RKHunter não está instalado, então não existem logs a exibir'; |
| | | $wb['monitor_serverstate_server_txt'] = 'Servidor'; |
| | | $wb['monitor_serverstate_state_txt'] = 'Estado'; |
| | | $wb['monitor_serverstate_unknown_txt'] = 'desconhecido'; |
| | | $wb['monitor_serverstate_info_txt'] = 'informações'; |
| | | $wb['monitor_serverstate_warning_txt'] = 'aviso'; |
| | | $wb['monitor_serverstate_critical_txt'] = 'crítico'; |
| | | $wb['monitor_serverstate_error_txt'] = 'erro'; |
| | | $wb['monitor_serverstate_moreinfo_txt'] = 'Mais informações..'; |
| | | $wb['monitor_serverstate_more_txt'] = 'Mais...'; |
| | | $wb['monitor_serverstate_fclamok_txt'] = 'Definições de anti-virus ok ...'; |
| | | $wb['monitor_serverstate_fclamoutdated_txt'] = 'Definições de anti-virus DESATUALIZADAS!'; |
| | | $wb['monitor_serverstate_fclamunknown_txt'] = 'Freshclam: ???!'; |
| | | $wb['monitor_serverstate_hdok_txt'] = 'Espaço em disco está ok'; |
| | | $wb['monitor_serverstate_hdgoingfull_txt'] = 'O espaço em disco está cheio'; |
| | | $wb['monitor_serverstate_hdnearlyfull_txt'] = 'Seu disco está ficando cheio'; |
| | | $wb['monitor_serverstate_hdveryfull_txt'] = 'Seu disco está muito cheio'; |
| | | $wb['monitor_serverstate_hdfull_txt'] = 'Seu disco não tem mais espaço'; |
| | | $wb['monitor_serverstate_hdunknown_txt'] = 'Disco Rígido: ???'; |
| | | $wb['monitor_serverstate_listok_txt'] = 'ok'; |
| | | $wb['monitor_serverstate_listinfo_txt'] = 'infomação'; |
| | | $wb['monitor_serverstate_listwarning_txt'] = 'aviso'; |
| | | $wb['monitor_serverstate_listcritical_txt'] = 'crítico'; |
| | | $wb['monitor_serverstate_listerror_txt'] = 'erro'; |
| | | $wb['monitor_serverstate_listunknown_txt'] = 'desconhecido'; |
| | | $wb['monitor_serverstate_loadok_txt'] = 'Servidor carregado ok'; |
| | | $wb['monitor_serverstate_loadheavy_txt'] = 'Seu servidor está com uma carga alta'; |
| | | $wb['monitor_serverstate_loadhigh_txt'] = 'Seu servidor está ficando com uma carga alta'; |
| | | $wb['monitor_serverstate_loaghigher_txt'] = 'Seu servidor está com uma carga muito alta'; |
| | | $wb['monitor_serverstate_loadhighest_txt'] = 'Seu servidor está com uma carga super alta'; |
| | | $wb['monitor_serverstate_loadunknown_txt'] = 'Carga do Servidor: ???'; |
| | | $wb['monitor_serverstate_mailqok_txt'] = 'Sua fila de correio está OK'; |
| | | $wb['monitor_serverstate_mailqheavy_txt'] = 'Sua fila de correio está ficando com uma carga alta'; |
| | | $wb['monitor_serverstate_mailqhigh_txt'] = 'Sua fila de correio está com uma carga alta'; |
| | | $wb['monitor_serverstate_mailqhigher_txt'] = 'Sua fila de correio está com uma carga muito alta'; |
| | | $wb['monitor_serverstate_mailqhighest_txt'] = 'Sua fila de correio está com uma carga super alta'; |
| | | $wb['monitor_serverstate_mailqunknown_txt'] = 'Fila de Correio: ???'; |
| | | $wb['monitor_serverstate_raidok_txt'] = 'Seu RAID está ok'; |
| | | $wb['monitor_serverstate_raidresync_txt'] = 'Seu RAID está em modo RESYNC'; |
| | | $wb['monitor_serverstate_raidfault_txt'] = 'Seu RAID possui um disco com falhas. Troque-o o mais rápido possível!'; |
| | | $wb['monitor_serverstate_raiderror_txt'] = 'Seu RAID não está mais funcionando.'; |
| | | $wb['monitor_serverstate_raidunknown_txt'] = 'Estado do RAID: ???'; |
| | | $wb['monitor_serverstate_servicesonline_txt'] = 'Todos os serviços necessários estão on-line'; |
| | | $wb['monitor_serverstate_servicesoffline_txt'] = 'Um ou mais serviços necessários estão off-line'; |
| | | $wb['monitor_serverstate_servicesunknown_txt'] = 'Serviços:???'; |
| | | $wb['monitor_serverstate_syslogok_txt'] = 'O System-Log está O.K.'; |
| | | $wb['monitor_serverstate_syslogwarning_txt'] = 'Existem alguns avisos em seu System-Log'; |
| | | $wb['monitor_serverstate_syslogerror_txt'] = 'Existem erros no seu System-Log'; |
| | | $wb['monitor_serverstate_syslogunknown_txt'] = 'sys-log:???'; |
| | | $wb['monitor_serverstate_updatesok_txt'] = 'Seu sistema está atualizado.'; |
| | | $wb['monitor_serverstate_updatesneeded_txt'] = 'Um ou mais componentes necessitam de atualização'; |
| | | $wb['monitor_serverstate_updatesunknown_txt'] = 'Atualização-Sistema:???'; |
| | | $wb['monitor_services_online_txt'] = 'Online'; |
| | | $wb['monitor_services_offline_txt'] = 'Offline'; |
| | | $wb['monitor_services_web_txt'] = 'Servidor Webr:'; |
| | | $wb['monitor_services_ftp_txt'] = 'Servidor FTP:'; |
| | | $wb['monitor_services_smtp_txt'] = 'Servidor SMTP:'; |
| | | $wb['monitor_services_pop_txt'] = 'Servidor POP:'; |
| | | $wb['monitor_services_imap_txt'] = 'Servidor IMAP:'; |
| | | $wb['monitor_services_mydns_txt'] = 'Servidor myDNS:'; |
| | | $wb['monitor_services_mysql_txt'] = 'Servidor MySql:'; |
| | | $wb['monitor_settings_datafromdate_txt'] = 'Data de: '; |
| | | $wb['monitor_settings_datetimeformat_txt'] = 'd/m/Y H:i'; |
| | | $wb['monitor_settings_refreshsq_txt'] = 'Atualizar sequência:'; |
| | | $wb['monitor_settings_server_txt'] = 'Servidor'; |
| | | $wb['monitor_title_cpuinfo_txt'] = 'Informação da CPU'; |
| | | $wb['monitor_title_updatestate_txt'] = 'Atualizar Estado'; |
| | | $wb['monitor_title_mailq_txt'] = 'Fila de Correio'; |
| | | $wb['monitor_title_raidstate_txt'] = 'Estado do RAID'; |
| | | $wb['monitor_title_rkhunterlog_txt'] = 'Log do RKHunter'; |
| | | $wb['monitor_updates_nosupport_txt'] = 'Sua distribuição não suporta este tipo de monitoramento'; |
| | | ?> |
| | | |
New file |
| | |
| | | <?php |
| | | $wb['list_head_txt'] = 'Log do Painel'; |
| | | $wb['tstamp_txt'] = 'Data'; |
| | | $wb['server_id_txt'] = 'Servidor'; |
| | | $wb['loglevel_txt'] = 'Nível do Log'; |
| | | $wb['message_txt'] = 'Mensagem'; |
| | | ?> |
| | | |
New file |
| | |
| | | <?php
|
| | |
|
| | | /*
|
| | | Copyright (c) 2008, Till Brehm, projektfarm Gmbh
|
| | | Modified 2009, Marius Cramer, pixcept KG
|
| | | All rights reserved.
|
| | |
|
| | | Redistribution and use in source and binary forms, with or without modification,
|
| | | are permitted provided that the following conditions are met:
|
| | |
|
| | | * Redistributions of source code must retain the above copyright notice,
|
| | | this list of conditions and the following disclaimer.
|
| | | * Redistributions in binary form must reproduce the above copyright notice,
|
| | | this list of conditions and the following disclaimer in the documentation
|
| | | and/or other materials provided with the distribution.
|
| | | * Neither the name of ISPConfig nor the names of its contributors
|
| | | may be used to endorse or promote products derived from this software without
|
| | | specific prior written permission.
|
| | |
|
| | | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
|
| | | ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
|
| | | WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
|
| | | IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
|
| | | INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
|
| | | BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
|
| | | DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
|
| | | OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
|
| | | NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
|
| | | EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
| | | */
|
| | |
|
| | | /******************************************
|
| | | * Begin Form configuration
|
| | | ******************************************/
|
| | |
|
| | | $list_def_file = "list/cron.list.php";
|
| | | $tform_def_file = "form/cron.tform.php";
|
| | |
|
| | | /******************************************
|
| | | * End Form configuration
|
| | | ******************************************/
|
| | |
|
| | | require_once('../../lib/config.inc.php');
|
| | | require_once('../../lib/app.inc.php');
|
| | |
|
| | | //* Check permissions for module
|
| | | $app->auth->check_module_permissions('sites');
|
| | |
|
| | | $app->uses('tpl,tform,tform_actions');
|
| | | $app->load('tform_actions');
|
| | |
|
| | | class page_action extends tform_actions {
|
| | |
|
| | | function onBeforeDelete() {
|
| | | global $app; $conf;
|
| | | |
| | | if($app->tform->checkPerm($this->id,'d') == false) $app->error($app->lng('error_no_delete_permission'));
|
| | | }
|
| | | }
|
| | |
|
| | | $page = new page_action;
|
| | | $page->onDelete();
|
| | |
|
| | | ?> |
New file |
| | |
| | | <?php |
| | | |
| | | /* |
| | | Copyright (c) 2007, Till Brehm, projektfarm Gmbh |
| | | Modified 2009, Marius Cramer, pixcept KG |
| | | All rights reserved. |
| | | |
| | | Redistribution and use in source and binary forms, with or without modification, |
| | | are permitted provided that the following conditions are met: |
| | | |
| | | * Redistributions of source code must retain the above copyright notice, |
| | | this list of conditions and the following disclaimer. |
| | | * Redistributions in binary form must reproduce the above copyright notice, |
| | | this list of conditions and the following disclaimer in the documentation |
| | | and/or other materials provided with the distribution. |
| | | * Neither the name of ISPConfig nor the names of its contributors |
| | | may be used to endorse or promote products derived from this software without |
| | | specific prior written permission. |
| | | |
| | | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND |
| | | ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED |
| | | WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. |
| | | IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, |
| | | INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, |
| | | BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, |
| | | DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY |
| | | OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING |
| | | NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, |
| | | EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
| | | */ |
| | | |
| | | /****************************************** |
| | | * Begin Form configuration |
| | | ******************************************/ |
| | | |
| | | $tform_def_file = "form/cron.tform.php"; |
| | | |
| | | /****************************************** |
| | | * End Form configuration |
| | | ******************************************/ |
| | | |
| | | require_once('../../lib/config.inc.php'); |
| | | require_once('../../lib/app.inc.php'); |
| | | |
| | | //* Check permissions for module |
| | | $app->auth->check_module_permissions('sites'); |
| | | |
| | | // Loading classes |
| | | $app->uses('tpl,tform,tform_actions,validate_cron'); |
| | | $app->load('tform_actions'); |
| | | |
| | | class page_action extends tform_actions { |
| | | |
| | | function onShowNew() { |
| | | global $app, $conf; |
| | | |
| | | // we will check only users, not admins |
| | | if($_SESSION["s"]["user"]["typ"] == 'user') { |
| | | if(!$app->tform->checkClientLimit('limit_cron')) { |
| | | $app->error($app->tform->wordbook["limit_cron_txt"]); |
| | | } |
| | | if(!$app->tform->checkResellerLimit('limit_cron')) { |
| | | $app->error('Reseller: '.$app->tform->wordbook["limit_cron_txt"]); |
| | | } |
| | | } |
| | | |
| | | parent::onShowNew(); |
| | | } |
| | | |
| | | function onShowEnd() { |
| | | global $app, $conf; |
| | | |
| | | if($this->id > 0) { |
| | | //* we are editing a existing record |
| | | $app->tpl->setVar("edit_disabled", 1); |
| | | $app->tpl->setVar("parent_domain_id_value", $this->dataRecord["parent_domain_id"]); |
| | | } else { |
| | | $app->tpl->setVar("edit_disabled", 0); |
| | | } |
| | | |
| | | parent::onShowEnd(); |
| | | } |
| | | |
| | | function onSubmit() { |
| | | global $app, $conf; |
| | | |
| | | if($_SESSION["s"]["user"]["typ"] != 'admin') { |
| | | // Get the limits of the client |
| | | $client_group_id = $_SESSION["s"]["user"]["default_group"]; |
| | | $client = $app->db->queryOneRecord("SELECT limit_cron, limit_cron_type FROM sys_group, client WHERE sys_group.client_id = client.client_id and sys_group.groupid = $client_group_id"); |
| | | |
| | | // When the record is updated |
| | | if($this->id > 0) { |
| | | // When the record is inserted |
| | | } else { |
| | | // Check if the user may add another cron job. |
| | | if($client["limit_cron"] >= 0) { |
| | | $tmp = $app->db->queryOneRecord("SELECT count(id) as number FROM cron WHERE sys_groupid = $client_group_id"); |
| | | if($tmp["number"] >= $client["limit_cron"]) { |
| | | $app->error($app->tform->wordbook["limit_cron_txt"]); |
| | | } |
| | | } |
| | | } |
| | | } |
| | | |
| | | // Get the record of the parent domain |
| | | $parent_domain = $app->db->queryOneRecord("select * FROM web_domain WHERE domain_id = ".intval(@$this->dataRecord["parent_domain_id"])); |
| | | |
| | | // Set fixed values |
| | | $this->dataRecord["server_id"] = $parent_domain["server_id"]; |
| | | |
| | | //* get type of command |
| | | $command = $this->dataRecord["command"]; |
| | | if(preg_match("'^http(s)?:\/\/'i", $command)) { |
| | | $this->dataRecord["type"] = 'url'; |
| | | } else { |
| | | $domain_owner = $app->db->queryOneRecord("SELECT limit_cron_type FROM sys_group, client WHERE sys_group.client_id = client.client_id and sys_group.groupid = ".intval($parent_domain["sys_groupid"])); |
| | | if($domain_owner["limit_cron_type"] == 'full') $this->dataRecord["type"] = 'full'; |
| | | else $this->dataRecord["type"] = 'chrooted'; |
| | | } |
| | | |
| | | parent::onSubmit(); |
| | | } |
| | | |
| | | function onUpdateSave($sql) { |
| | | global $app; |
| | | |
| | | $has_error = false; |
| | | //* last chance to stop this, so check frequency limit! |
| | | if($_SESSION["s"]["user"]["typ"] != 'admin') { |
| | | // Get the limits of the client |
| | | $client_group_id = $_SESSION["s"]["user"]["default_group"]; |
| | | $client = $app->db->queryOneRecord("SELECT limit_cron_frequency FROM sys_group, client WHERE sys_group.client_id = client.client_id and sys_group.groupid = $client_group_id"); |
| | | |
| | | if($client["limit_cron_frequency"] > 1) { |
| | | if($app->tform->cron_min_freq < $client["limit_cron_frequency"]) { |
| | | $app->error($app->tform->wordbook["limit_cron_frequency_txt"]); |
| | | $has_error = true; |
| | | } |
| | | } |
| | | } |
| | | |
| | | if($has_error == true) { |
| | | parent::onError(); |
| | | exit; |
| | | } |
| | | else parent::onUpdateSave($sql); |
| | | } |
| | | |
| | | function onInsertSave($sql) { |
| | | global $app; |
| | | |
| | | $has_error = false; |
| | | //* last chance to stop this, so check frequency limit! |
| | | if($_SESSION["s"]["user"]["typ"] != 'admin') { |
| | | // Get the limits of the client |
| | | $client_group_id = $_SESSION["s"]["user"]["default_group"]; |
| | | $client = $app->db->queryOneRecord("SELECT limit_cron_frequency FROM sys_group, client WHERE sys_group.client_id = client.client_id and sys_group.groupid = $client_group_id"); |
| | | |
| | | if($client["limit_cron_frequency"] > 1) { |
| | | if($app->tform->cron_min_freq < $client["limit_cron_frequency"]) { |
| | | $app->error($app->tform->wordbook["limit_cron_frequency_txt"]); |
| | | $has_error = true; |
| | | } |
| | | } |
| | | } |
| | | |
| | | if($has_error == true) { |
| | | parent::onError(); |
| | | exit; |
| | | } |
| | | else parent::onInsertSave($sql); |
| | | } |
| | | |
| | | function onAfterInsert() { |
| | | global $app, $conf; |
| | | |
| | | $web = $app->db->queryOneRecord("SELECT * FROM web_domain WHERE domain_id = ".intval($this->dataRecord["parent_domain_id"])); |
| | | $server_id = $web["server_id"]; |
| | | |
| | | // The cron shall be owned by the same group then the website |
| | | $sys_groupid = $web['sys_groupid']; |
| | | |
| | | $sql = "UPDATE shell_user SET server_id = $server_id, sys_groupid = '$sys_groupid' WHERE id = ".$this->id; |
| | | $app->db->query($sql); |
| | | } |
| | | |
| | | function onAfterUpdate() { |
| | | global $app, $conf; |
| | | |
| | | |
| | | } |
| | | |
| | | function getClientName() { |
| | | global $app, $conf; |
| | | |
| | | if($_SESSION["s"]["user"]["typ"] != 'admin') { |
| | | // Get the group-id of the user |
| | | $client_group_id = $_SESSION["s"]["user"]["default_group"]; |
| | | } else { |
| | | // Get the group-id from the data itself |
| | | $web = $app->db->queryOneRecord("SELECT sys_groupid FROM web_domain WHERE domain_id = ".intval($this->dataRecord['parent_domain_id'])); |
| | | $client_group_id = $web['sys_groupid']; |
| | | } |
| | | /* get the name of the client */ |
| | | $tmp = $app->db->queryOneRecord("SELECT name FROM sys_group WHERE groupid = " . $client_group_id); |
| | | $clientName = $tmp['name']; |
| | | if ($clientName == "") $clientName = 'default'; |
| | | $clientName = convertClientName($clientName); |
| | | |
| | | return $clientName; |
| | | |
| | | } |
| | | |
| | | } |
| | | |
| | | $page = new page_action; |
| | | $page->onLoad(); |
| | | |
| | | ?> |
New file |
| | |
| | | <?php
|
| | | require_once('../../lib/config.inc.php');
|
| | | require_once('../../lib/app.inc.php');
|
| | |
|
| | | /******************************************
|
| | | * Begin Form configuration
|
| | | ******************************************/
|
| | |
|
| | | $list_def_file = "list/cron.list.php";
|
| | |
|
| | | /******************************************
|
| | | * End Form configuration
|
| | | ******************************************/
|
| | |
|
| | | //* Check permissions for module
|
| | | $app->auth->check_module_permissions('sites');
|
| | |
|
| | | $app->uses('listform_actions');
|
| | |
|
| | | $app->listform_actions->onLoad();
|
| | |
|
| | |
|
| | | ?> |
| | |
| | | |
| | | // we will check only users, not admins |
| | | if($_SESSION["s"]["user"]["typ"] == 'user') { |
| | | |
| | | // Get the limits of the client |
| | | $client_group_id = $_SESSION["s"]["user"]["default_group"]; |
| | | $client = $app->db->queryOneRecord("SELECT limit_database FROM sys_group, client WHERE sys_group.client_id = client.client_id and sys_group.groupid = $client_group_id"); |
| | | |
| | | // Check if the user may add another database. |
| | | if($client["limit_database"] >= 0) { |
| | | $tmp = $app->db->queryOneRecord("SELECT count(database_id) as number FROM web_database WHERE sys_groupid = $client_group_id"); |
| | | if($tmp["number"] >= $client["limit_database"]) { |
| | | $app->error($app->tform->wordbook["limit_database_txt"]); |
| | | } |
| | | if(!$app->tform->checkClientLimit('limit_database')) { |
| | | $app->error($app->tform->wordbook["limit_database_txt"]); |
| | | } |
| | | if(!$app->tform->checkResellerLimit('limit_database')) { |
| | | $app->error('Reseller: '.$app->tform->wordbook["limit_database_txt"]); |
| | | } |
| | | } |
| | | |
New file |
| | |
| | | <?php |
| | | |
| | | /* |
| | | Form Definition |
| | | |
| | | Tabledefinition |
| | | |
| | | Datatypes: |
| | | - INTEGER (Forces the input to Int) |
| | | - DOUBLE |
| | | - CURRENCY (Formats the values to currency notation) |
| | | - VARCHAR (no format check, maxlength: 255) |
| | | - TEXT (no format check) |
| | | - DATE (Dateformat, automatic conversion to timestamps) |
| | | |
| | | Formtype: |
| | | - TEXT (Textfield) |
| | | - TEXTAREA (Textarea) |
| | | - PASSWORD (Password textfield, input is not shown when edited) |
| | | - SELECT (Select option field) |
| | | - RADIO |
| | | - CHECKBOX |
| | | - CHECKBOXARRAY |
| | | - FILE |
| | | |
| | | VALUE: |
| | | - Wert oder Array |
| | | |
| | | Hint: |
| | | The ID field of the database table is not part of the datafield definition. |
| | | The ID field must be always auto incement (int or bigint). |
| | | |
| | | |
| | | */ |
| | | |
| | | $form["title"] = "Cron Job"; |
| | | $form["description"] = ""; |
| | | $form["name"] = "cron"; |
| | | $form["action"] = "cron_edit.php"; |
| | | $form["db_table"] = "cron"; |
| | | $form["db_table_idx"] = "id"; |
| | | $form["db_history"] = "yes"; |
| | | $form["tab_default"] = "cron"; |
| | | $form["list_default"] = "cron_list.php"; |
| | | $form["auth"] = 'yes'; // yes / no |
| | | |
| | | $form["auth_preset"]["userid"] = 0; // 0 = id of the user, > 0 id must match with id of current user |
| | | $form["auth_preset"]["groupid"] = 0; // 0 = default groupid of the user, > 0 id must match with groupid of current user |
| | | $form["auth_preset"]["perm_user"] = 'riud'; //r = read, i = insert, u = update, d = delete |
| | | $form["auth_preset"]["perm_group"] = 'riud'; //r = read, i = insert, u = update, d = delete |
| | | $form["auth_preset"]["perm_other"] = ''; //r = read, i = insert, u = update, d = delete |
| | | |
| | | $form["tabs"]['cron'] = array ( |
| | | 'title' => "Cron Job", |
| | | 'width' => 100, |
| | | 'template' => "templates/cron_edit.htm", |
| | | 'fields' => array ( |
| | | ################################## |
| | | # Begin Datatable fields |
| | | ################################## |
| | | 'server_id' => array ( |
| | | 'datatype' => 'INTEGER', |
| | | 'formtype' => 'SELECT', |
| | | 'datasource' => array ( 'type' => 'SQL', |
| | | 'querystring' => 'SELECT server_id,server_name FROM server WHERE web_server = 1 AND {AUTHSQL} ORDER BY server_name', |
| | | 'keyfield'=> 'server_id', |
| | | 'valuefield'=> 'server_name' |
| | | ), |
| | | 'validators' => array ( 0 => array ( 'type' => 'NOTEMPTY', |
| | | 'errmsg'=> 'server_id_error_empty'), |
| | | ), |
| | | 'default' => '', |
| | | 'value' => '', |
| | | 'width' => '30', |
| | | 'maxlength' => '255' |
| | | ), |
| | | 'parent_domain_id' => array ( |
| | | 'datatype' => 'INTEGER', |
| | | 'formtype' => 'SELECT', |
| | | 'default' => '', |
| | | 'datasource' => array ( 'type' => 'SQL', |
| | | 'querystring' => "SELECT domain_id,domain FROM web_domain WHERE type = 'vhost' AND {AUTHSQL} ORDER BY domain", |
| | | 'keyfield'=> 'domain_id', |
| | | 'valuefield'=> 'domain' |
| | | ), |
| | | 'value' => '' |
| | | ), |
| | | 'run_min' => array ( |
| | | 'datatype' => 'VARCHAR', |
| | | 'formtype' => 'TEXT', |
| | | 'validators' => array ( 0 => array ( 'type' => 'CUSTOM', |
| | | 'class' => 'validate_cron', |
| | | 'function' => 'run_time_format', |
| | | 'errmsg'=> 'run_min_error_format'), |
| | | ), |
| | | 'default' => '', |
| | | 'value' => '', |
| | | 'width' => '30', |
| | | 'maxlength' => '255' |
| | | ), |
| | | 'run_hour' => array ( |
| | | 'datatype' => 'VARCHAR', |
| | | 'formtype' => 'TEXT', |
| | | 'validators' => array ( 0 => array ( 'type' => 'CUSTOM', |
| | | 'class' => 'validate_cron', |
| | | 'function' => 'run_time_format', |
| | | 'errmsg'=> 'run_hour_error_format'), |
| | | ), |
| | | 'default' => '', |
| | | 'value' => '', |
| | | 'width' => '30', |
| | | 'maxlength' => '255' |
| | | ), |
| | | 'run_mday' => array ( |
| | | 'datatype' => 'VARCHAR', |
| | | 'formtype' => 'TEXT', |
| | | 'validators' => array ( 0 => array ( 'type' => 'CUSTOM', |
| | | 'class' => 'validate_cron', |
| | | 'function' => 'run_time_format', |
| | | 'errmsg'=> 'run_mday_error_format'), |
| | | ), |
| | | 'default' => '', |
| | | 'value' => '', |
| | | 'width' => '30', |
| | | 'maxlength' => '255' |
| | | ), |
| | | 'run_month' => array ( |
| | | 'datatype' => 'VARCHAR', |
| | | 'formtype' => 'TEXT', |
| | | 'validators' => array ( 0 => array ( 'type' => 'CUSTOM', |
| | | 'class' => 'validate_cron', |
| | | 'function' => 'run_time_format', |
| | | 'errmsg'=> 'run_month_error_format'), |
| | | ), |
| | | 'default' => '', |
| | | 'value' => '', |
| | | 'width' => '30', |
| | | 'maxlength' => '255' |
| | | ), |
| | | 'run_wday' => array ( |
| | | 'datatype' => 'VARCHAR', |
| | | 'formtype' => 'TEXT', |
| | | 'validators' => array ( 0 => array ( 'type' => 'CUSTOM', |
| | | 'class' => 'validate_cron', |
| | | 'function' => 'run_time_format', |
| | | 'errmsg'=> 'run_wday_error_format'), |
| | | ), |
| | | 'default' => '', |
| | | 'value' => '', |
| | | 'width' => '30', |
| | | 'maxlength' => '255' |
| | | ), |
| | | 'command' => array ( |
| | | 'datatype' => 'VARCHAR', |
| | | 'formtype' => 'TEXT', |
| | | 'validators' => array ( 0 => array ( 'type' => 'NOTEMPTY', |
| | | 'errmsg'=> 'command_error_empty'), |
| | | 1 => array ( 'type' => 'CUSTOM', |
| | | 'class' => 'validate_cron', |
| | | 'function' => 'command_format', |
| | | 'errmsg'=> 'command_error_format'), |
| | | ), |
| | | 'default' => '', |
| | | 'value' => '', |
| | | 'width' => '30', |
| | | 'maxlength' => '255' |
| | | ), |
| | | 'type' => array ( |
| | | 'datatype' => 'VARCHAR', |
| | | 'formtype' => 'SELECT', |
| | | 'default' => 'url', |
| | | 'valuelimit' => 'list:url,full,chrooted', |
| | | 'value' => array('url' => 'Url', 'full' => 'Full', 'chrooted' => 'Chrooted') |
| | | ), |
| | | 'active' => array ( |
| | | 'datatype' => 'VARCHAR', |
| | | 'formtype' => 'CHECKBOX', |
| | | 'default' => 'y', |
| | | 'value' => array(0 => 'n',1 => 'y') |
| | | ), |
| | | ################################## |
| | | # ENDE Datatable fields |
| | | ################################## |
| | | ) |
| | | ); |
| | | |
| | | |
| | | |
| | | ?> |
| | |
| | | 'default' => 'y', |
| | | 'value' => array(0 => 'n',1 => 'y') |
| | | ), |
| | | 'remote_ips' => array ( |
| | | 'datatype' => 'TEXT', |
| | | 'formtype' => 'TEXT', |
| | | 'validators' => array ( 0 => array ( 'type' => 'CUSTOM', |
| | | 'class' => 'validate_database', |
| | | 'function' => 'valid_ip_list', |
| | | 'errmsg' => 'database_remote_error_ips'), |
| | | ), |
| | | 'default' => '', |
| | | 'value' => '', |
| | | 'width' => '60' |
| | | ), |
| | | ################################## |
| | | # ENDE Datatable fields |
| | | ################################## |
| | |
| | | 'username' => array ( |
| | | 'datatype' => 'VARCHAR', |
| | | 'formtype' => 'TEXT', |
| | | 'validators' => array ( 0 => array ( 'type' => 'NOTEMPTY', |
| | | 'errmsg'=> 'username_error_empty'), |
| | | 1 => array ( 'type' => 'UNIQUE', |
| | | 'validators' => array ( 0 => array ( 'type' => 'UNIQUE', |
| | | 'errmsg'=> 'username_error_unique'), |
| | | 2 => array ( 'type' => 'REGEX', |
| | | 'regex' => '/^[\w\.\-]{1,64}$/', |
| | | 1 => array ( 'type' => 'REGEX', |
| | | 'regex' => '/^[\w\.\-]{0,64}$/', |
| | | 'errmsg'=> 'username_error_regex'), |
| | | ), |
| | | 'default' => '', |
| | |
| | | if($_SESSION["s"]["user"]["typ"] == 'admin') { |
| | | |
| | | $form["tabs"]['advanced'] = array ( |
| | | 'title' => "Options", |
| | | 'width' => 100, |
| | | 'template' => "templates/ftp_user_advanced.htm", |
| | | 'fields' => array ( |
| | | ################################## |
| | | # Begin Datatable fields |
| | | ################################## |
| | | 'uid' => array ( |
| | | 'datatype' => 'VARCHAR', |
| | | 'formtype' => 'TEXT', |
| | | 'validators' => array ( 0 => array ( 'type' => 'NOTEMPTY', |
| | | 'errmsg'=> 'uid_error_empty'), |
| | | ), |
| | | 'default' => '0', |
| | | 'value' => '', |
| | | 'width' => '30', |
| | | 'maxlength' => '255' |
| | | ), |
| | | 'gid' => array ( |
| | | 'datatype' => 'VARCHAR', |
| | | 'formtype' => 'TEXT', |
| | | 'validators' => array ( 0 => array ( 'type' => 'NOTEMPTY', |
| | | 'errmsg'=> 'uid_error_empty'), |
| | | ), |
| | | 'default' => '0', |
| | | 'value' => '', |
| | | 'width' => '30', |
| | | 'maxlength' => '255' |
| | | ), |
| | | 'dir' => array ( |
| | | 'datatype' => 'VARCHAR', |
| | | 'formtype' => 'TEXT', |
| | | 'validators' => array ( 0 => array ( 'type' => 'NOTEMPTY', |
| | | 'errmsg'=> 'directory_error_empty'), |
| | | ), |
| | | 'default' => '', |
| | | 'value' => '', |
| | | 'width' => '30', |
| | | 'maxlength' => '255' |
| | | ), |
| | | 'quota_files' => array ( |
| | | 'datatype' => 'INTEGER', |
| | | 'formtype' => 'TEXT', |
| | | 'default' => '0', |
| | | 'value' => '', |
| | | 'width' => '7', |
| | | 'maxlength' => '7' |
| | | ), |
| | | 'ul_ratio' => array ( |
| | | 'datatype' => 'INTEGER', |
| | | 'formtype' => 'TEXT', |
| | | 'default' => '0', |
| | | 'value' => '', |
| | | 'width' => '7', |
| | | 'maxlength' => '7' |
| | | ), |
| | | 'dl_ratio' => array ( |
| | | 'datatype' => 'INTEGER', |
| | | 'formtype' => 'TEXT', |
| | | 'default' => '0', |
| | | 'value' => '', |
| | | 'width' => '7', |
| | | 'maxlength' => '7' |
| | | ), |
| | | 'ul_bandwidth' => array ( |
| | | 'datatype' => 'INTEGER', |
| | | 'formtype' => 'TEXT', |
| | | 'default' => '0', |
| | | 'value' => '', |
| | | 'width' => '7', |
| | | 'maxlength' => '7' |
| | | ), |
| | | 'dl_bandwidth' => array ( |
| | | 'datatype' => 'INTEGER', |
| | | 'formtype' => 'TEXT', |
| | | 'default' => '0', |
| | | 'value' => '', |
| | | 'width' => '7', |
| | | 'maxlength' => '7' |
| | | ), |
| | | ################################## |
| | | # ENDE Datatable fields |
| | | ################################## |
| | | ) |
| | | 'title' => "Options", |
| | | 'width' => 100, |
| | | 'template' => "templates/ftp_user_advanced.htm", |
| | | 'fields' => array ( |
| | | ################################## |
| | | # Begin Datatable fields |
| | | ################################## |
| | | 'uid' => array ( |
| | | 'datatype' => 'VARCHAR', |
| | | 'formtype' => 'TEXT', |
| | | 'validators' => array ( 0 => array ( 'type' => 'NOTEMPTY', |
| | | 'errmsg'=> 'uid_error_empty'), |
| | | ), |
| | | 'default' => '0', |
| | | 'value' => '', |
| | | 'width' => '30', |
| | | 'maxlength' => '255' |
| | | ), |
| | | 'gid' => array ( |
| | | 'datatype' => 'VARCHAR', |
| | | 'formtype' => 'TEXT', |
| | | 'validators' => array ( 0 => array ( 'type' => 'NOTEMPTY', |
| | | 'errmsg'=> 'uid_error_empty'), |
| | | ), |
| | | 'default' => '0', |
| | | 'value' => '', |
| | | 'width' => '30', |
| | | 'maxlength' => '255' |
| | | ), |
| | | 'dir' => array ( |
| | | 'datatype' => 'VARCHAR', |
| | | 'formtype' => 'TEXT', |
| | | 'validators' => array ( 0 => array ( 'type' => 'NOTEMPTY', |
| | | 'errmsg'=> 'directory_error_empty'), |
| | | ), |
| | | 'default' => '', |
| | | 'value' => '', |
| | | 'width' => '30', |
| | | 'maxlength' => '255' |
| | | ), |
| | | 'quota_files' => array ( |
| | | 'datatype' => 'INTEGER', |
| | | 'formtype' => 'TEXT', |
| | | 'default' => '0', |
| | | 'value' => '', |
| | | 'width' => '7', |
| | | 'maxlength' => '7' |
| | | ), |
| | | 'ul_ratio' => array ( |
| | | 'datatype' => 'INTEGER', |
| | | 'formtype' => 'TEXT', |
| | | 'default' => '0', |
| | | 'value' => '', |
| | | 'width' => '7', |
| | | 'maxlength' => '7' |
| | | ), |
| | | 'dl_ratio' => array ( |
| | | 'datatype' => 'INTEGER', |
| | | 'formtype' => 'TEXT', |
| | | 'default' => '0', |
| | | 'value' => '', |
| | | 'width' => '7', |
| | | 'maxlength' => '7' |
| | | ), |
| | | 'ul_bandwidth' => array ( |
| | | 'datatype' => 'INTEGER', |
| | | 'formtype' => 'TEXT', |
| | | 'default' => '0', |
| | | 'value' => '', |
| | | 'width' => '7', |
| | | 'maxlength' => '7' |
| | | ), |
| | | 'dl_bandwidth' => array ( |
| | | 'datatype' => 'INTEGER', |
| | | 'formtype' => 'TEXT', |
| | | 'default' => '0', |
| | | 'value' => '', |
| | | 'width' => '7', |
| | | 'maxlength' => '7' |
| | | ), |
| | | ################################## |
| | | # ENDE Datatable fields |
| | | ################################## |
| | | ) |
| | | ); |
| | | |
| | | } else { |
| | | |
| | | $form["tabs"]['advanced'] = array ( |
| | | 'title' => "Options", |
| | | 'width' => 100, |
| | | 'template' => "templates/ftp_user_advanced_client.htm", |
| | | 'fields' => array ( |
| | | ################################## |
| | | # Begin Datatable fields |
| | | ################################## |
| | | 'dir' => array ( |
| | | 'datatype' => 'VARCHAR', |
| | | 'formtype' => 'TEXT', |
| | | 'validators' => array ( 0 => array ( 'type' => 'NOTEMPTY', |
| | | 'errmsg'=> 'directory_error_empty'), |
| | | 1 => array ( 'type' => 'CUSTOM', |
| | | 'class' => 'validate_ftpuser', |
| | | 'function' => 'ftp_dir', |
| | | 'errmsg' => 'directory_error_notinweb'), |
| | | ), |
| | | 'default' => '', |
| | | 'value' => '', |
| | | 'width' => '30', |
| | | 'maxlength' => '255' |
| | | ), |
| | | ################################## |
| | | # ENDE Datatable fields |
| | | ################################## |
| | | ) |
| | | ); |
| | | |
| | | } |
| | | |
| | | |
| | | |
| | | ?> |
| | |
| | | 'username' => array ( |
| | | 'datatype' => 'VARCHAR', |
| | | 'formtype' => 'TEXT', |
| | | 'validators' => array ( 0 => array ( 'type' => 'NOTEMPTY', |
| | | 'errmsg'=> 'username_error_empty'), |
| | | 1 => array ( 'type' => 'UNIQUE', |
| | | 'validators' => array ( 0 => array ( 'type' => 'UNIQUE', |
| | | 'errmsg'=> 'username_error_unique'), |
| | | 2 => array ( 'type' => 'REGEX', |
| | | 'regex' => '/^[\w\.\-]{1,64}$/', |
| | | 1 => array ( 'type' => 'REGEX', |
| | | 'regex' => '/^[\w\.\-]{0,64}$/', |
| | | 'errmsg'=> 'username_error_regex'), |
| | | ), |
| | | 'default' => '', |
| | |
| | | |
| | | // we will check only users, not admins |
| | | if($_SESSION["s"]["user"]["typ"] == 'user') { |
| | | |
| | | // Get the limits of the client |
| | | $client_group_id = $_SESSION["s"]["user"]["default_group"]; |
| | | $client = $app->db->queryOneRecord("SELECT limit_ftp_user FROM sys_group, client WHERE sys_group.client_id = client.client_id and sys_group.groupid = $client_group_id"); |
| | | |
| | | // Check if the user may add another ftp user. |
| | | if($client["limit_ftp_user"] >= 0) { |
| | | $tmp = $app->db->queryOneRecord("SELECT count(ftp_user_id) as number FROM ftp_user WHERE sys_groupid = $client_group_id"); |
| | | if($tmp["number"] >= $client["limit_ftp_user"]) { |
| | | $app->error($app->tform->wordbook["limit_ftp_user_txt"]); |
| | | } |
| | | if(!$app->tform->checkClientLimit('limit_ftp_user')) { |
| | | $app->error($app->tform->wordbook["limit_ftp_user_txt"]); |
| | | } |
| | | if(!$app->tform->checkResellerLimit('limit_ftp_user')) { |
| | | $app->error('Reseller: '.$app->tform->wordbook["limit_ftp_user_txt"]); |
| | | } |
| | | } |
| | | |
| | |
| | | |
| | | // Set a few fixed values |
| | | $this->dataRecord["server_id"] = $parent_domain["server_id"]; |
| | | |
| | | //die(print_r($this->dataRecord)); |
| | | |
| | | if(isset($this->dataRecord['username']) && trim($this->dataRecord['username']) == '') $app->tform->errorMessage .= $app->tform->lng('username_error_empty').'<br />'; |
| | | if(isset($this->dataRecord['username']) && empty($this->dataRecord['parent_domain_id'])) $app->tform->errorMessage .= $app->tform->lng('parent_domain_id_error_empty').'<br />'; |
| | | |
| | | parent::onSubmit(); |
| | | } |
| | |
| | | function onAfterUpdate() { |
| | | global $app, $conf; |
| | | |
| | | //* When the site of the FTP user has been changed |
| | | if($this->oldDataRecord['parent_domain_id'] != $this->dataRecord['parent_domain_id']) { |
| | | $web = $app->db->queryOneRecord("SELECT * FROM web_domain WHERE domain_id = ".intval($this->dataRecord["parent_domain_id"])); |
| | | $server_id = $web["server_id"]; |
| | | $dir = $web["document_root"]; |
| | | $uid = $web["system_user"]; |
| | | $gid = $web["system_group"]; |
| | | |
| | | // The FTP user shall be owned by the same group then the website |
| | | $sys_groupid = $web['sys_groupid']; |
| | | |
| | | $sql = "UPDATE ftp_user SET server_id = $server_id, dir = '$dir', uid = '$uid', gid = '$gid', sys_groupid = '$sys_groupid' WHERE ftp_user_id = ".$this->id; |
| | | $app->db->query($sql); |
| | | } |
| | | |
| | | } |
| | | |
New file |
| | |
| | | <?php |
| | | $wb['server_id_txt'] = 'Server'; |
| | | $wb['parent_domain_id_txt'] = 'Parent website'; |
| | | $wb['active_txt'] = 'Active'; |
| | | $wb['client_txt'] = 'Client'; |
| | | $wb['run_min_txt'] = 'Minutes'; |
| | | $wb['run_hour_txt'] = 'Hours'; |
| | | $wb['run_mday_txt'] = 'Days of month'; |
| | | $wb['run_month_txt'] = 'Months'; |
| | | $wb['run_wday_txt'] = 'Days of week'; |
| | | $wb['command_txt'] = 'Command to run (commands are executed via sh, urls via wget)'; |
| | | $wb['limit_cron_txt'] = 'The maximum number of allowed cron jobs was reached.'; |
| | | $wb['limit_cron_frequency_txt'] = 'The cron job frequency exceeds the allowed limit.'; |
| | | $wb['run_min_error_format'] = 'Invalid format for minutes.'; |
| | | $wb['run_hour_error_format'] = 'Invalid format for hours.'; |
| | | $wb['run_mday_error_format'] = 'Invalid format for days of month.'; |
| | | $wb['run_month_error_format'] = 'Invalid format for months.'; |
| | | $wb['run_wday_error_format'] = 'Invalid format for days of the week.'; |
| | | $wb['command_error_format'] = 'Invalid command format. Please note that in case of an url call only http/https is allowed.'; |
| | | $wb['unknown_fieldtype_error'] = 'An unknown field type has been used.'; |
| | | ?> |
New file |
| | |
| | | <?php |
| | | $wb['list_head_txt'] = 'Cron Jobs'; |
| | | $wb['active_txt'] = 'Active'; |
| | | $wb['server_id_txt'] = 'Server'; |
| | | $wb['run_min_txt'] = 'Minute'; |
| | | $wb['run_hour_txt'] = 'Hour'; |
| | | $wb['run_mday_txt'] = 'Day of month'; |
| | | $wb['run_month_txt'] = 'Month'; |
| | | $wb['run_wday_txt'] = 'Day of week'; |
| | | $wb['command_txt'] = 'Command'; |
| | | $wb['add_new_cron_txt'] = 'Add new Cron job'; |
| | | ?> |
| | |
| | | $wb['limit_database_txt'] = 'Достигнат е максималният разрешен брой бази данни.'; |
| | | $wb['database_name_change_txt'] = 'Името на базата данни не може да бъде променено.'; |
| | | $wb['database_charset_change_txt'] = 'Charset на базата данни не може да бъде променен.'; |
| | | $wb['remote_ips_txt'] = 'Remote Access IPs (separate by , and leave blank for <i>any</i>)'; |
| | | $wb['database_remote_error_ips'] = 'At least one of the entered ip addresses is invalid.'; |
| | | ?> |
| | |
| | | $wb['uid_error_empty'] = 'Не е посочено GID.'; |
| | | $wb['directory_error_empty'] = 'Не е посочена директория.'; |
| | | $wb['quota_files_unity_txt'] = 'Files'; |
| | | $wb['directory_error_notinweb'] = 'Directory not inside of web root directory.'; |
| | | ?> |
New file |
| | |
| | | <?php |
| | | $wb['list_head_txt'] = 'Web traffic'; |
| | | $wb['domain_txt'] = 'Domain'; |
| | | $wb['this_month_txt'] = 'This month'; |
| | | $wb['last_month_txt'] = 'Last month'; |
| | | $wb['this_year_txt'] = 'This year'; |
| | | $wb['last_year_txt'] = 'Last year'; |
| | | ?> |
New file |
| | |
| | | <?php |
| | | $wb['Database'] = 'Banco de Dados'; |
| | | $wb['Options'] = 'Opções'; |
| | | $wb['Shell User'] = 'Usuário de Shell'; |
| | | $wb['Domain'] = 'Website'; |
| | | $wb['Redirect'] = 'Redirecionamento'; |
| | | $wb['SSL'] = 'SSL'; |
| | | $wb['Subdomain'] = 'Sub-domínio'; |
| | | $wb['Sites'] = 'Sites'; |
| | | $wb['Aliasdomain'] = 'Alias de Domínio'; |
| | | $wb['FTP-User'] = 'Usuário-FTP'; |
| | | $wb['FTP'] = 'FTP'; |
| | | $wb['Shell-User'] = 'Usuário-Shell'; |
| | | $wb['Shell'] = 'Shell'; |
| | | $wb['Websites'] = 'Websites'; |
| | | $wb["Stats"] = 'Estatísticas'; |
| | | ?> |
New file |
| | |
| | | <?php |
| | | $wb["server_id_txt"] = 'Server'; |
| | | $wb['parent_domain_id_txt'] = 'Parent website'; |
| | | $wb['active_txt'] = 'Active'; |
| | | $wb['client_txt'] = 'Client'; |
| | | $wb['run_min_txt'] = 'Minutes'; |
| | | $wb['run_hour_txt'] = 'Hours'; |
| | | $wb['run_mday_txt'] = 'Days of month'; |
| | | $wb['run_month_txt'] = 'Months'; |
| | | $wb['run_wday_txt'] = 'Days of week'; |
| | | $wb['command_txt'] = 'Command to run (commands are executed via sh, urls via wget)'; |
| | | $wb['limit_cron_txt'] = 'The maximum number of allowed cron jobs was reached.'; |
| | | $wb['limit_cron_frequency_txt'] = 'The cron job frequency exceeds the allowed limit.'; |
| | | $wb['run_min_error_format'] = 'Invalid format for minutes.'; |
| | | $wb['run_hour_error_format'] = 'Invalid format for hours.'; |
| | | $wb['run_mday_error_format'] = 'Invalid format for days of month.'; |
| | | $wb['run_month_error_format'] = 'Invalid format for months.'; |
| | | $wb['run_wday_error_format'] = 'Invalid format for days of the week.'; |
| | | $wb['command_error_format'] = 'Invalid command format. Please note that in case of an url call only http/https is allowed.'; |
| | | $wb['unknown_fieldtype_error'] = 'An unknown field type has been used.'; |
| | | ?> |
New file |
| | |
| | | <?php |
| | | $wb["list_head_txt"] = 'Cron Jobs'; |
| | | $wb["active_txt"] = 'Active'; |
| | | $wb["server_id_txt"] = 'Server'; |
| | | $wb["run_min_txt"] = 'Minute'; |
| | | $wb["run_hour_txt"] = 'Hour'; |
| | | $wb["run_mday_txt"] = 'Day of month'; |
| | | $wb["run_month_txt"] = 'Month'; |
| | | $wb["run_wday_txt"] = 'Day of week'; |
| | | $wb["command_txt"] = 'Command'; |
| | | $wb["add_new_cron_txt"] = 'Add new Cron job'; |
| | | ?> |
New file |
| | |
| | | <?php |
| | | $wb["server_id_txt"] = 'Servidor'; |
| | | $wb["type_txt"] = 'Tipo'; |
| | | $wb["database_name_txt"] = 'Nome do Banco de Dados'; |
| | | $wb["database_user_txt"] = 'Usuário do Banco de Dados'; |
| | | $wb["database_password_txt"] = 'Senha do Banco de Dados'; |
| | | $wb["password_strength_txt"] = 'Segurança da Senha'; |
| | | $wb["database_charset_txt"] = 'Charset do Banco de Dados'; |
| | | $wb["remote_access_txt"] = 'Acesso Remoto'; |
| | | $wb["client_txt"] = 'Cliente'; |
| | | $wb["active_txt"] = 'Ativo'; |
| | | $wb["database_name_error_empty"] = 'O nome do banco está em branco.'; |
| | | $wb["database_name_error_unique"] = 'Já existe um banco de dados com este nome no servidor. O nome escolhido deve ser único.'; |
| | | $wb["database_name_error_regex"] = 'Nome do banco inválido. O nome do banco só pode conter estes caracteres: a-z, A-Z, 0-9 e o underscore. Tamanho: 2 - 64 caracteres.'; |
| | | $wb["database_user_error_empty"] = 'O nome do usuário está em branco.'; |
| | | $wb["database_user_error_unique"] = 'Já existe um banco de dados com este nome no servidor. O nome escolhido deve ser único.'; |
| | | $wb["database_user_error_regex"] = 'Nome do banco inválido. O nome do banco só pode conter estes caracteres: a-z, A-Z, 0-9 e o underscore. Tamanho: 2 - 64 caracteres.'; |
| | | $wb["limit_database_txt"] = 'O limite máximo de bancos de dados foi atingido.'; |
| | | $wb["database_name_change_txt"] = 'O nome do banco não pode ser modificado'; |
| | | $wb["database_charset_change_txt"] = 'O charset do banco não pode ser mudado'; |
| | | ?> |
| | | |
New file |
| | |
| | | <?php |
| | | $wb["list_head_txt"] = 'Banco de Dados'; |
| | | $wb["active_txt"] = 'Ativo'; |
| | | $wb["remote_access_txt"] = 'Acesso Remoto'; |
| | | $wb["server_id_txt"] = 'Servidor'; |
| | | $wb["database_name_txt"] = 'Nome do banco'; |
| | | $wb["add_new_record_txt"] = 'Adcionar um novo banco'; |
| | | ?> |
New file |
| | |
| | | <?php |
| | | $wb["uid_txt"] = 'UID'; |
| | | $wb["gid_txt"] = 'GID'; |
| | | $wb["dir_txt"] = 'Diretório'; |
| | | $wb["quota_files_txt"] = 'Quota de Arquivo'; |
| | | $wb["quota_files_unity_txt"] = 'Arquivos'; |
| | | $wb["ul_ratio_txt"] = 'Taxa de Upload'; |
| | | $wb["dl_ratio_txt"] = 'Taxa de Download'; |
| | | $wb["ul_bandwidth_txt"] = 'Banda de Upload'; |
| | | $wb["dl_bandwidth_txt"] = 'Banda de Download'; |
| | | $wb["server_id_txt"] = 'Servidor'; |
| | | $wb["parent_domain_id_txt"] = 'Website'; |
| | | $wb["username_txt"] = 'Usuário'; |
| | | $wb["password_txt"] = 'Senha'; |
| | | $wb["password_strength_txt"] = 'Tamanho da senha'; |
| | | $wb["quota_size_txt"] = 'Quota de Disco'; |
| | | $wb["active_txt"] = 'Ativo'; |
| | | $wb["limit_ftp_user_txt"] = 'O número máximo de usuários de FTP para sua conta foi atingido.'; |
| | | $wb["username_error_empty"] = 'Nome de usuário em branco.'; |
| | | $wb["username_error_unique"] = 'O nome de usuário deve ser único.'; |
| | | $wb["username_error_regex"] = 'The username contains charachters that are not allowed.'; |
| | | $wb["quota_size_error_empty"] = 'Quota em branco.'; |
| | | $wb["uid_error_empty"] = 'UID em branco.'; |
| | | $wb["uid_error_empty"] = 'GID em branco.'; |
| | | $wb["directory_error_empty"] = 'Diretório vazio.'; |
| | | ?> |
| | | |
New file |
| | |
| | | <?php |
| | | $wb["list_head_txt"] = 'Usuário-FTP'; |
| | | $wb["active_txt"] = 'Ativo'; |
| | | $wb["server_id_txt"] = 'Servidor'; |
| | | $wb["parent_domain_id_txt"] = 'Site'; |
| | | $wb["username_txt"] = 'Usuário'; |
| | | $wb["add_new_record_txt"] = 'Adcionar um novo Usuário FTP'; |
| | | ?> |
New file |
| | |
| | | <?php |
| | | $wb["uid_txt"] = 'Nome do usuário'; |
| | | $wb["gid_txt"] = 'Groupo'; |
| | | $wb["shell_txt"] = 'Shell'; |
| | | $wb["dir_txt"] = 'Diretório'; |
| | | $wb["server_id_txt"] = 'Servidor'; |
| | | $wb["parent_domain_id_txt"] = 'Site'; |
| | | $wb["username_txt"] = 'Nome do usuário'; |
| | | $wb["password_txt"] = 'Senha'; |
| | | $wb["password_strength_txt"] = 'Dificuldade da senha'; |
| | | $wb["chroot_txt"] = 'Chroot Shell'; |
| | | $wb["quota_size_txt"] = 'Quota'; |
| | | $wb["active_txt"] = 'Ativo'; |
| | | $wb["username_error_empty"] = 'Nome de usuário em branco.'; |
| | | $wb["username_error_unique"] = 'O nome de usuário deve ser único.'; |
| | | $wb["username_error_regex"] = 'The username contains charachters that are not allowed.'; |
| | | $wb["quota_size_error_empty"] = 'Quota em branco.'; |
| | | $wb["uid_error_empty"] = 'UID em branco.'; |
| | | $wb["uid_error_empty"] = 'GID em branco.'; |
| | | $wb["directory_error_empty"] = 'Diretório vazio.'; |
| | | $wb["limit_shell_user_txt"] = 'O número máximo de usuários shell para sua conta foi atingido.'; |
| | | ?> |
| | | |
New file |
| | |
| | | <?php |
| | | $wb["list_head_txt"] = 'Usuário de Shell'; |
| | | $wb["active_txt"] = 'Ativo'; |
| | | $wb["server_id_txt"] = 'Servidor'; |
| | | $wb["parent_domain_id_txt"] = 'Site'; |
| | | $wb["username_txt"] = 'Usuário'; |
| | | $wb["add_new_record_txt"] = 'Adcionar novo usuário de Shell'; |
| | | ?> |
New file |
| | |
| | | <?php |
| | | $wb["list_head_txt"] = 'Domínio Alias'; |
| | | $wb["active_txt"] = 'Ativo'; |
| | | $wb["server_id_txt"] = 'Servidor'; |
| | | $wb["parent_domain_id_txt"] = 'Website'; |
| | | $wb["domain_txt"] = 'Domínio Alias'; |
| | | $wb["add_new_record_txt"] = 'Adcionar novo domínio alias'; |
| | | $wb["domain_error_empty"] = 'Domínio em branco.'; |
| | | $wb["domain_error_unique"] = 'O domínio deve ser único.'; |
| | | $wb["domain_error_regex"] = 'Nome de domínio inválido.'; |
| | | ?> |
New file |
| | |
| | | <?php |
| | | $wb["ssl_state_txt"] = 'Estado'; |
| | | $wb["ssl_locality_txt"] = 'Localização'; |
| | | $wb["ssl_organisation_txt"] = 'Empresa'; |
| | | $wb["ssl_organisation_unit_txt"] = 'Departamento'; |
| | | $wb["ssl_country_txt"] = 'Pais'; |
| | | $wb["ssl_request_txt"] = 'Requisição SSL'; |
| | | $wb["ssl_cert_txt"] = 'Certificado SSL'; |
| | | $wb["ssl_bundle_txt"] = 'SSL Bundle'; |
| | | $wb["ssl_action_txt"] = 'SSL Action'; |
| | | $wb["server_id_txt"] = 'Servidor'; |
| | | $wb["domain_txt"] = 'Domínio'; |
| | | $wb["type_txt"] = 'Tipo'; |
| | | $wb["parent_domain_id_txt"] = 'Site Parente'; |
| | | $wb["redirect_type_txt"] = 'Tipo Redirecionamento'; |
| | | $wb["redirect_path_txt"] = 'Caminho de redirecionamento'; |
| | | $wb["active_txt"] = 'Ativo'; |
| | | $wb["document_root_txt"] = 'Documentroot'; |
| | | $wb["system_user_txt"] = 'Usuário Linux'; |
| | | $wb["system_group_txt"] = 'Groupo Linux'; |
| | | $wb["ip_address_txt"] = 'Endereço-IP'; |
| | | $wb["vhost_type_txt"] = 'Tipo de VHost'; |
| | | $wb["hd_quota_txt"] = 'Quota de Disco'; |
| | | $wb["traffic_quota_txt"] = 'Quota de Tráfego'; |
| | | $wb["cgi_txt"] = 'CGI'; |
| | | $wb["ssi_txt"] = 'SSI'; |
| | | $wb["errordocs_txt"] = 'Suas Páginas de Erro'; |
| | | $wb["subdomain_txt"] = 'Auto-Subdomínio'; |
| | | $wb["ssl_txt"] = 'SSL'; |
| | | $wb["suexec_txt"] = 'SuEXEC'; |
| | | $wb["php_txt"] = 'PHP'; |
| | | $wb["client_txt"] = 'Cliente'; |
| | | $wb["limit_web_domain_txt"] = 'O número máximo de domínios web para sua conta foi atingido.'; |
| | | $wb["limit_web_aliasdomain_txt"] = 'O número máximo de aliases domínio para sua conta foi atingido.'; |
| | | $wb["limit_web_subdomain_txt"] = 'O número máximo de sub-domínios para sua conta foi atingido.'; |
| | | $wb["apache_directives_txt"] = 'Diretivas do Apache'; |
| | | $wb["domain_error_empty"] = 'Domínio em branco.'; |
| | | $wb["domain_error_unique"] = 'Já existe site, alias ou sub-domínio com este nome'; |
| | | $wb["domain_error_regex"] = 'Nome de domínio inválido.'; |
| | | $wb["hd_quota_error_empty"] = 'Quota de disco está em branco.'; |
| | | $wb["traffic_quota_error_empty"] = 'Quota de tráfego está em branco.'; |
| | | $wb['error_ssl_state_empty'] = 'Estado do SSL está em branco.'; |
| | | $wb['error_ssl_locality_empty'] = 'Localização do SSL está em branco.'; |
| | | $wb['error_ssl_organisation_empty'] = 'Empresa do SSL está em branco.'; |
| | | $wb['error_ssl_organisation_unit_empty'] = 'Departamento do SSL está em branco.'; |
| | | $wb['error_ssl_country_empty'] = 'Pais do SSL em branco.'; |
| | | $wb["client_group_id_txt"] = 'Cliente'; |
| | | $wb["stats_password_txt"] = 'Senha do diretório de estatísticas'; |
| | | ?> |
| | | |
New file |
| | |
| | | <?php |
| | | $wb["list_head_txt"] = 'Websites'; |
| | | $wb["domain_id_txt"] = 'ID'; |
| | | $wb["active_txt"] = 'Ativo'; |
| | | $wb["server_id_txt"] = 'Servidor'; |
| | | $wb["domain_txt"] = 'Domínio'; |
| | | $wb["add_new_record_txt"] = 'Adcionar um novo site'; |
| | | ?> |
New file |
| | |
| | | <?php |
| | | $wb["list_head_txt"] = 'Web traffic'; |
| | | $wb["domain_txt"] = 'Domain'; |
| | | $wb["this_month_txt"] = 'This month'; |
| | | $wb["last_month_txt"] = 'Last month'; |
| | | $wb["this_year_txt"] = 'This year'; |
| | | $wb["last_year_txt"] = 'Last year'; |
| | | ?> |
New file |
| | |
| | | <?php |
| | | $wb["ssl_state_txt"] = 'Estado'; |
| | | $wb["ssl_locality_txt"] = 'Localidade'; |
| | | $wb["ssl_organisation_txt"] = 'Empresa'; |
| | | $wb["ssl_organisation_unit_txt"] = 'Departamento'; |
| | | $wb["ssl_country_txt"] = 'Pais'; |
| | | $wb["ssl_request_txt"] = 'Requisição SSL'; |
| | | $wb["ssl_cert_txt"] = 'Certificado SSL'; |
| | | $wb["ssl_bundle_txt"] = 'Pacote SSL'; |
| | | $wb["ssl_action_txt"] = 'Ação SSL'; |
| | | $wb["server_id_txt"] = 'Servidor'; |
| | | $wb["domain_txt"] = 'Domínio'; |
| | | $wb["type_txt"] = 'Tipo'; |
| | | $wb["parent_domain_id_txt"] = 'Site Parente'; |
| | | $wb["redirect_type_txt"] = 'Tipo do Redirecionamento'; |
| | | $wb["redirect_path_txt"] = 'Caminho do Redirecionamento'; |
| | | $wb["active_txt"] = 'Ativo'; |
| | | $wb["document_root_txt"] = 'Documentroot'; |
| | | $wb["system_user_txt"] = 'Usuário no Linux'; |
| | | $wb["system_group_txt"] = 'Grupo no Linux'; |
| | | $wb["ip_address_txt"] = 'Endereço-IP'; |
| | | $wb["vhost_type_txt"] = 'Tipo de VHost'; |
| | | $wb["hd_quota_txt"] = 'Quota de Disco'; |
| | | $wb["traffic_quota_txt"] = 'Quota de Tráfico'; |
| | | $wb["cgi_txt"] = 'CGI'; |
| | | $wb["ssi_txt"] = 'SSI'; |
| | | $wb["ssl_txt"] = 'SSL'; |
| | | $wb["suexec_txt"] = 'SuEXEC'; |
| | | $wb["php_txt"] = 'PHP'; |
| | | $wb["client_txt"] = 'Cliente'; |
| | | $wb["limit_web_domain_txt"] = 'O número máximo de domínios web para esta conta foi atingido.'; |
| | | $wb["limit_web_aliasdomain_txt"] = 'O número máximo de aliases para esta conta foi atingido.'; |
| | | $wb["limit_web_subdomain_txt"] = 'O número máximo de sub-domínios para esta conta foi atingido.'; |
| | | $wb["apache_directives_txt"] = 'Diretivas apache'; |
| | | $wb["domain_error_empty"] = 'Domínio em branco.'; |
| | | $wb["domain_error_unique"] = 'Já existe alias ou sub-domínio com este nome.'; |
| | | $wb["domain_error_regex"] = 'Nome de domínio inválido.'; |
| | | $wb["host_txt"] = 'Host'; |
| | | ?> |
New file |
| | |
| | | <?php |
| | | $wb["list_head_txt"] = 'Sub-domínios'; |
| | | $wb["active_txt"] = 'Ativo'; |
| | | $wb["server_id_txt"] = 'Servidor'; |
| | | $wb["parent_domain_id_txt"] = 'Website'; |
| | | $wb["domain_txt"] = 'Sub=domínio'; |
| | | $wb["add_new_record_txt"] = 'Adcionar um novo sub-domínio'; |
| | | ?> |
New file |
| | |
| | | <?php |
| | | $wb['server_id_txt'] = 'Server'; |
| | | $wb['parent_domain_id_txt'] = 'Zugeordnete Website'; |
| | | $wb['active_txt'] = 'Aktiv'; |
| | | $wb['client_txt'] = 'Kunde'; |
| | | $wb['run_min_txt'] = 'Minuten'; |
| | | $wb['run_hour_txt'] = 'Stunden'; |
| | | $wb['run_mday_txt'] = 'Tage des Monats'; |
| | | $wb['run_month_txt'] = 'Monate'; |
| | | $wb['run_wday_txt'] = 'Tage der Woche'; |
| | | $wb['command_txt'] = 'Auszuführender Befehl (Befehle werden mit sh ausgeführt, urls mit wget)'; |
| | | $wb['limit_cron_txt'] = 'Die maximale Anzahl von erlaubten Cron Jobs ist bereits erreicht.'; |
| | | $wb['limit_cron_frequency_txt'] = 'Die Ausführungshäufigkeit übersteigt Ihr erlaubtes Limit.'; |
| | | $wb['run_min_error_format'] = 'Das Format für Minuten ist nicht korrekt.'; |
| | | $wb['run_hour_error_format'] = 'Das Format für Stunden ist nicht korrekt.'; |
| | | $wb['run_mday_error_format'] = 'Das Format für Tage des Monats ist nicht korrekt.'; |
| | | $wb['run_month_error_format'] = 'Das Format für Monate ist nicht korrekt.'; |
| | | $wb['run_wday_error_format'] = 'Das Format für Wochentage ist nicht korrekt.'; |
| | | $wb['command_error_format'] = 'Das Format für den Befehl ist nicht korrekt. Beachte, dass bei einem URL Aufruf nur http und https erlaubt ist.'; |
| | | $wb['unknown_fieldtype_error'] = 'Es wurde ein unbekanntes Feld verwendet.'; |
| | | ?> |
New file |
| | |
| | | <?php |
| | | $wb['list_head_txt'] = 'Cron Jobs'; |
| | | $wb['active_txt'] = 'Activ'; |
| | | $wb['server_id_txt'] = 'Server'; |
| | | $wb['run_min_txt'] = 'Minute'; |
| | | $wb['run_hour_txt'] = 'Stunde'; |
| | | $wb['run_mday_txt'] = 'Tag des Monats'; |
| | | $wb['run_month_txt'] = 'Monat'; |
| | | $wb['run_wday_txt'] = 'Tag der Woche'; |
| | | $wb['command_txt'] = 'Befehl'; |
| | | $wb['add_new_cron_txt'] = 'Neuen Cron Job anlegen'; |
| | | ?> |
| | |
| | | $wb['database_password_txt'] = 'Datenbank Passwort'; |
| | | $wb['database_charset_txt'] = 'Datenbank Zeichensatz'; |
| | | $wb['remote_access_txt'] = 'Remotezugang'; |
| | | $wb['remote_ips_txt'] = 'Remotezugang-IPs (mit Komma trennen, keine Eingabe für <i>alle</i>)'; |
| | | $wb['database_remote_error_ips'] = 'Mindestens eine der eingegebenen IP Adressen ist ungültig.'; |
| | | $wb['client_txt'] = 'Kunde'; |
| | | $wb['active_txt'] = 'Aktiv'; |
| | | $wb['database_name_error_empty'] = 'Datenbankname ist leer.'; |
| | |
| | | $wb['uid_error_empty'] = 'GID ist leer.'; |
| | | $wb['directory_error_empty'] = 'Verzeichniss ist leer.'; |
| | | $wb['password_strength_txt'] = 'Passwortkomplexität'; |
| | | $wb['directory_error_notinweb'] = 'Das Verzeichnis befindet sich nicht innerhalb des Verzeichnisses der Website.'; |
| | | ?> |
New file |
| | |
| | | <?php |
| | | $wb['list_head_txt'] = 'Web Datenverkehr'; |
| | | $wb['domain_txt'] = 'Domain'; |
| | | $wb['this_month_txt'] = 'Diesen Monat'; |
| | | $wb['last_month_txt'] = 'Letzten Monat'; |
| | | $wb['this_year_txt'] = 'Dieses Jahr'; |
| | | $wb['last_year_txt'] = 'Letztes Jahr'; |
| | | ?> |
New file |
| | |
| | | <?php |
| | | $wb["server_id_txt"] = 'Server'; |
| | | $wb['parent_domain_id_txt'] = 'Parent website'; |
| | | $wb['active_txt'] = 'Active'; |
| | | $wb['client_txt'] = 'Client'; |
| | | $wb['run_min_txt'] = 'Minutes'; |
| | | $wb['run_hour_txt'] = 'Hours'; |
| | | $wb['run_mday_txt'] = 'Days of month'; |
| | | $wb['run_month_txt'] = 'Months'; |
| | | $wb['run_wday_txt'] = 'Days of week'; |
| | | $wb['command_txt'] = 'Command to run (commands are executed via sh, urls via wget)'; |
| | | $wb['limit_cron_txt'] = 'The maximum number of allowed cron jobs was reached.'; |
| | | $wb['limit_cron_frequency_txt'] = 'The cron job frequency exceeds the allowed limit.'; |
| | | $wb['run_min_error_format'] = 'Invalid format for minutes.'; |
| | | $wb['run_hour_error_format'] = 'Invalid format for hours.'; |
| | | $wb['run_mday_error_format'] = 'Invalid format for days of month.'; |
| | | $wb['run_month_error_format'] = 'Invalid format for months.'; |
| | | $wb['run_wday_error_format'] = 'Invalid format for days of the week.'; |
| | | $wb['command_error_format'] = 'Invalid command format. Please note that in case of an url call only http/https is allowed.'; |
| | | $wb['unknown_fieldtype_error'] = 'An unknown field type has been used.'; |
| | | ?> |
New file |
| | |
| | | <?php |
| | | $wb["list_head_txt"] = 'Cron Jobs'; |
| | | $wb["active_txt"] = 'Active'; |
| | | $wb["server_id_txt"] = 'Server'; |
| | | $wb["run_min_txt"] = 'Minute'; |
| | | $wb["run_hour_txt"] = 'Hour'; |
| | | $wb["run_mday_txt"] = 'Day of month'; |
| | | $wb["run_month_txt"] = 'Month'; |
| | | $wb["run_wday_txt"] = 'Day of week'; |
| | | $wb["command_txt"] = 'Command'; |
| | | $wb["add_new_cron_txt"] = 'Add new Cron job'; |
| | | ?> |
| | |
| | | $wb["password_strength_txt"] = 'Password strength'; |
| | | $wb["database_charset_txt"] = 'Database charset'; |
| | | $wb["remote_access_txt"] = 'Remote Access'; |
| | | $wb["remote_ips_txt"] = 'Remote Access IPs (separate by , and leave blank for <i>any</i>)'; |
| | | $wb["database_remote_error_ips"] = 'At least one of the entered ip addresses is invalid.'; |
| | | $wb["client_txt"] = 'Client'; |
| | | $wb["active_txt"] = 'Active'; |
| | | $wb["database_name_error_empty"] = 'Database name is empty.'; |
| | |
| | | $wb["uid_error_empty"] = 'UID empty.'; |
| | | $wb["uid_error_empty"] = 'GID empty.'; |
| | | $wb["directory_error_empty"] = 'Directory empty.'; |
| | | $wb['directory_error_notinweb'] = 'Directory not inside of web root directory.'; |
| | | $wb["parent_domain_id_error_empty"] = 'No website selected.'; |
| | | ?> |
| | |
| | | $wb["uid_error_empty"] = 'GID empty.'; |
| | | $wb["directory_error_empty"] = 'Directory empty.'; |
| | | $wb["limit_shell_user_txt"] = 'The max number of shell users is reached.'; |
| | | $wb["parent_domain_id_error_empty"] = 'No website selected.'; |
| | | ?> |
New file |
| | |
| | | <?php |
| | | $wb["list_head_txt"] = 'Web traffic'; |
| | | $wb["domain_txt"] = 'Domain'; |
| | | $wb["this_month_txt"] = 'This month'; |
| | | $wb["last_month_txt"] = 'Last month'; |
| | | $wb["this_year_txt"] = 'This year'; |
| | | $wb["last_year_txt"] = 'Last year'; |
| | | ?> |
New file |
| | |
| | | <?php |
| | | $wb["server_id_txt"] = 'Server'; |
| | | $wb['parent_domain_id_txt'] = 'Parent website'; |
| | | $wb['active_txt'] = 'Active'; |
| | | $wb['client_txt'] = 'Client'; |
| | | $wb['run_min_txt'] = 'Minutes'; |
| | | $wb['run_hour_txt'] = 'Hours'; |
| | | $wb['run_mday_txt'] = 'Days of month'; |
| | | $wb['run_month_txt'] = 'Months'; |
| | | $wb['run_wday_txt'] = 'Days of week'; |
| | | $wb['command_txt'] = 'Command to run (commands are executed via sh, urls via wget)'; |
| | | $wb['limit_cron_txt'] = 'The maximum number of allowed cron jobs was reached.'; |
| | | $wb['limit_cron_frequency_txt'] = 'The cron job frequency exceeds the allowed limit.'; |
| | | $wb['run_min_error_format'] = 'Invalid format for minutes.'; |
| | | $wb['run_hour_error_format'] = 'Invalid format for hours.'; |
| | | $wb['run_mday_error_format'] = 'Invalid format for days of month.'; |
| | | $wb['run_month_error_format'] = 'Invalid format for months.'; |
| | | $wb['run_wday_error_format'] = 'Invalid format for days of the week.'; |
| | | $wb['command_error_format'] = 'Invalid command format. Please note that in case of an url call only http/https is allowed.'; |
| | | $wb['unknown_fieldtype_error'] = 'An unknown field type has been used.'; |
| | | ?> |
New file |
| | |
| | | <?php |
| | | $wb["list_head_txt"] = 'Cron Jobs'; |
| | | $wb["active_txt"] = 'Active'; |
| | | $wb["server_id_txt"] = 'Server'; |
| | | $wb["run_min_txt"] = 'Minute'; |
| | | $wb["run_hour_txt"] = 'Hour'; |
| | | $wb["run_mday_txt"] = 'Day of month'; |
| | | $wb["run_month_txt"] = 'Month'; |
| | | $wb["run_wday_txt"] = 'Day of week'; |
| | | $wb["command_txt"] = 'Command'; |
| | | $wb["add_new_cron_txt"] = 'Add new Cron job'; |
| | | ?> |
| | |
| | | $wb['limit_database_txt'] = 'Se ha alcanzado el número máximo de bases de datos'; |
| | | $wb['database_name_change_txt'] = 'El nombre de la base de datos no se puede cambiar'; |
| | | $wb['database_charset_change_txt'] = 'La tabla de caracteres de la base de datos no se puede cambiar'; |
| | | $wb['remote_ips_txt'] = 'Remote Access IPs (separate by , and leave blank for <i>any</i>)'; |
| | | $wb['database_remote_error_ips'] = 'At least one of the entered ip addresses is invalid.'; |
| | | ?> |
| | |
| | | $wb['uid_error_empty'] = 'GID vacío'; |
| | | $wb['directory_error_empty'] = 'Directorio vacío'; |
| | | $wb['quota_files_unity_txt'] = 'Files'; |
| | | $wb['directory_error_notinweb'] = 'Directory not inside of web root directory.'; |
| | | ?> |
New file |
| | |
| | | <?php |
| | | $wb['list_head_txt'] = 'Tráfico de xxxx'; |
| | | $wb['domain_txt'] = 'xxxx'; |
| | | $wb['this_month_txt'] = 'Este mes'; |
| | | $wb['last_month_txt'] = 'Último mes'; |
| | | $wb['this_year_txt'] = 'Este año'; |
| | | $wb['last_year_txt'] = 'Último año'; |
| | | ?> |
New file |
| | |
| | | <?php |
| | | $wb["server_id_txt"] = 'Server'; |
| | | $wb['parent_domain_id_txt'] = 'Parent website'; |
| | | $wb['active_txt'] = 'Active'; |
| | | $wb['client_txt'] = 'Client'; |
| | | $wb['run_min_txt'] = 'Minutes'; |
| | | $wb['run_hour_txt'] = 'Hours'; |
| | | $wb['run_mday_txt'] = 'Days of month'; |
| | | $wb['run_month_txt'] = 'Months'; |
| | | $wb['run_wday_txt'] = 'Days of week'; |
| | | $wb['command_txt'] = 'Command to run (commands are executed via sh, urls via wget)'; |
| | | $wb['limit_cron_txt'] = 'The maximum number of allowed cron jobs was reached.'; |
| | | $wb['limit_cron_frequency_txt'] = 'The cron job frequency exceeds the allowed limit.'; |
| | | $wb['run_min_error_format'] = 'Invalid format for minutes.'; |
| | | $wb['run_hour_error_format'] = 'Invalid format for hours.'; |
| | | $wb['run_mday_error_format'] = 'Invalid format for days of month.'; |
| | | $wb['run_month_error_format'] = 'Invalid format for months.'; |
| | | $wb['run_wday_error_format'] = 'Invalid format for days of the week.'; |
| | | $wb['command_error_format'] = 'Invalid command format. Please note that in case of an url call only http/https is allowed.'; |
| | | $wb['unknown_fieldtype_error'] = 'An unknown field type has been used.'; |
| | | ?> |
New file |
| | |
| | | <?php |
| | | $wb["list_head_txt"] = 'Cron Jobs'; |
| | | $wb["active_txt"] = 'Active'; |
| | | $wb["server_id_txt"] = 'Server'; |
| | | $wb["run_min_txt"] = 'Minute'; |
| | | $wb["run_hour_txt"] = 'Hour'; |
| | | $wb["run_mday_txt"] = 'Day of month'; |
| | | $wb["run_month_txt"] = 'Month'; |
| | | $wb["run_wday_txt"] = 'Day of week'; |
| | | $wb["command_txt"] = 'Command'; |
| | | $wb["add_new_cron_txt"] = 'Add new Cron job'; |
| | | ?> |
| | |
| | | $wb['password_strength_txt'] = 'Salasanan vahvuus'; |
| | | $wb['database_charset_txt'] = 'Tietokannan merkistö'; |
| | | $wb['database_charset_change_txt'] = 'Tietokannan merkistöä ei voi vaihtaa'; |
| | | $wb['remote_ips_txt'] = 'Remote Access IPs (separate by , and leave blank for <i>any</i>)'; |
| | | $wb['database_remote_error_ips'] = 'At least one of the entered ip addresses is invalid.'; |
| | | ?> |
| | |
| | | $wb['directory_error_empty'] = 'Kotihakemisto-kenttä on tyhjä.'; |
| | | $wb['password_strength_txt'] = 'Salasanan vahvuus'; |
| | | $wb['quota_files_unity_txt'] = 'Files'; |
| | | $wb['directory_error_notinweb'] = 'Directory not inside of web root directory.'; |
| | | ?> |
New file |
| | |
| | | <?php |
| | | $wb['list_head_txt'] = 'Sähköpostiliikenne'; |
| | | $wb['domain_txt'] = 'Sähköpostiosoite'; |
| | | $wb['this_month_txt'] = 'Tässä kuussa'; |
| | | $wb['last_month_txt'] = 'Viime kuussa'; |
| | | $wb['this_year_txt'] = 'Tänä vuonna'; |
| | | $wb['last_year_txt'] = 'Viime vuonna'; |
| | | ?> |
New file |
| | |
| | | <?php |
| | | $wb['server_id_txt'] = 'Server'; |
| | | $wb['parent_domain_id_txt'] = 'Parent website'; |
| | | $wb['active_txt'] = 'Active'; |
| | | $wb['client_txt'] = 'Client'; |
| | | $wb['run_min_txt'] = 'Minutes'; |
| | | $wb['run_hour_txt'] = 'Hours'; |
| | | $wb['run_mday_txt'] = 'Days of month'; |
| | | $wb['run_month_txt'] = 'Months'; |
| | | $wb['run_wday_txt'] = 'Days of week'; |
| | | $wb['command_txt'] = 'Command to run (commands are executed via sh, urls via wget)'; |
| | | $wb['limit_cron_txt'] = 'The maximum number of allowed cron jobs was reached.'; |
| | | $wb['limit_cron_frequency_txt'] = 'The cron job frequency exceeds the allowed limit.'; |
| | | $wb['run_min_error_format'] = 'Invalid format for minutes.'; |
| | | $wb['run_hour_error_format'] = 'Invalid format for hours.'; |
| | | $wb['run_mday_error_format'] = 'Invalid format for days of month.'; |
| | | $wb['run_month_error_format'] = 'Invalid format for months.'; |
| | | $wb['run_wday_error_format'] = 'Invalid format for days of the week.'; |
| | | $wb['command_error_format'] = 'Invalid command format. Please note that in case of an url call only http/https is allowed.'; |
| | | $wb['unknown_fieldtype_error'] = 'An unknown field type has been used.'; |
| | | ?> |
New file |
| | |
| | | <?php |
| | | $wb['list_head_txt'] = 'Cron Jobs'; |
| | | $wb['active_txt'] = 'Active'; |
| | | $wb['server_id_txt'] = 'Server'; |
| | | $wb['run_min_txt'] = 'Minute'; |
| | | $wb['run_hour_txt'] = 'Hour'; |
| | | $wb['run_mday_txt'] = 'Day of month'; |
| | | $wb['run_month_txt'] = 'Month'; |
| | | $wb['run_wday_txt'] = 'Day of week'; |
| | | $wb['command_txt'] = 'Command'; |
| | | $wb['add_new_cron_txt'] = 'Add new Cron job'; |
| | | ?> |
| | |
| | | $wb['limit_database_txt'] = 'The max. number of databases is reached.'; |
| | | $wb['database_name_change_txt'] = 'The database name can not be changed'; |
| | | $wb['database_charset_change_txt'] = 'The database charset can not be changed'; |
| | | $wb['remote_ips_txt'] = 'Remote Access IPs (separate by , and leave blank for <i>any</i>)'; |
| | | $wb['database_remote_error_ips'] = 'At least one of the entered ip addresses is invalid.'; |
| | | ?> |
| | |
| | | $wb['uid_error_empty'] = 'GID empty.'; |
| | | $wb['directory_error_empty'] = 'Directory empty.'; |
| | | $wb['quota_files_unity_txt'] = 'Files'; |
| | | $wb['directory_error_notinweb'] = 'Directory not inside of web root directory.'; |
| | | ?> |
New file |
| | |
| | | <?php |
| | | $wb['list_head_txt'] = 'Web traffic'; |
| | | $wb['domain_txt'] = 'Domain'; |
| | | $wb['this_month_txt'] = 'This month'; |
| | | $wb['last_month_txt'] = 'Last month'; |
| | | $wb['this_year_txt'] = 'This year'; |
| | | $wb['last_year_txt'] = 'Last year'; |
| | | ?> |
New file |
| | |
| | | <?php |
| | | $wb["server_id_txt"] = 'Server'; |
| | | $wb['parent_domain_id_txt'] = 'Parent website'; |
| | | $wb['active_txt'] = 'Active'; |
| | | $wb['client_txt'] = 'Client'; |
| | | $wb['run_min_txt'] = 'Minutes'; |
| | | $wb['run_hour_txt'] = 'Hours'; |
| | | $wb['run_mday_txt'] = 'Days of month'; |
| | | $wb['run_month_txt'] = 'Months'; |
| | | $wb['run_wday_txt'] = 'Days of week'; |
| | | $wb['command_txt'] = 'Command to run (commands are executed via sh, urls via wget)'; |
| | | $wb['limit_cron_txt'] = 'The maximum number of allowed cron jobs was reached.'; |
| | | $wb['limit_cron_frequency_txt'] = 'The cron job frequency exceeds the allowed limit.'; |
| | | $wb['run_min_error_format'] = 'Invalid format for minutes.'; |
| | | $wb['run_hour_error_format'] = 'Invalid format for hours.'; |
| | | $wb['run_mday_error_format'] = 'Invalid format for days of month.'; |
| | | $wb['run_month_error_format'] = 'Invalid format for months.'; |
| | | $wb['run_wday_error_format'] = 'Invalid format for days of the week.'; |
| | | $wb['command_error_format'] = 'Invalid command format. Please note that in case of an url call only http/https is allowed.'; |
| | | $wb['unknown_fieldtype_error'] = 'An unknown field type has been used.'; |
| | | ?> |
New file |
| | |
| | | <?php |
| | | $wb["list_head_txt"] = 'Cron Jobs'; |
| | | $wb["active_txt"] = 'Active'; |
| | | $wb["server_id_txt"] = 'Server'; |
| | | $wb["run_min_txt"] = 'Minute'; |
| | | $wb["run_hour_txt"] = 'Hour'; |
| | | $wb["run_mday_txt"] = 'Day of month'; |
| | | $wb["run_month_txt"] = 'Month'; |
| | | $wb["run_wday_txt"] = 'Day of week'; |
| | | $wb["command_txt"] = 'Command'; |
| | | $wb["add_new_cron_txt"] = 'Add new Cron job'; |
| | | ?> |
| | |
| | | $wb['limit_database_txt'] = 'The max. number of databases is reached.'; |
| | | $wb['database_name_change_txt'] = 'The database name can not be changed'; |
| | | $wb['database_charset_change_txt'] = 'The database charset can not be changed'; |
| | | $wb['remote_ips_txt'] = 'Remote Access IPs (separate by , and leave blank for <i>any</i>)'; |
| | | $wb['database_remote_error_ips'] = 'At least one of the entered ip addresses is invalid.'; |
| | | ?> |
| | |
| | | $wb['uid_error_empty'] = 'GID empty.'; |
| | | $wb['directory_error_empty'] = 'Directory empty.'; |
| | | $wb['quota_files_unity_txt'] = 'Files'; |
| | | $wb['directory_error_notinweb'] = 'Directory not inside of web root directory.'; |
| | | ?> |
New file |
| | |
| | | <?php |
| | | $wb['list_head_txt'] = 'Web traffic'; |
| | | $wb['domain_txt'] = 'Domain'; |
| | | $wb['this_month_txt'] = 'This month'; |
| | | $wb['last_month_txt'] = 'Last month'; |
| | | $wb['this_year_txt'] = 'This year'; |
| | | $wb['last_year_txt'] = 'Last year'; |
| | | ?> |
New file |
| | |
| | | <?php |
| | | $wb["server_id_txt"] = 'Server'; |
| | | $wb['parent_domain_id_txt'] = 'Parent website'; |
| | | $wb['active_txt'] = 'Active'; |
| | | $wb['client_txt'] = 'Client'; |
| | | $wb['run_min_txt'] = 'Minutes'; |
| | | $wb['run_hour_txt'] = 'Hours'; |
| | | $wb['run_mday_txt'] = 'Days of month'; |
| | | $wb['run_month_txt'] = 'Months'; |
| | | $wb['run_wday_txt'] = 'Days of week'; |
| | | $wb['command_txt'] = 'Command to run (commands are executed via sh, urls via wget)'; |
| | | $wb['limit_cron_txt'] = 'The maximum number of allowed cron jobs was reached.'; |
| | | $wb['limit_cron_frequency_txt'] = 'The cron job frequency exceeds the allowed limit.'; |
| | | $wb['run_min_error_format'] = 'Invalid format for minutes.'; |
| | | $wb['run_hour_error_format'] = 'Invalid format for hours.'; |
| | | $wb['run_mday_error_format'] = 'Invalid format for days of month.'; |
| | | $wb['run_month_error_format'] = 'Invalid format for months.'; |
| | | $wb['run_wday_error_format'] = 'Invalid format for days of the week.'; |
| | | $wb['command_error_format'] = 'Invalid command format. Please note that in case of an url call only http/https is allowed.'; |
| | | $wb['unknown_fieldtype_error'] = 'An unknown field type has been used.'; |
| | | ?> |
New file |
| | |
| | | <?php |
| | | $wb["list_head_txt"] = 'Cron Jobs'; |
| | | $wb["active_txt"] = 'Active'; |
| | | $wb["server_id_txt"] = 'Server'; |
| | | $wb["run_min_txt"] = 'Minute'; |
| | | $wb["run_hour_txt"] = 'Hour'; |
| | | $wb["run_mday_txt"] = 'Day of month'; |
| | | $wb["run_month_txt"] = 'Month'; |
| | | $wb["run_wday_txt"] = 'Day of week'; |
| | | $wb["command_txt"] = 'Command'; |
| | | $wb["add_new_cron_txt"] = 'Add new Cron job'; |
| | | ?> |
| | |
| | | $wb['limit_database_txt'] = 'The max. aantal databases is bereikt.'; |
| | | $wb['database_name_change_txt'] = 'De databasenaam kan niet worden gewijzigd.'; |
| | | $wb['database_charset_change_txt'] = 'The database karakterset kan niet gewijzigd worden.'; |
| | | $wb['remote_ips_txt'] = 'Remote Access IPs (separate by , and leave blank for <i>any</i>)'; |
| | | $wb['database_remote_error_ips'] = 'At least one of the entered ip addresses is invalid.'; |
| | | ?> |
| | |
| | | $wb['uid_error_empty'] = 'GID is leeg.'; |
| | | $wb['directory_error_empty'] = 'Directorie is leeg.'; |
| | | $wb['quota_files_unity_txt'] = 'Files'; |
| | | $wb['directory_error_notinweb'] = 'Directory not inside of web root directory.'; |
| | | ?> |
New file |
| | |
| | | <?php |
| | | $wb['list_head_txt'] = 'Web verkeer'; |
| | | $wb['domain_txt'] = 'Domain'; |
| | | $wb['this_month_txt'] = 'Deze maand'; |
| | | $wb['last_month_txt'] = 'Laatste maand'; |
| | | $wb['this_year_txt'] = 'Dit jaar'; |
| | | $wb['last_year_txt'] = 'Vorig jaar'; |
| | | ?> |
New file |
| | |
| | | <?php |
| | | $wb["server_id_txt"] = 'Server'; |
| | | $wb['parent_domain_id_txt'] = 'Parent website'; |
| | | $wb['active_txt'] = 'Active'; |
| | | $wb['client_txt'] = 'Client'; |
| | | $wb['run_min_txt'] = 'Minutes'; |
| | | $wb['run_hour_txt'] = 'Hours'; |
| | | $wb['run_mday_txt'] = 'Days of month'; |
| | | $wb['run_month_txt'] = 'Months'; |
| | | $wb['run_wday_txt'] = 'Days of week'; |
| | | $wb['command_txt'] = 'Command to run (commands are executed via sh, urls via wget)'; |
| | | $wb['limit_cron_txt'] = 'The maximum number of allowed cron jobs was reached.'; |
| | | $wb['limit_cron_frequency_txt'] = 'The cron job frequency exceeds the allowed limit.'; |
| | | $wb['run_min_error_format'] = 'Invalid format for minutes.'; |
| | | $wb['run_hour_error_format'] = 'Invalid format for hours.'; |
| | | $wb['run_mday_error_format'] = 'Invalid format for days of month.'; |
| | | $wb['run_month_error_format'] = 'Invalid format for months.'; |
| | | $wb['run_wday_error_format'] = 'Invalid format for days of the week.'; |
| | | $wb['command_error_format'] = 'Invalid command format. Please note that in case of an url call only http/https is allowed.'; |
| | | $wb['unknown_fieldtype_error'] = 'An unknown field type has been used.'; |
| | | ?> |
New file |
| | |
| | | <?php |
| | | $wb["list_head_txt"] = 'Cron Jobs'; |
| | | $wb["active_txt"] = 'Active'; |
| | | $wb["server_id_txt"] = 'Server'; |
| | | $wb["run_min_txt"] = 'Minute'; |
| | | $wb["run_hour_txt"] = 'Hour'; |
| | | $wb["run_mday_txt"] = 'Day of month'; |
| | | $wb["run_month_txt"] = 'Month'; |
| | | $wb["run_wday_txt"] = 'Day of week'; |
| | | $wb["command_txt"] = 'Command'; |
| | | $wb["add_new_cron_txt"] = 'Add new Cron job'; |
| | | ?> |
| | |
| | | $wb['database_name_change_txt'] = 'The database name can not be changed'; |
| | | $wb['database_charset_change_txt'] = 'The database charset can not be changed'; |
| | | $wb['password_strength_txt'] = 'Password strength'; |
| | | $wb['remote_ips_txt'] = 'Remote Access IPs (separate by , and leave blank for <i>any</i>)'; |
| | | $wb['database_remote_error_ips'] = 'At least one of the entered ip addresses is invalid.'; |
| | | ?> |
| | |
| | | $wb['directory_error_empty'] = 'Directory empty.'; |
| | | $wb['password_strength_txt'] = 'Password strength'; |
| | | $wb['quota_files_unity_txt'] = 'Files'; |
| | | $wb['directory_error_notinweb'] = 'Directory not inside of web root directory.'; |
| | | ?> |
New file |
| | |
| | | <?php |
| | | $wb['list_head_txt'] = 'Web трафик'; |
| | | $wb['domain_txt'] = 'Domain'; |
| | | $wb['this_month_txt'] = 'Этот месяц'; |
| | | $wb['last_month_txt'] = 'Последний месяц'; |
| | | $wb['this_year_txt'] = 'Этот год'; |
| | | $wb['last_year_txt'] = 'Последний год'; |
| | | ?> |
New file |
| | |
| | | <?php |
| | | $wb["server_id_txt"] = 'Server'; |
| | | $wb['parent_domain_id_txt'] = 'Parent website'; |
| | | $wb['active_txt'] = 'Active'; |
| | | $wb['client_txt'] = 'Client'; |
| | | $wb['run_min_txt'] = 'Minutes'; |
| | | $wb['run_hour_txt'] = 'Hours'; |
| | | $wb['run_mday_txt'] = 'Days of month'; |
| | | $wb['run_month_txt'] = 'Months'; |
| | | $wb['run_wday_txt'] = 'Days of week'; |
| | | $wb['command_txt'] = 'Command to run (commands are executed via sh, urls via wget)'; |
| | | $wb['limit_cron_txt'] = 'The maximum number of allowed cron jobs was reached.'; |
| | | $wb['limit_cron_frequency_txt'] = 'The cron job frequency exceeds the allowed limit.'; |
| | | $wb['run_min_error_format'] = 'Invalid format for minutes.'; |
| | | $wb['run_hour_error_format'] = 'Invalid format for hours.'; |
| | | $wb['run_mday_error_format'] = 'Invalid format for days of month.'; |
| | | $wb['run_month_error_format'] = 'Invalid format for months.'; |
| | | $wb['run_wday_error_format'] = 'Invalid format for days of the week.'; |
| | | $wb['command_error_format'] = 'Invalid command format. Please note that in case of an url call only http/https is allowed.'; |
| | | $wb['unknown_fieldtype_error'] = 'An unknown field type has been used.'; |
| | | ?> |
New file |
| | |
| | | <?php |
| | | $wb["list_head_txt"] = 'Cron Jobs'; |
| | | $wb["active_txt"] = 'Active'; |
| | | $wb["server_id_txt"] = 'Server'; |
| | | $wb["run_min_txt"] = 'Minute'; |
| | | $wb["run_hour_txt"] = 'Hour'; |
| | | $wb["run_mday_txt"] = 'Day of month'; |
| | | $wb["run_month_txt"] = 'Month'; |
| | | $wb["run_wday_txt"] = 'Day of week'; |
| | | $wb["command_txt"] = 'Command'; |
| | | $wb["add_new_cron_txt"] = 'Add new Cron job'; |
| | | ?> |
| | |
| | | $wb['limit_database_txt'] = 'The max. number of databases is reached.'; |
| | | $wb['database_name_change_txt'] = 'The database name can not be changed'; |
| | | $wb['database_charset_change_txt'] = 'The database charset can not be changed'; |
| | | $wb['remote_ips_txt'] = 'Remote Access IPs (separate by , and leave blank for <i>any</i>)'; |
| | | $wb['database_remote_error_ips'] = 'At least one of the entered ip addresses is invalid.'; |
| | | ?> |
| | |
| | | $wb['uid_error_empty'] = 'GID empty.'; |
| | | $wb['directory_error_empty'] = 'Directory empty.'; |
| | | $wb['quota_files_unity_txt'] = 'Files'; |
| | | $wb['directory_error_notinweb'] = 'Directory not inside of web root directory.'; |
| | | ?> |
New file |
| | |
| | | <?php |
| | | $wb['list_head_txt'] = 'Web traffic'; |
| | | $wb['domain_txt'] = 'Domain'; |
| | | $wb['this_month_txt'] = 'This month'; |
| | | $wb['last_month_txt'] = 'Last month'; |
| | | $wb['this_year_txt'] = 'This year'; |
| | | $wb['last_year_txt'] = 'Last year'; |
| | | ?> |
| | |
| | | 'link' => 'sites/web_subdomain_list.php'); |
| | | |
| | | |
| | | $items[] = array( 'title' => "Aliasdomain", |
| | | 'target' => 'content', |
| | | 'link' => 'sites/web_aliasdomain_list.php'); |
| | | $items[] = array( 'title' => "Aliasdomain", |
| | | 'target' => 'content', |
| | | 'link' => 'sites/web_aliasdomain_list.php'); |
| | | |
| | | $module["nav"][] = array( 'title' => 'Websites', |
| | | 'open' => 1, |
| | |
| | | 'open' => 1, |
| | | 'items' => $items); |
| | | |
| | | |
| | | /* |
| | | Cron menu |
| | | */ |
| | | $items = array(); |
| | | |
| | | $items[] = array( 'title' => "Cron Jobs", |
| | | 'target' => 'content', |
| | | 'link' => 'sites/cron_list.php'); |
| | | |
| | | |
| | | $module["nav"][] = array( 'title' => 'Cron', |
| | | 'open' => 1, |
| | | 'items' => $items); |
| | | |
| | | |
| | | //**** Statistics menu |
| | | $items = array(); |
| | | |
| | | $items[] = array( 'title' => 'Web traffic', |
| | | 'target' => 'content', |
| | | 'link' => 'sites/web_sites_stats.php'); |
| | | |
| | | |
| | | $module['nav'][] = array( 'title' => 'Statistics', |
| | | 'open' => 1, |
| | | 'items' => $items); |
| | | |
| | | |
| | | |
| | | // clean up |
| | | unset($items); |
| | | |
New file |
| | |
| | | <?php |
| | | |
| | | /* |
| | | Datatypes: |
| | | - INTEGER |
| | | - DOUBLE |
| | | - CURRENCY |
| | | - VARCHAR |
| | | - TEXT |
| | | - DATE |
| | | */ |
| | | |
| | | |
| | | |
| | | // Name of the list |
| | | $liste["name"] = "cron"; |
| | | |
| | | // Database table |
| | | $liste["table"] = "cron"; |
| | | |
| | | // Index index field of the database table |
| | | $liste["table_idx"] = "id"; |
| | | |
| | | // Search Field Prefix |
| | | $liste["search_prefix"] = "search_"; |
| | | |
| | | // Records per page |
| | | $liste["records_per_page"] = 15; |
| | | |
| | | // Script File of the list |
| | | $liste["file"] = "cron_list.php"; |
| | | |
| | | // Script file of the edit form |
| | | $liste["edit_file"] = "cron_edit.php"; |
| | | |
| | | // Script File of the delete script |
| | | $liste["delete_file"] = "cron_del.php"; |
| | | |
| | | // Paging Template |
| | | $liste["paging_tpl"] = "templates/paging.tpl.htm"; |
| | | |
| | | // Enable auth |
| | | $liste["auth"] = "yes"; |
| | | |
| | | |
| | | /***************************************************** |
| | | * Suchfelder |
| | | *****************************************************/ |
| | | |
| | | |
| | | $liste["item"][] = array( 'field' => "active", |
| | | 'datatype' => "VARCHAR", |
| | | 'formtype' => "SELECT", |
| | | 'op' => "=", |
| | | 'prefix' => "", |
| | | 'suffix' => "", |
| | | 'width' => "", |
| | | 'value' => array('y' => "<div id=\"ir-Yes\" class=\"swap\"><span>Yes</span></div>",'n' => "<div class=\"swap\" id=\"ir-No\"><span>No</span></div>")); |
| | | |
| | | |
| | | $liste["item"][] = array( 'field' => "server_id", |
| | | 'datatype' => "VARCHAR", |
| | | 'formtype' => "SELECT", |
| | | 'op' => "like", |
| | | 'prefix' => "%", |
| | | 'suffix' => "%", |
| | | 'datasource' => array ( 'type' => 'SQL', |
| | | 'querystring' => 'SELECT server_id,server_name FROM server WHERE {AUTHSQL} ORDER BY server_name', |
| | | 'keyfield'=> 'server_id', |
| | | 'valuefield'=> 'server_name' |
| | | ), |
| | | 'width' => "", |
| | | 'value' => ""); |
| | | |
| | | $liste["item"][] = array( 'field' => "parent_domain_id", |
| | | 'datatype' => "VARCHAR", |
| | | 'formtype' => "SELECT", |
| | | 'op' => "like", |
| | | 'prefix' => "%", |
| | | 'suffix' => "%", |
| | | 'datasource' => array ( 'type' => 'SQL', |
| | | 'querystring' => "SELECT domain_id,domain FROM web_domain WHERE type = 'vhost' AND {AUTHSQL} ORDER BY domain", |
| | | 'keyfield'=> 'domain_id', |
| | | 'valuefield'=> 'domain' |
| | | ), |
| | | 'width' => "", |
| | | 'value' => ""); |
| | | |
| | | $liste["item"][] = array( 'field' => "run_min", |
| | | 'datatype' => "VARCHAR", |
| | | 'formtype' => "TEXT", |
| | | 'op' => "=", |
| | | 'prefix' => "", |
| | | 'suffix' => "", |
| | | 'width' => "", |
| | | 'value' => ""); |
| | | |
| | | $liste["item"][] = array( 'field' => "run_hour", |
| | | 'datatype' => "VARCHAR", |
| | | 'formtype' => "TEXT", |
| | | 'op' => "=", |
| | | 'prefix' => "", |
| | | 'suffix' => "", |
| | | 'width' => "", |
| | | 'value' => ""); |
| | | |
| | | $liste["item"][] = array( 'field' => "run_mday", |
| | | 'datatype' => "VARCHAR", |
| | | 'formtype' => "TEXT", |
| | | 'op' => "=", |
| | | 'prefix' => "", |
| | | 'suffix' => "", |
| | | 'width' => "", |
| | | 'value' => ""); |
| | | |
| | | $liste["item"][] = array( 'field' => "run_month", |
| | | 'datatype' => "VARCHAR", |
| | | 'formtype' => "TEXT", |
| | | 'op' => "=", |
| | | 'prefix' => "", |
| | | 'suffix' => "", |
| | | 'width' => "", |
| | | 'value' => ""); |
| | | |
| | | $liste["item"][] = array( 'field' => "run_wday", |
| | | 'datatype' => "VARCHAR", |
| | | 'formtype' => "TEXT", |
| | | 'op' => "=", |
| | | 'prefix' => "", |
| | | 'suffix' => "", |
| | | 'width' => "", |
| | | 'value' => ""); |
| | | |
| | | |
| | | $liste["item"][] = array( 'field' => "command", |
| | | 'datatype' => "VARCHAR", |
| | | 'formtype' => "TEXT", |
| | | 'op' => "like", |
| | | 'prefix' => "%", |
| | | 'suffix' => "%", |
| | | 'width' => "", |
| | | 'value' => ""); |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | ?> |
New file |
| | |
| | | <?php |
| | | |
| | | /* |
| | | Datatypes: |
| | | - INTEGER |
| | | - DOUBLE |
| | | - CURRENCY |
| | | - VARCHAR |
| | | - TEXT |
| | | - DATE |
| | | */ |
| | | |
| | | |
| | | |
| | | // Name of the list |
| | | $liste["name"] = "web_sites_stats"; |
| | | |
| | | // Database table |
| | | $liste["table"] = "web_domain"; |
| | | |
| | | // Index index field of the database table |
| | | $liste["table_idx"] = "domain_id"; |
| | | |
| | | // Search Field Prefix |
| | | $liste["search_prefix"] = "search_"; |
| | | |
| | | // Records per page |
| | | $liste["records_per_page"] = 15; |
| | | |
| | | // Script File of the list |
| | | $liste["file"] = "web_sites_stats.php"; |
| | | |
| | | // Script file of the edit form |
| | | $liste["edit_file"] = "web_domain_edit.php"; |
| | | |
| | | // Script File of the delete script |
| | | $liste["delete_file"] = "web_domain_del.php"; |
| | | |
| | | // Paging Template |
| | | $liste["paging_tpl"] = "templates/paging.tpl.htm"; |
| | | |
| | | // Enable auth |
| | | $liste["auth"] = "yes"; |
| | | |
| | | |
| | | /***************************************************** |
| | | * Suchfelder |
| | | *****************************************************/ |
| | | |
| | | $liste["item"][] = array( 'field' => "domain", |
| | | 'datatype' => "VARCHAR", |
| | | 'formtype' => "TEXT", |
| | | 'op' => "like", |
| | | 'prefix' => "%", |
| | | 'suffix' => "%", |
| | | 'width' => "", |
| | | 'value' => ""); |
| | | |
| | | |
| | | ?> |
| | |
| | | |
| | | // we will check only users, not admins |
| | | if($_SESSION["s"]["user"]["typ"] == 'user') { |
| | | |
| | | // Get the limits of the client |
| | | $client_group_id = $_SESSION["s"]["user"]["default_group"]; |
| | | $client = $app->db->queryOneRecord("SELECT limit_shell_user FROM sys_group, client WHERE sys_group.client_id = client.client_id and sys_group.groupid = $client_group_id"); |
| | | |
| | | // Check if the user may add another shell user. |
| | | if($client["limit_shell_user"] >= 0) { |
| | | $tmp = $app->db->queryOneRecord("SELECT count(shell_user_id) as number FROM shell_user WHERE sys_groupid = $client_group_id"); |
| | | if($tmp["number"] >= $client["limit_shell_user"]) { |
| | | $app->error($app->tform->wordbook["limit_shell_user_txt"]); |
| | | } |
| | | if(!$app->tform->checkClientLimit('limit_shell_user')) { |
| | | $app->error($app->tform->wordbook["limit_shell_user_txt"]); |
| | | } |
| | | if(!$app->tform->checkResellerLimit('limit_shell_user')) { |
| | | $app->error('Reseller: '.$app->tform->wordbook["limit_shell_user_txt"]); |
| | | } |
| | | } |
| | | |
| | |
| | | // Set a few fixed values |
| | | $this->dataRecord["server_id"] = $parent_domain["server_id"]; |
| | | |
| | | if(isset($this->dataRecord['username']) && trim($this->dataRecord['username']) == '') $app->tform->errorMessage .= $app->tform->lng('username_error_empty').'<br />'; |
| | | if(isset($this->dataRecord['username']) && empty($this->dataRecord['parent_domain_id'])) $app->tform->errorMessage .= $app->tform->lng('parent_domain_id_error_empty').'<br />'; |
| | | |
| | | parent::onSubmit(); |
| | | } |
| | | |
| | |
| | | } |
| | | } |
| | | unset($blacklist); |
| | | |
| | | |
| | | /* |
| | | * If the names should be restricted -> do it! |
| | | */ |
New file |
| | |
| | | <h2><tmpl_var name="list_head_txt"></h2>
|
| | | <p><tmpl_var name="list_desc_txt"></p>
|
| | |
|
| | | <div class="panel panel_cron">
|
| | |
|
| | | <div class="pnl_formsarea">
|
| | | <fieldset class="inlineLabels"><legend>Cron Job</legend>
|
| | | <div class="ctrlHolder">
|
| | | <tmpl_if name="edit_disabled">
|
| | | <label for="parent_domain_id">{tmpl_var name='parent_domain_id_txt'}</label>
|
| | | <select name="parent_domain_id" id="parent_domain_id" class="selectInput" disabled="disabled">
|
| | | {tmpl_var name='parent_domain_id'}
|
| | | </select>
|
| | | <input type="hidden" name="parent_domain_id" value="{tmpl_var name='parent_domain_id_value'}" />
|
| | | <tmpl_else>
|
| | | <label for="parent_domain_id">{tmpl_var name='parent_domain_id_txt'}</label>
|
| | | <select name="parent_domain_id" id="parent_domain_id" class="selectInput">
|
| | | {tmpl_var name='parent_domain_id'}
|
| | | </select>
|
| | | </tmpl_if>
|
| | | </div>
|
| | | <div class="ctrlHolder">
|
| | | <label for="run_min">{tmpl_var name='run_min_txt'}</label>
|
| | | <input name="run_min" id="run_min" value="{tmpl_var name='run_min'}" size="10" maxlength="255" type="text" class="textInput" />
|
| | | <p class="formHint">e.g. *, */3, 10-20</p>
|
| | | </div>
|
| | | <div class="ctrlHolder">
|
| | | <label for="run_hour">{tmpl_var name='run_hour_txt'}</label>
|
| | | <input name="run_hour" id="run_hour" value="{tmpl_var name='run_hour'}" size="10" maxlength="255" type="text" class="textInput" />
|
| | | <p class="formHint">e.g. *, */2, 0, 10-12</p>
|
| | | </div>
|
| | | <div class="ctrlHolder">
|
| | | <label for="run_mday">{tmpl_var name='run_mday_txt'}</label>
|
| | | <input name="run_mday" id="run_mday" value="{tmpl_var name='run_mday'}" size="10" maxlength="255" type="text" class="textInput" />
|
| | | <p class="formHint">e.g. *, */4, 1-5</p>
|
| | | </div>
|
| | | <div class="ctrlHolder">
|
| | | <label for="run_month">{tmpl_var name='run_month_txt'}</label>
|
| | | <input name="run_month" id="run_month" value="{tmpl_var name='run_month'}" size="10" maxlength="255" type="text" class="textInput" />
|
| | | <p class="formHint">e.g. *, 1-6</p>
|
| | | </div>
|
| | | <div class="ctrlHolder">
|
| | | <label for="run_wday">{tmpl_var name='run_wday_txt'}</label>
|
| | | <input name="run_wday" id="run_wday" value="{tmpl_var name='run_wday'}" size="10" maxlength="255" type="text" class="textInput" />
|
| | | <p class="formHint">e.g. *, 0, 1-5</p>
|
| | | </div>
|
| | | <div class="ctrlHolder">
|
| | | <label for="command">{tmpl_var name='command_txt'}</label>
|
| | | <input name="command" id="command" value="{tmpl_var name='command'}" size="30" maxlength="255" type="text" class="textInput" />
|
| | | <p class="formHint">e.g. /var/www/clients/client1/myscript.sh or http://www.mydomain.com/path/script.php</p>
|
| | | </div>
|
| | | <div class="ctrlHolder">
|
| | | <p class="label">{tmpl_var name='active_txt'}</p>
|
| | | <div class="multiField">
|
| | | {tmpl_var name='active'}
|
| | | </div>
|
| | | </div>
|
| | | </fieldset>
|
| | |
|
| | | <input type="hidden" name="id" value="{tmpl_var name='id'}">
|
| | | |
| | | <div class="buttonHolder buttons">
|
| | | <button class="positive iconstxt icoPositive" type="button" value="{tmpl_var name='btn_save_txt'}" onClick="submitForm('pageForm','sites/cron_edit.php');"><span>{tmpl_var name='btn_save_txt'}</span></button>
|
| | | <button class="negative iconstxt icoNegative" type="button" value="{tmpl_var name='btn_cancel_txt'}" onClick="loadContent('sites/cron_list.php');"><span>{tmpl_var name='btn_cancel_txt'}</span></button>
|
| | | </div>
|
| | | </div>
|
| | | |
| | | </div>
|
New file |
| | |
| | | <h2><tmpl_var name="list_head_txt"></h2>
|
| | | <p><tmpl_var name="list_desc_txt"></p>
|
| | |
|
| | | <div class="panel panel_list_cron">
|
| | |
|
| | | <div class="pnl_toolsarea">
|
| | | <fieldset><legend>Tools</legend>
|
| | | <div class="buttons">
|
| | | <button class="iconstxt icoAdd" type="button" onClick="loadContent('sites/cron_edit.php');">
|
| | | <span>{tmpl_var name="add_new_cron_txt"}</span>
|
| | | </button>
|
| | | </div>
|
| | | </fieldset>
|
| | | </div>
|
| | |
|
| | | <div class="pnl_listarea">
|
| | | <fieldset><legend><tmpl_var name="list_head_txt"></legend>
|
| | | <table class="list">
|
| | | <thead>
|
| | | <tr>
|
| | | <th class="tbl_col_active" scope="col"><tmpl_var name="active_txt"></th>
|
| | | <th class="tbl_col_server_id" scope="col"><tmpl_var name="server_id_txt"></th>
|
| | | <th class="tbl_col_run_min" scope="col"><tmpl_var name="run_min_txt"></th>
|
| | | <th class="tbl_col_run_hour" scope="col"><tmpl_var name="run_hour_txt"></th>
|
| | | <th class="tbl_col_run_mday" scope="col"><tmpl_var name="run_mday_txt"></th>
|
| | | <th class="tbl_col_run_month" scope="col"><tmpl_var name="run_month_txt"></th>
|
| | | <th class="tbl_col_run_wday" scope="col"><tmpl_var name="run_wday_txt"></th>
|
| | | <th class="tbl_col_command" scope="col"><tmpl_var name="command_txt"></th>
|
| | | <th class="tbl_col_buttons" scope="col"> </th>
|
| | | </tr>
|
| | | <tr>
|
| | | <td class="tbl_col_active"><select name="search_active" onChange="submitForm('pageForm','sites/cron_list.php');">{tmpl_var name='search_active'}</select></td>
|
| | | <td class="tbl_col_server_id"><select name="search_server_id" onChange="submitForm('pageForm','sites/cron_list.php');">{tmpl_var name='search_server_id'}</select></td>
|
| | | <td class="tbl_col_run_min"><input type="text" name="search_run_min" size="3" value="{tmpl_var name='search_run_min'}" /></td>
|
| | | <td class="tbl_col_run_hour"><input type="text" name="search_run_hour" size="3" value="{tmpl_var name='search_run_hour'}" /></td>
|
| | | <td class="tbl_col_run_mday"><input type="text" name="search_run_mday" size="3" value="{tmpl_var name='search_run_mday'}" /></td>
|
| | | <td class="tbl_col_run_month"><input type="text" name="search_run_month" size="3" value="{tmpl_var name='search_run_month'}" /></td>
|
| | | <td class="tbl_col_run_wday"><input type="text" name="search_run_wday" size="3" value="{tmpl_var name='search_run_wday'}" /></td>
|
| | | <td class="tbl_col_command"><input type="text" name="search_command" value="{tmpl_var name='search_command'}" /></td>
|
| | | <td class="tbl_col_buttons"><div class="buttons"><button type="button" class="icons16 icoFilter" name="Filter" id="Filter" value="{tmpl_var name="filter_txt"}" onClick="submitForm('pageForm','sites/cron_list.php');"><span>{tmpl_var name="filter_txt"}</span></button></div></td>
|
| | | </tr>
|
| | | </thead>
|
| | | <tbody>
|
| | | <tmpl_loop name="records">
|
| | | <tr class="tbl_row_<tmpl_if name='__EVEN__'}even<tmpl_else>uneven</tmpl_if>">
|
| | | <td class="tbl_col_active"><a href="#" onClick="loadContent('sites/cron_edit.php?id={tmpl_var name='id'}');"><img src="themes/{tmpl_var name='theme'}/icons/{tmpl_var name='_active_'}" border="0" /></a></td>
|
| | | <td class="tbl_col_server_id"><a href="#" onClick="loadContent('sites/cron_edit.php?id={tmpl_var name='id'}');">{tmpl_var name="server_id"}</a></td>
|
| | | <td class="tbl_col_run_min"><a href="#" onClick="loadContent('sites/cron_edit.php?id={tmpl_var name='id'}');">{tmpl_var name="run_min"}</a></td>
|
| | | <td class="tbl_col_run_hour"><a href="#" onClick="loadContent('sites/cron_edit.php?id={tmpl_var name='id'}');">{tmpl_var name="run_hour"}</a></td>
|
| | | <td class="tbl_col_run_mday"><a href="#" onClick="loadContent('sites/cron_edit.php?id={tmpl_var name='id'}');">{tmpl_var name="run_mday"}</a></td>
|
| | | <td class="tbl_col_run_month"><a href="#" onClick="loadContent('sites/cron_edit.php?id={tmpl_var name='id'}');">{tmpl_var name="run_month"}</a></td>
|
| | | <td class="tbl_col_run_wday"><a href="#" onClick="loadContent('sites/cron_edit.php?id={tmpl_var name='id'}');">{tmpl_var name="run_wday"}</a></td>
|
| | | <td class="tbl_col_commnd"><a href="#" onClick="loadContent('sites/cron_edit.php?id={tmpl_var name='id'}');">{tmpl_var name="command"}</a></td>
|
| | | <td class="tbl_col_buttons">
|
| | | <div class="buttons icons16"> |
| | | <a class="icons16 icoDelete" href="javascript: del_record('sites/cron_del.php?id={tmpl_var name='id'}&phpsessid={tmpl_var name='phpsessid'}','{tmpl_var name='delete_confirmation'}');"><span>{tmpl_var name='delete_txt'}</span></a>
|
| | | </div>
|
| | | </td>
|
| | | </tr>
|
| | | </tmpl_loop>
|
| | | </tbody>
|
| | | <tfoot>
|
| | | <tr>
|
| | | <td class="tbl_footer tbl_paging" colspan="9"><tmpl_var name="paging"></td>
|
| | | </tr>
|
| | | </tfoot>
|
| | | </table>
|
| | | </fieldset>
|
| | | </div>
|
| | |
|
| | | </div>
|
| | |
| | | </tmpl_if> |
| | | </div> |
| | | <div class="ctrlHolder"> |
| | | <p class="label">{tmpl_var name='remote_access_txt'}</p> |
| | | <div class="multiField"> |
| | | {tmpl_var name='remote_access'} |
| | | </div> |
| | | </div> |
| | | <p class="label">{tmpl_var name='remote_access_txt'}</p> |
| | | <div class="multiField"> |
| | | {tmpl_var name='remote_access'} |
| | | </div> |
| | | </div> |
| | | <div class="ctrlHolder"> |
| | | <label for="remote_ips">{tmpl_var name='remote_ips_txt'}</label> |
| | | <input name="remote_ips" id="remote_ips" value="{tmpl_var name='remote_ips'}" size="60" type="text" class="textInput formLengthHalf" /> |
| | | </div> |
| | | <div class="ctrlHolder"> |
| | | <p class="label">{tmpl_var name='active_txt'}</p> |
| | | <div class="multiField"> |
New file |
| | |
| | | <h2><tmpl_var name="list_head_txt"></h2>
|
| | | <p><tmpl_var name="list_desc_txt"></p>
|
| | |
|
| | | <div class="panel panel_ftp_user">
|
| | |
|
| | | <div class="pnl_formsarea">
|
| | | <fieldset class="inlineLabels">
|
| | | <div class="ctrlHolder">
|
| | | <label for="dir">{tmpl_var name='dir_txt'}</label>
|
| | | <input name="dir" id="dir" value="{tmpl_var name='dir'}" size="30" maxlength="255" type="text" class="textInput" />
|
| | | </div>
|
| | | </fieldset>
|
| | |
|
| | | <input type="hidden" name="id" value="{tmpl_var name='id'}">
|
| | |
|
| | | <div class="buttonHolder buttons">
|
| | | <button class="positive iconstxt icoPositive" type="button" value="{tmpl_var name='btn_save_txt'}" onClick="submitForm('pageForm','sites/ftp_user_edit.php');"><span>{tmpl_var name='btn_save_txt'}</span></button>
|
| | | <button class="negative iconstxt icoNegative" type="button" value="{tmpl_var name='btn_cancel_txt'}" onClick="loadContent('sites/ftp_user_list.php');"><span>{tmpl_var name='btn_cancel_txt'}</span></button>
|
| | | </div>
|
| | | </div>
|
| | | |
| | | </div>
|
New file |
| | |
| | | <h2><tmpl_var name="list_head_txt"></h2>
|
| | | <p><tmpl_var name="list_desc_txt"></p>
|
| | |
|
| | | <div class="panel panel_list_web_sites_stats">
|
| | |
|
| | | <div class="pnl_listarea">
|
| | | <fieldset><legend><tmpl_var name="list_head_txt"></legend>
|
| | | <table class="list">
|
| | | <thead>
|
| | | <tr>
|
| | | <th class="tbl_col_domain" scope="col"><tmpl_var name="domain_txt"></th>
|
| | | <th class="tbl_col_this_month" scope="col"><tmpl_var name="this_month_txt"></th>
|
| | | <th class="tbl_col_last_month" scope="col"><tmpl_var name="last_month_txt"></th>
|
| | | <th class="tbl_col_this_year" scope="col"><tmpl_var name="this_year_txt"></th>
|
| | | <th class="tbl_col_last_year" scope="col"><tmpl_var name="last_year_txt"></th>
|
| | | <th class="tbl_col_buttons" scope="col"> </th>
|
| | | </tr>
|
| | | <tr>
|
| | | <td class="tbl_col_domain"><input type="text" name="search_domain" value="{tmpl_var name='search_domain'}" /></td>
|
| | | <td class="tbl_col_this_month"></td>
|
| | | <td class="tbl_col_last_month"></td>
|
| | | <td class="tbl_col_this_year"></td>
|
| | | <td class="tbl_col_last_year"></td>
|
| | | <td class="tbl_col_buttons"><div class="buttons"><button type="button" class="icons16 icoFilter" name="Filter" id="Filter" value="{tmpl_var name="filter_txt"}" onClick="submitForm('pageForm','sites/web_sites_stats.php');"><span>{tmpl_var name="filter_txt"}</span></button></div></td>
|
| | | </tr>
|
| | | </thead>
|
| | | <tbody>
|
| | | <tmpl_loop name="records">
|
| | | <tr class="tbl_row_<tmpl_if name='__EVEN__'}even<tmpl_else>uneven</tmpl_if>">
|
| | | <td class="tbl_col_domain"><a href="#" onClick="loadContent('sites/web_domain_edit.php?id={tmpl_var name='id'}');">{tmpl_var name="domain"}</a></td>
|
| | | <td class="tbl_col_this_month"><a href="#" onClick="loadContent('sites/web_domain_edit.php?id={tmpl_var name='id'}');">{tmpl_var name="this_month"} kB</a></td>
|
| | | <td class="tbl_col_last_month"><a href="#" onClick="loadContent('sites/web_domain_edit.php?id={tmpl_var name='id'}');">{tmpl_var name="last_month"} kB</a></td>
|
| | | <td class="tbl_col_this_year"><a href="#" onClick="loadContent('sites/web_domain_edit.php?id={tmpl_var name='id'}');">{tmpl_var name="this_year"} kB</a></td>
|
| | | <td class="tbl_col_last_year"><a href="#" onClick="loadContent('sites/web_domain_edit.php?id={tmpl_var name='id'}');">{tmpl_var name="last_year"} kB</a></td>
|
| | | <td class="tbl_col_buttons">
|
| | | <div class="buttons icons16"> |
| | | </div>
|
| | | </td>
|
| | | </tr>
|
| | | </tmpl_loop>
|
| | | </tbody>
|
| | |
|
| | | <tfoot>
|
| | | <tr>
|
| | | <td class="tbl_footer tbl_paging" colspan="6"><tmpl_var name="paging"></td>
|
| | | </tr>
|
| | | </tfoot>
|
| | | </table>
|
| | | </fieldset>
|
| | | </div>
|
| | |
|
| | | </div>
|
| | |
| | | |
| | | // we will check only users, not admins |
| | | if($_SESSION["s"]["user"]["typ"] == 'user') { |
| | | |
| | | // Get the limits of the client |
| | | $client_group_id = $_SESSION["s"]["user"]["default_group"]; |
| | | $client = $app->db->queryOneRecord("SELECT limit_web_aliasdomain FROM sys_group, client WHERE sys_group.client_id = client.client_id and sys_group.groupid = $client_group_id"); |
| | | |
| | | // Check if the user may add another maildomain. |
| | | if($client["limit_web_aliasdomain"] >= 0) { |
| | | $tmp = $app->db->queryOneRecord("SELECT count(domain_id) as number FROM web_domain WHERE sys_groupid = $client_group_id and type = 'alias'"); |
| | | if($tmp["number"] >= $client["limit_web_aliasdomain"]) { |
| | | $app->error($app->tform->wordbook["limit_web_aliasdomain_txt"]); |
| | | } |
| | | if(!$app->tform->checkClientLimit('limit_web_aliasdomain',"type = 'alias'")) { |
| | | $app->error($app->tform->wordbook["limit_web_aliasdomain_txt"]); |
| | | } |
| | | if(!$app->tform->checkResellerLimit('limit_web_aliasdomain',"type = 'alias'")) { |
| | | $app->error('Reseller: '.$app->tform->wordbook["limit_web_aliasdomain_txt"]); |
| | | } |
| | | } |
| | | |
| | |
| | | foreach($records as $rec) { |
| | | $app->db->datalogDelete('shell_user','shell_user_id',$rec['shell_user_id']); |
| | | } |
| | | |
| | | // Delete all records that belog to this zone. |
| | | $records = $app->db->queryAllRecords("SELECT id FROM cron WHERE parent_domain_id = '".intval($this->id)."'"); |
| | | foreach($records as $rec) { |
| | | $app->db->datalogDelete('cron','id',$rec['id']); |
| | | } |
| | | } |
| | | } |
| | | |
| | |
| | | |
| | | // we will check only users, not admins |
| | | if($_SESSION["s"]["user"]["typ"] == 'user') { |
| | | |
| | | // Get the limits of the client |
| | | $client_group_id = $_SESSION["s"]["user"]["default_group"]; |
| | | $client = $app->db->queryOneRecord("SELECT limit_web_domain FROM sys_group, client WHERE sys_group.client_id = client.client_id and sys_group.groupid = $client_group_id"); |
| | | |
| | | // Check if the user may add another website. |
| | | if($client["limit_web_domain"] >= 0) { |
| | | $tmp = $app->db->queryOneRecord("SELECT count(domain_id) as number FROM web_domain WHERE sys_groupid = $client_group_id and type = 'vhost'"); |
| | | if($tmp["number"] >= $client["limit_web_domain"]) { |
| | | $app->error($app->tform->wordbook["limit_web_domain_txt"]); |
| | | } |
| | | if(!$app->tform->checkClientLimit('limit_web_domain',"type = 'vhost'")) { |
| | | $app->error($app->tform->wordbook["limit_web_domain_txt"]); |
| | | } |
| | | if(!$app->tform->checkResellerLimit('limit_web_domain',"type = 'vhost'")) { |
| | | $app->error('Reseller: '.$app->tform->wordbook["limit_web_domain_txt"]); |
| | | } |
| | | } |
| | | |
| | |
| | | |
| | | // Get the limits of the client |
| | | $client_group_id = $_SESSION["s"]["user"]["default_group"]; |
| | | $client = $app->db->queryOneRecord("SELECT client.client_id, limit_web_domain, default_webserver FROM sys_group, client WHERE sys_group.client_id = client.client_id and sys_group.groupid = $client_group_id"); |
| | | $client = $app->db->queryOneRecord("SELECT client.client_id, limit_web_domain, default_webserver, client.contact_name FROM sys_group, client WHERE sys_group.client_id = client.client_id and sys_group.groupid = $client_group_id"); |
| | | |
| | | // Set the webserver to the default server of the client |
| | | $tmp = $app->db->queryOneRecord("SELECT server_name FROM server WHERE server_id = $client[default_webserver]"); |
| | |
| | | // Fill the client select field |
| | | $sql = "SELECT groupid, name FROM sys_group, client WHERE sys_group.client_id = client.client_id AND client.parent_client_id = ".$client['client_id']; |
| | | $clients = $app->db->queryAllRecords($sql); |
| | | $client_select = ''; |
| | | $client_select = '<option value="'.$client['client_id'].'">'.$client['contact_name'].'</option>'; |
| | | if(is_array($clients)) { |
| | | foreach( $clients as $client) { |
| | | $selected = @($client["groupid"] == $this->dataRecord["sys_groupid"])?'SELECTED':''; |
| | |
| | | if($_SESSION["s"]["user"]["typ"] != 'admin') { |
| | | // Get the limits of the client |
| | | $client_group_id = $_SESSION["s"]["user"]["default_group"]; |
| | | $client = $app->db->queryOneRecord("SELECT limit_web_domain, default_webserver FROM sys_group, client WHERE sys_group.client_id = client.client_id and sys_group.groupid = $client_group_id"); |
| | | $client = $app->db->queryOneRecord("SELECT limit_web_domain, default_webserver, parent_client_id FROM sys_group, client WHERE sys_group.client_id = client.client_id and sys_group.groupid = $client_group_id"); |
| | | |
| | | // When the record is updated |
| | | if($this->id > 0) { |
| | |
| | | } |
| | | unset($rec); |
| | | } |
| | | //* If the user is neither admin nor reseller |
| | | } else { |
| | | //* We do not allow users to change a domain which has been created by the admin |
| | | $rec = $app->db->queryOneRecord("SELECT domain from web_domain WHERE domain_id = ".$this->id); |
| | | if(isset($this->dataRecord["domain"]) && $rec['domain'] != $this->dataRecord["domain"] && $app->tform->checkPerm($this->id,'u')) { |
| | | //* Add a error message and switch back to old server |
| | | $app->tform->errorMessage .= $app->lng('The Domain can not be changed. Please ask your Administrator if you want to change the domain name.'); |
| | | $this->dataRecord["domain"] = $rec['domain']; |
| | | } |
| | | unset($rec); |
| | | } |
| | | |
| | | //* Check that all fields for the SSL cert creation are filled |
| | |
| | | // Set the values for document_root, system_user and system_group |
| | | $system_user = 'web'.$this->id; |
| | | $system_group = 'client'.$client_id; |
| | | //$document_root = str_replace("[client_id]",$client_id,$document_root); |
| | | $document_root = str_replace("[client_id]",$client_id,$document_root); |
| | | |
| | | // $sql = "UPDATE web_domain SET system_user = '$system_user', system_group = '$system_group', document_root = '$document_root' WHERE domain_id = ".$this->id; |
| | | $sql = "UPDATE web_domain SET system_user = '$system_user', system_group = '$system_group' WHERE domain_id = ".$this->id; |
| | | $sql = "UPDATE web_domain SET system_user = '$system_user', system_group = '$system_group', document_root = '$document_root' WHERE domain_id = ".$this->id; |
| | | //$sql = "UPDATE web_domain SET system_user = '$system_user', system_group = '$system_group' WHERE domain_id = ".$this->id; |
| | | $app->db->query($sql); |
| | | } |
| | | |
New file |
| | |
| | | <?php |
| | | require_once('../../lib/config.inc.php'); |
| | | require_once('../../lib/app.inc.php'); |
| | | |
| | | /****************************************** |
| | | * Begin Form configuration |
| | | ******************************************/ |
| | | |
| | | $list_def_file = "list/web_sites_stats.list.php"; |
| | | |
| | | /****************************************** |
| | | * End Form configuration |
| | | ******************************************/ |
| | | |
| | | //* Check permissions for module |
| | | $app->auth->check_module_permissions('sites'); |
| | | |
| | | $app->load('listform_actions'); |
| | | |
| | | class list_action extends listform_actions { |
| | | |
| | | function prepareDataRow($rec) |
| | | { |
| | | global $app; |
| | | |
| | | $rec = $app->listform->decode($rec); |
| | | |
| | | //* Alternating datarow colors |
| | | $this->DataRowColor = ($this->DataRowColor == '#FFFFFF') ? '#EEEEEE' : '#FFFFFF'; |
| | | $rec['bgcolor'] = $this->DataRowColor; |
| | | |
| | | //* Set the statistics colums |
| | | //** Traffic of the current month |
| | | $tmp_year = date('Y'); |
| | | $tmp_month = date('m'); |
| | | $tmp_rec = $app->db->queryOneRecord("SELECT SUM(traffic_bytes) as t FROM web_traffic WHERE hostname = '".$rec['domain']."' AND YEAR(traffic_date) = '$tmp_year' AND MONTH(traffic_date) = '$tmp_month'"); |
| | | $rec['this_month'] = number_format(intval($tmp_rec['t'])/1024, 0, '.', ' '); |
| | | |
| | | //** Traffic of the current year |
| | | $tmp_rec = $app->db->queryOneRecord("SELECT sum(traffic_bytes) as t FROM web_traffic WHERE hostname = '".$rec['domain']."' AND YEAR(traffic_date) = '$tmp_year'"); |
| | | $rec['this_year'] = number_format(intval($tmp_rec['t'])/1024, 0, '.', ' '); |
| | | |
| | | //** Traffic of the last month |
| | | $tmp_year = date('Y',mktime(0, 0, 0, date("m")-1, date("d"), date("Y"))); |
| | | $tmp_month = date('m',mktime(0, 0, 0, date("m")-1, date("d"), date("Y"))); |
| | | $tmp_rec = $app->db->queryOneRecord("SELECT sum(traffic_bytes) as t FROM web_traffic WHERE hostname = '".$rec['domain']."' AND YEAR(traffic_date) = '$tmp_year' AND MONTH(traffic_date) = '$tmp_month'"); |
| | | $rec['last_month'] = number_format(intval($tmp_rec['t'])/1024, 0, '.', ' '); |
| | | |
| | | //** Traffic of the last year |
| | | $tmp_year = date('Y',mktime(0, 0, 0, date("m"), date("d"), date("Y")-1)); |
| | | $tmp_rec = $app->db->queryOneRecord("SELECT sum(traffic_bytes) as t FROM web_traffic WHERE hostname = '".$rec['domain']."' AND YEAR(traffic_date) = '$tmp_year'"); |
| | | $rec['last_year'] = number_format(intval($tmp_rec['t'])/1024, 0, '.', ' '); |
| | | |
| | | //* The variable "id" contains always the index variable |
| | | $rec['id'] = $rec[$this->idx_key]; |
| | | return $rec; |
| | | } |
| | | } |
| | | |
| | | $list = new list_action; |
| | | $list->onLoad(); |
| | | |
| | | |
| | | ?> |
| | |
| | | |
| | | // we will check only users, not admins |
| | | if($_SESSION["s"]["user"]["typ"] == 'user') { |
| | | |
| | | // Get the limits of the client |
| | | $client_group_id = $_SESSION["s"]["user"]["default_group"]; |
| | | $client = $app->db->queryOneRecord("SELECT limit_web_subdomain FROM sys_group, client WHERE sys_group.client_id = client.client_id and sys_group.groupid = $client_group_id"); |
| | | |
| | | // Check if the user may add another maildomain. |
| | | if($client["limit_web_subdomain"] >= 0) { |
| | | $tmp = $app->db->queryOneRecord("SELECT count(domain_id) as number FROM web_domain WHERE sys_groupid = $client_group_id and type = 'subdomain'"); |
| | | if($tmp["number"] >= $client["limit_web_subdomain"]) { |
| | | $app->error($app->tform->wordbook["limit_web_subdomain_txt"]); |
| | | } |
| | | if(!$app->tform->checkClientLimit('limit_web_subdomain',"type = 'subdomain'")) { |
| | | $app->error($app->tform->wordbook["limit_web_subdomain_txt"]); |
| | | } |
| | | if(!$app->tform->checkResellerLimit('limit_web_subdomain',"type = 'subdomain'")) { |
| | | $app->error('Reseller: '.$app->tform->wordbook["limit_web_subdomain_txt"]); |
| | | } |
| | | } |
| | | |
New file |
| | |
| | | <?php |
| | | $wb['password_strength_0_txt'] = 'Muito Curto'; |
| | | $wb['password_strength_1_txt'] = 'Fraco'; |
| | | $wb['password_strength_2_txt'] = 'Rasoável'; |
| | | $wb['password_strength_3_txt'] = 'Bom'; |
| | | $wb['password_strength_4_txt'] = 'Forte'; |
| | | $wb['password_strength_5_txt'] = 'Muito Forte'; |
| | | ?> |
| | | |
New file |
| | |
| | | <?php |
| | | $wb['User Settings'] = 'Configurações do Usuário'; |
| | | $wb['Settings'] = 'Configurações'; |
| | | $wb['ISPConfig Tools'] = 'Ferramentas'; |
| | | $wb['Password and Language'] = 'Senha e Idioma'; |
| | | ?> |
| | | |
New file |
| | |
| | | <?php |
| | | $wb['passwort_txt'] = 'Senha'; |
| | | $wb['password_strength_txt'] = 'Segurança de Senha'; |
| | | $wb['language_txt'] = 'Idioma'; |
| | | $wb['password_mismatch'] = 'As senhas não conhecidem'; |
| | | $wb['Form to edit the user password and language.'] = 'Formulário para alterar idioma e senha'; |
| | | $wb['Settings'] = 'Configurações'; |
| | | ?> |
| | | |
| | |
| | | ################################################ |
| | | |
| | | LogFormat "%v %h %l %u %t \"%r\" %>s %B \"%{Referer}i\" \"%{User-Agent}i\"" combined_ispconfig |
| | | CustomLog "| /usr/sbin/vlogger -s access.log -t \"%Y%m%d-access.log\" /var/log/ispconfig/httpd" combined_ispconfig |
| | | CustomLog "| /usr/local/ispconfig/server/scripts/vlogger -s access.log -t \"%Y%m%d-access.log\" -d \"/etc/vlogger-dbi.conf\" /var/log/ispconfig/httpd" combined_ispconfig |
| | | |
| | | <Directory /var/www/clients> |
| | | AllowOverride None |
| | |
| | | export PHP_FCGI_CHILDREN |
| | | PHP_FCGI_MAX_REQUESTS=<tmpl_var name='php_fcgi_max_requests'> |
| | | export PHP_FCGI_MAX_REQUESTS |
| | | exec <tmpl_var name='php_fcgi_bin'> $1 |
| | | exec <tmpl_var name='php_fcgi_bin'> \ |
| | | <tmpl_if name="security_level" op="==" value="20"> -d open_basedir=<tmpl_var name='document_root'> \ |
| | | -d upload_tmp_dir=<tmpl_var name='document_root'>/tmp \ |
| | | -d session.save_path=<tmpl_var name='document_root'>/tmp \ |
| | | </tmpl_if> $1 |
| | |
| | |
|
| | | <Directory {tmpl_var name='web_basedir'}/{tmpl_var name='domain'}>
|
| | | AllowOverride None
|
| | | Order Deny,Allow
|
| | | Deny from all
|
| | | </Directory>
|
| | |
|
| | | <VirtualHost <tmpl_var name='ip_address'>:80>
|
| | | <tmpl_if name='php' op='==' value='suphp'>
|
| | | DocumentRoot <tmpl_var name='web_document_root'>
|
| | | </tmpl_else>
|
| | | <tmpl_if name='php' op='==' value='cgi'>
|
| | | DocumentRoot <tmpl_var name='web_document_root'>
|
| | | </tmpl_else>
|
| | | DocumentRoot <tmpl_var name='web_document_root_www'>
|
| | | </tmpl_if>
|
| | | </tmpl_if>
|
| | |
|
| | | ServerName <tmpl_var name='domain'>
|
| | | <tmpl_if name='alias'>
|
| | | ServerAlias <tmpl_var name='alias'>
|
| | | </tmpl_if>
|
| | | ServerAdmin webmaster@<tmpl_var name='domain'>
|
| | |
|
| | | ErrorLog /var/log/ispconfig/httpd/<tmpl_var name='domain'>/error.log
|
| | | <tmpl_if name='errordocs'>
|
| | |
|
| | | ErrorDocument 400 /error/400.html
|
| | | ErrorDocument 401 /error/401.html
|
| | | ErrorDocument 403 /error/403.html
|
| | | ErrorDocument 404 /error/404.html
|
| | | ErrorDocument 405 /error/405.html
|
| | | ErrorDocument 500 /error/500.html
|
| | | ErrorDocument 503 /error/503.html
|
| | | </tmpl_if>
|
| | | |
| | | <Directory {tmpl_var name='web_document_root_www'}>
|
| | | Options FollowSymLinks
|
| | | AllowOverride Indexes AuthConfig Limit FileInfo
|
| | | Order allow,deny
|
| | | Allow from all
|
| | | <tmpl_if name='ssi' op='==' value='y'>
|
| | | |
| | | # ssi enabled
|
| | | AddType text/html .shtml
|
| | | AddOutputFilter INCLUDES .shtml
|
| | | Options +Includes
|
| | | </tmpl_if>
|
| | | <tmpl_if name='php' op='==' value='no'>
|
| | | <Files ~ '.php[s3-6]{0,1}$'>
|
| | | Order allow,deny
|
| | | Deny from all
|
| | | Allow from none
|
| | | </Files>
|
| | | </tmpl_if>
|
| | | </Directory>
|
| | | <Directory {tmpl_var name='web_document_root'}>
|
| | | Options FollowSymLinks
|
| | | AllowOverride Indexes AuthConfig Limit FileInfo
|
| | | Order allow,deny
|
| | | Allow from all
|
| | | <tmpl_if name='ssi' op='==' value='y'>
|
| | | |
| | | # ssi enabled
|
| | | AddType text/html .shtml
|
| | | AddOutputFilter INCLUDES .shtml
|
| | | Options +Includes
|
| | | </tmpl_if>
|
| | | <tmpl_if name='php' op='==' value='no'>
|
| | | <Files ~ '.php[s3-6]{0,1}$'>
|
| | | Order allow,deny
|
| | | Deny from all
|
| | | Allow from none
|
| | | </Files>
|
| | | </tmpl_if>
|
| | | </Directory>
|
| | |
|
| | | <tmpl_if name='cgi' op='==' value='y'>
|
| | | # cgi enabled
|
| | | <Directory {tmpl_var name='document_root'}/cgi-bin>
|
| | | Order allow,deny
|
| | | Allow from all
|
| | | </Directory>
|
| | | ScriptAlias /cgi-bin/ <tmpl_var name='document_root'>/cgi-bin/
|
| | | AddHandler cgi-script .cgi
|
| | | AddHandler cgi-script .pl
|
| | | </tmpl_if>
|
| | | <tmpl_if name='suexec' op='==' value='y'>
|
| | | # suexec enabled
|
| | | SuexecUserGroup <tmpl_var name='system_user'> <tmpl_var name='system_group'>
|
| | | </tmpl_if>
|
| | | <tmpl_if name='php' op='==' value='mod'>
|
| | | # mod_php enabled
|
| | | AddType application/x-httpd-php .php .php3 .php4 .php5
|
| | | php_admin_value sendmail_path "/usr/sbin/sendmail -t -i -fwebmaster@<tmpl_var name='domain'>" |
| | | php_admin_value upload_tmp_dir <tmpl_var name='document_root'>/tmp
|
| | | php_admin_value session.save_path <tmpl_var name='document_root'>/tmp
|
| | | #php_admin_value open_basedir <tmpl_var name='document_root'>:/usr/share/php5
|
| | | </tmpl_if>
|
| | | <tmpl_if name='php' op='==' value='suphp'>
|
| | | # suphp enabled
|
| | | <Directory {tmpl_var name='web_document_root'}>
|
| | | suPHP_Engine on
|
| | | # suPHP_UserGroup <tmpl_var name='system_user'> <tmpl_var name='system_group'>
|
| | | AddHandler x-httpd-suphp .php .php3 .php4 .php5
|
| | | suPHP_AddHandler x-httpd-suphp
|
| | | </Directory>
|
| | | </tmpl_if>
|
| | | <tmpl_if name='php' op='==' value='cgi'>
|
| | | # php as cgi enabled
|
| | | ScriptAlias /php5-cgi <tmpl_var name='cgi_starter_path'><tmpl_var name='cgi_starter_script'>
|
| | | Action php5-cgi /php5-cgi
|
| | | AddHandler php5-cgi .php .php3 .php4 .php5
|
| | | <Directory {tmpl_var name='cgi_starter_path'}>
|
| | | Order allow,deny
|
| | | Allow from all
|
| | | </Directory>
|
| | | </tmpl_if>
|
| | | <tmpl_if name='php' op='==' value='fast-cgi'>
|
| | | # php as fast-cgi enabled
|
| | | <Directory {tmpl_var name='web_document_root_www'}>
|
| | | AddHandler fcgid-script .php .php3 .php4 .php5
|
| | | FCGIWrapper <tmpl_var name='fastcgi_starter_path'><tmpl_var name='fastcgi_starter_script'> .php
|
| | | Options +ExecCGI
|
| | | AllowOverride all
|
| | | Order allow,deny
|
| | | Allow from all
|
| | | </Directory>
|
| | | </tmpl_if>
|
| | | <tmpl_if name="rewrite_enabled">
|
| | | |
| | | RewriteEngine on
|
| | | <tmpl_loop name="redirects">
|
| | | RewriteCond %{HTTP_HOST} ^<tmpl_var name='rewrite_domain'> [NC]
|
| | | RewriteRule ^/(.*)$ <tmpl_var name='rewrite_target'>$1 <tmpl_var name='rewrite_type'>
|
| | | </tmpl_loop>
|
| | | </tmpl_if>
|
| | |
|
| | | <tmpl_var name='apache_directives'>
|
| | | </VirtualHost>
|
| | |
|
| | |
|
| | |
|
| | | <tmpl_if name='ssl_enabled'>
|
| | | <IfModule mod_ssl.c>
|
| | | ###########################################################
|
| | | # SSL Vhost
|
| | | ###########################################################
|
| | |
|
| | | <VirtualHost <tmpl_var name='ip_address'>:443>
|
| | | <tmpl_if name='php' op='==' value='suphp'>
|
| | | DocumentRoot <tmpl_var name='web_document_root'>
|
| | | </tmpl_else>
|
| | | <tmpl_if name='php' op='==' value='cgi'>
|
| | | DocumentRoot <tmpl_var name='web_document_root'>
|
| | | </tmpl_else>
|
| | | DocumentRoot <tmpl_var name='web_document_root_www'>
|
| | | </tmpl_if>
|
| | | </tmpl_if>
|
| | |
|
| | | ServerName <tmpl_var name='domain'>
|
| | | <tmpl_if name='alias'>
|
| | | ServerAlias <tmpl_var name='alias'>
|
| | | </tmpl_if>
|
| | | ServerAdmin webmaster@<tmpl_var name='domain'>
|
| | | |
| | | ErrorLog /var/log/ispconfig/httpd/<tmpl_var name='domain'>/error.log
|
| | |
|
| | | <tmpl_if name='errordocs'>
|
| | | ErrorDocument 400 /error/400.html
|
| | | ErrorDocument 401 /error/401.html
|
| | | ErrorDocument 403 /error/403.html
|
| | | ErrorDocument 404 /error/404.html
|
| | | ErrorDocument 405 /error/405.html
|
| | | ErrorDocument 500 /error/500.html
|
| | | ErrorDocument 503 /error/503.html
|
| | |
|
| | | </tmpl_if>
|
| | | SSLEngine on
|
| | | SSLCertificateFile <tmpl_var name='document_root'>/ssl/<tmpl_var name='domain'>.crt
|
| | | SSLCertificateKeyFile <tmpl_var name='document_root'>/ssl/<tmpl_var name='domain'>.key
|
| | | <tmpl_if name='has_bundle_cert'>
|
| | | SSLCACertificateFile <tmpl_var name='document_root'>/ssl/<tmpl_var name='domain'>.bundle
|
| | | </tmpl_if>
|
| | | |
| | | <Directory {tmpl_var name='web_document_root_www'}>
|
| | | Options FollowSymLinks
|
| | | AllowOverride Indexes AuthConfig Limit FileInfo
|
| | | Order allow,deny
|
| | | Allow from all
|
| | | <tmpl_if name='ssi' op='==' value='y'>
|
| | | |
| | | # ssi enabled
|
| | | AddType text/html .shtml
|
| | | AddOutputFilter INCLUDES .shtml
|
| | | Options +Includes
|
| | | </tmpl_if>
|
| | | <tmpl_if name='php' op='==' value='no'>
|
| | | <Files ~ '.php[s3-6]{0,1}$'>
|
| | | Order allow,deny
|
| | | Deny from all
|
| | | Allow from none
|
| | | </Files>
|
| | | </tmpl_if>
|
| | | </Directory>
|
| | | <Directory {tmpl_var name='web_document_root'}>
|
| | | Options FollowSymLinks
|
| | | AllowOverride Indexes AuthConfig Limit FileInfo
|
| | | Order allow,deny
|
| | | Allow from all
|
| | | <tmpl_if name='ssi' op='==' value='y'>
|
| | | |
| | | # ssi enabled
|
| | | AddType text/html .shtml
|
| | | AddOutputFilter INCLUDES .shtml
|
| | | Options +Includes
|
| | | </tmpl_if>
|
| | | <tmpl_if name='php' op='==' value='no'>
|
| | | <Files ~ '.php[s3-6]{0,1}$'>
|
| | | Order allow,deny
|
| | | Deny from all
|
| | | Allow from none
|
| | | </Files>
|
| | | </tmpl_if>
|
| | | </Directory>
|
| | |
|
| | | <tmpl_if name='cgi' op='==' value='y'>
|
| | | # cgi enabled
|
| | | <Directory {tmpl_var name='document_root'}/cgi-bin>
|
| | | Order allow,deny
|
| | | Allow from all
|
| | | </Directory>
|
| | | ScriptAlias /cgi-bin/ <tmpl_var name='document_root'>/cgi-bin/
|
| | | AddHandler cgi-script .cgi
|
| | | AddHandler cgi-script .pl
|
| | | </tmpl_if>
|
| | | <tmpl_if name='ssi'op='==' value='y'>
|
| | | # ssi enabled
|
| | | AddType text/html .shtml
|
| | | AddOutputFilter INCLUDES .shtml
|
| | | </tmpl_if>
|
| | | <tmpl_if name='suexec'op='==' value='y'>
|
| | | # suexec enabled
|
| | | SuexecUserGroup <tmpl_var name='system_user'> <tmpl_var name='system_group'>
|
| | | </tmpl_if>
|
| | | <tmpl_if name='php' op='==' value='mod'>
|
| | | # mod_php enabled
|
| | | AddType application/x-httpd-php .php .php3 .php4 .php5
|
| | | php_admin_value sendmail_path "/usr/sbin/sendmail -t -i -fwebmaster@<tmpl_var name='domain'>" |
| | | php_admin_value upload_tmp_dir <tmpl_var name='document_root'>/tmp
|
| | | php_admin_value session.save_path <tmpl_var name='document_root'>/tmp
|
| | | #php_admin_value open_basedir <tmpl_var name='document_root'>:/usr/share/php5
|
| | | </tmpl_if>
|
| | | <tmpl_if name='php' op='==' value='suphp'>
|
| | | # suphp enabled
|
| | | suPHP_Engine on
|
| | | # suPHP_UserGroup <tmpl_var name='system_user'> <tmpl_var name='system_group'>
|
| | | AddHandler x-httpd-php .php .php3 .php4 .php5
|
| | | suPHP_AddHandler x-httpd-php
|
| | | </tmpl_if>
|
| | | <tmpl_if name='php' op='==' value='cgi'>
|
| | | # php as cgi enabled
|
| | | ScriptAlias /php5-cgi <tmpl_var name='cgi_starter_path'><tmpl_var name='cgi_starter_script'>
|
| | | Action php5-cgi /php5-cgi
|
| | | AddHandler php5-cgi .php .php3 .php4 .php5
|
| | | <Directory {tmpl_var name='cgi_starter_path'}>
|
| | | Order allow,deny
|
| | | Allow from all
|
| | | </Directory>
|
| | | </tmpl_if>
|
| | | <tmpl_if name='php' op='==' value='fast-cgi'>
|
| | | # php as fast-cgi enabled
|
| | | <Directory {tmpl_var name='web_document_root_www'}>
|
| | | AddHandler fcgid-script .php .php3 .php4 .php5
|
| | | FCGIWrapper <tmpl_var name='fastcgi_starter_path'><tmpl_var name='fastcgi_starter_script'> .php
|
| | | Options +ExecCGI
|
| | | AllowOverride all
|
| | | Order allow,deny
|
| | | Allow from all
|
| | | </Directory>
|
| | | </tmpl_if>
|
| | | <tmpl_if name="rewrite_enabled">
|
| | | |
| | | RewriteEngine on
|
| | | <tmpl_loop name="redirects">
|
| | | RewriteCond %{HTTP_HOST} ^<tmpl_var name='rewrite_domain'> [NC]
|
| | | RewriteRule ^/(.*)$ <tmpl_var name='rewrite_target'>$1 <tmpl_var name='rewrite_type'>
|
| | | </tmpl_loop>
|
| | | </tmpl_if>
|
| | |
|
| | | <tmpl_var name='apache_directives'>
|
| | | </VirtualHost>
|
| | | </IfModule>
|
| | |
|
| | | |
| | | <Directory {tmpl_var name='web_basedir'}/{tmpl_var name='domain'}> |
| | | AllowOverride None |
| | | Order Deny,Allow |
| | | Deny from all |
| | | </Directory> |
| | | |
| | | <VirtualHost <tmpl_var name='ip_address'>:80> |
| | | <tmpl_if name='php' op='==' value='suphp'> |
| | | DocumentRoot <tmpl_var name='web_document_root'> |
| | | </tmpl_else> |
| | | <tmpl_if name='php' op='==' value='cgi'> |
| | | DocumentRoot <tmpl_var name='web_document_root'> |
| | | </tmpl_else> |
| | | DocumentRoot <tmpl_var name='web_document_root_www'> |
| | | </tmpl_if> |
| | | </tmpl_if> |
| | | |
| | | ServerName <tmpl_var name='domain'> |
| | | <tmpl_if name='alias'> |
| | | <tmpl_var name='alias'> |
| | | </tmpl_if> |
| | | ServerAdmin webmaster@<tmpl_var name='domain'> |
| | | |
| | | ErrorLog /var/log/ispconfig/httpd/<tmpl_var name='domain'>/error.log |
| | | <tmpl_if name='errordocs'> |
| | | |
| | | ErrorDocument 400 /error/400.html |
| | | ErrorDocument 401 /error/401.html |
| | | ErrorDocument 403 /error/403.html |
| | | ErrorDocument 404 /error/404.html |
| | | ErrorDocument 405 /error/405.html |
| | | ErrorDocument 500 /error/500.html |
| | | ErrorDocument 503 /error/503.html |
| | | </tmpl_if> |
| | | |
| | | <Directory {tmpl_var name='web_document_root_www'}> |
| | | Options FollowSymLinks |
| | | AllowOverride Indexes AuthConfig Limit FileInfo |
| | | Order allow,deny |
| | | Allow from all |
| | | <tmpl_if name='ssi' op='==' value='y'> |
| | | |
| | | # ssi enabled |
| | | AddType text/html .shtml |
| | | AddOutputFilter INCLUDES .shtml |
| | | Options +Includes |
| | | </tmpl_if> |
| | | <tmpl_if name='php' op='==' value='no'> |
| | | <Files ~ '.php[s3-6]{0,1}$'> |
| | | Order allow,deny |
| | | Deny from all |
| | | Allow from none |
| | | </Files> |
| | | </tmpl_if> |
| | | </Directory> |
| | | <Directory {tmpl_var name='web_document_root'}> |
| | | Options FollowSymLinks |
| | | AllowOverride Indexes AuthConfig Limit FileInfo |
| | | Order allow,deny |
| | | Allow from all |
| | | <tmpl_if name='ssi' op='==' value='y'> |
| | | |
| | | # ssi enabled |
| | | AddType text/html .shtml |
| | | AddOutputFilter INCLUDES .shtml |
| | | Options +Includes |
| | | </tmpl_if> |
| | | <tmpl_if name='php' op='==' value='no'> |
| | | <Files ~ '.php[s3-6]{0,1}$'> |
| | | Order allow,deny |
| | | Deny from all |
| | | Allow from none |
| | | </Files> |
| | | </tmpl_if> |
| | | </Directory> |
| | | |
| | | <tmpl_if name='cgi' op='==' value='y'> |
| | | # cgi enabled |
| | | <Directory {tmpl_var name='document_root'}/cgi-bin> |
| | | Order allow,deny |
| | | Allow from all |
| | | </Directory> |
| | | ScriptAlias /cgi-bin/ <tmpl_var name='document_root'>/cgi-bin/ |
| | | AddHandler cgi-script .cgi |
| | | AddHandler cgi-script .pl |
| | | </tmpl_if> |
| | | <tmpl_if name='suexec' op='==' value='y'> |
| | | # suexec enabled |
| | | SuexecUserGroup <tmpl_var name='system_user'> <tmpl_var name='system_group'> |
| | | </tmpl_if> |
| | | <tmpl_if name='php' op='==' value='mod'> |
| | | # mod_php enabled |
| | | AddType application/x-httpd-php .php .php3 .php4 .php5 |
| | | php_admin_value sendmail_path "/usr/sbin/sendmail -t -i -fwebmaster@<tmpl_var name='domain'>" |
| | | php_admin_value upload_tmp_dir <tmpl_var name='document_root'>/tmp |
| | | php_admin_value session.save_path <tmpl_var name='document_root'>/tmp |
| | | <tmpl_if name='security_level' op='==' value='20'> |
| | | php_admin_value open_basedir <tmpl_var name='document_root'>/web:<tmpl_var name='document_root'>/tmp:/usr/share/php5 |
| | | </tmpl_if> |
| | | </tmpl_if> |
| | | <tmpl_if name='php' op='==' value='suphp'> |
| | | # suphp enabled |
| | | <Directory {tmpl_var name='web_document_root'}> |
| | | suPHP_Engine on |
| | | # suPHP_UserGroup <tmpl_var name='system_user'> <tmpl_var name='system_group'> |
| | | AddHandler x-httpd-suphp .php .php3 .php4 .php5 |
| | | suPHP_AddHandler x-httpd-suphp |
| | | </Directory> |
| | | </tmpl_if> |
| | | <tmpl_if name='php' op='==' value='cgi'> |
| | | # php as cgi enabled |
| | | ScriptAlias /php5-cgi <tmpl_var name='cgi_starter_path'><tmpl_var name='cgi_starter_script'> |
| | | Action php5-cgi /php5-cgi |
| | | AddHandler php5-cgi .php .php3 .php4 .php5 |
| | | <Directory {tmpl_var name='cgi_starter_path'}> |
| | | Order allow,deny |
| | | Allow from all |
| | | </Directory> |
| | | </tmpl_if> |
| | | <tmpl_if name='php' op='==' value='fast-cgi'> |
| | | # php as fast-cgi enabled |
| | | <Directory {tmpl_var name='web_document_root_www'}> |
| | | AddHandler fcgid-script .php .php3 .php4 .php5 |
| | | FCGIWrapper <tmpl_var name='fastcgi_starter_path'><tmpl_var name='fastcgi_starter_script'> .php |
| | | Options +ExecCGI |
| | | AllowOverride all |
| | | Order allow,deny |
| | | Allow from all |
| | | </Directory> |
| | | </tmpl_if> |
| | | <tmpl_if name="rewrite_enabled"> |
| | | |
| | | RewriteEngine on |
| | | <tmpl_loop name="redirects"> |
| | | RewriteCond %{HTTP_HOST} ^<tmpl_var name='rewrite_domain'> [NC] |
| | | RewriteRule ^/(.*)$ <tmpl_var name='rewrite_target'>$1 <tmpl_var name='rewrite_type'> |
| | | </tmpl_loop> |
| | | </tmpl_if> |
| | | |
| | | <tmpl_var name='apache_directives'> |
| | | </VirtualHost> |
| | | |
| | | |
| | | |
| | | <tmpl_if name='ssl_enabled'> |
| | | <IfModule mod_ssl.c> |
| | | ########################################################### |
| | | # SSL Vhost |
| | | ########################################################### |
| | | |
| | | <VirtualHost <tmpl_var name='ip_address'>:443> |
| | | <tmpl_if name='php' op='==' value='suphp'> |
| | | DocumentRoot <tmpl_var name='web_document_root'> |
| | | </tmpl_else> |
| | | <tmpl_if name='php' op='==' value='cgi'> |
| | | DocumentRoot <tmpl_var name='web_document_root'> |
| | | </tmpl_else> |
| | | DocumentRoot <tmpl_var name='web_document_root_www'> |
| | | </tmpl_if> |
| | | </tmpl_if> |
| | | |
| | | ServerName <tmpl_var name='domain'> |
| | | <tmpl_if name='alias'> |
| | | <tmpl_var name='alias'> |
| | | </tmpl_if> |
| | | ServerAdmin webmaster@<tmpl_var name='domain'> |
| | | |
| | | ErrorLog /var/log/ispconfig/httpd/<tmpl_var name='domain'>/error.log |
| | | |
| | | <tmpl_if name='errordocs'> |
| | | ErrorDocument 400 /error/400.html |
| | | ErrorDocument 401 /error/401.html |
| | | ErrorDocument 403 /error/403.html |
| | | ErrorDocument 404 /error/404.html |
| | | ErrorDocument 405 /error/405.html |
| | | ErrorDocument 500 /error/500.html |
| | | ErrorDocument 503 /error/503.html |
| | | |
| | | </tmpl_if> |
| | | SSLEngine on |
| | | SSLCertificateFile <tmpl_var name='document_root'>/ssl/<tmpl_var name='domain'>.crt |
| | | SSLCertificateKeyFile <tmpl_var name='document_root'>/ssl/<tmpl_var name='domain'>.key |
| | | <tmpl_if name='has_bundle_cert'> |
| | | SSLCACertificateFile <tmpl_var name='document_root'>/ssl/<tmpl_var name='domain'>.bundle |
| | | </tmpl_if> |
| | | |
| | | <Directory {tmpl_var name='web_document_root_www'}> |
| | | Options FollowSymLinks |
| | | AllowOverride Indexes AuthConfig Limit FileInfo |
| | | Order allow,deny |
| | | Allow from all |
| | | <tmpl_if name='ssi' op='==' value='y'> |
| | | |
| | | # ssi enabled |
| | | AddType text/html .shtml |
| | | AddOutputFilter INCLUDES .shtml |
| | | Options +Includes |
| | | </tmpl_if> |
| | | <tmpl_if name='php' op='==' value='no'> |
| | | <Files ~ '.php[s3-6]{0,1}$'> |
| | | Order allow,deny |
| | | Deny from all |
| | | Allow from none |
| | | </Files> |
| | | </tmpl_if> |
| | | </Directory> |
| | | <Directory {tmpl_var name='web_document_root'}> |
| | | Options FollowSymLinks |
| | | AllowOverride Indexes AuthConfig Limit FileInfo |
| | | Order allow,deny |
| | | Allow from all |
| | | <tmpl_if name='ssi' op='==' value='y'> |
| | | |
| | | # ssi enabled |
| | | AddType text/html .shtml |
| | | AddOutputFilter INCLUDES .shtml |
| | | Options +Includes |
| | | </tmpl_if> |
| | | <tmpl_if name='php' op='==' value='no'> |
| | | <Files ~ '.php[s3-6]{0,1}$'> |
| | | Order allow,deny |
| | | Deny from all |
| | | Allow from none |
| | | </Files> |
| | | </tmpl_if> |
| | | </Directory> |
| | | |
| | | <tmpl_if name='cgi' op='==' value='y'> |
| | | # cgi enabled |
| | | <Directory {tmpl_var name='document_root'}/cgi-bin> |
| | | Order allow,deny |
| | | Allow from all |
| | | </Directory> |
| | | ScriptAlias /cgi-bin/ <tmpl_var name='document_root'>/cgi-bin/ |
| | | AddHandler cgi-script .cgi |
| | | AddHandler cgi-script .pl |
| | | </tmpl_if> |
| | | <tmpl_if name='ssi'op='==' value='y'> |
| | | # ssi enabled |
| | | AddType text/html .shtml |
| | | AddOutputFilter INCLUDES .shtml |
| | | </tmpl_if> |
| | | <tmpl_if name='suexec'op='==' value='y'> |
| | | # suexec enabled |
| | | SuexecUserGroup <tmpl_var name='system_user'> <tmpl_var name='system_group'> |
| | | </tmpl_if> |
| | | <tmpl_if name='php' op='==' value='mod'> |
| | | # mod_php enabled |
| | | AddType application/x-httpd-php .php .php3 .php4 .php5 |
| | | php_admin_value sendmail_path "/usr/sbin/sendmail -t -i -fwebmaster@<tmpl_var name='domain'>" |
| | | php_admin_value upload_tmp_dir <tmpl_var name='document_root'>/tmp |
| | | php_admin_value session.save_path <tmpl_var name='document_root'>/tmp |
| | | <tmpl_if name='security_level' op='==' value='20'> |
| | | php_admin_value open_basedir <tmpl_var name='document_root'>/web:<tmpl_var name='document_root'>/tmp:/usr/share/php5 |
| | | </tmpl_if> |
| | | </tmpl_if> |
| | | <tmpl_if name='php' op='==' value='suphp'> |
| | | suPHP_Engine on |
| | | # suPHP_UserGroup <tmpl_var name='system_user'> <tmpl_var name='system_group'> |
| | | AddHandler x-httpd-suphp .php .php3 .php4 .php5 |
| | | suPHP_AddHandler x-httpd-suphp |
| | | </tmpl_if> |
| | | <tmpl_if name='php' op='==' value='cgi'> |
| | | # php as cgi enabled |
| | | ScriptAlias /php5-cgi <tmpl_var name='cgi_starter_path'><tmpl_var name='cgi_starter_script'> |
| | | Action php5-cgi /php5-cgi |
| | | AddHandler php5-cgi .php .php3 .php4 .php5 |
| | | <Directory {tmpl_var name='cgi_starter_path'}> |
| | | Order allow,deny |
| | | Allow from all |
| | | </Directory> |
| | | </tmpl_if> |
| | | <tmpl_if name='php' op='==' value='fast-cgi'> |
| | | # php as fast-cgi enabled |
| | | <Directory {tmpl_var name='web_document_root_www'}> |
| | | AddHandler fcgid-script .php .php3 .php4 .php5 |
| | | FCGIWrapper <tmpl_var name='fastcgi_starter_path'><tmpl_var name='fastcgi_starter_script'> .php |
| | | Options +ExecCGI |
| | | AllowOverride all |
| | | Order allow,deny |
| | | Allow from all |
| | | </Directory> |
| | | </tmpl_if> |
| | | <tmpl_if name="rewrite_enabled"> |
| | | |
| | | RewriteEngine on |
| | | <tmpl_loop name="redirects"> |
| | | RewriteCond %{HTTP_HOST} ^<tmpl_var name='rewrite_domain'> [NC] |
| | | RewriteRule ^/(.*)$ <tmpl_var name='rewrite_target'>$1 <tmpl_var name='rewrite_type'> |
| | | </tmpl_loop> |
| | | </tmpl_if> |
| | | |
| | | <tmpl_var name='apache_directives'> |
| | | </VirtualHost> |
| | | </IfModule> |
| | | |
| | | </tmpl_if> |
| | |
| | | $tstamp = date("Y-m"); |
| | | |
| | | $sql = "SELECT * FROM mail_traffic WHERE month = '$tstamp' AND mailuser_id = ".$rec["mailuser_id"]; |
| | | $tr = $app->db->queryOneRecord($sql); |
| | | $tr = $app->dbmaster->queryOneRecord($sql); |
| | | |
| | | $mail_traffic += $tr["traffic"]; |
| | | if($tr["traffic_id"] > 0) { |
| | |
| | | } else { |
| | | $sql = "INSERT INTO mail_traffic (month,mailuser_id,traffic) VALUES ('$tstamp',".$rec["mailuser_id"].",$mail_traffic)"; |
| | | } |
| | | $app->db->query($sql); |
| | | $app->dbmaster->query($sql); |
| | | echo $sql; |
| | | |
| | | } |
New file |
| | |
| | | <?php |
| | | |
| | | /* |
| | | Copyright (c) 2007, Till Brehm, projektfarm Gmbh |
| | | Modified 2009, Marius Cramer, pixcept KG |
| | | All rights reserved. |
| | | |
| | | Redistribution and use in source and binary forms, with or without modification, |
| | | are permitted provided that the following conditions are met: |
| | | |
| | | * Redistributions of source code must retain the above copyright notice, |
| | | this list of conditions and the following disclaimer. |
| | | * Redistributions in binary form must reproduce the above copyright notice, |
| | | this list of conditions and the following disclaimer in the documentation |
| | | and/or other materials provided with the distribution. |
| | | * Neither the name of ISPConfig nor the names of its contributors |
| | | may be used to endorse or promote products derived from this software without |
| | | specific prior written permission. |
| | | |
| | | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND |
| | | ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED |
| | | WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. |
| | | IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, |
| | | INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, |
| | | BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, |
| | | DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY |
| | | OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING |
| | | NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, |
| | | EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
| | | */ |
| | | |
| | | class cron_module { |
| | | |
| | | var $module_name = 'cron_module'; |
| | | var $class_name = 'cron_module'; |
| | | var $actions_available = array( 'cron_insert', |
| | | 'cron_update', |
| | | 'cron_delete'); |
| | | |
| | | //* This function is called during ispconfig installation to determine |
| | | // if a symlink shall be created for this plugin. |
| | | function onInstall() { |
| | | global $conf; |
| | | |
| | | return true; |
| | | |
| | | } |
| | | |
| | | /* |
| | | This function is called when the module is loaded |
| | | */ |
| | | |
| | | function onLoad() { |
| | | global $app; |
| | | |
| | | /* |
| | | Annonce the actions that where provided by this module, so plugins |
| | | can register on them. |
| | | */ |
| | | |
| | | $app->plugins->announceEvents($this->module_name,$this->actions_available); |
| | | |
| | | /* |
| | | As we want to get notified of any changes on several database tables, |
| | | we register for them. |
| | | |
| | | The following function registers the function "functionname" |
| | | to be executed when a record for the table "dbtable" is |
| | | processed in the sys_datalog. "classname" is the name of the |
| | | class that contains the function functionname. |
| | | */ |
| | | |
| | | $app->modules->registerTableHook('cron',$this->module_name,'process'); |
| | | |
| | | } |
| | | |
| | | /* |
| | | This function is called when a change in one of the registered tables is detected. |
| | | The function then raises the events for the plugins. |
| | | */ |
| | | |
| | | function process($tablename,$action,$data) { |
| | | global $app; |
| | | |
| | | switch ($tablename) { |
| | | case 'cron': |
| | | if($action == 'i') $app->plugins->raiseEvent('cron_insert',$data); |
| | | if($action == 'u') $app->plugins->raiseEvent('cron_update',$data); |
| | | if($action == 'd') $app->plugins->raiseEvent('cron_delete',$data); |
| | | break; |
| | | } // end switch |
| | | } // end function |
| | | |
| | | |
| | | } // end class |
| | | |
| | | ?> |
| | |
| | | |
| | | function monitorRkHunter(){ |
| | | /* |
| | | * This monitoring is expensive, so do it only once a hour |
| | | * This monitoring is expensive, so do it only once a day |
| | | */ |
| | | $min = date('i'); |
| | | $hour = date('H'); |
| | |
| | | */ |
| | | |
| | | $app->modules->registerTableHook('web_domain','web_module','process'); |
| | | $app->modules->registerTableHook('shell_user','web_module','process'); |
| | | $app->modules->registerTableHook('ftp_user','web_module','process'); |
| | | $app->modules->registerTableHook('shell_user','web_module','process'); |
| | | |
| | | // Register service |
| | | $app->services->registerService('httpd','web_module','restartHttpd'); |
| | |
| | | @unlink($rand_file); |
| | | $ssl_request = file_get_contents($csr_file); |
| | | $ssl_cert = file_get_contents($crt_file); |
| | | /* Update the DB of the (local) Server */ |
| | | $app->db->query("UPDATE web_domain SET ssl_request = '$ssl_request', ssl_cert = '$ssl_cert' WHERE domain = '".$data["new"]["domain"]."'"); |
| | | $app->db->query("UPDATE web_domain SET ssl_action = '' WHERE domain = '".$data["new"]["domain"]."'"); |
| | | /* Update also the master-DB of the Server-Farm */ |
| | | $app->dbmaster->query("UPDATE web_domain SET ssl_request = '$ssl_request', ssl_cert = '$ssl_cert' WHERE domain = '".$data["new"]["domain"]."'"); |
| | | $app->dbmaster->query("UPDATE web_domain SET ssl_action = '' WHERE domain = '".$data["new"]["domain"]."'"); |
| | | } |
| | | |
| | | //* Save a SSL certificate to disk |
| | |
| | | file_put_contents($csr_file,$data["new"]["ssl_request"]); |
| | | file_put_contents($crt_file,$data["new"]["ssl_cert"]); |
| | | if(trim($data["new"]["ssl_bundle"]) != '') file_put_contents($bundle_file,$data["new"]["ssl_bundle"]); |
| | | /* Update the DB of the (local) Server */ |
| | | $app->db->query("UPDATE web_domain SET ssl_action = '' WHERE domain = '".$data["new"]["domain"]."'"); |
| | | /* Update also the master-DB of the Server-Farm */ |
| | | $app->dbmaster->query("UPDATE web_domain SET ssl_action = '' WHERE domain = '".$data["new"]["domain"]."'"); |
| | | $app->log("Saving SSL Cert for: $domain",LOGLEVEL_DEBUG); |
| | | } |
| | | |
| | |
| | | unlink($csr_file); |
| | | unlink($crt_file); |
| | | unlink($bundle_file); |
| | | /* Update the DB of the (local) Server */ |
| | | $app->db->query("UPDATE web_domain SET ssl_request = '', ssl_cert = '' WHERE domain = '".$data["new"]["domain"]."'"); |
| | | $app->db->query("UPDATE web_domain SET ssl_action = '' WHERE domain = '".$data["new"]["domain"]."'"); |
| | | /* Update also the master-DB of the Server-Farm */ |
| | | $app->dbmaster->query("UPDATE web_domain SET ssl_request = '', ssl_cert = '' WHERE domain = '".$data["new"]["domain"]."'"); |
| | | $app->dbmaster->query("UPDATE web_domain SET ssl_action = '' WHERE domain = '".$data["new"]["domain"]."'"); |
| | | $app->log("Deleting SSL Cert for: $domain",LOGLEVEL_DEBUG); |
| | | } |
| | | |
| | |
| | | // Remove trailing slash |
| | | if(substr($tmp_symlink, -1, 1) == '/') $tmp_symlink = substr($tmp_symlink, 0, -1); |
| | | // create the symlinks, if not exist |
| | | if(!is_link($tmp_symlink)) { |
| | | if(is_link($tmp_symlink)) { |
| | | exec("rm -f ".escapeshellcmd($tmp_symlink)); |
| | | $app->log("Removed Symlink: rm -f ".$tmp_symlink,LOGLEVEL_DEBUG); |
| | | } |
| | |
| | | |
| | | $username = escapeshellcmd($data["new"]["system_user"]); |
| | | if($data["new"]["system_user"] != '' && !$app->system->is_user($data["new"]["system_user"])) { |
| | | exec("useradd -d ".escapeshellcmd($data["new"]["document_root"])." -g $groupname $username -s /bin/false"); |
| | | exec("useradd -d ".escapeshellcmd($data["new"]["document_root"])." -g $groupname -G sshusers $username -s /bin/false"); |
| | | $app->log("Adding the user: $username",LOGLEVEL_DEBUG); |
| | | } |
| | | |
| | |
| | | exec("setquota -T -u $username 604800 604800 -a &> /dev/null"); |
| | | } |
| | | |
| | | |
| | | if($this->action == 'insert') { |
| | | // Chown and chmod the directories below the document root |
| | | exec("chown -R $username:$groupname ".escapeshellcmd($data["new"]["document_root"])); |
| | |
| | | exec("chown root:root ".escapeshellcmd($data["new"]["document_root"])); |
| | | } |
| | | |
| | | // make temp direcory writable for the apache user and the website user |
| | | exec("chmod 777 ".escapeshellcmd($data["new"]["document_root"]."/tmp")); |
| | | |
| | | |
| | | // If the security level is set to high |
| | | if($web_config['security_level'] == 20) { |
| | | |
| | | exec("chmod 711 ".escapeshellcmd($data["new"]["document_root"]."/")); |
| | | exec("chmod 711 ".escapeshellcmd($data["new"]["document_root"])."/*"); |
| | | exec("chmod 710 ".escapeshellcmd($data["new"]["document_root"]."/web")); |
| | | |
| | | // make temp direcory writable for the apache user and the website user |
| | | exec("chmod 777 ".escapeshellcmd($data["new"]["document_root"]."/tmp")); |
| | | |
| | | $command = 'usermod'; |
| | | $command .= ' --groups sshusers'; |
| | | $command .= ' '.escapeshellcmd($data["new"]["system_user"]); |
| | | exec($command); |
| | | |
| | | //* add the apache user to the client group |
| | | $app->system->add_user_to_group($groupname, escapeshellcmd($web_config['user'])); |
| | | |
| | | // If the security Level is set to medium |
| | | } else { |
| | | |
| | | exec("chmod 755 ".escapeshellcmd($data["new"]["document_root"]."/")); |
| | | exec("chmod 755 ".escapeshellcmd($data["new"]["document_root"]."/*")); |
| | | |
| | | // make temp direcory writable for the apache user and the website user |
| | | exec("chmod 777 ".escapeshellcmd($data["new"]["document_root"]."/tmp")); |
| | | } |
| | | |
| | | |
| | | // Create the vhost config file |
| | |
| | | $vhost_data["web_document_root"] = $data["new"]["document_root"]."/web"; |
| | | $vhost_data["web_document_root_www"] = $web_config["website_basedir"]."/".$data["new"]["domain"]."/web"; |
| | | $vhost_data["web_basedir"] = $web_config["website_basedir"]; |
| | | $vhost_data["security_level"] = $web_config["security_level"]; |
| | | |
| | | // Check if a SSL cert exists |
| | | $ssl_dir = $data["new"]["document_root"]."/ssl"; |
| | |
| | | // Rewrite rules |
| | | $rewrite_rules = array(); |
| | | if($data["new"]["redirect_type"] != '') { |
| | | if(substr($data["new"]["redirect_path"],-1) != '/') $data["new"]["redirect_path"] .= '/'; |
| | | $rewrite_rules[] = array( 'rewrite_domain' => $data["new"]["domain"], |
| | | 'rewrite_type' => ($data["new"]["redirect_type"] == 'no')?'':'['.$data["new"]["redirect_type"].']', |
| | | 'rewrite_target' => $data["new"]["redirect_path"]); |
| | |
| | | |
| | | // get alias domains (co-domains and subdomains) |
| | | $aliases = $app->db->queryAllRecords("SELECT * FROM web_domain WHERE parent_domain_id = ".$data["new"]["domain_id"]." AND active = 'y'"); |
| | | switch($data["new"]["subdomain"]) { |
| | | $server_alias = array(); |
| | | switch($data["new"]["subdomain"]) { |
| | | case 'www': |
| | | $server_alias .= 'www.'.$data["new"]["domain"].' '; |
| | | $server_alias[] .= 'www.'.$data["new"]["domain"].' '; |
| | | break; |
| | | case '*': |
| | | $server_alias .= '*.'.$data["new"]["domain"].' '; |
| | | $server_alias[] .= '*.'.$data["new"]["domain"].' '; |
| | | break; |
| | | } |
| | | if(is_array($aliases)) { |
| | | foreach($aliases as $alias) { |
| | | switch($alias["subdomain"]) { |
| | | case 'www': |
| | | $server_alias .= 'www.'.$alias["domain"].' '.$alias["domain"].' '; |
| | | $server_alias[] .= 'www.'.$alias["domain"].' '.$alias["domain"].' '; |
| | | break; |
| | | case '*': |
| | | $server_alias .= '*.'.$alias["domain"].' '.$alias["domain"].' '; |
| | | $server_alias[] .= '*.'.$alias["domain"].' '.$alias["domain"].' '; |
| | | break; |
| | | default: |
| | | $server_alias .= $alias["domain"].' '; |
| | | $server_alias[] .= $alias["domain"].' '; |
| | | break; |
| | | } |
| | | $app->log("Add server alias: $alias[domain]",LOGLEVEL_DEBUG); |
| | | // Rewriting |
| | | if($alias["redirect_type"] != '') { |
| | | if(substr($data["new"]["redirect_path"],-1) != '/') $data["new"]["redirect_path"] .= '/'; |
| | | $rewrite_rules[] = array( 'rewrite_domain' => $alias["domain"], |
| | | 'rewrite_type' => ($alias["redirect_type"] == 'no')?'':'['.$alias["redirect_type"].']', |
| | | 'rewrite_target' => $alias["redirect_path"]); |
| | |
| | | } |
| | | } |
| | | } |
| | | $tpl->setVar('alias',trim($server_alias)); |
| | | |
| | | //* If we have some alias records |
| | | if(count($server_alias) > 0) { |
| | | $server_alias_str = ''; |
| | | $n = 0; |
| | | |
| | | // begin a new ServerAlias line after 30 alias domains |
| | | foreach($server_alias as $tmp_alias) { |
| | | if($n % 30 == 0) $server_alias_str .= "\n ServerAlias "; |
| | | $server_alias_str .= $tmp_alias; |
| | | } |
| | | unset($tmp_alias); |
| | | |
| | | $tpl->setVar('alias',trim($server_alias_str)); |
| | | } else { |
| | | $tpl->setVar('alias',''); |
| | | } |
| | | |
| | | if(count($rewrite_rules) > 0) { |
| | | $tpl->setVar('rewrite_enabled',1); |
| | | } else { |
| | |
| | | $fcgi_tpl->setVar('php_fcgi_children',$fastcgi_config["fastcgi_children"]); |
| | | $fcgi_tpl->setVar('php_fcgi_max_requests',$fastcgi_config["fastcgi_max_requests"]); |
| | | $fcgi_tpl->setVar('php_fcgi_bin',$fastcgi_config["fastcgi_bin"]); |
| | | $fcgi_tpl->setVar('security_level',$web_config["security_level"]); |
| | | |
| | | $fcgi_starter_script = escapeshellcmd($fastcgi_starter_path.$fastcgi_config["fastcgi_starter_script"]); |
| | | file_put_contents($fcgi_starter_script,$fcgi_tpl->grab()); |
| | |
| | | // This will NOT work! |
| | | //$cgi_tpl->setVar('open_basedir', "/var/www/" . $data["new"]["domain"]); |
| | | $cgi_tpl->setVar('php_cgi_bin',$cgi_config["cgi_bin"]); |
| | | $cgi_tpl->setVar('security_level',$web_config["security_level"]); |
| | | |
| | | $cgi_starter_script = escapeshellcmd($cgi_starter_path.$cgi_config["cgi_starter_script"]); |
| | | file_put_contents($cgi_starter_script,$cgi_tpl->grab()); |
| | |
| | | } |
| | | |
| | | //* Create .htaccess and .htpasswd file for website statistics |
| | | if(!is_file($data["new"]["document_root"].'/web/stats/.htaccess')) { |
| | | if(!is_file($data["new"]["document_root"].'/web/stats/.htaccess') or $data["old"]["document_root"] != $data["new"]["document_root"]) { |
| | | if(!is_dir($data["new"]["document_root"].'/web/stats')) mkdir($data["new"]["document_root"].'/web/stats'); |
| | | $ht_file = "AuthType Basic\nAuthName \"Members Only\"\nAuthUserFile ".$data["new"]["document_root"]."/.htpasswd_stats\n<limit GET PUT POST>\nrequire valid-user\n</limit>"; |
| | | file_put_contents($data["new"]["document_root"].'/web/stats/.htaccess',$ht_file); |
| | |
| | | // request a httpd reload when all records have been processed |
| | | $app->services->restartServiceDelayed('httpd','reload'); |
| | | |
| | | //* Unset action to clean it for next processed vhost. |
| | | $this->action = ''; |
| | | |
| | | } |
| | | |
| | | function delete($event_name,$data) { |
New file |
| | |
| | | <?php |
| | | |
| | | /* |
| | | Copyright (c) 2007, Till Brehm, projektfarm Gmbh |
| | | Modified 2009, Marius Cramer, pixcept KG |
| | | All rights reserved. |
| | | |
| | | Redistribution and use in source and binary forms, with or without modification, |
| | | are permitted provided that the following conditions are met: |
| | | |
| | | * Redistributions of source code must retain the above copyright notice, |
| | | this list of conditions and the following disclaimer. |
| | | * Redistributions in binary form must reproduce the above copyright notice, |
| | | this list of conditions and the following disclaimer in the documentation |
| | | and/or other materials provided with the distribution. |
| | | * Neither the name of ISPConfig nor the names of its contributors |
| | | may be used to endorse or promote products derived from this software without |
| | | specific prior written permission. |
| | | |
| | | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND |
| | | ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED |
| | | WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. |
| | | IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, |
| | | INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, |
| | | BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, |
| | | DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY |
| | | OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING |
| | | NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, |
| | | EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
| | | */ |
| | | |
| | | class cron_jailkit_plugin { |
| | | |
| | | //* $plugin_name and $class_name have to be the same then the name of this class |
| | | var $plugin_name = 'cron_jailkit_plugin'; |
| | | var $class_name = 'cron_jailkit_plugin'; |
| | | |
| | | //* This function is called during ispconfig installation to determine |
| | | // if a symlink shall be created for this plugin. |
| | | function onInstall() { |
| | | global $conf; |
| | | |
| | | if($conf['services']['web'] == true) { |
| | | return true; |
| | | } else { |
| | | return false; |
| | | } |
| | | |
| | | } |
| | | |
| | | |
| | | /* |
| | | This function is called when the plugin is loaded |
| | | */ |
| | | |
| | | function onLoad() { |
| | | global $app; |
| | | |
| | | /* |
| | | Register for the events |
| | | */ |
| | | |
| | | $app->plugins->registerEvent('cron_insert', $this->plugin_name, 'insert'); |
| | | $app->plugins->registerEvent('cron_update', $this->plugin_name, 'update'); |
| | | $app->plugins->registerEvent('cron_delete', $this->plugin_name, 'delete'); |
| | | |
| | | } |
| | | |
| | | //* This function is called, when a cron job is inserted in the database |
| | | function insert($event_name,$data) { |
| | | global $app, $conf; |
| | | |
| | | if($data["new"]["parent_domain_id"] == '') { |
| | | $app->log("Parent domain not set",LOGLEVEL_WARN); |
| | | return 0; |
| | | } |
| | | |
| | | //* get data from web |
| | | $parent_domain = $app->db->queryOneRecord("SELECT `domain_id`, `system_user`, `system_group`, `document_root`, `domain` FROM `web_domain` WHERE `domain_id` = ".intval($data["new"]["parent_domain_id"])); |
| | | if(!$parent_domain["domain_id"]) { |
| | | $app->log("Parent domain not found",LOGLEVEL_WARN); |
| | | return 0; |
| | | } elseif($parent_domain["system_user"] == 'root' or $parent_domain["system_group"] == 'root') { |
| | | $app->log("Websites (and Crons) can not be owned by the root user or group.",LOGLEVEL_WARN); |
| | | return 0; |
| | | } |
| | | |
| | | $app->uses('system'); |
| | | |
| | | if($app->system->is_user($parent_domain['system_user'])) { |
| | | |
| | | /** |
| | | * Setup Jailkit Chroot System If Enabled |
| | | */ |
| | | if ($data['new']['type'] == "chrooted") |
| | | { |
| | | // load the server configuration options |
| | | $app->uses("getconf"); |
| | | $this->data = $data; |
| | | $this->app = $app; |
| | | $this->jailkit_config = $app->getconf->get_server_config($conf["server_id"], 'jailkit'); |
| | | $this->parent_domain = $parent_domain; |
| | | |
| | | $this->_setup_jailkit_chroot(); |
| | | |
| | | //$command .= 'usermod -U '.escapeshellcmd($parent_domain['system_user']); |
| | | //exec($command); |
| | | |
| | | $this->_add_jailkit_user(); |
| | | } |
| | | |
| | | $app->log("Jailkit Plugin (Cron) -> insert username:".$parent_domain['system_user'],LOGLEVEL_DEBUG); |
| | | |
| | | } else { |
| | | $app->log("Jailkit Plugin (Cron) -> insert username:".$parent_domain['system_user']." skipped, the user does not exist.",LOGLEVEL_WARN); |
| | | } |
| | | |
| | | } |
| | | |
| | | //* This function is called, when a cron job is updated in the database |
| | | function update($event_name,$data) { |
| | | global $app, $conf; |
| | | |
| | | if($data["new"]["parent_domain_id"] == '') { |
| | | $app->log("Parent domain not set",LOGLEVEL_WARN); |
| | | return 0; |
| | | } |
| | | //* get data from web |
| | | $parent_domain = $app->db->queryOneRecord("SELECT `domain_id`, `system_user`, `system_group`, `document_root`, `domain` FROM `web_domain` WHERE `domain_id` = ".intval($data["new"]["parent_domain_id"])); |
| | | |
| | | if(!$parent_domain["domain_id"]) { |
| | | $app->log("Parent domain not found",LOGLEVEL_WARN); |
| | | return 0; |
| | | } elseif($parent_domain["system_user"] == 'root' or $parent_domain["system_group"] == 'root') { |
| | | $app->log("Websites (and Crons) can not be owned by the root user or group.",LOGLEVEL_WARN); |
| | | return 0; |
| | | } |
| | | |
| | | $app->uses('system'); |
| | | |
| | | if($app->system->is_user($parent_domain['system_user'])) { |
| | | |
| | | /** |
| | | * Setup Jailkit Chroot System If Enabled |
| | | */ |
| | | if ($data['new']['type'] == "chrooted") |
| | | { |
| | | $app->log("Jailkit Plugin (Cron) -> setting up jail", LOGLEVEL_DEBUG); |
| | | // load the server configuration options |
| | | $app->uses("getconf"); |
| | | $this->data = $data; |
| | | $this->app = $app; |
| | | $this->jailkit_config = $app->getconf->get_server_config($conf["server_id"], 'jailkit'); |
| | | $this->parent_domain = $parent_domain; |
| | | |
| | | $this->_setup_jailkit_chroot(); |
| | | $this->_add_jailkit_user(); |
| | | } |
| | | |
| | | $app->log("Jailkit Plugin (Cron) -> update username:".$parent_domain['system_user'],LOGLEVEL_DEBUG); |
| | | |
| | | } else { |
| | | $app->log("Jailkit Plugin (Cron) -> update username:".$parent_domain['system_user']." skipped, the user does not exist.",LOGLEVEL_WARN); |
| | | } |
| | | |
| | | } |
| | | |
| | | //* This function is called, when a cron job is deleted in the database |
| | | function delete($event_name,$data) { |
| | | global $app, $conf; |
| | | |
| | | //* nothing to do here! |
| | | |
| | | } |
| | | |
| | | function _setup_jailkit_chroot() |
| | | { |
| | | //check if the chroot environment is created yet if not create it with a list of program sections from the config |
| | | if (!is_dir($this->parent_domain['document_root'].'/etc/jailkit')) |
| | | { |
| | | $command = '/usr/local/ispconfig/server/scripts/create_jailkit_chroot.sh'; |
| | | $command .= ' '.escapeshellcmd($this->parent_domain['document_root']); |
| | | $command .= ' \''.$this->jailkit_config['jailkit_chroot_app_sections'].'\''; |
| | | exec($command); |
| | | |
| | | $this->app->log("Added jailkit chroot with command: ".$command,LOGLEVEL_DEBUG); |
| | | |
| | | //$this->_add_jailkit_programs(); // done later on |
| | | |
| | | $this->app->load('tpl'); |
| | | |
| | | $tpl = new tpl(); |
| | | $tpl->newTemplate("bash.bashrc.master"); |
| | | |
| | | $tpl->setVar('jailkit_chroot',true); |
| | | $tpl->setVar('domain',$this->parent_domain['domain']); |
| | | $tpl->setVar('home_dir',$this->_get_home_dir("")); |
| | | |
| | | $bashrc = escapeshellcmd($this->parent_domain['document_root']).'/etc/bash.bashrc'; |
| | | if(@is_file($bashrc)) exec('rm '.$bashrc); |
| | | |
| | | file_put_contents($bashrc,$tpl->grab()); |
| | | unset($tpl); |
| | | |
| | | $this->app->log("Added bashrc scrpt : ".$bashrc,LOGLEVEL_DEBUG); |
| | | |
| | | $tpl = new tpl(); |
| | | $tpl->newTemplate("motd.master"); |
| | | |
| | | $tpl->setVar('domain',$this->parent_domain['domain']); |
| | | |
| | | $motd = escapeshellcmd($this->parent_domain['document_root']).'/var/run/motd'; |
| | | if(@is_file($motd)) exec('rm '.$motd); |
| | | |
| | | file_put_contents($motd,$tpl->grab()); |
| | | |
| | | } |
| | | $this->_add_jailkit_programs(); |
| | | } |
| | | |
| | | function _add_jailkit_programs() |
| | | { |
| | | //copy over further programs and its libraries |
| | | $command = '/usr/local/ispconfig/server/scripts/create_jailkit_programs.sh'; |
| | | $command .= ' '.escapeshellcmd($this->parent_domain['document_root']); |
| | | $command .= ' \''.$this->jailkit_config['jailkit_chroot_app_programs'].'\''; |
| | | exec($command); |
| | | |
| | | $this->app->log("Added programs to jailkit chroot with command: ".$command,LOGLEVEL_DEBUG); |
| | | |
| | | $command = '/usr/local/ispconfig/server/scripts/create_jailkit_programs.sh'; |
| | | $command .= ' '.escapeshellcmd($this->parent_domain['document_root']); |
| | | $command .= ' \''.$this->jailkit_config['jailkit_chroot_cron_programs'].'\''; |
| | | exec($command); |
| | | |
| | | $this->app->log("Added cron programs to jailkit chroot with command: ".$command,LOGLEVEL_DEBUG); |
| | | } |
| | | |
| | | function _add_jailkit_user() |
| | | { |
| | | //add the user to the chroot |
| | | $jailkit_chroot_userhome = $this->_get_home_dir($this->parent_domain['system_user']); |
| | | |
| | | if(!is_dir($this->parent_domain['document_root'].'/etc')) mkdir($this->parent_domain['document_root'].'/etc'); |
| | | if(!is_file($this->parent_domain['document_root'].'/etc/passwd')) exec('touch '.$this->parent_domain['document_root'].'/etc/passwd'); |
| | | |
| | | // IMPORTANT! |
| | | // ALWAYS create the user. Even if the user was created before |
| | | // if we check if the user exists, then a update (no shell -> jailkit) will not work |
| | | // and the user has FULL ACCESS to the root of the server! |
| | | $command = '/usr/local/ispconfig/server/scripts/create_jailkit_user.sh'; |
| | | $command .= ' '.escapeshellcmd($this->parent_domain['system_user']); |
| | | $command .= ' '.escapeshellcmd($this->parent_domain['document_root']); |
| | | $command .= ' '.$jailkit_chroot_userhome; |
| | | $command .= ' '.escapeshellcmd("/bin/bash"); |
| | | exec($command); |
| | | |
| | | $this->app->log("Added jailkit user to chroot with command: ".$command,LOGLEVEL_DEBUG); |
| | | |
| | | exec("mkdir -p ".escapeshellcmd($this->parent_domain['document_root'].$jailkit_chroot_userhome)); |
| | | } |
| | | |
| | | function _get_home_dir($username) |
| | | { |
| | | return str_replace("[username]",escapeshellcmd($username),$this->jailkit_config["jailkit_chroot_home"]); |
| | | } |
| | | |
| | | |
| | | |
| | | } // end class |
| | | |
| | | ?> |
New file |
| | |
| | | <?php |
| | | |
| | | /* |
| | | Copyright (c) 2007 - 2009, Till Brehm, projektfarm Gmbh |
| | | Modified 2009, Marius Cramer, pixcept KG |
| | | All rights reserved. |
| | | |
| | | Redistribution and use in source and binary forms, with or without modification, |
| | | are permitted provided that the following conditions are met: |
| | | |
| | | * Redistributions of source code must retain the above copyright notice, |
| | | this list of conditions and the following disclaimer. |
| | | * Redistributions in binary form must reproduce the above copyright notice, |
| | | this list of conditions and the following disclaimer in the documentation |
| | | and/or other materials provided with the distribution. |
| | | * Neither the name of ISPConfig nor the names of its contributors |
| | | may be used to endorse or promote products derived from this software without |
| | | specific prior written permission. |
| | | |
| | | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND |
| | | ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED |
| | | WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. |
| | | IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, |
| | | INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, |
| | | BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, |
| | | DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY |
| | | OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING |
| | | NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, |
| | | EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
| | | */ |
| | | |
| | | class cron_plugin { |
| | | |
| | | var $plugin_name = 'cron_plugin'; |
| | | var $class_name = 'cron_plugin'; |
| | | |
| | | // private variables |
| | | var $action = ''; |
| | | |
| | | //* This function is called during ispconfig installation to determine |
| | | // if a symlink shall be created for this plugin. |
| | | function onInstall() { |
| | | global $conf; |
| | | |
| | | if($conf['services']['web'] == true) { |
| | | return true; |
| | | } else { |
| | | return false; |
| | | } |
| | | |
| | | } |
| | | |
| | | |
| | | /* |
| | | This function is called when the plugin is loaded |
| | | */ |
| | | |
| | | function onLoad() { |
| | | global $app; |
| | | |
| | | /* |
| | | Register for the events |
| | | */ |
| | | |
| | | $app->plugins->registerEvent('cron_insert',$this->plugin_name,'insert'); |
| | | $app->plugins->registerEvent('cron_update',$this->plugin_name,'update'); |
| | | $app->plugins->registerEvent('cron_delete',$this->plugin_name,'delete'); |
| | | |
| | | } |
| | | |
| | | function insert($event_name,$data) { |
| | | global $app, $conf; |
| | | |
| | | $this->action = 'insert'; |
| | | // just run the update function |
| | | $this->update($event_name,$data); |
| | | |
| | | } |
| | | |
| | | |
| | | function update($event_name,$data) { |
| | | global $app, $conf; |
| | | |
| | | if($this->action != 'insert') $this->action = 'update'; |
| | | |
| | | // load the server configuration options |
| | | $app->uses("getconf"); |
| | | |
| | | if($data["new"]["parent_domain_id"] == '') { |
| | | $app->log("Parent domain not set",LOGLEVEL_WARN); |
| | | return 0; |
| | | } |
| | | |
| | | //* get data from web |
| | | $parent_domain = $app->db->queryOneRecord("SELECT `domain_id`, `system_user`, `system_group`, `document_root`, `hd_quota` FROM `web_domain` WHERE `domain_id` = ".intval($data["new"]["parent_domain_id"])); |
| | | if(!$parent_domain["domain_id"]) { |
| | | $app->log("Parent domain not found",LOGLEVEL_WARN); |
| | | return 0; |
| | | } elseif($parent_domain["system_user"] == 'root' or $parent_domain["system_group"] == 'root') { |
| | | $app->log("Websites (and Crons) can not be owned by the root user or group.",LOGLEVEL_WARN); |
| | | return 0; |
| | | } |
| | | |
| | | // Get the client ID |
| | | $client = $app->dbmaster->queryOneRecord("SELECT client_id FROM sys_group WHERE sys_group.groupid = ".intval($data["new"]["sys_groupid"])); |
| | | $client_id = intval($client["client_id"]); |
| | | unset($client); |
| | | |
| | | // Create group and user, if not exist |
| | | $app->uses("system"); |
| | | |
| | | $groupname = escapeshellcmd($parent_domain["system_group"]); |
| | | if($parent_domain["system_group"] != '' && !$app->system->is_group($parent_domain["system_group"])) { |
| | | exec("groupadd $groupname"); |
| | | $app->log("Adding the group: $groupname",LOGLEVEL_DEBUG); |
| | | } |
| | | |
| | | $username = escapeshellcmd($parent_domain["system_user"]); |
| | | if($parent_domain["system_user"] != '' && !$app->system->is_user($parent_domain["system_user"])) { |
| | | exec("useradd -d ".escapeshellcmd($parent_domain["document_root"])." -g $groupname $username -s /bin/false"); |
| | | $app->log("Adding the user: $username",LOGLEVEL_DEBUG); |
| | | } |
| | | |
| | | // Set the quota for the user |
| | | if($username != '' && $app->system->is_user($username)) { |
| | | if($parent_domain["hd_quota"] > 0){ |
| | | $blocks_soft = $parent_domain["hd_quota"] * 1024; |
| | | $blocks_hard = $blocks_soft + 1024; |
| | | } else { |
| | | $blocks_soft = $blocks_hard = 0; |
| | | } |
| | | exec("setquota -u $username $blocks_soft $blocks_hard 0 0 -a &> /dev/null"); |
| | | exec("setquota -T -u $username 604800 604800 -a &> /dev/null"); |
| | | } |
| | | |
| | | // make temp direcory writable for the apache user and the website user |
| | | exec("chmod 777 ".escapeshellcmd($parent_domain["document_root"]."/tmp")); |
| | | |
| | | /** TODO READ CRON MASTER **/ |
| | | |
| | | $this->parent_domain = $parent_domain; |
| | | $this->_write_crontab(); |
| | | |
| | | $this->action = ''; |
| | | |
| | | } |
| | | |
| | | function delete($event_name,$data) { |
| | | global $app, $conf; |
| | | |
| | | //* get data from web |
| | | $parent_domain = $app->db->queryOneRecord("SELECT `domain_id`, `system_user`, `system_group`, `document_root`, `hd_quota` FROM `web_domain` WHERE `domain_id` = ".intval($data["old"]["parent_domain_id"])); |
| | | if(!$parent_domain["domain_id"]) { |
| | | $app->log("Parent domain not found",LOGLEVEL_WARN); |
| | | return 0; |
| | | } |
| | | |
| | | // Get the client ID |
| | | $client = $app->dbmaster->queryOneRecord("SELECT client_id FROM sys_group WHERE sys_group.groupid = ".intval($data["old"]["sys_groupid"])); |
| | | $client_id = intval($client["client_id"]); |
| | | unset($client); |
| | | |
| | | $this->parent_domain = $parent_domain; |
| | | $this->_write_crontab(); |
| | | } |
| | | |
| | | function _write_crontab() { |
| | | global $app, $conf; |
| | | |
| | | //* load the server configuration options |
| | | $app->uses("getconf"); |
| | | |
| | | $cron_config = $app->getconf->get_server_config($conf["server_id"], 'cron'); |
| | | |
| | | //* try to find customer's mail address |
| | | |
| | | /** TODO: add possibility for client to choose mail notification! **/ |
| | | $cron_content = "MAILTO=''\n\n"; |
| | | $chr_cron_content = "MAILTO=''\n\n"; |
| | | $chr_cron_content .= "SHELL='/usr/sbin/jk_chrootsh'\n\n"; |
| | | |
| | | $cmd_count = 0; |
| | | $chr_cmd_count = 0; |
| | | |
| | | //* read all active cron jobs from database and write them to file |
| | | $cron_jobs = $app->db->queryAllRecords("SELECT `run_min`, `run_hour`, `run_mday`, `run_month`, `run_wday`, `command`, `type` FROM `cron` WHERE `parent_domain_id` = ".intval($this->parent_domain["domain_id"]) . " AND `active` = 'y'"); |
| | | if($cron_jobs && count($cron_jobs) > 0) { |
| | | foreach($cron_jobs as $job) { |
| | | $command = "{$job['run_min']}\t{$job['run_hour']}\t{$job['run_mday']}\t{$job['run_month']}\t{$job['run_wday']}"; |
| | | $command .= "\t{$this->parent_domain['system_user']}"; //* running as user |
| | | if($job['type'] == 'url') { |
| | | $command .= "\t{$cron_config['wget']} -q -O /dev/null " . escapeshellarg($job['command']) . " >/dev/null 2>&1"; |
| | | } else { |
| | | if($job['type'] == 'chrooted') { |
| | | if(substr($job['command'], 0, strlen($this->parent_domain['document_root'])) == $this->parent_domain['document_root']) { |
| | | //* delete the unneeded path part |
| | | $job['command'] = substr($job['command'], strlen($this->parent_domain['document_root'])); |
| | | } |
| | | } |
| | | |
| | | $command .= "\t"; |
| | | if(substr($job['command'], 0, 1) != "/") $command .= $this->parent_domain['document_root']; |
| | | $command .= $job['command']; |
| | | } |
| | | |
| | | if($job['type'] == 'chrooted') { |
| | | $chr_cron_content .= $command . "\n"; |
| | | $chr_cmd_count++; |
| | | } else { |
| | | $cron_content .= $command . "\n"; |
| | | $cmd_count++; |
| | | } |
| | | } |
| | | } |
| | | |
| | | $cron_file = escapeshellcmd($cron_config["crontab_dir"].'/ispc_'.$this->parent_domain["system_user"]); |
| | | if($cmd_count > 0) { |
| | | file_put_contents($cron_file, $cron_content); |
| | | $app->log("Wrote Cron file $cron_file with content:\n$cron_content",LOGLEVEL_DEBUG); |
| | | } else { |
| | | @unlink($cron_file); |
| | | $app->log("Deleted Cron file $cron_file",LOGLEVEL_DEBUG); |
| | | } |
| | | |
| | | $cron_file = escapeshellcmd($cron_config["crontab_dir"].'/ispc_chrooted_'.$this->parent_domain["system_user"]); |
| | | if($chr_cmd_count > 0) { |
| | | file_put_contents($cron_file, $chr_cron_content); |
| | | $app->log("Wrote Cron file $cron_file with content:\n$chr_cron_content",LOGLEVEL_DEBUG); |
| | | } else { |
| | | @unlink($cron_file); |
| | | $app->log("Deleted Cron file $cron_file",LOGLEVEL_DEBUG); |
| | | } |
| | | |
| | | return 0; |
| | | } |
| | | |
| | | } // end class |
| | | |
| | | ?> |
| | |
| | | $ports = explode(',',$data["new"]["tcp_port"]); |
| | | if(is_array($ports)) { |
| | | foreach($ports as $p) { |
| | | $p_int = intval($p); |
| | | if($p_int > 0) $tcp_ports .= $p_int . ' '; |
| | | if(strstr($p,':')) { |
| | | $p_parts = explode(':',$p); |
| | | $p_clean = intval($p_parts[0]).':'.intval($p_parts[1]); |
| | | } else { |
| | | $p_clean = intval($p); |
| | | } |
| | | if($p_int > 0) $tcp_ports .= $p_clean . ' '; |
| | | } |
| | | } |
| | | $tcp_ports = trim($tcp_ports); |
| | |
| | | $ports = explode(',',$data["new"]["udp_port"]); |
| | | if(is_array($ports)) { |
| | | foreach($ports as $p) { |
| | | $p_int = intval($p); |
| | | if($p_int > 0) $udp_ports .= $p_int . ' '; |
| | | if(strstr($p,':')) { |
| | | $p_parts = explode(':',$p); |
| | | $p_clean = intval($p_parts[0]).':'.intval($p_parts[1]); |
| | | } else { |
| | | $p_clean = intval($p); |
| | | } |
| | | if($p_int > 0) $udp_ports .= $p_clean . ' '; |
| | | } |
| | | } |
| | | $udp_ports = trim($udp_ports); |
New file |
| | |
| | | <?php |
| | | |
| | | /* |
| | | Copyright (c) 2007, Till Brehm, projektfarm Gmbh |
| | | All rights reserved. |
| | | |
| | | Redistribution and use in source and binary forms, with or without modification, |
| | | are permitted provided that the following conditions are met: |
| | | |
| | | * Redistributions of source code must retain the above copyright notice, |
| | | this list of conditions and the following disclaimer. |
| | | * Redistributions in binary form must reproduce the above copyright notice, |
| | | this list of conditions and the following disclaimer in the documentation |
| | | and/or other materials provided with the distribution. |
| | | * Neither the name of ISPConfig nor the names of its contributors |
| | | may be used to endorse or promote products derived from this software without |
| | | specific prior written permission. |
| | | |
| | | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND |
| | | ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED |
| | | WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. |
| | | IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, |
| | | INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, |
| | | BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, |
| | | DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY |
| | | OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING |
| | | NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, |
| | | EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
| | | */ |
| | | |
| | | class ftpuser_base_plugin { |
| | | |
| | | var $plugin_name = 'ftpuser_base_plugin'; |
| | | var $class_name = 'ftpuser_base_plugin'; |
| | | |
| | | //* This function is called during ispconfig installation to determine |
| | | // if a symlink shall be created for this plugin. |
| | | function onInstall() { |
| | | global $conf; |
| | | |
| | | if($conf['services']['web'] == true) { |
| | | return true; |
| | | } else { |
| | | return false; |
| | | } |
| | | |
| | | } |
| | | |
| | | |
| | | /* |
| | | This function is called when the plugin is loaded |
| | | */ |
| | | |
| | | function onLoad() { |
| | | global $app; |
| | | |
| | | /* |
| | | Register for the events |
| | | */ |
| | | |
| | | $app->plugins->registerEvent('ftp_user_insert',$this->plugin_name,'insert'); |
| | | $app->plugins->registerEvent('ftp_user_update',$this->plugin_name,'update'); |
| | | $app->plugins->registerEvent('ftp_user_delete',$this->plugin_name,'delete'); |
| | | |
| | | |
| | | } |
| | | |
| | | |
| | | function insert($event_name,$data) { |
| | | global $app, $conf; |
| | | |
| | | if(!is_dir($data['new']['dir'])) { |
| | | $app->log("FTP User directory '".$data['new']['dir']."' does not exist. Creating it now.",LOGLEVEL_DEBUG); |
| | | |
| | | $web = $app->db->queryOneRecord("SELECT * FROM web_domain WHERE domain_id = ".intval($data['new']['parent_domain_id'])); |
| | | |
| | | exec('mkdir -p '.escapeshellcmd($data['new']['dir'])); |
| | | exec('chown '.escapeshellcmd($web["system_user"]).':'.escapeshellcmd($web['system_group']).' '.$data['new']['dir']); |
| | | |
| | | $app->log("Added ftpuser_dir: ".$data['new']['dir'],LOGLEVEL_DEBUG); |
| | | } |
| | | |
| | | } |
| | | |
| | | function update($event_name,$data) { |
| | | global $app, $conf; |
| | | |
| | | if(!is_dir($data['new']['dir'])) { |
| | | $app->log("FTP User directory '".$data['new']['dir']."' does not exist. Creating it now.",LOGLEVEL_DEBUG); |
| | | |
| | | $web = $app->db->queryOneRecord("SELECT * FROM web_domain WHERE domain_id = ".intval($data['new']['parent_domain_id'])); |
| | | |
| | | exec('mkdir -p '.escapeshellcmd($data['new']['dir'])); |
| | | exec('chown '.escapeshellcmd($web["system_user"]).':'.escapeshellcmd($web['system_group']).' '.$data['new']['dir']); |
| | | |
| | | $app->log("Added ftpuser_dir: ".$data['new']['dir'],LOGLEVEL_DEBUG); |
| | | } |
| | | } |
| | | |
| | | function delete($event_name,$data) { |
| | | global $app, $conf; |
| | | |
| | | $app->log("Ftpuser:".$data['new']['username']." deleted.",LOGLEVEL_DEBUG); |
| | | |
| | | } |
| | | |
| | | |
| | | |
| | | |
| | | } // end class |
| | | |
| | | ?> |
| | |
| | | exec("su -c 'mkdir -p ".escapeshellcmd($base_path)."' ".$mail_config['mailuser_name']); |
| | | $app->log('Created Directory: '.$base_path,LOGLEVEL_DEBUG); |
| | | } |
| | | |
| | | //* When the mail user dir exists but it is not a valid maildir, remove it |
| | | if(!empty($maildomain_path) && is_dir($maildomain_path) && !is_dir($maildomain_path.'/new') && !is_dir($maildomain_path.'/cur')) { |
| | | exec("su -c 'rm -rf ".escapeshellcmd($data['new']['maildir'])."' vmail"); |
| | | $app->log("Removed invalid maildir and rebuild it: ".escapeshellcmd($data['new']['maildir']),LOGLEVEL_WARN); |
| | | } |
| | | |
| | | //* Create the maildir, if it doesn not exist, set permissions, set quota. |
| | | if(!empty($maildomain_path) && !is_dir($maildomain_path)) { |
| | |
| | | } |
| | | |
| | | //* Set the maildir quota |
| | | exec("su -c 'maildirmake -q ".$data['new']['quota']."S ".escapeshellcmd($data['new']['maildir'])."' ".$mail_config['mailuser_name']); |
| | | $app->log('Set Maildir quota: '."su -c 'maildirmake -q ".$data['new']['quota']."S ".escapeshellcmd($data['new']['maildir'])."' ".$mail_config['mailuser_name'],LOGLEVEL_DEBUG); |
| | | if(is_dir($data['new']['maildir'].'/new')) { |
| | | exec("su -c 'maildirmake -q ".$data['new']['quota']."S ".escapeshellcmd($data['new']['maildir'])."' ".$mail_config['mailuser_name']); |
| | | $app->log('Set Maildir quota: '."su -c 'maildirmake -q ".$data['new']['quota']."S ".escapeshellcmd($data['new']['maildir'])."' ".$mail_config['mailuser_name'],LOGLEVEL_DEBUG); |
| | | } |
| | | } |
| | | |
| | | function user_update($event_name,$data) { |
| | |
| | | $mail_config = $app->getconf->get_server_config($conf["server_id"], 'mail'); |
| | | |
| | | // Create the maildir, if it does not exist |
| | | /* |
| | | if(!is_dir($data['new']['maildir'])) { |
| | | exec('mkdir -p '.escapeshellcmd($data['new']['maildir'])); |
| | | exec('chown '.$mail_config['mailuser_name'].':'.$mail_config['mailuser_group'].' '.escapeshellcmd($data['new']['maildir'])); |
| | | $app->log('Created Maildir: '.$data['new']['maildir'],LOGLEVEL_DEBUG); |
| | | } |
| | | */ |
| | | |
| | | $maildomain_path = $data['new']['maildir']; |
| | | $tmp_basepath = $data['new']['maildir']; |
| | | $tmp_basepath_parts = explode('/',$tmp_basepath); |
| | | unset($tmp_basepath_parts[count($tmp_basepath_parts)-1]); |
| | | $base_path = implode('/',$tmp_basepath_parts); |
| | | |
| | | //* Create the mail domain directory, if it does not exist |
| | | if(!empty($base_path) && !is_dir($base_path)) { |
| | | exec("su -c 'mkdir -p ".escapeshellcmd($base_path)."' ".$mail_config['mailuser_name']); |
| | | $app->log('Created Directory: '.$base_path,LOGLEVEL_DEBUG); |
| | | } |
| | | |
| | | //* When the mail user dir exists but it is not a valid maildir, remove it |
| | | if(!empty($maildomain_path) && is_dir($maildomain_path) && !is_dir($maildomain_path.'/new') && !is_dir($maildomain_path.'/cur')) { |
| | | exec("su -c 'rm -rf ".escapeshellcmd($data['new']['maildir'])."' vmail"); |
| | | $app->log("Removed invalid maildir and rebuild it: ".escapeshellcmd($data['new']['maildir']),LOGLEVEL_WARN); |
| | | } |
| | | |
| | | //* Create the maildir, if it doesn not exist, set permissions, set quota. |
| | | if(!empty($maildomain_path) && !is_dir($maildomain_path.'/new')) { |
| | | exec("su -c 'maildirmake ".escapeshellcmd($maildomain_path)."' ".$mail_config['mailuser_name']); |
| | | $app->log("Created Maildir "."su -c 'maildirmake ".escapeshellcmd($maildomain_path)."' ".$mail_config['mailuser_name'],LOGLEVEL_DEBUG); |
| | | exec('chown -R '.$mail_config['mailuser_name'].':'.$mail_config['mailuser_group'].' '.escapeshellcmd($data['new']['maildir'])); |
| | | $app->log("Set ownership on ".escapeshellcmd($data['new']['maildir']),LOGLEVEL_DEBUG); |
| | | //* This is to fix the maildrop quota not being rebuilt after the quota is changed. |
| | | exec("su -c 'maildirmake -q ".$data['new']['quota']."S ".escapeshellcmd($maildomain_path)."' ".$mail_config['mailuser_name']); // Avoid maildirmake quota bug, see debian bug #214911 |
| | | $app->log('Updated Maildir quota: '."su -c 'maildirmake -q ".$data['new']['quota']."S ".escapeshellcmd($maildomain_path)."' ".$mail_config['mailuser_name'],LOGLEVEL_DEBUG); |
| | | } |
| | | |
| | | // Move mailbox, if domain has changed and delete old mailbox |
| | |
| | | $app->log('Moved Maildir from: '.$data['old']['maildir'].' to '.$data['new']['maildir'],LOGLEVEL_DEBUG); |
| | | } |
| | | //This is to fix the maildrop quota not being rebuilt after the quota is changed. |
| | | exec("su -c 'maildirmake -q ".$data['new']['quota']."S ".escapeshellcmd($data['new']['maildir'])."' ".$mail_config['mailuser_name']); |
| | | $app->log('Created Maildir: '."su -c 'maildirmake -q ".$data['new']['quota']."S ".escapeshellcmd($data['new']['maildir'])."' ".$mail_config['mailuser_name'],LOGLEVEL_DEBUG); |
| | | if(is_dir($data['new']['maildir'].'/new')) { |
| | | exec("su -c 'maildirmake -q ".$data['new']['quota']."S ".escapeshellcmd($data['new']['maildir'])."' ".$mail_config['mailuser_name']); |
| | | $app->log('Updated Maildir quota: '."su -c 'maildirmake -q ".$data['new']['quota']."S ".escapeshellcmd($data['new']['maildir'])."' ".$mail_config['mailuser_name'],LOGLEVEL_DEBUG); |
| | | } |
| | | } |
| | | |
| | | function user_delete($event_name,$data) { |
| | |
| | | |
| | | } |
| | | |
| | | function process_host_list($action, $database_name, $database_user, $database_password, $host_list, $link, $database_rename_user = "") { |
| | | global $app; |
| | | |
| | | $action = strtoupper($action); |
| | | |
| | | // set to all hosts if none given |
| | | if(trim($host_list) == "") $host_list = "%"; |
| | | |
| | | // process arrays and comma separated strings |
| | | if(!is_array($host_list)) $host_list = split(",", $host_list); |
| | | |
| | | $success = true; |
| | | |
| | | // loop through hostlist |
| | | foreach($host_list as $db_host) { |
| | | $db_host = trim($db_host); |
| | | |
| | | // check if entry is valid ip address |
| | | $valid = true; |
| | | if(preg_match("/^[0-9]{1,3}(\.)[0-9]{1,3}(\.)[0-9]{1,3}(\.)[0-9]{1,3}$/", $db_host)) { |
| | | $groups = explode(".", $db_host); |
| | | foreach($groups as $group){ |
| | | if($group<0 OR $group>255) |
| | | $valid=false; |
| | | } |
| | | } else { |
| | | $valid = false; |
| | | } |
| | | |
| | | if($valid == false) continue; |
| | | |
| | | if($action == "GRANT") { |
| | | if(!mysql_query("GRANT ALL ON ".mysql_real_escape_string($database_name,$link).".* TO '".mysql_real_escape_string($database_user,$link)."'@'$db_host' IDENTIFIED BY '".mysql_real_escape_string($database_password,$link)."';",$link)) $success = false; |
| | | } elseif($action == "REVOKE") { |
| | | //mysql_query("REVOKE ALL PRIVILEGES ON ".mysql_real_escape_string($database_name,$link).".* FROM '".mysql_real_escape_string($database_user,$link)."';",$link); |
| | | } elseif($action == "DROP") { |
| | | if(!mysql_query("DROP USER '".mysql_real_escape_string($database_user,$link)."'@'$db_host';",$link)) $success = false; |
| | | } elseif($action == "RENAME") { |
| | | if(!mysql_query("RENAME USER '".mysql_real_escape_string($database_user,$link)."'@'$db_host' TO '".mysql_real_escape_string($database_rename_user,$link)."'@'$db_host'",$link)) $success = false; |
| | | } elseif($action == "PASSWORD") { |
| | | if(!mysql_query("SET PASSWORD FOR '".mysql_real_escape_string($database_user,$link)."'@'$db_host' = PASSWORD('".mysql_real_escape_string($database_password,$link)."');",$link)) $success = false; |
| | | } |
| | | } |
| | | |
| | | return $success; |
| | | } |
| | | |
| | | function db_insert($event_name,$data) { |
| | | global $app, $conf; |
| | |
| | | if($data["new"]["active"] == 'y') { |
| | | |
| | | if($data["new"]["remote_access"] == 'y') { |
| | | $db_host = '%'; |
| | | mysql_query("GRANT ALL ON ".mysql_real_escape_string($data["new"]["database_name"],$link).".* TO '".mysql_real_escape_string($data["new"]["database_user"],$link)."'@'$db_host' IDENTIFIED BY '".mysql_real_escape_string($data["new"]["database_password"],$link)."';",$link); |
| | | $this->process_host_list("GRANT", $data["new"]["database_name"], $data["new"]["database_user"], $data["new"]["database_password"], $data["new"]["remote_ips"], $link); |
| | | } |
| | | |
| | | $db_host = 'localhost'; |
| | |
| | | if($data["new"]["active"] == 'y' && $data["old"]["active"] == 'n') { |
| | | |
| | | if($data["new"]["remote_access"] == 'y') { |
| | | $db_host = '%'; |
| | | mysql_query("GRANT ALL ON ".mysql_real_escape_string($data["new"]["database_name"],$link).".* TO '".mysql_real_escape_string($data["new"]["database_user"],$link)."'@'$db_host' IDENTIFIED BY '".mysql_real_escape_string($data["new"]["database_password"],$link)."';",$link); |
| | | $this->process_host_list("GRANT", $data["new"]["database_name"], $data["new"]["database_user"], $data["new"]["database_password"], $data["new"]["remote_ips"], $link); |
| | | } |
| | | |
| | | $db_host = 'localhost'; |
| | |
| | | if($data["new"]["active"] == 'n' && $data["old"]["active"] == 'y') { |
| | | |
| | | if($data["old"]["remote_access"] == 'y') { |
| | | $db_host = '%'; |
| | | mysql_query("DROP USER '".mysql_real_escape_string($data["old"]["database_user"],$link)."'@'$db_host';",$link); |
| | | $this->process_host_list("DROP", "", $data["old"]["database_user"], "", $data["old"]["remote_ips"], $link); |
| | | } |
| | | |
| | | $db_host = 'localhost'; |
| | |
| | | $db_host = 'localhost'; |
| | | mysql_query("RENAME USER '".mysql_real_escape_string($data["old"]["database_user"],$link)."'@'$db_host' TO '".mysql_real_escape_string($data["new"]["database_user"],$link)."'@'$db_host'",$link); |
| | | if($data["old"]["remote_access"] == 'y') { |
| | | $db_host = '%'; |
| | | mysql_query("RENAME USER '".mysql_real_escape_string($data["old"]["database_user"],$link)."'@'$db_host' TO '".mysql_real_escape_string($data["new"]["database_user"],$link)."'@'$db_host'",$link); |
| | | $this->process_host_list("RENAME", "", $data["new"]["database_user"], "", $data["new"]["remote_ips"], $link, $data["new"]["database_user"]); |
| | | } |
| | | $app->log('Renaming mysql user: '.$data["old"]["database_user"].' to '.$data["new"]["database_user"],LOGLEVEL_DEBUG); |
| | | } |
| | |
| | | //mysql_query("REVOKE ALL PRIVILEGES ON ".mysql_real_escape_string($data["new"]["database_name"],$link).".* FROM '".mysql_real_escape_string($data["new"]["database_user"],$link)."';",$link); |
| | | |
| | | //* set new priveliges |
| | | $db_host = '%'; |
| | | if($data["new"]["remote_access"] == 'y') { |
| | | mysql_query("GRANT ALL ON ".mysql_real_escape_string($data["new"]["database_name"],$link).".* TO '".mysql_real_escape_string($data["new"]["database_user"],$link)."'@'$db_host' IDENTIFIED BY '".mysql_real_escape_string($data["new"]["database_password"],$link)."';",$link); |
| | | $this->process_host_list("GRANT", $data["new"]["database_name"], $data["new"]["database_user"], $data["new"]["database_password"], $data["new"]["remote_ips"], $link); |
| | | } else { |
| | | mysql_query("DROP USER '".mysql_real_escape_string($data["old"]["database_user"],$link)."'@'$db_host';",$link); |
| | | $this->process_host_list("DROP", "", $data["old"]["database_user"], "", $data["old"]["remote_ips"], $link); |
| | | } |
| | | $app->log('Changing mysql remote access priveliges for database: '.$data["new"]["database_name"],LOGLEVEL_DEBUG); |
| | | } |
| | | |
| | | } elseif($data["new"]["remote_access"] == 'y' && $data["new"]["remote_ips"] != $data["old"]["remote_ips"]) { |
| | | //* Change remote access list |
| | | $this->process_host_list("DROP", "", $data["old"]["database_user"], "", $data["old"]["remote_ips"], $link); |
| | | $this->process_host_list("GRANT", $data["new"]["database_name"], $data["new"]["database_user"], $data["new"]["database_password"], $data["new"]["remote_ips"], $link); |
| | | } |
| | | |
| | | //* Change password |
| | | if($data["new"]["database_password"] != $data["old"]["database_password"]) { |
| | | $db_host = 'localhost'; |
| | | mysql_query("SET PASSWORD FOR '".mysql_real_escape_string($data["new"]["database_user"],$link)."'@'$db_host' = PASSWORD('".mysql_real_escape_string($data["new"]["database_password"],$link)."');",$link); |
| | | |
| | | if($data["new"]["remote_access"] == 'y') { |
| | | $db_host = '%'; |
| | | mysql_query("SET PASSWORD FOR '".mysql_real_escape_string($data["new"]["database_user"],$link)."'@'$db_host' = PASSWORD('".mysql_real_escape_string($data["new"]["database_password"],$link)."');",$link); |
| | | $this->process_host_list("PASSWORD", "", $data["new"]["database_user"], $data["new"]["database_password"], $data["new"]["remote_ips"], $link); |
| | | } |
| | | $app->log('Changing mysql user password for: '.$data["new"]["database_user"],LOGLEVEL_DEBUG); |
| | | } |
| | |
| | | |
| | | //* Get the db host setting for the access priveliges |
| | | if($data["old"]["remote_access"] == 'y') { |
| | | $db_host = '%'; |
| | | if(mysql_query("DROP USER '".mysql_real_escape_string($data["old"]["database_user"],$link)."'@'$db_host';",$link)) { |
| | | $app->log('Dropping mysql user: '.$data["old"]["database_user"],LOGLEVEL_DEBUG); |
| | | if($this->process_host_list("DROP", "", $data["old"]["database_user"], "", $data["old"]["remote_ips"], $link)) { |
| | | $app->log('Dropping mysql user: '.$data["old"]["database_user"],LOGLEVEL_DEBUG); |
| | | } else { |
| | | $app->log('Error while dropping mysql user: '.$data["old"]["database_user"].' '.mysql_error($link),LOGLEVEL_ERROR); |
| | | } |
New file |
| | |
| | | <?php |
| | | |
| | | /* |
| | | Copyright (c) 2007 - 2009, Till Brehm, projektfarm Gmbh |
| | | All rights reserved. |
| | | Modification (c) 2009, Marius Cramer, pixcept KG |
| | | |
| | | Redistribution and use in source and binary forms, with or without modification, |
| | | are permitted provided that the following conditions are met: |
| | | |
| | | * Redistributions of source code must retain the above copyright notice, |
| | | this list of conditions and the following disclaimer. |
| | | * Redistributions in binary form must reproduce the above copyright notice, |
| | | this list of conditions and the following disclaimer in the documentation |
| | | and/or other materials provided with the distribution. |
| | | * Neither the name of ISPConfig nor the names of its contributors |
| | | may be used to endorse or promote products derived from this software without |
| | | specific prior written permission. |
| | | |
| | | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND |
| | | ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED |
| | | WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. |
| | | IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, |
| | | INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, |
| | | BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, |
| | | DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY |
| | | OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING |
| | | NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, |
| | | EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
| | | */ |
| | | |
| | | class pma_symlink_plugin { |
| | | |
| | | var $plugin_name = 'pma_symlink_plugin'; |
| | | var $class_name = 'pma_symlink_plugin'; |
| | | |
| | | var $action; |
| | | |
| | | //* This function is called during ispconfig installation to determine |
| | | // if a symlink shall be created for this plugin. |
| | | function onInstall() { |
| | | global $conf; |
| | | |
| | | return false; |
| | | |
| | | } |
| | | |
| | | |
| | | /* |
| | | This function is called when the plugin is loaded |
| | | */ |
| | | |
| | | function onLoad() { |
| | | global $app; |
| | | |
| | | /* |
| | | Register for the events |
| | | */ |
| | | |
| | | $app->plugins->registerEvent('web_domain_insert',$this->plugin_name,'insert'); |
| | | $app->plugins->registerEvent('web_domain_update',$this->plugin_name,'update'); |
| | | } |
| | | |
| | | function insert($event_name,$data) { |
| | | global $app, $conf; |
| | | |
| | | $this->action = 'insert'; |
| | | // just run the update function |
| | | $this->update($event_name,$data); |
| | | } |
| | | |
| | | function update($event_name,$data) { |
| | | global $app, $conf; |
| | | |
| | | if($this->action != 'insert') $this->action = 'update'; |
| | | |
| | | if($data["new"]["type"] != "vhost" && $data["new"]["parent_domain_id"] > 0) { |
| | | |
| | | $old_parent_domain_id = intval($data["old"]["parent_domain_id"]); |
| | | $new_parent_domain_id = intval($data["new"]["parent_domain_id"]); |
| | | |
| | | // If the parent_domain_id has been chenged, we will have to update the old site as well. |
| | | if($this->action == 'update' && $data["new"]["parent_domain_id"] != $data["old"]["parent_domain_id"]) { |
| | | $tmp = $app->db->queryOneRecord("SELECT * FROM web_domain WHERE domain_id = ".$old_parent_domain_id." AND active = 'y'"); |
| | | $data["new"] = $tmp; |
| | | $data["old"] = $tmp; |
| | | $this->action = 'update'; |
| | | $this->update($event_name,$data); |
| | | } |
| | | |
| | | // This is not a vhost, so we need to update the parent record instead. |
| | | $tmp = $app->db->queryOneRecord("SELECT * FROM web_domain WHERE domain_id = ".$new_parent_domain_id." AND active = 'y'"); |
| | | $data["new"] = $tmp; |
| | | $data["old"] = $tmp; |
| | | $this->action = 'update'; |
| | | } |
| | | |
| | | if($data["new"]["document_root"] == '') { |
| | | $app->log("document_root not set",LOGLEVEL_WARN); |
| | | return 0; |
| | | } |
| | | |
| | | $symlink = true; |
| | | if($data["new"]["php"] == "suphp") $symlink = false; |
| | | elseif($data["new"]["php"] == "cgi" && $data["new"]["suexec"] == "y") $symlink = false; |
| | | elseif($data["new"]["php"] == "fast-cgi" && $data["new"]["suexec"] == "y") $symlink = false; |
| | | |
| | | |
| | | if(!is_dir($data["new"]["document_root"]."/web")) exec("mkdir -p ".$data["new"]["document_root"]."/web"); |
| | | if($symlink == false) { |
| | | if(is_link($data["new"]["document_root"]."/web/phpmyadmin")) exec("rm -f ".$data["new"]["document_root"]."/web/phpmyadmin"); |
| | | } else { |
| | | if(!is_link($data["new"]["document_root"]."/web/phpmyadmin")) exec("ln -s /var/www/phpmyadmin ".$data["new"]["document_root"]."/web/phpmyadmin"); |
| | | else exec("ln -sf /var/www/phpmyadmin ".$data["new"]["document_root"]."/web/phpmyadmin"); |
| | | } |
| | | } |
| | | |
| | | |
| | | } // end class |
| | | |
| | | ?> |
| | |
| | | |
| | | } |
| | | |
| | | |
| | | function set_install_status($inst_id, $status) { |
| | | global $app; |
| | | |
| | | $app->db->query("UPDATE software_update_inst SET status = '{$status}' WHERE software_update_inst_id = '{$inst_id}'"); |
| | | $app->dbmaster->query("UPDATE software_update_inst SET status = '{$status}' WHERE software_update_inst_id = '{$inst_id}'"); |
| | | } |
| | | |
| | | function process($event_name,$data) { |
| | | global $app, $conf; |
| | | |
| | | if(!$conf['software_updates_enabled'] == true) { |
| | | if(!$conf['software_updates_enabled'] == true) { |
| | | $app->log('Software Updates not enabled on this server. To enable updates, set $conf["software_updates_enabled"] = true; in config.inc.php',LOGLEVEL_ERROR); |
| | | $this->set_install_status($data["new"]["software_update_inst_id"], "failed"); |
| | | return false; |
| | | } |
| | | |
| | | //* Get the info of the package: |
| | | $software_update_id = intval($data["new"]["software_update_id"]); |
| | | $software_update_id = intval($data["new"]["software_update_id"]); |
| | | $software_update = $app->db->queryOneRecord("SELECT * FROM software_update WHERE software_update_id = '$software_update_id'"); |
| | | |
| | | $temp_dir = '/tmp/'.md5 (uniqid (rand())); |
| | |
| | | mkdir($temp_dir); |
| | | if(!is_dir($temp_dir)) { |
| | | $app->log("Unable to create temp directory.",LOGLEVEL_ERROR); |
| | | $this->set_install_status($data["new"]["software_update_inst_id"], "failed"); |
| | | return false; |
| | | } |
| | | |
| | |
| | | $app->log("The md5 sum of the downloaded file is incorrect. Update aborted.",LOGLEVEL_ERROR); |
| | | exec("rm -rf $temp_dir"); |
| | | $app->log("Deleting the temp directory $temp_dir",LOGLEVEL_DEBUG); |
| | | $this->set_install_status($data["new"]["software_update_inst_id"], "failed"); |
| | | return false; |
| | | } else { |
| | | $app->log("md5sum of the downloaded file is verified.",LOGLEVEL_DEBUG); |
| | |
| | | // Execute the setup script |
| | | exec('chmod +x '.$temp_dir.'/setup.sh'); |
| | | $app->log("Executing setup.sh file in directory $temp_dir",LOGLEVEL_DEBUG); |
| | | exec('cd '.$temp_dir.' && ./setup.sh'); |
| | | $app->db->query("UPDATE software_update_inst SET status = 'installed' WHERE software_update_inst_id = ".$data["new"]["software_update_inst_id"]); |
| | | exec('cd '.$temp_dir.' && ./setup.sh > package_install.log'); |
| | | |
| | | $log_data = @file_get_contents("{$temp_dir}/package_install.log"); |
| | | if(preg_match("'.*\[OK\]\s*$'is", $log_data)) { |
| | | $app->log("Installation successful",LOGLEVEL_DEBUG); |
| | | $app->log($log_data,LOGLEVEL_DEBUG); |
| | | $this->set_install_status($data["new"]["software_update_inst_id"], "installed"); |
| | | } else { |
| | | $app->log("Installation failed:\n\n" . $log_data,LOGLEVEL_ERROR); |
| | | $this->set_install_status($data["new"]["software_update_inst_id"], "failed"); |
| | | } |
| | | } else { |
| | | $app->log("setup.sh file not found",LOGLEVEL_ERROR); |
| | | $this->set_install_status($data["new"]["software_update_inst_id"], "failed"); |
| | | } |
| | | } else { |
| | | $app->log("Download of the update file failed",LOGLEVEL_ERROR); |
| | | $this->set_install_status($data["new"]["software_update_inst_id"], "failed"); |
| | | } |
| | | |
| | | exec("rm -rf $temp_dir"); |
| | | $app->log("Deleting the temp directory $temp_dir",LOGLEVEL_DEBUG); |
| | | |
| | | } |
| | | |
| | | |
New file |
| | |
| | | <?php |
| | | |
| | | /* |
| | | Copyright (c) 2007 - 2009, Till Brehm, projektfarm Gmbh |
| | | All rights reserved. |
| | | Modification (c) 2009, Marius Cramer, pixcept KG |
| | | |
| | | Redistribution and use in source and binary forms, with or without modification, |
| | | are permitted provided that the following conditions are met: |
| | | |
| | | * Redistributions of source code must retain the above copyright notice, |
| | | this list of conditions and the following disclaimer. |
| | | * Redistributions in binary form must reproduce the above copyright notice, |
| | | this list of conditions and the following disclaimer in the documentation |
| | | and/or other materials provided with the distribution. |
| | | * Neither the name of ISPConfig nor the names of its contributors |
| | | may be used to endorse or promote products derived from this software without |
| | | specific prior written permission. |
| | | |
| | | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND |
| | | ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED |
| | | WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. |
| | | IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, |
| | | INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, |
| | | BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, |
| | | DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY |
| | | OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING |
| | | NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, |
| | | EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
| | | */ |
| | | |
| | | class webmail_symlink_plugin { |
| | | |
| | | var $plugin_name = 'webmail_symlink_plugin'; |
| | | var $class_name = 'webmail_symlink_plugin'; |
| | | |
| | | var $action; |
| | | |
| | | //* This function is called during ispconfig installation to determine |
| | | // if a symlink shall be created for this plugin. |
| | | function onInstall() { |
| | | global $conf; |
| | | |
| | | return false; |
| | | |
| | | } |
| | | |
| | | |
| | | /* |
| | | This function is called when the plugin is loaded |
| | | */ |
| | | |
| | | function onLoad() { |
| | | global $app; |
| | | |
| | | /* |
| | | Register for the events |
| | | */ |
| | | |
| | | $app->plugins->registerEvent('web_domain_insert',$this->plugin_name,'insert'); |
| | | $app->plugins->registerEvent('web_domain_update',$this->plugin_name,'update'); |
| | | } |
| | | |
| | | function insert($event_name,$data) { |
| | | global $app, $conf; |
| | | |
| | | $this->action = 'insert'; |
| | | // just run the update function |
| | | $this->update($event_name,$data); |
| | | } |
| | | |
| | | function update($event_name,$data) { |
| | | global $app, $conf; |
| | | |
| | | if($this->action != 'insert') $this->action = 'update'; |
| | | |
| | | if($data["new"]["type"] != "vhost" && $data["new"]["parent_domain_id"] > 0) { |
| | | |
| | | $old_parent_domain_id = intval($data["old"]["parent_domain_id"]); |
| | | $new_parent_domain_id = intval($data["new"]["parent_domain_id"]); |
| | | |
| | | // If the parent_domain_id has been chenged, we will have to update the old site as well. |
| | | if($this->action == 'update' && $data["new"]["parent_domain_id"] != $data["old"]["parent_domain_id"]) { |
| | | $tmp = $app->db->queryOneRecord("SELECT * FROM web_domain WHERE domain_id = ".$old_parent_domain_id." AND active = 'y'"); |
| | | $data["new"] = $tmp; |
| | | $data["old"] = $tmp; |
| | | $this->action = 'update'; |
| | | $this->update($event_name,$data); |
| | | } |
| | | |
| | | // This is not a vhost, so we need to update the parent record instead. |
| | | $tmp = $app->db->queryOneRecord("SELECT * FROM web_domain WHERE domain_id = ".$new_parent_domain_id." AND active = 'y'"); |
| | | $data["new"] = $tmp; |
| | | $data["old"] = $tmp; |
| | | $this->action = 'update'; |
| | | } |
| | | |
| | | if($data["new"]["document_root"] == '') { |
| | | $app->log("document_root not set",LOGLEVEL_WARN); |
| | | return 0; |
| | | } |
| | | |
| | | $symlink = true; |
| | | if($data["new"]["php"] == "suphp") $symlink = false; |
| | | elseif($data["new"]["php"] == "cgi" && $data["new"]["suexec"] == "y") $symlink = false; |
| | | elseif($data["new"]["php"] == "fast-cgi" && $data["new"]["suexec"] == "y") $symlink = false; |
| | | |
| | | |
| | | if(!is_dir($data["new"]["document_root"]."/web")) exec("mkdir -p ".$data["new"]["document_root"]."/web"); |
| | | if($symlink == false) { |
| | | if(is_link($data["new"]["document_root"]."/web/webmail")) exec("rm -f ".$data["new"]["document_root"]."/web/webmail"); |
| | | } else { |
| | | if(!is_link($data["new"]["document_root"]."/web/webmail")) exec("ln -s /var/www/webmail ".$data["new"]["document_root"]."/web/webmail"); |
| | | else exec("ln -sf /var/www/webmail ".$data["new"]["document_root"]."/web/webmail"); |
| | | } |
| | | } |
| | | |
| | | |
| | | } // end class |
| | | |
| | | ?> |
| | |
| | | $new_version = trim($new_version); |
| | | if($new_version != ISPC_APP_VERSION) { |
| | | passthru('/usr/local/ispconfig/server/scripts/update_from_tgz.sh'); |
| | | exit; |
| | | } else { |
| | | echo "There are no updates available for ISPConfig ".ISPC_APP_VERSION."\n"; |
| | | } |
| | | } else { |
| | | passthru('/usr/local/ispconfig/server/scripts/update_from_svn.sh'); |
| | | exit; |
| | | } |
| | | |
| | | |
| | |
| | | cd /etc/getmail |
| | | rcfiles="" |
| | | for file in *.conf ; do |
| | | if [ $file != "*.conf" ]; then |
| | | rcfiles="$rcfiles -r $file" |
| | | fi |
| | | done |
| | | #echo $rcfiles |
| | | exec /usr/bin/getmail -n -v -g /etc/getmail $rcfiles |
| | | if [ "$rcfiles" != "" ]; then |
| | | exec /usr/bin/getmail -n -v -g /etc/getmail $rcfiles |
| | | fi |
| | |
| | | cd trunk/install |
| | | php -q update.php |
| | | cd /tmp |
| | | rm -rf /tmp/trunk |
| | | rm -rf /tmp/trunk |
| | | |
| | | exit 0 |
| | |
| | | fi |
| | | |
| | | wget http://www.ispconfig.org/downloads/ISPConfig-3-stable.tar.gz |
| | | tar xvfz ISPConfig-3-stable.tar.gz |
| | | cd ispconfig3_install/install/ |
| | | php -q update.php |
| | | rm -rf /tmp/ispconfig3_install/install |
| | | rm -f ISPConfig-3-stable.tar.gz |
| | | if [ -f ISPConfig-3-stable.tar.gz ] |
| | | then |
| | | tar xvfz ISPConfig-3-stable.tar.gz |
| | | cd ispconfig3_install/install/ |
| | | php -q update.php |
| | | rm -rf /tmp/ispconfig3_install/install |
| | | rm -f ISPConfig-3-stable.tar.gz |
| | | else |
| | | echo "Unable to download the update." |
| | | fi |
| | | |
| | | exit 0 |
New file |
| | |
| | | #!/usr/bin/perl -T |
| | | # |
| | | # vlogger - smarter logging for apache |
| | | # steve j. kondik <shade@chemlab.org> |
| | | # |
| | | # this script will take piped logs in STDIN, break off the first component |
| | | # and log the line into the proper directory under $LOGDIR. it will roll the |
| | | # logs over at midnight on-the-fly and maintain a symlink to the most recent log. |
| | | # |
| | | # |
| | | # This library is free software; you can redistribute it and/or |
| | | # modify it under the terms of the GNU Library General Public |
| | | # License as published by the Free Software Foundation; either |
| | | # version 2 of the License, or (at your option) any later version. |
| | | # |
| | | # This library is distributed in the hope that it will be useful, |
| | | # but WITHOUT ANY WARRANTY; without even the implied warranty of |
| | | # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU |
| | | # Library General Public License for more details. |
| | | # |
| | | # |
| | | # CHANGELOG: |
| | | # 0.1 initial release |
| | | # 0.2 cleanups, added -e option for errorlogs, added strict stuff |
| | | # 0.3 cleanups, bugfixes, docs, added -r size rotation option |
| | | # 0.4 added dbi usage tracking option, code cleanups from cz@digitalfreaks.org |
| | | # 1.0 small bugfixes, first production release |
| | | # 1.1 bugfix release |
| | | # 1.2 support for mod_logio |
| | | # 1.3 various contributed bugfixes |
| | | # |
| | | # |
| | | # TODO: |
| | | # configurable file compression using Compress::Zlib, maybe. |
| | | # |
| | | |
| | | package vlogger; |
| | | |
| | | $ENV{PATH} = "/bin:/usr/bin"; |
| | | |
| | | my $VERSION = "1.3"; |
| | | |
| | | =head1 NAME |
| | | |
| | | vlogger - flexible log rotation and usage tracking in perl |
| | | |
| | | =head1 SYNOPSIS |
| | | |
| | | vlogger [OPTIONS]... [LOGDIR] |
| | | |
| | | =head1 DESCRIPTION |
| | | |
| | | Vlogger is designed to make webserver log rotation simple and easy to manage. |
| | | It deals with VirtualHost logs automatically, so only one directive is required |
| | | to manage all hosts on a webserver. Vlogger takes piped output from Apache or |
| | | another webserver, splits off the first field, and writes the logs to logfiles |
| | | in subdirectories. It uses a filehandle cache to avoid resource limitations. |
| | | It will start a new logfile at the beginning of a new day, and optionally start |
| | | new files when a certain filesize is reached. It can maintain a symlink to |
| | | the most recent log for easy access. Optionally, host parsing can be disabled |
| | | for use in ErrorLog directives. |
| | | |
| | | To use vlogger, you need to add a "%v" to the first part of your LogFormat: |
| | | |
| | | LogFormat "%v %h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined |
| | | |
| | | Then call it from a customlog: |
| | | |
| | | CustomLog "| /usr/local/sbin/vlogger -s access.log -u www-logs -g www-logs /var/log/apache" combined |
| | | |
| | | =head1 OPTIONS |
| | | |
| | | Options are given in short format on the command line. |
| | | |
| | | -a |
| | | Do not autoflush files. This may improve performance but may break logfile |
| | | analyzers that depend on full entries in the logs. |
| | | |
| | | -e |
| | | ErrorLog mode. In this mode, the host parsing is disabled, and the file is |
| | | written out using the template under the specified LOGDIR. |
| | | |
| | | -n |
| | | Disables rotation. This option disables rotation altogether. |
| | | |
| | | -f MAXFILES |
| | | Maximum number of filehandles to keep open. Defaults to 100. Setting this |
| | | value too high may result in the system running out of file descriptors. |
| | | Setting it too low may affect performance. |
| | | |
| | | -u UID |
| | | Change user to UID when running as root. |
| | | |
| | | -g GID |
| | | Change group to GID when running as root. |
| | | |
| | | -t TEMPLATE |
| | | Filename template using Date::Format codes. Default is "%m%d%Y-access.log", |
| | | or "%m%d%Y-error.log". When using the -r option, the default becomes |
| | | "%m%d%Y-%T-access.log" or "%m%d%Y-%T-error.log". |
| | | |
| | | -s SYMLINK |
| | | Specifies the name of a symlink to the current file. |
| | | |
| | | -r SIZE |
| | | Rotate files when they reach SIZE. SIZE is given in bytes. |
| | | |
| | | -d CONFIG |
| | | Use the DBI usage tracker. |
| | | |
| | | -h |
| | | Displays help. |
| | | |
| | | -v |
| | | Prints version information. |
| | | |
| | | =head1 DBI USAGE TRACKER |
| | | |
| | | Vlogger can automatically keep track of per-virtualhost usage statistics in a |
| | | database. DBI and the relevant drivers (eg. DBD::mysql) needs to be installed for |
| | | this to work. Create a table in your database to hold the data. A "mysql_create.sql" |
| | | script is provided for using this feature with MySQL. Configure the dsn, user, pass |
| | | and dump values in the vlogger-dbi.conf file. The "dump" parameter controls how often |
| | | vlogger will dump its stats into the database (the default is 30 seconds). Copy this |
| | | file to somewhere convienient on your filesystem (like /etc/apache/vlogger-dbi.conf) and |
| | | start vlogger with "-d /etc/apache/vlogger-dbi.conf". You might want to use this feature |
| | | to easily bill customers on a daily/weekly/monthly basis for bandwidth usage. |
| | | |
| | | =head1 SEE ALSO |
| | | cronolog(1), httplog(1) |
| | | |
| | | =head1 BUGS |
| | | None, yet. |
| | | |
| | | =head1 AUTHORS |
| | | Steve J. Kondik <shade@chemlab.org> |
| | | |
| | | WWW: http://n0rp.chemlab.org/vlogger |
| | | |
| | | =cut |
| | | |
| | | # a couple modules we need |
| | | use strict; |
| | | no strict "refs"; |
| | | use warnings; |
| | | use sigtrap qw(handler exitall HUP USR1 TERM INT PIPE); |
| | | use Date::Format; |
| | | use Getopt::Std; |
| | | use IO::Handle; |
| | | |
| | | # get command line options |
| | | our %OPTS; |
| | | getopts( 'f:t:s:hu:g:aeivr:d:', \%OPTS ); |
| | | |
| | | # print out version |
| | | if ( $OPTS{'v'} ) { |
| | | print "VLogger $VERSION (apache logfile parser)\n"; |
| | | print "Written by Steve J. Kondik <shade\@chemlab.org>\n\n"; |
| | | print "This is free software; see the source for copying conditions. There is NO\n"; |
| | | print "warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.\n"; |
| | | exit; |
| | | } |
| | | |
| | | # print help |
| | | if ( $OPTS{'h'} || !$ARGV[0] ) { |
| | | usage(); |
| | | exit; |
| | | } |
| | | |
| | | # log directory |
| | | my $LOGDIR; |
| | | if ( $ARGV[0] ) { |
| | | if ( !-d $ARGV[0] ) { |
| | | print STDERR |
| | | "[vlogger] target directory $ARGV[0] does not exist - exiting.\n\n"; |
| | | exit; |
| | | } |
| | | $LOGDIR = $ARGV[0]; |
| | | } |
| | | $LOGDIR =~ /(.*)/; |
| | | $LOGDIR = $1; |
| | | |
| | | # change uid/gid if requested (and running as root) |
| | | if ( $> == "0" ) { |
| | | if ( $OPTS{'g'} ) { |
| | | my $guid = getgrnam( $OPTS{'g'} ); |
| | | if ( !defined $guid || $guid == 0 ) { |
| | | print STDERR |
| | | "[vlogger] cannot run as root or nonexistant group.\n\n"; |
| | | exit; |
| | | } |
| | | |
| | | $) = $guid; |
| | | $( = $guid; |
| | | if ( $) != $guid and $) != ( $guid - 2**32 ) ) { |
| | | die "fatal: setgid to gid $guid failed\n"; |
| | | } |
| | | } |
| | | |
| | | if ( $OPTS{'u'} ) { |
| | | my $uuid = getpwnam( $OPTS{'u'} ); |
| | | if ( !defined $uuid || $uuid == 0 ) { |
| | | print STDERR |
| | | "[vlogger] cannot run as root or nonexistant user.\n\n"; |
| | | exit; |
| | | } |
| | | |
| | | $> = $uuid; |
| | | $< = $uuid; |
| | | if ( $> != $uuid and $> != ( $uuid - 2**32 ) ) { |
| | | die "fatal: setuid to uid $uuid failed\n"; |
| | | } |
| | | } |
| | | } |
| | | |
| | | # set up dbi stuffs |
| | | |
| | | my $DBI_DSN; |
| | | my $DBI_USER; |
| | | my $DBI_PASS; |
| | | my $DBI_DUMP; |
| | | if ( $OPTS{'d'} ) { |
| | | if ( $OPTS{'e'} ) { |
| | | print "-d not valid with -e. exiting.\n"; |
| | | exit; |
| | | } |
| | | |
| | | eval "use DBI"; |
| | | |
| | | open CONF, $OPTS{'d'}; |
| | | while (<CONF>) { |
| | | chomp; |
| | | my @conf = split (/\s/); |
| | | if ( $conf[0] eq "dsn" ) { |
| | | $DBI_DSN = $conf[1]; |
| | | } |
| | | elsif ( $conf[0] eq "user" ) { |
| | | $DBI_USER = $conf[1]; |
| | | } |
| | | elsif ( $conf[0] eq "pass" ) { |
| | | $DBI_PASS = $conf[1]; |
| | | } |
| | | elsif ( $conf[0] eq "dump" ) { |
| | | $DBI_DUMP = $conf[1]; |
| | | } |
| | | } |
| | | close CONF; |
| | | |
| | | unless ( $DBI_DSN && $DBI_USER && $DBI_PASS && $DBI_DUMP ) { |
| | | print "All values for DBI configuration are not properly defined.\n\n"; |
| | | exit; |
| | | } |
| | | |
| | | # test the connection |
| | | my $dbh = DBI->connect( $DBI_DSN, $DBI_USER, $DBI_PASS ) |
| | | or die "DBI Error: $!"; |
| | | $dbh->disconnect; |
| | | |
| | | # SIGALRM dumps the tracker hash |
| | | $SIG{ALRM} = \&dump_tracker; |
| | | |
| | | alarm $DBI_DUMP; |
| | | |
| | | } |
| | | |
| | | # max files to keep open |
| | | my $MAXFILES; |
| | | if ( $OPTS{'f'} ) { |
| | | $MAXFILES = $OPTS{'f'}; |
| | | } |
| | | else { |
| | | $MAXFILES = "100"; |
| | | } |
| | | |
| | | # filesize rotation |
| | | my $MAXSIZE; |
| | | if ( $OPTS{'r'} ) { |
| | | $MAXSIZE = $OPTS{'r'}; |
| | | } |
| | | |
| | | # filename template |
| | | my $TEMPLATE; |
| | | if ( $OPTS{'t'} ) { |
| | | $TEMPLATE = $OPTS{'t'}; |
| | | $TEMPLATE =~ /(.*)/; |
| | | $TEMPLATE = $1; |
| | | |
| | | } |
| | | elsif ( $OPTS{'e'} ) { |
| | | if ( $OPTS{'r'} ) { |
| | | $TEMPLATE = "%m%d%Y-%T-error.log"; |
| | | } |
| | | else { |
| | | $TEMPLATE = "%m%d%Y-error.log"; |
| | | } |
| | | } |
| | | else { |
| | | if ( $OPTS{'r'} ) { |
| | | $TEMPLATE = "%m%d%Y-%T-access.log"; |
| | | } |
| | | else { |
| | | $TEMPLATE = "%m%d%Y-access.log"; |
| | | } |
| | | } |
| | | |
| | | # symlink |
| | | if ( $OPTS{'s'} ) { |
| | | $OPTS{'s'} =~ /(.*)/; |
| | | $OPTS{'s'} = $1; |
| | | } |
| | | |
| | | # chroot to the logdir |
| | | chdir($LOGDIR); |
| | | #chroot("."); we better do not chroot as DBI requires to load a module on the fly -> error! |
| | | |
| | | my %logs = (); |
| | | my %tracker = (); |
| | | my $LASTDUMP = time(); |
| | | |
| | | # pick a mode |
| | | if ( $OPTS{'e'} ) { |
| | | |
| | | $0 = "vlogger (error log)"; |
| | | # errorlog mode |
| | | open ELOG, ">>" . time2str( $TEMPLATE, time() ) |
| | | or die ( "can't open $LOGDIR/" . time2str( $TEMPLATE, time() ) ); |
| | | |
| | | unless ( $OPTS{'a'} ) { |
| | | ELOG->autoflush(1); |
| | | } |
| | | if ( $OPTS{'s'} ) { |
| | | if ( -l $OPTS{'s'} ) { |
| | | unlink( $OPTS{'s'} ); |
| | | } |
| | | symlink( time2str( $TEMPLATE, time() ), $OPTS{'s'} ); |
| | | } |
| | | |
| | | my $LASTWRITE = time(); |
| | | |
| | | while ( my $log_line = <STDIN> ) { |
| | | unless ( $OPTS{'n'} ) { |
| | | if ( time2str( "%Y%m%d", time() ) > |
| | | time2str( "%Y%m%d", $LASTWRITE ) ) |
| | | { |
| | | |
| | | # open a new file |
| | | close ELOG; |
| | | open_errorlog(); |
| | | } |
| | | elsif ( $OPTS{'r'} ) { |
| | | |
| | | # check the size |
| | | my @filesize = ELOG->stat; |
| | | print $filesize[7] . "\n"; |
| | | if ( $filesize[7] > $MAXSIZE ) { |
| | | close ELOG; |
| | | open_errorlog(); |
| | | } |
| | | } |
| | | |
| | | $LASTWRITE = time(); |
| | | } |
| | | |
| | | # we dont need to do any other parsing at all, so write the line. |
| | | print ELOG $log_line; |
| | | } |
| | | |
| | | } |
| | | else { |
| | | |
| | | # accesslog mode |
| | | $0 = "vlogger (access log)"; |
| | | while ( my $log_line = <STDIN> ) { |
| | | |
| | | # parse out the first word (the vhost) |
| | | my @this_line = split ( /\s/, $log_line ); |
| | | my ($vhost) = $this_line[0]; |
| | | my $reqsize = $this_line[10]; |
| | | $vhost = lc($vhost) || "default"; |
| | | if ( $vhost =~ m#[/\\]# ) { $vhost = "default" } |
| | | $vhost =~ /(.*)/o; |
| | | $vhost = $1; |
| | | $vhost = 'default' unless $vhost; |
| | | |
| | | if ( $OPTS{'i'} ) { |
| | | $reqsize = $this_line[1] + $this_line[2]; |
| | | } |
| | | |
| | | # if we're writing to a log, and it rolls to a new day, close all files. |
| | | unless ( $OPTS{'n'} ) { |
| | | if ( $logs{$vhost} |
| | | && ( time2str( "%Y%m%d", time() ) > |
| | | time2str( "%Y%m%d", $logs{$vhost} ) ) ) |
| | | { |
| | | foreach my $key ( keys %logs ) { |
| | | close $key; |
| | | } |
| | | %logs = (); |
| | | } |
| | | elsif ( $OPTS{'r'} && $logs{$vhost} ) { |
| | | |
| | | # check the size |
| | | my @filesize = $vhost->stat; |
| | | if ( $filesize[7] > $MAXSIZE ) { |
| | | close $vhost; |
| | | delete( $logs{$vhost} ); |
| | | } |
| | | } |
| | | } |
| | | |
| | | # open a new log |
| | | if ( !$logs{$vhost} ) { |
| | | |
| | | # check how many files we have open, close the oldest one |
| | | if ( keys(%logs) > $MAXFILES ) { |
| | | my ( $key, $value ) = |
| | | sort { $logs{$a} <=> $logs{$b} } ( keys(%logs) ); |
| | | close $key; |
| | | delete( $logs{$key} ); |
| | | } |
| | | |
| | | # check if directory is there |
| | | unless ( -d "${vhost}" ) { |
| | | mkdir("${vhost}"); |
| | | } |
| | | |
| | | # open the file using the template |
| | | open $vhost, ">>${vhost}/" . time2str( $TEMPLATE, time() ) |
| | | or die ( "can't open $LOGDIR/${vhost}/" |
| | | . time2str( $TEMPLATE, time() ) ); |
| | | |
| | | # autoflush the handle unless -a |
| | | if ( !$OPTS{'a'} ) { |
| | | $vhost->autoflush(1); |
| | | } |
| | | |
| | | # make a symlink if -s |
| | | if ( $OPTS{'s'} ) { |
| | | chdir("${vhost}"); |
| | | if ( -l $OPTS{'s'} ) { |
| | | unlink( $OPTS{'s'} ); |
| | | } |
| | | symlink( time2str( $TEMPLATE, time() ), $OPTS{'s'} ); |
| | | chdir(".."); |
| | | } |
| | | } |
| | | |
| | | # update the timestamp and write the line |
| | | $logs{$vhost} = time(); |
| | | if ($OPTS{'i'}) { |
| | | $log_line =~ s/^\S*\s+\S*\s+\S*\s+//o; |
| | | } |
| | | else { |
| | | $log_line =~ s/^\S*\s+//o; |
| | | } |
| | | |
| | | if ( $reqsize =~ m/^\d*$/ && $reqsize > 0 ) { |
| | | $tracker{$vhost} += $reqsize; |
| | | } |
| | | |
| | | print $vhost $log_line; |
| | | |
| | | } |
| | | } |
| | | |
| | | # sub to close all files |
| | | sub closeall { |
| | | if ( $OPTS{'e'} ) { |
| | | close ELOG; |
| | | } |
| | | else { |
| | | foreach my $key ( keys %logs ) { |
| | | close $key; |
| | | } |
| | | %logs = (); |
| | | if ( $OPTS{'d'} ) { |
| | | vlogger::dump_tracker(); |
| | | } |
| | | } |
| | | } |
| | | |
| | | sub exitall { |
| | | vlogger::closeall; |
| | | exit; |
| | | } |
| | | |
| | | # sub to open new errorlog |
| | | sub open_errorlog { |
| | | open ELOG, ">>" . time2str( $TEMPLATE, time() ) |
| | | or die ( "can't open $LOGDIR/" . time2str( $TEMPLATE, time() ) ); |
| | | if ( $OPTS{'s'} ) { |
| | | if ( -l $OPTS{'s'} ) { |
| | | unlink( $OPTS{'s'} ); |
| | | } |
| | | symlink( time2str( $TEMPLATE, time() ), $OPTS{'s'} ); |
| | | } |
| | | |
| | | # autoflush it unless -a |
| | | unless ( $OPTS{'a'} ) { |
| | | ELOG->autoflush(1); |
| | | } |
| | | } |
| | | |
| | | # sub to update the database with the tracker data |
| | | sub dump_tracker { |
| | | if ( keys(%tracker) > 0 ) { |
| | | my $dbh = DBI->connect( $DBI_DSN, $DBI_USER, $DBI_PASS ) |
| | | or warn "DBI Error: $!"; |
| | | foreach my $key ( keys(%tracker) ) { |
| | | my $ts = time2str( "%Y-%m-%d", time() ); |
| | | my $sth = |
| | | $dbh->prepare( "select * from web_traffic where hostname='" . $key |
| | | . "' and traffic_date='" . $ts . "'" ); |
| | | $sth->execute; |
| | | if ( $sth->rows ) { |
| | | my $query = |
| | | "update web_traffic set traffic_bytes=traffic_bytes+" |
| | | . $tracker{$key} |
| | | . " where hostname='" . $key |
| | | . "' and traffic_date='" . $ts . "'"; |
| | | $dbh->do($query); |
| | | } |
| | | else { |
| | | my $query = "insert into web_traffic (hostname, traffic_date, traffic_bytes) values ('$key', '$ts', '$tracker{$key}')"; |
| | | $dbh->do($query); |
| | | } |
| | | } |
| | | $dbh->disconnect; |
| | | %tracker = (); |
| | | } |
| | | alarm $DBI_DUMP; |
| | | } |
| | | |
| | | # print usage info |
| | | sub usage { |
| | | print "Usage: vlogger [OPTIONS]... [LOGDIR]\n"; |
| | | print "Handles a piped logfile from a webserver, splitting it into it's\n"; |
| | | print "host components, and rotates the files daily.\n\n"; |
| | | print " -a do not autoflush files\n"; |
| | | print " -e errorlog mode\n"; |
| | | print " -n don't rotate files\n"; |
| | | print " -f MAXFILES max number of files to keep open\n"; |
| | | print " -u UID uid to switch to when running as root\n"; |
| | | print " -g GID gid to switch to when running as root\n"; |
| | | print " -t TEMPLATE filename template (see perldoc Date::Format)\n"; |
| | | print " -s SYMLINK maintain a symlink to most recent file\n"; |
| | | print " -r SIZE rotate when file reaches SIZE\n"; |
| | | print " -d CONFIG use DBI usage tracker (see perldoc vlogger)\n"; |
| | | print " -i extract mod_logio instead of filesize\n"; |
| | | print " -h display this help\n"; |
| | | print " -v output version information\n\n"; |
| | | print "TEMPLATE may be a filename with Date::Format codes. The default template\n"; |
| | | print "is %m%d%Y-access.log. SYMLINK is the name of a file that will be linked to\n"; |
| | | print "the most recent file inside the log directory. The default is access.log.\n"; |
| | | print "MAXFILES is the maximum number of filehandles to cache. This defaults to 100.\n"; |
| | | print "When running with -a, performance may improve, but this might confuse some\n"; |
| | | print "log analysis software that expects complete log entries at all times.\n"; |
| | | print "Errorlog mode is used when running with an Apache errorlog. In this mode,\n"; |
| | | print "virtualhost parsing is disabled, and a single file is written in LOGDIR\n"; |
| | | print "using the TEMPLATE (%m%d%Y-error.log is default for -e). When running with\n"; |
| | | print "-r, the template becomes %m%d%Y-%T-xxx.log. SIZE is given in bytes.\n\n"; |
| | | print "Report bugs to <shade\@chemlab.org>.\n"; |
| | | } |
| | | |
| | |
| | | // Check if another process is running |
| | | if(is_file($conf["temppath"].$conf["fs_div"].".ispconfig_lock")){ |
| | | clearstatcache(); |
| | | for($i=0;$i<1200;$i++){ // Wait max. 1200 sec, then proceed |
| | | for($i=0;$i<120;$i++){ // Wait max. 1200 sec, then proceed |
| | | if(is_file($conf["temppath"].$conf["fs_div"].".ispconfig_lock")){ |
| | | exec("ps aux | grep '/usr/local/ispconfig/server/server.php' | grep -v 'grep' | wc -l", $check); |
| | | if(intval($check[0]) > 1) { // 1 because this is 2nd instance! |
| | | $app->log("There is already an instance of server.php running. Exiting.", LOGLEVEL_DEBUG); |
| | | exit; |
| | | } |
| | | $app->log("There is already a lockfile set. Waiting another 10 seconds...", LOGLEVEL_DEBUG); |
| | | sleep(10); |
| | | clearstatcache(); |